작은 PCAP 파일을 찾아주세요 여기 내 문제를 설명.
3 방향 TCP 핸드 셰이크가 있고 두 번의 FIX 로그온이 있습니다. (FIX는 거래에 사용되는 프로토콜입니다.) 첫 번째 FIX 로그온 (프레임 4)은 WireShark에서 잘 해석되고 구문 분석되지만 두 번째 로그온 (프레임 6)은로 해석됩니다 TCP segment of a reassembled PDU
.
그러나 프레임 6은 재 조립 된 PDU의 TCP 세그먼트 가 아닙니다 . 전체 TCP PDU가 포함되어 있으며 FIX 로그온으로 해석되고 구문 분석되어야합니다. 시퀀스 번호, ACK 번호, IP 총 길이 등이 모두 올바른지 확인했습니다.
프레임 6이 재 조립 된 PDU의 TCP 세그먼트로 해석되는 이유는 무엇입니까?
답변
호스트의 번호가 .76 및 .67 인 것은 약간의 문제입니다.
Wireshark는 프레임 6을 “재 조립 된 PDU의 TCP 세그먼트”라고 부릅니다. 10.10.10.67의 TCP 구현은 프레임 6으로 전송 된 페이로드를 포함하지 않고 페이로드 ( “네이 키드”ACK)없이 ACK를 보내도록 선택하고 있기 때문입니다. 프레임 5의 ACK w (이것은 OS / IP 스택 종속 동작입니다.) 이는 여러 TCP 세그먼트에서 FIX dissector로 페이로드를 전달하는 TCP dissector의 동작을 트리거합니다. 어떤 이유로 든 FIX dissector는 프레임 6을 해석하지 않습니다.
TCP dissector 옵션에서 “subdissector가 TCP 스트림을 세분화 할 수 있도록 허용”옵션을 끄면 Wireshark가이를 다르게 해석한다는 것을 알 수 있습니다.