首页 > 代码库 > Linux e1000e网卡驱动
Linux e1000e网卡驱动
目录
- 识别网卡
- 命令行参数
- 附加配置
- 技术支持
一、识别网卡
e1000e驱动支持Intel所有的GbE PCIe网卡,除了82575,82576,基于82580系列的网卡。
提示:Intel(R) PRO/1000 P Dual网卡是支持e1000,但不支持e1000e,因为82546部分支持PCIe。
更多信息关于怎么识别你的网卡,去官网的 Adapter & Driver ID Guide:
http://support.intel.com/support/go/network/adapter/idguide.htm
对于最新的Intel网卡驱动,参考下面网站,输入网卡名或者类型就能搜索到:
http://support.intel.com/support/go/network/adapter/home.htm
二、命令行参数
参数的默认值一般都是推荐的设置,除非是有特别提示。
提示:InterruptThrottleRate,RxIntDelay, TxIntDelay, RxAbsIntDelay, TxAbsIntDelay,
以上参数的详细信息参考:http://www.intel.com/design/network/applnots/ap450.htm
InterruptThrottleRate
有效范围: 0,1,3,4,100-100000(0=off, 1=dynamic, 3=dynamic conservative,4=simplified balancing)
默认值: 3
驱动可以限制网卡为收到的报文生成中断的数量的频率,即每秒生成的中断个数。驱动通过设置网卡每秒中断数量的最大值来实现这个功能。
设置InterruptThrottleRate的值大于等于100,会设置网卡每秒发送出去的中断的最大值,即使受到了更多的报文。
这样减少了系统中断的负载并能降低CPU利用率,但是会增加处理报文的延迟。
驱动默认是假定InterruptThrottleRate的值是8000,综合来看,这对所有流量类型的报文都是很好的,但是缺乏对小报文的性能和延迟。
硬件每秒能处理更多的小报文,由此一个自适应的中断调节算法就应运而生了。
驱动有2种自适应模式(设置为1,3),都能基于它收到的流量来动态调节InterruptThrottleRate的值。
在判断出收到流量的类型的最后一个时间段,会调整InterruptThrottleRate到一个合适的值。
算法对每一个时间间隔收到的流量进行分类,一旦类型确定了,InterruptThrottleRate的值就会调整到这个类型的最佳的值。有3种已经定义好的类型:
- "Bulk traffic" 适用于大流量的正常大小的报文
- "Low latency" 适用于小流量或占大比例的小报文的流量
- "Lowest latency" 适用于几乎全是小报文或者小流量
在动态保守模式(dynamic conservative),InterruptThrottleRate在"Bulk traffic"类型是设置为4000。
如果是"Low latency"或者"Lowest latency"类型,InterruptThrottleRate会逐步的上升,直到20000。
这个默认的模式对大多数应用程序都很适用。
对那些对低延迟至关重要的情况,比如集群或网格计算,算法会降低延迟甚至会设置成模式1,在模式1下,会逐步增长InterruptThrottleRate到70000,类型为"Lowest latency"。
在精简模式(simplified),中断的速率是基于TX与RX流量的比例来设置的。如果bps(bytes per second)速率近似相同,中断速率会慢慢下降到每秒2000个中断。
如果流量大多数的是发送或者大多数的是接收,中断速率能高达8000。
Linux e1000e网卡驱动