web-dev-qa-db-ja.com

Ubuntuで10ギガビットIntelX520をテストする方法

Intel X520を入手し、PCI-Ex16に接続しました。カードはethtoolによって10ギガビットとして認識されます。

 # ethtool eth5
Settings for eth5:
        Supported ports: [ FIBRE ]
        Supported link modes:   1000baseT/Full 
                                10000baseT/Full 
        Supports auto-negotiation: Yes
        Advertised link modes:  10000baseT/Full 
        Advertised auto-negotiation: Yes
        Speed: 10000Mb/s
        Duplex: Full
        Port: FIBRE
        PHYAD: 0
        Transceiver: external
        Auto-negotiation: on
        Supports Wake-on: d
        Wake-on: d
        Current message level: 0x00000007 (7)
        Link detected: yes

スイッチは、リンクを10ギガビットとしても認識します。 12台の異なるマシン(2回x 6)からiperfテストを実行しました。サーバー接続を除いて、すべての接続は1ギガビットです。したがって、合計で約6ギガビット(6台のマシンx各1ギガビット)になると予想しています。サーバー側で合計1ギガビットしか取得できませんでした。私の質問は次のとおりです。

  1. 私は何か間違ったことをしていますか?
  2. 新しいカードを適切にテストする方法は?

OSはUbuntuKarmic、MBはSupermicroX8DAiです。ありがとう!

編集:スイッチはシングルです Netgear GSM7328S-200NAS 。これが図です: 6 1 Gbps Clients to 10 Gbps server

私は実行してテストします:

Server: iperf -s
All clients, simultaneously: iperf -c server_IP

サーバーへの1Gbpsリンクに一致する、クライアントあたり150〜160Mbpsの値が表示されます。新しいカードに割り当てたIPは使用されなかったので、ARPの問題はないと思います。ただし、同じクライアントが古い1 GbpsカードとサーバーのIPを使用するため、すべてのトラフィックは1つのサブネット上にあります。

ここでは仮想化はなく、Ubuntuをインストールするだけで、ほとんどNFSにサービスを提供します。

更新:さらにテストした後、クライアントのARPテーブルにサーバーの10 GbpsNICの間違ったエントリが含まれていることがわかりました。そこにリストされているHWアドレスは、サーバーの1 GbpsNICと同じです。それを削除し、正しいエントリarp -d server_IP_10garp -s server_IP_10g HW:addressを手動で挿入しました。その後、私はping server_IP_10gすることができませんでした。

サーバーで1Gbps NICを無効にせずに修正するにはどうすればよいですか?

UPDATE2:sysctl -w net.ipv4.conf.all.arp_ignore=1 sysctl -w net.ipv4.conf.all.arp_announce=2は機能しません。

4
grs

長所と短所、および実際にテストできることを注意深く修正した後、サーバー(1 Gbps NIC)でeth3を無効にし、そのアドレスでeth5(10 Gbps)を設定しました。次に、クライアントは新しいインターフェイスを見つけ、iperfは10x 1Gbpsクライアントから10Gbpsを示しました。だから、すべてが良いです。両方のインターフェースが永続的に必要な場合は、上記の@sciurusの質問が素晴らしいと思います。良いリファレンスで私から+1!

2
grs