• Wed. Oct 5th, 2022

Proste Rozwiązanie Do Obliczania Sumy Kontrolnej Nagłówka UDP

ByAlfie Abbott

Feb 3, 2022

Czasami Twój obecny komputer wygeneruje kod kuponu błędu wskazujący, że obliczana jest suma kontrolna tagów UDP h2. Przyczyn tego problemu może być tyle.

Czy Twój komputer działa wolno i zawodnie? Czy daje przerażający niebieski ekran śmierci? Nie bój się, twój Zbawiciel przybył w postaci Reimage.

Krótki przewodnik po obliczaniu sumy kontrolnej UDP

Jak zostanie obliczona suma kontrolna nagłówka UDP?

Suma kontrolna stała się dopełnieniem 16-bitowego pseudo-nagłówka dla natywnego wypełniania informacji ze wszystkich nagłówków IP, nagłówka UDP i 1/2, zwykle uzupełnianych bajtami zerowymi (jeśli to konieczne) przez dowolną wielokrotność dwóch bajtów. W drugim wierszu wszystkie 16-bitowe słowa zawsze używają dodatkowej arytmetyki.

Oto opis obliczeń związanych z UDP autorstwa Eda Beroseta.suma kontrolna dlatoPakiet. Ogromne podziękowania dla Eda za pracę nad szczegółami inapisz to wspaniałe zadanie.

Po pierwsze, często byłaby ustawiona suma kontrolna obliczeńw RFC 768, ale uwagajak można obliczyć?w RFC 1071. Obasą warte zrozumienia i zawierają znacznie głębszą klasyfikacjęNapiszę tutaj.

Podstawową ideą byłoby to, że suma kontrolna UDP jest zwykle dopełnieniem16-bitowy oblicza swoją dodatkową sumę pieniędzy przez „pseudo nagłówek” IP iewentualne dane UDP. Pseudo-nagłówek IP to rodzaj adresuAdres docelowy, protokół (dopełniony dużym zerowym bajtem) i UDP.Długość. Aby uchwycić przykładten szybki pakiet, któryObecny adres IP to 152.1.51.27, a typ docelowego adresu IP152 Adres.14.94.75. 16 kawałków jest podzielonych na zestawy, są to zazwyczaj typy 0x9801,0x331b i 0x980e, 0x5e4b. Jeśli dodasz je za pomocą dwóchdodatki (na przykład z komputera Windows) z pewnością dostaniesz twarz 0x1c175. Uważaj na przepełnienia oprogramowaniaTo jest nowa wielkość 16-bitowa, ale o tym zastanowimy się później.Następnie wystarczy dodać protokół i okres UDP. Dla tego pakietuProtokół jest również UDP, więc jako typ protokołu uznano bajt 17 lub 0x11. Zwykle mamy bungalowy, którez zerem wybierasz 0x0011, a następnie dodajesz długość UDP, która zwykle wynosi 0x000a.(10 bajtów). Więc 0x1c175 + 0x0011 0x0! +00a pasuje do 0x1c190.

Jak obliczyć sumę kontrolną nagłówka?

Aby zmierzyć sumę kontrolną, możemy najpierw wymienić sumę 16 aspektów rzeczy w nagłówkach, pomijając tylko pole sumy kontrolnej. Zwróć uwagę, że te wartości są tutaj w postaci szesnastkowej. Aby uzyskać sumę kontrolną, rozważymy dopełnienie tych pozytywnych aspektów: b861 (jak pokazano w jednym konkretnym dokładnym nagłówku oryginalnego pakietu IP).

Teraz dodajmy pełny datagram UDP i po prostu przetwórzmy go, ponieważ jest 16-bitowy.pomiń zbiory i sumę kontrolną (do czasu, gdy dana osoba zakończy obliczenia)to!). Dla takiej metody użyj datagramu 0xa08f, 0x2694, 0x000a, 0x6262, dodaj jeśliUżywając całego przedmiotu jako ścieżki do naszej wędrówki, otrzymujemy 0x1c190 + 0xa08f + 0x2694 +0x000a + 0x6262 jest równe 0x2eb1f.

Zatwierdzono:

Jeśli szukasz sposobu na przyspieszenie komputera, nie szukaj dalej. Reimage to kompleksowe rozwiązanie, które naprawi typowe błędy systemu Windows, ochroni Cię przed utratą plików i złośliwym oprogramowaniem, zoptymalizuje komputer pod kątem maksymalnej wydajności i nie tylko. Jest nawet dostarczany z bezpłatnym skanem, dzięki czemu przed zakupem możesz zobaczyć, jakie problemy może pomóc rozwiązać! Kliknij, aby pobrać już teraz, aby rozpocząć:

  • Krok 1: Pobierz i zainstaluj oprogramowanie Reimage
  • Krok 2: Otwórz oprogramowanie i kliknij „Przywróć komputer”
  • Krok 3: Postępuj zgodnie z instrukcjami, aby zakończyć proces przywracania

  • Aby przekonwertować teraz, należy przekonwertować sumę 16-bitową na określone uzupełnienie, które większość ludzi po prostu przyjmuje za pomocą naszegobieżąca suma (0x2eb1f) jako ten 32-bitowy rozmiar i zwykle dodaje do niej połowę wysokościDolna połowa. 0x0002 + 0xeb1f = 0xeb21. (Gdyby miał wtedy innyPrzepełnienie, podzieliłbym swoją górę i dół na pół od drugiego paz, aż nic nie zostanieplus fantastyczny przelew.) Zazwyczaj finalizujemy teraz kwotę zadeklarowaną przez ekspertów (tj. Powracający i wszyscybit, jest to operacja NOT), a także otrzymujemy wartość 0x14de, czylidokładnie to, co mówi suma kontrolna ognisk trądziku w pakiecie.

    Suma kontrolna UDP jest teraz wykonywana na ogólnym ładunku, nie wspominając o innych regionach w tagach h2 i niektórych zawodach w nagłówku IP. Pseudo-nagłówek jest tworzony po nagłówkach IP w celu wykonania obliczeń (które myśl ujawnia za pomocą pseudo-nagłówków, tagów UDP-h2 i/lub ładunku). Powodem, dla którego dołączono specjalny pseudo-nagłówek, jest wykrycie pól, które zostały przekazane, aby pomóc Ci dostać się do niewłaściwego adresu IP.

    Zasadniczo po stronie odbiorcy dodawane są dowolne 16-bitowe słowa i frazy z nagłówka osoby oraz aspekt danych (10-bitowa przerwa), a wystąpienie jest porównywane z 0xffff .< /kod> .

    p>

    Jak zaimplementowana jest suma kontrolna UDP?

    Ekscytuje zawartość związaną z segmentem jako sekwencją wśród 16-bitowych liczb całkowitych.Wszystkie segmenty zostały naprawdę dodane.Suma kontrolna: sekwencja sum zaczynających się od 1.

    Po stronie nadawcy w wielu przypadkach może to być nieco trudniejsze. Suma dopełnienia użytkownika jest wykonywana na całkowicie 16-bitowych wartościach, a następnie dopełnienie prywatne (tj. Ustaw wszystkie bity), aby wypełnić sumę kontrolną segmentu (z dodatkowym warunkiem, że przemyślana suma kontrolna jest między zerami). przekonwertował większość bitów na jeden).

    obliczanie sumy kontrolnej nagłówków UDP

    Dopełnienie nie jest tylko sumą całej filozofii dopełnień. To trochę bardziej skomplikowane.

    Zasadniczo masz zdefiniowany akumulator 16-bitowy, fakt działa od zera i dodaje do niego każdą ostatnią wartość 16-bitową. Za każdym razem, gdy jedna z tych wstawek zwraca przeniesienie, prawdziwa wartość zostanie umieszczona w ramce i zapiszesz z powrotem w odniesieniu do wartości. To skutecznie pobiera dowolny bit przeniesienia z 16-bitowego zliczania i dodaje go do głównej wartości.


    obliczanie sumy kontrolnej nagłówków udp

    Swoją drogą jest to czysta spekulacja na temat całej części użytkownika, chociaż prawdopodobnie można to zrobić ekonomicznie za pomocą operatora ADC (Dodaj jako Carry) jako ADD (niespodziewanie dodaj), tj. równoważne instrukcje dostępne na twoim ostatecznym procesorze w tym czasie.

    Jak obliczana jest suma kontrolna UDP podziel się z przykładem?

    Z tego powodu sumy kontrolne TDP i UDP wykorzystują metodę wypełniania składników do obliczenia sumy kontrolnej. Dopełnienie jedności to nic innego jak Twoja indywidualna wartość, którą otrzymujemy, gdy eksperci korygują wszystkie zera na jedynki lub wszystkie jedynki na zera. Na ilustracji numery 110111001010 odpowiadają numerom 001000110101.

    Gdyby niektóre z nich nie były po prostu przenoszone, ADC dodałby bit kontra-przenoszenia. Kiedy wszystko było już zrobione (i tak, najwyraźniej jestem aż tak stary), pamięć wydawała się jeszcze znacznie większa. W dzisiejszych czasach nie jest to duży dylemat, w wyniku czego zaoszczędź kilka bajtów kodu, po prostu wyprawa do półboga-imperatora-wszechświata może być podłączona 🙂

    Zauważ, że nigdy nie martwiłeś się o transport drugiego urządzenia (lub po prostu transportowanie dwóch, które ma następujący ADC, jeśli sam używasz metody wspomnianej w całym poprzednim akapicie), ponieważ należy dodać dwie kilka ważnych 16-bitowych wartości w 0xfffe (obcięte do 0x1fffe) – wprowadzenie ich nigdy nie spowoduje i tak jeszcze jednego zawinięcia.

    | 0xffff, oczywiście zakładając, że żaden błąd nie został pominięty.

    Należy zauważyć, że ładunek jest w większości przypadków zawsze dopełniony, aby zapewnić całkowitą liczbę 16-bitowych zdań fraz. Jeśli to pole zostanie zajęte, pole ścieżki będzie miało zademonstrować twojąInną długość.

    Czy Twój komputer działa wolno i zawodnie? Masz dość radzenia sobie z irytującymi błędami systemu Windows? Cóż, nie szukaj dalej, bo Reimage jest tutaj, aby pomóc.