近くに接続 - 「ウェーブ」;「握手」 - 接続を確立するには、
詳細なスリーウェイハンドシェイク:
最初:メッセージは、Aは、ランダム初期シーケンス番号としてシーケンス番号Bを送信する端末選択します。
第二:確認するために送信されたデータパケットAのBのACK最終用途は、シーケンス番号が受信されているので、パケットは、X、パケットシーケンス番号を受信する準備ができている、X + 1、ACK = X + 1、Bしばらく自分のイニシャルシーケンス番号がSEQ = yと言います。
第三のは:A B側端末は、受信確認メッセージを伝え、接続Bを確立する準備ができている、エントリの独自のメッセージシーケンス番号は、SEQ = X + 1に、X + 1であり、ACK = Y + 1が正のAでありますBは、データパケットのシーケンス番号y + 1を受信する準備ができています。
なぜA側と後でまたそれの確認を送信?
リンクを防ぐためには誤差が生じる、突然B側に広がっ期限切れ要求パケットを有しています。
のいわゆる「期限切れのリンク要求メッセージ」の原因:
ノーマル:A接続要求、接続要求パケットロスが、が、Aもう一度、Bからの肯定応答パケットを受信し、接続要求を再送信しません。Bは、後に確認メッセージを受信し、接続が確立されます。接続が解放された後にデータ転送が完了しています。
接続要求が最初の失われた、第二の端子Bは----「期限切れリンク要求メッセージ」に達していない特徴、二つのセグメントの合計送信されます。
例外は:Aは、接続要求を送信しますが、失うことはありませんでしたが、いくつかのネットワーク・ノードに接続解除後の最後に到達する前にBへの遅延要求パケットで、その結果、長時間本鎖。これ自体は、すでにセグメントの障害です。間違えAは、新しい接続要求を発行し、接続を確立することに同意したAセグメントに確認メッセージを送信した後、しかし、この障害Bは、接続要求パケットを受信します。何のスリーウェイハンドシェイク限り、確認のBがないと仮定すると、新しい接続が確立されています。今、Aは、それが確認応答パケットBを無視しない、接続を確立するための要求を発行していない、それはBにデータを送信しません。しかし、Bは、Bを新しい伝送リンクが確立されてきたと考えて、そしてAによって送信されたデータを待っていますこの上の無駄なリソースの多く。
スリーウェイハンドシェイクは、この異常現象を防ぐことができます。念のため:Aが確認、端末B、Aは、確認応答を受信できないBはAが接続を必要としません知っているに確認メッセージを送信しません。
詳細な波4回:
全二重:A→B、B→A、瞬間的な同期を参照しながら、データ通信は、双方向に同時伝送を可能にします。
シンプレックス:甲にパーティB、パーティBへのデータ送信を送信することができません。(片道車のアナロジー。)
TCPは各方向を個別にシャットダウンする必要がありますので、全二重で、その後、データ伝送がその方向での接続を終了するために完了するとFINパーティーを送信しますが、FINパーティーを受け、この単純な手段は、データを受信しませんこのパーティはまだFINを送信するために他の当事者になるまでデータを送信することができます。
最初の波は:クライアントがデータ転送クライアントサーバー入札を閉じるFINを送信し、クライアントはFIN_WAIT_1状態に入ります。
第二波:サーバーがクライアントを送信するためにFIN、ACKを受信すると、受付番号+ 1のための確認応答番号は、サーバーはCLOSE_WAIT状態になります。
第三の波:サーバーはクライアントサーバーのデータ転送を閉じるために、LAST_ACKサーバーは状態になり、FINを送信します。
第四の波:クライアントは、FINを受信し、クライアントは確認応答番号の数+ 1を受信するために、TIME_WAIT状態に入り、その後、サーバにACKを送信し、サーバはCLOSED状態は、4つの完全な波を入射します。
なぜスリーウェイハンドシェイクは、接続を確立し、接続がそれを振って4倍で閉じますか?
これは、接続要求のSYNパケット、SYN ACKを確立し、クライアントに送信されるパケットに配置された後に受信し、LISTEN状態にあるため、サーバです。
接続が閉じているときだけの手段に相手もはや送信データが、また、データを受信していることや、お互いのFINメッセージを受け取る、それは自分のすべてのデータが近い、すぐにその人自身缶、お互いに送信されないかもしれない、あなたはまた、いくつかのデータを送信することができます互いの後、次いで今、従って、自身のFIN及びACKは、一般的に別々に送信された接続をクローズすることに同意するために、他の側にFINパケットを送信します。