(57)【要約】【課題】ノード装置のアドレス情報が知られることによるセキュリティ上のリスクを回避しながら、オーバーレイネットワークに参加しない端末装置へコンテンツを配信する。【解決手段】情報処理装置は、ノード装置から送信された第１要求情報、又は、所定の端末装置から送信された第２要求情報を受信したかを判定し、第１要求情報が受信されたと判定された場合、他のノード装置へ第１要求情報を転送し、第２要求情報が受信されたと判定された場合、利用可能な複数の第２アドレス情報のうち何れかの第２アドレス情報を端末装置へ送信し、端末装置からストリーミング配信の要求を示す第３要求情報を受信してコンテンツを端末装置へ送信し、第２アドレス情報が送信された後、次に送信される第２アドレス情報として、送信された第２アドレス情報と異なる第２アドレス情報を決定する。【選択図】図２
2015046828.tif 000002
【特許請求の範囲】
【請求項１】
オーバーレイネットワークを構成する複数のノード装置のうち少なくとも１つのノード装置に付与された第１アドレス情報を記憶する記憶手段と、
ネットワークに接続可能な複数のノード装置により構成されるオーバーレイネットワークに保存された所定のコンテンツを要求する第１要求情報であって、前記複数のノード装置のうち何れかのノード装置から送信された前記第１要求情報、又は、所定の端末装置から送信された第２要求情報であって、ストリーミング配信の要求を示す前記第２要求情報を受信したかを判定する判定手段と、
前記判定手段により前記第１要求情報が受信されたと判定された場合、前記記憶手段に記憶された前記第１アドレス情報が示すノード装置へ、前記第１要求情報を転送する第１送信手段と、
前記判定手段により前記第２要求情報が受信されたと判定された場合、前記記憶手段を備えるノード装置で利用可能な複数の第２アドレス情報のうち何れかの第２アドレス情報を、前記端末装置へ送信する第２送信手段と、
前記第２アドレス情報を送信した前記端末装置から、ストリーミング配信の要求を示す第３要求情報を受信する受信手段と、
前記受信手段により前記第３要求情報が受信された場合、ストリーミング配信が要求されたコンテンツを前記端末装置へ送信する第３送信手段と、
前記第２送信手段により前記第２アドレス情報が送信された後、前記複数の第２アドレス情報のうち前記第２送信手段により次に送信される前記第２アドレス情報として、前記第２送信手段により送信された前記第２アドレス情報と異なる前記第２アドレス情報を決定する決定手段と、
を備えることを特徴とするノード装置。
【請求項２】
前記第２送信手段は、前記複数の第２アドレス情報として、インターネットプロトコルバージョン６に対応する複数のＩＰアドレスであって、ＩＰアドレスを構成する１２８ビットの情報のうち所定ビット数の情報が異なる複数のＩＰアドレスの中から何れかのＩＰアドレスを送信し、
前記決定手段は、前記第２送信手段により送信されたＩＰアドレスと異なるＩＰアドレスを決定することを特徴とする請求項１に記載のノード装置。
【請求項３】
前記第２要求情報は、前記端末装置のＩＰアドレス及びポート番号を含み、
前記第２送信手段は、前記複数のＩＰアドレスのうち何れかのＩＰアドレスと、前記記憶手段を備えるノード装置のポート番号とを送信し、
前記受信手段は、前記端末装置のＩＰアドレス及びポート番号と、前記記憶手段を備えるノード装置のＩＰアドレス及びポート番号とを含む前記第３要求情報を受信し、
前記第２要求情報に含まれるＩＰアドレス及びポート番号と、前記第２送信手段により送信されたＩＰアドレス及びポート番号とを対応付けて第２記憶手段に記憶させる制御手段と、
前記受信手段により受信された前記端末装置のＩＰアドレス及びポート番号と、前記記憶手段を備えるノード装置のＩＰアドレス及びポート番号が、前記第２記憶手段に対応付けて記憶された前記端末装置のＩＰアドレス及びポート番号と、前記記憶手段を備えるノード装置のＩＰアドレス及びポート番号に一致するかを判定する第２判定手段と、を更に備え、
前記第３送信手段は、前記第２判定手段により一致すると判定された場合、前記コンテンツを送信し、前記第２判定手段により一致すると判定されなかった場合、前記コンテンツを送信せず、
前記第２判定手段により一致すると判定された場合、前記第２記憶手段に記憶された前記端末装置のＩＰアドレス及びポート番号と、前記記憶手段を備えるノード装置のＩＰアドレス及びポート番号を、前記第２記憶手段から削除する削除手段と、
を更に備えることを特徴とする請求項２に記載のノード装置。
【請求項４】
前記第１要求情報は、前記記憶手段を備えるノード装置に付与された固定の第３アドレス情報を含むことを特徴とする請求項１乃至３の何れか１項に記載のノード装置。
【請求項５】
ネットワークに接続可能な複数のノード装置により構成されるオーバーレイネットワークに保存された所定のコンテンツを要求する第１要求情報であって、前記複数のノード装置のうち何れかのノード装置から送信された前記第１要求情報、又は、所定の端末装置から送信された第２要求情報であって、ストリーミング配信の要求を示す前記第２要求情報を受信したかを判定する判定ステップと、
前記判定ステップにより前記第１要求情報が受信されたと判定された場合、オーバーレイネットワークを構成する複数のノード装置のうち少なくとも１つのノード装置に付与された第１アドレス情報を記憶する記憶手段に記憶された前記第１アドレス情報が示すノード装置へ、前記第１要求情報を転送する第１送信ステップと、
前記判定ステップにより前記第２要求情報が受信されたと判定された場合、前記記憶手段を備えるノード装置で利用可能な複数の第２アドレス情報のうち何れかの第２アドレス情報を、前記端末装置へ送信する第２送信ステップと、
前記第２アドレス情報を送信した前記端末装置から、前記コンテンツの要求を示す第３要求情報を受信する受信ステップと、
前記受信ステップにより前記第３要求情報が受信された場合、ストリーミング配信が要求されたコンテンツを前記端末装置へ送信する第３送信ステップと、
前記第２送信ステップにより前記第２アドレス情報が送信された後、前記複数の第２アドレス情報のうち次に送信される前記第２アドレス情報として、前記第２送信ステップにより送信された前記第２アドレス情報と異なる前記第２アドレス情報を決定する決定ステップと、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オーバーレイネットワークを利用する配信システムの技術分野に関する。
【背景技術】
【０００２】
例えば、特許文献１には、要求に応じてピアツーピアでコンテンツが送信されるオーバーレイネットワークに参加するノード装置から、コンテンツをストリーミングで配信する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−３３４０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
オーバーレイネットワークに参加しない端末装置からオーバーレイネットワークに参加するノード装置へ直接アクセスして、ノード装置から端末装置へコンテンツを配信するとする。この場合、端末装置とノード装置との間で直接通信が行われる。このときに端末装置はノード装置のＩＰアドレスを取得することができる。そのため、悪意のあるユーザからノード装置が攻撃を受けるリスクがある。
【０００５】
本発明は、以上の点に鑑みてなされたものであり、ノード装置のアドレス情報が知られることによるセキュリティ上のリスクを回避しながら、オーバーレイネットワークに参加しない端末装置へコンテンツを配信することを可能とするノード装置及びプログラムを提供することを課題とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、請求項１に記載の発明は、オーバーレイネットワークを構成する複数のノード装置のうち少なくとも１つのノード装置に付与された第１アドレス情報を記憶する記憶手段と、ネットワークに接続可能な複数のノード装置により構成されるオーバーレイネットワークに保存された所定のコンテンツを要求する第１要求情報であって、前記複数のノード装置のうち何れかのノード装置から送信された前記第１要求情報、又は、所定の端末装置から送信された第２要求情報であって、ストリーミング配信の要求を示す前記第２要求情報を受信したかを判定する判定手段と、前記判定手段により前記第１要求情報が受信されたと判定された場合、前記記憶手段に記憶された前記第１アドレス情報が示すノード装置へ、前記第１要求情報を転送する第１送信手段と、前記判定手段により前記第２要求情報が受信されたと判定された場合、前記記憶手段を備えるノード装置で利用可能な複数の第２アドレス情報のうち何れかの第２アドレス情報を、前記端末装置へ送信する第２送信手段と、前記第２アドレス情報を送信した前記端末装置から、ストリーミング配信の要求を示す第３要求情報を受信する受信手段と、前記受信手段により前記第３要求情報が受信された場合、ストリーミング配信が要求されたコンテンツを前記端末装置へ送信する第３送信手段と、前記第２送信手段により前記第２アドレス情報が送信された後、前記複数の第２アドレス情報のうち前記第２送信手段により次に送信される前記第２アドレス情報として、前記第２送信手段により送信された前記第２アドレス情報と異なる前記第２アドレス情報を決定する決定手段と、を備えることを特徴とする。
【０００７】
請求項２に記載の発明は、前記第２送信手段は、前記複数の第２アドレス情報として、インターネットプロトコルバージョン６に対応する複数のＩＰアドレスであって、ＩＰアドレスを構成する１２８ビットの情報のうち所定ビット数の情報が異なる複数のＩＰアドレスの中から何れかのＩＰアドレスを送信し、前記決定手段は、前記第２送信手段により送信されたＩＰアドレスと異なるＩＰアドレスを決定することを特徴とする。
【０００８】
請求項３に記載の発明は、前記第２要求情報は、前記端末装置のＩＰアドレス及びポート番号を含み、前記第２送信手段は、前記複数のＩＰアドレスのうち何れかのＩＰアドレスと、前記記憶手段を備えるノード装置のポート番号とを送信し、前記受信手段は、前記端末装置のＩＰアドレス及びポート番号と、前記記憶手段を備えるノード装置のＩＰアドレス及びポート番号とを含む前記第３要求情報を受信し、前記第２要求情報に含まれるＩＰアドレス及びポート番号と、前記第２送信手段により送信されたＩＰアドレス及びポート番号とを対応付けて第２記憶手段に記憶させる制御手段と、前記受信手段により受信された前記端末装置のＩＰアドレス及びポート番号と、前記記憶手段を備えるノード装置のＩＰアドレス及びポート番号が、前記第２記憶手段に対応付けて記憶された前記端末装置のＩＰアドレス及びポート番号と、前記記憶手段を備えるノード装置のＩＰアドレス及びポート番号に一致するかを判定する第２判定手段と、を更に備え、前記第３送信手段は、前記第２判定手段により一致すると判定された場合、前記コンテンツを送信し、前記第２判定手段により一致すると判定されなかった場合、前記コンテンツを送信せず、前記第２判定手段により一致すると判定された場合、前記第２記憶手段に記憶された前記端末装置のＩＰアドレス及びポート番号と、前記記憶手段を備えるノード装置のＩＰアドレス及びポート番号を、前記第２記憶手段から削除する削除手段と、を更に備えることを特徴とする。
【０００９】
請求項４に記載の発明は、前記第１要求情報は、前記記憶手段を備えるノード装置に付与された固定の第３アドレス情報を含むことを特徴とする。
【００１０】
請求項５に記載の発明は、ネットワークに接続可能な複数のノード装置により構成されるオーバーレイネットワークに保存された所定のコンテンツを要求する第１要求情報であって、前記複数のノード装置のうち何れかのノード装置から送信された前記第１要求情報、又は、所定の端末装置から送信された第２要求情報であって、ストリーミング配信の要求を示す前記第２要求情報を受信したかを判定する判定ステップと、前記判定ステップにより前記第１要求情報が受信されたと判定された場合、オーバーレイネットワークを構成する複数のノード装置のうち少なくとも１つのノード装置に付与された第１アドレス情報を記憶する記憶手段に記憶された前記第１アドレス情報が示すノード装置へ、前記第１要求情報を転送する第１送信ステップと、前記判定ステップにより前記第２要求情報が受信されたと判定された場合、前記記憶手段を備えるノード装置で利用可能な複数の第２アドレス情報のうち何れかの第２アドレス情報を、前記端末装置へ送信する第２送信ステップと、前記第２アドレス情報を送信した前記端末装置から、前記コンテンツの要求を示す第３要求情報を受信する受信ステップと、前記受信ステップにより前記第３要求情報が受信された場合、ストリーミング配信が要求されたコンテンツを前記端末装置へ送信する第３送信ステップと、前記第２送信ステップにより前記第２アドレス情報が送信された後、前記複数の第２アドレス情報のうち次に送信される前記第２アドレス情報として、前記第２送信ステップにより送信された前記第２アドレス情報と異なる前記第２アドレス情報を決定する決定ステップと、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１１】
請求項１又は５に記載の発明によれば、コンテンツの要求に使用可能な第２アドレス情報が、端末装置への送信のたびに変更される。そのため、ノード装置のアドレス情報が知られることによるセキュリティ上のリスクを回避しながら、端末装置へコンテンツを配信することができる。
【００１２】
請求項２に記載の発明によれば、コンテンツの要求に使用可能なＩＰアドレスが、端末装置への送信のたびに変更される。そのため、ノード装置のＩＰアドレスが知られることによるセキュリティ上のリスクを回避しながら、端末装置へコンテンツを配信することができる。
【００１３】
請求項３に記載の発明によれば、コンテンツの要求に一度使用されたＩＰアドレスは、次回以降使用することができない。そのため、ノード装置のＩＰアドレスが知られることによるセキュリティ上のリスクを回避しながら、端末装置へコンテンツを配信することができる。
【００１４】
請求項４に記載の発明によれば、端末装置へのコンテンツの配信に使用されるアドレス情報は可変にする一方で、セキュリティ上のリスクが比較的小さいオーバーレイネットワーク内での通信で使用されるアドレス情報を固定にすることができる。
【図面の簡単な説明】
【００１５】
【図１】本実施形態の通信システムＳの概要構成例を示す図である。
【図２】通信システムＳのコンテンツのストリーミング配信の動作概要を示すシーケンス図である。
【図３】フィルタリングテーブルの内容の例を示す図である。
【図４】（Ａ）は、配信サーバＤＳの概要構成例を示すブロック図である。（Ｂ）は、配信ルータＲｎの概要構成例を示すブロック図である。
【図５】（Ａ）は、ユーザ端末Ｔｉのコンテンツ再生処理の処理例を示すフローチャートであり、（Ｂ）は、配信サーバＤＳの制御部１のコンテンツ取得要求受信処理の処理例を示すフローチャートである。
【図６】配信ルータＲｎの制御部１１のメイン処理の処理例を示すフローチャートである。
【図７】（Ａ）は、配信ルータＲｎの制御部１１のサーバ通信処理の処理例を示すフローチャートであり、（Ｂ）は、配信ルータＲｎの制御部１１のＨＴＴＰ通信処理の処理例を示すフローチャートである。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、通信システムに本発明を適用した場合の実施形態である。
【００１７】
［１．通信システムの構成及び動作概要］
始めに、図１を参照して、本実施形態の通信システムの構成及び動作概要について説明する。図１は、本実施形態の通信システムＳの概要構成例を示す図である。図１に示すように、本実施形態の通信システムＳは、センターサーバＳＳ、配信ルータＲｎ（ｎ＝１，２，３・・・ｋ）、及びユーザ端末Ｔｉ（ｉ＝１，２，３・・・ｊ）等により構成されている。センターサーバＳＳ、配信サーバＤＳ、配信ルータＲｎ、及びユーザ端末ＴｉはネットワークＮＷに接続されている。ネットワークＮＷは、インターネット等からなる。センターサーバＳＳは、コンテンツをオーバーレイネットワークＯＮに投入する。コンテンツとして、例えば、動画のコンテンツ等がある。配信サーバＤＳは、例えば、ウェブサーバである。例えば、配信サーバＤＳは、ユーザ端末Ｔｉからの要求に応じて、動画配信のウェブサイトのウェブページを配信する。配信ルータＲｎは、動画のコンテンツをユーザ端末Ｔｉへ配信するルータ装置である。ユーザ端末Ｔｉは、例えば、ユーザにより使用されるスマートフォン、携帯電話機、パーソナルコンピュータ、セットトップボックス等である。ユーザ端末Ｔｉには、ブラウザが組み込まれている。ユーザ端末Ｔｉは、配信サーバＤＳにアクセスすることにより、配信サーバＤＳからウェブページを受信して画面に表示する。ユーザが、ウェブページにおいて所望のコンテンツを選択し、コンテンツを再生する操作を行う。すると、ユーザ端末Ｔｉは、配信サーバＤＳへコンテンツを要求し、配信サーバＤＳは、選択されたコンテンツを保存する配信ルータＲｎのＩＰアドレスをユーザ端末Ｔｉへ送信する。ユーザ端末Ｔｉは、受信したＩＰアドレスを用いて配信ルータＲｎへ直接アクセスし、コンテンツの配信を要求する。配信ルータＲｎは、要求されたコンテンツをユーザ端末Ｔｉへストリーミング配信する。ユーザ端末Ｔｉは、コンテンツを受信しながら再生する。コンテンツのストリーミング配信の詳細については後述する。
【００１８】
また、図１に示すように、通信システムＳには、ネットワークＮＷを介して互いに通信可能な複数の配信ルータＲｎ及び配信サーバＤＳの参加によりオーバーレイネットワークＯＮが構成されている。オーバーレイネットワークＯＮに接続する配信ルータＲｎ及び配信サーバＤＳを、「ノード」という。オーバーレイネットワークＯＮは、仮想的なリンクを構成する論理的なネットワークである。オーバーレイネットワークＯＮは、特定のアルゴリズム、例えば、分散ハッシュテーブルを利用したアルゴリズムにより実現される。なお、分散ハッシュテーブルを、以下、「ＤＨＴ（Distributed Hash Table）」という。ここで、オーバーレイネットワークＯＮに参加するとは、ＤＨＴを用いたルーティングテーブルに基づいてオーバーレイネットワークＯＮを介して他のノードとの間で各種メッセージを送受信できる状態に稼動することをいう。また、オーバーレイネットワークＯＮに参加するとは、ＤＨＴを用いたルーティングテーブルに基づいてオーバーレイネットワークＯＮを用いたＰ２Ｐ通信を行うことができる状態に稼働することをいう。Ｐ２Ｐ通信は、ノード装置がオーバーレイネットワークＯＮを介して他のノードとの間で各種メッセージを送受信することである。ルーティングテーブルには、オーバーレイネットワークＯＮに参加しているノードのうち少なくとも１つのノードのノード情報が格納されている。ノード情報には、例えば、ノードのノードＩＤ、ＩＰアドレス及びポート番号が含まれる。ルーティングテーブルに含まれるＩＰアドレスは、本発明の第１アドレス情報の一例である。ノードＩＤは、ノードを、オーバーレイネットワークＯＮに参加しているノードの中から識別する固有の識別情報である。オーバーレイネットワークＯＮに参加している各ノードには、ノードＩＤが付与されている。なお、ＤＨＴを用いたルーティングテーブルについては、特開２００６−１９７４００号公報等で公知であるので、詳しい説明を省略する。
【００１９】
通信システムＳにおいては、様々なコンテンツが複数のノードに分散して保存される。コンテンツとして、例えば、上述した動画のコンテンツ等がある。各コンテンツには、それぞれコンテンツＩＤが付与されている。コンテンツＩＤは、コンテンツを、オーバーレイネットワークＯＮに保存されるコンテンツの中から識別する固有の識別情報である。センターサーバＳＳは、コンテンツをオーバーレイネットワークＯＮに投入する。コンテンツの投入とは、コンテンツを何れかのノードに保存させ、保存されたコンテンツを、各ノードがオーバーレイネットワークＯＮから取得可能にすることである。各コンテンツのコンテンツＩＤ等の属性情報は、コンテンツカタログ情報に記述されている。例えば、コンテンツカタログ情報には、コンテンツＩＤ、コンテンツのタイトル、コンテンツのファイル名、公開日等がコンテンツごとに記述されている。
【００２０】
ここで、コンテンツを保存しているノードを、以下、「コンテンツホルダ」という。また、コンテンツホルダの所在は、ホルダ情報として、このコンテンツの所在を管理しているノードに記憶される。コンテンツの所在を管理しているノードを、以下、「ルートノード」という。ホルダ情報には、コンテンツを保存しているコンテンツホルダのノード情報と、コンテンツのコンテンツＩＤとの組が含まれる。ノード情報には、例えば、コンテンツホルダのノードＩＤ、ＩＰアドレス及びポート番号が含まれる。ルートノードは、例えば、コンテンツＩＤと最も近いノードＩＤが割り当てられたノードであるように定められる。コンテンツＩＤと最も近いノードＩＤとは、例えば、ＩＤの上位桁が最も多く一致するノードＩＤである。
【００２１】
或るノードが、オーバーレイネットワークＯＮを介してコンテンツホルダからコンテンツを取得する場合がある。コンテンツを取得するノードを、以下、「リクエストノード」という。リクエストノードは、コンテンツを保存するコンテンツホルダの所在をオーバーレイネットワークＯＮで検索する。具体的に、リクエストノードは、検索メッセージを送信する。検索メッセージは、取得対象のコンテンツの所在をコンテンツのルートノードに問い合わせるためのメッセージである。検索メッセージには、取得対象のコンテンツのコンテンツＩＤが含まれる。検索メッセージは、ＤＨＴを用いたルーティングにより、ルートノードへ転送される。具体的に、検索メッセージを受信したノードは、ルーティングテーブルに格納されているノード情報のうち、何れかのノード情報を決定する。そして、ノードは、決定したノード情報に含まれるＩＰアドレスが示すノードへ、検索メッセージを転送する。ルートノードは、受信した検索メッセージに含まれるコンテンツＩＤに対応するホルダ情報をホルダ情報キャッシュから取得する。ルートノードは、取得したホルダ情報を、検索メッセージの送信元のリクエストノードに返信する。これにより、リクエストノードは、ルートノードからコンテンツホルダの所在情報を受信する。なお、コンテンツの所在をルートノードに問い合わせる処理は、例えば特開２００７−０５３６６２号公報等で公知であるので、詳しい説明を省略する。そして、リクエストノードは、コンテンツホルダにコンテンツ要求メッセージを送信する。コンテンツ要求メッセージは、コンテンツの要求を示すメッセージである。コンテンツ要求メッセージには、取得対象のコンテンツのコンテンツＩＤが含まれる。コンテンツホルダは、コンテンツ要求メッセージに含まれるコンテンツＩＤに対応するコンテンツを、リクエストノードにアップロードする。これにより、リクエストノードはコンテンツを取得する。
【００２２】
リクエストノードは、コンテンツホルダからコンテンツを取得したとき、コンテンツを公開する。コンテンツの公開とは、リクエストノードが取得したコンテンツを、オーバーレイネットワークＯＮから取得可能にすることをいう。具体的に、リクエストノードは、取得したコンテンツを保存する。そして、リクエストノードは、ルートノードへパブリッシュメッセージを送信する。パブリッシュメッセージは、コンテンツを保存したことをルートノードへ通知するためのメッセージである。パブリッシュメッセージは、保存したコンテンツのコンテンツＩＤと、コンテンツを保存したリクエストノードのノード情報とを含む。ルートノードは、受信したパブリッシュメッセージに含まれるコンテンツＩＤとノード情報との組を含むホルダ情報を、ホルダ情報キャッシュに記憶する。こうして、リクエストノードは、新たに、コンテンツを保存するコンテンツホルダとなる。
【００２３】
オーバーレイネットワークＯＮを介して送受信されるメッセージを、Ｐ２Ｐ制御メッセージという。Ｐ２Ｐ制御メッセージとして、例えば、検索メッセージ、コンテンツ要求メッセージ、パブリッシュメッセージ等がある。Ｐ２Ｐ制御メッセージは、本発明の第１要求情報の一例である。
【００２４】
［２．コンテンツの配信］
上述したように、ユーザ端末Ｔｉがコンテンツのストリーミング配信を要求するとき、ユーザ端末Ｔｉは、配信サーバＤＳから配信ルータＲｎのＩＰアドレスを取得する。そのため、ユーザ端末Ｔｉを利用するユーザが、配信ルータＲｎのＩＰアドレスを知ることができる。そうすると、配信ルータＲｎが、悪意のあるユーザから攻撃を受ける可能性がある。そこで、各配信ルータＲｎには、利用可能な複数のＩＰアドレスが付与される。利用可能なＩＰアドレスは、本発明の第２アドレス情報の一例である。ユーザ端末Ｔｉが配信サーバＤＳへコンテンツを要求した場合、配信ルータＲｎは、利用可能な複数のＩＰアドレスのうち何れかのＩＰアドレスを、配信サーバＤＳを介してユーザ端末Ｔｉへ送信する。送信されるＩＰアドレスは、今回のストリーミング配信に利用可能なＩＰアドレスである。配信ルータＲｎは、ユーザ端末Ｔｉへ次に送信するＩＰアドレスを決定するとき、前に送信したＩＰアドレスとは異なるＩＰアドレスを決定する。そして、配信ルータＲｎは、決定したＩＰアドレスを、今回のストリーミング配信に利用可能なＩＰアドレスとして送信する。このように、コンテンツのストリーミング配信に利用可能なＩＰアドレスが、送信のたびに変更される。そのため、配信ルータＲｎのＩＰアドレスが知られることによるセキュリティ上のリスクを回避しながら、ユーザ端末Ｔｉへコンテンツを配信することができる。
【００２５】
配信ルータＲｎのＩＰアドレスとして、例えば、ＩＰｖ６（インターネットプロトコルバージョン６）に対応するＩＰアドレスが用いられてもよい。この場合、ＩＰアドレスのサイズは１２８ビットである。ＩＰアドレスは、例えば、グローバルユニキャストプレフィックス、サブネットＩＤ及びインターフェースＩＤにより構成される。グローバルユニキャストプレフィックスは例えば４８ビット長の情報であり、サブネットＩＤは例えば１６ビット長の情報であり、インターフェースＩＤは例えば６４ビット長の情報である。ＩＰアドレスのうち、グローバルユニキャストプレフィックスとサブネットＩＤの部分を、便宜上、上位６４ビットアドレスという。例えば、各配信ルータＲｎには、利用可能な上位６４ビットアドレスとして、互いに異なる上位６４ビットアドレスが付与されてもよい。配信ルータＲｎが送信するＩＰアドレスを決定するとき、配信ルータＲｎは、例えば、インターフェースＩＤを、前回決定したインターフェースＩＤと異なるインターフェースＩＤに決定してもよい。例えば、配信ルータＲｎは、インターフェースＩＤをランダムに決定してもよい。例えば、配信ルータＲｎは、配信ルータＲｎのＭＡＣ（Media Access Control）アドレスからＥＵＩ−６４（Extended Unique Identifier 64）を生成する。また、配信ルータＲｎは、現在時刻の情報とＥＵＩ−６４を結合して、平文の情報を生成する。配信ルータＲｎは、平文の情報を所定のハッシュ関数でハッシュ化する。そして、配信ルータＲｎは、ハッシュ化された情報から例えば下位６４ビットの情報を、インターフェースＩＤとして抽出する。配信ルータＲｎは、配信ルータＲｎに付与された上位６４ビットアドレスと今回決定したインターフェースＩＤとを結合して、ＩＰアドレスを生成する。本実施形態では、インターフェースＩＤが可変となっているが、ＩＰアドレスのうちどの部分を可変とするかは任意である。また、可変とする部分のビット長は任意である。
【００２６】
各配信ルータＲｎには、オーバーレイネットワークＯＮを介して他の配信ルータＲｎや配信サーバＤＳとＰ２Ｐ通信するためのＩＰアドレスも付与されている。Ｐ２Ｐ通信用のＩＰアドレスは固定のＩＰアドレスである。例えば、配信ルータＲｎに付与された上位６４ビットアドレスと、予め設定されたインターフェースＩＤとで、Ｐ２Ｐ通信用のＩＰアドレスが構成されてもよい。また、配信ルータＲｎは、ストリーミング配信用のＩＰアドレスがＰ２Ｐ通信用のＩＰアドレスと重ならないように、ストリーミング配信用のＩＰアドレスを決定してもよい。Ｐ２Ｐ通信用のＩＰアドレスは、本発明の第３アドレス情報の一例である。
【００２７】
配信ルータＲｎは、決定したＩＰアドレスが、１回のストリーミング配信でのみ利用可能となるように、パケットフィルタリングを動的に行う。ユーザ端末Ｔｉから配信ルータＲｎへ送信されてくるパケットヘッダは、宛先ＩＰアドレスとして、配信ルータＲｎのＩＰアドレスを含む。通常はユーザ端末Ｔｉから送信されてくるパケットを遮断するように、フィルタリングが設定されている。パケットを遮断するとは、配信ルータＲｎがパケットに対応する処理を実行しないことである。具体的には、コンテンツのストリーミング配信を実行しないことである。配信ルータＲｎは、ユーザ端末Ｔｉへ送信するＩＰアドレスを決定すると、決定したＩＰアドレスを宛先ＩＰアドレスとして含むパケットが通過するように、フィルタリングルールを設定する。フィルタリングルールは、如何なるパケットを通過させ、又は如何なるパケットを遮断するかを示す情報である。パケットを通過させるとは、配信ルータＲｎがパケットに対応する処理を実行することである。この状態で、配信ルータＲｎが、決定したＩＰアドレスを宛先ＩＰアドレスとして含むパケットで構成されるコンテンツ配信要求を受信する。すると、配信ルータＲｎは、コンテンツのストリーミング配信を実行する。ストリーミング配信が終了すると、配信ルータＲｎは、設定したフィルタリングルールを削除する。
【００２８】
図２は、通信システムＳのコンテンツのストリーミング配信の動作概要を示すシーケンス図である。ユーザ端末Ｔｉが、ブラウザにより動画配信サイトのウェブページを表示しているとき、図２に示すように、ユーザが所望のコンテンツの再生を指示する操作を行う（ステップＳ１）。すると、ユーザ端末Ｔｉは、配信サーバＤＳへコンテンツ取得要求を送信する（ステップＳ２）。コンテンツ取得要求は、コンテンツのストリーミング配信の要求を示すメッセージである。コンテンツ取得要求は、ＨＴＴＰ（HyperText Transfer Protocol）リクエストである。コンテンツ取得要求に含まれるＵＲＬ（Uniform Resource Locator）は、例えば、選択されたコンテンツのコンテンツＩＤ等を含む。また、コンテンツ取得要求のパケットヘッダは、送信元ＩＰアドレス、送信元ポート番号、宛先ＩＰアドレス、宛先ポート番号を含む。この場合の送信元ＩＰアドレス及び送信元ポート番号は、ユーザ端末ＴｉのＩＰアドレス及びポート番号である。
【００２９】
コンテンツ取得要求を受信した配信サーバＤＳは、検索メッセージを送信することにより、オーバーレイネットワークＯＮから、要求されたコンテンツを保存する配信ルータＲｎを検索する（ステップＳ３）。なお、本実施形態では配信サーバＤＳはノードとしてオーバーレイネットワークＯＮに参加可能であるが、配信サーバＤＳはオーバーレイネットワークＯＮに参加しなくてもよい。例えば、配信サーバＤＳは、所定の配信ルータＲｎに、コンテンツの検索を要求し、所定の配信ルータＲｎからホルダ情報を取得してもよい。配信サーバＤＳは、検索された配信ルータＲｎのうち、コンテンツを配信する配信ルータＲｎを決定する（ステップＳ４）。次いで、配信サーバＤＳは、決定した配信ルータＲｎへコンテンツ配信要求を送信する（ステップＳ５）。例えば、配信サーバＤＳは、コンテンツ取得要求をコンテンツ配信要求として配信ルータＲｎへ転送する。コンテンツ配信要求は、本発明の第２要求情報の一例である。次いで、配信サーバＤＳは、コンテンツ取得要求に含まれるユーザ端末ＴｉのＩＰアドレス及びポート番号を、決定した配信ルータＲｎへ送信する（ステップＳ６）。なお、配信サーバＤＳは、コンテンツ配信要求にユーザ端末ＴｉのＩＰアドレス及びポート番号を含ませてもよい。
【００３０】
コンテンツ配信要求を受信した配信ルータＲｎは、ストリーミング配信用のＩＰアドレスを決定する（ステップＳ７）。このとき、配信ルータＲｎは、例えば上述した方法で、前に送信したＩＰアドレスと異なるＩＰアドレスを決定する。そして、配信ルータＲｎは、決定したＩＰアドレスを記憶する。次いで、配信ルータＲｎは、フィルタリングルールを追加する（ステップＳ８）。図３は、フィルタリングテーブルの内容の例を示す図である。フィルタリングテーブルには、フィルタリングルールを格納するテーブルである。フィルタリングルールは、例えば、ルール番号、方向、送信元ＩＰアドレス、宛先ＩＰアドレス、プロトコル、送信元ポート番号、宛先ポート番号、処理等を含む。ルール番号は、フィルタリングルールに付与された識別番号である。配信ルータＲｎが受信するパケットに適用されるルールの場合、方向はＩＮに設定される。配信ルータＲｎが送信するパケットに適用されるルールの場合、方向はＯＵＴに設定される。処理は、通過又は遮断に設定される。なお、図３は、配信ルータＲｎがユーザ端末Ｔｉから受信するパケット、及び、配信ルータＲｎがユーザ端末Ｔｉへ送信するパケットに適用されるフィルタリングルールのみを示す。配信ルータＲｎがオーバーレイネットワークＯＮを介して他の配信ルータＲｎや配信サーバＤＳと通信可能となるためのフィルタリングテーブルは別に設定されている。図３（Ａ）は、配信ルータＲｎが配信サーバＤＳからユーザ端末ＴｉをＩＰアドレス及びポート番号を受信する前のフィルタリングテーブルの内容を示す。ルール番号が１であるフィルタリングルールでは、方向、送信元ＩＰアドレス、宛先ＩＰアドレス、プロトコル、送信元ポート番号、宛先ポート番号が＊に設定されている。また、処理が遮断に設定されている。このフィルタリングルールは、ユーザ端末Ｔｉから送信されるパケット、及びユーザ端末Ｔｉへ送信されるパケットを全て遮断することを示す。
【００３１】
図３（Ｂ）は、配信ルータＲｎが、ユーザ端末ＴｉのＩＰアドレス及びポート番号を受信した後のフィルタリングテーブルの内容を示す。配信ルータＲｎは、例えばルール番号が２であるフィルタリングルールを追加する。このとき、配信ルータＲｎは、方向をＩＮに設定し、プロトコルをＴＣＰに設定する。また、配信ルータＲｎは、送信元ＩＰアドレス及び送信元ポート番号を、ユーザ端末ＴｉのＩＰアドレス及びポート番号に設定する。また、配信ルータＲｎは、宛先ＩＰアドレス及び宛先ポート番号を、ストリーム配信用に決定した配信ルータＲｎのＩＰアドレスと、ストリーム配信用に予め設定されたポート番号に設定する。また、配信ルータＲｎは、処理を通過に設定する。このフィルタリングルールにより、ユーザ端末Ｔｉからのコンテンツ取得要求のパケットが通過する。
【００３２】
また、配信ルータＲｎは、例えばルール番号が３であるフィルタリングルールを追加する。このとき、配信ルータＲｎは、方向をＯＵＴに設定し、プロトコルをＴＣＰに設定する。また、配信ルータＲｎは、送信元ＩＰアドレス及び送信元ポート番号を、ストリーム配信用に決定した配信ルータＲｎのＩＰアドレスと、ストリーム配信用に予め設定されたポート番号に設定する。また、配信ルータＲｎは、宛先ＩＰアドレス及び宛先ポート番号を、ユーザ端末ＴｉのＩＰアドレス及びポート番号に設定する。また、配信ルータＲｎは、処理を通過に設定する。このフィルタリングルールにより、配信ルータＲｎがストリーミング配信するコンテンツのパケットが通過する。なお、例えば、配信ルータＲｎがストリーミング配信するコンテンツのパケットは全て通過するように、予めフィルタリングルールが設定されていてもよい。この場合であっても、ユーザ端末Ｔｉから送信されてくるパケットを遮断することができる。
【００３３】
配信ルータＲｎは、フィルタリングルールを追加すると、ストリーミング配信用のＩＰアドレス及びポート番号を配信サーバＤＳへ送信する（ステップＳ９）。配信サーバＤＳは、受信したストリーミング配信用のＩＰアドレス及びポート番号を含むリダイレクト要求をユーザ端末Ｔｉへ送信する（ステップＳ１０）。リダイレクト要求はＨＴＴＰメッセージである。リダイレクト要求のLocationヘッダはＵＲＬを含む。このＵＲＬは、例えば、コンテンツＩＤ、配信ルータＲｎのストリーミング配信用のＩＰアドレス及びポート番号等を含む。リダイレクト要求を受信したユーザ端末Ｔｉは、ストリーミング配信する配信ルータＲｎとして配信サーバＤＳにより決定された配信ルータＲｎへ、コンテンツ取得要求を送信する（ステップＳ１１）。具体的に、ユーザ端末ＴｉはLocationヘッダのＵＲＬから、配信ルータＲｎのＩＰアドレス及びポート番号を取得する。ユーザ端末Ｔｉは、ユーザ端末ＴｉのＩＰアドレス及びポート番号を、送信元アドレス及び送信元ポート番号としてコンテンツ取得要求のパケットヘッダに格納する。また、ユーザ端末Ｔｉは、配信ルータＲｎのＩＰアドレス及びポート番号を、宛先アドレス及び宛先ポート番号としてコンテンツ取得要求のパケットヘッダに格納する。これにより、コンテンツ取得要求が配信ルータＲｎに到達する。ユーザ端末Ｔｉから配信ルータＲｎへ直接送信されるコンテンツ取得要求は、本発明の第３要求情報の一例である。
【００３４】
配信ルータＲｎが受信したコンテンツ取得要求のパケットヘッダに含まれる送信元アドレス、送信元ポート番号、宛先アドレス及び宛先ポート番号は、図３（Ｂ）に示すルール番号が２であるフィルタリングルールの送信元アドレス、送信元ポート番号、宛先アドレス及び宛先ポート番号と一致する。そのため、配信ルータＲｎは、このフィルタリングルールを適用し、パケットを通過させる。これにより、配信ルータＲｎは、ユーザ端末Ｔｉへコンテンツのストリーミング配信を開始する（ステップＳ１２）。ストリーミング配信が終了すると、配信ルータＲｎは、追加したフィルタリングルールをフィルタリングテーブルから削除する（ステップＳ１３）。また、配信ルータＲｎは、記憶しておいたストリーミング配信用のＩＰアドレスを削除する（ステップＳ１４）。例えば、図３（Ｃ）に示すように、ルール番号が２及び３であるフィルタリングルールが削除される。ストリーミング配信の途中でユーザが再生の終了を指示すると、ユーザ端末Ｔｉは、終了要求を配信ルータＲｎに送信する。この場合、配信ルータＲｎは、ストリーミング配信を終了させ、フィルタリングルールを削除する。フィルタリングルールが削除された後、配信ルータＲｎが、ステップＳ１１で受信したコンテンツ取得要求とパケットヘッダの内容が同一のコンテンツ取得要求をユーザ端末Ｔｉから受信したとする。この場合、コンテンツ取得要求のパケットは遮断される。従って、配信ルータＲｎは、コンテンツを配信しない。なお、配信ルータＲｎは、フィルタリングルールを削除する代わりに、フィルタリングルールが使用不可であることを示すフラグ情報等を、フィルタリングルールに対応付けて記憶させてもよい。この場合、配信ルータＲｎは、使用不可であることを示すフラグ情報が対応付けられているフィルタリングルールを、パケットのフィルタリングに使用しない。
【００３５】
［３．配信サーバの構成］
次に、図４（Ａ）を参照して、配信サーバＤＳの構成について説明する。図４（Ａ）は、配信サーバＤＳの概要構成例を示すブロック図である。配信サーバＤＳは制御部１、記憶部２、及び通信部３等を備えて構成される。制御部１、記憶部２、及び通信部３はバス４を介して相互に接続されている。
【００３６】
記憶部２は、例えばハードディスクドライブ等から構成される。記憶部２には、オペレーティングシステム、Ｐ２Ｐプログラム、配信サーバプログラム等の各種プログラム等が記憶されている。Ｐ２Ｐプログラムは、ルーティングテーブルを用いてオーバーレイネットワークＯＮを介して、他のノードと通信を行うためのプログラムである。配信サーバプログラムは、ユーザ端末Ｔｉからの要求に応じてウェブページを配信したり、ユーザ端末Ｔｉからのコンテンツ取得要求に応じた処理を実行したりするためのプログラムである。また、記憶部２には、ルーティングテーブル、コンテンツカタログ情報、ホルダ情報等が記憶されている。
【００３７】
通信部３は、ネットワークＮＷを通じて配信ルータＲｎやユーザ端末Ｔｉ等との間の通信制御を行う。制御部１は、演算機能を有するＣＰＵ，作業用ＲＡＭ，及びＲＯＭ等から構成される。制御部１は、ＣＰＵが記憶部２等に記憶されたプログラムを読み出して実行することにより、配信サーバＤＳの各部を統括制御する。
【００３８】
［４．配信ルータの構成］
次に、図４（Ｂ）を参照して、配信ルータＲｎの構成及び機能について説明する。図４（Ｂ）は、配信ルータＲｎの概要構成例を示すブロック図である。配信ルータＲｎは、制御部１１、記憶部１２、通信部１３、バッファメモリ１４等を備えて構成される。制御部１１、記憶部１２、通信部１３、及びバッファメモリ１４はバス１５を介して相互に接続されている。
【００３９】
記憶部１２は、例えばハードディスクドライブ等から構成される。記憶部１２には、オペレーティングシステム、ファイアーウォール、Ｐ２Ｐプログラム、コンテンツ配信プログラム等が記憶されている。ファイアーウォールは、フィルタリングテーブルに格納されたフィルタリングルールに基づき、パケットの通過及び遮断を制御するためのプログラムである。Ｐ２Ｐプログラムは、ルーティングテーブルを用いてオーバーレイネットワークＯＮを介して、他のノードと通信を行うためのプログラムである。コンテンツ配信プログラムは、フィルタリングルールの設定、コンテンツのストリーミング配信等の処理を行うためのプログラムである。なお、各種プログラムは、例えば、ネットワークＮＷに接続された所定のサーバからダウンロードされるようにしてもよい。あるいは、各種プログラムは、例えば、ＤＶＤ（Digital Versatile Disc）等の記録媒体に記録されて記録媒体のドライブを介して読み込まれるようにしてもよい。
【００４０】
また、記憶部１２には、ルーティングテーブル、コンテンツカタログ情報、ホルダ情報、配信サーバＤＳのＩＰアドレス及びポート番号等が記憶されている。また、記憶部１２には、他のノード等から取得したコンテンツがコンテンツＩＤと対応付けて記憶される。また、記憶部１２には、Ｐ２Ｐ通信用及び配信サーバＤＳとの通信用に配信ルータＲｎに付与されたＩＰアドレスが記憶される。また、記憶部１２には、Ｐ２Ｐ通信用のポート番号と、配信サーバＤＳからコンテンツ配信要求を受信するためのポート番号が記憶される。また、記憶部１２には、ストリーミング配信用に配信ルータＲｎに付与された上位６４ビットアドレス及びポート番号が記憶される。また、記憶部１２には、フィルタリングテーブル、ストリーミング配信用に決定されたＩＰアドレスが記憶される。
【００４１】
通信部１３は、ネットワークＮＷを通じて、他の配信ルータＲｎ、ユーザ端末Ｔｉ、センターサーバＳＳ、配信サーバＤＳ等との間の通信制御を行う。バッファメモリ１４は、通信部１３を介して受信されたコンテンツを一時的に蓄積する。制御部１１は、演算機能を有するＣＰＵ、作業用ＲＡＭ、及びＲＯＭ等から構成される。また、制御部１１は、時計機能及びタイマー機能を備える。そして、制御部１１は、コンピュータとしてのＣＰＵが記憶部１２等に記憶されたプログラムを読み出して実行することにより、判定ステップと、第１送信ステップと、第２送信ステップと、受信ステップと、第３送信ステップと、決定ステップとを少なくとも実行する。
【００４２】
［５．通信システムの動作］
次に、図５乃至図７を参照して、本実施形態の通信システムＳの動作について説明する。図５（Ａ）は、ユーザ端末Ｔｉのコンテンツ再生処理の処理例を示すフローチャートである。コンテンツ再生処理は、ユーザがコンテンツの再生を指示する操作を行ったときに開始される。図５（Ａ）に示すように、ユーザ端末Ｔｉは、配信サーバＤＳへコンテンツ取得要求を送信する（ステップＳ２１）。具体的に、ユーザ端末Ｔｉは、ユーザにより選択されたコンテンツのコンテンツＩＤを、コンテンツ取得要求に格納する。また、ユーザ端末Ｔｉは、ユーザ端末ＴｉのＩＰアドレス及びポート番号を、送信元ＩＰアドレス及び送信元ポート番号として、コンテンツ取得要求のパケットヘッダに格納する。ユーザ端末Ｔｉは、こうして生成したコンテンツ取得要求を送信する。
【００４３】
次いで、ユーザ端末Ｔｉは、配信サーバＤＳからリダイレクト要求を受信する（ステップＳ２２）。次いで、ユーザ端末Ｔｉは、リダイレクト先の配信ルータＲｎにＴＣＰ接続して、コンテンツ取得要求を送信する（ステップＳ２３）。このとき、ユーザ端末Ｔｉは、リダイレクト要求に含まれるＵＲＬから、配信ルータＲｎのＩＰアドレス及びポート番号を取得する。次いで、ユーザ端末Ｔｉは、ユーザ端末ＴｉのＩＰアドレス及びポート番号を、送信元アドレス及び送信元ポート番号としてコンテンツ取得要求のパケットヘッダに格納する。また、ユーザ端末Ｔｉは、配信ルータＲｎのＩＰアドレス及びポート番号を、宛先アドレス及び宛先ポート番号としてコンテンツ取得要求のパケットヘッダに格納する。また、ユーザ端末Ｔｉは、リダイレクト要求から取得したＵＲＬを、コンテンツ取得要求に格納する。ユーザ端末Ｔｉは、こうして生成したコンテンツ取得要求を送信する。
【００４４】
次いで、ユーザ端末Ｔｉは、配信ルータＲｎからストリーミング配信されてくるコンテンツを受信して、コンテンツを再生する（ステップＳ２４）。次いで、ユーザ端末Ｔｉは、コンテンツ再生処理を終了するか否かを判定する（ステップＳ２５）。例えば、ユーザ端末Ｔｉがコンテンツを構成する全てのパケットを受信した場合、ユーザ端末Ｔｉは終了すると判定する。また、ユーザがコンテンツの再生を終了する操作をした場合、ユーザ端末Ｔｉは終了すると判定する。ユーザ端末Ｔｉは、コンテンツ再生処理を終了しないと判定した場合には（ステップＳ２５：ＮＯ）、ステップＳ２４に進む。一方、ユーザ端末Ｔｉは、コンテンツ再生処理を終了すると判定した場合には（ステップＳ２５：ＹＥＳ）、再生処理を終了させる。
【００４５】
図５（Ｂ）は、配信サーバＤＳの制御部１のコンテンツ取得要求受信処理の処理例を示すフローチャートである。コンテンツ取得要求受信処理は、例えば、配信サーバＤＳの電源がＯＮとされたときに開始される。図５（Ｂ）に示すように、制御部１は、ユーザ端末Ｔｉからコンテンツ取得要求を受信したか否かを判定する（ステップＳ３１）。このとき、制御部１は、コンテンツ取得要求を受信していないと判定した場合には（ステップＳ３１：ＮＯ）、ステップＳ３８に進む。一方、制御部１は、コンテンツ取得要求を受信したと判定した場合には（ステップＳ３１：ＹＥＳ）、ステップＳ３２に進む。
【００４６】
ステップＳ３２において、制御部１は、オーバーレイネットワークＯＮから、要求されたコンテンツを検索する。具体的に、制御部１は、コンテンツ取得要求からコンテンツＩＤを取得する。次いで、制御部１は、取得したコンテンツＩＤを含む検索メッセージを、ルーティングテーブルに従って何れかの配信ルータＲｎへ送信する。そして、制御部１は、ルートノードからホルダ情報を受信する。次いで、制御部１は、受信したホルダ情報に基づいて、ストリーミング配信する配信ルータＲｎを決定する（ステップＳ３３）。具体的に、制御部１は、ホルダ情報に含まれるノード情報の中から何れかのノード情報を取得する。
【００４７】
次いで、制御部１は、決定した配信ルータＲｎへ、コンテンツ配信要求を送信する（ステップＳ３４）。具体的に、制御部１は、取得したノード情報に含まれるＩＰアドレスが示す配信ルータＲｎへコンテンツ配信要求を送信する。次いで、制御部１は、コンテンツ取得要求からユーザ端末ＴｉのＩＰアドレス及びポート番号を取得する。そして、制御部１は、取得したＩＰアドレス及びポート番号を、決定した配信ルータＲｎへ送信する（ステップＳ３５）。
【００４８】
次いで、制御部１は、決定した配信ルータＲｎから、配信ルータＲｎのストリーミング配信用のＩＰアドレス及びポート番号を受信する（ステップＳ３６）。次いで、制御部１は、コンテンツ取得要求を送信してきたユーザ端末Ｔｉへ、リダイレクト要求を送信する（ステップＳ３７）。具体的に、制御部１は、ユーザ端末Ｔｉから受信したコンテンツ取得要求から取得したコンテンツＩＤ、配信ルータＲｎから受信したＩＰアドレス及びポート番号等を含むＵＲＬを生成する。そして、制御部１は、生成したＵＲＬを含むリダイレクト要求を送信する。次いで、制御部１は、通信システムＳの管理者から電源ＯＦＦが要求されたか否かを判定する（ステップＳ３８）。このとき、制御部１は、電源ＯＦＦが要求されていないと判定した場合には（ステップＳ３８：ＮＯ）、ステップＳ３１に進む。一方、制御部１は、電源ＯＦＦが要求されたと判定した場合には（ステップＳ３８：ＹＥＳ）、コンテンツ取得要求受信処理を終了させる。
【００４９】
図６は、配信ルータＲｎの制御部１１のメイン処理の処理例を示すフローチャートである。メイン処理は、例えば、配信ルータＲｎの電源がＯＮとされたときに開始される。図６に示すように、制御部１１は、配信サーバＤＳ、ユーザ端末Ｔｉ又は他の配信ルータＲｎからパケットを受信したか否かを判定する（ステップＳ４１）。このとき、制御部１１は、パケットを受信していないと判定した場合には（ステップＳ４１：ＮＯ）、ステップＳ５０に進む。一方、制御部１１は、パケットを受信したと判定した場合には（ステップＳ４１：ＹＥＳ）、ステップＳ４２に進む。
【００５０】
ステップＳ４２において、制御部１１は、フィルタリング処理を実行する。フィルタリング処理において、制御部１１は、フィルタリングテーブルから、受信したパケットに適合するフィルタリングルールを検索する。具体的に、制御部１１は、受信したパケットのヘッダに含まれる送信元ＩＰアドレス、送信元ポート番号、宛先ＩＰアドレス、宛先ポート番号と一致する送信元ＩＰアドレス、送信元ポート番号、宛先ＩＰアドレス及び宛先ポート番号を格納するフィルタリングルールを検索する。このとき、制御部１１は、方向がＩＮに設定され、且つ、処理が通過に設定されているフィルタリングルールを検索する。次いで、制御部１１は、適合するフィルタリングルールがあるか否かを判定する（ステップＳ４３）。このとき、制御部１１は、適合するフィルタリングルールがないと判定した場合には（ステップＳ４３：ＮＯ）、ステップＳ５０に進む。この場合、制御部１１は、受信したパケットに対応した処理を実行しない。
【００５１】
一方、制御部１１は、適合するフィルタリングルールがあると判定した場合には（ステップＳ４３：ＹＥＳ）、ステップＳ４４に進む。ステップＳ４４において、制御部１１は、受信したパケットが、配信サーバＤＳから送信されたコンテンツ配信要求のパケットであるか否かを判定する。パケットヘッダに格納されている宛先ポート番号が、コンテンツ配信要求受信用のＩＰアドレスである場合、制御部１１は、配信サーバＤＳから送信されたパケットであると判定する（ステップＳ４４：ＹＥＳ）。この場合、制御部１１は、サーバ通信処理を実行する（ステップＳ４５）。サーバ通信処理において、制御部１１は、コンテンツ配信要求に対応する処理を実行する。サーバ通信処理の詳細は後述する。次いで、制御部１１は、ステップＳ５０に進む。
【００５２】
一方、パケットヘッダに格納されている宛先ＩＰアドレスがコンテンツ配信要求受信用のＩＰアドレスではない場合、制御部１１は、配信サーバＤＳから送信されたパケットではないと判定する（ステップＳ４４：ＮＯ）。この場合、制御部１１は、受信したパケットが、ユーザ端末Ｔｉから送信されたコンテンツ取得要求のパケットであるか否かを判定する（ステップＳ４６）。パケットヘッダに格納されている宛先ＩＰアドレスがストリーミング配信用のＩＰアドレスである場合、制御部１１は、ユーザ端末Ｔｉから送信されたパケットであると判定する（ステップＳ４６：ＹＥＳ）。この場合、制御部１１は、ＨＴＴＰ通信処理を実行する（ステップＳ４７）。ＨＴＴＰ通信処理において、制御部１１は、コンテンツ取得要求に対応する処理を実行する。ＨＴＴＰ通信処理の詳細は後述する。次いで、制御部１１は、ステップＳ５０に進む。
【００５３】
一方、パケットヘッダに格納されている宛先ＩＰアドレスがストリーミング配信用のＩＰアドレスではない場合、制御部１１は、ユーザ端末Ｔｉから送信されたパケットではないと判定する（ステップＳ４６：ＮＯ）。この場合、制御部１１は、受信したパケットが、他のノードから送信されたＰ２Ｐ制御メッセージのパケットであるか否かを判定する（ステップＳ４８）。パケットヘッダに格納されている宛先ＩＰアドレスがＰ２Ｐ通信用のＩＰアドレスである場合、制御部１１は、他のノードから送信されたパケットであると判定する（ステップＳ４８：ＹＥＳ）。この場合、制御部１１は、Ｐ２Ｐ通信処理を実行する（ステップＳ４９）。Ｐ２Ｐ通信処理において、制御部１１は、受信したメッセージに対応する処理を実行する。例えば、Ｐ２Ｐ制御メッセージが検索メッセージやパブリッシュメッセージであって、配信ルータＲｎがルートノードではない場合、制御部１１は、受信したメッセージを他のノードへ転送する。具体的に、制御部１１は、ルーティングテーブルに格納されているノード情報のうち何れかのノード情報に含まれるＩＰアドレスが示すノードへ、メッセージを送信する。配信ルータＲｎがルートノードである場合、受信したメッセージに対応する処理を実行する。Ｐ２Ｐ制御メッセージがコンテンツ取得要求メッセージである場合、制御部１１は、対応するコンテンツをリクエストノードへ送信する。制御部１１は、ステップＳ４９を終えると、ステップＳ５０に進む。
【００５４】
一方、パケットヘッダに格納されている宛先ＩＰアドレスがＰ２Ｐ通信用のＩＰアドレスではない場合（ステップＳ４８：ＮＯ）、制御部１１は、ステップＳ５０に進む。ステップＳ５０において、制御部１１は、通信システムＳの管理者から電源ＯＦＦが要求されたか否かを判定する。このとき、制御部１１は、電源ＯＦＦが要求されていないと判定した場合には（ステップＳ５０：ＮＯ）、ステップＳ４１に進む。一方、制御部１１は、電源ＯＦＦが要求されたと判定した場合には（ステップＳ５０：ＹＥＳ）、メイン処理を終了させる。
【００５５】
図７（Ａ）は、配信ルータＲｎの制御部１１のサーバ通信処理の処理例を示すフローチャートである。図７（Ａ）に示すように、制御部１１は、配信サーバＤＳから送信されてきたコンテンツ配信要求を受信する（ステップＳ５１）。次いで、制御部１１は、配信サーバＤＳから送信されてきたユーザ端末ＴｉのＩＰアドレス及びポート番号を受信する（ステップＳ５２）。次いで、制御部１１は、時計機能から現在時刻を取得する。そして、制御部１１は、現在時刻、記憶部１２に記憶されたストリーミング配信用の上位６４ビットアドレス及びハッシュ関数等に基づいて、ストリーミング配信用のＩＰアドレスを決定する（ステップＳ５３）。そして、制御部１１は、決定したＩＰアドレスを記憶部１２に記憶させる。
【００５６】
次いで、制御部１１は、フィルタリングテーブルにフィルタリングルールを追加する（ステップＳ５４）。具体的に、制御部１１は、方向がＩＮに設定されたフィルタリングルールを追加する。このとき、制御部１１は、配信サーバＤＳから受信したユーザ端末ＴｉのＩＰアドレス及びポート番号を、送信元ＩＰアドレス及び送信元ポート番号としてフィルタリングルールに格納する。また、制御部１１は、ストリーム配信用に決定したＩＰアドレス及びストリーム配信用に記憶部１２に記憶されたポート番号を宛先ＩＰアドレス及び宛先ポート番号としてフィルタリングルールに格納する。また、制御部１１は、プロトコルをＴＣＰに設定し、処理を通過に設定する。また、制御部１１は、方向がＯＵＴに設定されたフィルタリングルールを追加する。このとき、また、制御部１１は、ストリーム配信用に決定したＩＰアドレス及びストリーム配信用に記憶部１２に記憶されたポート番号を送信元ＩＰアドレス及び送信元ポート番号としてフィルタリングルールに格納する。また、制御部１１は、配信サーバＤＳから受信したユーザ端末ＴｉのＩＰアドレス及びポート番号を、宛先ＩＰアドレス及び宛先ポート番号としてフィルタリングルールに格納する。また、制御部１１は、プロトコルをＴＣＰに設定し、処理を通過に設定する。
【００５７】
次いで、制御部１１は、ストリーム配信用に決定した配信ルータＲｎ及びストリーム配信用のポート番号を配信サーバＤＳへ送信する（ステップＳ５５）。制御部１１は、ステップＳ５５の処理を終えると、サーバ通信処理を終了させる。
【００５８】
図７（Ｂ）は、配信ルータＲｎの制御部１１のＨＴＴＰ通信処理の処理例を示すフローチャートである。図７（Ｂ）に示すように、制御部１１は、ユーザ端末Ｔｉから送信されてきたコンテンツ取得要求を受信する（ステップＳ６１）。次いで、配信ルータＲｎは、コンテンツ取得要求に含まれるコンテンツＩＤに対応するコンテンツを記憶部１２から取得する（ステップＳ６２）。次いで、制御部１１は、コンテンツ取得要求を送信してきたユーザ端末Ｔｉへ、取得したコンテンツのストリーミング配信をする（ステップＳ６３）。次いで、制御部１１は、配信を終了するか否かを判定する（ステップＳ６４）。コンテンツを構成する全てのパケットを送信したときや、ユーザ端末Ｔｉから終了要求を受信したとき、制御部１１は、配信を終了すると判定する。制御部１１は、配信を終了しないと判定した場合には（ステップＳ６４：ＮＯ）、ステップＳ６３に進む。
【００５９】
一方、制御部１１は、配信を終了すると判定した場合には（ステップＳ６４：ＹＥＳ）、ステップＳ６５に進む。ステップＳ６５において、制御部１１は、フィルタリングテーブルからフィルタリングルールを削除する。例えば、制御部１１は、コンテンツ取得要求のパケットヘッダから宛先ＩＰアドレスを取得する。制御部１１は、パケットヘッダから取得した宛先ＩＰアドレスと一致する宛先ＩＰアドレスを含むフィルタリングルールを、記憶部１２から削除する。また、制御部１１は、パケットヘッダから取得した宛先ＩＰアドレスと一致する送信元ＩＰアドレスを含むフィルタリングルールを、記憶部１２から削除する。次いで、制御部１１は、記憶部１２に記憶されたストリーミング配信用のＩＰアドレスのうち、パケットヘッダから取得した宛先ＩＰアドレスと一致するＩＰアドレスを、記憶部１２から削除する（ステップＳ６６）。制御部１１は、ステップＳ６６を終えると、ＨＴＴＰ通信処理を終了させる。
【００６０】
以上説明したように、本実施形態によれば、制御部１１は、他のノードからＰ２Ｐ制御メッセージを受信したか、又は、ユーザ端末Ｔｉから配信サーバＤＳを介してコンテンツ取得要求を受信したかを判定する。制御部１１は、コンテンツ取得要求を受信したと判定した場合、配信ルータＲｎで利用可能な複数のＩＰアドレスのうち何れかのＩＰアドレスを、ストリーミング配信用のＩＰアドレスとして、配信サーバＤＳを介してユーザ端末Ｔｉへ送信する。制御部１１は、ユーザ端末Ｔｉから直接コンテンツ取得要求を受信すると、コンテンツをストリーミング配信する。ストリーミング配信用のＩＰアドレスを送信した後、制御部１１は、次に送信するストリーミング配信用のＩＰアドレスとして、前に送信したＩＰアドレスとは異なるＩＰアドレスを決定する。そのため、配信ルータＲｎのＩＰアドレスが知られることによるセキュリティ上のリスクを回避しながら、ユーザ端末Ｔｉへコンテンツを配信することができる。
【００６１】
なお、上記実施形態においては、オーバーレイネットワークに、ＤＨＴを利用したピアツーピアネットワークが適用されていたが、これに限られるものではない。例えば、他のピアツーピアシステム、または、オーバーレイネットワークを用いたシステムが適用されてもよい。ＤＨＴを利用しないオーバーレイネットワークとしては、例えば、ハイブリッド型のピアツーピアネットワークシステムがある。ハイブリッド型のピアツーピアネットワークシステムの場合、例えば、センターサーバＳＳが、全てのコンテンツのホルダ情報を記憶する。
【符号の説明】
【００６２】
１，１１  制御部
２，１２  記憶部
３，１３  通信部
ＳＳ  センターサーバ
ＤＳ  配信サーバ
Ｒｎ  配信ルータ
Ｔｉ  ユーザ端末
ＮＷ  ネットワーク
ＯＮ  オーバーレイネットワーク
Ｓ  通信システム
【図１】
2015046828.tif 000003
【図２】
2015046828.tif 000004
【図３】
2015046828.tif 000005
【図４】
2015046828.tif 000006
【図５】
2015046828.tif 000007
【図６】
2015046828.tif 000008
【図７】
2015046828.tif 000009