TCP 3-veis håndsaksanalyse i Wireshark

Tcp 3 Veis Handsaksanalyse I Wireshark



Transmission Control Protocol er en svært viktig protokoll i transportlag for OSI- eller TCP/IP-modeller. Det er mange fordeler med TCP som:

  • TCP sender på nytt hvis noen sendte data ikke blir bekreftet av mottakeren innen en viss tid.
  • TCP oppretter en tilkobling før dataene sendes. Vi kaller den forbindelsen som 3-veis håndtrykk.
  • TCP har overbelastningskontrollmekanisme.
  • TCP kan oppdage feil ved hjelp av noen metoder.

La oss hovedsakelig lære om TCP 3-veis håndtrykk. La oss også lære om de viktige feltene i Wireshark for 3-veis håndtrykk.







3-veis håndtrykk

Det er tre rammeutvekslinger som skjer i et 3-veis håndtrykk:



  1. SYN
  2. VIS+ACK
  3. ACK

Den første rammen sendes alltid av klienten til serveren. La oss forstå dette fra et enkelt diagram:



'KLIENT SERVER'

Ramme1: Klienten sender SYN-ramme til server----------------------------------------->

<--------------------------------------------Tjeneren sender SYN+ACK-ramme til klient: Frame2

Ramme3: Klienten sender ACK-ramme til server----------------------------------------->

Vi kan se disse tre rammene i Wireshark. 'tcp'-filteret kan brukes i Wireshark for å se alle TCP-rammer. Her er skjermbildet for de tre rammene:





La oss nå forstå alle tre rammene i detaljer:



SYN

Denne rammen inneholder mye informasjon om klientens muligheter til å informere serveren. Følgende skjermbilde viser alle de viktige feltene i SYN-rammen:

Her er de viktige feltene for SYN-rammen:

Kildeport: 50602
Destinasjonshavn: 80
Sekvensnummer: 0
Bekreftelsesnummer: 0
Topptekstlengde: 32 byte
Flagg: 0x002 (SYN):
Bekreftelse: Ikke satt
Push: Ikke satt
Tilbakestill: Ikke satt
Syn: Sett  -----> Denne biten er satt fordi dette er en SYN-ramme.
Finne: Ikke satt

Vindu: 65535
Haster peker: 0
TCP-alternativ - Maksimal segmentstørrelse: 1460 byte
TCP-alternativ - Vindusskala: 3 (multipliser med 8)
TCP-alternativ - SACK tillatt

VIS+ACK

Denne rammen inneholder mye informasjon om serverens muligheter til å informere klienten. Følgende skjermbilde viser alle de viktige feltene i SYN+ACK-rammen:

Denne rammen bekrefter også SYN-rammen som sendes av klienten.

Her er de viktige feltene for SYN+ACK-rammen:

Kildeport: 80
Destinasjonshavn: 50602
Sekvensnummer: 0
Bekreftelsesnummer: 1

Topptekstlengde: 32 byte (8)
Flagg: 0x012 (SYN, ACK)
Bekreftelse: Sett
Push: Ikke satt
Tilbakestill: Ikke satt
Hans: Sett
Finne: Ikke satt

Vindu: 29200
Haster peker: 0
TCP-alternativ - Maksimal segmentstørrelse: 1412 byte
TCP-alternativ - SACK tillatt
TCP-alternativ - Vindusskala: 7 (multipliser med 128)

Vi kan se at 'Acknowledge' og 'SYN' biter er satt i denne rammen. Dette er fordi denne rammen er SYN+ACK.

ACK

Denne rammen er den siste rammen i 3-veis håndtrykket og også bekreftelsen av SYN+ACK av klienten. Følgende skjermbilde viser alle de viktige feltene i ACK-rammen:

Her er de viktige feltene for ACK-rammen:

Kildeport: 50602
Destinasjonshavn: 80
Sekvensnummer: 1
Bekreftelsesnummer: 1
Topptekstlengde: 20 byte (5)
Flagg: 0x010 (ACK)
Haster: Ikke satt
Bekreftelse: Sett
Push: Ikke satt
Tilbakestill: Ikke satt
Syn: Ikke satt
Finne: Ikke satt

Vindu: 32768

Her er bare 'Acknowledge'-biten satt fordi dette er en ACK-ramme.

Forklaring på noen viktige fellesfelt

Port 80 : Vi observerte én fast port 80 i denne opplæringen. Det er fordi dette er en HTTP-opptak og port 80 er løst (serversiden) for HTTP-kommunikasjon.

Sekvensnummer : Sekvensnummeret til den rammen. Sync er den første rammen, så vi har 0 som et sekvensnummer.

TCP-flagg:

Bekreftelse – Denne biten settes hvis rammen er en ACK. Eksempel: SYN+ACK, ACK-ramme.

SYN – Denne biten er satt hvis rammen er en SYN. Eksempel: SYN.

Vindu : Dette feltet deler avsenderens maksimale vindusstørrelse i mottaksmodus. Eksempel: Vi har vindusstørrelsen på 65535 byte i SYN-rammen. Dette betyr at mottakeren kan motta maksimale TCP-data på 65535 byte til enhver tid.

SEKK tillatt : Denne biten er satt hvis send støtter SACK [selektiv bekreftelse].

Maksimal segmentstørrelse : Vi kan også kalle det MSS. Dette definerer den maksimale datarammen som avsenderen kan motta. Eksempel: Vi får MSS som 1460 byte i SYN-rammen.

Konklusjon

Vi lærte om TCP 3-veis håndtrykk og alle de nyttige feltene for SYN-, SYN+ACK- og ACK-rammer. Hvis du vil lære mer om TCP, kan du følge denne RFC-lenken https://tools.ietf.org/html/rfc793 .