TCPによる通信

 TCPは、OSI参照モデル4層のトランスポート層に位置するプロトコルです。TCPは、アプリケーションから渡されたデータを転送に最適なサイズに分割します。このことを、セグメント分割といいます。

 小分けにされたセグメントには、ヘッダが付けられます。ヘッダには、以下のような情報などが含まれています。

シーケンス番号

 送信元のTCPが割り振った順番どおりにデータを組み立て直し、アプリケーション層のプロトコルにデータを渡すための番号です。

 パケットは、送った順に届くとは限りませんし、送ったパケットが全て宛先に届くとは限りません。配送される際に、破棄されることもありますし、迷子になってしまうこともあります。

 上の図では、データ(パケット)は、下の経路を通っていますが、上の経路を通る場合もあります。パケットによって、目的地までの経路が異なる場合もあるのですから、パケットは、送った順に届くとは限りません。

確認応答番号

 TCPによる通信では、パケットがちゃんと届いていれば、送信元に通知します。また、荷物が途中で壊れたり、紛失してしまった場合、そのことを通知したり、到着の通知がないことを確認することで、データを確実に相手に届けることができます。

 TCPが、こうした作業を行うことによって、送信元のアプリケーションは、配送ミスを気にするとなく、自分たちの仕事に専念できるようになっています。

 なお、データ通信には、信頼性が必要ないこともあります。TCPでは、確実にデータを相手に届けるための各種確認作業があるため、オーバーヘッドが大きいとデメリットがあります。

 そのため、TCP/IPネットワークでは、TCPの代わりにUDP(User Datagram Protocol)というプロトコルが用意されています。

UDPによる通信

 上の「TCPによる通信」で説明したように、TCPでは、確実にデータを相手に届けるための各種確認作業があるため、オーバーヘッドが大きいとデメリットがあります。

 TCPはデータの到着を保障するため、ネットワークで荷物が途中で壊れたり、紛失してしまった場合、そのことを通知したり、到着の通知がないことを確認したり、再送を行うことで、リアルタイム性が損なわれます。

 また、TCPはネットワークが混雑していると輻輳制御を行い、データ送信量をコントロールして減らすこともあります。そのことによってもTCPのリアルタイム性が損なわれています。

 そのため、TCP/IPネットワークでは、TCPの代わりにUDP(User Datagram Protocol)というプロトコルが用意されています。 UDPでは、リアルタイム性を損なう確認応答や再送、輻輳制御がないため、TCPよりもリアルタイム性が高い利点というがあります。

 この利点を生かして、リアルタイム性が重要視される映像や音声のストリーミングなどのアプリケーションや、IP電話(VoIP)で利用されています。

TCP/IPの歴史

 TCP/IPは、1960年代後半にスタートした米国防総省のパケット交換型ネットワークの研究に端を発します。TCP/IPの運用歴史は古く、今では、インターネットのスタンダードになっています。当時のデータ通信の仕組みは、大型コンピュータ同士をモデムで結び、1つの回線で1組だけが占有するという非効率なものでした。

 TCP/IPは、パケット交換による通信の仕組みです。1つの回線で複数組がデータ通信を行うことができます。TCP/IP、1969年に米国防総省の研究機関と米西海岸の4つの大学、研究所を結ぶパケット交換ネットワークとして運用がスタートしました。

これがインターネットの起点となるARPANETです。

 もともとARPANETは、軍事目的で核戦争などで、ネットワークの一部が破壊されても、残された部分でも機能する通信ネットワークを求めて開発されたものですが、これが、最終的に現在のインターネットなにっています。

TCP/IP年表
1960年代後半米国防総省、パケット交換型ネットワークの研究に着手する。
1969年パケット交換型ネットワークのARPANETの運用が始まる。
1975年TCP/IPの公開、試験運用が始まる。
1983年ARPANETの標準プロトコルとして採用する。
BSDが、UNIXとして、初めてTCP/IPを標準実装する。
Sun Micro Systemsが自社UNIXにTCP/IPを実装する。
1980年代後半UNIX系システムを中心にLANで普及してゆく。
1990年代前半PCへの普及が始まる。(WinSock、MacTCP)
1995年Windows95で、WinSockが標準実装する。
2000年頃ブロードバンドの普及
TCP/IP年表

 1995年度末にWindows95が発売された辺りから、一般家庭でもTCP/IPがなじみ深いものになってゆきます。この辺りは、皆さんの記憶にも新しいところではないでしょうか。

 この後のTCP/IPの普及は目覚しいものがあります。2000年頃からは、各家庭へのブロードバンドの普及していきます。この辺りからは、TCP/IPは、私たちの生活に欠かせないものになっています。