Maison  >  Article  >  interface Web  >  Une brève analyse de la poignée de main à trois voies et de la stratégie à quatre vagues de la transmission TCP

Une brève analyse de la poignée de main à trois voies et de la stratégie à quatre vagues de la transmission TCP

一个新手
一个新手original
2017-10-14 09:22:391911parcourir

Afin de transmettre avec précision les données à la destination, le protocole TCP adopte une stratégie de prise de contact à trois voies. Une fois le paquet de données envoyé via le protocole TCP, TCP n'ignorera pas la situation après la transmission. Il confirmera définitivement à l'autre partie s'il a été livré avec succès. Les indicateurs TCP sont utilisés lors de la prise de contact : SYN et ACK.
L'extrémité émettrice envoie d'abord un paquet de données avec un indicateur SYN à l'autre partie. Après l'avoir reçu, l'extrémité réceptrice renvoie un paquet de données avec l'indicateur SYN/ACK pour transmettre les informations de confirmation. Enfin, l'expéditeur renvoie un paquet de données avec un indicateur ACK, indiquant la fin de la « poignée de main ». Si la prise de contact est interrompue sans raison apparente à un moment donné, le protocole TCP enverra à nouveau les mêmes paquets de données dans le même ordre.
La déconnexion d'une connexion TCP nécessite "quatre vagues" :
La première vague : la partie active de fermeture envoie un FIN pour fermer la partie active à la partie passive Les données transmission de la partie de clôture, c'est-à-dire que la partie de clôture active dit à la partie de clôture passive : je ne vous enverrai plus de données (bien sûr, si les données envoyées avant le package fin ne reçoivent pas le message de confirmation d'accusé de réception correspondant, la clôture active La partie fermante renverra toujours les données), mais la partie fermant activement peut toujours accepter les données à ce moment.
La deuxième vague : une fois que la partie de clôture passive a reçu le paquet FIN, elle envoie un ACK à l'autre partie, et le numéro de séquence de confirmation est le numéro de séquence reçu + 1 (le même que SYN, un FIN occupe un numéro de séquence).
La troisième vague : la partie de clôture passive envoie un FIN, qui est utilisé pour clôturer la transmission de données de la partie de clôture passive à la partie de clôture active, c'est-à-dire pour dire à la partie de clôture active que mes données ont été envoyées, non, je vous enverrai à nouveau les données.
La quatrième vague : après que la partie de clôture active a reçu le FIN, elle envoie un ACK à la partie de clôture passive, et le numéro de séquence de confirmation est le numéro de séquence reçu + 1. À ce stade, quatre les vagues sont terminées.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn