linux – Ubuntu上的低延迟TCP设置

linux – Ubuntu上的低延迟TCP设置,第1张

概述在我的实验室中有一个用于在Ubuntu上运行测量的服务器.并且有C程序,它通过TCP连接接收数据,并应尽快发送回复. 组态 > CPU:2个处理器x 4个核心 – 英特尔(R)Xeon(R)CPU E5345 @ 2.33GHz > RAM:12 GB > NIC:Intel Corporation 80003ES2LAN千兆以太网控制器/ 82546EB千兆以太网控制器 >网络交换机:Cisco 在我的实验室中有一个用于在Ubuntu上运行测量的服务器.并且有C程序,它通过TCP连接接收数据,并应尽快发送回复.

组态

> cpu:2个处理器x 4个核心 – 英特尔(R)Xeon(R)cpu E5345 @ 2.33GHz
> RAM:12 GB
> NIC:Intel Corporation 80003ES2LAN千兆以太网控制器/ 82546EB千兆以太网控制器
>网络交换机:Cisco Catalyst 2960
>数据信息:大约数据块.每10毫秒.数据块大小约为. 1000字节.

接收数据包时的网络延迟非常关键(数十微秒很重要).我将程序优化到最大程度,但我没有调整Ubuntu的经验.

可以在Ubuntu中配置什么来减少处理/发送数据包的本地延迟?

解决方法 老实说,I wouldn’t be using Ubuntu for this ……但是有些选项可以应用于任何linux变体.

您需要增加网络堆栈缓冲区:

net.core.rmem_default = 10000000net.core.wmem_default = 10000000net.core.rmem_max = 16777216net.core.wmem_max = 16777216

如果应用程序正在写入磁盘,则可能需要更改调度程序/电梯(例如,截止期限电梯).

在服务器级别,您可以修改cpu调控器和电源以及cpu频率管理(P状态,C状态).

在 *** 作系统级别,您可以更改应用程序的实时优先级(chrt),优化以减少中断,将其固定到cpu或cpu组(taskset),并停止任何不必要的服务或守护程序.

您还可以在以下网址看到一些建议:How to troubleshoot latency between 2 linux hosts

在不了解所涉及的硬件或网络设备的情况下,很难更具体.

总结

以上是内存溢出为你收集整理的linux – Ubuntu上的低延迟TCP设置全部内容,希望文章能够帮你解决linux – Ubuntu上的低延迟TCP设置所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1043501.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存