소개
이 문서에서는 서로 다른 MTU 컨피그레이션에 대해 설명하고 다양한 조합과 패딩이 포함된 동작을 포함하는 시나리오에 대해 설명합니다.
배경
조각화는 L2가 아닌 L3 경로에서 발생합니다.
Padding은 기본적으로 IP 패킷 헤더의 길이가 32비트의 배수인지 확인하는 데 사용됩니다.
전제 조건
IP 프래그먼트화 및 리어셈블리
Cisco Nexus 스위치의 MTU
패딩 정보
- Sender[initiator]는 패딩을 수행하며, intermittent[transit] 디바이스는 패딩을 수행하지 않습니다.
- 패킷이 컷스루 스위치를 통과할 때 패딩이 수정되어서는 안 됩니다.
- 발신자가 패딩 작업을 수행할 수 없는 경우 스위치는 패킷을 언더사이즈 프레임으로 간주합니다.
- 패딩 전에 Wireshark 캡처가 발생합니다.
- 기본적으로 스위치에서는 전송하려는 패킷 크기가 64B 미만이라도 추가 바이트를 추가합니다.
- 64바이트 802.1q 태그된 이더넷 프레임은 L2/L3의 트렁크 포트를 통해 수신되고 태그가 지정되지 않은 액세스 포트로 라우팅/전달되는 경우 802.1q 태그는 감소되고 프레임 크기는 4바이트 감소합니다
- 프레임에 태그를 해제하는 동안 프레임은 IEEE 802.1q 사양에 지정된 64바이트 최소 MTU를 더 이상 충족하지 않습니다. 스위치는 프레임을 64바이트로 다시 패드해야 합니다.
조각화 및 MTU 불일치
- Path가 L3이면 프래그먼트화가 발생하며 패킷이 삭제되지 않습니다.
- Path가 L2이면 프래그먼트화가 발생하지 않으며 패킷이 완전히 삭제됩니다.
- 패킷 크기 1540B로 [ICMP]를 시작하고 경로에 L2가 여전히 표시되어 있으며 총 크기가 1568[1540+20+8]이 됩니다.
- 시작 [packet-size 1541B를 사용하는 ICMP, 총 패킷은 1569가 되고, 드롭과 드롭은 Giants 카운터로 표시됩니다.
- 다음 카운터의 MTU 불일치가 증가하면 시나리오 및 컨피그레이션을 기준으로 점보, 거점, 런트 등이 증가합니다.
토폴로지
9K = MTU 9K [점보]
1.5K = MTU 1.5K + L2로 구성
위 Lab 토폴로지는 다음과 같이 여러 시나리오에서 나누어졌습니다.
Ping 테스트를 사용한 MTU 문제 해결
패킷 크기 1500으로 Ping 수행
ping을 시작하고 ping을 실행하여 성공했습니다.
L2가 있지만 드롭은 기본 1500으로 표시되지 않습니다.
N5K-1# ping 10.1.1.2 count 10
PING 10.1.1.2 (10.1.1.2): 56 data bytes
64 bytes from 10.1.1.2: icmp_seq=0 ttl=254 time=3.228 ms
64 bytes from 10.1.1.2: icmp_seq=1 ttl=254 time=4.832 ms
패킷 크기가 5000인 Ping
N5k1에서 Nexus-Sw2로 패킷 카운트가 50인 패킷 크기 5000으로 ping을 시작했으며 전송 L2에서 삭제됩니다.
N5K-1# ping 10.1.1.2 packet-size 5000 count 50
PING 10.1.1.2 (10.1.1.2): 5000 data bytes
Request 0 timed out
Request 1 timed out
Nexus-sw1의 인그레스 시 점보로 간주되는 패킷
Nexus-Sw1# sh interface ethernet 3/3 | i MTU|jumbo
MTU 9216 bytes, BW 10000000 Kbit, DLY 10 usec
50 jumbo packets 0 storm suppression packets >>>>>>> exact 50 jumbo packets are seeing in the RX counter.
Nexus-sw1의 이그레스 시 점보로 간주되는 패킷
Nexus-Sw1# sh interface ethernet 3/1 | i MTU|jumbo >>>>>>> Intertace connected towards to N7k2 with MTU 1500
MTU 1500 bytes, BW 10000000 Kbit, DLY 10 usec
50 jumbo packets >>>>>>> Exact 50 jumbo packets are egress in the TX.
Nexus-sw2의 인그레스(ingress)에서 삭제된 패킷
Nexus-Sw2# sh interface et3/1 | i MTU|giant >>>>>>> Interface connected towards Nexus-Sw1 with e3/1 MTU 1500
MTU 1500 bytes, BW 10000000 Kbit, DLY 10 usec
0 runts 50 giants 0 CRC/FCS 0 no buffer >>>>>>> Exact 50 input error and 50 Giants packets observed in the RX counter.
50 input error 0 short frame 0 overrun 0 underrun 0 ignored
Nexus-Sw2# sh interface et3/4 | i MTU|giant|error >>>>>>> Interface with MTU 1500
MTU 1500 bytes, BW 10000000 Kbit, DLY 10 usec
0 runts 0 giants 0 CRC/FCS 0 no buffer >>>>>>> No counter seen
0 output error 0 collision 0 deferred 0 late collision >>>>>>> No counter seen