のリリースで---トランスポート層のTCP接続

まず、3つの段階でのトランスポートの接続

  • TCPはコネクション指向のプロトコルであり、

  • トランスポート接続の3つの段階があります。

    1. 接続が確立されています
    2. データ転送
    3. 接続解除
  • 次の3つの質問に対処するための接続確立プロセス

    1. 各当事者のために、互いの存在を確認することができます
    2. 双方が(例えば、最大パケット長、最大ウィンドウサイズ、等のような)多数のパラメータをネゴシエートできるようにするには
    3. トランスポートエンティティのリソースに割り当てることができます
  • クライアント - サーバモード

    • クライアントサーバモードを使用してTCP接続を確立
    • 開始の接続を確立するためのアプリケーション・プロセスが呼び出されます客户(client)
    • 接続を確立するためのアプリケーション・プロセスが呼び出されるために受動的に待っています服务器

二、TCPコネクションの確立

  • TCP接続が確立されると呼ばれるプロセス握手
  • ハンドシェイク交換は、クライアントとサーバの間の3つのTCPセグメントを必要とします。コール三报文握手(送信- >確認- >再確認)
    ここに画像を挿入説明
  1. 第一步:画像は要求のSYNフラグフィールドは、接続を確立するために、前記与えられた、この数のメッセージデータバイトがX(ある这个x是随便定的,在释放连接中这个seq序号是不能随便定的)、実際のデータバイトには存在しない、唯一のヘッダ部分は、データ部分は空であります。
  2. 第二步:あなたが同意する場合B TCPセグメントに対する要求を受信した後、次いで、SYN = 1、= 1そうACK(すなわち、使用する肯定応答メッセージで、Bセグメントを確認応答を送り返す标志确认号有效。番号= X + 1つのACKを(確認)、 确认号是指期望收到的下一个字节序号,这里也说明了前面x个已经收到了このパケットシーケンス番号seq = Yを所有しています。データセクションは空のままです。
  3. 第三步:ACK = 1、確認応答番号のACKが= Y + 1(同様に、Yは、バイトが受信示すBであってもよい)パケット段落Bに送信パケットを受信します。
  4. 连接建立成功: TCP A通知上位アプリケーション・プロセスは、接続が確立されています。

TCPコネクションの解放

  • リリースプロセスをより接続プロセスよりも複雑
  • データ転送が完了した後、通信、両当事者は、接続(クライアントまたはサーバ)を放出することができます
  • TCPは、コネクション解放過程であります四报文握手
  1. B、およびBに転送されるデータが突然解散する準備ができて、上に行きたくありませんでした。
  2. B、アクティブ近いTCP(転送される前のデータ)へのデータの送信を停止
  3. Aは、データセグメント、要求パケット、FIN。1 =(Bに送信する标志着这段报文是请求释放连接的报文)、SEQ = U( 这个u不是随便定的,因为前面A和B是在传输数据的,传输的数据字节的最后一个序号就是uは、Bは、肯定応答を待っています。
  4. Bは、Aに確認応答パケット、ACK = 1、SEQ = V送信し 、ACK = U + 1。ハイレベルのアプリケーション・プロセスに通知TCPサーバー・プロセス(告诉它们A不会再发数据过来了)。ケースが放出に対するB方向に接続され、TCP接続が半分閉じた状態です。B若发送数据,A仍要接收
  5. Bは、Aが切断要求を送信するだけのようにA、およびそのアプリケーションプロセスにデータを送信しない場合は、プロセスを繰り返します。
  • ときにAまたはBの送信確認メッセージ確認断線することができない、すぐ近くの接続は、近くに2MSL時間を待たなければなりません。(MSL ----最大セグメント寿命最大パケット寿命)
    1.他のセグメントに到達することに送られ、最終的な確認メッセージを確実にするために。
    この接続時にネットワークから消え、すべてのセグメントを生成するために2(紛失や到着通過)。
公開された22元の記事 ウォンの賞賛0 ビュー134

おすすめ

転載: blog.csdn.net/weixin_42649617/article/details/105008168