我们有一个以RTP(使用UDP)数据包的forms接收DTMF数字的应用程序。 较早的服务器版本是RHEL 5.7,一切工作正常。 现在,由于我们经常迁移到RHEL 6.8,数据包正在被丢弃。 数据包没有到达应用程序
netstat -su
显示了UDP数据包接收错误的增加。 我们使用通常的C函数recvfrom()来从套接字接收数据包。
将/proc/sys/net/core/rmem_max值设置为33554432
sysctl -w net.core.rmem_max=33554432
使系统工作。
现在为什么在RHEL 6.8而不是5.7中需要这个改变,并且这只会在这个缓冲区被填满的时候延迟这个问题,数据包会再次开始下降吗?