我喜欢在服务器-客户端中模拟 TCP 连接,使用第 2 层套接字接收数据包,并使用 Packet MMAP 或 DPDK 或 netfilters 和 dev_xmit 发送数据包,为了接近任何工作阶段,我不需要任何干扰。因此,在虚拟机上运行的服务器程序和客户端可以通过模拟 TCP 连接——我将随着时间的推移不断添加 TCP 功能,从创建连接、维护序列号和 4 次关闭握手开始。实际上,我喜欢尝试传输数据的程序可以是大文件,其中许多文件的数量超过数百。这整个过程只是为了检查我是否可以在 Linux 中实现此功能,我相信它可以——如果我错了,请提及。所以想知道这个任务是否有意义
在本页https://blog.cloudflare.com/kernel-bypass/它讨论了 Linux 中的内核旁路方法。但我喜欢尝试其中一种方法,看看是否可以模拟 TCP。我熟悉这些程序和资源 Packet MMAPhttps://elixir.bootlin.com/linux/v3.14.32/source/tools/testing/selftests/net
kernel.org 上的 PACKET MMAP 和 DPDK 用于网络堆栈请注意,我还需要知道要忽略 TCP 数据包,可以在 IPtables 中做任何事情或其他方法来实现上述目标