[hardware][intel] intel全系列网卡调研

除了公司用,我自己还要买一块家用。

但是在这一切开始之前,还需要搞清楚PCIE到底咋回事。

一, 总线

https://zh.wikipedia.org/wiki/%E6%80%BB%E7%BA%BF

二,PCI

https://zh.wikipedia.org/wiki/%E5%A4%96%E8%AE%BE%E7%BB%84%E4%BB%B6%E4%BA%92%E8%BF%9E%E6%A0%87%E5%87%86

三,PCI Express

https://zh.wikipedia.org/wiki/PCI_Express

四, PCI 插槽外观

[hardware][intel] intel全系列网卡调研

五, PCI-E 插槽外观

[hardware][intel] intel全系列网卡调研

高清大图:

[hardware][intel] intel全系列网卡调研

六,卡和插槽之间相互怎么插?

PCIe卡能使用在至少与之传输通道相当的插槽上(例如x1接口的卡也能工作在x4或x16的插槽上)。一个支持较多传输通道的插槽可以创建较少的传输通道(例如8个通道的插槽能支持1个通道)。PCIe设备之间的链接将使用两设备中较少通道数的作为标准。一个支持较多通道的设备不能在支持较少通道的插槽上正常工作,例如x4接口的卡不能在x1的插槽上正常工作(插不入),但它能在x4的插槽上只创建1个传输通道(x1)。

也就是说,倍数低的卡,可以插入倍数高的插槽。反之不行,因为不够长。

七,除此之后,还有版本划分 PCIe2.0 PCIe3.0 PCIe4.0 详见wiki

八,以太网服务器适配器

http://www.intel.cn/content/www/cn/zh/ethernet-products/gigabit-server-adapters/overview.html

九,以太网网络适配器

http://www.intel.cn/content/www/cn/zh/ethernet-products/converged-network-adapters/overview.html

十,技术手册

  英特尔® Ethernet Flow Director 和 Memcached 性能

  详细介绍了 RSS(Receive Side Scaling)/ Flow Director

  RPS: linux中 RSS的软件实现

  https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Performance_Tuning_Guide/network-rps.html

  RFS: linux中 Flow Director的软件实现

  https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Performance_Tuning_Guide/network-rfs.html

  https://lwn.net/Articles/382428/

  RFS 还可以配合 taskset,numactl一同使用。

  http://linuxcommand.org/man_pages/taskset1.html

  

十一,产品指南

  英特尔® 以太网网络适配器产品指南

十二,型号选择向导

  http://www.intel.cn/content/www/cn/zh/ethernet-products/gigabit-server-adapters/gbe-server-selection-guide.html

十三,详细参数,可以单独查看每一个型号的datasheet

  如 40Gb的XL710网卡: https://www.intel.com/content/www/us/en/ethernet-products/converged-network-adapters/ethernet-xl710-brief.html

十四,查看

  lspci -vvv -s 03:00.0

  查看多队列:

[root@T185 ~]# lspci -vvv -s :00.0 |grep MSI-X
Capabilities: [] MSI-X: Enable+ Count= Masked-

  根据PCI设备号,查看对应的网卡名称:

[root@T185 ~]# ll /sys/bus/pci/devices/\:\:00.0/net/
total
drwxr-xr-x. root root May : eth0
[root@T185 ~]#

  根据网卡名称,查看对应的PCI设备号:

[root@T185 ~]# ll /sys/class/net/eth0/device/driver/
total
lrwxrwxrwx. root root May : ::00.0 -> ../../../../devices/pci0000:/::02.2/::00.0
--w-------. root root May : bind
lrwxrwxrwx. root root May : module -> ../../../../module/ixgbe
--w-------. root root May : new_id
--w-------. root root May : remove_id
--w-------. root root May : uevent
--w-------. root root May : unbind
[root@T185 ~]#

  如何查看及配置 RSS

  很奇怪,这个并不好用:

  https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Performance_Tuning_Guide/network-rss.html

  https://www.kernel.org/doc/Documentation/networking/scaling.txt

  http://man7.org/linux/man-pages/man8/ethtool.8.html

I350 的卡可以查看:

root@zw:~# ll /sys/class/net/eth0/device
lrwxrwxrwx root root May : /sys/class/net/eth0/device -> ../../../::00.0/
root@zw:~# lspci -s ::00.0
:00.0 Ethernet controller: Intel Corporation I350 Gigabit Network Connection (rev )
root@zw:~# ethtool --show-rxfh-indir eth0
RX flow hash indirection table for eth0 with RX ring(s):
:
:
:
:
:
:
:
:
:
:
:
:
:
:
:
:
root@zw:~#

  82599说不支持,不知为何

[root@T185 ~]# ethtool --show-rxfh eth0
Cannot get RX flow hash indirection table size: Operation not supported
[root@T185 ~]#

十五, 粗略的看了一下,主要关心的点是  1 MULIT QUEUE。 2 RSS

  初步选定两块,万兆82599,千兆82576, i350好像也是可以的。 25G,40G 自然是高端型号,XL710

上一篇:java_反射


下一篇:EM算法原理以及高斯混合模型实践