如何在千兆网卡上更改“通告暂停帧使用”和自动协商设置

我正在调查一个新服务器上的一些糟糕的nfs性能,与旧的服务器相比。 旧服务器和新服务器都是nfs客户端,并且它们连接到相同的NetApp nfs服务器。

我的具体问题: 如何更改“播发的暂停帧使用”设置

我在交换机端看了一下,交换机上的两个端口都说1000个全双工。 但是,旧服务器的stream量控制显示“Sy / Asy”,但新服务器设置为Sym。 我假设Asy =不对称和Sym = Symmetric,另一个假设是交换机看到Sym因为Advertised pause frame use在Linux端被设置为Symmetric 。 我怎样才能改变这个不对称? 这个设置可以影响性能吗? 我只是尽量排除。

这些是专用的存储链接,即它们是一个独立的NIC,并且位于与主NIC不同的子网上。

在新旧服务器上我看不到iowait问题,所以CPU和内存似乎不是问题。 我用eth设置或nfs设置来计算它的值。 我可以更详细地了解设置,但首先要回答这个具体问题。

新主机(HP ProLiant Dl360P Gen8上的CentOS 6.3)

 $ sudo ethtool eth3 Settings for eth3: Supported ports: [ TP ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Half 1000baseT/Full Supports auto-negotiation: Yes Advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Half 1000baseT/Full **Advertised pause frame use: Symmetric** Advertised auto-negotiation: Yes Speed: 1000Mb/s Duplex: Full Port: Twisted Pair PHYAD: 4 Transceiver: internal Auto-negotiation: on MDI-X: off Supports Wake-on: g Wake-on: g Current message level: 0x000000ff (255) Link detected: yes 

司机:tg3

旧主机(Sun Fire x4150上的SLES 9 SP4)

 $ sudo ethtool eth1 Settings for eth1: Supported ports: [ TP ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Supports auto-negotiation: Yes Advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Advertised auto-negotiation: Yes Speed: 1000Mb/s Duplex: Full Port: Twisted Pair PHYAD: 1 Transceiver: internal Auto-negotiation: on Supports Wake-on: umbg Wake-on: g Current message level: 0x00000007 (7) Link detected: yes 

驱动程序:e1000

显然,按照IEEE标准 , pause和自动设置是无法在千兆网卡上设置为closures的设置。 多数民众赞成在intertubes周围的话。

我已经看到在1g接口上自动协商。 这是你如何做到的:

http://www.cyberciti.biz/tips/howto-linux-add-ethtool-duplex-settings-permanent.html

根据已经提交的有关ieee标准的证据,我不认为你应该这样做。 但是,一些接口允许它。