データ送信におけるRST / ACKパケットとは何ですか?


ベストアンサー

RST / ACKはTCPセッションを終了するために使用されます。パケットは、ストリーム内の前のパケットの受信を確認し、接続が閉じられていることを知らせるために遠端に送信されるRST(リセット)パケットで同じセッションを閉じます。 TCPセッションの確立と破棄の両方がマルチステッププロセスであるため、これは完全に正常な動作です(ただし、ほとんどの場合、推奨される動作ではありません)が、FINパケットの方がより適切に終了します。

回答

伝送制御プロトコル(TCP)のACKを意味すると思います。 TCPの重要な、実際には最も重要な機能の1つは、データの正確性を確保し、接続としての「状態」の感覚を維持する機能です。これらの目的は両方とも、確認応答(ACK)システムによって実現されます。

警告:次の投稿には、かなりの簡略化が含まれています。これは、9年前の私の講義ノートと RFC 793 の簡単な再読に基づいています。間違っている場合は訂正してください。

TCPスリーウェイハンドシェイクプロセスは次の要素で構成されます。

  • イニシエーターはSYNを受信者に送信します。
  • 受信者はSYN / ACKをイニシエーターに送り返します。
  • イニシエーターは ACK

ACKは ack 正しく受信されたnowledgeパケット。これにより、一度に多くのパケットを「飛行中」にすることができます。 ACKは、パケットが受信されたことを確認するために使用され、送信者(ACKを受信する人)は、ACK番号で表されるデータの送信を開始する必要があります。

ACKが受信されない場合、データは次のようになります。タイムアウト後に再送されます。このタイムアウト値は、オペレーティングシステムで設定できます。ただし、これはかなり内部的なものであり、ネットワークの品質に大きな影響を与えるため、特別な理由がない限り、これを行うことはお勧めしません。

多くの簡略化が行われました。まだ一般的なアイデアが得られることを願っています。

(写真は部分的に私の所有物です。MSVisioステンシルのアイコン。写真を作成しました。)

注:これは最初の回答ではありません。この「クローズエンド」の質問に。私の答えが役に立ったと思ったら、代わりにワード氏(よりタイムリーに答えた)に賛成してください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です