(57)【要約】【課題】逐次新しく生成されて異なるＩＤが付加されるデータの中から、ユーザが望むデータを簡便に配信可能なデータ配信システム、ルータ、ルータの制御方法及びルータの制御プログラムを提供すること【解決手段】データ配信システムにおいてクライアント端末側からエイリアスＩＤを含むデータ要求を受信したサーバは、当該エイリアスＩＤに対応する対応ＩＤ及び当該対応ＩＤに対応するデータを送信する。データ配信システムのルータは、前記サーバから受信した前記データ及び前記対応ＩＤを対応付けてキャッシュするキャッシュ部と、前記エイリアスＩＤと前記対応ＩＤとを対応付けて格納する格納領域と、クライアント端末側から前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記格納領域を参照することにより、前記対応ＩＤに前記キャッシュ部において対応付けられたデータを配信する配信部を有する。【選択図】図１
2014164583.tif 000002
【特許請求の範囲】
【請求項１】
クライアント端末側からエイリアスＩＤを含むデータ要求をサーバが受信した場合に、当該サーバは、当該エイリアスＩＤに対応する対応ＩＤと、当該対応ＩＤに対応するデータと、をクライアント端末側に送信するデータ配信システムであって、
前記データ配信システムは、前記サーバとクライアント端末側とを接続する第１のルータを備え、
前記第１のルータは、
前記サーバから受信した前記データ及び前記対応ＩＤを対応付けてキャッシュする第１のキャッシュ部と、
前記エイリアスＩＤと前記対応ＩＤとを対応付けて格納する第１のＩＤ格納領域と、
クライアント端末側から前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記第１のＩＤ格納領域を参照することにより、当該第１のＩＤ格納領域において当該エイリアスＩＤに対応付けられた対応ＩＤに前記第１のキャッシュ部において対応付けられたデータをクライアント端末側に配信する第１の配信部と、を有する、
データ配信システム。
【請求項２】
前記第１のルータは、前記第１のＩＤ格納領域において、前記エイリアスＩＤと前記対応ＩＤとの対応付けとともに、当該対応付けの有効期限を対応付けて格納し、
前記第１の配信部は、クライアント端末側から前記データ要求を受信した場合に、前記エイリアスＩＤに基づいて前記第１のＩＤ格納領域を参照することにより、そのときの時刻において前記第１のＩＤ格納領域に格納した前記有効期限が失効したことを判定した場合には、当該データ要求を前記サーバに転送する、
請求項１に記載のデータ配信システム。
【請求項３】
前記データ配信システムは、前記サーバから前記データが送信されるときの前記データの配信経路上にある第２のルータをさらに備え、
前記第１のルータは、前記第２のルータのアドレス情報を記録するテーブルをさらに有し、
前記第１の配信部は、前記データが前記第１のキャッシュ部にキャッシュされていない場合に、前記テーブルを参照して取得した前記第２のルータのアドレス情報に基づいて当該第２のルータに前記データ要求を転送する、
請求項２に記載のデータ配信システム。
【請求項４】
前記第１の配信部は、前記データ要求に前記対応ＩＤの情報を含ませて前記第２のルータに転送し、
前記第２のルータは、
前記サーバから受信した前記データ及び前記対応ＩＤを対応付けてキャッシュする第２のキャッシュ部と、
前記第１のルータから前記対応ＩＤの情報を含む前記データ要求を受信した場合に、当該対応ＩＤと前記第２のキャッシュ部において対応付けられたデータをクライアント端末側に配信する第２の配信部と、を有する、
請求項３に記載のデータ配信システム。
【請求項５】
前記第２のルータは、
前記サーバから受信した前記データ及び前記対応ＩＤを対応付けてキャッシュする第２のキャッシュ部と、
前記エイリアスＩＤと前記対応ＩＤとを対応付けて格納する第２のＩＤ格納領域と、
前記第１のルータから前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記第２のＩＤ格納領域を参照することにより、当該第２のＩＤ格納領域において当該エイリアスＩＤに対応付けられた対応ＩＤに前記第２のキャッシュ部において対応付けられたデータをクライアント端末側に配信する第２の配信部と、を有する、
請求項３に記載のデータ配信システム。
【請求項６】
前記第２のルータは、前記第２のＩＤ格納領域において、前記エイリアスＩＤと前記対応ＩＤとの対応付けとともに、当該対応付けの有効期限を対応付けて格納し、
前記第２の配信部は、前記第１のルータから前記データ要求を受信した場合に、前記エイリアスＩＤに基づいて前記第２のＩＤ格納領域を参照することにより、そのときの時刻において前記第２のＩＤ格納領域に格納した前記有効期限が失効したことを判定した場合には、当該データ要求を前記サーバに転送する、
請求項５に記載のデータ配信システム。
【請求項７】
前記サーバは、前記データを配信するときに、前記エイリアスＩＤと前記対応ＩＤとの対応付けの有効時間の情報を併せて配信し、
前記第１のルータは、前記有効時間と、当該サーバから当該データが配信された時刻とに基づいて前記有効期限を算出し、前記第１のＩＤ格納領域において当該有効期限を格納する、
請求項２ないし６のいずれか一項に記載のデータ配信システム。
【請求項８】
エイリアスＩＤを含むデータ要求を送信するクライアント端末側と、当該データ要求を受信した場合に、当該エイリアスＩＤに対応する対応ＩＤと、当該対応ＩＤに対応するデータと、をクライアント端末側に送信するサーバとを接続するルータであって、
前記サーバから受信した前記データ及び前記対応ＩＤを対応付けてキャッシュするキャッシュ部と、
前記エイリアスＩＤと前記対応ＩＤとを対応付けて格納するＩＤ格納領域と、
クライアント端末側から前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記ＩＤ格納領域を参照することにより、当該ＩＤ格納領域において当該エイリアスＩＤに対応付けられた対応ＩＤと前記キャッシュ部において対応付けられたデータをクライアント端末側に配信する配信部と、を備える、
ルータ。
【請求項９】
エイリアスＩＤを含むデータ要求を送信するクライアント端末側と、当該データ要求を受信した場合に、当該エイリアスＩＤに対応する対応ＩＤと、当該対応ＩＤに対応するデータと、をクライアント端末側に送信するサーバとを接続するルータの制御方法であって、
前記サーバから受信した前記データ及び前記対応ＩＤを対応付けて前記ルータのキャッシュ部にキャッシュするステップと、
前記エイリアスＩＤと前記対応ＩＤとを対応付けて前記ルータのＩＤ格納領域に格納するステップと、
クライアント端末側から前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記ＩＤ格納領域を参照することにより、当該ＩＤ格納領域において当該エイリアスＩＤに対応付けられた対応ＩＤと前記キャッシュ部において対応付けられたデータをクライアント端末側に配信するステップと、
を備えるルータの制御方法。
【請求項１０】
エイリアスＩＤを含むデータ要求を送信するクライアント端末側と、当該データ要求を受信した場合に、当該エイリアスＩＤに対応する対応ＩＤと、当該対応ＩＤに対応するデータと、をクライアント端末側に送信するサーバとを接続するルータの制御プログラムであって、
前記サーバから受信した前記データ及び前記対応ＩＤを対応付けて前記ルータのキャッシュ部にキャッシュするステップと、
前記エイリアスＩＤと前記対応ＩＤとを対応付けて前記ルータのＩＤ格納領域に格納するステップと、
クライアント端末側から前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記ＩＤ格納領域を参照することにより、当該ＩＤ格納領域において当該エイリアスＩＤに対応付けられた対応ＩＤと前記キャッシュ部において対応付けられたデータをクライアント端末側に配信するステップと、
をルータに実行させる制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、逐次新しく生成されてそれぞれ異なるＩＤが付加されるデータをユーザに配信することが可能なデータ配信システム、ルータ、ルータの制御方法及びルータの制御プログラムに関する。
【背景技術】
【０００２】
近年、ネットワークを介したコンテンツ（ビデオや書籍など）の流通が進んでいる。現状では、コンテンツは特定のサーバに保存されており、特定のコンテンツを欲するユーザは、コンテンツを保存しているサーバのＩＰ（Internet Protocol）アドレスをＤＮＳ（Domain Name System）等により取得して、コンテンツを保存しているサーバにコンテンツ要求メッセージを送信することで、所望のコンテンツを取得している。
【０００３】
しかし、コンテンツ数やユーザ数の増大により、サーバへの負荷やコンテンツ取得時間の増大が懸念される。特定の少数コンテンツ（Video On Demandや企業のＷｅｂページなど）に対しては、既存のＣＤＮ（Content Delivery Network）技術によって世界各地のサーバにキャッシュがおかれ、サーバの負荷分散や応答時間の短縮が図られている。しかし、ＣＤＮにそぐわない一過性のデータ（例えばセンサー測定データなど）やＣＤＮを使うほどコストをかけられないコンテンツ（例えば商店街の割引クーポンデータなど）に対しては、ＣＤＮが用いられないため問題が解決されない。
【０００４】
将来ネットワークを介してやりとりされるあらゆるコンテンツデータに対してサーバ負荷削減と取得時間の短縮を図る目的として、ネットワーク内にコンテンツキャッシュを保持し、コンテンツＩＤを用いてキャッシュへの誘導を行う技術であるＢｒｅａｄｃｒｕｍｂｓ（以下、ＢＣと記載）が非特許文献１で開示されている。
【０００５】
ＢＣの動作を、図１３を使って説明する。ここで図１３に示すデータ配信システム１００には、コンテンツサーバ１０１、ルータ２０１、２０２、２０３、ユーザ端末３０１、３０２、およびマッピングサーバ４０１が存在する。
【０００６】
（１）ＢＣ情報の作成
まず、ユーザ端末３０１が、あるコンテンツを取得しようとしたとする。ユーザ端末３０１は、マッピングサーバ４０１に問い合わせ、所望するコンテンツのコンテンツＩＤ（＝Ａ）とコンテンツのオリジナルデータを保持するコンテンツサーバ１０１のＩＰアドレスを取得する。ユーザ端末３０１はコンテンツサーバ１０１宛に、コンテンツ要求メッセージを送信する。ここでコンテンツ要求メッセージには、要求するコンテンツのＩＤ（＝Ａ）が含まれている。
【０００７】
ユーザ端末３０１が送信したコンテンツ要求メッセージは、まずルータ２０２によって受信される。ルータ２０２は、ユーザ端末３０１から受信したコンテンツ要求メッセージをルータ２０１へと転送する。ルータ２０１は、ルータ２０２と同様に、コンテンツサーバ１０１へとコンテンツ要求メッセージを転送する。
【０００８】
コンテンツ要求メッセージを受信したコンテンツサーバ１０１は、コンテンツデータ（以下、コンテンツＡと記載）を含むコンテンツ応答メッセージをユーザ端末３０１宛に送信する。コンテンツ応答メッセージは、まずルータ２０１が受信する。ここで、ルータ２０１はメッセージの内容を解析し、コンテンツＡのキャッシュを自身の記憶装置に保存して、ルータ２０２へとメッセージ転送する。その後、ルータ２０１は、自身のＢｒｅａｄｃｒｕｍｂテーブル（以下、ＢＣテーブルと記載する）に次の[ＢＣ情報２０１−１]を記録する。
[ＢＣ情報２０１−１]
・コンテンツＩＤ = A
・上流ノード = null
・下流ノード  = 202
・データ通過時刻  = 2010/11/26 10:00:00
・リクエスト通過時刻  = null
【０００９】
もし、ルータ２０１においてコンテンツＡのキャッシュを保持するために十分な空き記憶領域が無い場合、ルータ２０１は、最も過去にアクセスされたコンテンツキャッシュからキャッシュを削除して空き記憶領域を増やし、増加した記憶領域に新しいコンテンツキャッシュを保存する。
【００１０】
なお、コンテンツキャッシュが削除されても、転送情報であるＢＣ情報の下流ノード方向にまだキャッシュを持つルータが存在する可能性があるため、ルータ２０１は、ＢＣ情報をそのまま保持する。ＢＣ情報は、データ通過時刻が一定時間（Ｔｆ）更新されなかった場合、又はリクエスト通過時刻が一定時間（Ｔｑ）更新されなかった場合に削除される。基本的には、ルータが有するコンテンツキャッシュの容量は全流通コンテンツ数に対して非常に小さいため、あまりダウンロードされないコンテンツのキャッシュは比較的早く削除される傾向となる。それに対してＢＣ情報はタイマで削除され、タイマも新しいダウンロードやリクエストの到着により延長されるため、キャッシュに比べて長く残る。
【００１１】
コンテンツ応答メッセージをルータ２０１から受信したルータ２０２は、ルータ２０１と同様に自身の記憶装置にコンテンツＡのキャッシュを保存し、ユーザ端末３０１へとメッセージを転送する。その後、ルータ２０２は、以下の[ＢＣ情報２０２−１]を自身のＢＣテーブルに記録する。
[ＢＣ情報２０２−１]
・コンテンツＩＤ  =  A
・上流ノード  = 201
・下流ノード  = null
・データ通過時刻  = 2010/11/26 10:00:10
・リクエスト通過時刻  = null
【００１２】
（２）要求メッセージのキャッシュへの誘導
一定時間の後、記憶領域の不足などなんらかの理由によりルータ２０１の記憶装置からコンテンツＡのキャッシュデータが削除された場合を想定する。その後、ユーザ端末３０２が同じコンテンツＡを要求する。ユーザ端末３０２は、ユーザ端末３０１と同様に、マッピングサーバ４０１からコンテンツＡのコンテンツサーバ１０１のＩＰアドレスを取得してコンテンツ要求メッセージを送信する。コンテンツ要求メッセージはルータ２０３が受信し、ルータ２０１へと転送される。ここで、ルータ２０１はコンテンツ要求メッセージに含まれるコンテンツＩＤ（＝Ａ）のキャッシュが自身の記録装置に保持されているかを確認する。
【００１３】
キャッシュが保存されていない場合、ルータ２０１はコンテンツ要求メッセージに記載されたＩＤと、自身のＢＣテーブルに記録されているＢＣ情報（[ＢＣ情報２０１−１]）とを比較する。ＢＣ情報において、コンテンツ要求メッセージに記載されたＩＤと同じコンテンツＩＤで、かつデータ通過時刻が一定時間以内である情報が存在する場合、ルータ２０１はコンテンツ要求メッセージをサーバ方向でなく、ＢＣテーブルに記録された下流ノード方向へと転送する。そのため、ルータ２０１はメッセージをルータ２０２へと転送する。その後、ルータ２０１は、自身のＢＣテーブルのコンテンツＡに関する情報（[ＢＣ情報２０１−１]）のリクエスト通過時刻を、コンテンツ要求メッセージを受信した時刻へと書き換える。つまりルータ２０１は、[ＢＣ情報２０１−１]を、以下の[ＢＣ情報２０１−２]に更新する。
[ＢＣ情報２０１−２]
・コンテンツＩＤ = A
・上流ノード  = null
・下流ノード  = 202
・データ通過時刻  = 2010/11/26 10:00:00
・リクエスト通過時刻  = 2010/11/26 10:04:59
【００１４】
コンテンツ要求メッセージを受信したルータ２０２は、自身の記憶装置にコンテンツＡのキャッシュが保存されているかどうかを確認する。ルータ２０２にはユーザ端末３０１へと転送したコンテンツＡのキャッシュが保存されているため、ルータ２０２はコンテンツＡのデータを含めたコンテンツ応答メッセージを作成し、ユーザ端末３０２宛にルータ２０１へと送信する。その後、ルータ２０２は自身のＢＣテーブルのコンテンツＡに関する情報（[ＢＣ情報２０２−１]）の下流ノード、データ通過時刻、リクエスト通過時刻を以下の[ＢＣ情報２０２−２]のように書き換える。
[ＢＣ情報２０２−２]
・コンテンツＩＤ = A
・上流ノード  = 201
・下流ノード  = 201
・データ通過時刻  = 2010/11/26 10:05:01
・リクエスト通過時刻  = 2010/11/26 10:05:00
【００１５】
コンテンツ応答メッセージをルータ２０２から受信したルータ２０１は、再度コンテンツＡのデータを自身の記録装置へと保存し、ルータ２０３へと転送する。その後、自身のＢＣテーブルのコンテンツＡに関する情報（[ＢＣ情報２０１−２]）の上流ノード、下流ノード、データ通過時刻を、以下の[ＢＣ情報２０１−３]のように書き換える。
[ＢＣ情報２０１−３]
・コンテンツＩＤ = A
・上流ノード  = 202
・下流ノード  = 203
・データ通過時刻  = 2010/11/26 10:05:10
・リクエスト通過時刻  = 2010/11/26 10:04:59
【００１６】
同様にルータ２０３もコンテンツ応答メッセージに含まれるコンテンツＡのキャッシュを保存し、ユーザ端末３０２にメッセージを転送する。その後、ルータ２０３は自身のＢＣテーブルに以下の[ＢＣ情報２０３−１]を記録する。
[ＢＣ情報２０３−１]
・コンテンツＩＤ = A
・上流ノード  = 201
・下流ノード  = null
・データ通過時刻  = 2010/11/26 10:05:20
・リクエスト通過時刻  = null
【００１７】
（３）ＢＣ情報の無効化
もし、ルータ２０１からルータ２０２へとユーザ端末３０２のコンテンツ要求メッセージが転送された時に、ルータ２０２も既にコンテンツＡのキャッシュを保存していなかった場合、ルータ２０２は同様に自身のＢＣテーブルからコンテンツＡに関する情報（[ＢＣ情報２０２−１]）を検索する。ルータ２０２が保持する情報では、下流ノードはｎｕｌｌであるため、これ以上ＢＣに沿った転送ができない。そのため、ルータ２０２はコンテンツ要求メッセージをＢＣテーブルの情報の上流ノードであるルータ２０１へと転送し、ＢＣテーブルからコンテンツＡに関する情報を削除する。
【００１８】
ルータ２０２からコンテンツ要求メッセージを受信したルータ２０１は、自身のＢＣテーブルを参照し、メッセージの転送者と、ＢＣテーブル情報（[ＢＣ情報２０１−２]）の下流ノードが、ともにルータ２０２であるため、ＢＣテーブル情報は既に無効になったと判断する。ルータ２０１はその判断に基づいて、コンテンツ要求メッセージをＢＣテーブル情報の上流ノード又はサーバへの最短経路の次ホップへと転送する。
【００１９】
この場合、ルータ２０１が保持するＢＣ情報（[ＢＣ情報２０１−２]）の上流ノードはｎｕｌｌであるため、ルータ２０１はコンテンツ要求メッセージをコンテンツサーバ１０１への最短経路に沿ってコンテンツサーバ１０１へ転送する。その後、ルータ２０１は、ＢＣテーブルのコンテンツＡに関する情報（[ＢＣ情報２０１−２]）を削除する。これにより、ＢＣ情報に沿った経路上にコンテンツデータが既に存在しない場合、ルータ２０１は、無効となったＢＣ情報を削除しながらコンテンツ要求メッセージをコンテンツサーバ１０１へと届けることができる。
【００２０】
上述のように、ルータがコンテンツデータのキャッシュを保持し、コンテンツ要求メッセージをコンテンツ応答メッセージが流れた方向へと誘導することにより、ユーザ端末はネットワーク内に保持されたコンテンツデータを取得することができる。これにより、サーバ負荷の削減とコンテンツ取得時間の短縮を図ることができる。
【先行技術文献】
【非特許文献】
【００２１】
【非特許文献１】E.J. Rosensweig, J. Kurose, "Breadcrumbs: Efficient, Best-Effort Content Location in Cache Networks ",  INFOCOM 2009,IEEE, 2009, pp. 2631-2635, DOI: 10.1109/INFCOM.2009.5062201
【発明の概要】
【発明が解決しようとする課題】
【００２２】
ネットワークにおいてコンテンツＩＤをベースとするデータ取得要求をする場合には、ＩＤの取得方法が課題となる。映画など静的なコンテンツの場合、ＷｅｂサイトなどでコンテンツのＩＤを提示することで、ユーザに知らせることが可能である。しかし、内容が定期的に更新されるコンテンツでは、このような提示は困難である。
【００２３】
例えば、ある場所に設定されたセンサが１０秒毎に気温・光・音のデータを取得しており、取得した個々のデータには、例えば「X.20120428124520」のように、センサを識別するＩＤ（＝Ｘ）と、データを取得した年月日及び時刻とを合わせたコンテンツＩＤが設定されるとする。ユーザが上述のネットワークにおいてそのセンサの最新データを取得したい場合、まず最新データのコンテンツＩＤを取得する必要がある。しかし、最新データのコンテンツＩＤは１０秒毎に変化するため、それをＷｅｂサイト等で提示することは手間がかかってしまい、またユーザも刻々と生成されるＩＤのうち所望のＩＤを指定することは困難である。さらに、前述のＢＣを用いたキャッシュへの誘導においても、Ａｌｉａｓを用いない場合は最新データのキャッシュへの誘導ができない。
【００２４】
本発明は、このような問題点を解決するためになされたものであり、逐次新しく生成されてそれぞれ異なるＩＤが付加されるデータに対して、ユーザが望むデータを簡便に配信することが可能なデータ配信システム、ルータ、ルータの制御方法及びルータの制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【００２５】
本発明の第１の態様は、クライアント端末側からエイリアスＩＤを含むデータ要求をサーバが受信した場合に、当該サーバは、当該エイリアスＩＤに対応する対応ＩＤと、当該対応ＩＤに対応するデータと、をクライアント端末側に送信するデータ配信システムを含む。前記データ配信システムは、前記サーバとクライアント端末側とを接続する第１のルータを備える。前記第１のルータは、前記サーバから受信した前記データ及び前記対応ＩＤをそれぞれ対応付けてキャッシュする第１のキャッシュ部と、前記エイリアスＩＤと前記対応ＩＤとを対応付けて格納する第１のＩＤ格納領域と、クライアント端末側から前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記第１のＩＤ格納領域を参照することにより、当該第１のＩＤ格納領域において当該エイリアスＩＤに対応付けられた対応ＩＤと前記第１のキャッシュ部において対応付けられたデータをクライアント端末側に配信する第１の配信部と、を有する。
【００２６】
本発明の第２の態様は、エイリアスＩＤを含むデータ要求を送信するクライアント端末側と、当該データ要求を受信した場合に、当該エイリアスＩＤに対応する対応ＩＤと、当該対応ＩＤに対応するデータと、をクライアント端末側に送信するサーバとを接続するルータを含む。前記ルータは、前記サーバから受信した前記データ及び前記対応ＩＤをそれぞれ対応付けてキャッシュするキャッシュ部と、前記エイリアスＩＤと前記対応ＩＤとを対応付けて格納するＩＤ格納領域と、クライアント端末側から前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記ＩＤ格納領域を参照することにより、当該ＩＤ格納領域において当該エイリアスＩＤに対応付けられた対応ＩＤと前記キャッシュ部において対応付けられたデータをクライアント端末側に配信する配信部と、を備える。
【００２７】
本発明の第３の態様は、エイリアスＩＤを含むデータ要求を送信するクライアント端末側と、当該データ要求を受信した場合に、当該エイリアスＩＤに対応する対応ＩＤと、当該対応ＩＤに対応するデータと、をクライアント端末側に送信するサーバとを接続するルータの制御方法を含む。このルータの制御方法は、以下のステップ（ａ）〜（ｃ）を含む。
（ａ）前記サーバから受信した前記データ及び前記対応ＩＤをそれぞれ対応付けて前記ルータのキャッシュ部にキャッシュすること、
（ｂ）前記エイリアスＩＤと前記対応ＩＤとを対応付けて前記ルータのＩＤ格納領域に格納すること、及び
（ｃ）クライアント端末側から前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記ＩＤ格納領域を参照することにより、当該ＩＤ格納領域において当該エイリアスＩＤに対応付けられた対応ＩＤと前記キャッシュ部において対応付けられたデータをクライアント端末側に配信すること。
【００２８】
本発明の第４の態様は、エイリアスＩＤを含むデータ要求を送信するクライアント端末側と、当該データ要求を受信した場合に、当該エイリアスＩＤに対応する対応ＩＤと、当該対応ＩＤに対応するデータと、をクライアント端末側に送信するサーバとを接続するルータの制御プログラムである。この制御プログラムは、以下のステップ（ａ）〜（ｃ）をルータに実行させる。
（ａ）前記サーバから受信した前記データ及び前記対応ＩＤをそれぞれ対応付けて前記ルータのキャッシュ部にキャッシュすること、
（ｂ）前記エイリアスＩＤと前記対応ＩＤとを対応付けて前記ルータのＩＤ格納領域に格納すること、及び
（ｃ）クライアント端末側から前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記ＩＤ格納領域を参照することにより、当該ＩＤ格納領域において当該エイリアスＩＤに対応付けられた対応ＩＤと前記キャッシュ部において対応付けられたデータをクライアント端末側に配信すること。
【発明の効果】
【００２９】
本発明により、逐次新しく生成されて異なるＩＤが付加されるデータの中から、ユーザが望むデータを簡便に配信することが可能なデータ配信システム、ルータ、ルータの制御方法及びルータの制御プログラムを提供することができる。
【図面の簡単な説明】
【００３０】
【図１】実施の形態１にかかるデータ配信システムの一例を示す構成図である。
【図２】実施の形態１にかかるルータの一例を示す構成図である。
【図３】実施の形態１にかかるＩＤ格納領域に対応付けて格納されたＡｌｉａｓＩＤ及び可変ＩＤの一例を示す表である。
【図４Ａ】実施の形態１にかかるデータ配信システムの動作シーケンスの一例を示す第１の図である。
【図４Ｂ】実施の形態１にかかるデータ配信システムの動作シーケンスの一例を示す第２の図である。
【図５】実施の形態２にかかるネットワークの一例を示す構成図である。
【図６】実施の形態２にかかるコンテンツサーバの構成の一例を示すブロック図である。
【図７】実施の形態２にかかるコンテンツサーバ内のメッセージ処理部の処理の一例を示すフローチャートである。
【図８】実施の形態２にかかるルータの構成の一例を示すブロック図である。
【図９】実施の形態２にかかるキャッシュ管理テーブルに対応付けて格納されたデータ及び可変ＩＤの一例を示す表である。
【図１０】実施の形態２にかかるＡｌｉａｓテーブルに格納されたＡｌｉａｓ情報及びその有効期限の一例を示す表である。
【図１１Ａ】実施の形態２にかかるルータ内のメッセージ処理部の処理の一例を示す第１のフローチャートである。
【図１１Ｂ】実施の形態２にかかるルータ内のメッセージ処理部の処理の一例を示す第２のフローチャートである。
【図１１Ｃ】実施の形態２にかかるルータ内のメッセージ処理部の処理の一例を示す第３のフローチャートである。
【図１２Ａ】実施の形態２にかかるネットワークの動作シーケンスの一例を示す第１の図である。
【図１２Ｂ】実施の形態２にかかるネットワークの動作シーケンスの一例を示す第２の図である。
【図１２Ｃ】実施の形態２にかかるネットワークの動作シーケンスの一例を示す第３の図である。
【図１３】関連技術にかかるネットワークの構成図である。
【発明を実施するための形態】
【００３１】
実施の形態１
以下、図面を参照して本発明の実施の形態１について説明する。図１は、実施の形態１にかかるデータ配信システムの一例を示す構成図である。データ配信システム１は、サーバ２、ルータ３、クライアント端末４及び５を備える。
【００３２】
データ配信システム１は、クライアント端末４又は５（以降、クライアント端末側とも記載）からエイリアスＩＤを含むデータ要求をサーバ２が受信した場合に、サーバ２がそのエイリアスＩＤに対応する対応ＩＤと、その対応ＩＤに対応するデータと、をクライアント端末側に送信する。
【００３３】
サーバ２は、クライアント端末４又は５からＡｌｉａｓ（エイリアス）ＩＤを含むデータ要求を受信した場合に、そのＡｌｉａｓＩＤに対応する対応ＩＤと、その対応ＩＤに対応するデータをクライアント端末側に送信する。
【００３４】
なお、対応ＩＤとは、データを一意に識別可能なＩＤであり、ＡｌｉａｓＩＤとは、ある対応ＩＤに対応付けられることにより、その対応ＩＤに対応付けられたデータを取得することが可能なＩＤをいう。
【００３５】
例えば、ＡｌｉａｓＩＤはサーバ２が提供する最新データを示すためのＩＤであるとする。ＡｌｉａｓＩＤに対応する対応ＩＤが時間経過に伴いＡ→Ｂ→Ｃと変化（Ａ、Ｂ、Ｃの対応ＩＤに対応するデータは、それぞれデータ１、データ２、データ３である）した場合に、ＡｌｉａｓＩＤはＸのまま変わらないとする。サーバ２が提供する最新データが対応ＩＤ「Ａ」に対応付けられているデータ１であるとき、クライアント端末側からＡｌｉａｓＩＤ「Ｘ」を含むデータ要求を受信すると、サーバ２は対応ＩＤ「Ａ」に対応するデータ１をクライアント端末側に送信する。サーバ２が提供する最新データが対応ＩＤ「Ｂ」に対応付けられているデータ２であるとき、クライアント端末側からＡｌｉａｓＩＤ「Ｘ」を含むデータ要求を受信すると、サーバ２は対応ＩＤ「Ｂ」に対応するデータ２をクライアント端末側に送信する。サーバ２が提供する最新データが対応ＩＤ「Ｃ」に対応付けられているデータ３であるとき、クライアント端末側からＡｌｉａｓＩＤ「Ｘ」を含むデータ要求を受信すると、サーバ２は対応ＩＤ「Ｃ」に対応するデータ３をクライアント端末側に送信する。このように、ＡｌｉａｓＩＤで参照される対応ＩＤ（即ち、対応ＩＤとＡｌｉａｓＩＤの対応関係）は逐次変更される。
【００３６】
ここでサーバ２の構成例として、サーバ２は、ＡｌｉａｓＩＤと、そのＡｌｉａｓＩＤに対応する対応ＩＤとを対応付けて格納するテーブルと、その対応ＩＤに対応するデータを記憶する記憶部を備える。サーバ２は、クライアント側からＡｌｉａｓＩＤを含むデータ要求を受信した場合に、そのデータ要求に含まれるＡｌｉａｓＩＤに基づいて内部のテーブルを参照することにより、そのＡｌｉａｓＩＤに対応する対応ＩＤを取得する。サーバ２はその対応ＩＤに基づいて、内部の記憶部にあるその対応ＩＤに対応するデータを取得し、そのデータをクライアント端末側に送信する。
【００３７】
ルータ３は、サーバ２とクライアント端末４、５を有線又は無線により接続する。ルータ３は、クライアント端末４、５から送信されたデータ要求をサーバ２に転送するほか、サーバ２から送信されたデータをクライアント端末４、５に転送する。
【００３８】
図２は、ルータ３の一例を示す構成図である。ルータ３は、キャッシュ部６、ＩＤ格納領域７及び配信部８を備える。
【００３９】
キャッシュ部６は、サーバ２から受信したデータ及びその対応ＩＤを対応付けてキャッシュする。キャッシュしたデータは、例えば一定時刻経過後に削除されてもよい。
【００４０】
ＩＤ格納領域７は、キャッシュ部６にキャッシュしたデータのＡｌｉａｓＩＤと対応ＩＤとを対応付けて格納する。これにより、配信部８がＩＤ格納領域７を参照することによって、配信部８はＡｌｉａｓＩＤに対応する対応ＩＤを取得することができる。
【００４１】
図３は、ＩＤ格納領域７に対応付けて格納されたＡｌｉａｓＩＤと対応ＩＤの一例を示す表である。図３では、ＡｌｉａｓＩＤ「Ｘ１」に対応付けられて対応ＩＤ「Ａ」が、ＡｌｉａｓＩＤ「Ｘ２」に対応付けられて対応ＩＤ「Ｂ」が、ＡｌｉａｓＩＤ「Ｘ３」に対応付けられて対応ＩＤ「Ｃ」が、ＩＤ格納領域７に格納されている。なおＩＤ格納領域７は、例えばテーブルで構成されている。
【００４２】
配信部８は、クライアント端末側からＡｌｉａｓＩＤの情報を含むデータ要求を受信した場合に、そのエイリアスＩＤに基づいてＩＤ格納領域７を参照する。これにより配信部８は、ＩＤ格納領域７においてそのエイリアスＩＤに対応付けられた対応ＩＤを取得する。配信部８は、その取得した対応ＩＤとキャッシュ部６において対応付けられたデータを、クライアント端末側に配信する。
【００４３】
なお、様々な処理を行う機能ブロックとして図２に記載されたルータ３の各要素は、ハードウェア的には、ＣＰＵ（Central Processing Unit）、メモリ、その他の回路で構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
【００４４】
クライアント端末４、５は、クライアントがデータの要求をし、要求したデータを取得する端末である。
【００４５】
図４Ａ、図４Ｂは、データ配信システム１の動作シーケンスの一例を示す図である。図４Ａは、ルータ３がデータをキャッシュするまでの過程を示した図であり、図４Ｂは、ルータ３がキャッシュしたデータをクライアント端末に配信するまでの過程を示した図である。図４Ａ及び図４Ｂにおいて、クライアント端末４又は５からのメッセージ送信は実線の矢印で示されており、サーバ２又はルータ３からのクライアント端末４又は５へのデータ送信は点線の矢印で示されている。以下、具体的なデータ配信システム１の動作について説明する。
【００４６】
まず、ルータ３がデータをキャッシュするまでの過程について説明する（図４Ａ）。
【００４７】
（１）まず、クライアント端末４は、エイリアスＩＤを含むデータ要求をサーバ２側にあるルータ３に対して送信する。ルータ３は、そのデータ要求を受信する。
【００４８】
（２）ルータ３は、クライアント端末４から受信したデータ要求をサーバ２に対して転送する。サーバ２は、ルータ３を介してクライアント端末４から送信されたデータ要求を受信する。
【００４９】
（３）サーバ２は、データ要求を受信した場合に、データ要求に含まれるエイリアスＩＤにその時点で対応する対応ＩＤと、その対応ＩＤに対応するデータと、をクライアント端末４側にあるルータ３に送信する。ルータ３は、サーバ２が送信した対応ＩＤ及びデータを受信する。
【００５０】
（４）ルータ３は、サーバ２が送信した対応ＩＤ及びデータを受信した場合に、そのデータ及び対応ＩＤを対応付けて、キャッシュ部６にキャッシュする。またルータ３は、サーバ２が送信した対応ＩＤ及びデータをクライアント端末４に転送する。クライアント端末４は、ルータ３から送信された対応ＩＤ及びデータを格納する（格納されたデータを図４Ａ、図４Ｂではキャッシュデータとして示している）。以上のようにして、クライアント端末４は、データ要求にかかるデータを取得することができる。
【００５１】
なお、（３）の処理が終了した段階で、ルータ３のＩＤ格納領域７には、サーバ２が送信したデータにかかるエイリアスＩＤと、そのデータにかかる対応ＩＤとが対応付けて格納されている。このＩＤ格納領域７におけるエイリアスＩＤ及び対応ＩＤの格納は、例えば（１）の処理以前に予めＩＤ格納領域７内で設定されていてもよいし、（３）においてルータ３がサーバ２から対応ＩＤ及びデータを受信したときになされていてもよい。
【００５２】
次に、ルータ３がキャッシュしたデータをクライアント端末に配信するまでの過程について説明する（図４Ｂ）。
【００５３】
（５）クライアント端末５は、（３）の処理の終了以降に、クライアント端末４が要求したデータと同じデータについて、そのデータのエイリアスＩＤの情報を含むデータ要求をサーバ２側にあるルータ３に送信する。つまりクライアント端末５は、クライアント端末４と同様のデータ要求をルータ３に送信する。ルータ３は、そのデータ要求を受信する。
【００５４】
（６）データ要求を受信したルータ３の配信部８は、データ要求に含まれるエイリアスＩＤに基づいてＩＤ格納領域７を参照する。これにより配信部８は、ＩＤ格納領域７においてそのエイリアスＩＤに対応付けられた対応ＩＤを取得する。配信部８は、その取得した対応ＩＤにキャッシュ部６において対応付けられたデータを、クライアント端末５に配信する。クライアント端末５は、その配信されたデータを受信する。
【００５５】
このように、データ配信システム１においてルータ３は、データ及びその対応ＩＤをキャッシュするキャッシュ部６と、キャッシュしたデータのＡｌｉａｓＩＤと対応ＩＤとを対応付けて格納するＩＤ格納領域７を有している。配信部８は、クライアント端末側からデータ要求を受信した場合に、ＡｌｉａｓＩＤに基づいてＩＤ格納領域７を参照することにより、ＩＤ格納領域７においてそのＡｌｉａｓＩＤに対応付けられた対応ＩＤにキャッシュ部６において対応付けられたデータを、クライアント端末側に配信する。これにより、クライアント端末側が対応ＩＤではないＡｌｉａｓＩＤを用いてデータ要求を送信した場合でも、ルータ３はそのＡｌｉａｓＩＤに対応付けられた対応ＩＤを特定し、その対応ＩＤに対応付けられたデータをクライアント端末側に配信することができる。従って、データ配信システム１は、逐次生成されるデータのうち、ユーザが望むデータを配信することができる。
【００５６】
なお、図４Ｂでは、データ要求を送信するのがクライアント端末５であるとして説明したが、データ要求を送信するのはクライアント端末４であってもよい。つまり、以前サーバ２に対してデータを要求したクライアント端末が、同じデータを再度要求する場合でも、ルータ３は上述の処理を実行することができる。
【００５７】
実施の形態２
以下、図面を参照して本発明の実施の形態２について説明する。図５は、実施の形態２にかかるネットワーク（データ配信システム）の一例を示す構成図である。データ配信システム１０は、コンテンツサーバ２０、ルータ３０、４０、５０、ユーザ端末６０、７０及びマッピングサーバ８０を備える。なお、コンテンツサーバ２０は実施の形態１にかかるサーバ２、ルータ３０、４０及び５０は実施の形態１にかかるルータ３、ユーザ端末６０、７０はそれぞれ実施の形態１にかかるクライアント端末４、５に対応する。
【００５８】
実施の形態２では、コンテンツ情報のデータ配信システムにおいて利用されるＡｌｉａｓＩＤに基づき、データ配信システムにおいてコンテンツデータをキャッシュしたルータへデータ要求を誘導することにより、ユーザがコンテンツデータのキャッシュを取得する方法を説明する。ここでコンテンツデータは、定期もしくは不定期に生成されており、コンテンツデータの対応ＩＤもそれに伴って定期もしくは不定期に付加される。ＡｌｉａｓＩＤは、ある条件（たとえば最新であるなど）に合うコンテンツデータを特定するために用いられるＩＤであり、条件にマッチするコンテンツデータおよびＩＤが時間的に変化する場合でも変化しない。換言すれば、データ配信システムは、逐次生成される対応ＩＤではなくＡｌｉａｓＩＤに基づいて、ルータがキャッシュしたコンテンツデータを発見することができる。
【００５９】
データ配信システム１０は、クライアント端末側からＡｌｉａｓＩＤを含むデータ要求をコンテンツサーバ２０が受信した場合に、コンテンツサーバ２０がそのＡｌｉａｓＩＤに対応するコンテンツＩＤと、そのコンテンツＩＤに対応するデータと、をクライアント端末側に送信する。
【００６０】
コンテンツサーバ２０は、ユーザ端末６０又は７０（以下、ユーザ端末側とも記載）からＡｌｉａｓＩＤを含むデータ要求を受信した場合に、そのＡｌｉａｓＩＤに対応するコンテンツＩＤと、そのコンテンツＩＤに対応するコンテンツデータをユーザ端末側に送信する。
【００６１】
図６は、コンテンツサーバ２０の構成の一例を示すブロック図である。コンテンツサーバ２０は、コンテンツデータ記憶部２１、データ生成部２２、クロック２３、コンテンツ管理テーブル２４、Ａｌｉａｓテーブル２５及びメッセージ処理部２６を備える。
【００６２】
コンテンツデータ記憶部２１は、データ生成部２２が生成または取得したコンテンツデータを記憶するとともに、メッセージ処理部２６からの要求に応じて、記憶したコンテンツデータをメッセージ処理部２６に出力する。
【００６３】
データ生成部２２は、適時コンテンツデータを生成または取得すると、そのコンテンツデータをコンテンツデータ記憶部２１に保存する。さらにデータ生成部２２は、クロック２３から取得した時間情報に基づいて、コンテンツ管理テーブル２４にそのコンテンツデータのコンテンツ情報（コンテンツＩＤ、生成時間、サイズ、コンテンツサーバ２０内の保存領域及び記録形式等を含めた情報）を記録する。
【００６４】
ここでデータ生成部２２は、気温・光・音を計測するセンサ（図６で図示せず）が取得したセンサ情報を、コンテンツサーバ２０内のクロックに基づいて１０秒毎に生成している。ここでデータ生成部２２は、取得した各コンテンツデータに、「センサＩＤ.年月日時分秒」という形式でＩＤを割り当てている。この説明ではセンサＩＤ＝Ｘであるため、生成されるセンサ情報のＩＤ（コンテンツＩＤ）は、例えばクロック２３において２０１２年４月２３日１８時５４分３２秒にセンサ情報が生成された場合には「X.20120423185432」になる。ここでデータ生成部２２は、１０秒毎に新たなコンテンツデータを生成しており、生成されたコンテンツデータのコンテンツＩＤはすべて異なる。
【００６５】
さらにデータ生成部２２は、生成又は取得したコンテンツデータに対応するＡｌｉａｓＩＤが存在する場合、Ａｌｉａｓテーブル２５にコンテンツＩＤとＡｌｉａｓＩＤとを対応付けた情報（以下Ａｌｉａｓ情報と記載）を格納する。データ生成部２２は、対応付けの有効期限の情報もＡｌｉａｓ情報として格納する。上記の例では、１０秒毎にＡｌｉａｓＩＤが示すコンテンツＩＤが変化するため、ＡｌｉａｓＩＤが最新データを示すＡｌｉａｓであった場合、対応付けの有効期限は１０秒となる。この場合のＡｌｉａｓＩＤとコンテンツＩＤとの対応付け及びその対応付けの有効期限は次の通りである。
［ＡｌｉａｓＩＤ及びコンテンツＩＤの対応付け及びその有効期限］
・AliasID = X.latest ID = X.20120423185432 有効期限=10sec
【００６６】
他の例として、ＡｌｉａｓＩＤが１分以内の任意データを示すＡｌｉａｓであった場合、対応付けの有効期限は１分となる。この場合、ネットワーク内のルータには、同じＡｌｉａｓＩＤと異なるコンテンツＩＤとの対応付けであって、残存有効期限が異なるものが以下の６種類存在する可能性がある。
［ＡｌｉａｓＩＤ及びコンテンツＩＤの対応付け及びその対応付けの有効期限］
・AliasID = X.1min ID = X.20120423185432 有効期限=60sec
・AliasID = X.1min ID = X.20120423185422 有効期限=50sec
・AliasID = X.1min ID = X.20120423185412 有効期限=40sec
・AliasID = X.1min ID = X.20120423185402 有効期限=30sec
・AliasID = X.1min ID = X.20120423185352 有効期限=20sec
・AliasID = X.1min ID = X.20120423185342 有効期限=10sec
なおこの例においてＡｌｉａｓＩＤは「X.1min」である。またコンテンツデータは、２０１２年４月２３日１８時５４分３２秒、同２２秒、同１２秒、同０２秒、２０１２年４月２３日１８時５３分５２秒、同４２秒に生成されている。つまりコンテンツデータは１０秒毎に生成されている。
【００６７】
このように、ＡｌｉａｓＩＤが複数のコンテンツＩＤと対応付けられている場合、ルータはそのうちの任意のコンテンツＩＤにかかるデータをひとつ選択して送信しても良い。通常は、Ａｌｉａｓ情報の有効期限が最も長いデータを最良として選択する。なお、コンテンツサーバ２０は、コンテンツＩＤとＡｌｉａｓＩＤとの対応付けのうちで最新のもの（即ち有効期限が最も長いもの）のみをＡｌｉａｓテーブル２５に格納しても良い。
【００６８】
なお、コンテンツＩＤは実施の形態１における対応ＩＤに対応し、コンテンツサーバ２０によって適宜生成されるＩＤである。
【００６９】
クロック２３は、コンテンツサーバ２０において時刻を測定するクロックであり、データ生成部２２又はメッセージ処理部２６が適宜時刻参照を行って現在時刻の情報を取得する。
【００７０】
コンテンツ管理テーブル２４には、データ生成部２２が生成または取得して、コンテンツデータ記憶部２１に記憶されたコンテンツデータのコンテンツ情報が記録される。
【００７１】
Ａｌｉａｓテーブル２５には、データ生成部２２が生成または取得したコンテンツデータに対応するコンテンツＩＤとそのコンテンツＩＤに対応するＡｌｉａｓＩＤとを対応付けた情報（Ａｌｉａｓ情報）が格納される。
【００７２】
図７は、ルータを介してユーザ端末から特定のコンテンツデータについてのコンテンツ要求メッセージを受信したときの、メッセージ処理部２６が実行する処理の一例を示すフローチャートである。以下、図７を用いてメッセージ処理部２６が実行する処理を説明する。
【００７３】
メッセージ処理部２６は、ユーザ端末からコンテンツ要求メッセージを受信すると、コンテンツ要求メッセージに含まれたＩＤがコンテンツデータ記憶部２１に記憶されているか否かを、コンテンツ管理テーブル２４を参照することにより判定する（ステップＳ１１）。上述の通りコンテンツ管理テーブル２４には、コンテンツデータ記憶部２１に記憶されたコンテンツデータに対応するコンテンツＩＤ（ＡｌｉａｓＩＤではない）が記載されている。
【００７４】
コンテンツ要求メッセージに含まれたＩＤがコンテンツデータ記憶部２１に記憶されている場合（ステップＳ１１のＹｅｓ）、メッセージ処理部２６は、コンテンツ管理テーブル２４を参照して、そのコンテンツデータに対応するコンテンツＩＤに基づいてコンテンツ情報を検索し、そのコンテンツデータの保存領域の情報を取得する。メッセージ処理部２６は、保存領域であるコンテンツデータ記憶部２１からそのコンテンツデータを取得するとともに、そのコンテンツデータを含む応答メッセージを作成して、ルータを介してユーザ端末に送信する（ステップＳ１２）。
【００７５】
コンテンツ要求メッセージに含まれたＩＤがコンテンツデータ記憶部２１に記憶されていない場合（ステップＳ１１のＮｏ）、メッセージ処理部２６は、コンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓ情報として記載されているかどうかを判定するためＡｌｉａｓテーブル２５を参照する（ステップＳ１３）。
【００７６】
メッセージ処理部２６は、コンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓ情報として記載されていないかどうか、又はＡｌｉａｓ情報として記載されている場合でも有効期限が現時点で失効しているかどうかを判定する（ステップＳ１４）。
【００７７】
なお、コンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓテーブル２５にＡｌｉａｓ情報として記載されている場合は、メッセージ処理部２６は、コンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓＩＤであると判定することができる。その場合、メッセージ処理部２６は、コンテンツ要求メッセージが要求するコンテンツデータに対応するコンテンツＩＤを、Ａｌｉａｓテーブル２５においてそのＡｌｉａｓＩＤに対応付けられているコンテンツＩＤを参照することにより取得することができる。
【００７８】
さらにステップＳ１４においてメッセージ処理部２６は、クロック２３から現在時刻の情報を取得し、現在時刻が有効期限を超過しているか否かを判定することにより、有効期限が現時点で失効しているか否かを判定することができる。
【００７９】
コンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓ情報として記載されていないか、又はＡｌｉａｓ情報として記載されている場合でも有効期限が失効している場合に（ステップＳ１４のＹｅｓ）、メッセージ処理部２６は、要求されたコンテンツデータがコンテンツサーバ２０内にないことを示す無効メッセージを作成して、ルータを介してユーザ端末に送信（返信）する（ステップＳ１５）。
【００８０】
コンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓ情報として記載されており、その有効期限がない又は現時点でその有効期限が失効していない場合に（ステップＳ１４のＮｏ）、メッセージ処理部２６は、そのＡｌｉａｓ情報においてＡｌｉａｓＩＤに対応付けられたＩＤを参照して、コンテンツ要求メッセージが要求するコンテンツデータに対応するコンテンツＩＤを取得する。メッセージ処理部２６は、取得したコンテンツＩＤに対応するコンテンツデータがコンテンツデータ記憶部２１に記憶されているか否かを、コンテンツＩＤに基づいてコンテンツ管理テーブル２４を参照することにより判定する（ステップＳ１６）。
【００８１】
取得したコンテンツＩＤに対応するコンテンツデータがコンテンツデータ記憶部２１に記憶されている場合（ステップＳ１６のＹｅｓ）、メッセージ処理部２６は、コンテンツ管理テーブル２４を参照して、そのコンテンツデータに対応するコンテンツＩＤに基づいてコンテンツ情報を検索し、そのコンテンツデータの保存領域の情報を取得する。メッセージ処理部２６は、保存領域であるコンテンツデータ記憶部２１からそのコンテンツデータを取得するとともに、そのコンテンツデータを含む応答メッセージを作成してユーザ端末に送信する（ステップＳ１７）。
【００８２】
ここでメッセージ処理部２６は、取得したコンテンツデータに対応するＡｌｉａｓＩＤ及びコンテンツＩＤの情報（Ａｌｉａｓ情報）を応答メッセージに含めて送信する。またＡｌｉａｓＩＤとコンテンツＩＤとの対応付けに有効期限が設定されている場合は、その有効期限の情報も応答メッセージに含めて送信する。
【００８３】
取得したコンテンツＩＤに対応するコンテンツデータがコンテンツデータ記憶部２１に記憶されていない場合（ステップＳ１６のＮｏ）、メッセージ処理部２６は、要求されたコンテンツデータがコンテンツサーバ２０内にないことを示す無効メッセージを作成して、ルータを介してユーザ端末に送信（返信）する（ステップＳ１８）。
【００８４】
ルータ３０は、コンテンツサーバ２０とユーザ端末６０及び７０を接続するルータである。ルータ３０は、コンテンツサーバ２０からコンテンツデータが送信された場合にそのコンテンツデータをキャッシュし、ユーザ端末側からそのコンテンツデータについてのデータ要求を受信した場合に、キャッシュしたそのコンテンツデータをユーザ端末側に送信する。また、自身がそのコンテンツデータを既に有していない場合には、以前そのコンテンツデータが配信された配信経路にある他のルータに対して、データ要求を転送する。
【００８５】
図８は、ルータ３０の構成の一例を示すブロック図である。図８に示すルータは、コンテンツキャッシュ部３１、キャッシュ管理テーブル３２、ネットワーク（ＮＷ）経路テーブル３３、クロック３４、ＢＣテーブル３５、Ａｌｉａｓテーブル３６、Ａｌｉａｓ管理部３７およびメッセージ処理部３８を備える。ここでコンテンツキャッシュ部３１、Ａｌｉａｓテーブル３６及びメッセージ処理部３８はそれぞれ、実施の形態１にかかるキャッシュ部６、ＩＤ格納領域７及び配信部８に対応する。
【００８６】
コンテンツキャッシュ部３１は、コンテンツサーバ２０が出力したコンテンツデータがメッセージ処理部３８によりキャッシュ（格納）されるとともに、メッセージ処理部３８からの要求に応じて、キャッシュしたコンテンツデータをメッセージ処理部３８に出力する。ここでコンテンツキャッシュ部３１には、コンテンツサーバ２０から受信したコンテンツデータ及びコンテンツＩＤが対応付けられてキャッシュされる。
【００８７】
キャッシュ管理テーブル３２には、メッセージ処理部３８が取得して、コンテンツキャッシュ部３１に記憶されたコンテンツデータと、そのコンテンツ情報とを対応付けた管理情報が、メッセージ処理部３８により格納される。
【００８８】
図９は、キャッシュ管理テーブル３２に格納されたコンテンツ情報のうちのコンテンツＩＤと、コンテンツデータとが対応付けて格納された管理情報の一例を示す表である。コンテンツキャッシュ部３１の領域１に格納されたデータ１にはコンテンツＩＤ「Ａ」が対応付けられ、コンテンツキャッシュ部３１の領域２に格納されたデータ２にはコンテンツＩＤ「Ｂ」が対応付けられ、コンテンツキャッシュ部３１の領域３に格納されたデータ３にはコンテンツＩＤ「Ｃ」が対応付けられている。
【００８９】
ＮＷ経路テーブル３３には、ルータ３０と接続されているネットワーク経路情報が格納されている。具体的には、ＮＷ経路テーブル３３には、ルータ３０とコンテンツサーバ２０との間の経路にあるルータ等が、少なくとも記載されている。メッセージ処理部３８は、そのネットワーク経路情報を適宜参照する。
【００９０】
クロック３４は、ルータ３０において時刻を測定するクロックであり、Ａｌｉａｓ管理部３７又はメッセージ処理部３８は適宜時刻参照を行って現在時刻の情報を取得する。
【００９１】
ＢＣテーブル３５は、メッセージ処理部３８から出力されたＢＣ情報が格納される。ここでＢＣ情報は、コンテンツデータのコンテンツＩＤ、ルータ３０にコンテンツデータを送出した上流ノード、ルータ３０からコンテンツデータが送出される下流ノード、コンテンツデータのデータ通過時刻及びデータのリクエスト通過時刻により構成されている。メッセージ処理部３８は、ＢＣテーブル３５内にあるＢＣ情報を適宜参照する。
【００９２】
Ａｌｉａｓテーブル３６には、ルータ３０に出力されたコンテンツデータに対応するコンテンツＩＤとＡｌｉａｓＩＤとの対応付けの情報（Ａｌｉａｓ情報）及びそのＡｌｉａｓ情報の有効期限が格納される。メッセージ処理部３８は、Ａｌｉａｓテーブル３６内にあるＡｌｉａｓ情報を適宜参照する。
【００９３】
図１０は、Ａｌｉａｓテーブル３６に格納されたＡｌｉａｓ情報及びその有効期限の一例を示した表である。図９では、ＡｌｉａｓＩＤ「Ｘ１」に対応付けられてコンテンツＩＤ「Ａ」及び有効期限「Ｔ１」が、ＡｌｉａｓＩＤ「Ｘ２」に対応付けられてコンテンツＩＤ「Ｂ」及び有効期限「Ｔ２」が、ＡｌｉａｓＩＤ「Ｘ３」に対応付けられてコンテンツＩＤ「Ｃ」及び有効期限「Ｔ３」が、Ａｌｉａｓテーブル３６に格納されている。これらの情報がＡｌｉａｓテーブル３６に格納される過程については後述する。
【００９４】
なお、前述の通り、１つのＡｌｉａｓＩＤが複数のコンテンツＩＤと対応付けられ、各々の対応付けについて有効期限が設定されている場合、Ａｌｉａｓテーブル３６ではその複数の対応付けを全て格納する必要がある。ルータ３０がＡｌｉａｓＩＤに基づいてデータを送信するときに、ルータ３０はそのうちの任意のデータをひとつ選択して送信しても良い。通常、ルータ３０は、Ａｌｉａｓ情報の有効期限が最も長いデータを最良として選択する。
【００９５】
Ａｌｉａｓ管理部３７は、定期的にクロック３４及びＡｌｉａｓテーブル３６を参照し、クロック３４が示す現在時刻と、Ａｌｉａｓテーブル３６に格納されたＡｌｉａｓ情報の有効期限とを比較する。そしてＡｌｉａｓ管理部３７は、Ａｌｉａｓ情報の有効期限が現在時刻を超過している場合にその有効期限が失効したと判定し、そのＡｌｉａｓ情報をＡｌｉａｓテーブル３６から削除する。このようにしてＡｌｉａｓテーブル３６に含まれるＡｌｉａｓ情報は、Ａｌｉａｓ有効期限が過ぎるとＡｌｉａｓ管理部３７により削除される。
【００９６】
メッセージ処理部３８は、外部からの要求メッセージ及び応答メッセージに応じて以下の処理を実行する。
【００９７】
メッセージ処理部３８が、コンテンツデータが含まれるサーバ又は他のルータからの応答メッセージを受信した場合、メッセージ処理部３８は、コンテンツキャッシュ部３１に応答メッセージにかかるコンテンツデータのキャッシュを作成する。
【００９８】
その後、メッセージ処理部３８は、ＢＣテーブル３５にＢＣ情報として、応答メッセージに対応する要求メッセージを受信した隣接ノードを次ホップノード（下流ノード）として記録する。また、メッセージ処理部３８は、ＢＣテーブル３５にＢＣ情報として、応答メッセージに対応する要求メッセージを送信した隣接ノードを前ホップノード（上流ノード）として記録する。さらにメッセージ処理部３８は、応答メッセージが通過した時刻（リクエスト通過時刻）もＢＣ情報として記録する。
【００９９】
さらに、応答メッセージにＡｌｉａｓ情報が記載されている場合、メッセージ処理部３８はＡｌｉａｓテーブル３６に、そのＡｌｉａｓ情報であるコンテンツデータに対応するＡｌｉａｓＩＤ及びコンテンツＩＤを格納する。また応答メッセージに有効期限が設定されている場合は、その有効期限の情報もＡｌｉａｓテーブル３６に格納する。
【０１００】
図１１Ａ、図１１Ｂ及び図１１Ｃは、メッセージ処理部３８がユーザ端末側からのコンテンツ要求メッセージに応じて実行する処理の一例を示すフローチャートである。以下、図１１Ａ〜図１１Ｃを用いて、メッセージ処理部３８が実行する処理を説明する。
【０１０１】
メッセージ処理部３８は、コンテンツ要求メッセージを受信すると、Ａｌｉａｓテーブル３６を参照する（ステップＳ２１）。そして、メッセージ処理部３８は、コンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓ情報中にＡｌｉａｓＩＤとして格納されているか否かを判定する（ステップＳ２２）。つまり、メッセージ処理部３８は、コンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓＩＤであるか否かを判定する。
【０１０２】
コンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓＩＤとして格納されている場合、つまりコンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓＩＤである場合に（ステップＳ２２のＹｅｓ）、メッセージ処理部３８は、そのＡｌｉａｓ情報の有効期限の情報を参照して、その有効期限が失効しているか否かを判定する（ステップＳ２３）。なお、「有効期限が失効している場合」とは、有効期限がクロック３４が示す現在時刻を超過している場合であり、「有効期限が失効していない場合」とは、そのＡｌｉａｓ情報について有効期限が設定されていないか、又は設定されていても現時刻で有効期限が有効である場合である。
【０１０３】
Ａｌｉａｓ情報について有効期限が設定されており、有効期限が既に失効している場合には（ステップＳ２３のＮｏ）、メッセージ処理部３８は、コンテンツサーバ２０方向の次ホップノードのアドレスを取得して、次ホップノード（サーバ側）にコンテンツ要求メッセージを転送する（ステップＳ２４）。ルータ３０は、コンテンツ要求メッセージにおいて要求されたコンテンツデータについて失効した情報しか有しておらず、これ以上の処理ができないためである。
【０１０４】
Ａｌｉａｓ情報についての有効期限が失効していない場合には、メッセージ処理部３８は、コンテンツ要求メッセージに記載されたＩＤが記載されたＡｌｉａｓ情報におけるコンテンツＩＤを、実要求ＩＤに設定する（ステップＳ２５）。ここで実要求ＩＤとは、コンテンツ要求メッセージにおいて要求されたコンテンツデータのコンテンツＩＤのことをいう。
【０１０５】
ステップＳ２２に戻り、コンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓ情報として格納されていない場合、つまりコンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓＩＤでないと考えられる場合もしくはＡｌｉａｓＩＤであるかが判別できない場合に（ステップＳ２２のＮｏ）、メッセージ処理部３８は、コンテンツ要求メッセージに記載されたＩＤを実要求ＩＤに設定する（ステップＳ２６）。ルータ３０は、コンテンツ要求メッセージにおいて要求されたコンテンツデータについてＡｌｉａｓ情報を有していないため、コンテンツ要求メッセージに記載されたＩＤに基づいてコンテンツのキャッシュを検索するしかないからである。
【０１０６】
ステップＳ２５又はＳ２６の後、メッセージ処理部３８は、実要求ＩＤをコンテンツＩＤとして有するコンテンツデータがコンテンツキャッシュ部３１に格納されているか否かを、キャッシュ管理テーブル３２を参照することにより判定する（ステップＳ２７）。キャッシュ管理テーブル３２にコンテンツ要求メッセージに含まれた要求コンテンツＩＤが格納されていれば、そのＩＤがコンテンツＩＤであるコンテンツデータがコンテンツキャッシュ部３１に格納されていると、メッセージ処理部３８は判定する。
【０１０７】
実要求ＩＤをコンテンツＩＤとして有するコンテンツデータがコンテンツキャッシュ部３１に格納されている場合（ステップＳ２７のＹｅｓ）、メッセージ処理部３８は、コンテンツキャッシュ部３１からそのコンテンツデータを取得するとともに、そのコンテンツデータを含む応答メッセージを作成する。メッセージ処理部３８はＮＷ経路テーブル３３を参照して、要求ノード方向（コンテンツ要求メッセージを出力したユーザ端末の方向）への次ホップノードのアドレス情報を取得する。そしてメッセージ処理部３８は、要求ノード方向への次ホップノードに（即ちユーザ端末側に）対して、要求されたコンテンツデータを含む応答メッセージを送信する（ステップＳ２８）。
【０１０８】
さらにメッセージ処理部３８は、ＢＣテーブル３５を参照し、そのコンテンツＩＤが記録されたＢＣ情報を検索する。ルータ３０は、過去にコンテンツ要求メッセージで要求されたコンテンツデータが通過しており、通過時にそのコンテンツデータのコンテンツＩＤが記載されたＢＣ情報を記録している。ＢＣ情報は、コンテンツデータのコンテンツＩＤ、ルータ３０にコンテンツデータを送出した上流ノード、ルータ３０からコンテンツデータが送出される下流ノード、コンテンツデータのデータ通過時刻及びコンテンツデータのリクエスト通過時刻により構成されている。
【０１０９】
メッセージ処理部３８は、そのＢＣ情報をヒットしたときに、そのＢＣ情報に記録された下流ノードを上述の要求ノード方向への次ホップノードに更新し、上流ノードを「ｎｕｌｌ」に更新する。さらにメッセージ処理部３８は、リクエスト通過時刻をコンテンツ要求メッセージを受信したときの時刻に、データ通過時刻を応答メッセージを送信したときの時刻に更新する（ステップＳ２９）。メッセージ処理部３８は以上で実行する処理を終了する。
【０１１０】
実要求ＩＤをコンテンツＩＤとして有するコンテンツデータがコンテンツキャッシュ部３１に格納されていない場合（ステップＳ２７のＮｏ）、メッセージ処理部３８はＢＣテーブル３５を参照する（ステップＳ３０）。そしてメッセージ処理部３８は、ＢＣテーブル３５を検索して、上述の実要求ＩＤについてのＢＣ情報（ＢＣエントリ）があるか否かを判定する（ステップＳ３１）。ここで「実要求ＩＤについてのＢＣ情報」とは、実要求ＩＤがＢＣ情報として含まれているＢＣ情報である。
【０１１１】
実要求ＩＤについてのＢＣ情報が存在しない場合（ステップＳ３１のＮｏ）、メッセージ処理部３８は、ＮＷ経路テーブル３３を参照して、コンテンツサーバ２０方向の次ホップノードのアドレス情報を取得する。メッセージ処理部３８は、その次ホップノードへと要求メッセージを転送する（ステップＳ３２）。ルータ３０は、コンテンツ要求メッセージにおいて要求されたコンテンツデータについて、これ以上の処理ができないためである。
【０１１２】
実要求ＩＤについてのＢＣ情報が存在する場合（ステップＳ３１のＹｅｓ）、メッセージ処理部３８は、ＢＣ情報に下流ノードが記載されているか否かを判定する（ステップＳ３３）。後述の通り、ルータ３０がコンテンツデータを配信する場合において、下流ノードがルータであれば、メッセージ処理部３８はＢＣ情報の下流ノードに当該ルータのＩＰアドレスを記載するが、ユーザ端末であれば「ｎｕｌｌ」を記載する。
【０１１３】
ＢＣ情報に下流ノードが記載されていなければ（ステップＳ３３のＮｏ）、メッセージ処理部３８は、これ以上ＢＣ情報に沿ったコンテンツ要求メッセージの転送ができない（キャッシュミス）と判定する。そして、メッセージ処理部３８はコンテンツ要求メッセージをＢＣ情報の上流ノードに記載されたルータへと転送するとともに、ＢＣテーブル３５からそのＢＣ情報を削除する（ステップＳ３４）。
【０１１４】
ＢＣ情報に下流ノードが記載されていれば（ステップＳ３３のＹｅｓ）、メッセージ処理部３８は、要求メッセージ記載のＩＤがＡｌｉａｓＩＤであるか否かを判定する（ステップＳ３５）。ここでメッセージ処理部３８は、ステップＳ２２においてコンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓＩＤとして格納されている場合に、コンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓＩＤであると判定する。メッセージ処理部３８は、ステップＳ２２においてコンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓ情報として格納されていない場合に、コンテンツ要求メッセージに記載されたＩＤがＡｌｉａｓＩＤではないと判定する。
【０１１５】
要求メッセージ記載のＩＤがＡｌｉａｓＩＤでないと判定した場合には（ステップＳ３５のＮｏ）、メッセージ処理部３８は、受信したコンテンツ要求メッセージの内容をそのままに、ＢＣ情報において示された下流ノードへ転送する（ステップＳ３６）。
【０１１６】
要求メッセージ記載のＩＤがＡｌｉａｓＩＤであると判定した場合には（ステップＳ３５のＹｅｓ）、メッセージ処理部３８は、受信したコンテンツ要求メッセージの内容に実要求ＩＤ（即ち要求されたコンテンツデータに対応するコンテンツＩＤ）を加えて、ＢＣ情報において示された下流ノードへそのコンテンツ要求メッセージを転送する（ステップＳ３７）。
【０１１７】
ステップＳ３６又はＳ３７の後、メッセージ処理部３８は、実要求ＩＤについてのＢＣ情報に記録されたリクエスト通過時刻を、コンテンツ要求メッセージを転送したときの時刻に更新する（ステップＳ３８）。メッセージ処理部３８は以上で実行する処理を終了する。
【０１１８】
ルータ４０、５０も、ルータ３０と同様の構成を有する。つまり、コンテンツキャッシュ部３１、キャッシュ管理テーブル３２、ＮＷ経路テーブル３３、クロック３４、ＢＣテーブル３５、Ａｌｉａｓテーブル３６、Ａｌｉａｓ管理部３７、メッセージ処理部３８に対応する要素として、ルータ４０は、コンテンツキャッシュ部４１、キャッシュ管理テーブル４２、ＮＷ経路テーブル４３、クロック４４、ＢＣテーブル４５、Ａｌｉａｓテーブル４６、Ａｌｉａｓ管理部４７、メッセージ処理部４８を有する。同様にルータ５０は、コンテンツキャッシュ部５１、キャッシュ管理テーブル５２、ＮＷ経路テーブル５３、クロック５４、ＢＣテーブル５５、Ａｌｉａｓテーブル５６、Ａｌｉａｓ管理部５７、メッセージ処理部５８を有する。ルータ４０、５０の各部が実行する処理についてもルータ３０と同様である。
【０１１９】
なお、様々な処理を行う機能ブロックとして図６に記載されたコンテンツサーバ２０の各要素は、ハードウェア的には、ＣＰＵ、メモリ、その他の回路で構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。これはルータ３０〜５０についても同様である。
【０１２０】
マッピングサーバ８０は、データ配信システム１０において保持されているコンテンツに対応するＡｌｉａｓＩＤ及びそのコンテンツのオリジナルデータを保持するコンテンツサーバのＩＰアドレスが対応付けて記録されている。
【０１２１】
以下、図１２Ａ〜図１２Ｃを用いて、実施の形態２にかかるデータ配信システム１０の処理について説明する。図１２Ａ〜図１２Ｃは、データ配信システム１０の動作シーケンスの一例を示す図である。ここで図１２Ａは、ユーザ端末６０がコンテンツサーバ２０のアドレスを取得するまでの過程を示した図である。図１２Ｂは、ルータ３０がコンテンツデータをキャッシュするまでの過程を示した図である。図１２Ｃは、ルータ３０がキャッシュしたコンテンツデータをユーザ端末７０に配信するまでの過程を示した図である。図１２Ａ、図１２Ｂ及び図１２Ｃにおいて、ユーザ端末６０又は７０からのメッセージ送信は実線の矢印で示されており、コンテンツサーバ２０又はルータ３０、４０又は５０からのユーザ端末６０又は７０へのデータ送信は点線の矢印で示されている。以下、具体的なデータ配信システム１０の動作について説明する。
【０１２２】
まず、ユーザ端末６０が最新のセンサ情報（コンテンツデータ）を取得するためにコンテンツサーバ２０のＩＰアドレスを取得するまでの過程について説明する（図１２Ａ）。ここで、コンテンツサーバ２０のデータ生成部２２は予め「X.20120428124520」というコンテンツＩＤに対応するコンテンツデータを生成する。またＡｌｉａｓテーブル２５には、ＡｌｉａｓＩＤ、コンテンツＩＤ及びそれらの対応付けの有効期限として以下の情報が登録される。
[Ａｌｉａｓテーブル２５−１]
・Alias ID = X.latest
・Contents ID = X.20120428124520
・有効期限 = 2012 4/28 12:45:30
【０１２３】
（１）まず、ユーザ端末６０は、マッピングサーバ８０側にあるルータ（ルータ４０、又は第２のルータ）に、最新のセンサ情報（最新のコンテンツデータ）を示すＡｌｉａｓＩＤ「X.latest」に対応するコンテンツデータがあるサーバロケーション情報（ＩＰアドレスなどネットワーク上の位置を示す情報）を問い合わせる情報要求メッセージを送信する。ここで情報要求メッセージには、ＡｌｉａｓＩＤ「X.latest」の情報が含まれている。ルータ４０は、その情報要求メッセージを受信する。またユーザ端末６０はマッピングサーバ８０のＩＰアドレスを予め取得しており、情報要求メッセージには宛先情報としてそのＩＰアドレスの情報が含まれている。
【０１２４】
（２）ユーザ端末６０からの情報要求メッセージを受信したルータ４０は、その情報要求メッセージをマッピングサーバ８０方向にあるルータ３０（第１のルータ、第４のルータ）に転送し、ルータ３０はそれを受信する。なおルータ４０は、情報要求メッセージに含まれるマッピングサーバ８０のＩＰアドレス（宛先情報）に基づいて、ルータ３０へのメッセージ転送を実行する。以下の説明において、ルータは同様の転送処理を実行する。
【０１２５】
（３）ルータ４０からの情報要求メッセージを受信したルータ３０は、その情報要求メッセージを宛先情報に基づいてマッピングサーバ８０に転送し、マッピングサーバ８０はそれを受信する。
【０１２６】
（４）情報要求メッセージを受信したマッピングサーバ８０は、情報要求メッセージに含まれるＡｌｉａｓＩＤに基づいて、そのＡｌｉａｓＩＤに対応するコンテンツデータが保存されているコンテンツサーバ２０のＩＰアドレス等の情報を検索する。マッピングサーバ８０は、その検索したＩＰアドレスの情報を含むサーバロケーション情報をユーザ端末６０方向のルータ（ルータ３０）に送信する。ルータ３０は、そのサーバロケーション情報を受信する。ここでサーバロケーション情報には、ユーザ端末６０のＩＰアドレス（宛先情報）が付加されている。
【０１２７】
（５）マッピングサーバ８０からのサーバロケーション情報を受信したルータ３０は、宛先情報に基づいてそのサーバロケーション情報をユーザ端末６０方向のルータ４０に転送し、ルータ４０はそれを受信する。
【０１２８】
（６）ルータ３０からのサーバロケーション情報を受信したルータ４０は、そのサーバロケーション情報を宛先情報に基づいてユーザ端末６０に転送し、ユーザ端末６０はそれを受信する。このようにして、ユーザ端末６０は最新のコンテンツデータがあるサーバロケーション情報を取得することができる。
【０１２９】
次に、ルータ３０がコンテンツデータをキャッシュするまでの過程について説明する（図１２Ｂ）。
【０１３０】
（７）ユーザ端末６０は、マッピングサーバ８０から取得したサーバロケーション情報に基づいて、以下の情報を含めたコンテンツ要求メッセージを作成し、コンテンツサーバ２０方向にあるルータ４０に送信する。ルータ４０はそのコンテンツ要求メッセージ６０を受信する。
[コンテンツ要求メッセージ６０]
・要求コンテンツＩＤ = X.latest
・サーバロケーション情報 = コンテンツサーバ２０のＩＰアドレス
ここで要求コンテンツＩＤはＡｌｉａｓＩＤである。またコンテンツ要求メッセージ６０には宛先情報としてコンテンツサーバ２０のＩＰアドレスの情報が含まれている。ユーザ端末６０は、このようにしてＡｌｉａｓＩＤを用いてデータ要求を行う。
【０１３１】
（８）ルータ４０のメッセージ処理部４８は、コンテンツ要求メッセージ６０を受信すると、Ａｌｉａｓテーブル４６を参照して（図１１ＡのステップＳ２１）、要求コンテンツＩＤ「X.latest」がＡｌｉａｓ情報として格納されているか否かを判定する（図１１ＡのステップＳ２２）。要求コンテンツＩＤ「X.latest」はＡｌｉａｓ情報として格納されていないため、メッセージ処理部４８は、要求コンテンツＩＤ「X.latest」を実要求ＩＤとして設定する（図１１ＡのステップＳ２６）。そしてメッセージ処理部４８は、その実要求ＩＤをコンテンツＩＤとするデータのキャッシュがコンテンツキャッシュ部４１にあるか否かを、キャッシュ管理テーブル４２を参照することにより判定する（図１１ＢのステップＳ２７）。
【０１３２】
コンテンツキャッシュ部４１はそのようなデータのキャッシュを格納していないため、メッセージ処理部４８は次にＢＣテーブル４５を参照し（図１１ＢのステップＳ３０）、実要求ＩＤについてのＢＣ情報が格納されているか否かを判定する（図１１ＢのステップＳ３１）。ＢＣテーブル４５にはそのようなＢＣ情報が格納されていないため、メッセージ処理部４８は、宛先情報に基づきＮＷ経路テーブル４３を参照して、コンテンツサーバ２０方向の次ホップノードのＩＰアドレス（即ちルータ３０のアドレス情報）を取得する。メッセージ処理部３８は、ルータ３０へとコンテンツ要求メッセージ６０を転送する（図１１ＢのステップＳ３２）。ルータ３０はそのコンテンツ要求メッセージ６０を受信する。
【０１３３】
（９）コンテンツ要求メッセージ６０を受信したルータ３０は、ルータ４０と同様の判定処理を実行した後、宛先情報に基づいて、コンテンツ要求メッセージ６０をコンテンツサーバ２０へ転送する。コンテンツサーバ２０はそのコンテンツ要求メッセージ６０を受信する。
【０１３４】
ここで（８）、（９）においてルータ４０、３０は、コンテンツ要求メッセージ６０の内容とともに、コンテンツ要求メッセージ６０が通過した時刻、即ちリクエストが通過した時刻を図示しないメモリに記録する。ここでリクエストが通過した時刻は、ルータ４０、３０のクロックにおいて「2012/4/28 12:45:20」であり、ルータ４０、３０はその時刻も併せて記録する。
【０１３５】
（１０）コンテンツサーバ２０は、クロック２３で測定した時刻が「2012 4/28 12:45:20」のときに、ユーザ端末６０からのコンテンツ要求メッセージ６０を受信する。またコンテンツサーバ２０は同時刻「2012 4/28 12:45:20」に、最新のセンサ情報（コンテンツデータ）を取得する。
【０１３６】
メッセージ処理部２６は、コンテンツ要求メッセージ６０を受信すると、コンテンツ要求メッセージ６０に含まれた要求コンテンツＩＤ「X.latest」がコンテンツデータ記憶部２１に記憶されているか否かを、コンテンツ管理テーブル２４を参照することにより判定する（図７のステップＳ１１）。要求コンテンツＩＤはＡｌｉａｓＩＤであり、コンテンツデータ記憶部２１には記憶されていないため、メッセージ処理部２６は、要求コンテンツＩＤがＡｌｉａｓ情報として記載されているかどうかを判定するためＡｌｉａｓテーブル２５を参照する（図７のステップＳ１３）。そしてメッセージ処理部２６は、要求コンテンツＩＤがＡｌｉａｓ情報として記載されていないかどうか、又はＡｌｉａｓ情報として記載されている場合でも有効期限が現時点で失効しているかどうかを判定する（図７のステップＳ１４）。
【０１３７】
Ａｌｉａｓテーブル２５には、Ａｌｉａｓテーブル２５−１に示した通り、ＡｌｉａｓＩＤとコンテンツＩＤとの対応が記録され、データ生成部２２において新しいコンテンツデータが生成される度に更新されている。上述のＡｌｉａｓテーブル２５−１の通り、ＡｌｉａｓＩＤ「X.latest」は、コンテンツＩＤ「X. 20120428124520」に対応づけられている。従って、メッセージ処理部２６は、要求コンテンツＩＤがＡｌｉａｓＩＤであると判定する。さらに、有効期限は「2012 4/28 12:45:30」であり、クロック２３における現在の時刻「2012 4/28 12:45:20」において失効していない。
【０１３８】
メッセージ処理部２６は、ＡｌｉａｓＩＤ「X.latest」に対応付けられたコンテンツＩＤ「X. 20120428124520」を、コンテンツ要求メッセージ６０が要求するコンテンツデータに対応するコンテンツＩＤとして取得する。メッセージ処理部２６は、取得したコンテンツＩＤ「X. 20120428124520」に対応するコンテンツデータがコンテンツデータ記憶部２１に記憶されているか否かを、コンテンツＩＤ「X. 20120428124520」に基づいてコンテンツ管理テーブル２４を参照することにより判定する（図７のステップＳ１６）。
【０１３９】
上述の通り、コンテンツＩＤ「X. 20120428124520」に対応するコンテンツデータがコンテンツデータ記憶部２１に記憶されているので、メッセージ処理部２６は、コンテンツ管理テーブル２４を参照して、そのコンテンツデータに対応するコンテンツＩＤに基づいてコンテンツ情報を検索し、そのコンテンツデータの保存領域の情報を取得する。メッセージ処理部２６は、保存領域であるコンテンツデータ記憶部２１からそのコンテンツデータを取得するとともに、そのコンテンツデータを含むコンテンツ応答メッセージを作成してユーザ端末６０方向のルータ３０に送信する（図７のステップＳ１７）。なおコンテンツ応答メッセージの内容は次の通りである。
[コンテンツ応答メッセージ２０]
・コンテンツＩＤ = X. 20120428124520
・Alias ID = X.latest
・Alias 有効時間 = 10秒
・コンテンツデータ
また、ＡｌｉａｓＩＤとコンテンツＩＤとの対応付けには有効期限「2012 4/28 12:45:30」が設定されている。そのため、メッセージ処理部２６は、現在時刻「2012 4/28 12:45:20」とその有効期限との時間差（１０秒）の情報を、対応付けの有効時間（Ａｌｉａｓ有効時間）として応答メッセージに含めて送信する。
【０１４０】
このようにしてコンテンツサーバ２０は、データ要求を受信した時点で、データ要求に含まれるＡｌｉａｓＩＤに最もマッチするコンテンツデータを返す。また、メッセージ処理部２６は、取得したコンテンツデータに対応するＡｌｉａｓＩＤ及びコンテンツＩＤの情報（Ａｌｉａｓ情報）を応答メッセージに含めて送信する。さらにメッセージ処理部２６は、コンテンツデータを配信するときに、併せてＡｌｉａｓ有効時間を配信する。ここで、Ａｌｉａｓ有効時間は、クロック２３が示す現在の時刻において、ＡｌｉａｓＩＤとコンテンツＩＤとの対応付けが有効である時間である。現在の時刻が「2012 4/28 12:45:20」であり、Ａｌｉａｓテーブル２５−１で示される有効期限が「2012 4/28 12:45:30」であるため、メッセージ処理部２６は、Ａｌｉａｓ有効時間をそれらの差分の１０秒と計算する。
【０１４１】
またコンテンツ応答メッセージ２０には宛先情報としてユーザ端末６０のＩＰアドレスの情報が含まれている。ルータ３０はそのコンテンツ応答メッセージ２０を受信する。
【０１４２】
（１１）ルータ３０のメッセージ処理部３８は、送信されたコンテンツ応答メッセージ２０を、宛先情報に基づいてユーザ端末６０方向の自ノードであるルータ４０へと転送する。ルータ４０はそのコンテンツ応答メッセージ２０を受信する。ここで、ルータ３０は応答メッセージを受信してからルータ４０に転送するまでの時間を計測し、メッセージの転送にかかった時間を応答メッセージに記載されたＡｌｉａｓ有効時間から差し引いたものを、新たな応答メッセージのＡｌｉａｓ有効時間に設定して、その応答メッセージを転送してもよい。
【０１４３】
またメッセージ処理部３８は、送信されたコンテンツ応答メッセージ２０に記載されたコンテンツＩＤと、以前に通過したコンテンツ要求メッセージ６０に記載されたコンテンツＩＤとを、メモリを参照することにより比較する。両者は「X.latest」で同一であるため、送信されたコンテンツ応答メッセージ２０は、以前に通過したコンテンツ要求メッセージ６０に対応するものであるとメッセージ処理部３８は判定する。以上の判定に基づいて、メッセージ処理部３８は下記のＢＣ情報をＢＣテーブル３５に作成する。
[ＢＣ情報３５−１]
・コンテンツID = X. 20120428124520
・上流ノード  = 20（コンテンツサーバ２０のＩＰアドレス）
・下流ノード  = 40（ルータ４０のＩＰアドレス）
・データ通過時刻  = 2012/4/28 12:45:21
・リクエスト通過時刻  = 2012/4/28 12:45:20
ここで上流ノードはコンテンツ及びコンテンツ応答メッセージ２０が流れてきたノードであり、下流ノードはコンテンツ及びコンテンツ応答メッセージ２０がルータ３０から流れるノードである。メッセージ処理部３８はメッセージヘッダに格納された情報から上流ノード及び下流ノードのＩＰアドレスを参照し、そのＩＰアドレスをＢＣ情報３５−１として記録する。なおメッセージ処理部３８は、前述の通り、コンテンツ応答メッセージ２０に対応するコンテンツ要求メッセージ６０を受信した隣接ノードを次ホップノード（下流ノード）として記録している。またメッセージ処理部３８は、コンテンツ要求メッセージ６０を送信した隣接ノードを前ホップノード（上流ノード）として記録する。
【０１４４】
つまり、ＢＣ情報３５−１には、コンテンツサーバ２０からコンテンツデータが送信されるときの、コンテンツデータの配信経路上にあるルータが記録される。以下のＢＣ情報においても同様の情報が記録される。
【０１４５】
またＢＣ情報３５−１のデータ通過時刻はコンテンツ及びコンテンツ応答メッセージ２０がコンテンツサーバ２０から流れてきたときのクロック３４が示す時刻であり、リクエスト通過時刻は、コンテンツ応答メッセージ２０に対応するコンテンツ要求メッセージ６０が通過したときのクロック３４が示す時刻である。メッセージ処理部３８はクロック３４を参照することによりこれらの時刻情報を取得する。
【０１４６】
さらに、メッセージ処理部３８は、Ａｌｉａｓテーブル３６に、コンテンツ応答メッセージ２０におけるＡｌｉａｓＩＤ及びコンテンツＩＤを記載した下記情報を登録する。
[Ａｌｉａｓ情報３６−１]
・Alias ID = X.latest
・Alias 有効期限 = 2012/4/28 12:45:31
・BCコンテンツID = X.20120428124520
ここでＡｌｉａｓ有効期限には、コンテンツ応答メッセージ２０を受信したときのクロック３４の時刻に、コンテンツ応答メッセージ２０に含まれるＡｌｉａｓ有効時間を足したものを設定する。換言すれば、メッセージ処理部３８は、コンテンツサーバ２０から配信された対応付けの有効時間及びコンテンツサーバ２０からそのコンテンツデータが配信された時刻に基づいて、対応付けの有効期限を算出する。そして、メッセージ処理部３８は、Ａｌｉａｓテーブル３６において、コンテンツデータのエイリアスＩＤ、コンテンツＩＤ及び有効期限を対応付けて格納する。
【０１４７】
また、メッセージ処理部３８は、コンテンツデータのキャッシュをコンテンツキャッシュ部３１に格納する。
【０１４８】
（１２）ルータ４０は、ルータ３０からコンテンツ応答メッセージ２０を受信する。ルータ４０のメッセージ処理部４８はルータ３０のメッセージ処理部３８と同様の処理を実行することにより、下記のＢＣ情報をＢＣテーブル４５に作成する。
[ＢＣ情報４５−１]
・コンテンツＩＤ = X. 20120428124520
・上流ノード  = 30（ルータ３０のＩＰアドレス）
・下流ノード  = null
・データ通過時刻  = 2012/4/28 12:45:21
・リクエスト通過時刻  = 2012/4/28 12:45:20
ここでＢＣ情報４５−１におけるデータ通過時刻及びリクエスト通過時刻は、ルータ４０内のクロック４４が示す時刻である。また、下流ノードはユーザ端末６０であるため、メッセージ処理部４８は下流ノードに「ｎｕｌｌ」を記載する。メッセージ処理部４８はメッセージヘッダに格納された情報から上流ノード及び下流ノードのＩＰアドレスを参照し、そのＩＰアドレスをＢＣ情報４５−１として記録する。メッセージ処理部４８は、メッセージ処理部３８と同様、コンテンツ応答メッセージ２０に対応するコンテンツ要求メッセージ６０を受信した隣接ノードを下流ノードとして記録し、コンテンツ要求メッセージ６０を送信した隣接ノードを上流ノードとして記録している。
【０１４９】
なおルータ３０、４０は、ＢＣ情報として、当該ルータの直前にコンテンツデータが配信されたルータのアドレス又は当該ルータの次にコンテンツデータが配信されるルータのアドレスを記録している。
【０１５０】
さらに、メッセージ処理部４８は、Ａｌｉａｓテーブル４６に、コンテンツ応答メッセージ２０におけるＡｌｉａｓＩＤ及びコンテンツＩＤを記載した下記情報を登録する。ここでＡｌｉａｓ有効期限には、コンテンツ応答メッセージ２０を受信したときのクロック４４の時刻に、コンテンツ応答メッセージ２０に含まれるＡｌｉａｓ有効時間を足したものを設定する。この設定方法は上述と同様である。
[Ａｌｉａｓ情報４６−１]
・Alias ID = X.latest
・Alias 有効期限 = 2012/4/28 12:45:31
・BCコンテンツID = X.20120428124520
【０１５１】
メッセージ処理部４８は、コンテンツデータのキャッシュをコンテンツキャッシュ部４１に格納する（キャッシュしたコンテンツデータを、図１２Ｂ、図１２Ｃではコンテンツキャッシュとして示している。）。
【０１５２】
さらにメッセージ処理部４８は、キャッシュ管理テーブル４２に、コンテンツデータのキャッシュと、そのコンテンツデータのコンテンツＩＤ「X.20120428124520」の情報を少なくとも含むコンテンツ情報とを対応付けた管理情報を格納する。
【０１５３】
以上の処理を実行して、ルータ４０は、コンテンツデータが含まれたコンテンツ応答メッセージ２０をユーザ端末６０に送信する。このようにして、ユーザ端末６０はコンテンツ要求メッセージで要求したコンテンツデータを取得することができる。
【０１５４】
次に、ルータ４０がキャッシュしたコンテンツデータをユーザ端末７０に配信するまでの過程について説明する（図１２Ｃ）。なお、ルータ３０において、コンテンツサーバ２０から配信されてコンテンツキャッシュ部３１がキャッシュしたデータは、他の記載しない別ユーザが取得したコンテンツに置き換えられたため、コンテンツキャッシュ部３１はそのキャッシュを格納していないとする。コンテンツデータが置き換えられた時点で、キャッシュ管理テーブル３２も更新される。それにより、メッセージ処理部３８が更新後のキャッシュ管理テーブル３２を参照しても、以前配信されたコンテンツデータが格納されていないと判定される。
【０１５５】
（１３）ここではユーザ端末７０が、ＡｌｉａｓＩＤ「X.latest」を有するコンテンツデータを要求する場合を想定する。ユーザ端末７０は、図１２Ａで示した処理と同様にして、マッピングサーバ８０から「X.latest」を生成するコンテンツサーバ２０のＩＰアドレスを取得する。ユーザ端末７０は、以下のコンテンツ要求メッセージを作成し、コンテンツサーバ２０方向にあるルータ５０（第３のルータ）に送信する。
[コンテンツ要求メッセージ７０]
・要求コンテンツＩＤ = X.latest
・サーバロケーション情報 = コンテンツサーバ２０のＩＰアドレス
ここで要求コンテンツＩＤはＡｌｉａｓＩＤである。またコンテンツ要求メッセージ７０には宛先情報としてコンテンツサーバ２０のＩＰアドレスの情報が含まれている。ルータ５０は、ユーザ端末６０からコンテンツ要求メッセージ６０を受信する。
【０１５６】
（１４）ルータ５０のメッセージ処理部５８は、コンテンツ要求メッセージ７０を受信すると、Ａｌｉａｓテーブル５６を参照して（図１１ＡのステップＳ２１）、要求コンテンツＩＤ「X.latest」がＡｌｉａｓ情報として格納されているか否かを判定する（図１１ＡのステップＳ２２）。要求コンテンツＩＤ「X.latest」はＡｌｉａｓ情報として格納されていないため、メッセージ処理部５８は、要求コンテンツＩＤ「X.latest」を実要求ＩＤとして設定する（図１１ＡのステップＳ２６）。そしてメッセージ処理部５８は、その実要求ＩＤをコンテンツＩＤとするデータのキャッシュがコンテンツキャッシュ部５１にあるか否かを、キャッシュ管理テーブル５２を参照することにより判定する（図１１ＢのステップＳ２７）。
【０１５７】
コンテンツキャッシュ部５１はそのようなデータのキャッシュを格納していないため、メッセージ処理部５８は次にＢＣテーブル５５を参照し（図１１ＢのステップＳ３０）、実要求ＩＤについてのＢＣ情報が格納されているか否かを判定する（図１１ＢのステップＳ３１）。ＢＣテーブル５５にはそのようなＢＣ情報が格納されていないため、メッセージ処理部５８は、宛先情報に基づきＮＷ経路テーブル５３を参照して、コンテンツサーバ２０方向の次ホップノードのＩＰアドレス（即ちルータ３０のアドレス情報）を取得する。メッセージ処理部５８は、ルータ３０へとコンテンツ要求メッセージ７０を転送する（図１１ＢのステップＳ３２）。ルータ３０はそのコンテンツ要求メッセージ７０を受信する。
【０１５８】
なおルータ５０は、コンテンツ要求メッセージ７０が通過した時刻、即ちリクエストが通過した時刻を、コンテンツ要求メッセージ７０の要求コンテンツＩＤと関連付けて、図示しない内部メモリに記録する。ここでリクエストが通過したときにルータ５０のクロック５４が示す時刻は「2012/4/28 12:45:25」であるため、ルータ５０はその時刻を記録する。
【０１５９】
（１５）ルータ３０のメッセージ処理部３８は、コンテンツ要求メッセージ７０を受信すると、Ａｌｉａｓテーブル３６を参照して（図１１ＡのステップＳ２１）、要求コンテンツＩＤ「X.latest」がＡｌｉａｓ情報として格納されているか否かを判定する（図１１ＡのステップＳ２１）。このとき、Ａｌｉａｓテーブル３６には、該当するＡｌｉａｓＩＤ「X.latest」についてのＡｌｉａｓ情報３６−１が格納されている。従って、次にメッセージ処理部３８は、Ａｌｉａｓ情報３６−１に記載されたＡｌｉａｓ有効期限が失効しているか否かを判定する（図１１ＡのステップＳ２３）。
【０１６０】
ルータ３０がコンテンツ要求メッセージ６０を受信したときにクロック３４が示す時刻は「2012/4/28 12:45:25」であり、Ａｌｉａｓ情報３６−１に記載されたＡｌｉａｓ有効期限は「2012/4/28 12:45:31」であって、有効期限は失効していない。従って、メッセージ処理部３８は、Ａｌｉａｓ情報３６−１において要求コンテンツＩＤ「X.latest」と対応するコンテンツＩＤ「X.20120428124520」を実要求ＩＤに設定する（図１１ＡのステップＳ２５）。メッセージ処理部３８は、その実要求ＩＤをコンテンツＩＤとするデータのキャッシュがコンテンツキャッシュ部３１にあるか否かを、キャッシュ管理テーブル３２を参照することにより判定する（図１１ＢのステップＳ２７）。
【０１６１】
上述の通り、コンテンツＩＤ「X.20120428124520」のコンテンツデータは既にコンテンツキャッシュ部３１にキャッシュされていない。従ってメッセージ処理部３８は、ＢＣテーブルを検索し、実要求ＩＤについてのＢＣ情報（ＢＣエントリ）があるか否かを判定する（図１１ＢのステップＳ３０、Ｓ３１）。上述の通り実要求ＩＤ「X.20120428124520」についてのＢＣ情報３５−１が存在し、ＢＣ情報３５−１に設定されたＩＤと実要求ＩＤとがマッチする。そのためメッセージ処理部３８は、ＢＣ情報３５−１に下流ノードが記載されているか否かを判定する（図１１ＣのステップＳ３３）。
【０１６２】
ＢＣ情報３５−１には下流ノードとしてルータ４０のＩＰアドレスが記載されている。メッセージ処理部３８はコンテンツ要求メッセージ６０記載の要求コンテンツＩＤがＡｌｉａｓＩＤであるか否かを判定する（図１１ＣのステップＳ３５）。コンテンツ要求メッセージ６０記載の要求コンテンツＩＤはＡｌｉａｓＩＤであるため、メッセージ処理部３８は取得した要求メッセージにおいて、要求コンテンツＩＤをヒットしたＢＣ情報に記載されたコンテンツＩＤに置き換える（実要求ＩＤをコンテンツ要求メッセージに含める）とともに、さらにＡｌｉａｓＩＤを要求メッセージに含める（図１１ＣのステップＳ３７）。
【０１６３】
従って、メッセージ処理部３８はコンテンツ要求メッセージ７０を、次のコンテンツ要求メッセージ３０に置き換える。
[コンテンツ要求メッセージ３０]
・要求コンテンツＩＤ = X. 20120428124520
・サーバロケーション情報 = コンテンツサーバ２０のＩＰアドレス
・Alias ID = X.latest
【０１６４】
その後、メッセージ処理部３８はコンテンツ要求メッセージ３０を、ＢＣ情報３５−１に下流ノード方向として記載されたルータ４０へ転送する（図１１ＣのステップＳ３６）。このようにして、ルータ３０は、コンテンツ要求メッセージ３０を、その要求するデータをキャッシュするルータ４０に誘導する。ルータ４０は、このコンテンツ要求メッセージ３０を受信する。
【０１６５】
さらにメッセージ処理部３８は、実要求ＩＤについてのＢＣ情報３５−１に記録されたリクエスト通過時刻を、コンテンツ要求メッセージ３０を送信したときの時刻に更新する（図１１ＣのステップＳ３８）。ここでリクエストが通過したときのクロック３４が示す時刻は「2012/4/28 12:45:25」であるため、メッセージ処理部３８はその時刻を記録する。
【０１６６】
（１５）ルータ４０のメッセージ処理部４８は、コンテンツ要求メッセージ７０を受信すると、Ａｌｉａｓテーブル４６を参照して（図１１ＡのステップＳ２１）、要求コンテンツＩＤ「X. 20120428124520」がＡｌｉａｓ情報として格納されているか否かを判定する（図１１ＡのステップＳ２２）。このとき、Ａｌｉａｓテーブル４６には、該当するＡｌｉａｓＩＤ「X. 20120428124520」についてのＡｌｉａｓ情報４６−１が格納されている。従って、次にメッセージ処理部４８は、Ａｌｉａｓ情報４６−１に記載されたＡｌｉａｓ有効期限が失効しているか否かを判定する（図１１ＡのステップＳ２３）。
【０１６７】
ルータ４０がコンテンツ要求メッセージ７０を受信したときにクロック４４が示す時刻は「2012/4/28 12:45:25」であり、Ａｌｉａｓ情報４６−１に記載されたＡｌｉａｓ有効期限は「2012/4/28 12:45:31」であって、有効期限は失効していない。従って、メッセージ処理部４８は、Ａｌｉａｓ情報４６−１において要求コンテンツＩＤ「X.latest」と対応するコンテンツＩＤ「X.20120428124520」を実要求ＩＤに設定する（図１１ＡのステップＳ２５）。メッセージ処理部４８は、その実要求ＩＤをコンテンツＩＤとするデータのキャッシュがコンテンツキャッシュ部４１にあるか否かを、キャッシュ管理テーブル４２を参照することにより判定する（図１１ＢのステップＳ２７）。
【０１６８】
上述の通り、コンテンツＩＤ「X.20120428124520」のコンテンツデータはコンテンツキャッシュ部４１にキャッシュされている。従って、メッセージ処理部４８は、コンテンツキャッシュ部４１からそのコンテンツデータを取得するとともに、そのコンテンツデータを含む応答メッセージを作成する。メッセージ処理部４８はＮＷ経路テーブル４３を参照して、要求ノード方向への次ホップノード（ルータ３０）のアドレス情報を取得する。そしてメッセージ処理部４８は、要求ノード方向への次ホップノードに対して、要求されたコンテンツデータを含むコンテンツ応答メッセージ４０を送信する（図１１ＢのステップＳ２８）。ルータ３０はこのコンテンツ応答メッセージ４０を受信する。コンテンツ応答メッセージ４０の内容は次の通りである。
[コンテンツ応答メッセージ４０]
・コンテンツID = X. 20120428124520
・Alias ID = X.latest
・Alias 有効時間 = 5秒
・コンテンツデータ
ここで、メッセージ処理部４８は、コンテンツ応答メッセージ４０に記載するＡｌｉａｓ有効時間を、クロック４４が応答メッセージを送信するときに示す時刻（2012/4/28 12:45:26）と、Ａｌｉａｓ有効時刻（2012/4/28 12:45:31）の差（ここでは５秒）として設定する。なお、ルータ４０は応答メッセージを受信してから転送するまでの時間を計測し、応答メッセージを送信したときにクロック４４が示す時刻にメッセージの転送にかかった時間を加算したものを、クロック４４が応答メッセージを送信するときに示す時刻としてもよい。
【０１６９】
さらにメッセージ処理部４８は、ＢＣテーブル４５を参照し、コンテンツＩＤ「X.20120428124520」が記録されたＢＣ情報を検索する。ＢＣテーブル４５は、ＢＣ情報４５−１を有している。
【０１７０】
メッセージ処理部４８は、そのＢＣ情報４５−１をヒットしたときに、ＢＣ情報４５−１に記録された下流ノード「ｎｕｌｌ」を上述の要求ノード方向への次ホップノード「３０」に更新する。さらにリクエスト通過時刻を、コンテンツ要求メッセージ７０を受信したときにクロック４４が示す時刻「2012/4/28 12:45:25」に更新するとともに、データ通過時刻を、応答メッセージを送信するときにクロック４４が示す時刻「2012/4/28 12:45:26」に更新する（ステップＳ２９）。また、ルータ４０から初めてコンテンツデータが出力されることになるので、ＢＣ情報４５−１に記録された上流ノードを「ｎｕｌｌ」に更新する。このようにして更新したＢＣ情報４５−２の内容は次の通りである。
[ＢＣ情報４５−２]
・コンテンツＩＤ = X. 20120428124520
・上流ノード  = null
・下流ノード  = 30
・データ通過時刻  = 2012/4/28 12:45:26
・リクエスト通過時刻  = 2012/4/28 12:45:25
【０１７１】
（１７）
ルータ３０のメッセージ処理部３８は、コンテンツ応答メッセージ４０を受信すると、コンテンツ応答メッセージ４０に応じてＢＣテーブル３５に格納されたＢＣ情報３５−１を以下のように更新する。
[ＢＣ情報３５−２]
・コンテンツID = X. 20120428124520
・上流ノード  = 40（ルータ４０のＩＰアドレス）
・下流ノード  = 50（ルータ５０のＩＰアドレス）
・データ通過時刻  = 2012/4/28 12:45:26
・リクエスト通過時刻  = 2012/4/28 12:45:25
ここで、上流ノードはコンテンツ応答メッセージ４０を出力したルータ４０に、下流ノードはコンテンツ応答メッセージ４０が出力されるルータ５０に更新される。さらに、メッセージ処理部３８は、内部メモリに記録した情報に基づいて、コンテンツ応答メッセージ４０に含まれるコンテンツＩＤ及びＡｌｉａｓＩＤと、以前通過したコンテンツ要求メッセージ３０に含まれるコンテンツＩＤ及びＡｌｉａｓＩＤとが同じであることを判定する。
それに基づいて、メッセージ処理部３８は、コンテンツ応答メッセージ４０に対するリクエストがコンテンツ要求メッセージ３０であると判定し、コンテンツ要求メッセージ３０が通過したときにクロック４４が示す時刻「2012/4/28 12:45:25」を、リクエスト通過時刻としてＢＣ情報３５−２に記録する。なお、データ通過時刻としては、コンテンツ応答メッセージ４０をルータ４０が受信したときにクロック４４が示す時刻「2012/4/28 12:45:26」が記載される。
【０１７２】
なおメッセージ処理部３８は、コンテンツ応答メッセージ４０に対応するコンテンツ要求メッセージ３０を受信した隣接ノードを下流ノードとして記録し、コンテンツ要求メッセージ３０を送信した隣接ノードを上流ノードとして記録している。
【０１７３】
さらに、メッセージ処理部３８は、コンテンツ応答メッセージ４０に応じてＡｌｉａｓテーブル３６にＡｌｉａｓＩＤ、ＢＣコンテンツＩＤ及びＡｌｉａｓ有効期限を含むＡｌｉａｓ情報を登録する。
[Ａｌｉａｓ情報３６−２]
・Alias ID = X.latest
・Alias 有効期限 = 2012/4/28 12:45:31
・BCコンテンツID = X.20120428124520
ここでＡｌｉａｓ有効期限は、コンテンツ応答メッセージ４０をルータ４０が受信したときにクロック４４が示す時刻「2012/4/28 12:45:26」に、コンテンツ応答メッセージ４０に記載されたＡｌｉａｓ有効時間（５秒）を加算したものである。このようにしてメッセージ処理部３８は、Ａｌｉａｓ有効期限を再設定する。
【０１７４】
ここで、ルータ３０は応答メッセージを受信してからルータ５０に転送するまでの時間を計測し、メッセージの転送にかかった時間を応答メッセージに記載されたＡｌｉａｓ有効時間から差し引いたものを、新たな応答メッセージのＡｌｉａｓ有効時間に設定して、その応答メッセージをルータ５０に転送してもよい。
【０１７５】
また、メッセージ処理部３８は、コンテンツデータを含むコンテンツ応答メッセージ４０をユーザ端末７０方向の次ホップであるルータ５０へと転送する。ルータ５０はそのコンテンツ応答メッセージ４０を受信する。
【０１７６】
（１８）ルータ５０のメッセージ処理部５８は、ルータ３０からコンテンツ応答メッセージ４０を受信すると以下のＢＣ情報を作成する。
[ＢＣ情報５５−１]
・コンテンツＩＤ = X. 20120428124520
・上流ノード  = 30（ルータ３０のＩＰアドレス）
・下流ノード  = 70（ルータ７０のＩＰアドレス）
・データ通過時刻  = 2012/4/28 12:45:26
・リクエスト通過時刻  = 2012/4/28 12:45:25
ここで、上流ノードはコンテンツ応答メッセージ４０を出力したルータ３０に、下流ノードはコンテンツ応答メッセージ４０が出力されるユーザ端末７０に設定される。さらに、メッセージ処理部５８は、内部メモリの記録に基づいて、コンテンツ応答メッセージ４０に含まれるコンテンツＩＤ及びＡｌｉａｓＩＤと、以前通過したコンテンツ要求メッセージ７０に含まれるコンテンツＩＤ及びＡｌｉａｓＩＤとが同じであることを判定する。それに基づいて、メッセージ処理部３８は、コンテンツ応答メッセージ４０に対するリクエストがコンテンツ要求メッセージ７０であると判定し、コンテンツ要求メッセージ７０が通過したときにクロック５４が示す時刻「2012/4/28 12:45:25」をリクエスト通過時刻としてＢＣ情報３５−２に記録する。なお、データ通過時刻としては、コンテンツ応答メッセージ４０をルータ５０が受信したときにクロック５４が示す時刻「2012/4/28 12:45:26」が記載される。
【０１７７】
なおメッセージ処理部５８は、コンテンツ応答メッセージ４０に対応するコンテンツ要求メッセージ３０を受信した隣接ノードを下流ノードとして記録し、コンテンツ要求メッセージ３０を送信した隣接ノードを上流ノードとして記録している。
【０１７８】
さらに、メッセージ処理部５８は、Ａｌｉａｓテーブル５６に下記のＡｌｉａｓ情報を格納する。
[Ａｌｉａｓ情報５６−１]
・Alias ID = X.latest
・Alias 有効期限 = 2012/4/28 12:45:31
・BCコンテンツＩＤ = X.20120428124520
ここでＡｌｉａｓ有効期限は、コンテンツ応答メッセージ４０をルータ５０が受信したときにクロック５４が示す時刻「2012/4/28 12:45:26」に、コンテンツ応答メッセージ５０に記載されたＡｌｉａｓ有効時間（５秒）を加算したものである。
【０１７９】
また、メッセージ処理部５８は、コンテンツデータを含むコンテンツ応答メッセージ４０をユーザ端末７０へと転送する。ユーザ端末７０はそのコンテンツ応答メッセージ４０を受信する。これにより、ユーザ端末７０は、コンテンツサーバ２０ではなく、データ配信システム１０のルータに保存されたキャッシュからコンテンツデータを取得することができる。
【０１８０】
なお、ルータ３０のメッセージ処理部３８は、ルータ４０からのコンテンツ応答メッセージ４０を受信したときに、コンテンツキャッシュ部３１に応答メッセージにかかるコンテンツデータのキャッシュを作成してもよい。ルータ５０においても同様の処理を実行することができる。
【０１８１】
実施の形態２に記載したデータ配信システム１０の効果は次の通りになる。
【０１８２】
データ配信システム１０においてルータ３０〜５０は、コンテンツデータをキャッシュするコンテンツキャッシュ部と、キャッシュしたコンテンツデータのＡｌｉａｓＩＤとコンテンツＩＤとを対応付けて格納するＡｌｉａｓテーブルを有している。そしてルータ３０〜５０のメッセージ処理部は、クライアント端末側からデータ要求を受信した場合に、ＡｌｉａｓＩＤに基づいてＡｌｉａｓテーブルを参照することにより、ＡｌｉａｓテーブルにおいてそのＡｌｉａｓＩＤに対応付けられたコンテンツＩＤにキャッシュ管理テーブル３２において対応付けられたコンテンツデータを、クライアント端末側に配信する。これにより、クライアント端末側がコンテンツＩＤではないＡｌｉａｓＩＤを用いてデータ要求を送信した場合でも、ルータ３０〜５０はそのＡｌｉａｓＩＤに対応付けられたコンテンツＩＤを特定し、そのコンテンツＩＤに対応付けられたコンテンツデータをクライアント端末側に配信することができる。従って、データ配信システム１０は、逐次新しく生成されてそれぞれ異なるＩＤが付加されるコンテンツデータをユーザに配信することができる。
【０１８３】
さらにルータ３０は、Ａｌｉａｓテーブル３６において、ＡｌｉａｓＩＤとコンテンツＩＤとの対応付けとともに、その対応付けの有効期限を対応付けて格納する。ここでメッセージ処理部３８は、クライアント端末側からデータ要求を受信した場合に、ＡｌｉａｓＩＤに基づいてＡｌｉａｓテーブル３６を参照することにより、そのときの時刻においてＡｌｉａｓテーブル３６に格納した有効期限が失効したことを判定した場合には、そのデータ要求をコンテンツサーバ２０に転送する。これにより、ルータ３０は、ＡｌｉａｓＩＤによるデータ要求が以前にサーバからルータ３０へ配信されたコンテンツデータに関するものであっても、そのＡｌｉａｓＩＤとコンテンツＩＤとの対応付けの有効期限が失効した場合には、現にコンテンツデータを配信しているコンテンツサーバ２０にそのデータ要求を送信する。したがって、データ配信システム１０は、現在ＡｌｉａｓＩＤと対応付けられているコンテンツＩＤにかかるコンテンツデータを確実にユーザに配信することができる。また、他のルータにおいても対応付けの有効期限が失効している場合、他のルータにデータ要求を転送するよりも、ユーザがデータを取得するまでの時間が短縮できると考えられる。
【０１８４】
データ配信システム１０は、ルータ３０のほか、コンテンツサーバ２０からコンテンツデータが送信されるときのコンテンツデータの配信経路上にあるルータ４０をさらに備える。ルータ３０は、ルータ４０のアドレス情報を記録するＢＣテーブル３５をさらに有する。ルータ３０のメッセージ処理部３８は、データ要求にかかるコンテンツデータがコンテンツキャッシュ部３１にキャッシュされていない場合に、ＢＣテーブル３５を参照して取得したルータ４０のアドレス情報に基づいて、ルータ４０にデータ要求を転送する。つまりデータ配信システム１０は、キャッシュを保有している可能性があるルータ４０に対してデータ要求を転送することにより、コンテンツサーバ２０にデータ要求が送信されることをできるだけ減らすことができる。従って、データ配信システム１０は、コンテンツサーバ２０の付加を削減するほか、ユーザのコンテンツデータ取得時間を短縮することができる。
【０１８５】
ルータ４０は、コンテンツサーバ２０から受信したコンテンツデータ及びその対応ＩＤを対応付けてキャッシュするコンテンツキャッシュ部４１を備える。ルータ３０のメッセージ処理部３８は、データ要求に対応ＩＤの情報を含ませてルータ４０に転送する。ルータ４０は、ルータ３０から対応ＩＤの情報を含むデータ要求を受信した場合に、その対応ＩＤとキャッシュ管理テーブル３２において対応付けられたコンテンツデータをクライアント端末側に配信する。これにより、データ配信システム１０は、コンテンツデータの配信経路上にあるルータがコンテンツデータをキャッシュしていて、データ要求を受けたルータがコンテンツデータをキャッシュしていたルータと異なる場合でも、キャッシュしたコンテンツデータをユーザに配信することができる。
【０１８６】
ルータ４０は、Ａｌｉａｓテーブル４６において、ＡｌｉａｓＩＤとコンテンツＩＤとの対応付けとともに、その対応付けの有効期限を対応付けて格納する。メッセージ処理部４８は、ルータ３０からデータ要求を受信した場合に、ＡｌｉａｓＩＤに基づいてＡｌｉａｓテーブル４６を参照することにより、そのときの時刻においてＡｌｉａｓテーブル４６に格納した有効期限が失効したことを判定した場合には、そのデータ要求をコンテンツサーバ２０に転送する。これにより、ルータ４０は、ＡｌｉａｓＩＤによるデータ要求が以前にサーバからルータ４０へ配信されたコンテンツデータに関するものであっても、そのＡｌｉａｓＩＤとコンテンツＩＤとの対応付けの有効期限が失効した場合には、現にコンテンツデータを配信しているコンテンツサーバ２０にそのデータ要求を送信する。したがって、データ配信システム１０は、現在ＡｌｉａｓＩＤと対応付けられているコンテンツＩＤにかかるコンテンツデータを確実にユーザに配信することができる。
【０１８７】
コンテンツサーバ２０は、コンテンツデータを配信するときにそのコンテンツデータのコンテンツＩＤと、ＡｌｉａｓＩＤとの対応付けの有効時間を併せて配信する。ルータ３０のメッセージ処理部３８は、コンテンツサーバ２０から配信されたその有効時間及びコンテンツサーバ２０からそのコンテンツデータが配信された時刻に基づいて有効期限を算出する。メッセージ処理部３８はＡｌｉａｓテーブル３６においてその有効期限を格納する。このように、ルータ３０における有効期限はデータ配信の際にコンテンツサーバ２０が設定する時間に基づいて設定されるため、データ配信システム１０は、ルータ３０における有効期限を比較的正確に設定できる。またルータ３０で有効期限を自発的に設定するわけではないため、ルータ３０の処理を軽減させることができる。
【０１８８】
ルータ３０は、コンテンツサーバ２０からコンテンツデータが送信されるときに、ＢＣテーブル３５において、ルータ３０の次にコンテンツデータが配信されるルータのアドレスをルータ４０のアドレス情報として記録する。このように、ルータ３０はコンテンツデータの配信経路上にあるルータ４０をコンテンツデータが配信されるときに記録しておくことにより、データ要求をルータ４０に転送することを可能としている。従ってデータ配信システム１０は、ルータ間におけるデータ要求の転送を簡易な処理で実行することができる。
【０１８９】
ルータ３０は、コンテンツサーバ２０から有効時間の情報が配信された時刻からルータ４０へコンテンツデータを転送する時刻との時間差に基づいて、その有効時間の情報を更新し、コンテンツデータと併せてルータ４０に転送してもよい。ルータ４０は、ルータ３０から配信された有効時間の情報と、そのデータが配信された時刻とに基づいて有効期限を算出し、Ａｌｉａｓテーブル３６にその有効期限を格納する。これにより、ルータ３０の有効時間とルータ４０の有効時間とをより近づけることができるため、データ配信の正確性をより高めることができる。
【０１９０】
同様にルータ３０は、ルータ４０から有効時間の情報が配信された時刻からルータ５０へコンテンツデータを転送する時刻との時間差に基づいて、その有効時間の情報を更新し、コンテンツデータと併せてルータ５０に転送してもよい。ルータ５０は、ルータ３０から配信された有効時間の情報と、そのデータが配信された時刻とに基づいて有効期限を算出し、Ａｌｉａｓテーブル５６にその有効期限を格納する。これにより、ルータ３０の有効時間とルータ５０の有効時間とをより近づけることができるため、データ配信の正確性をより高めることができる。
【０１９１】
ルータ４０は、ＡｌｉａｓＩＤとコンテンツＩＤとの対応付けの有効期限が失効しておらず、そのコンテンツＩＤにかかるコンテンツデータをクライアント端末側に配信するときに、そのときの（配信時の）時刻と有効期限との時間差を、ＡｌｉａｓＩＤとコンテンツＩＤとの対応付けの有効時間として併せて配信する。ルータ３０は、ルータ４０からコンテンツデータを受信したときに、ルータ４０が配信した有効時間及びそのコンテンツデータを受信した時刻に基づいて、Ａｌｉａｓテーブル３６に格納される有効期限を設定する。このようにして、データ配信システム１０は、コンテンツデータをキャッシュしていないルータ３０における有効期限の更新を実行することができる。
【０１９２】
データ配信システム１０は、ルータ４０からコンテンツデータがクライアント端末側に配信される場合にその配信経路上にあるルータ５０をさらに備え、ルータ５０は、ルータ４０からコンテンツデータが配信されるときに、そのコンテンツデータを対応ＩＤに対応付けてキャッシュするコンテンツキャッシュ部５１と、ＡｌｉａｓＩＤと対応ＩＤとを対応付けて格納するＡｌｉａｓテーブル５６を有する。ルータ５０はさらに、クライアント端末側からＡｌｉａｓＩＤの情報を含むデータ要求を受信した場合に、そのＡｌｉａｓＩＤに基づいてＡｌｉａｓテーブル５６を参照することにより、Ａｌｉａｓテーブル５６においてそのＡｌｉａｓＩＤに対応付けられた対応ＩＤにコンテンツキャッシュ部５１において対応付けられたコンテンツデータをクライアント端末側に配信するメッセージ処理部５８を有する。このため、データ配信システム１０は、コンテンツサーバ２０ではなくルータからコンテンツデータが配信された場合でも、そのコンテンツデータをキャッシュし、ユーザに配信することができる。
【０１９３】
ルータ５０は、Ａｌｉａｓテーブル５６において、コンテンツデータのＡｌｉａｓＩＤ及びコンテンツＩＤとともに、そのＡｌｉａｓＩＤとコンテンツＩＤとの対応付けの有効期限を対応付けて格納する。メッセージ処理部５８は、クライアント端末側からデータ要求を受信したときに、ＡｌｉａｓＩＤに基づいてＡｌｉａｓテーブル５６を参照することにより、そのときの時刻においてＡｌｉａｓテーブル５６に格納した有効期限が失効したことを判定した場合には、そのデータ要求をコンテンツサーバ２０に転送する。これにより、ルータ５０は、ＡｌｉａｓＩＤによるデータ要求が以前にサーバからルータ５０へ配信されたコンテンツデータに関するものであっても、そのＡｌｉａｓＩＤとコンテンツＩＤとの対応付けの有効期限が失効した場合には、現にコンテンツデータを配信しているコンテンツサーバ２０にそのデータ要求を送信する。したがって、データ配信システム１０は、現在ＡｌｉａｓＩＤと対応付けられているコンテンツＩＤにかかるコンテンツデータを確実にユーザに配信することができる。
【０１９４】
ルータ４０は、有効期限が失効しておらず、キャッシュしたコンテンツデータをクライアント端末側に配信するときに、そのときの時刻と有効期限との時間差を、ＡｌｉａｓＩＤとコンテンツＩＤとの対応付けの有効期限として併せて配信する。ルータ５０は、ルータ４０からデータを受信したときに、ルータ４０が配信した有効時間と、そのコンテンツデータを受信した時刻とに基づいて、Ａｌｉａｓテーブル５６に格納されたそのデータのコンテンツＩＤにかかる対応付けの有効期限を設定する。このようにして、データ配信システム１０は、ルータ５０における有効期限の更新を実行することができる。
【０１９５】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、実施の形態１、２にかかるデータ配信システムのサーバの数及びルータの数は、図１、図５にて説明した通りに限られない。
【０１９６】
その他、実施の形態２にかかるデータ配信システム１０において、以下のように構成を変更することができる。
【０１９７】
データ配信システム１０において、コンテンツＩＤとＡｌｉａｓＩＤとの対応付けの有効期限は必須ではなく、設定されていなくてもよい。有効期限が設定されていない場合、図７にかかるコンテンツサーバ２０の処理においては、ステップＳ１４において有効期限が失効しているか否かの判定は実行しない。また、図１１Ａにかかるルータの処理においては、ステップＳ２３の処理（有効期限が失効しているか否かの判定処理）は実行せず、ステップＳ２５以降の処理をルータは実行する。
【０１９８】
図１２Ａ〜図１２Ｃでは、Ａｌｉａｓテーブル４６においてＡｌｉａｓＩＤ「X.latest」とはコンテンツＩＤ「X. 20120428124520」のみが対応付けられて格納されているとした。しかし、ＡｌｉａｓＩＤ「X.latest」に対し複数のコンテンツＩＤが対応付けられ、かつ各々の対応付けに有効期限が設定されて、Ａｌｉａｓテーブル４６に格納されていてもよい。ここでメッセージ処理部４８は、ＡｌｉａｓＩＤの情報を含むデータ要求メッセージを受信した場合に、そのＡｌｉａｓＩＤに基づいてＡｌｉａｓテーブル４６を参照することにより、最長かつ失効していない有効期限を有する対応付けを判定する。例えば２つの対応付けがある場合には、メッセージ処理部４８は長い方の有効期限を有する対応付けを選択する。
【０１９９】
そしてメッセージ処理部４８は、その有効期限に対応付けて格納されているコンテンツＩＤにコンテンツキャッシュ部４１において対応付けられたコンテンツデータをクライアント端末側に配信する。これにより、データ配信システム１０は、ＡｌｉａｓＩＤに対応する最新のデータをクライアント端末側に配信することができるため、ユーザは最新のデータを取得することができる。
【０２００】
コンテンツサーバ２０とルータ３０との間にルータがさらにあり、ルータ３０の直前にそのルータにデータが配信された場合には、図１２Ｂの（１１）の処理においてルータ３０は、ＢＣ情報３５−１において、そのルータのＩＰアドレスを上流ノードの欄に記載する。そして図１２Ｃの（１４）の処理においてルータ３０は、その上流ノードの欄に記載されたＩＰアドレスに基づいて、そのルータにコンテンツ要求メッセージ７０を転送してもよい。
【０２０１】
図１２Ｃの（１５）の処理においてルータ３０は、コンテンツ要求メッセージ７０をそのまま（即ち要求コンテンツＩＤをコンテンツＩＤに書き換えずに）ルータ４０に出力してもよい。ここでルータ４０のメッセージ処理部４８は、ルータ３０からＡｌｉａｓＩＤの情報を含むコンテンツ要求メッセージを受信した場合に、ＡｌｉａｓＩＤに基づいてＡｌｉａｓテーブル４６を参照することにより、Ａｌｉａｓテーブル４６においてそのＡｌｉａｓＩＤに対応付けられたコンテンツＩＤにキャッシュ管理テーブル３２において対応付けられたデータをクライアント端末側に配信する。換言すれば、ルータ４０は、図１１Ａ〜図１１Ｃに記載されたステップＳ２１、Ｓ２２、Ｓ２３、Ｓ２５、Ｓ２７、Ｓ２８、Ｓ２９の処理を実行する。このようにしても、ルータ４０はキャッシュしたデータをクライアント端末側に配信することができる。
【０２０２】
しかし、ルータ４０が、コンテンツ要求メッセージ７０で要求されているデータのコンテンツＩＤを把握できない場合に、ルータ４０の処理が止まってしまう、もしくはコンテンツ要求メッセージ７０がルータ３０とルータ４０の間でループする可能性がある。従って、ルータ３０は、コンテンツ要求メッセージ７０にコンテンツＩＤを含めたものをルータ４０に送信するのが望ましい。
【０２０３】
図１２Ｃの（１６）の処理においてメッセージ処理部４８は、コンテンツ要求メッセージ３０を受信した場合に、要求コンテンツＩＤではなくＡｌｉａｓＩＤに基づいてＡｌｉａｓテーブル４６を参照してもよい。つまりメッセージ処理部４８は、図１１ＡにおけるステップＳ２６の処理ではなく、ステップＳ２３、Ｓ２５の処理を実行してもよい。ここで有効期限が失効していない場合において、メッセージ処理部４８は、要求コンテンツＩＤ又はＡｌｉａｓ情報４６−１においてＡｌｉａｓＩＤと対応付けられているコンテンツＩＤを実要求ＩＤに設定して、コンテンツキャッシュ部４１にその実要求ＩＤに対応するコンテンツデータがあるか否かを判定する。
【０２０４】
図１２Ｂの（１０）の処理においてコンテンツサーバ２０は、コンテンツ応答メッセージ２０にて送信するＡｌｉａｓ有効時間を、時間差ではなく、コンテンツサーバ２０におけるＡｌｉａｓ有効時刻（2012/4/28 12:45:30）で送ってもよい。同様に図１２Ｃの（１６）の処理においてルータ４０は、コンテンツ応答メッセージ４０にて送信するＡｌｉａｓ有効時間を、時間差ではなく、ルータ４０におけるＡｌｉａｓ有効時刻（2012/4/28 12:45:31）で送ってもよい。ただし、コンテンツサーバ２０及びルータ３０〜５０における対応付けの有効期限を比較的正確に揃えるためには、コンテンツサーバ２０及びルータ３０〜５０のクロックの同期（例えばＧＰＳによる）が必要になる。したがって、コンテンツサーバ２０及びルータ３０〜５０で実行する処理を簡単にし、データ配信システムのコストを安くする場合には、Ａｌｉａｓ有効時間を時間差で送るのが望ましい。
【０２０５】
図１２Ｃの（１７）の処理においてＡｌｉａｓ管理部３７は、コンテンツデータを含むコンテンツ応答メッセージ４０を受信したことをトリガとして、Ａｌｉａｓテーブル３６に格納された有効期限をチェックしてもよい。例えばＡｌｉａｓ管理部３７は、受信したコンテンツ応答メッセージ４０にかかる対応付けの有効期限を、現在のクロック３４が示す時刻と比較して、失効しているか否か判定することができる。もし失効していれば、失効したＡｌｉａｓ情報をＡｌｉａｓテーブル３６から削除する。
【０２０６】
また、メッセージ処理部３８は受信したコンテンツデータをコンテンツキャッシュ部３１に格納し、キャッシュ管理テーブル３２にその管理情報を格納するとともに、Ａｌｉａｓテーブル３６にそのコンテンツデータにかかるＡｌｉａｓ情報を格納する。以上の処理を実行することにより、ルータ３０は、コンテンツデータ及びそのコンテンツ情報を最新の状態に保つことができる。
【０２０７】
なおＡｌｉａｓ管理部３７は、コンテンツ応答メッセージを受信したことをトリガとして、全ての対応付けの有効期限を、現在のクロック３４が示す時刻と比較して、失効しているか否か判定してもよい。ルータ４０、５０でも同様の処理を実行することができる。
【０２０８】
実施の形態１〜２に示した処理は、制御方法の１つとして、コンピュータ（例えばルータ）に実行させることができる。例えば、実施の形態１〜２に示した処理のフローを、制御プログラムとしてコンピュータに実行させてもよい。
【０２０９】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（Random Access Memory））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【０２１０】
以下、本発明の各種形態を付記する。
（付記１）
クライアント端末側からエイリアスＩＤを含むデータ要求をサーバが受信した場合に、当該サーバは、当該エイリアスＩＤに対応する対応ＩＤと、当該対応ＩＤに対応するデータと、をクライアント端末側に送信するデータ配信システムであって、
前記データ配信システムは、前記サーバとクライアント端末側とを接続する第１のルータを備え、
前記第１のルータは、
前記サーバから受信した前記データ及び前記対応ＩＤを対応付けてキャッシュする第１のキャッシュ部と、
前記エイリアスＩＤと前記対応ＩＤとを対応付けて格納する第１のＩＤ格納領域と、
クライアント端末側から前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記第１のＩＤ格納領域を参照することにより、当該第１のＩＤ格納領域において当該エイリアスＩＤに対応付けられた対応ＩＤに前記第１のキャッシュ部において対応付けられたデータをクライアント端末側に配信する第１の配信部と、を有する、
データ配信システム。
（付記２）
前記第１のルータは、前記第１のＩＤ格納領域において、前記エイリアスＩＤと前記対応ＩＤとの対応付けとともに、当該対応付けの有効期限を対応付けて格納し、
前記第１の配信部は、クライアント端末側から前記データ要求を受信した場合に、前記エイリアスＩＤに基づいて前記第１のＩＤ格納領域を参照することにより、そのときの時刻において前記第１のＩＤ格納領域に格納した前記有効期限が失効したことを判定した場合には、当該データ要求を前記サーバに転送する、
付記１に記載のデータ配信システム。
（付記３）
前記データ配信システムは、前記サーバから前記データが送信されるときの前記データの配信経路上にある第２のルータをさらに備え、
前記第１のルータは、前記第２のルータのアドレス情報を記録するテーブルをさらに有し、
前記第１の配信部は、前記データが前記第１のキャッシュ部にキャッシュされていない場合に、前記テーブルを参照して取得した前記第２のルータのアドレス情報に基づいて当該第２のルータに前記データ要求を転送する、
付記２に記載のデータ配信システム。
（付記４）
前記第１の配信部は、前記データ要求に前記対応ＩＤの情報を含ませて前記第２のルータに転送し、
前記第２のルータは、
前記サーバから受信した前記データ及び前記対応ＩＤを対応付けてキャッシュする第２のキャッシュ部と、
前記第１のルータから前記対応ＩＤの情報を含む前記データ要求を受信した場合に、当該対応ＩＤと前記第２のキャッシュ部において対応付けられたデータをクライアント端末側に配信する第２の配信部と、を有する、
付記３に記載のデータ配信システム。
（付記５）
前記第２のルータは、
前記サーバから受信した前記データ及び前記対応ＩＤを対応付けてキャッシュする第２のキャッシュ部と、
前記エイリアスＩＤと前記対応ＩＤとを対応付けて格納する第２のＩＤ格納領域と、
前記第１のルータから前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記第２のＩＤ格納領域を参照することにより、当該第２のＩＤ格納領域において当該エイリアスＩＤに対応付けられた対応ＩＤに前記第２のキャッシュ部において対応付けられたデータをクライアント端末側に配信する第２の配信部と、を有する、
付記３に記載のデータ配信システム。
（付記６）
前記第２のルータは、前記第２のＩＤ格納領域において、前記エイリアスＩＤと前記対応ＩＤとの対応付けとともに、当該対応付けの有効期限を対応付けて格納し、
前記第２の配信部は、前記第１のルータから前記データ要求を受信した場合に、前記エイリアスＩＤに基づいて前記第２のＩＤ格納領域を参照することにより、そのときの時刻において前記第２のＩＤ格納領域に格納した前記有効期限が失効したことを判定した場合には、当該データ要求を前記サーバに転送する、
付記５に記載のデータ配信システム。
（付記７）
前記サーバは、前記データを配信するときに、前記エイリアスＩＤと前記対応ＩＤとの対応付けの有効時間の情報を併せて配信し、
前記第１のルータは、前記有効時間と、当該サーバから当該データが配信された時刻とに基づいて前記有効期限を算出し、前記第１のＩＤ格納領域において当該有効期限を格納する、
付記２ないし６のいずれか一項に記載のデータ配信システム。
（付記８）
エイリアスＩＤを含むデータ要求を送信するクライアント端末側と、当該データ要求を受信した場合に、当該エイリアスＩＤに対応する対応ＩＤと、当該対応ＩＤに対応するデータと、をクライアント端末側に送信するサーバとを接続するルータであって、
前記サーバから受信した前記データ及び前記対応ＩＤを対応付けてキャッシュするキャッシュ部と、
前記エイリアスＩＤと前記対応ＩＤとを対応付けて格納するＩＤ格納領域と、
クライアント端末側から前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記ＩＤ格納領域を参照することにより、当該ＩＤ格納領域において当該エイリアスＩＤに対応付けられた対応ＩＤと前記キャッシュ部において対応付けられたデータをクライアント端末側に配信する配信部と、を備える、
ルータ。
（付記９）
エイリアスＩＤを含むデータ要求を送信するクライアント端末側と、当該データ要求を受信した場合に、当該エイリアスＩＤに対応する対応ＩＤと、当該対応ＩＤに対応するデータと、をクライアント端末側に送信するサーバとを接続するルータの制御方法であって、
前記サーバから受信した前記データ及び前記対応ＩＤを対応付けて前記ルータのキャッシュ部にキャッシュするステップと、
前記エイリアスＩＤと前記対応ＩＤとを対応付けて前記ルータのＩＤ格納領域に格納するステップと、
クライアント端末側から前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記ＩＤ格納領域を参照することにより、当該ＩＤ格納領域において当該エイリアスＩＤに対応付けられた対応ＩＤと前記キャッシュ部において対応付けられたデータをクライアント端末側に配信するステップと、
を備えるルータの制御方法。
（付記１０）
エイリアスＩＤを含むデータ要求を送信するクライアント端末側と、当該データ要求を受信した場合に、当該エイリアスＩＤに対応する対応ＩＤと、当該対応ＩＤに対応するデータと、をクライアント端末側に送信するサーバとを接続するルータの制御プログラムであって、
前記サーバから受信した前記データ及び前記対応ＩＤを対応付けて前記ルータのキャッシュ部にキャッシュするステップと、
前記エイリアスＩＤと前記対応ＩＤとを対応付けて前記ルータのＩＤ格納領域に格納するステップと、
クライアント端末側から前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記ＩＤ格納領域を参照することにより、当該ＩＤ格納領域において当該エイリアスＩＤに対応付けられた対応ＩＤと前記キャッシュ部において対応付けられたデータをクライアント端末側に配信するステップと、
をルータに実行させる制御プログラム。
（付記１１）
前記第１のＩＤ格納領域において、前記エイリアスＩＤと第１の前記対応ＩＤとの第１の対応付けとともに当該第１の対応付けの有効期限が対応付けて格納されるとともに、当該エイリアスＩＤと第２の前記対応ＩＤとの第２の対応付けとともに当該第２の対応付けの有効期限が対応付けて格納されており、
前記第１の配信部は、クライアント端末側から前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記第１のＩＤ格納領域を参照することにより、前記第１の対応付けの有効期限と前記第２の対応付けの有効期限のいずれの有効期限が長いかを判定し、長い方の有効期限に対応付けて格納されている対応ＩＤに前記第１のキャッシュ部において対応付けられたデータをクライアント端末側に配信する、
付記２ないし７のいずれか一項に記載のデータ配信システム。
（付記１２）
前記第１のルータは、前記サーバから前記データが配信されるときに、前記テーブルにおいて、当該第１のルータの直前に前記データが配信されたルータのアドレス又は当該第１のルータの次に前記データが配信されるルータのアドレスを前記第２のルータのアドレス情報として記録する、
付記３ないし６のいずれか一項に記載のデータ配信システム。
（付記１３）
前記第２のルータは、前記サーバから前記データが配信されるときに、前記第１のルータの次に前記データが配信されるルータであって、
前記サーバは、前記データを配信するときに、前記エイリアスＩＤと前記対応ＩＤとの対応付けの有効時間の情報を併せて配信し、
前記第１のルータは、前記有効時間と、当該サーバから当該データが配信された時刻とに基づいて前記有効期限を算出し、前記第１のＩＤ格納領域において当該有効期限を格納するとともに、前記有効時間の情報が配信された時刻から前記第２のルータへ前記データを転送する時刻との時間差に基づいて、当該有効時間の情報を更新し、当該データと併せて前記第２のルータに転送して、
前記第２のルータは、当該第１のルータから配信された前記有効時間の情報と、当該データが配信された時刻とに基づいて前記有効期限を算出し、前記第２のＩＤ格納領域において当該有効期限を格納する、
付記５に記載のデータ配信システム。
（付記１４）
前記第２のルータは、前記有効期限が失効しておらず、キャッシュした前記データをクライアント端末側に配信するときに、そのときの時刻と前記有効期限との時間差の情報を、前記エイリアスＩＤと前記対応ＩＤとの対応付けの有効時間として併せて配信し、
前記第１のルータは、前記第２のルータから前記データ及び前記有効時間の情報を受信したときに、当該有効時間及び当該データを受信した時刻に基づいて、前記第１のＩＤ格納領域に格納される前記有効期限を設定する、
付記６に記載のデータ配信システム。
（付記１５）
前記データ配信システムは、前記第２のルータから前記データがクライアント端末側に配信される場合にその配信経路上にある第３のルータをさらに備え、
前記第３のルータは、
前記第２のルータから前記データが配信されるときに、当該データを前記対応ＩＤに対応付けてキャッシュする第３のキャッシュ部と、
前記エイリアスＩＤと前記対応ＩＤとを対応付けて格納する第３のＩＤ格納領域と、
クライアント端末側から前記エイリアスＩＤの情報を含む前記データ要求を受信した場合に、当該エイリアスＩＤに基づいて前記第３のＩＤ格納領域を参照することにより、当該第３のＩＤ格納領域において当該エイリアスＩＤに対応付けられた対応ＩＤに前記第３のキャッシュ部において対応付けられたデータをクライアント端末側に配信する第３の配信部と、を有する、
付記１４に記載のデータ配信システム。
（付記１６）
前記第３のルータは、前記第３のＩＤ格納領域において、前記エイリアスＩＤ及び前記対応ＩＤとともに、当該エイリアスＩＤと当該対応ＩＤとの対応付けの有効期限を対応付けて格納し、
前記第３の配信部は、クライアント端末側から前記データ要求を受信したときに、前記エイリアスＩＤに基づいて前記第３のＩＤ格納領域を参照することにより、そのときの時刻において前記第３のＩＤ格納領域に格納した前記有効期限が失効したことを判定した場合には、当該データ要求を前記サーバに転送する、
付記１５に記載のデータ配信システム。
（付記１７）
前記第２のルータは、前記有効期限が失効しておらず、キャッシュした前記データをクライアント端末側に配信するときに、そのときの時刻と前記有効期限との時間差の情報を、前記エイリアスＩＤと前記対応ＩＤとの対応付けの有効時間として併せて配信し、
前記第３のルータは、前記第２のルータから前記データ及び前記有効時間の情報を受信したときに、当該有効時間と、当該データを受信した時刻とに基づいて、前記第３のＩＤ格納領域に格納された前記データの前記有効期限を設定する、
付記１６に記載のデータ配信システム。
（付記１８）
前記データ配信システムは、前記第２のルータから前記第３のルータに前記データ及び前記有効時間の情報を配信する場合にその配信経路上にある第４のルータをさらに備え、
前記第４のルータは、前記第２のルータから前記データ及び前記有効時間の情報を受信したときに、当該有効時間の情報と、当該データを受信した時刻とに基づいて、当該有効時間の情報を更新し、当該データと併せて前記第３のルータに転送して、
前記第３のルータは、前記第４のルータから配信された前記有効時間の情報及び当該データが配信された時刻に基づいて前記有効期限を算出し、前記第２のＩＤ格納領域において当該有効期限を格納する、
付記１７に記載のデータ配信システム。
【符号の説明】
【０２１１】
１  データ配信システム
２  サーバ
３  ルータ
４、５  クライアント端末
６  キャッシュ部
７  ＩＤ格納領域
８  配信部
１０  データ配信システム
２０  コンテンツサーバ
２１  コンテンツデータ記憶部
２２  データ生成部
２３  クロック
２４  コンテンツ管理テーブル
２５  Ａｌｉａｓテーブル
２６  メッセージ処理部
３０、４０、５０  ルータ
３１、４１、５１  コンテンツキャッシュ部
３２、４２、５２  キャッシュ管理テーブル
３３、４３、５３  ＮＷ経路テーブル
３４、４４、５４  クロック
３５、４５、５５  ＢＣテーブル
３６、４６、５６  Ａｌｉａｓテーブル
３７、４７、５７  Ａｌｉａｓ管理部
３８、４８、５８  メッセージ処理部
６０、７０  ユーザ端末
８０  マッピングサーバ
【図１】
2014164583.tif 000003
【図２】
2014164583.tif 000004
【図３】
2014164583.tif 000005
【図４Ａ】
2014164583.tif 000006
【図４Ｂ】
2014164583.tif 000007
【図５】
2014164583.tif 000008
【図６】
2014164583.tif 000009
【図７】
2014164583.tif 000010
【図８】
2014164583.tif 000011
【図９】
2014164583.tif 000012
【図１０】
2014164583.tif 000013
【図１１Ａ】
2014164583.tif 000014
【図１１Ｂ】
2014164583.tif 000015
【図１１Ｃ】
2014164583.tif 000016
【図１２Ａ】
2014164583.tif 000017
【図１２Ｂ】
2014164583.tif 000018
【図１２Ｃ】
2014164583.tif 000019
【図１３】
2014164583.tif 000020