Mengapa ping sangat lambat?

9

Pengaturan saya:

Server di saklar ruang bawah tanah + GBit. Kabel panjang ke atap. Sakelar GBit. Saya memiliki tiga komputer di atap. Satu hanya memiliki ethernet 100MBit, satu laptop dengan GBit dan komputer baru.

Waktu ping dari komputer 100MBit lama: rata-rata 0,5 ms Waktu ping dari laptop: rata-rata 0,4 ms waktu Ping dari komputer baru saya: rata-rata 5ms atau 30ms atau 200ms tetapi saya sering melihat waktu ping hingga 980ms. Secara umum, throughputnya sangat tidak stabil.

Saya mengganti saklar di atap. Tidak ada perubahan. Saya mengganti kabel yang menghubungkan komputer baru ke saklar atap. Tidak ada perubahan. Saya memasang kartu jaringan PCI dengan chip Intel GBit (82541PI) dan menggunakannya sebagai pengganti Realtek RTL8111 / 8168B bawaan. Tidak ada perubahan. Ya, saya yakin saya menghubungkan kabel ke port yang benar karena saya sekarang mendapatkan alamat IP yang berbeda dari server DHCP saya.

Kartu jaringan yang sama berfungsi dengan baik pada komputer saya yang lama menggunakan sistem operasi yang sama (openSUSE 12.1).

ifconfig mengatakan:

      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:15679 errors:0 dropped:0 overruns:0 frame:0
      TX packets:13077 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 Sendewarteschlangenlänge:1000 

ethtool mengatakan:

    Speed: 1000Mb/s
    Duplex: Full
    Port: Twisted Pair

Apa yang bisa menyebabkan perilaku ini?

[EDIT] Saya menemukan sesuatu yang menarik:

# cat /proc/interrupts 
           CPU0       CPU1       CPU2       CPU3       CPU4       CPU5       CPU6       CPU7       
  0:        178          0          0          0          0          0          0          0  IR-IO-APIC-edge      timer
  1:          6          0          0          0          0          0          0          0  IR-IO-APIC-edge      i8042
  8:          1          0          0          0          0          0          0          0  IR-IO-APIC-edge      rtc0
  9:          0          0          0          0          0          0          0          0  IR-IO-APIC-fasteoi   acpi
 12:         10          0          0          0          0          0          0          0  IR-IO-APIC-edge      i8042
 16:    3302428          0          0          0          0          0          0          0  IR-IO-APIC-fasteoi   ehci_hcd:usb1, nvidia, mei, eth1
 17:        184          0          0          0          0          0          0          0  IR-IO-APIC-fasteoi   snd_hda_intel
 23:      16721          0          0          0          0          0          0          0  IR-IO-APIC-fasteoi   ehci_hcd:usb2

Seperti yang Anda lihat, interupsi 16 melayani satu port USB, kartu grafis, "mei" (?) Dan eth1.

Saya kira itu akan menjelaskan mengapa ini lambat. Bagaimana cara menetapkan interupsi pada 2012?

Aaron Digulla
sumber
Ketika Anda menjalankan pingsemua ping kembali? Yaitu, apakah paket atau paket ping Anda longgar?
Bruce Ediger
Saya memiliki paket loss 0%. Itu lambat. Mungkin IRQ buruk ditugaskan ke kartu jaringan?
Aaron Digulla
ketika Anda mendapatkan waktu ping yang tinggi, sudahkah Anda memantau pemanfaatan CPU di kedua sisi untuk memvalidasi bahwa Anda tidak terlalu sibuk dan mendapatkan penundaan penjadwal?
Mike Pennington
2
Anda dapat mencoba memindahkan komputer secara bersebelahan, dan menghubungkannya menggunakan kabel crossover pendek. Itu harus mengesampingkan efek karena sakelar yang buruk, kabel panjang, gangguan listrik di sepanjang jalan, dan sebagainya. Ya saya tahu, komputer lain berfungsi dengan baik pada jarak itu, tapi itu mungkin lebih toleran terhadap sinyal berisik atau serupa.
MvG
1
Dalam kasus saya itu adalah router yang salah, Anda dapat mengetahuinya seperti dalam pertanyaan ini .
Alberto Salvia Novella

Jawaban:

5

Mainboard saya adalah ASUS P8Z77-M. Versi BIOS adalah 0802. BIOS ini memiliki bug: Ini menetapkan IRQ yang sama (16) untuk semua perangkat throughput tinggi yang dapat menyebabkan semua jenis masalah (seperti membekukan desktop saat Anda menyalin file ke perangkat USB ).

Memutakhirkan ke versi 1206 meningkatkan situasi. Kartu jaringan sekarang mendapatkan IRQ sendiri dan waktu ping sekarang di mana seharusnya:

64 bytes from ds.digulla (192.168.0.3): icmp_seq=1 ttl=64 time=0.197 ms
64 bytes from ds.digulla (192.168.0.3): icmp_seq=2 ttl=64 time=0.252 ms
64 bytes from ds.digulla (192.168.0.3): icmp_seq=3 ttl=64 time=0.200 ms
64 bytes from ds.digulla (192.168.0.3): icmp_seq=4 ttl=64 time=0.239 ms
64 bytes from ds.digulla (192.168.0.3): icmp_seq=5 ttl=64 time=0.215 ms
64 bytes from ds.digulla (192.168.0.3): icmp_seq=6 ttl=64 time=0.204 ms
64 bytes from ds.digulla (192.168.0.3): icmp_seq=7 ttl=64 time=0.244 ms
64 bytes from ds.digulla (192.168.0.3): icmp_seq=8 ttl=64 time=0.190 ms
^C
--- ds.digulla ping statistics ---
8 packets transmitted, 8 received, 0% packet loss, time 7001ms
rtt min/avg/max/mdev = 0.190/0.217/0.252/0.027 ms
Aaron Digulla
sumber