なぜこのネットワーク接続はとても遅いのですか?


11

Ubuntu 9.10を実行しているLinuxサーバーのネットワークパフォーマンス速度に問題があります。すべてのタイプのトラフィックの転送速度は、1000 Mbpsの有線イーサネット接続で約1.5 MB /秒です。このサーバーは最近、sambaを介して55MB / sを達成しています。ハードウェアやネットワークの設定は変更していません。私は定期的に更新を実行しており、Ubuntuのリポジトリからの最新かつ最高のものがこのマシンで実行されています。

ハードウェアのセットアップ

デスクトップWindows PC-1000スイッチ-1000スイッチ-Linuxサーバー

すべてのスイッチはネットギアであり、接続はすべて1000mbit / sであることを意味する緑色のライトで示されます。接続がわずか100 Mbpsの場合、ライトは黄色になります。その他の診断情報:

root@server:~# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0c:6e:3e:ae:36
          inet addr:192.168.1.30  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:6eff:fe3e:ae36/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:28678 errors:0 dropped:0 overruns:0 frame:0
          TX packets:73531 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:2109780 (2.1 MB)  TX bytes:111039729 (111.0 MB)
          Interrupt:22

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:113 errors:0 dropped:0 overruns:0 frame:0
          TX packets:113 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:23469 (23.4 KB)  TX bytes:23469 (23.4 KB)


root@server:~# ethtool eth0
Settings for eth0:
        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: 0
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: pg
        Wake-on: g
        Current message level: 0x00000037 (55)
        Link detected: yes

root@server:~# mii-tool
eth0: negotiated 1000baseT-FD flow-control, link ok

サーバーは1000mbit / sの接続があると考えています。Sambaを使用してファイルをコピーすることにより、転送速度をテストしました。サーバーでnetcat(nc target 10000 <aBigFile)を使用してWindows(nc -l -p 10000)に転送したところ、同様のレベルのパフォーマンスの低下が見られました。

私はhdparmを使用してハードドライブの速度をテストし、得ました:

root@server:~# hdparm -tT /dev/md0
/dev/md0:
 Timing cached reads:   1436 MB in  2.00 seconds = 718.01 MB/sec
 Timing buffered disk reads:  444 MB in  3.02 seconds = 147.24 MB/sec

DDを使用して転送するために同じファイルを読み取ると、次のようになります。

paul@server:/home/share/Series/New$ dd if=aBigFile of=/dev/null
3200369+1 records in
3200369+1 records out
1638589012 bytes (1.6 GB) copied, 12.7091 s, 129 MB/s

私は困惑しています。ネットワークの能力よりも2桁低いネットワークパフォーマンスの低下の原因は何ですか?


serverfaultは、おそらくそのような質問をするのに適しています。
Maciej Piechotka、2010

遅いネットワーク接続のトラブルシューティングに役立つ一般的なテクニックについては、このServerFaultの質問を試してください。

何も変わらない場合は、摩耗(ケーブル)のせいにします。
メル

回答:


6

チェックを検討する必要があるいくつかの事柄:

  1. デュプレックス-片方がリンクが全二重であると考え、もう片方がリンクが半二重であると考えている場合は、問題があると予想されます。
  2. スイッチの不良?それをバイパスします。
  3. ジャンボフレーム。9000バイトのMTUによりオーバーヘッドが減少し、スループットが向上します(わずかな遅延が発生します)。あなたの問題は非常に悪いようですが、これは助けにはなりません。
  4. TCP機能:ECN、SACK、輻輳制御アルゴリズム
  5. TCP送受信ウィンドウサイズ(Linuxの詳細

netperfは、ネットワークパフォーマンスのトラブルシューティングに優れています。しかし、netcatはピンチで悪くありません。


6

私の専門的な経験では、GNU / LinuxでSambaを使用して優れた安定したネットワークパフォーマンスを得るのに苦労しました。これで55 MBpsの速度を達成したとおっしゃっていましたが、私はそれが信じているので、他の何かが確実に機能していると思います。

しかし、NFS、FTP、SCPを試しましたか?帯域幅の問題は、さまざまなプロトコルにわたって一貫していますか?その場合は、物理的な接続に絞り込まれている可能性があります。一貫性のない結果が表示される場合は、ソフトウェアの問題である可能性があります。

他のプロトコルのテストとは別に、転送で暗号化を使用していますか?たとえば、使用rsync -zすると圧縮を有効にできますが、CPUコストがかかるため、転送の全体的な速度に大きな影響を与えます。SSHと一緒rsyncに使用すると、圧縮に加えて暗号化が適用され、CPUに少し負荷がかかり、速度が大幅に低下します。


2
  1. netstat -irx / txエラーを試してみてください。
  2. netstat -stcpの問題を試してみてください-ファイルコピーの前後の値を比較し、リセットまたは再送信の大きなスパイクを探します。

残念ながら、100MBの後でTX / RXエラーはまったくなく、リセットの数はテストの最初から最後まで一貫して4でした
Paul Keeble

0

あなたはあなたのネットワークの混雑をチェックするかもしれません。おそらく他のいくつかのデバイスがあなたの帯域幅をすべて消費していますか?

それ以外にも、ネットワークインターフェイスやそのドライバに問題がある可能性があります。かなり変。


テスト時には、これらはネットワーク上の2つのデバイスのみであり、他には何もありませんでした。
Paul Keebleが

0

可能であれば、それが本当にOS /ドライバー/カードの問題であるというほとんどの疑いを取り除くために、クロスケーブルを使用してコンピューターを接続します。これにより、スイッチやその他のネットワークの問題が方程式から削除されます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.