2022-08-22
TCP/IP와 PDU
네트워크 프로토콜 집합 TCP/IP, 계층별 데이터 단위 PDU에 대해 알아보자!
TCP/IP 정의
TCP/IP는 네트워크 프로토콜의 집합을 4계층 모델
로 실용적으로 표현한 방식이다.
OSI7 Layer은 7계층 모델로 표현된 방식이며, 학술적인 느낌이 강하기 때문에 TCP 기준으로 설명한다.
계층 구분
- 응용 계층(Application Layer): 프로세스의 네트워크 통신을 위해 설계된 프로토콜들이 추상화 되어 있는 계층이다.
- FTP : 파일을 전송시 사용되는 프로토콜
- HTTP : 웹 서버 또는 인터넷 브라우저에 사용되는 프로토콜
- SMTP : 전자메일을 전송하기 위한 프로토콜
- DNS : IP주소를 매핑해주는 프로토콜
- 전송 계층(Transport layer): 데이터 유실이나 혼잡제어 등 호스트 간의 통신을 제어하는 계층이다.
TCP, UDP 프로토콜로 구분되며 응용 계층의 프로토콜을 포트번호로 구분한다. 예로 HTTP는 80번. - 인터넷 계층(Internet protocol): 호스트를 식별하는 논리적 주소 IP를 이해하는 계층이다.
패킷 인캡슐레이션 및 디캡슐레이션 기능을 담당한다. - 네트워크 엑세스 계층: NIC을 식별하는 물리적 주소 MAC을 이해하는 계층이다.
물리적인 전기신호로 데이터가 송수신된다.
PDU(Protocol Data Unit)
- Stream: 응용 계층에서 사용되는 단위로 데이터 길이(크기)가 정해지지 않은 데이터다.
IP 계층에서 다루는 패킷의 크기보다 크기가 클 수 있으므로 세그멘테이션 과정을 통해 나뉘게 된다. - Segment: 세그멘테이션 과정을 통해 일정 단위로 나누어진 데이터이며, MSS(Maximum Segment Size)를
기반으로 TCP, IP 헤더(각 20byte)를 제외한 1460byte 크기를 갖는다. - Packet: 세그먼트 데이터에 IP 주소가 캡슐레이션된 데이터 단위다.
- Frame: 패킷에 MAC 주소가 캡슐레이션된 데이터 단위로, 이더넷 헤더에
출발지와 목적지 정보가 담겨있다.
인캡슐레이션, 디캡슐레이션
- 인캡슐레이션: 데이터를 송신하거나 수신할 때 데이터를 가공하는 과정이다.
각 계층을 거칠때 프로토콜 지시자 헤더를 삽입한다. - 디캡슐레이션: 인캡슐레이션시 삽입되었던 상위 프로토콜 지시자를 참조해 데이터를 상위로 올리는 과정이다.