mss를 넘는 패킷이 오면 받아들이나요?
리눅스 머신에 있는 코드를 삼바 사용해서 윈도우 PC로 작업하고 있는데요.
만들고 있는 커널 모듈로 유입되는 패킷 iphdr->tot_len을 출력해봤는데
mtu 사이즈보다 커서 덤프를 확인했더니 아래와 같더군요. mtu는 양쪽 다 1500입니다.
패킷은 NF_IP_PRE_ROUTING hook에서 전달받은거구요.
아래 mss는 1460인데 실제 보내오는 사이즈는 13140이라고 나와있습니다.
패킷마다 크기가 제각각이긴 한데 잘 모르겠지만 실제 저 사이즈로 통신을 하는것 같습니다.
mss보다 큰 패킷으로 통신하지 않는것으로 알고있는데 어떻게 된건지 궁금합니다.
22:43:32.111088 IP 192.168.105.236.65105 > 192.168.105.239.445: Flags [S], seq 3615890952, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
22:43:32.111109 IP 192.168.105.239.445 > 192.168.105.236.65105: Flags [S.], seq 1890494678, ack 3615890953, win 5840, options [mss 1460,nop,nop,sackOK,nop,wscale 7], length 0
......... 중략 .........
22:44:46.524966 IP 192.168.105.239.445 > 192.168.105.236.65105: Flags [.], seq 153541:166681, ack 53301, win 551, length 13140WARNING: Packet is continued in later TCP segments
SMB PACKET: SMBreadX (REPLY)
음.. 두 호스트가 같은 네트웍 대역인 걸로 봐서는
음.. 두 호스트가 같은 네트웍 대역인 걸로 봐서는 jumbo frame 영향 같네요.
댓글 달기