マルチキャストソケットを利用したマルチキャストのサーバ/クライアントプログラムを作成します。 マルチキャストは、特定のグループに所属する全ての端末にパケットを送信します。前回のUDPでの送信を利用しますから信頼性はありません。 IPアドレスはクラスDを用い、224.0.0.0 から 239.255.255.255 までの範囲が利用出来き、ここでは 224.0.0.1(サブネット内の全てのシステムを表す)を使います。 サーバとクライアントのプログラムのクラスは McastServer、 McastClient とします。 全体では次のような流れになります。
マルチキャストでのソケットはTCP/UDPでのソケットと区別してマルチキャスト・ソケットと呼びます。 自分に割り振られたIPアドレスは関係なく、特定のマルチキャスト専用のIPアドレスに、送受信するサーバもクライアントも全てが参加する形になります。 データを受信する複数のクライアント側で同一のポート番号を指定すれば、サーバがそのポート番号へデータを送信すると、 全クライアントに同じデータが送信されます。 マルチキャストではUDPで送信しますから、前回のデータグラム・パケットを利用します。 Javaのプログラムではデータグラム・パケット関連は、次のクラスとして用意されています。 MulticastSocketクラスはマルチキャスト・ソケットを作成し、 DatagramPacketクラスで送受信用のデータグラム・パケットを作成します。