1. TCP-håndtrykkprotokoll
I TCP/IP-protokollen gir TCP-protokollen pålitelige tilkoblingstjenester ved å bruke et treveis håndtrykk for å etablere en forbindelse.
Første håndtrykk: Når en tilkobling etableres, sender klienten en syn-pakke (syn=j) til serveren og går inn i SYN_SEND-tilstanden, og venter på at serveren skal bekrefte.
Det andre håndtrykket: Når serveren mottar SYN-pakken, må den bekrefte kundens SYN (ack=j+1), og også sende en SYN-pakke (syn=k), det vil si SYN+ACK-pakke, hvorpå serveren går inn i SYN_RECV-tilstanden.
Tredje håndtrykk: Klienten mottar SYN+ACK-pakken fra serveren og sender bekreftelsespakken ACK (ack=k+1) til serveren.
Etter tre håndtrykk begynner klient og server å overføre data, og det er noen viktige konsepter i prosessen ovenfor:
Ukoblet kø: I treveis håndtrykkprotokollen opprettholder serveren en ukoblet kø som åpner en oppføring for hver klients SYN-pakke (syn=j) som indikerer at serveren har mottatt SYN-pakken og sender en bekreftelse til kunden, mens den venter på kundens bekreftelsespakke. Tilkoblingen identifisert av disse oppføringene er i en Syn_RECV tilstand på serveren, og når serveren mottar en bekreftelsespakke fra kunden, slettes oppføringen og serveren går inn i ETABLERT-tilstanden. Backloggparameter: Indikerer maksimalt antall ukoblede køer.
SYN-ACK Retransmisjonstider Hvis serveren sender SYN-ACK-pakken og ikke mottar kundebekreftelsespakken, utfører serveren den første retransmisjonen, venter en periode uten å motta kundebekreftelsespakken, og utfører den andre retransmisjonen. Merk at ventetiden for hver omgang ikke nødvendigvis er den samme.
Semi-tilkoblings overlevelsestid: refererer til maksimal tid en oppføring i semi-tilkoblingskøen overlever, det vil si maksimal tid fra tjenesten mottar SYN-pakken til pakken bekreftes å være ugyldig, og tidsverdien er summen av maksimal ventetid for alle retransmisjonsforespørsler. Noen ganger kaller vi også semi-sammenkoblet overlevelsestid, SYN_RECV overlevelsestid.
|