我正在尝试将数据包操作减少到最小,以便提高我正在处理的特定程序的效率,但我正在努力使用sendto / recvfrom通过udp套接字发送所需的时间。我正在使用2个非常基本的流程(应用程序),一个是发送,另一个是接收。
我愿意理解当使用这些函数调用时linux内部如何工作......
以下是我的观察: 在以下位置发送数据包时
当使用不同的CPU时,时间明显不同并且与这些观察结果一致。必须有某种设置可以使一些队列读数更快地完成,具体取决于套接字上的流量......如何控制?
当仅使用节点作为转发节点时,当使用400Kbps流时,进出需要大约8us,我想尽可能多地收敛到这个值。 25us是不可接受的,并且被认为是慢的(很明显,这远远小于每个数据包之间的延迟......但重点是能够最终处理更多的数据包,因此,这一次需要缩短!)。有没有比sendto / recvfrom更快的东西(必须使用2个不同的应用程序(进程),我知道我不能使用monolitic块,因此我需要在套接字上发送信息)?