ポートの使い方
ソケットでの作業:インデックス への移動
ソケット接続の相手側のシステムを見つけるのに十分な情報が IP アドレスで提供されますが,そのシステムのポート番号も必要です。ポート番号がないと,システムは一度に 1 つの接続しか形成できません。ポート番号はユニークな識別子であり,接続ごとに別々のポート番号を与えることによって,1 つのシステムが同時に複数の接続に対応できるようになります。
ポート番号はネットワークアプリケーションが実装するサービスの数字コードであると見ることができます。これは,クライアントソケットがリスニングサーバー接続を見つけ出せるように,リスニングサーバー接続が自らを固定のポート番号で利用可能にするための取り決めです。サーバーソケットは,リスニング接続を形成して提供しているサービスに関連付けられたポート番号で接続リクエストを待ちます。サーバーソケットがクライアントソケットとの接続を受け入れると,異なる任意のポート番号を使用する別のソケット接続がそのサーバーソケットによって作成されます。これにより,サービスに関連付けられたポート番号ではリスニング接続が継続して接続リクエストを監視することができます。
クライアントソケットは任意のローカルなポート番号を使用します。ほかのソケットがクライアントソケットを見つけ出す必要はないからです。クライアントソケットは,サーバーアプリケーションを見つけられるように,接続先のサーバーソケットのポート番号を指定します。目的のサービス名を指定することで間接的にポート番号を指定する場合がよくあります。