<ネスペちゃん01について>
ネスペちゃん01はネットワークの用語やセキュリテ
ィのお話について、「難しい」イメージから「意外と
面白い」に変えるのが目的です。そのため、あえて大
胆なたとえや、表現を使っています。
そんなわけで、結果的に、緻密さを犠牲にする部分が
あります。詳しく知りたい方は、さらに勉強しよう!
ってことで。よろしくお願いします。(にしの)
----
TCPの働きは3つあるけど、
知ってるにゃ?
(1)通信路を確立すること
(2)データを送信すること
(3)エラーがあれば、再送すること
なんだけど、まずは、今回(1)通信路を確立する、
について。述べたいと思う。
通信路をどうやって確立するか。それはTCP自身
はレイヤー4なので、具体的なことは下位のレイヤ
ーたち、IPとかに委ねてるから
TCPはよく知らない。
知らんのかい。早くも連載の雲行きが怪しいだろ。
けど、通信路を確立する。すなわち相手と通信でき
る状況にあるかを確認するのはTCPのお仕事だと
いえる。
相手が通信できる状況にあるか、確認しないでデー
タを送信しても、相手は困惑するんで確認が必要な
のよ。
アポなしで食事に誘うようなもんだな。
確認の方法はいろいろあるんだけど。通常、サーバ
とクライアントがお互いにデータをやり取りする場
合は
手順A
1 クライアントがサーバに通信していいか聞く
2 おっけーだよ
3 送信するね
手順B
4 サーバがクライアントに通信していいか聞く
5 おっけーだよ
6 送信するね
めんどくさ!
そうそう。合計6手かかるからね。これはいちいち
なので。3WAYハンドシェイクで確認する。
(3WAYハンドシェイクの手順)
1 (クライアント)サーバさん、僕通信したいな。
2 (サーバ)いいけど、僕からも通信していい?
3 (クライアント)もちろん!オッケーだよ!
これで双方向の通信が可能になる。
なるほど、2手目でOKと確認を同時に出してんの
か。
どうやってつながってるかは知らないくせに、こう
してTCPは通信路を確立するにゃ。
不思議すぎるな。TCP。