TCP/IP ソケットプログラミング
1.ソケットとは
ソケットはアプリケーションがデータを送受信するための仕組みを抽象化したもの。データ送受信はアプリケーションがファイルをオープンして内蔵ディスクに対してデータを書き込むのとほぼ同じ方法で行われる。
TCP/IPのプロトコルファミリのソケットといえば「ストリームソケット」と「データグラムソケット」。ストリームソケットはIPの上位層のエンドツーエンドプロトコルとしてTCPを使用するため信頼性の高いストリームサービスを利用することが可能。
TCP/IPプロトコルファミリを利用するソケットはIPアドレス、エンドツーエンドプロトコル(TCP or UDP)、そしてポート番号によって一意に識別される。ソケットが作成された時点で利用するプロトコルとソケットは関連付けられている。しかし、この時点ではソケットとIPアドレス、ポートとは関連付けされていない。ソケットがリモートアプリプログラムからメッセージを受信出来るのはソケットがポート番号に「バインド」された後。