Lined Notebook

MTU와 MSS와 PMTUD ★★★

by yjym33

1. MTU (Maximum Transmission Unit)


**MTU (Maximum Transmission Unit)**는 네트워크에서 한 번에 전송할 수 있는 최대 데이터 패킷 크기를 나타냅니다. MTU는 네트워크 장비나 링크의 물리적 특성에 따라 다를 수 있으며, 일반적으로 이더넷에서는 1500 바이트가 기본 MTU 크기입니다. 이 크기는 데이터 링크 계층에서의 MTU를 나타냅니다.

MTU의 중요성:

큰 MTU 크기는 더 높은 데이터 전송 효율을 제공할 수 있지만, 크기 제한에 따른 분할이 필요할 수 있습니다.
작은 MTU 크기는 분할 필요성을 줄이지만, 작은 패킷 크기로 인한 오버헤드와 높은 프로토콜 헤더 비율을 초래할 수 있습니다.


2. MSS (Maximum Segment Size)


**MSS (Maximum Segment Size)**는 TCP 통신에서 한 번에 전송할 수 있는 최대 TCP 세그먼트 크기를 나타냅니다. TCP 세그먼트는 네트워크 계층의 MTU 크기에 맞게 조절되어 전송됩니다. 일반적으로 MSS는 MTU 크기에서 TCP 헤더와 IP 헤더 크기를 뺀 값입니다.

MSS의 중요성:

MSS는 TCP 연결 설정 과정에서 양쪽 호스트 간에 협상되며, 두 호스트 간의 MTU 차이에 따라 조절됩니다.
MSS는 TCP 세그먼트 크기를 조절하여 데이터 전송의 효율성을 유지하고 MTU 크기를 초과하지 않도록 합니다.


3. PMTUD (Path MTU Discovery)


**PMTUD (Path MTU Discovery)**는 TCP 통신에서 MTU 크기를 동적으로 조절하여 중간 네트워크 링크에서의 패킷 분할을 방지하는 메커니즘입니다. PMTUD는 다음과 같이 작동합니다.

송신 호스트는 초기에 최대 MTU 크기로 MSS를 설정합니다.
TCP 세그먼트가 중간 라우터 또는 네트워크 장비에서 MTU 크기를 초과하면 해당 장비에서 패킷 분할이 발생합니다.
분할된 패킷이 도달한 송신 호스트에 의해 감지되고, ICMP "파편화 필요" 메시지가 수신됩니다.
송신 호스트는 이 ICMP 메시지를 통해 경로상의 MTU 크기가 갱신되며, MSS를 조절하여 다시 전송을 시도합니다.
이 과정이 반복되면서 최적의 MSS와 MTU 크기를 찾아가게 됩니다.


PMTUD의 중요성:

PMTUD는 중간 네트워크에서의 패킷 분할을 방지하여 효율적인 데이터 전송을 보장합니다.
PMTUD는 TCP 세그먼트 크기를 동적으로 조절하므로 데이터 전송 중에도 MTU 크기의 변화를 반영할 수 있습니다.
PMTUD는 네트워크에서 데이터 패킷의 손실을 최소화하고 성능을 최적화하는 데 도움을 줍니다.

블로그의 정보

생각보다 실천을

yjym33

활동하기