TCP

最終更新: 2022-02-17 11:58:10 +0800 +0800
原文は英語で書かれています。あなたはAI翻訳版を読んでいます。

TCP は信頼性のある順序付きバイトストリーム転送です。各バイトを 32 ビットのシーケンス番号で識別し、これらの番号の算術は 2^32 を法として行われます。

3 ウェイハンドシェイク #

接続を開始するため、クライアントは初期シーケンス番号 x を付けた SYN を送信します。 サーバーは SYN+ACK で応答し、自身の初期シーケンス番号 y を選び、x + 1 を確認応答します。 クライアントは y + 1 を確認する ACK を送信します。SYN はアプリケーションデータを含まないにもかかわらず、 シーケンス番号を 1 つ消費します。

データ転送と切断 #

各 ACK は次に期待するシーケンス番号を示すため、それより前のすべてのバイトを累積的に確認します。 TCP は確認されていないデータを再送し、受信側が通知するウィンドウによって送信量を調整し、 輻輳制御によってネットワークの過負荷を防ぎます。正常な切断では各方向に FIN セグメントを使用します。 リセット(RST)は通常の順序立った終了処理を行わずに接続を中断します。

コメント

GitHub で閲覧・コメントする(投稿にはログインが必要です)