我在Java中有一个使用jnetpcap库分析.pcap文件的应用程序。我需要删除所有重复,重新传输和无序的数据包。有什么方法可以使用jnetpcap库来做到这一点吗?至少要删除重复的数据包。
答案 0 :(得分:0)
您可以使用序列号并重复检查。如果现在序列号小于或等于最后一个有效序列号,则可以删除它。您可以使用seq()
函数获取序列号。
Tcp tcp = new Tcp();
tcp.seq();
答案 1 :(得分:0)
注意:jnetpcap库当前不支持TCP重组,这是执行您请求的复杂功能所必需的。但是,通过匹配可以相对容易地完成其中的部分或全部。
将请求与响应匹配并删除重复项
请求的源端口将匹配响应的目标端口。 请求的确认将与响应的seq匹配。 这应该有助于将一个请求与一个响应匹配。
现在有重传(又名重复)......
重传请求将具有与其对应方相同的信息。相同的src,dst,ack和seq编号。
如果您与我联系,我对pcap文件和数据包了解得更多。