(57)【要約】【課題】ユニキャスト送受信データをマルチキャスト送受信データに変換する通信装置を介した配信では送信端末、受信端末とＩＰマルチキャスト通信装置とが非対称的であり、配信ネットワークが固定的な為ＩＰマルチキャスト通信装置が単一障害点となっていた。【解決手段】複数のコンピュータが通信接続され、且つマルチキャスト可能なローカルグループ１４、１５を含むネットワーク上において、コンピュータの幾つか或いは全てにＰ２Ｐ通信手段を備えてＰ２Ｐ通信装置とし、Ｐ２Ｐ通信装置間でＰ２Ｐネットワークを確立し、コンテンツの検索と配信を行うステムであり、Ｐ２Ｐ通信手段にはＩＰマルチキャスト通信手段、ＩＰユニキャスト通信手段、ネットワーク制御手段、ノード情報キャッシュ、コンテンツ情報キャッシュ、コンテンツキャッシュ、Ｐ２Ｐルータ手段を含む。【選択図】      図１
2005109539.tif 000002
【特許請求の範囲】
【請求項１】
複数のコンピュータが通信接続されたネットワークで、且つマルチキャスト可能なサブネットワークを含むネットワーク上において、
前記コンピュータの複数台或いは全てにＰ２Ｐ通信手段を備えＰ２Ｐ通信装置として動作し、Ｐ２Ｐ通信装置間でＰ２Ｐネットワークを確立し、コンテンツの検索と配信を行うシステムであって、
前記Ｐ２Ｐ通信手段には、ＩＰマルチキャスト通信手段、ＩＰユニキャスト通信手段、ネットワーク制御手段、Ｐ２Ｐネットワークのノード情報を記憶するノード情報キャッシュ、コンテンツ識別とそれを所持するＰ２Ｐ通信装置の指定を記憶するコンテンツ情報キャッシュ、コンテンツキャッシュを含み、
前記ノード情報キャッシュには、自装置がマルチキャスト可能なサブネットワークに属しマルチキャスト可か否の情報と、Ｐ２Ｐネットワークを確立するために最初に起動される初期ノードのＩＰユニキャストアドレス情報とが初期設定され、
前記ネットワーク制御手段は、
Ｐ２Ｐネットワークへの参加要求が発生した要求元Ｐ２Ｐ通信装置では、前記マルチキャスト可であればノード発見要求をマルチキャストし、これへの応答がないとき或いはマルチキャスト不可であれば、初期ノードに対しノード情報要求をユニキャストし、
ノード発見要求を受信したＰ２Ｐ通信装置では、既にＰ２Ｐネットワークのノード情報を記憶していれば、送信元のＩＰユニキャストアドレスをノード情報に追加し、ノード情報をマルチキャストで応答し、
初期ノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると要求元ＩＰユニキャストアドレスを自装置のノード情報キャッシュに追加し、これを要求元へ応答し、
前記要求元のＰ２Ｐ通信装置では受信したノード情報をノード情報キャッシュに記憶し、ノード発見要求に対する応答元ノードを上位ノードとしノード情報キャッシュに記憶するノード情報取得制御手段を有することを特徴とするコンテンツの検索と配信を行うシステム。
【請求項２】
前記Ｐ２Ｐ通信装置のネットワーク制御手段は、
コンテンツ検索要求が発生した要求元のＰ２Ｐ通信装置では、ＩＰマルチキャストグループに対して、コンテンツ検索要求を自身のＩＰユニキャストアドレス情報と共にマルチキャストし、
マルチキャストされたコンテンツ検索要求を受信したＰ２Ｐ通信装置では、要求されたコンテンツを所持していれば、コンテンツ識別とＩＰユニキャストアドレスを含むコンテンツ検索結果情報を送信元のＰ２Ｐ通信装置に応答し、更に他のＩＰマルチキャストグループの上位ノードに対して自身のＩＰユニキャストアドレスを付加し、コンテンツ検索要求をリピートして送信させ、
要求を受け取った上位ノードのＰ２Ｐ通信装置では、前記他のＩＰマルチキャストグループに対してＩＰマルチキャストでコンテンツ検索要求をリピートし、要求されたコンテンツを所持するノードより受信した検索結果情報をコンテンツ情報キャッシュに記憶すると共に、これを、付加されたＩＰユニキャストアドレス経路を逆に辿って、コンテンツ検索要求を送信したＰ２Ｐ通信装置に返信し、
前記要求元のＰ２Ｐ通信装置では、検索要求をマルチキャスト送信したグループのノードからの検索結果情報、リピートされた要求を受信したノードからの検索結果情報をそれぞれ受信しコンテンツ情報キャッシュに記憶する
コンテンツ検索制御手段も有することを特徴とする請求項１記載のコンテンツの検索と配信を行うシステム。
【請求項３】
Ｐ２Ｐ通信装置のネットワーク制御手段は、
コンテンツ検索要求が発生した要求元のＰ２Ｐ通信装置では、ＩＰマルチキャストグループに対して、コンテンツ検索要求を自身のＩＰユニキャストアドレス情報と共にマルチキャストし、
マルチキャストされたコンテンツ検索要求を受信したＰ２Ｐ通信装置では、要求されたコンテンツを配信中であれば、ＩＰマルチキャストアドレスとポート番号を含めて応答し、前記要求元のＰ２Ｐ通信装置では、前記応答を受信すると、それらで指定されたＩＰマルチキャストグループに参加しすぐにコンテンツを受信することを特徴とする請求項２記載のコンテンツの検索と配信を行うシステム。
【請求項４】
Ｐ２Ｐ通信装置のネットワーク制御手段は、
コンテンツの配信要求が発生した要求元のＰ２Ｐ通信装置では、コンテンツ情報キャッシュを調べ、指示されたコンテンツを所持するＰ２Ｐ通信装置が自装置が属するＩＰマルチキャストネットワーク内に存在すれば、コンテンツを所持するＰ２Ｐ通信装置に対してコンテンツ配信要求をユニキャストし、
要求を受け取ったＰ２Ｐ通信装置では、指定されたＩＰマルチキャストアドレスおよびポート番号に対してコンテンツを配信し、
前記要求元のＰ２Ｐ通信装置では、コンテンツを所持するＰ２Ｐ通信装置がＩＰマルチキャストネットワーク内に存在しない場合は上位ノードに対してコンテンツ配信要求をユニキャストし、
上位ノードのＰ２Ｐ通信装置では、コンテンツ配信要求をコンテンツを所持する装置までリピートし、コンテンツを中継して配信を行ない、
前記要求元のＰ２Ｐ通信装置では、受信するコンテンツをキャッシュに記憶する
コンテンツ配信制御手段も有することを特徴とする請求項２、又は３記載のコンテンツの検索と配信を行うシステム。
【請求項５】
前記Ｐ２Ｐ通信手段には、コンテンツ検索応答やコンテンツを一時記憶し、それぞれが直接通信接続出来ないサブネットワーク間のデータを中継するＰ２Ｐルータ手段も含み、
前記ノード情報キャッシュには、初期ノード情報の他に、前記Ｐ２Ｐルータ手段が動作しＰ２Ｐルータ装置として働くノードのＩＰユニキャストアドレス情報も設定され、
前記Ｐ２Ｐルータ手段は、各サブネットワークのノードから送られるＩＰユニキャストパケットを一定時間保持し、各サブネットワークのノード情報要求を受信時に、相手方のサブネットワークから受信した情報を転送し、
ネットワーク制御手段のノード情報取得制御手段は、Ｐ２Ｐネットワークへの参加要求が発生した要求元Ｐ２Ｐ通信装置では、マルチキャストが不可、或いはマルチキャストしたノード発見要求に対する応答がない場合には、Ｐ２Ｐ初期ノード及びＰ２Ｐルータノードにノード情報要求をユニキャストし、
初期ノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると要求元ＩＰユニキャストアドレスを自装置のノード情報キャッシュに追加し、これを要求元へ応答し、
Ｐ２ＰルータノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると相手方のサブネットワークから受信し保持しているノード情報を要求元に転送し、
前記要求元のＰ２Ｐ通信装置では受信したノード情報をノード情報キャッシュに記憶し、応答のあったＰ２Ｐ通信装置の内からランダムに決定した上位ノード情報をノード情報キャッシュに記憶することを特徴とする請求項４記載のコンテンツの検索と配信を行うシステム。
【請求項６】
複数のコンピュータが通信接続されたネットワークで、且つマルチキャスト可能なサブネットワークを含むネットワーク上において、
前記コンピュータの複数台或いは全てにＰ２Ｐ通信手順を備えＰ２Ｐ通信装置として動作し、Ｐ２Ｐ通信装置間でＰ２Ｐネットワークを確立し、コンテンツの検索と配信を行う方法であって、
前記Ｐ２Ｐ通信手順には、ＩＰマルチキャスト通信手順、ＩＰユニキャスト通信手順、ネットワーク制御手順、Ｐ２Ｐネットワークのノード情報を記憶するノード情報記憶手順、コンテンツ識別とそれを所持するＰ２Ｐ通信装置の指定を記憶するコンテンツ情報記憶手順、コンテンツ記憶手順を含み、
前記ノード情報記憶手順には、自装置がマルチキャスト可能なサブネットワークに属しマルチキャスト可か否の情報と、Ｐ２Ｐネットワークを確立するために最初に起動される初期ノードのＩＰユニキャストアドレス情報とを初期記憶する手順を含み、
前記ネットワーク制御手順は、
Ｐ２Ｐネットワークへの参加要求が発生した要求元Ｐ２Ｐ通信装置では、前記マルチキャスト可であればノード発見要求をマルチキャストし、これへの応答がないとき或いはマルチキャスト不可であれば、初期ノードに対しノード情報要求をユニキャストし、
ノード発見要求を受信したＰ２Ｐ通信装置では、既にＰ２Ｐネットワークのノード情報を記憶していれば、送信元のＩＰユニキャストアドレスをノード情報へ追加する様指示し、ノード情報をマルチキャストで応答し、
初期ノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると要求元ＩＰユニキャストアドレスを自装置のノード情報に追加する様指示し、これの要求元への応答送信を指示し、
前記要求元のＰ２Ｐ通信装置では受信したノード情報の記憶を指示し、ノード発見要求に対する応答元ノードを上位ノードとして記憶する様指示する
ノード情報取得制御手順を有することを特徴とするコンテンツの検索と配信を行う方法。
【請求項７】
前記Ｐ２Ｐ通信装置のネットワーク制御手順は、
コンテンツ検索要求が発生した要求元のＰ２Ｐ通信装置では、ＩＰマルチキャストグループに対して、コンテンツ検索要求を自身のＩＰユニキャストアドレス情報と共にマルチキャストし、
マルチキャストされたコンテンツ検索要求を受信したＰ２Ｐ通信装置では、要求されたコンテンツを所持していれば、コンテンツ識別とＩＰユニキャストアドレスを含むコンテンツ検索結果情報を送信元のＰ２Ｐ通信装置に応答し、更に他のＩＰマルチキャストグループの上位ノードに対して自身のＩＰユニキャストアドレスを付加し、コンテンツ検索要求をリピートして送信させ、
要求を受け取った上位ノードのＰ２Ｐ通信装置では、前記他のＩＰマルチキャストグループに対してＩＰマルチキャストでコンテンツ検索要求をリピートし、要求されたコンテンツを所持するノードより受信した検索結果情報の記憶を指示すると共に、これを前記付加されたＩＰユニキャストアドレス経路を逆に辿って、コンテンツ検索要求を送信したＰ２Ｐ通信装置に返信し、
前記要求元のＰ２Ｐ通信装置では、検索要求をマルチキャスト送信したグループのノードからの検索結果情報、リピートされた要求を受信したノードからの検索結果情報をそれぞれ受信しコンテンツ情報として記憶する様指示する
コンテンツ検索制御手順も有することを特徴とする請求項６記載のコンテンツの検索と配信を行う方法。
【請求項８】
Ｐ２Ｐ通信装置のネットワーク制御手順は、
コンテンツ検索要求が発生した要求元のＰ２Ｐ通信装置では、ＩＰマルチキャストグループに対して、コンテンツ検索要求を自身のＩＰユニキャストアドレス情報と共にマルチキャストし、
マルチキャストされたコンテンツ検索要求を受信したＰ２Ｐ通信装置では、要求されたコンテンツを配信中であれば、ＩＰマルチキャストアドレスとポート番号を含めて応答し、前記要求元のＰ２Ｐ通信装置では、前記応答を受信すると、それらで指定されたＩＰマルチキャストグループに参加しすぐにコンテンツを受信することを特徴とする請求項７記載のコンテンツの検索と配信を行う方法。
【請求項９】
Ｐ２Ｐ通信装置のネットワーク制御手順は、
コンテンツの配信要求が発生した要求元のＰ２Ｐ通信装置では、記憶しているコンテンツ情報を調べ、指示されたコンテンツを所持するＰ２Ｐ通信装置が自装置が属するＩＰマルチキャストネットワーク内に存在すれば、コンテンツを所持するＰ２Ｐ通信装置に対してコンテンツ配信要求をユニキャストし、
要求を受け取ったＰ２Ｐ通信装置では、指定されたＩＰマルチキャストアドレスおよびポート番号に対してコンテンツを配信し、
前記要求元のＰ２Ｐ通信装置では、コンテンツを所持するＰ２Ｐ通信装置がＩＰマルチキャストネットワーク内に存在しない場合は上位ノードに対してコンテンツ配信要求をユニキャストし、
上位ノードのＰ２Ｐ通信装置では、コンテンツ配信要求をコンテンツを所持する装置までリピートし、コンテンツを中継して配信を行ない、
前記要求元のＰ２Ｐ通信装置では、受信するコンテンツの記憶を指示する
コンテンツ配信制御手順も有することを特徴とする請求項７、又は８記載のコンテンツの検索と配信を行う方法。
【請求項１０】
前記Ｐ２Ｐ通信手順には、コンテンツ検索応答やコンテンツを一時記憶し、それぞれが直接通信接続出来ないサブネットワーク間のデータを中継するＰ２Ｐルータ手順も含み、
前記ノード情報記憶手順には、初期ノード情報の他に、前記Ｐ２Ｐルータ手順が動作しＰ２Ｐルータ装置として働くノードのＩＰユニキャストアドレス情報も初期記憶する手順を含み、
前記Ｐ２Ｐルータ手順は、各サブネットワークのノードから送られるＩＰユニキャストパケットを一定時間保持し、各サブネットワークのノード情報要求を受信時に、相手方のサブネットワークから受信した情報を転送し、
ネットワーク制御手順のノード情報取得制御手順は、Ｐ２Ｐネットワークへの参加要求が発生した要求元Ｐ２Ｐ通信装置では、マルチキャストが不可、或いはマルチキャストしたノード発見要求に対する応答がない場合には、Ｐ２Ｐ初期ノード及びＰ２Ｐルータノードにノード情報要求をユニキャストし、
初期ノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると要求元ＩＰユニキャストアドレスを自装置のノード情報に追加する様指示し、これを要求元へ応答し、
Ｐ２ＰルータノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると相手方のサブネットワークから受信し保持しているノード情報を要求元に転送し、
前記要求元のＰ２Ｐ通信装置では受信したノード情報の記憶を指示し、
応答のあったＰ２Ｐ通信装置の内からランダムに決定した上位ノード情報の記憶を指示することを特徴とする請求項９記載のコンテンツの検索と配信を行う方法。
【請求項１１】
ＩＰマルチキャスト通信手順と、ＩＰユニキャスト通信手順と、自装置がマルチキャスト可能なサブネットワークに属しマルチキャスト可か否の情報、Ｐ２Ｐネットワークを確立するために最初に起動される初期ノードのＩＰユニキャストアドレスとを予め記憶し、その後に受信するＰ２Ｐネットワークのノード情報を記憶するノード情報記憶手順と、コンテンツ識別とそれを所持するＰ２Ｐ通信装置の指定情報を記憶するコンテンツ情報記憶手順と、コンテンツ記憶手順と、
Ｐ２Ｐネットワークへの参加要求が発生したノード情報取得の要求元Ｐ２Ｐ通信装置では、前記マルチキャスト可であればノード発見要求の送信をマルチキャスト通信手順に指示し、これへの応答がないとき或いはマルチキャスト不可であれば、初期ノードに対しノード情報要求の送信をユニキャスト通信手順に指示し、
ノード発見要求を受信したＰ２Ｐ通信装置では、既にＰ２Ｐネットワークのノード情報を記憶していれば、送信元のＩＰユニキャストアドレスをノード情報に追加する様ノード情報記憶手順に指示し、ノード情報を応答送信をマルチキャスト通信手順に指示し、
初期ノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると要求元ＩＰユニキャストアドレスを自装置のノード情報に追加する様ノード情報記憶手順に指示し、ノード情報の応答送信を指示し、
前記要求元のＰ２Ｐ通信装置では受信したノード情報の記憶及び、ノード発見要求に対する応答元ノードを上位ノードに決めこれの記憶をノード情報記憶手順に指示する
ノード情報取得制御手順を含むネットワーク制御手順とを
コンピュータに実行させるためのプログラム。
【請求項１２】
請求項１１記載のプログラムであって、
ＩＰマルチキャスト通信手順と、ＩＰユニキャスト通信手順と、前記ノード情報記憶手順と、前記コンテンツ情報記憶手順と、コンテンツ記憶手順と、
コンテンツ検索要求が発生した要求元のＰ２Ｐ通信装置では、自装置の属するＩＰマルチキャストグループに対して、コンテンツ検索要求を自身のＩＰユニキャストアドレス情報と共にマルチキャストさせ、
マルチキャストされたコンテンツ検索要求を受信したＰ２Ｐ通信装置では、要求されたコンテンツを所持していれば、コンテンツ識別とＩＰユニキャストアドレスを含むコンテンツ検索結果情報を応答としてマルチキャストさせ、更に他のＩＰマルチキャストグループの上位ノードに対して自身のＩＰユニキャストアドレスを付加し、コンテンツ検索要求をユニキャスト通信手順にリピートして送信させ、
要求を受け取った上位ノードのＰ２Ｐ通信装置では、前記他のＩＰマルチキャストグループに対してコンテンツ検索要求をリピートし、要求されたコンテンツを所持するノードより受信した検索結果情報の記憶をコンテンツ情報記憶手順に指示すると共に、これを、付加されたＩＰユニキャストアドレス経路を逆に辿って、コンテンツ検索要求を送信したＰ２Ｐ通信装置に返信し、
前記要求元のＰ２Ｐ通信装置では、検索要求をマルチキャスト送信したグループのノードから受信した検索結果情報、リピートされた要求を受信したノードから受信した検索結果情報の記憶をコンテンツ情報記憶手順に指示する
コンテンツ検索制御手順
及び前記ノード情報取得制御手順を含むネットワーク制御手順とを
コンピュータに実行させるためのプログラム。
【請求項１３】
請求項１２記載のプログラムであって、前記マルチキャストされたコンテンツ検索要求を受信したＰ２Ｐ通信装置では、要求されたコンテンツを配信中であれば、ＩＰマルチキャストアドレスとポート番号を含めて応答し、要求元のＰ２Ｐ通信装置では、前記応答を受信すると、それらで指定されたＩＰマルチキャストグループに参加しすぐにコンテンツを受信する手順も含むネットワーク制御手順をコンピュータに実行させるためのプログラム。
【請求項１４】
請求項１２、又は１３記載のプログラムであって、
ＩＰマルチキャスト通信手順と、ＩＰユニキャスト通信手順と、自装置がマルチキャスト可能なサブネットワークに属しマルチキャスト可か否の情報、Ｐ２Ｐネットワークを確立するために最初に起動される初期ノードのＩＰユニキャストアドレスとを予め記憶し、その後に受信するＰ２Ｐネットワークのノード情報を記憶するノード情報記憶手順と、コンテンツ識別とそれを所持するＰ２Ｐ通信装置の指定情報を一時記憶するコンテンツ情報記憶手順と、コンテンツ記憶手順と、
コンテンツの配信要求が発生した要求元のＰ２Ｐ通信装置では、コンテンツ情報キャッシュを調べ、指示されたコンテンツを所持するＰ２Ｐ通信装置が自装置が属するＩＰマルチキャストネットワーク内に存在すれば、コンテンツを所持するＰ２Ｐ通信装置に対してコンテンツ配信要求をユニキャストし、
要求を受け取ったＰ２Ｐ通信装置では、指定されたＩＰマルチキャストアドレスおよびポート番号に対してコンテンツを配信し、
前記要求元のＰ２Ｐ通信装置では、コンテンツを所持するＰ２Ｐ通信装置がＩＰマルチキャストネットワーク内に存在しない場合は上位ノードに対してコンテンツ配信要求をユニキャストし、
上位ノードのＰ２Ｐ通信装置では、コンテンツ配信要求をコンテンツを所持する装置までリピートし、コンテンツを中継して配信を行ない、
前記要求元のＰ２Ｐ通信装置では、受信するコンテンツの記憶をコンテンツ記憶手順に指示する
コンテンツ配信制御手順
、前記コンテンツ検索制御手順及び前記ノード情報取得制御手順を含むネットワーク制御手順とをコンピュータに実行させるためのプログラム。
【請求項１５】
請求項１４記載のプログラムであって、
ＩＰマルチキャスト通信手順と、ＩＰユニキャスト通信手順と、
各サブネットワークのノードから送られるＩＰユニキャストパケットを一定時間保持し、各サブネットワークのノード情報要求を受信時に、相手方のサブネットワークから受信した情報を転送し、それぞれが直接通信接続出来ないサブネットワーク間のデータを中継するＰ２Ｐルータ手順と、
自装置がマルチキャスト可能なサブネットワークに属しマルチキャスト可か否の情報、Ｐ２Ｐネットワークを確立するために最初に起動される初期ノードのＩＰユニキャストアドレス、前記Ｐ２Ｐルータ手順が動作しＰ２Ｐルータ装置として働くノードのＩＰユニキャストアドレス情報とを予め記憶し、その後に受信するＰ２Ｐネットワークのノード情報を記憶するノード情報記憶手順と、コンテンツ識別とそれを所持するＰ２Ｐ通信装置の指定情報を一時記憶するコンテンツ情報記憶手順と、コンテンツ記憶手順と
Ｐ２Ｐネットワークへの参加要求が発生した要求元Ｐ２Ｐ通信装置では、マルチキャストが不可、或いはマルチキャストしたノード発見要求に対する応答がない場合には、Ｐ２Ｐ初期ノード及びＰ２Ｐルータノードにノード情報要求をユニキャストし、
初期ノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると要求元ＩＰユニキャストアドレスを自装置のノード情報に記憶する様指示し、これの要求元への応答送信を指示し、
Ｐ２ＰルータノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると相手方のサブネットワークから受信し保持しているノード情報の要求元への転送を指示し、
前記要求元のＰ２Ｐ通信装置では受信したノード情報の記憶を指示し、
応答のあったＰ２Ｐ通信装置の内からランダムに決定した上位ノード情報の記憶を指示する
ノード情報取得制御手順を含むネットワーク制御手順とをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンテンツの検索と配信を行うシステムと方法、及びプログラムに関し、特にインターネット等のネットワーク上のコンピュータにＰ２Ｐ通信手段を備えＰ２Ｐ通信装置とし、Ｐ２Ｐ通信装置間で仮想的なネットワークを構成し、Ｐ２Ｐネットワーク上でコンテンツの検索と配信を行うシステムと方法、及びプログラムに関する。
【背景技術】
【０００２】
ＩＰマルチキャスト技術は同一コンテンツを多くの端末に配信する場合に、１つのコンテンツ配信端末から出されたパケットをパケット受信端末全てが受け取れることからストリーミングコンテンツなどの配信手段として期待される技術である。
【０００３】
しかし、インターネットは依然として多くがＩＰユニキャストルータで構成されており、エンドツーエンドでのＩＰマルチキャストによる配信は現実的でない。
【０００４】
これを解決するため、ＩＰマルチキャストパケットとＩＰユニキャストパケットを変換し、転送することで動作するＩＰマルチキャスト通信装置が提案されている（特許文献１参照。）。
【０００５】
【特許文献１】特開２００２−１８５５２８号公報（第１ページ）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、この従来技術には、次のような問題点があった。第１の問題点は、送信端末、受信端末とＩＰマルチキャスト通信装置とが非対称的である。配信ネットワークが固定的なため、ＩＰマルチキャスト通信装置が単一障害点となる。
【０００７】
第２の問題点は、配信経路が自動構成されず、全ての端末がＩＰマルチキャスト通信装置のアドレスを明示的に意識する必要がある。
【０００８】
第３の問題点は、コンテンツＩＤがＩＰマルチキャストアドレスとポート番号で構成されるため、配信ネットワーク上で存在可能なコンテンツ数に制限がある。
【課題を解決するための手段】
【０００９】
本発明の第１のコンテンツの検索と配信を行うシステムは、複数のコンピュータが通信接続されたネットワークで、且つマルチキャスト可能なサブネットワークを含むネットワーク上において、前記コンピュータの複数台或いは全てにＰ２Ｐ通信手段を備えＰ２Ｐ通信装置として動作し、Ｐ２Ｐ通信装置間でＰ２Ｐネットワークを確立し、コンテンツの検索と配信を行うシステムであって、前記Ｐ２Ｐ通信手段には、ＩＰマルチキャスト通信手段、ＩＰユニキャスト通信手段、ネットワーク制御手段、Ｐ２Ｐネットワークのノード情報を記憶するノード情報キャッシュ、コンテンツ識別とそれを所持するＰ２Ｐ通信装置の指定を記憶するコンテンツ情報キャッシュ、コンテンツキャッシュを含み、前記ノード情報キャッシュには、自装置がマルチキャスト可能なサブネットワークに属しマルチキャスト可か否の情報と、Ｐ２Ｐネットワークを確立するために最初に起動される初期ノードのＩＰユニキャストアドレス情報とが初期設定され、前記ネットワーク制御手段は、Ｐ２Ｐネットワークへの参加要求が発生した要求元Ｐ２Ｐ通信装置では、前記マルチキャスト可であればノード発見要求をマルチキャストし、これへの応答がないとき或いはマルチキャスト不可であれば、初期ノードに対しノード情報要求をユニキャストし、ノード発見要求を受信したＰ２Ｐ通信装置では、既にＰ２Ｐネットワークのノード情報を記憶していれば、送信元のＩＰユニキャストアドレスをノード情報に追加し、ノード情報をマルチキャストで応答し、初期ノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると要求元ＩＰユニキャストアドレスを自装置のノード情報キャッシュに追加し、これを要求元へ応答し、前記要求元のＰ２Ｐ通信装置では受信したノード情報をノード情報キャッシュに記憶し、ノード発見要求に対する応答元ノードを上位ノードとしノード情報キャッシュに記憶するノード情報取得制御手段を有することを特徴とする。
【００１０】
本発明の第２のコンテンツの検索と配信を行うシステムは、前記第１のコンテンツの検索と配信を行うシステムであって、前記Ｐ２Ｐ通信装置のネットワーク制御手段は、コンテンツ検索要求が発生した要求元のＰ２Ｐ通信装置では、ＩＰマルチキャストグループに対して、コンテンツ検索要求を自身のＩＰユニキャストアドレス情報と共にマルチキャストし、マルチキャストされたコンテンツ検索要求を受信したＰ２Ｐ通信装置では、要求されたコンテンツを所持していれば、コンテンツ識別とＩＰユニキャストアドレスを含むコンテンツ検索結果情報を送信元のＰ２Ｐ通信装置に応答し、更に他のＩＰマルチキャストグループの上位ノードに対して自身のＩＰユニキャストアドレスを付加し、コンテンツ検索要求をリピートして送信させ、要求を受け取った上位ノードのＰ２Ｐ通信装置では、前記他のＩＰマルチキャストグループに対してＩＰマルチキャストでコンテンツ検索要求をリピートし、要求されたコンテンツを所持するノードより受信した検索結果情報をコンテンツ情報キャッシュに記憶すると共に、これを前記付加されたＩＰユニキャストアドレス経路を逆に辿って、コンテンツ検索要求を送信したＰ２Ｐ通信装置に返信し、前記要求元のＰ２Ｐ通信装置では、検索要求をマルチキャスト送信したグループのノードからの検索結果情報、リピートされた要求を受信したノードからの検索結果情報をそれぞれ受信しコンテンツ情報キャッシュに記憶するコンテンツ検索制御手段も有することを特徴とする。
【００１１】
本発明の第３のコンテンツの検索と配信を行うシステムは、前記第２のコンテンツの検索と配信を行うシステムであって、Ｐ２Ｐ通信装置のネットワーク制御手段は、コンテンツ検索要求が発生した要求元のＰ２Ｐ通信装置では、ＩＰマルチキャストグループに対して、コンテンツ検索要求を自身のＩＰユニキャストアドレス情報と共にマルチキャストし、マルチキャストされたコンテンツ検索要求を受信したＰ２Ｐ通信装置では、要求されたコンテンツを配信中であれば、ＩＰマルチキャストアドレスとポート番号を含めて応答し、前記要求元のＰ２Ｐ通信装置では、前記応答を受信すると、それらで指定されたＩＰマルチキャストグループに参加しすぐにコンテンツを受信することを特徴とする。
【００１２】
本発明の第４のコンテンツの検索と配信を行うシステムは、前記第２、又は第３のコンテンツの検索と配信を行うシステムであって、Ｐ２Ｐ通信装置のネットワーク制御手段は、コンテンツの配信要求が発生した要求元のＰ２Ｐ通信装置では、コンテンツ情報キャッシュを調べ、指示されたコンテンツを所持するＰ２Ｐ通信装置が自装置が属するＩＰマルチキャストネットワーク内に存在すれば、コンテンツを所持するＰ２Ｐ通信装置に対してコンテンツ配信要求をユニキャストし、要求を受け取ったＰ２Ｐ通信装置では、指定されたＩＰマルチキャストアドレスおよびポート番号に対してコンテンツを配信し、前記要求元のＰ２Ｐ通信装置では、コンテンツを所持するＰ２Ｐ通信装置がＩＰマルチキャストネットワーク内に存在しない場合は上位ノードに対してコンテンツ配信要求をユニキャストし、上位ノードのＰ２Ｐ通信装置では、コンテンツ配信要求をコンテンツを所持する装置までリピートし、コンテンツを中継して配信を行ない、前記要求元のＰ２Ｐ通信装置では、受信するコンテンツをキャッシュに記憶するコンテンツ配信制御手段も有することを特徴とする。
【００１３】
本発明の第５のコンテンツの検索と配信を行うシステムは、前記第４のコンテンツの検索と配信を行うシステムであって、前記Ｐ２Ｐ通信手段には、コンテンツ検索応答やコンテンツを一時記憶し、それぞれが直接通信接続出来ないサブネットワーク間のデータを中継するＰ２Ｐルータ手段も含み、前記ノード情報キャッシュには、初期ノード情報の他に、前記Ｐ２Ｐルータ手段が動作しＰ２Ｐルータ装置として働くノードのＩＰユニキャストアドレス情報も設定され、前記Ｐ２Ｐルータ手段は、各サブネットワークのノードから送られるＩＰユニキャストパケットを一定時間保持し、各サブネットワークのノード情報要求を受信時に、相手方のサブネットワークから受信した情報を転送し、ネットワーク制御手段のノード情報取得制御手段は、Ｐ２Ｐネットワークへの参加要求が発生した要求元Ｐ２Ｐ通信装置では、マルチキャストが不可、或いはマルチキャストしたノード発見要求に対する応答がない場合には、Ｐ２Ｐ初期ノード及びＰ２Ｐルータノードにノード情報要求をユニキャストし、初期ノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると要求元ＩＰユニキャストアドレスを自装置のノード情報キャッシュに追加し、これを要求元へ応答し、Ｐ２ＰルータノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると相手方のサブネットワークから受信し保持しているノード情報を要求元に転送し、前記要求元のＰ２Ｐ通信装置では受信したノード情報をノード情報キャッシュに記憶し、応答のあったＰ２Ｐ通信装置の内からランダムに決定した上位ノード情報をノード情報キャッシュに記憶することを特徴とする。
【００１４】
本発明の第１のコンテンツの検索と配信を行う方法は、複数のコンピュータが通信接続されたネットワークで、且つマルチキャスト可能なサブネットワークを含むネットワーク上において、前記コンピュータの複数台或いは全てにＰ２Ｐ通信手順を備えＰ２Ｐ通信装置として動作し、Ｐ２Ｐ通信装置間でＰ２Ｐネットワークを確立し、コンテンツの検索と配信を行う方法であって、前記Ｐ２Ｐ通信手順には、ＩＰマルチキャスト通信手順、ＩＰユニキャスト通信手順、ネットワーク制御手順、Ｐ２Ｐネットワークのノード情報を記憶するノード情報記憶手順、コンテンツ識別とそれを所持するＰ２Ｐ通信装置の指定を記憶するコンテンツ情報記憶手順、コンテンツ記憶手順を含み、前記ノード情報記憶手順には、自装置がマルチキャスト可能なサブネットワークに属しマルチキャスト可か否の情報と、Ｐ２Ｐネットワークを確立するために最初に起動される初期ノードのＩＰユニキャストアドレス情報とを初期記憶する手順を含み、前記ネットワーク制御手順は、Ｐ２Ｐネットワークへの参加要求が発生した要求元Ｐ２Ｐ通信装置では、前記マルチキャスト可であればノード発見要求をマルチキャストし、これへの応答がないとき或いはマルチキャスト不可であれば、初期ノードに対しノード情報要求をユニキャストし、ノード発見要求を受信したＰ２Ｐ通信装置では、既にＰ２Ｐネットワークのノード情報を記憶していれば、送信元のＩＰユニキャストアドレスをノード情報へ追加する様指示し、ノード情報をマルチキャストで応答し、初期ノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると要求元ＩＰユニキャストアドレスを自装置のノード情報に追加する様指示し、これの要求元への応答送信を指示し、前記要求元のＰ２Ｐ通信装置では受信したノード情報の記憶を指示し、ノード発見要求に対する応答元ノードを上位ノードとして記憶する様指示するノード情報取得制御手順を有することを特徴とする。
【００１５】
本発明の第２のコンテンツの検索と配信を行う方法は、前記第１のコンテンツの検索と配信を行う方法であって、前記Ｐ２Ｐ通信装置のネットワーク制御手順は、コンテンツ検索要求が発生した要求元のＰ２Ｐ通信装置では、ＩＰマルチキャストグループに対して、コンテンツ検索要求を自身のＩＰユニキャストアドレス情報と共にマルチキャストし、マルチキャストされたコンテンツ検索要求を受信したＰ２Ｐ通信装置では、要求されたコンテンツを所持していれば、コンテンツ識別とＩＰユニキャストアドレスを含むコンテンツ検索結果情報を送信元のＰ２Ｐ通信装置に応答し、更に他のＩＰマルチキャストグループの上位ノードに対して自身のＩＰユニキャストアドレスを付加し、コンテンツ検索要求をリピートして送信させ、要求を受け取った上位ノードのＰ２Ｐ通信装置では、前記他のＩＰマルチキャストグループに対してＩＰマルチキャストでコンテンツ検索要求をリピートし、要求されたコンテンツを所持するノードより受信した検索結果情報の記憶を指示すると共に、これを、付加されたＩＰユニキャストアドレス経路を逆に辿って、コンテンツ検索要求を送信したＰ２Ｐ通信装置に返信し、前記要求元のＰ２Ｐ通信装置では、検索要求をマルチキャスト送信したグループのノードからの検索結果情報、リピートされた要求を受信したノードからの検索結果情報をそれぞれ受信しコンテンツ情報として記憶する様指示するコンテンツ検索制御手順も有することを特徴とする。
【００１６】
本発明の第３のコンテンツの検索と配信を行う方法は、前記第２のコンテンツの検索と配信を行う方法であって、Ｐ２Ｐ通信装置のネットワーク制御手順は、コンテンツ検索要求が発生した要求元のＰ２Ｐ通信装置では、ＩＰマルチキャストグループに対して、コンテンツ検索要求を自身のＩＰユニキャストアドレス情報と共にマルチキャストし、マルチキャストされたコンテンツ検索要求を受信したＰ２Ｐ通信装置では、要求されたコンテンツを配信中であれば、ＩＰマルチキャストアドレスとポート番号を含めて応答し、前記要求元のＰ２Ｐ通信装置では、前記応答を受信すると、それらで指定されたＩＰマルチキャストグループに参加しすぐにコンテンツを受信することを特徴とする。
【００１７】
本発明の第４のコンテンツの検索と配信を行う方法は、前記第２、又は第３のコンテンツの検索と配信を行う方法であって、Ｐ２Ｐ通信装置のネットワーク制御手順は、コンテンツの配信要求が発生した要求元のＰ２Ｐ通信装置では、記憶しているコンテンツ情報を調べ、指示されたコンテンツを所持するＰ２Ｐ通信装置が自装置が属するＩＰマルチキャストネットワーク内に存在すれば、コンテンツを所持するＰ２Ｐ通信装置に対してコンテンツ配信要求をユニキャストし、要求を受け取ったＰ２Ｐ通信装置では、指定されたＩＰマルチキャストアドレスおよびポート番号に対してコンテンツを配信し、前記要求元のＰ２Ｐ通信装置では、コンテンツを所持するＰ２Ｐ通信装置がＩＰマルチキャストネットワーク内に存在しない場合は上位ノードに対してコンテンツ配信要求をユニキャストし、上位ノードのＰ２Ｐ通信装置では、コンテンツ配信要求をコンテンツを所持する装置までリピートし、コンテンツを中継して配信を行ない、前記要求元のＰ２Ｐ通信装置では、受信するコンテンツの記憶を指示するコンテンツ配信制御手順も有することを特徴とする。
【００１８】
本発明の第５のコンテンツの検索と配信を行う方法は、前記第４のコンテンツの検索と配信を行う方法であって、前記Ｐ２Ｐ通信手順には、コンテンツ検索応答やコンテンツを一時記憶し、それぞれが直接通信接続出来ないサブネットワーク間のデータを中継するＰ２Ｐルータ手順も含み、前記ノード情報記憶手順には、初期ノード情報の他に、前記Ｐ２Ｐルータ手順が動作しＰ２Ｐルータ装置として働くノードのＩＰユニキャストアドレス情報も初期記憶する手順を含み、前記Ｐ２Ｐルータ手順は、各サブネットワークのノードから送られるＩＰユニキャストパケットを一定時間保持し、各サブネットワークのノード情報要求を受信時に、相手方のサブネットワークから受信した情報を転送し、ネットワーク制御手順のノード情報取得制御手順は、Ｐ２Ｐネットワークへの参加要求が発生した要求元Ｐ２Ｐ通信装置では、マルチキャストが不可、或いはマルチキャストしたノード発見要求に対する応答がない場合には、Ｐ２Ｐ初期ノード及びＰ２Ｐルータノードにノード情報要求をユニキャストし、初期ノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると要求元ＩＰユニキャストアドレスを自装置のノード情報に追加する様指示し、これを要求元へ応答し、Ｐ２ＰルータノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると相手方のサブネットワークから受信し保持しているノード情報を要求元に転送し、前記要求元のＰ２Ｐ通信装置では受信したノード情報の記憶を指示し、応答のあったＰ２Ｐ通信装置の内からランダムに決定した上位ノード情報の記憶を指示することを特徴とする。
【００１９】
本発明の第１のプログラムは、ＩＰマルチキャスト通信手順と、ＩＰユニキャスト通信手順と、自装置がマルチキャスト可能なサブネットワークに属しマルチキャスト可か否の情報、Ｐ２Ｐネットワークを確立するために最初に起動される初期ノードのＩＰユニキャストアドレスとを予め記憶し、その後に受信するＰ２Ｐネットワークのノード情報を記憶するノード情報記憶手順と、コンテンツ識別とそれを所持するＰ２Ｐ通信装置の指定情報を一時記憶するコンテンツ情報記憶手順と、コンテンツ記憶手順と、Ｐ２Ｐネットワークへの参加要求が発生したノード情報取得の要求元Ｐ２Ｐ通信装置では、前記マルチキャスト可であればノード発見要求の送信をマルチキャスト通信手順に指示し、これへの応答がないとき或いはマルチキャスト不可であれば、初期ノードに対しノード情報要求の送信をユニキャスト通信手順に指示し、ノード発見要求を受信したＰ２Ｐ通信装置では、既にＰ２Ｐネットワークのノード情報を記憶していれば、送信元のＩＰユニキャストアドレスをノード情報に追加する様ノード情報記憶手順に指示し、ノード情報を応答送信をマルチキャスト通信手順に指示し、初期ノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると要求元ＩＰユニキャストアドレスを自装置のノード情報に追加する様ノード情報記憶手順に指示し、ノード情報の応答送信を指示し、前記要求元のＰ２Ｐ通信装置では受信したノード情報の記憶及び、ノード発見要求に対する応答元ノードを上位ノードに決めこれの記憶をノード情報記憶手順に指示するノード情報取得制御手順を含むネットワーク制御手順とをコンピュータに実行させることを特徴とする。
【００２０】
本発明の第２のプログラムは、前記第１のプログラムであって、ＩＰマルチキャスト通信手順と、ＩＰユニキャスト通信手順と、前記ノード情報記憶手順と、前記コンテンツ情報記憶手順と、コンテンツ記憶手順と、コンテンツ検索要求が発生した要求元のＰ２Ｐ通信装置では、自装置の属するＩＰマルチキャストグループに対して、コンテンツ検索要求を自身のＩＰユニキャストアドレス情報と共にマルチキャストさせ、マルチキャストされたコンテンツ検索要求を受信したＰ２Ｐ通信装置では、要求されたコンテンツを所持していれば、コンテンツ識別とＩＰユニキャストアドレスを含むコンテンツ検索結果情報を応答としてマルチキャストさせ、更に他のＩＰマルチキャストグループの上位ノードに対して自身のＩＰユニキャストアドレスを付加し、コンテンツ検索要求をリピートして送信させ、要求を受け取った上位ノードのＰ２Ｐ通信装置では、前記他のＩＰマルチキャストグループに対してＩＰマルチキャストでコンテンツ検索要求をリピートし、要求されたコンテンツを所持するノードより受信した検索結果情報の記憶をコンテンツ情報記憶手順に指示すると共に、これを、付加されたＩＰユニキャストアドレス経路を逆に辿って、コンテンツ検索要求を送信したＰ２Ｐ通信装置に返信し、前記要求元のＰ２Ｐ通信装置では、検索要求をマルチキャスト送信したグループのノードから受信した検索結果情報、リピートされた要求を受信したノードから受信した検索結果情報の記憶をコンテンツ情報記憶手順に指示するコンテンツ検索制御手順及び前記ノード情報取得制御手順を含むネットワーク制御手順とをコンピュータに実行させることを特徴とする。
【００２１】
本発明の第３のプログラムは、前記第２のプログラムであって、前記マルチキャストされたコンテンツ検索要求を受信したＰ２Ｐ通信装置では、要求されたコンテンツを配信中であれば、ＩＰマルチキャストアドレスとポート番号を含めて応答し、要求元のＰ２Ｐ通信装置では、前記応答を受信すると、それらで指定されたＩＰマルチキャストグループに参加しすぐにコンテンツを受信する手順も含むネットワーク制御手順をコンピュータに実行させることを特徴とする。
【００２２】
本発明の第４のプログラムは、前記第２、又は第３のプログラムであって、ＩＰマルチキャスト通信手順と、ＩＰユニキャスト通信手順と、自装置がマルチキャスト可能なサブネットワークに属しマルチキャスト可か否の情報、Ｐ２Ｐネットワークを確立するために最初に起動される初期ノードのＩＰユニキャストアドレスとを予め記憶し、その後に受信するＰ２Ｐネットワークのノード情報を記憶するノード情報記憶手順と、コンテンツ識別とそれを所持するＰ２Ｐ通信装置の指定情報を一時記憶するコンテンツ情報記憶手順と、コンテンツ記憶手順と、コンテンツの配信要求が発生した要求元のＰ２Ｐ通信装置では、コンテンツ情報キャッシュを調べ、指示されたコンテンツを所持するＰ２Ｐ通信装置が自装置が属するＩＰマルチキャストネットワーク内に存在すれば、コンテンツを所持するＰ２Ｐ通信装置に対してコンテンツ配信要求をユニキャストし、要求を受け取ったＰ２Ｐ通信装置では、指定されたＩＰマルチキャストアドレスおよびポート番号に対してコンテンツを配信し、前記要求元のＰ２Ｐ通信装置では、コンテンツを所持するＰ２Ｐ通信装置がＩＰマルチキャストネットワーク内に存在しない場合は上位ノードに対してコンテンツ配信要求をユニキャストし、上位ノードのＰ２Ｐ通信装置では、コンテンツ配信要求をコンテンツを所持する装置までリピートし、コンテンツを中継して配信を行ない、前記要求元のＰ２Ｐ通信装置では、受信するコンテンツの記憶をコンテンツ記憶手順に指示するコンテンツ配信制御手順、前記コンテンツ検索制御手順及び前記ノード情報取得制御手順を含むネットワーク制御手順とをコンピュータに実行させることを特徴とする。
【００２３】
本発明の第５のプログラムは、前記第４のプログラムであって、ＩＰマルチキャスト通信手順と、ＩＰユニキャスト通信手順と、各サブネットワークのノードから送られるＩＰユニキャストパケットを一定時間保持し、各サブネットワークのノード情報要求を受信時に、相手方のサブネットワークから受信した情報を転送し、それぞれが直接通信接続出来ないサブネットワーク間のデータを中継するＰ２Ｐルータ手順と、自装置がマルチキャスト可能なサブネットワークに属しマルチキャスト可か否の情報、Ｐ２Ｐネットワークを確立するために最初に起動される初期ノードのＩＰユニキャストアドレス、前記Ｐ２Ｐルータ手順が動作しＰ２Ｐルータ装置として働くノードのＩＰユニキャストアドレス情報とを予め記憶し、その後に受信するＰ２Ｐネットワークのノード情報を記憶するノード情報記憶手順と、コンテンツ識別とそれを所持するＰ２Ｐ通信装置の指定情報を一時記憶するコンテンツ情報記憶手順と、コンテンツ記憶手順とＰ２Ｐネットワークへの参加要求が発生した要求元Ｐ２Ｐ通信装置では、マルチキャストが不可、或いはマルチキャストしたノード発見要求に対する応答がない場合には、Ｐ２Ｐ初期ノード及びＰ２Ｐルータノードにノード情報要求をユニキャストし、初期ノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると要求元ＩＰユニキャストアドレスを自装置のノード情報に記憶する様指示し、これの要求元への応答送信を指示し、Ｐ２ＰルータノードのＰ２Ｐ通信装置では、ノード情報要求を受信すると相手方のサブネットワークから受信し保持しているノード情報の要求元への転送を指示し、前記要求元のＰ２Ｐ通信装置では受信したノード情報の記憶を指示し、応答のあったＰ２Ｐ通信装置の内からランダムに決定した上位ノード情報の記憶を指示するノード情報取得制御手順を含むネットワーク制御手順とをコンピュータに実行させることを特徴とする。
【発明の効果】
【００２４】
本発明のコンテンツの検索と配信を行うシステムや方法、プログラムには、到達可能なＰ２Ｐ（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒの略称で端末コンピュータ間で、サーバ等を用いることなく通信すること）サブネットワーク内でＩＰマルチキャストによるノード発見とコンテンツ検索、およびコンテンツ配信を行うため、ネットワーク帯域を効率化できるという第１の効果を有する。
【００２５】
又、ネットワーク制御手段が利用可能なＩＰマルチキャストとＩＰユニキャストを場合に応じて使い分けるため、各ノードが所属するネットワーク環境を意識することなく透過的にＰ２Ｐネットワークを自動構成できるという第２の効果を有する。
【００２６】
又、各Ｐ２Ｐ通信装置が対等であり、状況に応じて動的にＰ２Ｐネットワークを再構成するので、単一障害点を持たないため、システム全体としての耐障害性が高いという第３の効果を有する。
【発明を実施するための最良の形態】
【００２７】
次に、本発明の第１の実施形態について図面を参照して詳細に説明する。図１は本発明のコンテンツの検索と配信を行うシステムの全体構成を示した図である。図１を参照し、コンテンツの検索と配信を行うシステムは、ＩＰネットワークに接続された、プログラム制御により動作する複数のＰ２Ｐ通信装置であるコンピュータから構成されている。
【００２８】
Ｐ２Ｐ通信装置であるコンピュータは、ネットワーク接続環境によって１００：Ｐ２Ｐ初期ノード、１４１〜１４５及び１５１〜１５５：Ｐ２Ｐノード、１４０および１５０：Ｐ２Ｐ上位ノード、１３０：Ｐ２Ｐルータ、と呼び分けられるが、各装置は果たす役割が異なるのみであり図２の様な全て同じＰ２Ｐ通信装置構成からなる。
【００２９】
図中１７０〜１７５はＩＰユニキャストルータを示しＩＰユニキャストパケットをルーティングする。図中１６０〜１６３はＩＰマルチキャストルータを示し、ＩＰユニキャストパケットの他ＩＰマルチキャストパケットも処理出来る。
【００３０】
ローカルグループ１４、１５のＰ２Ｐ通信装置はそれぞれマルチキャストルータ１６２、１６３の配下に接続されグループ内でマルチキャスト通信出来る。
【００３１】
図中１８０、は１８１ファイヤウオールを示す。
【００３２】
Ｐ２Ｐ通信装置１００は、ＩＰマルチキャスト送信手段１０１、ＩＰマルチキャスト受信手段１０２、ＩＰマルチキャスト受信（コンテンツ受信用）手段１０３、ＩＰユニキャスト送信手段１０４、ＩＰユニキャスト受信手段１０５、ネットワーク制御手段１０６、Ｐ２Ｐノード手段１０７、Ｐ２Ｐルータ手段１０８、操作制御手段１０９、入力手段１０Ａ、表示手段１０Ｂを含む。
【００３３】
これらの手段はそれぞれ概略次の様に動作する。ＩＰマルチキャスト送信手段１０１は、固定のＩＰマルチキャストアドレスおよびポート番号のＩＰマルチキャストパケットを送信することによりノード発見要求および応答、コンテンツ検索要求および応答、コンテンツ配信要求および応答、コンテンツ配信を行う。
【００３４】
ＩＰマルチキャスト受信手段１０２は、検索用のＩＰマルチキャスト送信手段１０１と同じＩＰマルチキャストアドレスおよびポート番号を持つＩＰマルチキャストグループに参加しており、コンテンツ配信時を除くＩＰマルチキャストパケットを受信し、他のノード情報やコンテンツ検索情報をＰ２Ｐノード手段にキャッシュ（磁気ディスクなどデータ保存装置に一時的に保存）する。
【００３５】
ＩＰマルチキャスト受信手段（コンテンツ用）１０３は、ある特定のコンテンツ配信用に取得されたＩＰマルチキャストアドレスおよびポート番号を持つＩＰマルチキャストグループに参加しており、必要に応じて同時に複数使用され、配信されたコンテンツを受信する。
【００３６】
尚、ＩＰマルチキャスト送信手段１０１とＩＰマルチキャスト受信手段１０２とＩＰマルチキャスト受信手段（コンテンツ用）１０３とを合わせてＩＰマルチキャスト通信手段と呼ぶ。
【００３７】
ＩＰユニキャスト送信手段１０４は、ＩＰマルチキャストが使用できないオペレーティングシステムやＩＰユニキャストルータを越えてサブネットワーク間で通信を行うために、ＩＰユニキャストパケットを送信することによりノード発見要求および応答、コンテンツ検索要求および応答、コンテンツ配信要求および応答、コンテンツ送信、Ｐ２Ｐルータへのポーリング（一定間隔で定期的に通信すること）及び応答を行う。
【００３８】
ＩＰユニキャスト受信手段１０５は、ＩＰマルチキャストが使用できないオペレーティングシステムやＩＰユニキャストルータを越えてサブネットワーク間で通信を行うために、ＩＰユニキャストパケットを受信し、他のノード情報（ＩＰユニキャストアドレス、ポート番号）やコンテンツ検索情報をＰ２Ｐノード手段にキャッシュ（磁気ディスクなどデータ保存装置に一時的に保存）し、また配信されたコンテンツを受信して利用者に提供する。
【００３９】
尚、ＩＰユニキャスト送信手段１０４とＩＰユニキャスト受信手段１０５を合わせてＩＰユニキャスト通信手段と呼ぶ。
【００４０】
ネットワーク制御手段１０６は、ノード情報取得制御手段１０６１、コンテンツ検索制御手段１０６２、コンテンツ配信制御手段１０６３を含む。
【００４１】
各制御手段は、それぞれ操作制御手段１０９からＰ２Ｐネットワーク参加指示、コンテンツ検索指示、コンテンツ配信指示を受け、ノード発見要求或いはノード情報要求、コンテンツ検索要求、コンテンツ配信要求を他のＰ２Ｐ通信装置に送信し、応答情報を受信すると、Ｐ２Ｐノード手段１０７へ渡し記憶させる。
【００４２】
又、ＩＰマルチキャスト受信手段１０２、ＩＰユニキャスト受信手段１０５から他のＰ２Ｐ通信装置からノード発見要求或いはノード情報要求、コンテンツ検索要求、コンテンツ配信要求を受信すると、Ｐ２Ｐノード手段の対応キャッシュに適合する情報を保持していればその情報を返却する。適合しない場合は他のノードに対して要求を投げ直す。
【００４３】
又、ノード情報キャッシュ１０７１に設定された自装置のネットワーク環境情報を判断し、ＩＰマルチキャストによる通信とＩＰユニキャストによる通信を使い分ける。
【００４４】
Ｐ２Ｐノード手段１０７は、ノード情報キャッシュ１０７１、コンテンツ情報キャッシュ１０７２、コンテンツキャッシュ１０７３を含む。
【００４５】
ノード情報キャッシュ１０７１はノード情報（Ｐ２Ｐネットワークを構成しているＰ２Ｐ装置のＩＰユニキャストアドレスやマルチキャストアドレス）や、自装置の上位ノードのＩＰユニキャストアドレス、初期ノードのＩＰユニキャストアドレス、自装置がマルチキャスト可能なサブネットに属している（マルチキャストルータに接続されている）か否を保持している。
【００４６】
コンテンツ情報キャッシュ１０７２はコンテンツ検索結果（コンテンツＩＤと所持しているノードのＩＰユニキャストアドレス）情報を記憶している。
【００４７】
コンテンツキャッシュ１０７３は、ＩＰマルチキャスト受信手段（コンテンツ用）で受信したコンテンツ内容を記憶している。
【００４８】
Ｐ２Ｐルータ手段１０８は、外部ネットワークからアクセス可能なノードはファイアウォールまたはＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｉｏｎ  ）に遮断され外部ネットワークから直接接続できないノードのための中継ノードとして機能し、コンテンツ検索応答やコンテンツのキャッシュを行う。これは外部ネットワークから直接接続可能であるＰ２Ｐルータの役割を果たすノードが使用する。
【００４９】
操作制御手段１０９は、Ｐ２Ｐネットワーク参加、コンテンツ検索、コンテンツ受信等のメニューを表示手段１０Ｂに表示し、キーボードやマウス等の入力手段１０Ａで指定された指示をネットワーク制御手段１０６の対応する制御手段に渡す。
【００５０】
コンテンツの受信指示を取得する画面では、コンテンツ情報キャッシュのコンテンツＩＤを表示する。
【００５１】
尚、Ｐ２Ｐ通信装置は、インターネット等のネットワークに接続され通信機能を有し、ハードディスク装置等の外部記憶装置を有した、パーソナルコンピュータやデータ処理装置を用いて構成できる。
【００５２】
ここで、Ｐ２Ｐノード手段１０７のキャッシュの記憶部は外部記憶装置の記憶エリアを用い、入力手段１０Ａ、表示手段１０Ｂはパーソナルコンピュータやデータ処理装置の入力手段、表示手段を用い、図２の各手段は、パーソナルコンピュータやデータ処理装置の機能を制御するプログラムで実現すればよい。
【００５３】
このプログラムはパーソナルコンピュータやデータ処理装置のメモリ上に展開され、ＣＰＵで実行されるプログラムである。
【００５４】
次に複数のコンピュータが通信接続され、マルチキャスト可能なサブネットワークを含むネットワーク上のＰ２Ｐ通信装置がＰ２Ｐネットワークを確立して行く様子を説明する
。
【００５５】
同一構成のＰ２Ｐ通信装置のうち、Ｐ２Ｐ初期ノードはＰ２Ｐネットワークを構成するために最初に起動されるノードであり、外部ネットワークから直接接続可能な位置に置かれる点でＰ２Ｐルータと同じであるが、起動当初は自身しかネットワーク上に存在しないため上位ノードを持たない。
【００５６】
２つ目移行のＰ２Ｐルータが接続された時点で互いを上位ノードとする。この時ＩＰマルチキャストで初期ノードを発見できなければ明示的にＰ２ＰルータにＰ２Ｐ初期ノードまたはＰ２ＰルータのＩＰユニキャストアドレス登録する必要がある。
【００５７】
更にファイアウォールの内側に存在し、外部から直接接続できないＰ２ＰノードはＰ２Ｐルータを上位ノードとして登録する。
【００５８】
次以降に同一サブネットワークに接続するＰ２ＰノードはＩＰマルチキャストですでにＰ２Ｐネットワークに参加済みＰ２Ｐノードを発見し、上位ノードとする。
【００５９】
こうすることで図３の様にＰ２Ｐ初期ノードを含むＰ２Ｐルータを最上位群とするツリー構造のＰ２Ｐネットワークが構成される。
【００６０】
次に、図１及び図４〜図７のシーケンス図を参照して本発明の第１の実施形態の全体の動作について詳細に説明する。
【００６１】
Ｐ２Ｐ通信装置はノードの発見、コンテンツ発見、コンテンツ検索、Ｐ２Ｐルーティング、という４つの動作を行う。
【００６２】
図４はノード発見時のＰ２Ｐ通信装置の動作のシーケンス図を示す（ファイヤウォール、ＩＰユニキャストルータ、ＩＰマルチキャストルータは省略）。
【００６３】
先ず、Ｐ２Ｐ通信装置１４２はネットワーク制御手段１０６の指示（図４のステップＡ１）により、定められたＩＰマルチキャストグループ（装置の初期値としてデフォルトのＩＰマルチキャストアドレスおよびポート番号情報を所持するが、明示的に指定することも可能である）に参加し、ＩＰマルチキャストによりノード情報を要求する（図４のステップＡ２）。
【００６４】
到達可能なＩＰマルチキャストネットワーク内に既にＰ２Ｐネットワークに参加済みの他のＰ２Ｐ通信装置（図４では装置１４０）が存在している場合は、このＰ２Ｐ通信装置１４０が新しく参加したノード情報を保存し（図４のステップＡ３）、ネットワーク制御手段１０６の指示（図４のステップＡ４）でＩＰマルチキャストでノード情報を応答する（図４のステップＡ５）。
【００６５】
応答を受け取ったＰ２Ｐ通信装置１４２は、Ｐ２Ｐノード情報、即ち、Ｐ２Ｐネットワークを構成する他のＰ２Ｐ通信装置のＩＰユニキャストアドレスをノード情報キャッシュ１０７１に記憶し、応答元のＩＰユニキャストアドレスも上位ノード情報とし記憶する。（図４のステップＡ６）。到達可能なＩＰマルチキャストネットワーク（ローカルグループ１４）内で１台のＰ２Ｐ通信装置が上位ノードとして働く。
【００６６】
この時、Ｐ２Ｐ通信装置１４２は、他のＰ２Ｐ通信装置からの応答がないか、またはＩＰマルチキャストが利用不可なシステムの場合、ネットワーク制御手段１０６の指示（図４のステップＡ７）でＩＰユニキャストにより複数のＰ２Ｐ初期ノード１００および複数のＰ２Ｐルータ１３０に対して順にノード情報要求を行う（図４のステップＡ８）。
【００６７】
要求を受けたＰ２Ｐ初期ノード１００およびＰ２Ｐルータ１３０は、新しく参加したノード情報を保存し（図４のステップＡ９）、ネットワーク制御手段１０６の指示（図４のステップＡ１０）でＩＰユニキャストでノード情報の返答を行う（図４のステップＡ１１）。
【００６８】
応答を受け取ったＰ２Ｐ通信装置は、Ｐ２Ｐノード情報、すなわち他のＰ２Ｐ通信装置のＩＰユニキャストアドレス、及び応答のあったＰ２Ｐ通信装置の内から、ランダムで決定した上位ノード情報をノード情報キャッシュ１７１１に記憶する（図４のステップＡ１２）。
【００６９】
到達可能なＩＰマルチキャストネットワークに存在する最初のＩＰマルチキャストが利用可能なＰ２Ｐノードである場合、その後は他のＰ２Ｐノードの上位ノードとして機能する。
【００７０】
また、このノード発見は、一定時間ごとに繰り返され、上位ノードからの応答がなくなった場合、ＩＰマルチキャストによる要求時は到達可能なＩＰマルチキャストネットワーク内に存在するＰ２Ｐ通信装置のうちＩＰユニキャストアドレスのより小さいものを、ＩＰユニキャストによる要求時は、再度応答のあったＰ２Ｐ通信装置のうちランダムで上位ノードを再決定する。このようにして、Ｐ２Ｐネットワークは動的に再構成される。
【００７１】
図５はコンテンツ検索時のＰ２Ｐ通信装置の動作のシーケンス図を示す（ファイヤウォール、ＩＰユニキャストルータ、ＩＰマルチキャストルータは省略）。Ｐ２Ｐ通信装置１４２はネットワーク制御手段１０６のコンテンツ検索要求指示（図５のステップＢ１）により、ノード発見と同じＩＰマルチキャストグループに対して、自身のＩＰユニキャストアドレス情報、コンテンツ識別或いはキーワードを含むコンテンツ検索要求をマルチキャストする（図５のステップＢ２）。
【００７２】
到達可能なＩＰマルチキャストグループに属するＰ２Ｐ通信装置で、ネットワーク制御手段１０６は、要求されたコンテンツを所持するかコンテンツ情報キャッシュをチェックし、所持すれば応答を指示し（図５のステップＢ３）、コンテンツ識別、自装置のＩＰユニキャストアドレスをＩＰユニキャストにより要求に含まれた送信元ＩＰユニキャストアドレスに対して応答する（図５のステップＢ４）。
【００７３】
この時、すでにＰ２Ｐ通信装置が対象のコンテンツを配信中であれば、ＩＰマルチキャストアドレスとポート番号を含めて応答する。受信したＰ２Ｐ通信装置はそのＩＰマルチキャストアドレスとポート番号で指定されたＩＰマルチキャストグループに参加すればすぐにコンテンツを受信することができる。
【００７４】
この様にして到達可能なＩＰマルチキャストネットワーク内のコンテンツ配信が効率化される。応答を受け取ったＰ２Ｐ通信装置１４２はコンテンツ検索結果（コンテンツ識別、所持するノードのＩＰユニキャストアドレス）をコンテンツ情報キャッシュに保存する（図５のステップＢ５）。
【００７５】
また、同一のＩＰマルチキャストグループに属するＰ２Ｐ上位ノード（Ｐ２Ｐ通信装置１４０）は、他のＩＰマルチアドレスグループの上位ノード（Ｐ２Ｐ通信装置１５０）に対して自身のＩＰユニキャストアドレスを付加し、ＩＰユニキャストでコンテンツ検索要求をリピートする（図５のステップＢ６、ステップＢ７）。
【００７６】
要求を受け取ったＰ２Ｐ上位ノード（Ｐ２Ｐ通信装置１５０）は自身が属するＩＰマルチキャストネットワークに対してＩＰマルチキャストでコンテンツ検索要求をリピートする（図５のステップＢ８〜Ｂ９）。
【００７７】
要求されたコンテンツを所持するＰ２Ｐ通信装置１５２は、ＩＰユニキャストにより応答し（図５のステップＢ１０〜Ｂ１１）、受信したＰ２Ｐ通信装置１５０はコンテンツ検索結果をキャッシュしながら（図５のステップＢ１２、Ｂ１５）、付加されたＩＰユニキャストアドレス経路を逆に辿って、Ｐ２Ｐ通信装置１４０を介し（図５のＡ１３〜Ａ１４、Ａ１６〜Ａ１７）、最初にコンテンツ検索要求をマルチキャストしたＰ２Ｐ通信装置１４２まで届ける。
【００７８】
応答を受け取ったＰ２Ｐ通信装置１４２は、検索結果を保存する（図５のステップＢ１８）。尚、検索経路上でキャッシュされたコンテンツ検索情報は、一定時間保持され、その後破棄される。
【００７９】
図６はコンテンツ配信時のＰ２Ｐ通信装置の動作のシーケンス図を示す（ファイヤウォール、ＩＰユニキャストルータ、ＩＰマルチキャストルータは省略）。Ｐ２Ｐ通信装置は受信するコンテンツ用にＩＰマルチキャストアドレス及びポート番号をランダムで生成し参加する。すでに対象ＩＰマルチアドレスグループが存在している場合は生成し直す。
【００８０】
その後、ＩＰマルチキャストネットワーク内にコンテンツを所持するＰ２Ｐ通信装置が存在する場合は、コンテンツを所持するＰ２Ｐ通信装置に対して、コンテンツ識別、使用するＩＰマルチキャストアドレスおよびポート番号を含めてコンテンツ配信要求を行い（図６のステップＣ１〜Ｃ２）、要求を受け取ったＰ２Ｐ通信装置１４０は指定されたＩＰマルチキャストアドレス及びポート番号に対してコンテンツを配信する（図６のステップＣ３〜Ｃ４）。Ｐ２Ｐ通信装置１４２は受信したコンテンツをコンテンツキャッシュに保存する（図６のステップＣ５）。
【００８１】
コンテンツを所持するＰ２Ｐ通信装置がＩＰマルチキャストネットワーク内に存在しない場合はＩＰユニキャストで上位ノードに対してコンテンツ配信要求を行い（図６のステップＣ６〜Ｃ７）、コンテンツ検索時と同様に要求をコンテンツを所持する装置までリピートし（図６のステップＣ８〜Ｃ９、Ｃ１０〜Ｃ１１）、コンテンツを中継して配信を行う（図６のＣ１２〜Ｃ１３、Ｃ１４〜Ｃ１５、Ｃ１６〜Ｃ１７）。
【００８２】
同一ＩＰマルチキャストネットワーク内ではＩＰマルチキャストによって配信を行うことにより、新たに同じコンテンツを要求する装置は対象のＩＰマルチキャストアドレスおよびポート番号で指定されるＩＰマルチキャストグループに参加するだけでよいことは上記の通りである。
【００８３】
図７はＰ２Ｐルーティング時のＰ２Ｐ通信装置の動作のシーケンス図を示す（ファイヤウォール、ＩＰユニキャストルータ、ＩＰマルチキャストルータは省略）。ファイアウォールやＮＡＴ内に属するＰ２Ｐ通信装置同士（例えばＰ２Ｐ通信装置１２０と１５０）が、直接接続できない場合、双方から直接接続可能なＰ２Ｐ通信装置１３０がＰ２Ｐルータとして働く。
【００８４】
即ち、ステップＤ２、Ｄ９でそれぞれから送られるＩＰユニキャストパケットを一定時間保持し（図７のステップＤ３、Ｄ１０）、定期的に繰り返されるノード発見時（図７のステップＤ４〜Ｄ５、Ｄ１１〜Ｄ１２）に転送し（図７のＤ７、Ｄ１４）、透過的に通信を可能にする。
【００８５】
尚、Ｐ２Ｐノード情報キャッシュ、コンテンツ情報キャッシュ、Ｐ２Ｐルータ手段（データキャッシュ）でそれぞれ所定の時間を設定し、所定時間参照されなかった情報ブロックは廃棄（無効化）する実施例もある。
【００８６】
又、これらのキャッシュの情報ブロック毎に参照のあった順番情報を持ち、参照アクセスのつどこれらを更新しキャッシュがオーバフローする場合には最古の情報ブロックを廃棄（無効化）する実施例もある。
【００８７】
次に、本発明の第２の実施形態について説明する。インターネットではＩＰマルチキャストに対応するネットワーク機器が限定的であるが、特定のコンテンツ配信ネットワークの全範囲においてＩＰマルチキャストが利用可能である場合、ＩＰユニキャストによる要求のリピート動作が不要になる。
【００８８】
ノード検索、コンテンツ検索、コンテンツ配信の全ての段階でＩＰマルチキャストにより通信が可能になるため、ネットワーク帯域利用が更に効率化される。この場合も本Ｐ２Ｐ通信装置はネットワーク状態を自動的に判断するため、特に利用者が意識する必要はない。
【００８９】
次に、本発明の第３の実施形態について説明する。Ｐ２Ｐ初期ノードを動的なノードとするのではなく、固定ノードとし、Ｐ２Ｐノード発見時、コンテンツ配信時に必ずＩＰユニキャストにより通知を行い、ユーザ認証を必須とすることで、配信管理や課金管理が可能になる。
【００９０】
次に、本発明の第４の実施形態について説明する。本Ｐ２Ｐ通信装置は、ライブストリーミングコンテンツ配信（Ｗｅｂラジオ）に向くが、コンテンツ配信受け口として生成するＩＰマルチキャストアドレスおよびポート番号をチャットグループと見なすことで、グループ内に対する一斉メッセージ送信を到達可能なＩＰマルチキャストネットワーク内でＩＰマルチキャストによる通信を行うインスタントメッセージングネットワークを構成することも可能である。 
【図面の簡単な説明】
【００９１】
【図１】本発明のコンテンツの検索と配信を行うシステムの全体構成例を示した図。
【図２】図１のＰ２Ｐ通信装置の構成を示した図。
【図３】Ｐ２Ｐ通信装置によるコンテンツ配信のための論理的なＰ２Ｐネットワークを示した図。
【図４】Ｐ２Ｐ通信装置によるノード発見処理手順を示した図。
【図５】Ｐ２Ｐ通信装置によるコンテンツ発見処理手順を示した図。
【図６】Ｐ２Ｐ通信装置によるコンテンツ配信処理手順を示した図。
【図７】Ｐ２Ｐ通信装置によるＰ２Ｐルーティング処理手順を示した図。
【符号の説明】
【００９２】
１００    Ｐ２Ｐ通信装置（Ｐ２Ｐ初期ノード）
１０１    ＩＰマルチキャスト送信手段
１０２    ＩＰマルチキャスト受信手段
１０３    ＩＰマルチキャスト受信手段（コンテンツ用）
１０４    ＩＰユニキャスト送信手段
１０５    ＩＰユニキャスト受信手段
１０６    ネットワーク制御手段
１０６１    ノード情報取得制御手段
１０６２    コンテンツ検索制御手段
１０６３    ノード情報取得制御手段
１０７    Ｐ２Ｐノード手段
１０７１    ノード情報キャッシュ
１０７２    コンテンツ情報キャッシュ
１０７３    コンテンツキャッシュ
１０８    Ｐ２Ｐルータ手段
１０９    操作制御手段
１０Ａ    入力手段
１０Ｂ    表示手段
１３０    Ｐ２Ｐ通信装置（Ｐ２Ｐルータ）
１４１〜１４５、１５１〜１５５    Ｐ２Ｐ通信装置（Ｐ２Ｐノード）
１４０、１５０    Ｐ２Ｐ通信装置（Ｐ２Ｐ上位ノード）
１６０〜１６３    ＩＰマルチキャストルータ
１７０〜１７５    ＩＰユニキャストルータ
１８０、１８１    ファイヤウオール
【図１】
2005109539.tif 000003
【図２】
2005109539.tif 000004
【図３】
2005109539.tif 000005
【図４】
2005109539.tif 000006
【図５】
2005109539.tif 000007
【図６】
2005109539.tif 000008
【図７】
2005109539.tif 000009