Vad är RST / ACK-paketet i dataöverföring?


Bästa svaret

RST / ACK används för att avsluta en TCP-session. Paketet är ACKnowledging mottagande av det föregående paketet i strömmen och stänger sedan samma session med ett RST-paket (Återställ) som skickas till den yttersta änden för att meddela att anslutningen stängs. Detta är ett helt normalt beteende (även om det inte är \_föredraget\_ beteende i de flesta fall), eftersom både upprättandet och nedbrytningen av en TCP-session är en flerstegsprocess men ett FIN-paket skulle vara en mer graciös avslutning. Svar

Jag antar att du menar ACK i Transmission Control Protocol (TCP). En viktig, faktiskt en av de viktigaste funktionerna i TCP är förmågan att säkerställa korrekta data och upprätthålla en känsla av ”tillstånd” som en anslutning. Båda dessa syften uppfylls av ACK-systemet.

Varning: Följande inlägg kommer med massor av förenkling. Detta baserades på mina föreläsningsanteckningar för 9 år sedan plus en snabb omläsning av RFC 793 . Korrigera mig om jag har fel.

TCP trevägshandskakningsprocess består av:

  • Initiatören skickar ett SYN till mottagaren.
  • Mottagaren skickar SYN / ACK tillbaka till initiativtagaren.
  • Initiatören svarar med en ACK .

ACK används också för att ack kunskapspaket som har tagits emot korrekt. Detta gör att många paket kan vara ”i flyg” åt gången. ACK används för att bekräfta att ett paket har mottagits och avsändaren (personen som tar emot ACK) bör börja skicka de data som representeras i ACK-numret.

Om en ACK inte tas emot kommer data att förbittras efter timeout. Detta tidsgränsvärde kan ställas in i ditt operativsystem. Det är dock ganska under huven och påverkar nätverkskvaliteten MYCKET, så du rekommenderas inte att göra det om du inte har en riktigt specifik anledning att göra det.

Mycket förenkling gjordes. Jag hoppas att du fortfarande får den allmänna idén.

(Bilder är delvis min egendom. Ikon från MS Visio-stencil. Jag komponerade bilden.)

Obs! Det här är inte det första svaret till den här ”avslutade” frågan. Om du tycker att mitt svar är användbart kan du istället rösta på Ward (som svarade snabbare).

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *