개발학습기

프로토콜(Protocol)

afkorigin 2024. 12. 28. 15:13

전체 목록

FTP

SSH

세션

  • 프로토콜이란

프로토콜은 컴퓨터 네트워크에서 데이터를 주고 받을때 통신하는 두 장치가 서로

어떻게 데이터를 주고 받을지에 대한 규칙과 절차를 정의한 것이다.

 

두 시스템 간에 데이터 형식, 전송 방법, 오류 처리, 보안처리 등 여러가지를 규명하여

데이터가 정확하고 효율적으로 전달되도록 한다.

 

  • 프로토콜의 주요목적

1.  정확한 통신: 네트워크에 연결된 장치들이 서로 이해할 수 있는 방식으로

데이터를 송수신하도록 한다.

 

2. 호환성 보장: 서로 다른 시스템이나 기기들 간에도 동일한 프로토콜을 사용하여 데이터를

주고 받을수 있게 한다.

 

3. 데이터의 신뢰성 보장: 데이터 전송 중 오류가 발생하지 않도록 하고, 오류가 생기면

이를 수정할 방법을 제공한다.

 

4. 보안성: 데이터가 안전하게 전송되도록 암호화나 인증 등의 보안 기능을 제공한다.

 

  • 프로토콜의 종류

1. HTTP(HyperText Transfer Protocol)

웹 브라우저와 웹 서버간에 데이터를 주고 받는데 사용된다.

 

웹 페이지를 요청하고 서버에서 웹 페이지를 전달하는 데 필요한 규약을 정의한다.

 

보안 버전인 HTTPS는 HTTP에 암호화를 추가하여 보안성을 강화한 것이다.

 

2. TCP/IP(Transmission Control Protocol / Internet Protocol)

인터넷 통신의 핵심 프로토콜이다.

 

TCP는 데이터를 작은 단위로 나누어 정확하게 전달하는 역할을 하며, IP는 데이터가

올바른 목적지로 가도록 라우팅한다.

 

이두 프로토콜은 인터넷을 포함한 많은 네트워크에서 필수적인 역할을 한다.

 

3. FTP(File Transfer Protocol)

파일을 서버와 클라이언트 간에 전송하는데 사용된다.

데이터를 전송하는 방식과 관련된 규칙을 정의하며, 파일 업로드와 다운로드에 사용된다.

 

4. SSH(Secure Shell)

원격 서버에 안전하게 접속 할 수 있도록 해주는 프로토콜이다.

암호화된 채널을 통해 명령을 실행하고 데이터를 전송할 수 있도록 지원한다.

 

5. SMTP(Simple Mail Transfer Protocol)

이메일을 전송하는데 사용되는 프로토콜이다.

 

이메일 서버 간에 메일을 전송하는 방식과 절차를 규정한다.

 

6. DNS(Domain Name System)

도메인 이름을 IP 주소로 변환하는 프로토콜이다.

 

예를 들어, www.google.com이라는  도메인 이름을 실제 서버 IP주소로 변환하여

사용자가 웹사이트에 접속할 수있게 만든다.

 

 

  • 프로토콜의 계층화

프로토콜은 네트워크에서 사용되는 다양한 작업을 처리하기 위해 계층으로 나누어져 있다.

이 계층적 구조는 OSI 모델과 TCP/IP모델에서 설명된다.

 

1. OSI 모델(Open System Interconnection)

OSI 모델은 네트워크 통신을 7개의 계층으로 나누어 설명하는 모델이다.

 

물리계층(Physical Layer): 실제 네트워크 장비 및 전송 매체를 통한 데이터 전송

 

데이터 링크 계층(Data Link Layer): 물리적인 주소를 이용해 데이터를 송수신

 

네트워크 계층(Network Layer): 데이터 패킷을 목적지 까지 전달

 

전송 계층(Transport Layer): 신뢰성 있는 데이터 전송을 보장(예: TCP)

 

세션 계층(Session Layer): 두 장치 간의 연결을 관리하고 유지

 

표현 계층(Presentation Layer): 데이터의 형식과 압축을 담당

 

응용 계층(Application Layer): 사용자와 가장 가까운 계층, 애플리케이션 간의 데이터전송

예(HTTP, FTP)

 

2. TCP/IP 모델

TCP/IP 모델은 OSI 모델을 단순화한 형태로, 4개의 계층으로 나누어 진다.

 

링크 계층(Link Layer): 물리적 및 데이터 링크 프로토콜을 다룬다.

 

인터넷 계층(Internet Layer): IP 주소와 라우팅을 처리한다.

 

전송 계층(Transport Layer): 데이터 전송의 신뢰성을 보장한다.(예:TCP,UDP)

 

응용 계층(Application Layer): 애플리케이션 프로토콜을 달누다.(예:HTTP,FTP,SMTP)

 

 

  • 프로토콜의 작동예시

1. HTTP 요청

사용자가 웹 브라우저에 www.example.com을 입력 하면 브라우저는 HTTP 프로토콜을 사용하여 

서버에 요청을 보낸다.

 

서버는 요청받은 웹 페이지를 HTML 형태로 응답하고 브라우저는 이를 사용자에게 표시한다.

 

2. SMTP 이메일전송

사용자가 이메일을 보내면 이메일 클라이언트는 SMTP 프로토콜을 사용하여 이메일

서버에 메시지를 보낸다.

 

서버는 이메일을 수신자에게 전달할 다른 서버로 전송하고 수신자가 이메일을 확인할

수 있게 한다.

 

3. FTP 파일 전송

사용자가 FTP 클라이언트를 사용하여 파일을 업로드 하거나 다운로드할때 

FTP 프로토콜을 사용하여 파일을 서버와 클라이언트 간에 전송한다.

 

 

 

  • 정리

프로토콜은 네트워크 상에서 데이터 전송과 통신을 위한 규칙과 절차이다.

 

서로 다른 시스템이나 장치가 통신할 수 있도록 정의된 규약을 통해

데이터의 송수신, 보안, 오류 처리등을 관리한다.

 

프로토콜은 다양한 종류가 있으며 각각의 용도에 맞게 설계된다.

 

계층화된 구조로 운영되어, 각 계층에서 수행할 역할을 분리하여 복잡한 통신을 효율적으로

관리한다.

 

'개발학습기' 카테고리의 다른 글

SFTP(Secure File Transfer Protocol)  (0) 2024.12.28
SCP(Secure Copy Protocol)  (0) 2024.12.28
SSH Server  (1) 2024.12.28
개발학습기 목록  (1) 2024.12.28
SSH(Secure Shell)  (1) 2024.12.28