1. MTU(Maximum Transmission Unit) 이란?
MTU란 TCP/IP Network 등과 같이 Packet 또는 Frame 기반의 Network에서 전송될 수 있는 최대 크기의 Packet 또는 Frame을 말합니다. 한번에 전송할 수 있는 최대 전송량(Byte)인 MTU 값은 매체에 따라 달라집니다. 예를 들어 Ethernet 환경이라면 MTU Default 값은 1500 이고 FDDI 인 경우 FDDI는 4000 정도 되고, X.25는 576, Gigabit MTU는 9000 정도 등 매체 특성에 따라 한번에 전송량이 결정됩니다.
2. ADSL에서의 MTU값
ADSL은 PPPOE와 PPPOA를 사용합니다. 외장형 모뎀과 PC LAN Card를 사용하는 형태는 PPPOE(PPP over Ethernet)라고 합니다. PC에서 만들어진 Ethernet frame 이 ADSL Serial 구간을 그냥 통과하지 못하기 때문에 Ethernet Frame 안에 PPP Frame을 포함해서 전송하기 때문에 1500 보단 작아야 합니다. 참고로 접속 Program 중 Winpoet은 MTU를 1420으로 설정하고 Ethernet Program은 MTU를 1416 정도로 설정합니다.
3. MTU 값 계산
MTU는 Ethernet Frame을 제외한 IP Datagram 의 최대 크기를 의미합니다. 즉 MTU 가 1500 이라고 할 때 IP Header의 크기 20 byte 와 TCP Header의 크기 20byte를 제외하면 실제 사용자 Data는 최대 1460까지 하나의 Packet으로 전송될 수 있습니다. Windows 계열에서는 PC의 기본 MTU가 1500으로 설정되어 있습니다. Registry에 특정 값을 적어주지 않으면 자신의 MTU값을 1500으로 설정됩니다. 그러나 Win2000부터 Media의 특성을 인식하여 Dynamic 하게 MTU를 설정됩니다.
4. MTU값 조정
Unix, Linux 계열에서는 ifconfig 명령어로 쉽게 변경할 수 있습니다.
# ifconfig hme0 mtu 1400
# ifconfig eth0 mtu 1300
Windows 계열은 Registry를 수정하면 되며 OS Version에 따라 설정값이 달라집니다.
5. 최대 UDP Datagram 크기
이론적인 IP Datagram의 최대 크기는 65535byte이다. 여기서 IP Header 20byte, UDP Header 8byte를 제외하면, UDP Datagram의 최대 크기는 65507byte가 된다. 하지만 Socket API의 Buffer 크기 제한을 통해서 변화될 수 있다. 일반적으로 UDP Socket은 8192 byte 이상이다. 또한 Kernel의 구현에 의해 크기가 변화될 수 있다. 일반적으로 UDP Program들은 512 byte이다.
'Operating System' 카테고리의 다른 글
| MTU (Maximum Transmission Unit) (0) | 2010/10/13 |
|---|---|
| Named Process Health Check (0) | 2010/05/14 |
| System Trace Command (0) | 2010/05/07 |
| Process가 참조하는 파일 확인 방법 (0) | 2010/02/28 |
| OS별 CPU 갯수 확인 방법 (0) | 2010/02/27 |
| File Size 검색 (0) | 2010/02/25 |
| 운영체제별 TCP Trace 뜨는 방법 (0) | 2010/02/23 |
| LSOF 사용법 (0) | 2010/02/20 |