首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >tcp/ip发送延迟和性能优化

tcp/ip发送延迟和性能优化
EN

Stack Overflow用户
提问于 2016-11-01 01:32:39
回答 1查看 452关注 0票数 0

在运行在3.10中的linux服务器上,send函数将花费3~4微秒,如下所示:

代码语言:javascript
复制
struct timeval  tv1,tv2;
gettimeofday(&tv1,NULL) ;
send(fd,strsend,strlen(strsend),MSG_NOSIGNAL) ; 
gettimeofday(&tv2,NULL) ;
printf("(%d)(%d)\n",tv1.tv_usec,tv2.tv_usec) ;

strlen( strsend )为212字节,因此我可以合并5条strsend和send消息,而不是5次调用send,它包含212 *5= 1060 (低于MTU 1500 ),发送延迟比调用5次要好得多。

我想知道我是否可以合并10条消息,只发送一次?!

在这种情况下,它包含212 * 10 = 2120字节,超过MTU 1500,也许延迟会有所改善,因为我只调用了发送一次,但是这样做有什么副作用吗?!NIC的任何配置参数都将有助于在最低延迟时间内进行除法?!tcp/ip性能的对等端是否受到影响?!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-01 01:36:10

您肯定应该尽可能地将尽可能多的信息聚合到对send的单个调用中。2KB通常被认为是一个绝对最小值。否则,在其他问题中,您将在有线上发送非常小的数据报,并降低网络效率。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40352961

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档