• Thu. Sep 29th, 2022

Enkel Lösning För Att Planera UDP-huvudkontrollsumma

ByGeorge Kent

Feb 3, 2022

Ibland kommer din personliga dator att generera en felkod som anger att en UDP-huvudkontrollsumma också beräknas. Det kan finnas de flesta orsaker till detta problem.

Är din dator långsam och opålitlig? Ger det dig den fruktade Blue Screen of Death? Var inte rädd, din frälsare har anlänt i form av Reimage.

Snabbguide till UDP-kontrollsummaberäkning

Hur beräknas UDP-huvudkontrollsumman?

Kontrollsumman är som till exempel en 16-bitars pseudo-headers utfyllnad till indigrrne utfyllnad av information från IP-rubriker, UDP-huvud och statistik, vanligtvis utfyllda med noll byte (om nödvändigt) med valfri multipel av andra byte. I de andra orden läggs alltid majoriteten av 16-bitars ord till och genererar ytterligare aritmetik.

Här är Ed Berosets korta beskrivning av UDP-relaterade beräkningar.kontrollsumma fördettaPaket. Stort tack till Ed för att du interagerar med detaljerna ochskriv hela uppgiften.

Först ställs en kontrollsumma av beräkningen helt enkelt ini RFC 768, men observerahur man räknari RFC 1071. Bådaär läsvärda innehåller dessutom en mycket djupare klassificeringJag måste skriva här.

Grundtanken är när UDP-kontrollsumman är koordinaten för16-bitars beräknar sin extra summa mycket mer än IP “pseudo header” ochden ansedda UDP-datan. En IP-pseudo-header är egentligen en typ av adressDestinationskälla där de bor, protokoll (stoppad med stor nollbyte) och UDP.Längd. Så för att ta deras exempeldetta snabba paket, somKäll-IP-adressen blev 152.1.51.27 och semester-IP-adressen152 Adress.14.94.75. 16 bitar är utan tvekan uppdelade i uppsättningar, dessa är typ 0x9801,0x331b och 0x980e, 0x5e4b. Om alla lägger till dem med tvåtillägg (för , från dator Windows) kommer du att producera ansikte 0x1c175. Var försiktig att enheten svämmar överDet här är den nya 16-bitarsstorleken, tyvärr kommer vi att tänka på det senare.Lägg sedan bara till protokoll och UDP-storlek. För detta paketProtokollet är också UDP, så protokolltypen är byte 17 eller 0x11. Vi är alla bungalows sommed noll får du 0x0011 och lägger sedan till UDP-gapet som vanligtvis är 0x000a.(10 byte). Alltså 0x1c175 + 0x0011 0x0! +00a jämförs med 0x1c190.

Hur erfarenhet beräknar du header checksumma?

För att utvärdera vår egen kontrollsumma kan vi först utvärdera själva summan av de 16 värdena av sakerna i rubriken, inte bara lämna själva kontrollsummansfältet. Observera att dessa värden är hexadecimala. För att få kontrollsumman får vi ett komplement till dessa resultat: b861 (som visas understruket i den korrekta rubriken på det ursprungliga IP-paketet).

Låt oss nu lägga till ett fullständigt UDP-datagram och bara bearbeta det eftersom det kan vara 16-bitars.hoppa över set och kontrollsumma (tills individer slutför beräkningenDet!). För denna ritning använd datagram 0xa08f, 0x2694, 0x000a, 0x6262, använd omGenom att använda allt detta faktum att en sökväg till vår löpande adderar, får vi 0x1c190 + 0xa08f + 0x2694 +0x000a + 0x6262 motsvarar 0x2eb1f.

Godkänd:

Om du letar efter ett sätt att snabba upp din dator behöver du inte leta längre. Reimage är en allt-i-ett-lösning som fixar vanliga Windows-fel, skyddar dig från filförlust och skadlig programvara, optimerar din dator för maximal prestanda och mer. Den kommer till och med med en gratis skanning så att du kan se vilka problem den kan hjälpa till att lösa innan du köper! Klicka för att ladda ner just nu för att komma igång:

  • Steg 1: Ladda ner och installera Reimage-programvaran
  • Steg 2: Öppna programvaran och klicka på "Återställ PC"
  • Steg 3: Följ instruktionerna för att slutföra återställningsprocessen

  • För att konvertera nu kan du göra om 16-bitarssumman till ens boost, vilket de flesta bara hanterar vem som har vårlöpande summa (0x2eb1f) som den specifika 32-bitarsstorleken och lägger vanligtvis till hälften av den höjden till dennedre halvan. 0x0002 + 0xeb1f = 0xeb21. (Om han innehöll en annanOverflow, jag skulle dela den främsta och botten på mitten i hela andra paz tills det är mycket kvarplus ett fantastiskt överflöde.) Vi håller just nu på att slutföra beloppet som deklarerats av varje expert (dvs. återgår till allabit, att få detta gjort är NOT-operationen) och vem som helst får värdet 0x14de, dvs.exakt det språk som checksumman för avsnitten över paketet säger.

    UDP-kontrollsumman har nu utförts på den totala nyttolasten, för att inte tala om andra fält som en del av h2-taggar och vissa fält över hela IP-huvudet. Pseudo-headern kan skapas efter IP-headern för att framgångsrikt utföra beräkningarna (som den visar via pseudo-headers, UDP-h2-taggar, tillsammans med nyttolast). Anledningen till att den särskilda pseudo-headern bör inkluderas är för att upptäcka paket som experter hävdar har vidarebefordrats för att hjälpa allmänheten att komma till fel IP-adress.

    I huvudsak, på mottagarsidan, läggs vanligtvis alla 16-bitars ord och fraser från rubrikerna plus dataområdet (10-bitars brytning) till, och resultatet jämförs verkligen med 0xffff. .

    p>

    Hur implementeras UDP-kontrollsumma?

    Det exciterar innehållet i ditt nuvarande segment som en sekvens mot 16-bitars heltal.Alla segment har lagts till.Kontrollsumma: En sekvens av summor som börjar med 1.

    På avsändarsidan kan det vara lite knepigare. Användarens go-summa utförs på praktiskt taget 16-bitars värden, och sedan är personen i form (dvs. ställ in alla bitar) för att fylla i vilken kontrollsumma som helst för fältet (med detta särskilda ytterligare villkor att den betraktade kontrollsumman är mellan nollor). konverterade alla portioner till en).

    calculating udp headlines checksum

    Ens komplement är inte bara adderingen av alla ens komplementvärden. Det är lite mer komplicerat.

    I huvudsak har du en definierad 16-bitars ackumulator som fungerar från början och lägger till varje 16-bitars värde till den. Varje gång en bra av dessa skär resulterar i varje överföring, är det sanna värdet inneslutet och du skriver tillbaka till vanligtvis värdet. Detta tar effektivt bort överföringsbiten från 16-bitars tillägget och lägger dessutom till det till värdet.


    calculating udp headlines checksum

    Detta är rena spekulationer om pc-operatörsdelen, förresten, men det skulle förmodligen kunna göras effektivt genom att använda ADC-operatorn (Lägg till med Carry) som ADD (överraskande nog, lägg till), dvs deras motsvarande instruktioner tillgängliga på din CPU vid tillfället.

    Hur UDP-kontrollsumman beräknas förklaras i kombination med exempel?

    Av denna huvudsakliga anledning använder TDP medan UDP-kontrollsummor en utfyllnadspraxis för att beräkna kontrollsumman. Ens form är inget annat än din fördel, som vi får när vi rätt alla nollor till ettor eller nästan ettor till nollor. Till exempel motsvarar de faktiska siffrorna 110111001010 001000110101.

    Om någon sorts av dem inte var en may carry skulle ADC lägga till en noll haul bit. När allt detta visade sig vara klart (och ja, tydligen är jag för gammal, tydligen), minnet var också mycket större. utjämning till halvgud-kejsar-universum kan vara identisk 🙂

    Observera att du aldrig behövde vara orolig för att transportera den andra behandlingen (eller bara transportera de två med följande ADC om du själv använder metoden som nämns i föregående stycke), eftersom de två mest signifikanta 16-bitars värden blir 0xfffe när add on (avkortas till 0x1fffe) – att lägga till honom eller henne kommer aldrig att resultera i en annan cover ändå.

    När den beräknade komplementvolymen har beräknats är dess bitar vanligtvis felaktiga och infogas i akvariet, vilket gör att beräkningen skickas till den mottagande änden för att åstadkomma 0xffff, förutsatt att inget fel är godkänt förstås.

    Det bör vara känt att nyttolasten ofta är att du alltid bör vadderas för att ge ett otroligt heltal av 16-bitars fraser och fraser. Om det här fältet är ifyllt kommer sökvägsfältet att erbjuda din Övriga längd.

    Är din dator långsam och opålitlig? Trött på att ta itu med irriterande Windows-fel? Tja, leta inte längre, för Reimage är här för att hjälpa dig.