Bu bildirilen saatlik ping süresi gerçekte nasıl olabilir?


15

Geçenlerde Birleşik Krallık'ta çok kırsal bir bölgede yaşayan ailemle Paskalya tatili tatili geçirdim. Onlar (korkunç) ADSL internet bağlantısı var, hangi birkaç kilometre tehlikeli bakır üzerinde çalışır ve yakın çiftçiler traktörlerini telefon hatlarına geri çevirdiklerinde periyodik olarak kesilirler.

Yönlendiricilerinin tekrar tekrar pptpel sıkışmalarını bıraktığını ve yeniden müzakere ettiğini, bağlantıyı etkili bir şekilde öldürdüğünü fark ettim . Bu sinir bozucuydu. Bu yüzden, delirmekten kaçınmak için, daha düşük hızlar için minimum kabul edilebilir SNR marjını ve el sıkışmasını ikiye katlamayı söyledim:

$ telnet 192.168.1.1
Trying 192.168.1.1...
Connected to 192.168.1.1.
Escape character is '^]'.
U.S. Robotics Wireless MAXg ADSL Gateway
Login: ***********
Password: 
> sh


BusyBox v1.00 (2006.02.17-20:30+0000) Built-in shell (msh)
Enter 'help' for a list of built-in commands.

# adsl configure --snr 200; exit 
Connection closed by foreign host.

Bu gelişti ve önemli olan şey, dış dünyaya inanılmaz derecede yavaşsa (biraz) istikrarlı bir boruya sahipti:

$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
64 bytes from 8.8.8.8: icmp_seq=0 ttl=55 time=3236.679 ms
64 bytes from 8.8.8.8: icmp_seq=1 ttl=55 time=3699.541 ms
...

Bu noktada, gerçek hayata müdahale etti ve sonra kedilerle oynamak, telefonumdaki kedi giflerine bakmak, aslında ailemle konuşmak vb. İçin birkaç saat geçirdim . bir gün sonra vurmak ctrl-c.

Gösterilen özet istatistikler bana kat verdi:

--- 8.8.8.8 ping statistics ---
103074 packets transmitted, 100564 packets received, 2.4% packet loss
round-trip min/avg/max/stddev = 32.986/3034.479/3600577.732/87527.276 ms

Gördüğünüz gibi, Google'ın DNS sunucusuna kısa bir transatlantik sıçrama yapan bir ICMP paketi için kaydedilen maksimum yanıt süresi 3600577.732 ms'dir . Bu neredeyse bir saat ve kesinlikle pingvarsayılan zaman aşımından çok daha uzun .

Bu nasıl olabilir? o doğru? Hangi yönlendirici , yoluna göndermeden önce bir pakete altmış dakika boyunca mutlu bir şekilde tutunacak ? Bu paket neden düşmedi? 8 bitlik paket sayacından büyük gecikmelerle birlikte taşmanın sonucu mu?

Son olarak, İngiltere'de tüketici ADSL bağlantılarının RFC 1149 ve RFC 2549 ;-)' den daha az gecikme ve daha iyi trafik yönetimine sahip olması gerektiğini belirten herhangi bir davranış kodu olup olmadığını bilmek isterim .


1
spam ile aşırı yüklenmemiş bir yönlendirici.
cırcır ucube

Açgözlü bir yönlendirici;) Paketi iletmeden önce bir saat beklemeyi planladığını fark ettiğinizde bunu oynamalısınız. youtube.com/watch?v=moSFlvxnbgk
Cestarian

1
Bir gecede bıraktığınızı söylediğinizden, bilgisayarınızın Gün Işığından Yararlanma Saati başlangıcında +1 saati uygulaması ve belirli bir paketin RTT'sinin hesaplanmasıyla uğraşması mümkün mü?
kenkh

@kenkh - Hayır; Saatlerin değiştiği günün o olmadığından kesinlikle eminim. Ayrıca, ping kaynak koduna bakarak (~ l 761'den itibaren) Sonraki hesaplamada zaman dilimlerinin göz ardı edildiğini görebiliyorum ( gettimeofday(nv, NULL)dönem mikrosaniye döndürür). Gerçekten bir saat sürdü!
Landak

sisteme erişiminiz varsa, sistemde yollamayı çalıştırır mısınız? Kabaca yavaşlama nerede olduğunu gösterir
Journeyman Geek

Yanıtlar:


4

ICMP paketi ve ping için yanıtın her biri 32 bayt uzunluğundadır, bu nedenle her baytın iletilmesi neredeyse bir dakika sürdüğü bir saatlik bir ping için görünüyor.

Bu, çok yavaş yönlendirici ve iletilen her bayt için ağrılı bir bekleme veya yeniden deneme ile birleştiğinde, çok cömert hata yeniden deneme sayısı (yapıyorsunuz?) İle açıklanabilir.

İnternet Protokolü (IP) verileri datagramlarla iletir ve kısmi olanları göndermemeye çalışır. İletim başlatıldığında, datagrama daha fazla bayt eklenebilmesi için varsayılan olarak 200 milisaniye bekleyecektir. Bu süre zarfında, yazılım / bellenim sahip olduğu her şeyi tek bir datagram olarak gönderir. Bir saatlik ping süresi durumunda, paket yükü bir bayt kadar küçük olabilir. Veriler hala geldiği sürece, bağlantı iki katılımcı taraf tarafından kesilmeyecektir.

Ne yapabilirsin :

  • Aynı telefon hattına başka telefonlar, faks veya başka aygıtlar bağlıysa, DSL filtreleriyle korunup korunmadığını kontrol edin . DSL modeminize giden hatta bir filtre koymadığınızdan emin olun.
  • Başka bir yönlendirici deneyin - kendinize kötü bir cihaz kazandıktan sonra, dışarı atmak ve daha iyi bir şey elde etmek dışında kesinlikle yapabileceğiniz hiçbir şey yoktur.
  • Başka yönlendirici yoksa, ISS'nize başvurun - yanlarından faydalı testler yapabilirler.
  • ISS hiçbir şey bulamazsa, yine de yedek bir yönlendirici / modem talep etmeye çalışın.
  • Aynı sorun başka bir yönlendirici ile ortaya çıkarsa, telefon şirketiyle iletişim kurun.

Telefon şirketinde olduğu gibi sorunlu bir anahtarın bulunması oldukça karmaşık olabilir, ancak ISS'nin kendi anahtarları da olabilir. Normalde bir anahtarla ilgili bir sorun, arızalı anahtarın yerini bulmaya yardımcı olan alan çapındadır. Ancak çok fazla abonenin bu anahtarı kullanmadığı kırsal bir alanda bu fark edilmeyebilir. Bazı komşular aynı İSS'yi kullanıyorsa, bağlantılarının nasıl olduğunu bulmaya çalışın.


Ben 2 ve 3 dönecekti. Önce ISS'yi aramak çok daha kolay. Bir test yapabilirler. Sorun görürlerse, yeni bir modem gönderirler (mutlaka bir yönlendirici değil). Yeni bir modem sorunu çözmezse, İSS telefon şirketine başvurmalıdır. Burada böyle çalışır, ancak İngiltere'de farklı olabilir.
SPRBRN

Demek istediğim yukarıda mümkün olduğunca çok sayıda nokta paralel olarak yürütmek gerekir. Benim durumumda, ISS'im bir teknisyen göndermeye karar verebilir, ancak sorun kullanılmayan DSL filtreleri kadar önemsizse, bir ücret talep etmeye karar verebilir.
harrymc

Ugh. Yorumlar, numaralandırılmış listedeki numaralara ilişkindir. Daha sonra, cevabın posteri sayıları kaldırmak için cevabı düzenledi, böylece yorumları yersiz yaptı. Tsk tsk.
TOOGAM

1
200 ms : Bu, Windows / Linux yazılımında yerleşik olarak bulunur. Şirketimin ürününün neden küçük datagramlarda çok düşük bir TCP / IP verimi olduğunu analiz ederken buldum, daha sonra sokette "hemen gönder" yapan sistem çağrılarını buldum. Paket yükü : Bu anlaşılmaz, MTU'nun çok küçük olduğu bir yolla karşılaştığında çok büyük bir TCP / IP datagramı parçalar halinde kesilir . DSL modem : parametrelerin değiştirilmesinin kötü telefon hattı / anahtarını bir şekilde telafi etmesi mümkündür, ancak telafi edilmekten ziyade düzeltilmelidir.
harrymc

1
Başka bir değişiklik: ADSL2 + 'yı devre dışı bırakın ve kararlılık için ADSL1 ile kalın. Satın aldığınız yönlendirici ne olursa olsun, SNR kenar boşluklarını doğru şekilde ayarlayabileceğinizden emin olun (bazı bilgiler burada ). Netgear gibi milyar yönlendiriciler iyidir (DD-WRT'yi basit kurulumla destekleyen modelleri tercih ederim). Bu makale size daha fazla fikir verebilir - ve mesafe / hız diyagramına bir göz atabilir.
harrymc

0

Nedeni ne olursa olsun çok kötü yönetilen bir durum olmasına rağmen, bu vakayı veri tıkanıklığı yönetimi ile çok ilgili görüyorum. Anladığım kadarıyla, iletim sistemi boyunca paket tamponu var - kötü yönetiliyor, bu da ICMP yankı istek / cevap paketlerinde bu anormalliğe neden oluyor.

Dolayısıyla, kötü bir tıkanıklık yönetimi politikasına sahip olmanın saatlerce bir ping oturumu açması kombinasyonu, garip bir senaryo ile sonuçlanabilir.

Tıkanıklık yönetimi hakkında daha fazla bilgiyi burada bulabilirsiniz .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.