目录

  • 识别网卡
  • 命令行参数
  • 附加配置
  • 技术支持

一、识别网卡
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网卡驱动的更多相关文章

  1. linux enc28j60网卡驱动移植(硬件spi和模拟spi)

    本来想移植DM9000网卡的驱动,无奈硬件出了点问题,通过杜邦线链接开发板和DM9000网卡模块,系统上电,还没加载网卡驱动就直接崩溃了,找不到原因...刚好手上有一个enc28j60的网卡模块,于是 ...

  2. Linux PCI网卡驱动的详细分析

    学习应该是一个先把问题简单化,在把问题复杂化的过程.一开始就着手处理复杂的问题,难免让人有心惊胆颤,捉襟见肘的感觉.读Linux网卡驱动也是一 样.那长长的源码夹杂着那些我们陌生的变量和符号,望而生畏 ...

  3. e1000e网卡驱动在麒麟3.2.5上编译安装

    一.清空原驱动 因为系统安装完毕后系统中自带了e1000e的网卡驱动,会影响后面自行编译的驱动 所以先用find命令找出并删除掉所有关于e1000e的驱动文件 find / -name "* ...

  4. linux查看网卡驱动

    [root@hudson ~]# yum install ethtool -y [root@hudson ~]# ethtool -i em1driver: bnx2version: 2.2.3fir ...

  5. linux 编译网卡驱动

    将smsc7500网卡驱动拷贝到/drive/net/usb文件夹下 拷贝ioctl_7500.h  smsc7500usbnet.c smsc7500version.h smsclan7500.h ...

  6. 怎样在linux下安装网卡驱动

    由于我电脑的各种奇葩问题的存在,导致我装上Ubuntu13.10之后网卡居然无法使用,坚持了挺久使用无线网,终于坚持不住了,百度了各种解决方式,终于成功解决.这里也记录一下我的解决过程,供大家参考.大 ...

  7. 新装Linux系统没有网卡驱动的解决办法和步骤

    Linux下查看网卡驱动和版本信息 - CSDN博客 https://blog.csdn.net/guyan1101/article/details/72770424/ 检查网卡是否加载 - Linu ...

  8. CentOS下安装网卡驱动

    前言最近,一台机器从FreeBSD换为CentOS,一路安装顺利.完事之后发现,网卡没有启用,dmesg | grep eth 命令确定网卡没有驱动导致的.于是开始了一路艰辛的安装过程. 安装过程1. ...

  9. linux 系统网卡无法识别,缺少驱动

    #linux网卡驱动安装# Linux设备加载 #lsmod Module Size Used by e1000e 查看硬件设备 ls /usr/share/hwdata 查看pci网卡设备 lspc ...

随机推荐

  1. sprinbboot 热部署 造成类加载器 不一致问题

    这里只说devtools的方式,注意以下的热部署方式在IDEA是默认没有打开自动编译的,手动编译需要快捷键(Ctrl+Shift+F9), 自动编译的修改配置如下:(注意刷新不要太快,会有1-2秒延迟 ...

  2. django-orm简记

    首先orm是什么? orm-------->对象关系映射 专业性解释网上一大推,随便搜搜就能了解大概.在我理解(通俗):一个类 ----- 数据库中一张表 类属性 ----- 数据表中的字段名 ...

  3. 【TOJ 3812】Find the Lost Sock(异或)

    描述 Alice bought a lot of pairs of socks yesterday. But when she went home, she found that she has lo ...

  4. Python学习——01Linux基础之常用基本命令

    做Linux要知道两件事: 首先知道自己处在什么位置(桌面……) 区分大小写 pwd:查看当前所在目录                                “/”代表:根目录 Cd: cd( ...

  5. IDEA无法引入已经创建的类

    解决办法: 清理一下缓存: File->Invalidate Caches/Restart... OVER!

  6. jquery图片滚动normalizy.css

    article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block; ...

  7. H5混合开发进阶

    混合开发: 原生app里面,IOS 安卓的原生app里面,嵌套h5界面. 通过原生app里的一个webView盒子进行交互.webView是原生app内置的一个XXX,里面可以放置h5界面.可以相互调 ...

  8. Phpstudy2018 集成环境配置虚拟域名访问到Index Of 下

    (1)    Phpstudy是一款php集成开发环境 可随意切换Php的版本以及服务器. Phpstudy的网站根目录默认为WWW目录,那么如果我们想通过虚拟域名访问到Index Of目录来便于查看 ...

  9. cmd_menu.c

    #include <common.h>#include <config.h>#include <command.h> static char cmd_buf[200 ...

  10. C语言的结构体,枚举类型在程序中的作用

    http://www.xue63.com/xueask-1221-12212854.html 结构和枚举类型从程序实现的角度来说,是用更接近自然语言的方式来表达数据.比如说实现2维空间的点,你可以使用 ...