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 pptp
el 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 ping
varsayılan zaman aşımından çok daha uzun .
Bu nasıl olabilir? Mı 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 .
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ü!