博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux中频繁轮询套接字
阅读量:6894 次
发布时间:2019-06-27

本文共 319 字,大约阅读时间需要 1 分钟。

 

  当套接字队列变空后,网络栈此时就空闲了,终于可以静一静了。可以选择休眠等待驱动程序将其他数据加入套接字,也可以以非阻断方式返回。

       为了实现以CPU使用率换取延迟尽可能低,内核在3.11起提供了频繁轮询套接字的功能。最初叫做低延时套接字轮询后根据Linus建议更名为频繁轮询套接字。

       要支持频繁轮询,网络驱动程序必须提供频发轮询方法,并将其作为net_device_ops对象的ndo_busy_poll回调函数。该函数返回已移到网络栈的数据包数。

       支持主动、频繁轮询的设备驱动程序可将延时降低到接近硬件延迟。

传统与频繁轮询的接收流程如下:

09de418b854935482073106ea479a9f267eaf809

      
频繁轮询套接字可以降低延迟和抖动,提供每秒处理的事务数,不过会加剧
CPU
争用,影响性能。

转载地址:http://uakdl.baihongyu.com/

你可能感兴趣的文章
通向架构师的道路(第一天)之Apache整合Tomcat - lifetragedy的专栏 - 博客频道 - CSDN.NET...
查看>>
项目、软件开发过程中版本术语
查看>>
T-SQL中INSERT、UPDATE
查看>>
openSUSE13.2安装ruby和rails
查看>>
python 高级函数
查看>>
F.Cards with Numbers
查看>>
简单入门Buffer
查看>>
OO第四阶段总结
查看>>
javascript总结02
查看>>
创建windows服务
查看>>
用main函数传参做简单的计算器的代码
查看>>
python中struct.unpack的用法
查看>>
PAT (Advanced Level) 1107. Social Clusters (30)
查看>>
【开源社群系统研发日记五】ThinkSNS+ 是如何计算字符显示长度的
查看>>
Nodejs日志管理log4js
查看>>
海康威视 - 萤石云开放平台 js 版
查看>>
关于分销平台
查看>>
jquery实用的一些方法
查看>>
质数方阵
查看>>
jQuery $.each用法
查看>>