Negatywny czas pingowania?


15

Po raz pierwszy to widzę i nie jestem pewien, co to znaczy;

64 bytes from 74.125.93.99: icmp_seq=6233 ttl=53 time=545.493 ms  
64 bytes from 74.125.93.99: icmp_seq=6234 ttl=53 time=776.093 ms  
64 bytes from 74.125.93.99: icmp_seq=6235 ttl=53 time=-705.731 ms  
64 bytes from 74.125.93.99: icmp_seq=6236 ttl=53 time=52.549 ms   
64 bytes from 74.125.93.99: icmp_seq=6237 ttl=53 time=44.470 ms  

Czy ktoś kiedykolwiek widział negatywny czas pingowania? Mój przyjaciel powiedział mi, że widział to raz na łączu bezprzewodowym, i to było przez połączenie bezprzewodowe, ale ... jak to się dzieje?


4
Czy masz procesor AMD?
MaQleod,

9
Chwilowy rozłam w kontinuum czasoprzestrzennym. Nie ma się o co martwić. Gdzie teraz położyłem klucze do mojego DeLoreana?
żongler

Nie pamiętam konkretnie, na której maszynie uruchomiłem test, ale jedyne 3, na których mogłem go uruchomić, to wszystkie Intel (jeden pulpit Intel, jeden Macbook Pro, jeden Mac Mini).
Jeff Welling

12
Negatywne ping lag to usterka w matrycy. Dzieje się tak, gdy coś zmieniają.
James T Snell

Odpowiedzi:


15

Czy NTP lub Windows Time Service zsynchronizowały zegar systemowy podczas pingowania?


Doskonałe pytanie, to może być to. Niestety nie pamiętam dokładnie, o której godzinie wykonałem polecenie ping, więc nie mogę sprawdzić dzienników pod kątem synchronizacji NTP.
Jeff Welling

To byłoby dziwne dziwne, ale +1 za świetny punkt rozwiązywania problemów.
mbb

Bez lepszej odpowiedzi i niemożności znalezienia bardziej prawdopodobnego rozwiązania od czasu, kiedy to się stało, aż do teraz, przyjmuję tę odpowiedź, ponieważ uważam, że jest to najbardziej prawdopodobne wytłumaczenie tego, jak to się stało. Dzięki.
Jeff Welling,

Właśnie spotkałem ten sam problem na maszynie wirtualnej i mogę potwierdzić, że problem polegał na skorygowaniu przesunięcia czasu przez NTP. service ntpd stopna CentOS naprawił to (ale oczywiście stworzy inne problemy). Zobacz to bardzo interesujące pytanie, aby uzyskać więcej informacji.
Benjamin

4

Trudno mi w to uwierzyć, ale ta dyskusja wydaje się wskazywać na zachowanie niektórych procesorów AMD.

Osobiście nie martwiłbym się tym i zakładam, że jest to błąd koncepcyjny w ICMP ... Może pakiet, który przeszedł inną ścieżkę lub coś dziwnego z udziałem maszyn / routerów z ustawionymi inaczej zegarami.


2
Z powiązanej dyskusji nie skłaniam się ku wadzie konceptualnej w ICMP. Wydaje się, że AMD ma przesunięcie zegara między dwoma rdzeniami, co powoduje negatywną interpretację czasu.
Evan

@evan: Ale 0,7 sekundy to ogromna rozbieżność!
Ślimak mechaniczny

2
raport otrzymany od ping nie ma nic wspólnego z zegarami na zewnętrznych routerach, jest to różnica w czasie od wysłania pakietu do miejsca docelowego i odebrania odpowiedzi z powrotem do hosta. Jest taktowany przez hosta.
MaQleod

@Mechaniczny ślimak Masz rację, to bardzo duża, ale połączona dyskusja mówi, że pochylenie rośnie z czasem. Jeśli procesor działał przez dłuższy czas, 0,7 sekundy nie jest zbyt absurdalne. Interesujące byłoby sprawdzić, czy problem pojawia się dopiero po pewnym czasie działania procesora.
Evan

@Evan: Mam na myśli, że 0,7 sekundy z pewnością spowoduje poważniejsze błędy, więc prawdopodobnie już o tym słyszeliśmy.
Ślimak mechaniczny

1

Niestety nie ogranicza się to do procesorów AMD, ale wydaje się, że ma to duży wpływ na XP. Do tej pory i po kilku latach poszukiwania odpowiedzi znam szybką poprawkę, ale nie mogę tego zrobić na serwerach, które nie pojawią się ponownie po uruchomieniu.

Aby zresetować TCP / IP (i czasy), otwórz okno administratora CMD i wprowadź następujące dane:

ipconfig /flushdns
arp -d
gpupdate /force
netsh int ip reset null
netsh winsock reset

Teraz MUSISZ zrestartować się. Karta sieciowa powraca do DHCP, więc uważaj na piloty.

Co się tu dzieje?

Z jakiegoś powodu protokół TCP / IP ma znacznik czasu, którego używa do obliczania czasu, i jest w jakiś sposób sfałszowany. Widziałem to cały czas w jednym miejscu, ale w końcu się zatrzymało. Niestety nadal trwa w zarządzanym przeze mnie magazynie. Dziś wydaje się, że wszystkie punkty utknęły przy 237 ms, ale 2 wróciły z wieloma pingami.

pingpathjest bardzo przydatnym narzędziem i będę z niego korzystać częściej. Niestety przyniosły te same wyniki ...

Smutne, że to usuwa również błędy ping w grach.

Uwaga - jeśli chcesz zobaczyć plik dziennika, zastąp null nazwą pliku, na przykład c:\log.txt - Null oznacza po prostu brak pliku (technicznie)


1

Uważam, że jest to błąd w sposobie, w jaki pingkomenda przetacza pakiety i jest pogarszana przez procesory AMD bardziej niż Intel.

Funkcje używane w taktowaniu wysokiej rozdzielczości w systemie Windows to QueryPerformanceCounteri QueryPerformanceFrequency.

Niestety są one uszkodzone dla procesorów wielordzeniowych, ponieważ procesory te nie zwracają tych samych liczb.

Naprawą polecenia ping jest ustawienie powinowactwa wątków ping. Wątpię, by robił to, co tłumaczyłoby negatywny moment. Istnieją również łatki od AMD i MS, które mają pomóc to rozwiązać.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.