検索
連載

第16回 信頼性のある通信を実現するTCPプロトコル(3)基礎から学ぶWindowsネットワーク(1/4 ページ)

TCP/IPの核であるTCPプロトコルの詳細を知る。TCP編の最後である今回は、TCPのオプションと状態遷移について解説する。

Share
Tweet
LINE
Hatena
連載 基礎から学ぶWindowsネットワーク ―― Windowsネットワーク管理者への道 ―― 
Windows Server Insider

 

「連載 基礎から学ぶWindowsネットワーク ―― Windowsネットワーク管理者への道 ―― 」のインデックス

連載目次


 前々回前回では、TCPにおける基本的な通信モデルと、TCPパケットの構造、TCPのオープン/クローズ処理について解説した。今回はTCPプロトコル解説の最後として、TCPオプションとTCPの状態遷移図、そして実際のTCPプロトコルの例についてみていく。

 TCPのオープン処理では、3ウェイ・ハンドシェイクという手法を使っている。これは都合3つのパケットを往復させることにより、オープン要求の送信とそれに対する受信確認の返答を行うものである。TCPは双方向型の通信サービスなので、両方のノードがそれぞれオープン要求を送信し、それに対してそれぞれが応答を返信する。実際にネットワークをキャプチャして確認すると、この3ウェイ・ハンドシェイクの様子がよく分かるだあろう。

 TCPのクローズ処理とは、もうこれ以上送信するデータがない、ということを相手に通知するためのものである。やはり双方がこのクローズ要求を送信し、それに対する確認を受け取って初めてクローズ処理が完了する。一方的に受信をやめるだけでは正しいクローズ処理にはならない。

 以上のように、TCPでは、UDPと比べるとかなり複雑な制御が行われている。特にオープンとクローズの処理では、どちらが先に要求を送信したのかによって処理内容が変化する。また、同時に処理要求が出されることもあるので(ネットワーク上では、このようなことも当然発生する)、その場合でも破綻しないようになっていなければならない。このようなさまざまな事態に対応するため、TCPではあらかじめ有効な「状態遷移」が詳細に決められている。この状態遷移は、例えばnetstatコマンドで表示されるようになっている。ネットワークのトラブルシューティングを行う場合には、この状態遷移を調べることによい、トラブルの状態や症状を的確に知ることができるので、ぜひとも覚えておくとよいだろう。


Copyright© Digital Advantage Corp. All Rights Reserved.

       | 次のページへ
ページトップに戻る