순서가 잘못된 패킷을 처리하는 방법을 설명해 줄 수 있습니까? 예를 들어, 내가 패킷을 캡처, 그들이 와서 그들을 분석 원시 소켓을 사용하고 있지만, 그들 중 일부는 잘못된 순서로 제공 :C# : 순서가 잘못된 TCP 패킷을 처리하는 방법은 무엇입니까?
- 아이디 ........... 플래그 을
- 16,390 (PSH, ACK)
- 16,535 (PSH, ACK)
- 16,638 (ACK)
- 16,640 (PSH, ACK)
- 16,639 (ACK)
- 16,695 (PSH, ACK)
ID가있는 패킷 : 16390, 16535, 16695는 별도의 패킷이며 자유롭게 처리 할 수 있습니다. ID가있는 패킷 : 16638, 16640, 16639는 패킷 시퀀스이며 분석하기 전에 오름차순으로 넣어야합니다.
푸시 플래그가있는 패킷을 가끔씩 먼저 만들어서 파서에 전달하면 파서는 패킷을 앞에두고 파서는 손상된 패킷을 그냥 버립니다.
처리 방법이 있습니까?
귀하의 질문에 더 잘 답변 할 수 있도록 귀하의 행동을 정확하게 설명하십시오. –
원시 소켓을 사용하지 마십시오. –
이것은 슬픈 것입니다. 원시 패킷을 처리하는 방법을 말씀 드렸습니다. 허용 된 응답은 8 표를 얻었지만 기본적으로 질문에 대답하지 않은 반면 3 개의 표를 얻었습니다 ... – Unknown