Znalazłem zbyt wiele niepoprawnych błędów sum kontrolnych z TCPDUMP wykonanych na 64-bitowym serwerze GNU Linux. W eksporcie jest prawie 50% niepoprawnych czeków?
cksum 0xe61f (niepoprawny (-> 0x8c37)
Jak możemy interpretować te dane? Czy to ma duży wpływ na wydajność?
network-monitoring
tcpdump
checksum
Vishal
źródło
źródło
tcpdump --dont-verify-checksums
aby je zignorować.Odpowiedzi:
Wyświetlane są „nieprawidłowe” sumy kontrolne z powodu funkcji zwanej odciążaniem sumy kontrolnej TCP. Pola sumy kontrolnej dla wychodzących pakietów TCP nie są wstępnie obliczane przez system operacyjny, lecz ustawione na 0 i pozostawione do obliczenia przez procesor NIC. Wireshark FAQ ma bardziej szczegółowe wyjaśnienie.
źródło
tcpdump
wypisuje pierwszy pakiet z „niepoprawną sumą kontrolną” wraz z komentarzem „OSTRZEŻENIE: Pakiet jest kontynuowany w późniejszych segmentach TCP”. Potem jest jeszcze kilka z „niepoprawną sumą kontrolną”, po której następuje komentarz „„ Pakiet SMB-over-TCP: (surowe dane czy kontynuacja?) ”. Przypuszczam, że suma kontrolna w pierwszym pakiecie zestawu będzie poprawna, jeśli wszystkie kolejne pakiety (które w rzeczywistości nie mają sumy kontrolnej w miejscu, w którymtcpdump
pobierana jest wartość sumy kontrolnej) zostały ponownie złożone w całość o wartości ≤ 64 KB.