PDU
PDU는 Protocol Data Unit의 약자입니다.
=> 컴퓨터데이터를 세는단위를 PDU라고 보면 될거 같다.
그림에 왼쪽에 있는게 세는 단위입니다.
(각 계층의 데이터 단위)
보통 비트, 프레임, 패킷, 세그먼트 까지는 알고있어야 한다.
세그먼트 (전송 계층(4))
예를 들면, 상위 계층에서 데이터를 전달받은 전송계층에서는 아래의 정보들를 추가해 그룹화 한다. 이때부터 데이터는 데이터가 아니라, 세그먼트라고 불리는 것이다.
- 발신지 포트 : 발신하는 application의 포트
- 목적지 포트 : 수신해야 할 application의 포트
- 순서 번호 : 순차적 전송할 경우 순서를 붙이며, 순서가 어긋나면 목적지 프로토콜이 이를 바로 잡는다.
- 오류검출코드 : 발신지와 목적지 프로토콜은 세그먼트를 연산하여 오류 검출 코드를 각각 만든다. 만약 발신지에서 전송한 세그먼트에 포함된 오류 검출 코드와 목적지에서 만든 오류 검출 코드가 다르다면 전송되는 과정에서 오류가 발생한 것이다. 이 경우, 수신측은 그 세그먼트를 폐기하고 복구 절차를 밟는다. 오류검출코드는 체크섬, 프레임 체크 시퀀스라고도 부른다.
자세한 내용은 이전 글의 TCP Header 항목 확인.
패킷 (네트워크 계층(3))
전송 계층으로 부터 전달받은 세그먼트는 네트워크 계층의 정보를 포함해 패킷이라고 불리게 된다.
- 발신지 컴퓨터 주소(Destination IP) : 패킷의 발신자 주소
- 목적지 컴퓨터 주소(Source IP) : 패킷의 수신자 주소
- 서비스 요청 : 네트워크 접속 프로토콜은 우선 순위와 같은 서브 네트워크의 사용을 요청할 수 있다.
전반적인 네트워킹에서의 packet의 의미
Circuit switching vs Packet switching 의 개념으로 회선교환(circuit switching)에 대비되는 모든 데이터 교환을 일컬어 packet switching이라고 할 수 있다. ATM cell switching은 물론이고, Ethernet frame switching, Frame Relay frame switching, 등등 회선교환이 아닌 모든 데이터 단위가 packet의 범주에 들어간다.
패킷의 구조는 이 블로그에서, 패킷의 자세한 전달과정은 여기서 확인할 수 있다.
그 외 헷갈리던 용어 정리
- Datagram : 데이터그램은 사용자의 순수한 message를 다르게 부르는 말이다.
- IP Packet : IP packet에서의 packet은 이 사용자 datagram을 layer-2의 MTU에 맞춰서 토막을 낸 상태. 그러니까 packet은 토막난 상태의 사용자 정보 스트림을 말한다.
- SDU(Service Data Unit) : PDU와 SDU는 다른 용어이니 헷갈리면 안된다. SDU는 상향/하향 통신 레이어 간에 전달되는 실제 정보를 말한다. PDU는 동일 레이어 내에서 데이터 단위를 부르는 이름이고.
- 즉, PDU = PCI(프로토콜 통신 유닛의 줄인말로 쉽게 말하면 헤더 정보) + SDU 라고 생각하자.
MTU란?
네트워킹에서 MTU(Maximum Transmission Unit)이란 네트워크에 연결된 장치가 받아들일 수 있는
최대 데이터 패킷 크기를 말합니다.
네트워크의 MTU보다 큰 패킷은 해당 네트워크를 통과하지 못합니다.
하지만 차량과는 달리 MTU보다 큰 데이터 패킷은 작은 조각으로 잘라 MTU에 맞출 수 있습니다.
이 과정을 분할이라고 합니다. 분할된 패킷은 목적지에 도착하면 다시 조립됩니다.
MTU의 단위는 바이트입니다.
"바이트"는 8개 비트의 정보(즉, 8개의 0과 1)를 의미합니다.
최대 MTU 크기는 1,500바이트입니다.
MSS란?
MSS는 최대 세그먼트 크기를 말합니다.
MSS는 계층 3이 아닌 계층 4에서 TCP가 사용하며 MSS는 각 패킷 내의 페이로드 크기에만 관련되어 있습니다.
이는 MTU에서 TCP 및 IP 헤더 길이를 빼서 계산합니다.
라우터의 MTU보다 큰 패킷은 분할되거나 누락되지만 MSS보다 큰 패킷은 항상 누락됩니다.
MTU와 MSS에 대한 자세한 내용은 MSS란 무엇인가요?를 참조하시기 바랍니다.
'개인 공부' 카테고리의 다른 글
네트워크 - 버퍼, 버퍼링, 캡슐화 ,큐 (0) | 2022.12.20 |
---|---|
네트워크 - 채널, 터널링 (0) | 2022.12.20 |
Socket, Web Socket 란? (0) | 2022.12.16 |
SSL / TLS (0) | 2022.12.15 |
TCP/IP 소켓 통신 과정 (0) | 2022.12.15 |