3

サンプル構成ファイルでOpenVPNを使用し、netperf UDP_STREAMでパフォーマンスを測定したい場合、次のエラーが発生するのはなぜですか。

$ netperf -H 10.8.0.1 -t UDP_STREAM

MIGRATED UDP STREAM TEST from 0.0.0.0 () port 0 AF_INET to 10.8.0.1 () port 0 AF_INET

send_data: data send error: errno 101

netperf: send_omni: send_data failed: Network is unreachable
4

2 に答える 2

13

元の質問のエラーは、netperfの文書化されていない「機能」とopenvpnサンプル構成のデフォルトのインターフェース設定との間の相互作用が原因であると思われます。変更したバージョンに「機能」が存在しない場合を除いて、OPがnetperfのバージョンを変更することで問題を解決できた理由はわかりません。それにもかかわらず、ここに問題と私の解決策の私の説明があります。

netperfメーリングリストのこのメッセージによると、netperfの開発者は、UDP_STREAMテストを実行するときにIPルーティングを無効にする自由を取りました。これが意味するのは、同じサブネット上の2つのホスト間でUDP_STREAMテストを実行すると、それが機能するということです。ただし、異なるネットワーク上の2つのホスト間で実行しようとすると、OPが報告したメッセージで失敗します。この「機能」は私が見つけることができるどこにも文書化されておらず、他のすべてのテストは通常​​のように機能するため、これは二重に混乱します。

デフォルトのOpenVPN構成では、アダプターは後の3tunアダプターです。リモートホストは、ローカルホストとは異なるネットワーク上にあります。したがって、このnetperfの動作がトリガーされ、結果ではなくエラーが発生します。

幸い、netperfには、UDP_STREAMテストのルーティングをオンに戻すためのコマンドラインスイッチがあります。テスト固有のオプションとして-R1を追加すると、すべてが機能し始めます。例えば、

netperf -H 10.8.0.1 -t UDP_STREAM -- -R 1

これをOpenVPNで具体的にテストしたことはありませんが、ルーテッドネットワークでテストしたところ、UDP_STREAMテストのエラーメッセージが修正されました。

于 2014-06-13T18:10:11.610 に答える
0

この問題は、サーバー側とクライアント側のnetperfのバージョンに関連しているようです。両方で同じバージョンのnetperfを使用すると、この問題を解決できます。

于 2012-11-17T13:40:28.947 に答える