Java中的重复数据包?
有没有一种简单的方法可以在Java中对TCP数据包进行1:1拷贝并将其发送回,从而强制客户端的TCP实现自动丢弃它?还是我走错了路?这似乎是一件简单的事情,但却让我感到困惑Java中的重复数据包?,java,sockets,tcp,Java,Sockets,Tcp,有没有一种简单的方法可以在Java中对TCP数据包进行1:1拷贝并将其发送回,从而强制客户端的TCP实现自动丢弃它?还是我走错了路?这似乎是一件简单的事情,但却让我感到困惑 编辑原始套接字库是否与此相关,或者它不是严格要求的?是的,您可以复制并重新发送所需的所有有效负载数据 不,无法直接使用Java套接字重新创建TCP/IP头(和/或以太网帧头) 您可能希望查看libpcap: 由于TCP/IP头是在内核级填充的,因此TCP数据包复制应该在内核级完成 也许您需要重新编译linux内核,并修改TC
编辑原始套接字库是否与此相关,或者它不是严格要求的?是的,您可以复制并重新发送所需的所有有效负载数据 不,无法直接使用Java套接字重新创建TCP/IP头(和/或以太网帧头) 您可能希望查看libpcap:
由于TCP/IP头是在内核级填充的,因此TCP数据包复制应该在内核级完成
也许您需要重新编译linux内核,并修改TCP/IP堆栈实现,以模拟数据包丢弃和复制。您好,谢谢您的回复。。。所以需要一个原始套接字库来执行这类操作?我听说过RockSaw,从未使用过它,但显然它允许你做任何你喜欢的事情。。。