TCPとは
TCPとは、信頼性の高い確実なデータ通信を実現する為のプロトコルである。パケットの欠損に対する保証がないIPの上位層として保証機構を付加する。
TCPの役割り
TCPでは、OSI参照モデルにおいて、第4層(トランスポート層)に位置付けられているネットワークプロトコルで、信頼性の高い確実なデータ通信を保証する。この場合の「信頼性の高い」とは、データの欠損がなく確実に相手に送り届けられることを意味する。
TCPでは、第5層(セッション層)以上のプロトコルから通信データを受け取り、これをパケットに分割する。そしてそのパケットを第3層(ネットワーク層)のIPへと渡し相手に送り届けられる。
TCPとIPを組み合わせたTCP/IPが主流であり、TCP/IPはインターネットにおける各種サービスの基盤として活用されている。
データ通信を保証するTCP
送出されたパケットが送出された順番通りに届けばいいのだが、実際にパケットの送信を行うIPではそのような保証はない。ネットワークの混雑状況によってパケットの欠損や、遅延による順序の入れ替わりが起こり得るからだ。
これに対しTCPではいくつかの手法によりデータ通信に信頼を持たせている。
まず、通信データをパケットへ分割する際にはシーケンス番号を付加しておき、受信側でこの番号をチェックし、必要ならば並び替えを行ってパケットの並びが正しいことを保証している。
また、受信側からは必ず受信したことを示す通知パケット(ACKパケット)が送信側へと送り返される。これにより送信側では、送出したパケットが届いたか否かを判断でき、一定時間返事がない場合にはパケットを再送出することで欠損を防ぐ仕組みとなっている。