1. TCP trevejs håndtryk
Afsenderen sender en pakke med SYN=1 og ACK=0 flag til modtageren og anmoder om forbindelse, hvilket er det første håndtryk. Hvis modtageren modtager anmodningen og tillader forbindelsen, vil den sende en pakke med SYN=1 og ACK=1-flaget til afsenderen, som fortæller den, at den kan kommunikere, og beder afsenderen om at sende en bekræftelsespakke, som er det andet håndtryk. Endelig sender afsenderen en pakke med SYN=0 og ACK=1 til modtageren, som fortæller den, at forbindelsen er bekræftet, hvilket er det tredje håndtryk. Derefter etableres en TCP-forbindelse, og kommunikationen begynder.
2. Flaginformation i TCP-pakken
*SYN: Synkroniseringsflag
Feltet Synkroniser sekvensnumre er gyldigt. Dette flag er kun gyldigt, når en TCP-forbindelse etableres under et tredelt håndtryk. Den beder serveren for TCP-forbindelsen om at tjekke serienummeret, som er det indledende sekvensnummer for den oprindelige TCP-forbindelse (normalt klienten). Her kan TCP-sekvensnummeret betragtes som en 32-bit tæller, der spænder fra 0 til 4.294.967.295. Hver byte data, der udveksles over en TCP-forbindelse, er sekventeret. Kolonnen for sekvensnummer i TCP-headeren indeholder sekvensnummeret for den første byte i TCP-segmentet.
*ACK: Bekræftelsesflag
Feltet Kvitteringsnummer er gyldigt. For det meste placeres flagbittet. Bekræftelsesnummeret (w+1, figur-1) i bekræftelsesnummerkolonnen i TCP-headeren er det næste forventede sekvensnummer, og den fjernede ende er angivetSystemAlle data er modtaget med succes.
*RST: Nulstillet flag
Nulstillingstegnet er gyldigt. Bruges til at nulstille den tilsvarende TCP-forbindelse.
*URG: Nødsignal
Hastepointer-tegnet er gyldigt. Placering af nødskilte,
*PSH: Push-logo
Når flaget placeres, sætter modtageren ikke dataene i kø, men overfører dataene til applikationen så hurtigt som muligt. Flaget sættes altid, når man håndterer forbindelser i interaktionstilstande som telnet eller rlogin.
*FIN: Slut på skilt
Pakken med dette flag bruges til at afslutte et TCP-callback, men porten er stadig åben for at modtage efterfølgende data.
3. Rollen af flere tilstande af TCP i vores analyse
I TCP-laget findes et FLAGS-felt, som har følgende identifikatorer: SYN, FIN, ACK, PSH, RST, URG. Blandt dem er de første fem felter nyttige til vores daglige analyse. De betyder følgende: SYN betyder at etablere en forbindelse, FIN betyder at lukke forbindelsen, ACK betyder at svare, PSH betyder at have DATA-overførsel, og RST betyder forbindelsesnulstilling. Blandt dem kan ACK bruges samtidig med SYN, FIN osv., for eksempel kan SYN og ACK være 1 på samme tid, hvilket repræsenterer responsen efter etablering af en forbindelse; hvis det kun er en enkelt SYN, repræsenterer det kun etableringen af en forbindelse. TCP's flere håndtryk manifesteres gennem sådanne ACK'er. Dog vil SYN og FIN ikke være 1 på samme tid, fordi førstnævnte betyder at etablere en forbindelse, mens sidstnævnte betyder at afbryde. RST vises normalt efter FIN til 1, hvilket indikerer en forbindelsesnulstilling. Generelt, når en FIN-pakke eller en RST-pakke dukker op, antager vi, at klienten er afbrudt fra serveren. Når SYN- og SYN+ACK-pakker dukker op, tror vi, at klienten har etableret en forbindelse med serveren. PSH på 1 optræder generelt kun i pakker med ikke-0 DATA-indhold, hvilket betyder, at PSH på 1 betyder, at ægte TCP-pakkeindhold bliver sendt. TCP-forbindelsesetablering og afslutning sker gennem et request-response-mønster
|