Intel是重要的网络适配器网卡的生产厂商之一。从Intel网卡发展的历史来看,使用PCIe接口已经是大势所趋,并且随着Intel的处理器几乎全线转向多处理器,因此MSI-X和RSS的特性也开始逐渐普及,最新一代的575/576/598/599均具备了相应的功能,甚至577/578这样的PHY芯片业开始具备RSS特性。下面是Intel最新一代千兆万兆网络适配器芯片以及上一代的大部分产品:
千兆82576芯片组:E1G42ET E1G44ET E1G42EF(支持虚拟化)
万兆82599芯片组:E10G42BTDA E10G42BT E10G41BFSR E10G42BFSR E10G41BFSR E10G41BLR
万兆82598芯片组:E10G41AT2 9502CX4
网卡的接口和MSI/MSI-X特性紧密相关,因为只有PCI-E 1.1及以上的版本才能支持MSI-X,支持MSI-X的网卡可以将中断更好地分配至多个处理器核心,从而提升网络性能和提升多处理器利用率。所有的PCIe网卡都能支持普通的MSI,但是只有574/575/576/598/599才能支持MSI-X。关于MSI-X,可以见这里:
RSS(Receive Side Scaling,接收方扩展)也是更好的利用多核处理器的一个必要条件,具备多个RSS队列的网卡,可以将不同的网络连接分成不同的队列,进而分别发送到不同的CUP核心上进行处理,从而将负荷分散,充分利用多核处理器的能力。571/574支持两个RSS队列,而新的575/576能支持8个RSS队列,598更是可以支持8个和16个(不同的TX/RX队列配置),顶级的599还能支持到16个和32个RSS队列(不同的TX/RX队列配置)。需要配合ICH或者PCH使用的82577/578也能提供两个RSS队列的支持能力,低端的服务器可以选择具有两个队列的产品,追求IO性能的服务器则可以选择具有8个或以上的RSS队列产品。
在虚拟化日益流行的今天,虚拟化增强功能也需要进行考虑,目前Intel网卡的虚拟化增强功能包含了VMDq和VMDc两种技术,VMDq技术可以让每一个虚拟机都分配到独有的硬件发送接收队列,从而降低了VMM虚拟化软件所需要的网络处理损耗;VMDc技术则进一步让网卡直接提供多个Virtual Function,每个Virtual Function都具有独立的网卡资源,虚拟机可以直接访问、控制,从而大为提升虚拟化效率。
具备虚拟化增强功能的网卡可以大为提升虚拟化环境下的网络性能,最新一代的575/576/598/599都提供了VMDq技术的支持,但是只有576和599两款高端型号才支持VMDc。575/576两款千兆网卡可以支持8个VMDq队列,而598可以支持16个,599更是支持达64个。
我们可以清楚地比较多款网络芯片的特性,在面向中低端入门级应用的服务器中,多数都是双82574/7/8的搭载模式,而新型的、面向应用较多的主流服务器中,我们可以经常看到82575/6的身影,在四路或者更高等级的服务器上,我们将可以看到基于10GbE的598/599网卡。