통신 프로토콜
통신 프로토콜
- 통신을 원하는 두 개체 간에 무엇을, 어떻게, 언제 통신할 것인지 서로 정한 규약
주요 요소
- 구문(syntax) : 데이터 형식이나 신호 수준 등
- 의미(semantic) : 전송의 조정, 오류관리를 위한 제어정보 포함
- 타이밍(timing) : 전송속도 조절 및 전송순서 조정
통신 프로토콜의 기능
- 통신 프로토콜의 기본 요소를 바탕으로 통신 주체 간에 원활한 통신을 위해서는 다음과 같은 통신 프로토콜의 기능을 구현해야 한다.
기능 명칭 | 설명 |
---|---|
단편화 Fragmentation | 송신 측에서 긴 데이터 블록을 일정한 크기의 작은 블록으로 나누어 전송하는 기능 |
재합성 Reassembly | 수신 측에서 쪼개진 작은 데이터 블록을 원래의 메시지로 복원하는 기능 |
캡슐화 Encapsulation | 프로토콜에 맞는 데이터 블록을 만들기 위해 플래그, 주소, 제어 정보 등을 덧붙이는 기능 |
연결 제어 Connection Control | 데이터그램 방식과 가상 회선 방식에 따라 통신 경로를 개설, 유지, 종료하는 기능 |
흐름 제어 Flow Control | 수신 측 처리 능력을 초과하지 않도록 데이터량과 속도를 조절하는 기능 |
오류 제어 Error Control | 전송 중 발생할 수 있는 오류를 검출하고 정정하는 기능 |
순서 결정 Sequencing | 송신 측의 데이터 단위를 순서대로 수신 측에 전달하는 기능 |
주소 설정 Addressing | 송신지와 목적지의 주소를 명기하여 정확하게 데이터를 전달하는 기능 |
동기화 Synchronization | 통신 객체 간의 상태(시작, 종료 등)를 일치시키는 기능 |
다중화 Multiplexing | 하나의 통신로를 여러 개로 나누거나 여러 회선을 하나로 묶어 다수 사용자가 동시에 사용하게 하는 기능 |
전송 서비스 Transmission Service | 패리티 검사, 보안, 서비스 등급, 우선순위 등을 포함한 추가 서비스 제공 기능 |
주요 네트워크 프로토콜
프로토콜 명칭 | 계층 | 용도 및 설명 |
---|---|---|
TCP Transmission Control Protocol |
전송 (4계층) |
- 연결지향형 프로토콜 - 데이터의 순서 보장과 오류 복구 기능 제공 - 데이터를 여러 패킷으로 나누어 전송하고, 수신 측에서 재조립 - 신뢰성이 중요한 통신 (예: 웹, 이메일 등)에 사용 |
IP Internet Protocol |
네트워크 (3계층) |
- 비연결형 프로토콜 - 각 호스트의 IP 주소를 이용하여 패킷을 목적지까지 전달 - 경로 설정 및 주소 지정 기능 수행 - 비연결형으로, 신뢰성은 TCP나 ICMP 등에 의존 |
SMTP Simple Transfer Protocol |
응용 (7계층) |
- 이메일을 송신하는 데 사용되는 표준 프로토콜 - 메일 클라이언트 -> 메일 서버 또는 서버 간 메일 전송 시 사용 - 메일 수신은 POP3 또는 IMAP과 함께 사용 |
POP3 Post Office Protocol v3 |
응용 (7계층) |
- 수신된 이메일을 메일 서버로부터 내려받기 위한 프로토콜 - 기본적으로 다운로드 후 서버에서 삭제 (오프라인 보관 방식) |
HTTP HyperText Transfer Protocol |
응용 (7계층) |
- 비연결형 프로토콜 - 클라이언트와 웹 서버 간 정보 요청 및 응답에 사용 - HTML, 이미지, 문서 등 웹 리소스 전송 - 비연결형이며 요청/응답 구조 기반 |
UDP User Datagram Protocol |
전송 (4계층) |
- 비연결형 프로토콜 - 연결 없는 통신을 제공하는 단순한 프로토콜 - 순서 보장 및 오류 제어 없음 - 빠른 전송이 필요한 스트리밍, 실시간 통신 등에 사용 |
ICMP Internet Control Message Protocol |
네트워크 (3계층) |
- 네트워크 상태 점검 및 오류 메시지 전달에 사용 - 목적지 접근 불가, 시간 초과 등 문제를 보고 - ping , traceroute 등의 명령어에서 활용됨 |
Comments