私のサーバールームラックには2台のDellサーバーがあります。
- RHEL 7.9 x86-64そしてiperf-2.0.13-1.el7.x86_64
- ホスト名は
A
次のとおりです。B
- 誰もが持っている
- 1x 10GbE Intel NIC(ポート2個含む)
- 1x 1Gbps Intel NIC {Legacy}(ポート2個含む)
- Mellanoxインフィニバンドカード1枚
- 私のネットワーク名は
- em1、10GbEポート1
- em2、10GbEポート2
- em3、1Gbpsポート1、固定IP 192.168.1.1/255.255.255.0
- em4、1Gbpsポート2
- ib0、メラノックスインフィニバンド100Gbps、固定IP 192.168.2.1/255.255.255.0
A
192.168.x.1 およびB
192.168.x.2 です。ここで、x=1は1Gbpsを表し、x=2は無限大を表す。- それぞれとそれぞれの間に192.168.2.xサブネットを無限に設定できます
ping
。scp
単にA
これiperf -s
を行うと動作し、B
942mbits iperf -c 192.168.1.1
/secになります。しかしB
、そうであればiperf -c 192.168.2.1
ホスティングができなかったでしょう。
この場合、iperf
特定のネットワークインターフェイスの転送速度をどのように確認できますか?特に私ib0
?em1
設定が完了すると10GbEを超えますか?
答え1
あなたは得ることができますか?Sourceforgeの最新ニュース?私はgit checkout 2-1-1-devをお勧めし、ビルドします。
あなたの質問については、%ルールを使用してインターフェイスにバインドできます(例:iperf -c 192.168.1.1%ib0)。
よりマニュアルページ、コメント部分:
クライアントとサーバーでは、-Bオプションを使用して論理レベル(IPアドレスまたはレイヤ3)でバインディングが実行され、パーセント(%)区切り文字を使用してデバイス(またはレイヤ2)レベルでバインディングが実行されます。クライアント側では、-Bオプションはバインディング(2)システムコールに影響し、送信元IPアドレスと送信元ポートを設定します(例:iperf -c -B 192.168.100.2:6002)。これはパケットのソース値を制御しますが、ルーティングは制御しません。これは、パスまたはデバイスのルックアップが設定されたソースIPを持つデバイスへのパスまたはデバイスのルックアップではない可能性があるため、混乱を招く可能性があります。たとえば、eth0 の IP アドレスが -B とともに使用され、宛先 IP アドレスのルートテーブルが出力インターフェイスを eth1 として確認する場合、ホストは eth1 の送信元 IP アドレスを使用してデバイス eth1 にパケットを送信します。パケットのeth0。物理出力インターフェイス(デュアルホームシステムなど)に影響を与えるには、-c%(ルートが必要)を使用してこのホストパステーブルルックアップをバイパスするか、各-Bソースアドレスのポリシールーティングを設定し、ポリシーパスからの出力インターフェイスを適切に設定します。 。サーバや受信側では、-B IP アドレスに向かうパケットのみが受信されます。マルチキャストにも便利です。たとえば、iperf -s -B 224.0.0.1%eth0は、eth0インターフェイスで受信された宛先IPが224.0.0.1のIPマルチキャストパケットのみを許可しますが、iperf -s -B 224.0.0.1はすべてのインターフェイスパッケージでそれを受信します。そして最後に、v6リンクローカルには出力インタフェースを選択するには-c [v6addr]% -Vのようなデバイス指定子が必要です。