Dlaczego w pakiecie IPV4 suma kontrolna jest obliczana na podstawie nagłówka IP, a nie na danych takich jak protokoły transportowe tcp/udp?Dlaczego w pakiecie IPV4 suma kontrolna jest obliczana na podstawie nagłówka IP, a nie całego pakietu, takiego jak protokoły transportowe tcp/udp?
Odpowiedz
Jest to kwestia szybkości: internetowe routery szkieletowe kierują milionami pakietów na sekundę, a obliczenie sumy kontrolnej na całej zawartości znacznie spowolni przetwarzanie pakietów.
Specyfikacja IPv6 removes even the header checksum umożliwiająca routerom jeszcze szybsze przesyłanie pakietów. (Jest to tylko jeden z wielu kroków, które IPv6 podjęło w celu zredukowania czasu, w którym routery muszą kontrolować każdy pakiet.) Wszystko to składa się na całe mnóstwo.) Odrzucenie uszkodzonych pakietów jest teraz umieszczane całkowicie na końcowych węzłach.
Istnieją ku temu dwa powody.
pierwsze wszystkie protokoły wyższego poziomu, które zamykają danych IPv4 datagram ma pola sumy kontrolnej, który obejmuje cały pakiet. Dlatego suma kontrolna dla datagramu IPv4 nie musi sprawdzać hermetyzowanych danych.
Po drugie, nagłówek pakietu IPv4 zmienia się z każdym odwiedzanym routerem, ale dane nie. Tak więc suma kontrolna zawiera tylko część, która uległa zmianie. Jeśli dane zostały uwzględnione, każdy router musi ponownie obliczyć sumę kontrolną dla całego pakietu, co oznacza wzrost czasu przetwarzania.
źródło: Transmisja danych i sieci przez Behrouz A. Forouzan
Ipv4 zapewnia tylko adres jest poprawna, to oblicza sumę kontrolną z użyciem tylko adres i nie za pomocą danych, co zapewnia niezawodne przekazywanie danych nie zadanie warstwy sieciowej
- 1. Python, suma kontrolna dict
- 2. Ustalenie, która suma kontrolna jest używana
- 3. Czy suma kontrolna IP jest sprawdzana przy każdym routerze na ścieżce?
- 4. Suma kontrolna w pliku Altera FPGA .jic
- 5. Efektywność wykrywania błędów (CRC, suma kontrolna itp.)
- 6. Oblicz koszt przesyłki na podstawie Suma całkowita koszyka?
- 7. Suma wierszy na podstawie wartości kolumny
- 8. Ustawianie pola flag nagłówka IP
- 9. W jaki sposób obliczana jest pokrywa Xgboost?
- 10. Jak filtrować dane wyjściowe tcpdump na podstawie długości pakietu
- 11. Problem Konwersja ipv6 na ipv4
- 12. Konwersja IPv6 na IPv4 w C#
- 13. Problem 7 Java Kerberos - AES128 Sporna suma kontrolna
- 14. Uruchom wszystkie testy w drzewie źródłowym, a nie w pakiecie.
- 15. Jak powstrzymać proguard przed zaciemnianiem całego pakietu?
- 16. "Protokoły nie mogą być używane z isinstance()" - dlaczego nie?
- 17. Jak uzyskać adres_IP w formacie IPV4?
- 18. suma wszystkich wartości dla kolumny tabeli na podstawie klasy
- 19. dlaczego repoquery nie wyświetla plików w pakiecie
- 20. Sowa Karuzela - szerokość jest obliczana nieprawidłowo
- 21. Dlaczego eksportowanie całego modułu jest zabronione?
- 22. Jak uzyskać nazwę hosta na podstawie adresu IP?
- 23. Testowanie całego pakietu Rspec kończy się niepowodzeniem
- 24. Jak wykonać przekierowanie nginx na podstawie wartości nagłówka?
- 25. zmniejszyć nie jest uprawniających suma
- 26. Kiedy dokładnie obliczana jest głowa strumienia?
- 27. Dlaczego "to" jest wskaźnikiem, a nie odniesieniem?
- 28. Dlaczego słownik C# nie implementuje całego IDictionary?
- 29. dlaczego suma potrzebuje GHC.Num.fromInteger?
- 30. Jak wywołać Html.Display dla niestandardowego obiektu, a nie całego modelu?
Dziękuję. W IPV6 systemy końcowe będą odpowiedzialne za fragmentację i ponowne składanie pakietów, tak aby routery nie przechodziły tego procesu. – kuchiku
Czy to oznacza, że TCP jest wolniejszy, ponieważ suma kontrolna dla pakietów TCP/UDP jest obliczana dla danych i nagłówków? – kuchiku
Tak, pakiety TCP są wolniejsze w obsłudze niż pakiety raw IP z powodu sum kontrolnych. Są jednak wolniejsze w punktach końcowych niż w podstawowych routerach, przez co spowolnienie jest o wiele łatwiejsze do zniesienia. (Niektóre karty NIC mają wbudowaną obsługę sumy kontrolnej, aby odciążyć pracę z procesora, ale nie zawsze są one szybsze ...) – sarnold