컴퓨터 과학(CS)/네트워크

[네트워크] MTU(Maximum Transmission Unit)

마달랭 2025. 6. 6. 12:15

개요

MTU는 네트워크에서 단일 데이터 링크 계층 프레임으로 전송할 수 있는 최대 바이트 수를 의미한다.

┌─────────────────────────────────────────────┐
│           이더넷 프레임 (1518 바이트)         │
├──────┬────────────────────────────┬─────────┤
│헤더  │        페이로드            │  FCS     │
│(14)  │       (1500)               │  (4)    │
└──────┴────────────────────────────┴─────────┘
         ↑
      MTU 영역
애플리케이션 데이터
↓
TCP/UDP 헤더 추가 (20/8 바이트)
↓
IP 헤더 추가 (20 바이트)
↓
이더넷 헤더 추가 (14 바이트) + FCS (4 바이트)
↓
물리적 전송 (최대 1518 바이트)
┌─────────────────────────────────────────┐
│ Application Layer                       │
├─────────────────────────────────────────┤
│ Transport Layer (TCP/UDP)               │ ← MSS (Maximum Segment Size)
├─────────────────────────────────────────┤
│ Network Layer (IP)                      │ ← MTU (Maximum Transmission Unit)
├─────────────────────────────────────────┤
│ Data Link Layer                         │ ← Frame Size Limit
├─────────────────────────────────────────┤
│ Physical Layer                          │ ← Medium Constraints
└─────────────────────────────────────────┘

개념적 관계

  • MTU: IP 계층에서 한 번에 전송할 수 있는 최대 패킷 크기
  • MSS: TCP에서 실제 데이터 부분의 최대 크기 (MTU - IP헤더 - TCP헤더)
  • Frame Size: 데이터 링크 계층의 물리적 제약

 

MTU 결정 요인

1. 물리적 제약

  • 매체의 물리적 특성 (구리선, 광섬유, 무선)
  • 하드웨어 버퍼 크기
  • 전송 방식의 특성

2. 프로토콜 제약

  • 프레임 포맷의 정의
  • 오류 검출 메커니즘
  • 흐름 제어 방식

3. 성능 고려사항

  • 처리 오버헤드 vs 효율성
  • 메모리 사용량 vs 처리량
  • 오류 복구 단위

 

주요 네트워크 MTU 값

enum NetworkMTU {
    ETHERNET_MTU = 1500,        // 가장 일반적
    JUMBO_FRAME_MTU = 9000,     // 고성능 LAN
    PPPOE_MTU = 1492,           // ADSL/VDSL (8바이트 오버헤드)
    PPTP_VPN_MTU = 1436,        // VPN 터널링
    IPV6_MIN_MTU = 1280,        // IPv6 최소 요구사항
    IPV4_MIN_MTU = 576,         // IPv4 최소 요구사항
    LOOPBACK_MTU = 65536,       // 로컬 루프백
    TOKEN_RING_MTU = 4464,      // 토큰링 (구형)
    FDDI_MTU = 4352,            // FDDI (구형)
    ATM_MTU = 9180,             // ATM 네트워크
    WIFI_MTU = 1500,            // 일반적으로 이더넷과 동일
    LTE_MTU = 1500,             // 4G LTE
    SATELLITE_MTU = 1400        // 위성 통신 (보수적)
};

 

 

Path MTU Discovery (PMTUD)

송신자와 수신자 사이의 경로에서 가장 작은 MTU를 찾는 과정을 의미한다.

송신자로 부터 수신자로 가기 까지 라우터가 존재하나 라우터 마다 MTU의 크기 제한을 두었을 수가 있다. 따라서, 이동하는 경로 중 가장 작은 크기의 MTU를 찾고, 해당 크기만큼의 패킷을 최대 크기로 설정해 주어야 한다.

[송신자] ──1500──→ [라우터A] ──1200──→ [라우터B] ──1500──→ [수신자]
                      ↓
               ICMP "Fragmentation 
                Needed" (Next-Hop 
                MTU = 1200)
                      ↓
[송신자] ←────────────┘

[송신자] ──1200──→ [라우터A] ──1200──→ [라우터B] ──1200──→ [수신자]
                                                      ↓
                                                   성공!

1. 동작 과정

  1. 송신자가 큰 패킷을 DF(Don't Fragment) 플래그와 함께 전송
  2. 중간 라우터에서 MTU 초과 시 ICMP "Fragmentation Needed" 메시지 반환
  3. 송신자가 더 작은 크기로 재전송
  4. 최적 크기 발견까지 반복

2. 유의 점

  1. ICMP 차단 환경에서는 경로 상의 라우터의 MTU을 알 수 없기 때문에 작동이 불가하다.
  2. 동적 라우팅 시 경로 변경 감지 지연이 발생하게 된다.
  3. 송신 경로와 수신 경로가 다를 수 있어 각 경로에 따른 최소 MTU값이 상이할수 있다.

 

결론

  1. MTU는 IP 계층에서 단일 전송으로 보낼 수 있는 최대 패킷 크기를 의미한다.
  2. 물리적 제약, 프로토콜 제약, 성능 고려사항으로 인해 MTU가 결정된다.
  3. 전송 시점에서 경로상 모든 세그먼트 중 최소값이 결정된다.
  4. 패킷의 크기와 MTU에 따라 패킷의 조각 수가 결정된다.
  5. 조각 수에 따른 손실 확률이 높기때문에 오버헤드 없이 처리량을 높히기 위해선 최적화 전략이 필요하다.
  6. 큰 MTU는 높은 효율성, 긴 직렬화 지연, 높은 오류 비용를 갖는다.
  7. 작은 MTU는 낮은 효율성, 짧은 지연, 높은 오버헤드를 갖는다.
  8. 효율성, 지연, 손실 비용의 균형점을 찾아 최적 MTU를 설계하여 최적화 전략을 수립해야 한다.
728x90