TCP の 3 ウェイ ハンドシェイクと 4 ウェイ ウェーブ (ユーモア バージョン)

スリーウェイハンドシェイク:


あなたが鳥で、他の鳥とコミュニケーションを取りたいとします。(あなたはクライアントです)

1. 最初に挨拶します:「こんにちは、私は鳥です、聞こえますか?」(1セッション)

2. 別の鳥が答えます:「はい、あなたの声が聞こえます。私も鳥です。」(2 つのセッション)

3. あなたはもう一度言います:「とてもいいですね。話を始めてもいいと思います。」 (3 セッション)



正式な答え:

コンピュータ ネットワークにおける 3 ウェイ ハンドシェイクは、TCP プロトコルを使用して、通信中の 2 つの当事者が信頼性の高い接続を確立することを保証するプロセスです。その具体的な手順は次のとおりです。

最初のハンドシェイク (SYN 送信) : クライアントは SYN (シーケンス番号同期) フラグ ビットをサーバーに送信し、接続を確立してサーバーに初期シーケンス番号 (ISN) を通知することを要求します。

2 回目のハンドシェイク (SYN-ACK 応答) : クライアントから SYN フラグを受信した後、サーバーは SYN-ACK (同期確認、同期確認) フラグを返し、接続の確立に同意したことを示し、最初のハンドシェイクを自分自身に通知します。シーケンス番号。

3 回目のハンドシェイク (ACK 送信) : サーバーから SYN-ACK フラグを受信した後、クライアントはサーバーに ACK (肯定応答) フラグを送信し、サーバーからの SYN-ACK が受信され、接続が正常に確立されたことを示します。 。

このようにして、3 回目のハンドシェイクのプロセスで、クライアントとサーバーは互いのステータスを確認し、データ送信および通信のための信頼できる接続を確立できます。スリーウェイ ハンドシェイク中にいずれかの当事者がエラーを起こした場合、接続は失敗し、両方の当事者がハンドシェイク接続を再開始する必要があります。


4回手を振る:

男女の別れのようなもので、男子は別れたいと言う(第一波)、女子は同意して別れたいと言う(第二波)、男子は女子のメッセージを受け取って別れを受け入れる(第三波)、女子は別れたいと言う。この知らせを受けて両者は決裂し終結した(第4波)。



1. 初期状態: クライアントとサーバーは接続を確立し、クライアントは接続を閉じたいことを示す FIN メッセージを送信します。
2. 最初の波: FIN メッセージを受信した後、サーバーはクライアントの要求を受信したことを示す ACK メッセージを送信し、接続も閉じることをクライアントに伝えます。
3. 第 2 波: サーバーは、接続を閉じる準備ができていることを示す FIN メッセージを送信します。
4. 3 番目の波: サーバーから FIN メッセージを受信した後、クライアントはサーバーから要求を受信したことを示す ACK メッセージを送信し、接続を閉じる準備ができていることをサーバーに伝えます。
5. 状態の終了: サーバーが ACK メッセージを受信した後、両者は切断されます。


TIME_WAIT の待ち時間が 2MSL なのはなぜですか?

主な理由は、クライアントによって送信された最初の ACK メッセージが失われる可能性があり、2MSL はネットワーク上に存在するメッセージの最長時間であるため、クライアントによって送信された最初の ACK メッセージがサーバーに確実に到達できるようにするためです。古い接続のメッセージは新しい接続では表示されません。

画面の前で学習しましたか?

 

おすすめ

転載: blog.csdn.net/m0_62600503/article/details/130892048