2012-08-05 80 views
2

我有一个使用jnetpcap库分析.pcap文件的Java应用程序。我需要删除所有重复的,重新发送和乱序的数据包。有什么办法可以使用jnetpcap库来做到这一点?至少要删除重复的数据包。使用jnetpcap删除重复数据包

+0

Wireshark有一个'跟随连接'选项,这似乎是一个比这更好的追求路径。 – EJP 2012-08-06 02:55:55

回答

0

您可以使用序列号并检查它是否重复。如果现在序列号小于或等于最后一个有效序列号,则可以删除它。您可以使用seq()函数获得序列号。

Tcp tcp = new Tcp(); 
tcp.seq(); 
0

注意:jnetpcap库当前不支持TCP重组,这是执行所请求的复杂功能所必需的。但是做一些或全部的匹配可能会相对容易。

匹配的请求到响应和删除重复

的请求将匹配的响应的目的地端口的源端口。 请求的确认将匹配响应的seq。 这应该有助于将一个请求与一个响应进行匹配。

现在,随着重传(又名。重复)...

的重传请求都会有相同的信息,其对应。相同的src,dst,ack和seq编号。

我知道更多关于pcap文件和数据包,如果你联系我。