(57)【特許請求の範囲】
【請求項１】
コンテンツ中心ネットワーク（ＣＣＮ）におけるコンテンツ所有者がコンテンツ応答パケットを送信する方法であって、
コンテンツ所有者のポリシーに基づいて、コンテンツをキャッシュする候補ノードを決定するためのキャッシュ収容値の閾値（ＣＣＶｔｈ）を決定するステップと、
コンテンツ要求者のコンテンツ要求パケットに応答して前記コンテンツ及び前記キャッシュ収容値の閾値を含むコンテンツ応答パケットを送信するステップと、を有し、
前記コンテンツ要求パケットは、コンテンツ名並びに候補ノードのキャッシュ収容値及び前記候補ノードとコンテンツ所有者との間のネットワーク距離（ＮＤＶ）を含むキャッシュ関連情報を含むことを特徴とするコンテンツ所有者のコンテンツ応答パケット送信方法。
【請求項２】
前記コンテンツ所有者のポリシーは、コンテンツ名、コンテンツの人気度、コンテンツの重要度、及びコンテンツのヒット率のいずれか１つ又はその組み合せに基づくことを特徴とする請求項１に記載のコンテンツ所有者のコンテンツ応答パケット送信方法。
【請求項３】
前記コンテンツ所有者のポリシーの変更に応答して前記キャッシュ収容値の閾値を調整するステップを更に含むことを特徴とする請求項１に記載のコンテンツ所有者のコンテンツ応答パケット送信方法。
【請求項４】
前記キャッシュ収容値の閾値は、前記コンテンツをキャッシュする候補ノードの位置、及び前記コンテンツをキャッシュする候補ノードの個数を決定するために用いられることを特徴とする請求項１に記載のコンテンツ所有者のコンテンツ応答パケット送信方法。
【請求項５】
前記キャッシュ収容値の閾値が第１値を有することに応答して全てのノードが前記コンテンツをキャッシュし、
前記キャッシュ収容値の閾値が第２値を有することに応答して全てのノードが前記コンテンツをキャッシュせず、
前記キャッシュ収容値の閾値が第３値を有することに応答して該第３値よりも大きいキャッシュ収容値（ＣＣＶ）を有するノードが前記コンテンツをキャッシュすることを特徴とする請求項１に記載のコンテンツ所有者のコンテンツ応答パケット送信方法。
【請求項６】
前記コンテンツ所有者のポリシーに基づいて、前記コンテンツ応答パケットに含まれるコンテンツのライフタイムを調整するステップを更に含むことを特徴とする請求項１に記載のコンテンツ所有者のコンテンツ応答パケット送信方法。
【請求項７】
前記コンテンツ応答パケットは、前記コンテンツ要求パケットに含まれる候補ノードとコンテンツ所有者との間のオリジナルネットワーク距離（ｏＮＤＶ）、前記コンテンツ応答パケットのダウンストリーム転送で減少する減少ネットワーク距離（ｄＮＤＶ）、前記コンテンツ要求パケットに含まれる最大キャッシュ収容値、加重値、及び前記コンテンツのライフタイムのいずれか１つ又はその組み合せを更に含むことを特徴とする請求項１に記載のコンテンツ所有者のコンテンツ応答パケット送信方法。
【請求項８】
請求項１に記載のコンテンツ応答パケット送信方法を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項９】
コンテンツ中心ネットワーク（ＣＣＮ）におけるノードがコンテンツ要求パケットを送信する方法であって、
ノードのノード関連情報に基づいて、コンテンツをキャッシュする候補ノードを識別するためのキャッシュ収容値（ＣＣＶ）を算出するステップと、
前記算出されたキャッシュ収容値と前記ノードによって転送されたコンテンツ要求パケットに含まれるキャッシュ収容値とを比較するステップと、
前記比較した結果に基づいて、前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップと、を有し、
前記コンテンツ要求パケットは、コンテンツ名並びに候補ノードのキャッシュ収容値及び前記候補ノードとコンテンツ所有者との間のネットワーク距離（ＮＤＶ）を含むキャッシュ関連情報を含むことを特徴とするノードのコンテンツ要求パケット送信方法。
【請求項１０】
前記ノード関連情報は、ノードのキャッシュサイズ、ノードがリクエストするコンテンツの人気度、ノードのネットワーク中心性又はノード接続性、ノードの帯域幅、及びコンテンツ名のいずれか１つ又はその組み合せを含むことを特徴とする請求項９に記載のノードのコンテンツ要求パケット送信方法。
【請求項１１】
前記比較した結果に基づいて、前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップは、
前記算出されたキャッシュ収容値が前記ノードによって転送されたコンテンツ要求パケットに含まれるキャッシュ収容値よりも大きい場合、
前記コンテンツ要求パケットに含まれるキャッシュ収容値を前記算出されたキャッシュ収容値に更新するステップと、
前記コンテンツ要求パケットに含まれる前記候補ノードとコンテンツ所有者との間のネットワーク距離（ＮＤＶ）を初期化するステップと、を含むことを特徴とする請求項９に記載のノードのコンテンツ要求パケット送信方法。
【請求項１２】
前記比較した結果に基づいて、前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップは、
前記算出されたキャッシュ収容値が前記ノードによって転送されたコンテンツ要求パケットに含まれるキャッシュ収容値以下である場合、
前記コンテンツ要求パケットに含まれるキャッシュ収容値を保持するステップと、
前記コンテンツ要求パケットに含まれる前記候補ノードとコンテンツ所有者との間のネットワーク距離（ＮＤＶ）を増加させるステップと、を含むことを特徴とする請求項９に記載のノードのコンテンツ要求パケット送信方法。
【請求項１３】
前記コンテンツ要求パケットに応答して送信されるコンテンツ応答パケットは、前記コンテンツ、前記コンテンツ要求パケットに含まれる候補ノードとコンテンツ所有者との間のオリジナルネットワーク距離（ｏＮＤＶ）、前記コンテンツ応答パケットのダウンストリーム転送で減少する減少ネットワーク距離（ｄＮＤＶ）、前記キャッシュ収容値の閾値（ＣＣＶｔｈ）、前記コンテンツ要求パケットに含まれる最大キャッシュ収容値、加重値、及び前記コンテンツのライフタイムのいずれか１つ又はその組み合せを含むことを特徴とする請求項９に記載のノードのコンテンツ要求パケット送信方法。
【請求項１４】
前記減少ネットワーク距離に基づいて前記コンテンツ応答パケットをダウンストリームに転送するステップを更に含むことを特徴とする請求項１３に記載のノードのコンテンツ要求パケット送信方法。
【請求項１５】
前記コンテンツ応答パケットがダウンストリームに転送されることで前記コンテンツ応答パケットに含まれる前記減少ネットワーク距離を減少させるステップを更に含むことを特徴とする請求項１４に記載のノードのコンテンツ要求パケット送信方法。
【請求項１６】
前記減少ネットワーク距離に基づいて、前記ノード又は前記ノードの隣接ノードが前記コンテンツをキャッシュするか否かを認知するステップを更に含むことを特徴とする請求項１５に記載のノードのコンテンツ要求パケット送信方法。
【請求項１７】
前記オリジナルネットワーク距離と前記減少ネットワーク距離とを比較した結果及び前記算出されたキャッシュ収容値と前記キャッシュ収容値の閾値とを比較した結果に基づいて前記ノードに前記コンテンツをキャッシュするステップを更に含むことを特徴とする請求項１３に記載のノードのコンテンツ要求パケット送信方法。
【請求項１８】
前記ノードのアウトバウンド隣接ノードのフォワーディング情報ベース（ＦＩＢ）テーブルに、前記ノードにキャッシュされたコンテンツのライフタイムに基づいて設定されたタイマーを保持するステップを更に含むことを特徴とする請求項１７に記載のノードのコンテンツ要求パケット送信方法。
【請求項１９】
ＬＲＵ（Ｌｅａｓｔ  Ｒｅｃｅｎｔｌｙ  Ｕｓｅｄ）方式又はＬＦＵ（Ｌｅａｓｔ  Ｆｒｅｑｕｅｎｔｌｙ  Ｕｓｅｄ）方式を用いて、前記キャッシュされたコンテンツのライフタイムを調整するステップを更に含むことを特徴とする請求項１８に記載のノードのコンテンツ要求パケット送信方法。
【請求項２０】
前記キャッシュされたコンテンツのライフタイムが満了した場合又は前記キャッシュされたコンテンツのコンテンツ要求パケットを前記ノードのフォワーディング情報ベース（ＦＩＢ）テーブルに格納されたフェイスと異なるフェイスを介して受信した場合、前記キャッシュされたコンテンツを削除するステップを更に含むことを特徴とする請求項１７に記載のノードのコンテンツ要求パケット送信方法。
【請求項２１】
前記コンテンツ応答パケットが前記キャッシュ収容値のための加重値を含む場合、前記加重値を用いて前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップを更に含むことを特徴とする請求項１３に記載のノードのコンテンツ要求パケット送信方法。
【請求項２２】
前記加重値を用いて前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップは、
前記コンテンツ要求パケットに含まれる最大キャッシュ収容値と前記加重値とを用いてキャッシュ収容値の閾値を算出するステップと、
前記算出されたキャッシュ収容値の閾値を用いて前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップと、を更に含むことを特徴とする請求項２１に記載のノードのコンテンツ要求パケット送信方法。
【請求項２３】
前記算出されたキャッシュ収容値の閾値を用いて前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップは、
前記算出されたキャッシュ収容値の閾値と前記算出されたキャッシュ収容値とを比較するステップと、
前記算出されたキャッシュ収容値の閾値と前記算出されたキャッシュ収容値とを比較した結果に基づいて、前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップと、を更に含むことを特徴とする請求項２２に記載のノードのコンテンツ要求パケット送信方法。
【請求項２４】
前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップは、前記算出されたキャッシュ収容値が前記算出されたキャッシュ収容値の閾値よりも大きい場合、前記ノードが前記コンテンツをキャッシュする候補ノードであると決定するステップを含むことを特徴とする請求項２３に記載のノードのコンテンツ要求パケット送信方法。
【請求項２５】
前記ノードに前記加重値を格納するステップを更に含むことを特徴とする請求項１３に記載のノードのコンテンツ要求パケット送信方法。
【請求項２６】
前記格納された加重値を次のノードに転送するステップを更に含むことを特徴とする請求項２５に記載のノードのコンテンツ要求パケット送信方法。
【請求項２７】
コンテンツ中心ネットワーク（ＣＣＮ）における中間ノードがコンテンツをキャッシュする方法であって、
コンテンツ要求者から前記中間ノードを介してコンテンツ所有者に送信されるコンテンツ要求パケットに応答して、前記中間ノードのノード関連情報及び前記コンテンツ所有者から送信されたコンテンツを含むコンテンツ応答パケットに含まれる情報に基づいて、前記コンテンツ要求者と前記コンテンツ所有者との間で前記コンテンツ要求者によってリクエストされたコンテンツをキャッシュする中間ノードを識別するステップと、
前記コンテンツがキャッシュされる前記識別された中間ノードで前記コンテンツ応答パケットに含まれるコンテンツをキャッシュするステップと、を有し、
前記コンテンツ要求パケットは、コンテンツ名並びに候補ノードのキャッシュ収容値及び前記候補ノードとコンテンツ所有者との間のネットワーク距離（ＮＤＶ）を含むキャッシュ関連情報を含むことを特徴とする中間ノードのコンテンツキャッシュ方法。
【請求項２８】
前記中間ノードを識別するステップは、
前記中間ノードで前記コンテンツ応答パケットを受信するステップと、
前記中間ノードのキャッシュ収容値（ＣＣＶ）が前記コンテンツ応答パケットに含まれるキャッシュ収容値の閾値（ＣＣＶｔｈ）以上である場合、前記中間ノードを前記コンテンツ要求者によってリクエストされたコンテンツをキャッシュする中間ノードとして識別するステップと、
前記中間ノードのキャッシュ収容値が前記コンテンツ応答パケットに含まれるキャッシュ収容値の閾値よりも小さい場合、前記中間ノードを前記コンテンツ要求者によってリクエストされたコンテンツをキャッシュする中間ノードでないと識別するステップと、を含むことを特徴とする請求項２７に記載の中間ノードのコンテンツキャッシュ方法。
【請求項２９】
前記コンテンツ応答パケットに含まれる最大キャッシュ収容値及び前記コンテンツ応答パケットに含まれる加重値に基づいて前記キャッシュ収容値の閾値を算出するステップを更に含み、
前記最大キャッシュ収容値は、前記コンテンツ要求者から前記コンテンツ所有者に送信されるコンテンツ要求パケットの送信経路上にある全ての中間ノードの中の最大キャッシュ収容値であることを特徴とする請求項２８に記載の中間ノードのコンテンツキャッシュ方法。
【請求項３０】
前記中間ノードを識別するステップは、
前記中間ノードで前記コンテンツ応答パケットを受信するステップと、
前記中間ノードのキャッシュ収容値（ＣＣＶ）が前記コンテンツ応答パケットに含まれるキャッシュ収容値の閾値（ＣＣＶｔｈ）以上で且つ前記コンテンツ応答パケットに含まれる減少ネットワーク距離（ｄＮＤＶ）が「０」であり、前記コンテンツ応答パケットのダウンストリーム転送で前記減少ネットワーク距離が減少した値を有する場合、前記中間ノードを前記コンテンツ要求者によってリクエストされたコンテンツをキャッシュする中間ノードとして識別するステップと、
前記キャッシュ収容値が前記キャッシュされたキャッシュ収容値の閾値よりも小さいか又は前記減少ネットワーク距離が「０」でない場合、前記中間ノードを前記コンテンツ要求者によってリクエストされたコンテンツをキャッシュする中間ノードでないと識別するステップと、を含むことを特徴とする請求項２７に記載の中間ノードのコンテンツキャッシュ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ中心ネットワークにおけるコンテンツ所有者及びノードのパケット送信方法に関する。
【背景技術】
【０００２】
ＩＰとは異なり、コンテンツ中心ネットワーク（Ｃｏｎｔｅｎｔ  Ｃｅｎｔｒｉｃ  Ｎｅｔｗｏｒｋ：ＣＣＮ）技術は、パケットヘッダにソース及びデスティネーションアドレスの代わりに必要なコンテンツ名を表示する。従って、各ルータは、パケットヘッダに記されたコンテンツ名を参照して、該当するコンテンツがある箇所に各パケットを送信するようにルーティングテーブルを構成する。また、ルータを含む全てのネットワークデバイスは、ストレージを有してコンテンツを一時的に格納する。ＣＣＮで、パケットはコンテンツ要求パケットとコンテンツ応答パケットとに区分されるが、コンテンツ要求パケットはリクエストするコンテンツ名を含み、コンテンツ応答パケットは要求されたコンテンツとコンテンツ名などを含む。ネットワークデバイスは、コンテンツ要求パケットを受信した場合、ヘッダにあるコンテンツ名で自身のストレージを検索し、自身が該当するコンテンツを有する場合、そのコンテンツを要求者に伝達（応答）する。従って、コンテンツの本来の所有者の場所まで行ってコンテンツを受け取らなければならないＩＰベースインターネットに比べて、ＣＣＮでは、中間のいずれのノードでも、自身のストレージに該当するコンテンツがある場合に応答（ｒｅｐｌｙ）することができるため、平均送信経路（ｐａｔｈ）の長さが短くなり、全体的なネットワークの使用量が減少する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明は、上記従来技術に鑑みてなされたものであって、本発明の目的は、コンテンツ中心ネットワークにおけるコンテンツ所有者及びノードのパケット送信方法並びに中間ノードのコンテンツキャッシュ方法を提供することにある。
【課題を解決するための手段】
【０００４】
上記目的を達成するためになされた本発明の一態様によるコンテンツ中心ネットワーク（ＣＣＮ）におけるコンテンツ所有者がコンテンツ応答パケットを送信する方法は、コンテンツ所有者のポリシーに基づいて、コンテンツをキャッシュする候補ノードを決定するためのキャッシュ収容値の閾値（ＣＣＶｔｈ）を決定するステップと、コンテンツ要求者のコンテンツ要求パケットに応答して前記コンテンツ及び前記キャッシュ収容値の閾値を含むコンテンツ応答パケットを送信するステップと、を有する。
【０００５】
前記コンテンツ所有者のポリシーは、コンテンツ名、コンテンツの人気度、コンテンツの重要度、及びコンテンツのヒット率のいずれか１つ又はその組み合せに基づき得る。
前記コンテンツ所有者のコンテンツ応答パケット送信方法は、前記コンテンツ所有者のポリシーの変更に応答して前記キャッシュ収容値の閾値を調整するステップを更に含み得る。
前記キャッシュ収容値の閾値は、前記コンテンツをキャッシュする候補ノードの位置、及び前記コンテンツをキャッシュする候補ノードの個数を決定するために用いられ得る。
前記キャッシュ収容値の閾値が第１値を有することに応答して全てのノードが前記コンテンツをキャッシュし、前記キャッシュ収容値の閾値が第２値を有することに応答して全てのノードが前記コンテンツをキャッシュせず、前記キャッシュ収容値の閾値が第３値を有することに応答して該第３値よりも大きいキャッシュ収容値（ＣＣＶ）を有するノードが前記コンテンツをキャッシュし得る。
前記コンテンツ所有者のコンテンツ応答パケット送信方法は、前記コンテンツ所有者のポリシーに基づいて、前記コンテンツ応答パケットに含まれるコンテンツのライフタイムを調整するステップを更に含み得る。
前記コンテンツ応答パケットは、前記コンテンツ要求パケットに含まれる候補ノードとコンテンツ所有者との間のオリジナルネットワーク距離（ｏＮＤＶ）、前記コンテンツ応答パケットのダウンストリーム転送で減少する減少ネットワーク距離（ｄＮＤＶ）、前記コンテンツ要求パケットに含まれる最大キャッシュ収容値、加重値、及び前記コンテンツのライフタイムのいずれか１つ又はその組み合せを更に含み得る。
【０００６】
上記目的を達成するためになされた本発明の一態様によるコンテンツ中心ネットワーク（ＣＣＮ）におけるノードがコンテンツ要求パケットを送信する方法は、ノードのノード関連情報に基づいて、コンテンツをキャッシュする候補ノードを識別するためのキャッシュ収容値（ＣＣＶ）を算出するステップと、前記算出されたキャッシュ収容値と前記ノードによって転送されたコンテンツ要求パケットに含まれるキャッシュ収容値とを比較するステップと、前記比較した結果に基づいて、前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップと、を有する。
【０００７】
前記ノード関連情報は、ノードのキャッシュサイズ、ノードがリクエストするコンテンツの人気度、ノードのネットワーク中心性又はノード接続性、ノードの帯域幅、及びコンテンツ名のいずれか１つ又はその組み合せを含み得る。
前記コンテンツ要求パケットは、コンテンツ名並びに候補ノードのキャッシュ収容値及び前記候補ノードとコンテンツ所有者との間のネットワーク距離（ＮＤＶ）を含むキャッシュ関連情報を含み得る。
前記比較した結果に基づいて、前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップは、前記算出されたキャッシュ収容値が前記ノードによって転送されたコンテンツ要求パケットに含まれるキャッシュ収容値よりも大きい場合、前記コンテンツ要求パケットに含まれるキャッシュ収容値を前記算出されたキャッシュ収容値に更新するステップと、前記コンテンツ要求パケットに含まれる前記候補ノードとコンテンツ所有者との間のネットワーク距離（ＮＤＶ）を初期化するステップと、を含み得る。
前記比較した結果に基づいて、前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップは、前記算出されたキャッシュ収容値が前記ノードによって転送されたコンテンツ要求パケットに含まれるキャッシュ収容値以下である場合、前記コンテンツ要求パケットに含まれるキャッシュ収容値を保持するステップと、前記コンテンツ要求パケットに含まれる前記候補ノードとコンテンツ所有者との間のネットワーク距離（ＮＤＶ）を増加させるステップと、を含み得る。
前記コンテンツ要求パケットに応答して送信されるコンテンツ応答パケットは、前記コンテンツ、前記コンテンツ要求パケットに含まれる候補ノードとコンテンツ所有者との間のオリジナルネットワーク距離（ｏＮＤＶ）、前記コンテンツ応答パケットのダウンストリーム転送で減少する減少ネットワーク距離（ｄＮＤＶ）、前記キャッシュ収容値の閾値（ＣＣＶｔｈ）、前記コンテンツ要求パケットに含まれる最大キャッシュ収容値、加重値、及び前記コンテンツのライフタイムのいずれか１つ又はその組み合せを含み得る。
前記減少ネットワーク距離に基づいて前記コンテンツ応答パケットをダウンストリームに転送するステップを更に含み得る。
前記コンテンツ応答パケットがダウンストリームに転送されることで前記コンテンツ応答パケットに含まれる前記減少ネットワーク距離を減少させるステップを更に含み得る。
前記減少ネットワーク距離に基づいて、前記ノード又は前記ノードの隣接ノードが前記コンテンツをキャッシュするか否かを認知するステップを更に含み得る。
前記オリジナルネットワーク距離と前記減少ネットワーク距離とを比較した結果及び前記算出されたキャッシュ収容値と前記キャッシュ収容値の閾値とを比較した結果に基づいて前記ノードに前記コンテンツをキャッシュするステップを更に含み得る。
前記ノードのアウトバウンド隣接ノードのフォワーディング情報ベース（ＦＩＢ）テーブルに、前記ノードにキャッシュされたコンテンツのライフタイムに基づいて設定されたタイマーを保持するステップを更に含み得る。
ＬＲＵ（Ｌｅａｓｔ  Ｒｅｃｅｎｔｌｙ  Ｕｓｅｄ）方式又はＬＦＵ（Ｌｅａｓｔ  Ｆｒｅｑｕｅｎｔｌｙ  Ｕｓｅｄ）方式を用いて、前記キャッシュされたコンテンツのライフタイムを調整するステップを更に含み得る。
前記キャッシュされたコンテンツのライフタイムが満了した場合又は前記キャッシュされたコンテンツのコンテンツ要求パケットを前記ノードのフォワーディング情報ベース（ＦＩＢ）テーブルに格納されたフェイスと異なるフェイスを介して受信した場合、前記キャッシュされたコンテンツを削除するステップを更に含み得る。
前記コンテンツ応答パケットが前記キャッシュ収容値のための加重値を含む場合、前記加重値を用いて前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップを更に含み得る。
前記加重値を用いて前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップは、前記コンテンツ要求パケットに含まれる最大キャッシュ収容値と前記加重値とを用いてキャッシュ収容値の閾値を算出するステップと、前記算出されたキャッシュ収容値の閾値を用いて前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップと、を更に含み得る。
前記算出されたキャッシュ収容値の閾値を用いて前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップは、前記算出されたキャッシュ収容値の閾値と前記算出されたキャッシュ収容値とを比較するステップと、前記算出されたキャッシュ収容値の閾値と前記算出されたキャッシュ収容値とを比較した結果に基づいて、前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップと、を更に含み得る。
前記ノードが前記コンテンツをキャッシュする候補ノードであるか否かを決定するステップは、前記算出されたキャッシュ収容値が前記算出されたキャッシュ収容値の閾値よりも大きい場合、前記ノードが前記コンテンツをキャッシュする候補ノードであると決定するステップを含み得る。
前記ノードのコンテンツ要求パケット送信方法は、前記ノードに前記加重値を格納するステップを更に含み得る。
前記ノードのコンテンツ要求パケット送信方法は、前記格納された加重値を次のノードに転送するステップを更に含み得る。
【０００８】
上記目的を達成するためになされた本発明の一態様によるコンテンツ中心ネットワークにおける中間ノードがコンテンツをキャッシュする方法は、コンテンツ要求者から前記中間ノードを介してコンテンツ所有者に送信されるコンテンツ要求パケットに応答して、前記中間ノードのノード関連情報及び前記コンテンツ所有者から送信されたコンテンツを含むコンテンツ応答パケットに含まれる情報に基づいて、前記コンテンツ要求者と前記コンテンツ所有者との間で前記コンテンツ要求者によってリクエストされたコンテンツをキャッシュする中間ノードを識別するステップと、前記コンテンツがキャッシュされる前記識別された中間ノードで前記コンテンツ応答パケットに含まれるコンテンツをキャッシュするステップと、を有する。
【０００９】
前記中間ノードを識別するステップは、前記中間ノードで前記コンテンツ応答パケットを受信するステップと、前記中間ノードのキャッシュ収容値（ＣＣＶ）が前記コンテンツ応答パケットに含まれるキャッシュ収容値の閾値（ＣＣＶｔｈ）以上である場合、前記中間ノードを前記コンテンツ要求者によってリクエストされたコンテンツをキャッシュする中間ノードとして識別するステップと、前記中間ノードのキャッシュ収容値が前記コンテンツ応答パケットに含まれるキャッシュ収容値の閾値よりも小さい場合、前記中間ノードを前記コンテンツ要求者によってリクエストされたコンテンツをキャッシュする中間ノードでないと識別するステップと、を含み得る。
前記コンテンツ応答パケットに含まれる最大キャッシュ収容値及び前記コンテンツ応答パケットに含まれる加重値に基づいて前記キャッシュ収容値の閾値を算出するステップを更に含み、前記最大キャッシュ収容値は、前記コンテンツ要求者から前記コンテンツ所有者に送信されるコンテンツ要求パケットの送信経路上にある全ての中間ノードの中の最大キャッシュ収容値であり得る。
前記中間ノードを識別するステップは、前記中間ノードで前記コンテンツ応答パケットを受信するステップと、前記中間ノードのキャッシュ収容値（ＣＣＶ）が前記コンテンツ応答パケットに含まれるキャッシュ収容値の閾値（ＣＣＶｔｈ）以上で且つ前記コンテンツ応答パケットに含まれる減少ネットワーク距離（ｄＮＤＶ）が「０」であり、前記コンテンツ応答パケットのダウンストリーム転送で前記減少ネットワーク距離が減少した値を有する場合、前記中間ノードを前記コンテンツ要求者によってリクエストされたコンテンツをキャッシュする中間ノードとして識別するステップと、前記キャッシュ収容値が前記キャッシュされたキャッシュ収容値の閾値よりも小さいか又は前記減少ネットワーク距離が「０」でない場合、前記中間ノードを前記コンテンツ要求者によってリクエストされたコンテンツをキャッシュする中間ノードでないと識別するステップと、を含み得る。
【発明の効果】
【００１０】
本発明のコンテンツ中心ネットワークにおけるノードは、コンテンツストアの大きさを含むノードの状態、コンテンツ要求の頻度、ノードのネットワーク中心性又はノード接続性（Ｎｏｄｅ  Ｃｏｎｎｅｃｔｉｖｉｔｙ）などに基づいて、送信経路上の全ての中間ノードでなく、コンテンツが転送される経路上の最適位置に該当するノードにコンテンツをキャッシュすることで、ネットワークキャッシュリソースの効用を最大化することができる。
また、コンテンツがキャッシュされたノードに隣接するノードに、最適位置に該当するノードに関する情報、及び最適位置に該当するノードにキャッシュされたコンテンツのリストを格納することで、コンテンツルーティングを効率的に行うことができる。
【図面の簡単な説明】
【００１１】
【図１】一般的なコンテンツ中心ネットワーク（ＣＣＮ）におけるコンテンツ要求及びコンテンツ応答の一例を示す図である。
【図２】図１のＣＣＮにおけるコンテンツ要求パケットを処理する一例を示す図である。
【図３】〔ａ〕及び（ｂ）はコンテンツ中心ネットワークにおけるコンテンツ要求に対するコンテンツ応答の一例を示す図である。
【図４】コンテンツ中心ネットワークにおけるコンテンツ所有者のコンテンツ応答パケット送信方法の一例を示すフローチャートである。
【図５】コンテンツ中心ネットワークにおけるノードのコンテンツ要求パケット送信方法の一例を示すフローチャートである。
【図６】コンテンツ中心ネットワークにおけるノードのコンテンツ要求パケット送信方法の他の例を示すフローチャートである。
【図７】コンテンツ中心ネットワークにおけるノードのコンテンツ応答パケット送信方法の一例を示すフローチャートである。
【図８】コンテンツ中心ネットワークにおけるコンテンツ要求パケットを用いてコンテンツをキャッシュする候補ノードを決定する方法の一例を示す図である。
【図９】コンテンツ中心ネットワークにおけるコンテンツ応答パケットを用いてコンテンツをキャッシュする候補ノードを決定する方法の一例を示す図である。
【図１０】コンテンツ中心ネットワークにおけるアウトバウンド隣接ノードのＦＩＢテーブルを用いたキャッシュされたコンテンツを有するノードを認知する方法の一例を示す図である。
【図１１】コンテンツ中心ネットワークにおけるコンテンツ所有者の一例を示すブロック図である。
【図１２】コンテンツ中心ネットワークにおけるノードの一例を示すブロック図である。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態の具体例を、図面を参照しながら詳細に説明する。しかし、本発明は一実施形態によって制限されたり限定されたりすることはない。また、各図面に提示した同一の参照符号は同一の構成要素を示す。
【００１３】
図１は、一般的なコンテンツ中心ネットワーク（ＣＣＮ）におけるコンテンツ要求及びコンテンツ応答の一例を示す図である。
【００１４】
以下で「ノード」は、例えば移動端末やルータのようなネットワークデバイスを含む意味として理解される。「コンテンツ所有者」は「コンテンツ要求者」がリクエストしたコンテンツを元々所有するノードを意味し、「コンテンツ要求者」はコンテンツをリクエストするノードを意味する。また、「中間ノード」は、コンテンツ中心ネットワーク（ＣＮＮ）におけるコンテンツ所有者及びコンテンツ要求者でない他のノードを意味する。しかし、実施形態によって、コンテンツ所有者及びコンテンツ要求者も中間ノードとして使用される。
【００１５】
図１を参照すると、コンテンツ要求者１１０が「インタレスト（Ｉｎｔｅｒｅｓｔ）」と称するコンテンツ要求パケットをネットワークに送信し、コンテンツ要求パケットを受信したコンテンツ所有者１５０が、コンテンツ要求パケットに応答して「コンテンツ（Ｃｏｎｔｅｎｔ）」と称するコンテンツ応答パケットを送信する。コンテンツ応答パケットに含まれるコンテンツは、コンテンツ所有者１５０のみならず、経路上の中間ノード１２０、１３０、１４０にキャッシュされる。
【００１６】
コンテンツ所有者１５０が受信したコンテンツ要求パケットに応答してコンテンツ所有者１５０がコンテンツ応答パケットを送信すると、中間ノード１２０、１３０、１４０は、コンテンツ要求パケットが受信された経路（例えば、フェイス（ｆａｃｅ））にコンテンツ応答パケットを転送（ｆｏｒｗａｒｄ）する。中間ノード１２０、１３０、１４０は、コンテンツを送信すると共に、自身の格納空間（例えば、コンテンツストア（ＣＳ）（図２の２１０参照））にコンテンツ応答パケットに含まれるコンテンツを一時的にキャッシュする。即ち、送信経路上に在る全ての中間ノード１２０、１３０、１４０が同じコンテンツをキャッシュする。
【００１７】
コンテンツ所有者１５０が多様なコンテンツを格納し、複数のコンテンツ要求者がコンテンツ要求パケットを送信すると、ネットワーク経路上の中間ノード１２０、１３０、１４０は多様なコンテンツをキャッシュする。複数のコンテンツ要求者が多様なコンテンツを要求すると、多量のコンテンツが中間ノード１２０、１３０、１４０の各々にキャッシュされ、新しいコンテンツが優先的にキャッシュされる。例えば、中間ノードが新しいコンテツ応答パケットを受信して中間ノード１２０、１３０、１４０のうちの１つのコンテンツストア（ＣＳ）２１０が満杯（ｆｕｌｌ）になった場合、中間ノードは、コンテンツストア２１０にキャッシュされた古いコンテンツを削除して新しいコンテンツ応答パケットに含まれる新しいコンテンツをコンテンツストア２１０にキャッシュする。
【００１８】
図２は、図１のＣＣＮにおけるコンテンツ要求パケットを処理する一例を示す図である。
【００１９】
名前ベースのネットワーク又は名前データネットワークとして知られるコンテンツ中心ネットワークにおいて、コンテンツ名は、コンテンツがキャッシュされたノードを探し出すためのコンパスの役割を果たし、コンテンツを識別するために用いられる。従って、各コンテンツは固有の名前を使用する。異なる名前を有する２つのコンテンツは、２つのコンテンツが同一の内容であっても異なるコンテンツとして認識される。
【００２０】
例えば、２つのファイルの内容は、同一であるが、それぞれ「／ＡＢＣ．ｃｏｍ／ｓａｉｔ／ｖｉｄｅｏ／ｉｎｔｒｏ．ａｖｉ」及び「／ＡＢＣ．ｃｏｍ／ｓａｉｔ／ｃｏｍｍ／ｖｉｄｅｏ／ｉｎｔｒｏ．ａｖｉ」の異なるコンテンツ名を有する場合、２つのファイルの内容が同一であっても、ファイルの内容が異なるコンテンツとして認識される。このような規則は、類似するコンテンツ名を有する異なるコンテンツを区別するために有用である。
【００２１】
図２を参照して、コンテンツ中心ネットワーク（ＣＣＮ）におけるコンテンツの階層的な名前に基づいて該当するコンテンツを引き出すコンテンツ要求パケットを処理する一例について説明する。
【００２２】
コンテンツ中心ネットワークのノードが、ｆａｃｅ（０）２０１から、「／ＡＢＣ．ｃｏｍ／ｃｈａｒｌｅｓ／ａｂｃ．ａｖｉ／ｖ３／ｓ２」と名付けられたコンテンツのコンテンツ要求パケットを受信すると、ノードのネットワークモジュールは、コンテンツ要求パケット内に含まれるコンテンツの階層的な名前（ここでは、「／ＡＢＣ．ｃｏｍ／ｃｈａｒｌｅｓ／ａｂｃ．ａｖｉ／ｖ３／ｓ２」）を参照して該当するコンテンツがノードのコンテンツストア２１０内に有るか否かを判定する。
【００２３】
該当するコンテンツがコンテンツストア２１０内に有ると判定された場合、ノードは、該当するコンテンツを、コンテンツ要求パケットが受信されたｆａｃｅ（０）２０１に送信する。フェイスはインタフェースとも称される。
【００２４】
該当するコンテンツがコンテンツストア２１０内に無いと判定された場合、ノードは、ペンディングインタレストテーブル（Ｐｅｎｄｉｎｇ  Ｉｎｔｅｒｅｓｔ  Ｔａｂｌｅ：ＰＩＴ）２３０内に同じコンテンツ名（ここでは、「／ＡＢＣ．ｃｏｍ／ｃｈａｒｌｅｓ／ａｂｃ．ａｖｉ／ｖ３／ｓ２」）で格納されたエントリ（ｅｎｔｒｙ）が有るか否かを判定する。
【００２５】
同じコンテンツ名で格納されたエントリがペンディングインタレストテーブル２３０内に有る場合、ノードは、ペンディングインタレストテーブル（ＰＩＴ）２３０内の該当するエントリに、コンテンツ要求パケットが受信されたフェイス（ここでは、ｆａｃｅ（０）２０１）に関する情報を追加する。
【００２６】
同じコンテンツ名で格納されたエントリがペンディングインタレストテーブル２３０内に無い場合、ノードは、コンテンツ名に基づいてフォワーディング情報ベース（Ｆｏｒｗａｒｄｉｎｇ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓｅ：ＦＩＢ）２５０内で該当するエントリを探索する。ノードは、検索を行う際に最長プリフィクスマッチング（ｌｏｎｇｅｓｔ  ｐｒｅｆｉｘ  ｍａｔｃｈｉｎｇ）を用いる。
【００２７】
ノードは、フォワーディング情報ベース（ＦＩＢ）２５０に登録された情報に基づいて、コンテンツ要求パケットが転送されるフェイス（ここでは、ｆａｃｅ（１）２０５）を決定し、決定されたフェイス（ｆａｃｅ（１）２０５）にコンテンツ要求パケットを転送する。
【００２８】
ノードは、コンテンツ要求パケットが受信されたフェイス（ｆａｃｅ（０）２０１）に関する情報「０」をペンディングインタレストテーブル（ＰＩＴ）２３０に登録する。登録は、ノードが、コンテンツ応答パケットが受信された場合に、コンテンツ要求パケットに対応するコンテンツを含むコンテンツ応答パケットを、該当するコンテンツをリクエストしたノードに転送されることを可能にする。フォワーディング情報ベース（ＦＩＢ）２５０に基づいてコンテンツ要求パケットが転送されるフェイスを決定する場合、コンテンツ要求パケットが受信されたフェイス（ここでは、ｆａｃｅ（０）２０１）は除外される。
【００２９】
図３（ａ）及び（ｂ）は、コンテンツ中心ネットワークにおけるコンテンツ要求に対するコンテンツ応答の一例示す図である。
【００３０】
一例によるコンテンツ中心ネットワークで、コンテンツは、送信経路上の全ての中間ノードでなく、最適位置に該当するノードに格納又はキャッシュされる。コンテンツが格納又はキャッシュされたノードの隣接ノードは、最適位置に該当するノードに関する情報、及び最適位置に該当するノードに格納又はキャッシュされたコンテンツのリストを格納して、コンテンツルーティングを効率的に行う。
【００３１】
コンテンツは、ノードのコンテンツストアの大きさを含むノードの状態、要求の頻度（Ｆｒｅｑｕｅｎｃｙ  ｏｆ  ｒｅｑｕｅｓｔ）、及びノードのネットワーク中心性（Ｃｅｎｔｒａｌｉｔｙ）又はノード接続性（Ｎｏｄｅ  Ｃｏｎｎｅｃｔｉｖｉｔｙ）に基づいて、最適の位置に該当するノードにキャッシュされる。隣接ノードは、ネットワークキャッシュリソースの効用を最大化するとの認識に基づいて、コンテンツがキャッシュされたノードを認知してコンテンツルーティングをサポートする。
【００３２】
このように、コンテンツの分散格納とコンテンツキャッシュノードの認知は、ネットワーク使用量を軽減させ、ユーザの要求に素早い応答を提供する。
【００３３】
図３（ａ）を参照すると、コンテンツ所有者３０１がコンテンツ｛ａ｝及びコンテンツ｛ｂ｝を所有し、ユーザ１（Ｕｓｅｒ＿１）３０３がコンテンツ｛ａ｝を、ユーザ２（Ｕｓｅｒ＿２）３０５がコンテンツ｛ｂ｝をリクエストする場合、コンテンツ｛ａ｝は最適と判定されたノード３１３にキャッシュされ、コンテンツ｛ｂ｝は最適と判定されたノード３１５にキャッシュされる。ノード３１３及びノード３１５のアウトバウンド隣接ノード３１７は、ノード３１３及びノード３１５の位置を格納し、コンテンツ｛ａ｝及び｛ｂ｝の名前、又はノード３１３及びノード３１５にキャッシュされたコンテンツのリストを格納する。
【００３４】
図３（ｂ）を参照すると、続いてユーザ３（Ｕｓｅｒ＿３）３０７がコンテンツ｛ａ｝をリクエストし、隣接ノード３１７はコンテンツ｛ａ｝がキャッシュされたノード３１３にコンテンツ｛ａ｝のリクエストを経路変更（ｒｅ−ｒｏｕｔｅ）する。送信経路上の隣接ノード３１７は、コンテンツ｛ａ｝がキャッシュされたノードの位置を認知し、コンテンツ｛ａ｝がノード３１３にもキャッシュされているため、ノードにキャッシュされたコンテンツ名を認知する。
【００３５】
従って、隣接ノード３１７はユーザ３（Ｕｓｅｒ＿３）３０７のコンテンツ｛ａ｝のリクエストをノード３１３に経路変更し、ノード３１３はユーザ３（Ｕｓｅｒ＿３）３０７にコンテンツ｛ａ｝を送信する。
【００３６】
以下、コンテンツをキャッシするために最適と判定されたノードを探す方法、及び隣接ノードでコンテンツを認知する方法について更に詳細に説明する。
【００３７】
図４は、コンテンツ中心ネットワークにおけるコンテンツ所有者のコンテンツ応答パケット送信方法の一例を示すフローチャートである。
【００３８】
コンテンツをキャッシするために最適であると判定されたノードを探すために、キャッシュ収容値（ｃａｃｈｉｎｇ  ｃａｐａｂｉｌｉｔｙ  ｖａｌｕｅ：ＣＣＶ））及びキャッシュ収容値の閾値（ｃａｃｈｅ  ｃａｐａｂｉｌｉｔｙ  ｖａｌｕｅ  ｔｈｒｅｓｈｏｌｄ：ＣＣＶｔｈ）を定義する。
【００３９】
ノードの「キャッシュ収容値（ＣＣＶ）」は、ノードのノード関連情報に基づいてコンテンツをキャッシュするノードの収容能力であることが理解される。キャッシュ収容値（ＣＣＶ）は、コンテンツをキャッシュする候補ノードを識別するために用いられる。
【００４０】
「キャッシュ収容値の閾値（ＣＣＶｔｈ）」は、ノードにコンテンツをキャッシュするか否かを決定する下限値であることが理解される。キャッシュ収容値の閾値（ＣＣＶｔｈ）よりも大きいキャッシュ収容値を有するノードは、コンテンツをキャッシュする。一例として、キャッシュ収容値の閾値（ＣＣＶｔｈ）は、コンテンツ所有者のポリシーに基づいてコンテンツ所有者が決定するか、又はコンテンツ所有者のコンテンツ応答パケットで送信された加重値及び最大キャッシュ収容値を用いて各中間ノードが決定する。
【００４１】
図４で、コンテンツ所有者のポリシーに基づいてキャッシュ収容値の閾値（ＣＣＶｔｈ）が決定される場合を説明する。
【００４２】
図４を参照すると、コンテンツ所有者は、コンテンツ所有者のポリシーに基づいてコンテンツをキャッシュする候補ノードを決定するためのキャッシュ収容値の閾値（ＣＣＶｔｈ）を決定する（ステップ４１０）。
【００４３】
コンテンツ所有者のポリシーは、コンテンツ名、コンテンツの人気度、コンテンツの重要度、及びコンテンツのヒット率のいずれか１つ又はその組み合せに基づいて決定される。
【００４４】
コンテンツ名は、フルネームではなく、コミュニティ名、ローカルネーム、又はプリフィクスである。
【００４５】
一例として人気のあるコンテンツを取り上げると、コンテンツ所有者は、コンテンツの人気度に基づいてコンテンツのキャッシュ収容値の閾値（ＣＣＶｔｈ）を調整し、コンテンツがキャッシュされるノードの個数を多くし、またコンテンツがキャッシュされるノードの個数を小さくする。このようなキャッシュ収容値の閾値（ＣＣＶｔｈ）は、コンテンツ所有者のポリシーが変更されることで調整される。
【００４６】
コンテンツ所有者は、コンテンツ所有者のポリシーに基づいて、コンテンツ応答パケットに含まれるコンテンツのライフタイムを調整する（ステップ４３０）。
【００４７】
コンテンツ所有者は、コンテンツ要求者から受信したコンテンツ要求パケットに応答して、コンテンツ及びキャッシュ収容値の閾値（ＣＣＶｔｈ）を含むコンテンツ応答パケットを送信する（ステップ４５０）。コンテンツ応答パケットは、コンテンツ要求パケットに含まれる候補ノードとコンテンツ所有者との間のオリジナルネットワーク距離（ｏｒｉｇｉｎａｌ  ｎｅｔｗｏｒｋ  ｄｉｓｔａｎｃｅ  ｖａｌｕｅ：ｏＮＤＶ）、コンテンツ応答パケットのダウンストリーム転送で減少する減少ネットワーク距離（ｄｅｃｒｅａｓｉｎｇ  ｎｅｔｗｏｒｋ  ｄｉｓｔａｎｃｅ  ｖａｌｕｅ：ｄＮＤＶ）、コンテンツ要求パケットに含まれる最大キャッシュ収容値、加重値、及びコンテンツのライフタイムのうちのいずれか１つ又はその組み合せを含む。
【００４８】
図５は、コンテンツ中心ネットワークにおけるノードのコンテンツ要求パケット送信方法の一例を示すフローチャートである。
【００４９】
図５を参照すると、ノードは、ノードのノード関連情報に基づいてコンテンツをキャッシュする候補ノードを識別するためのキャッシュ収容値（ＣＣＶ）を算出する（ステップ５１０）。ノード関連情報は、ノードのキャッシュサイズ、ノードがリクエストするコンテンツの人気度、ノードのネットワーク中心性又はノード接続性、ノードの帯域幅、及びコンテンツ名のいずれか１つ又はその組み合せを含む。
【００５０】
ノードは、算出されたキャッシュ収容値（ＣＣＶ）と、他のノードから転送されて受信されたコンテンツ要求パケットに含まれるキャッシュ収容値（ＣＣＶ）とを比較する（ステップ５３０）。コンテンツ要求パケットは、コンテンツ名並びに候補ノードのキャッシュ収容値及び候補ノードとコンテンツ所有者との間のネットワーク距離（ｎｅｔｗｏｒｋ  ｄｉｓｔａｎｃｅ  ｖａｌｕｅ：ＮＤＶ）を含むキャッシュ関連情報を含む。
【００５１】
ノードは、比較した結果に基づいて、ノードがコンテンツをキャッシュする候補ノードであるか否かを決定する（ステップ５５０）。比較の結果として算出されたキャッシュ収容値がコンテンツ要求パケットに含まれるキャッシュ収容値よりも大きいと認知された場合、ノードは、コンテンツ要求パケットに含まれるキャッシュ収容値をノードの算出されたキャッシュ収容値に更新することでノードを候補ノードとして決定する。コンテンツ要求者とコンテンツ所有者との間の各ノードを経由した後、コンテンツ要求パケットは、最終的に更新されたキャッシュ収容値、即ち各ノードのキャッシュ収容値のうちの「最大キャッシュ収容値」を含む。コンテンツ所有者は、算出されたキャッシュ収容値の閾値とコンテンツ要求パケットに含まれるキャッシュ収容値とを比較した結果に基づいて、コンテンツをキャッシュする候補ノードを決定する。コンテンツ要求パケットに含まれる候補ノードとコンテンツ所有者との間のネットワーク距離は、コンテンツがキャッシュされるノードを探すために用いられる。
【００５２】
以下、コンテンツ要求パケットの送信を通してコンテンツをキャッシュする候補ノードを決定する方法について図６を参照して更に詳細に説明する。
【００５３】
図６は、コンテンツ中心ネットワークにおけるノードのコンテンツ要求パケット送信方法の他の例を示すフローチャートである。
【００５４】
図６を参照すると、ノードは、ノードのノード関連情報に基づいてコンテンツをキャッシュする候補ノードを識別するためのキャッシュ収容値（ＣＣＶ）を算出する（ステップ６０５）。ノード関連情報は、ノードのキャッシュサイズ、ノードがリクエストするコンテンツの人気度、ノードのネットワーク中心性又はノード接続性、ノードの使用帯域幅、及びコンテンツ名のいずれか１つ又はその組み合せを含む。
【００５５】
ノードは、ステップ６０５で算出されたキャッシュ収容値（ＣＣＶ）と他のノードから転送されて受信されたコンテンツ要求パケットに含まれるキャッシュ収容値（ＣＣＶ）とを比較する（ステップ６１０）。コンテンツ要求パケットは、コンテンツ名並びに候補ノードのキャッシュ収容値及び候補ノードとコンテンツ所有者との間のネットワーク距離を含むキャッシュ関連情報を含む。
【００５６】
ノードは、算出されたキャッシュ収容値（ＣＣＶ）が転送されたコンテンツ要求パケットに含まれるキャッシュ収容値（ＣＣＶ）よりも大きいか否かを判定する（ステップ６１５）。
【００５７】
比較の結果として算出されたキャッシュ収容値がコンテンツ要求パケットに含まれるキャッシュ収容値よりも大きいと認知された場合、ノードは、コンテンツ要求パケットに含まれるキャッシュ収容値（ＣＣＶ）を、算出されたキャッシュ収容値（ＣＣＶ）に更新する（ステップ６２０）。キャッシュ収容値の更新によって、ノードはコンテンツをキャッシュする候補ノードを決定し、最終的に更新されたキャッシュ収容値は、上述した図５に示すように、コンテンツ要求パケットが通過する各ノードのキャッシュ収容値のうちの最大キャッシュ収容値である。
【００５８】
ノードは、コンテンツ要求パケット内の候補ノードとコンテンツ所有者との間のネットワーク距離（ＮＤＶ）をヌル（ｎｕｌｌ）値「０」に初期化する（ステップ６２５）。
【００５９】
ネットワーク距離は、コンテンツ所有者によって受信されたコンテンツ要求パケットに応答して、コンテンツ所有者がコンテンツをキャッシュする候補ノードを探すために用いられる。候補ノードとコンテンツ所有者との間のネットワーク距離は、例えば中継点数（ｈｏｐ  ｃｏｕｎｔ）で示される。
【００６０】
その後、ノードは、コンテンツ要求パケットを転送する（ステップ６３０）。
【００６１】
一方、算出されたキャッシュ収容値が、転送されたコンテンツ要求パケットに含まれるキャッシュ収容値以下である場合、ノードは、コンテンツ要求パケットに含まれるキャッシュ収容値（ＣＣＶ）を保持し（ステップ６３５）、コンテンツ要求パケット内の候補ノードとコンテンツ所有者との間のネットワーク距離（ＮＤＶ）を増加させる（ステップ６４０）。
【００６２】
このような過程を通して、コンテンツ所有者に送信されるコンテンツ要求パケットには、コンテンツ要求パケットの送信経路上のノードのキャッシュ収容値の中の最終的に更新されたキャッシュ収容値、即ち最大キャッシュ収容値が含まれる。
【００６３】
図６に示す方法は、後述する図８を参照して更に詳細に説明する。
【００６４】
図７は、コンテンツ中心ネットワークにおけるノードのコンテンツ応答パケット送信方法の一例を示すフローチャートである。
【００６５】
図７を参照すると、コンテンツ中心ネットワークで、各ノードは、コンテンツ要求パケットに応答してコンテンツ応答パケットを送信し、ノードがキャッシュ候補ノードである場合にコンテンツ応答パケットに含まれるコンテンツをキャッシュする。
【００６６】
ノードは、図６に示す過程を通してノードによってコンテンツ所有者に送信された最大キャッシュ収容値を含むコンテンツ要求パケットに応答してコンテンツ所有者によって送信されたコンテンツ応答パケットを受信する（ステップ７１０）。
【００６７】
一例として、コンテンツ応答パケットは、コンテンツ、コンテンツ要求パケットに含まれる候補ノードとコンテンツ所有者との間のオリジナルネットワーク距離、コンテンツ応答パケットのダウンストリーム転送で減少する減少ネットワーク距離、キャッシュ収容値の閾値（ＣＣＶｔｈ）、コンテンツ要求パケットに含まれる最大キャッシュ収容値、加重値、及びコンテンツのライフタイムのいずれか１つ又はその組み合せを含む。
【００６８】
ノードは、コンテンツ応答パケットに含まれるオリジナルネットワーク距離（ｏＮＤＶ）に基づいて、コンテンツ応答パケットをダウンストリームに転送する（ステップ７２０）。
【００６９】
ノードは、コンテンツ応答パケットに含まれる減少ネットワーク距離（ｄＮＤＶ）を減少させる（ステップ７３０）。
【００７０】
オリジナルネットワーク距離と減少ネットワーク距離とを比較した結果、及び算出されたノードのキャッシュ収容値とキャッシュ収容値の閾値とを比較した結果は、ノードにコンテンツをキャッシュするか否かを判定するために用いられる。
【００７１】
ノードは、減少ネットワーク距離（ｄＮＤＶ）が「０」であるか又は減少ネットワーク距離（ｄＮＤＶ）＜α×オリジナルネットワーク距離（ｏＮＤＶ）であり、且つノードのキャッシュ収容値（ＣＣＶ）がキャッシュ収容値の閾値（ＣＣＶｔｈ）以上であるか否かを判定する（ステップ７４０）。αは、コンテンツ所有者のポリシー又はコンテンツの人気度に基づいて決定され、例えば０．５の値を有する。
【００７２】
「０」の減少ネットワーク距離は、コンテンツが、コンテンツ要求パケットを通してコンテンツが送信されなければならない候補ノードに達したことを意味する。
【００７３】
α（例えば、０．５）×オリジナルネットワーク距離（ｏＮＤＶ）よりも小さい減少ネットワーク距離（ｄＮＤＶ）は、ノードがコンテンツ所有者よりもコンテンツをリクエストしたノードに近いノードであることを意味する。キャッシュ収容値の閾値（ＣＣＶｔｈ）以上であるノードのキャッシュ収容値（ＣＣＶ）は、コンテンツ所有者のポリシーに基づいてコンテンツがノードにキャッシュされることを意味する。
【００７４】
ステップ７４０の条件が満たされる場合、ノードは、候補ノードとしてノードのコンテンツを例えばノードのコンテンツストアにキャッシュする（ステップ７５０）。
【００７５】
一方、ステップ７４０の条件が満たされない場合、ノードは、コンテンツ応答パケットをダウンストリームに転送する（ステップ７６０）。
【００７６】
図７に示す方法は、後述する図９を参照して更に詳細に説明する。
【００７７】
図８は、コンテンツ中心ネットワークにおけるコンテンツ要求パケットを用いてコンテンツをキャッシュする候補ノードを決定する方法の一例を示す図である。
【００７８】
以下、ノード１はコンテンツ要求者をサービスするノード（Ｎｏｄｅ）であり、ノード４はコンテンツ所有者をサービスするノード（Ｎｏｄｅ）である。コンテンツ要求者は、コンテンツ、例えば「／ｎａｖｅｒ．ｃｏｍ／ｎｅｗｓ／ｏｌｙｍｐｉｃｓ．ｍｐ４」ファイルをリクエストする。
【００７９】
ノード１が「２」のキャッシュ収容値（ＣＣＶ（２））を有し、ノード２が「５」のキャッシュ収容値（ＣＣＶ（５））を有し、ノード３が「３」のキャッシュ収容値（ＣＣＶ（３））を有し、そして、ノード４が「５」のキャッシュ収容値（ＣＣＶ（５））を有する場合、最も高いキャッシュ収容値を有するノードがコンテンツをキャッシュする候補ノードであると決定される。キャッシュ収容値は、ノードの状態、即ちノードのノード関連情報に基づいて算出される。
【００８０】
各ノードのキャッシュ収容値ｆは、下記の数式（１）によりノードのノード関連情報に基づいて決定される。
【００８１】
【数１】
0006352290.tif 000002
【００８２】
数式（１）で、Ｃｓｉｚｅは該当するノードの利用可能なキャッシュサイズ（ａｖａｉｌａｂｌｅ  ｃａｃｈｅ  ｓｉｚｅ）を意味し、ＢＷはノードの帯域幅（ＢａｎｄＷｉｄｔｈ）を意味し、Ｃはノードのネットワーク中心性（ｃｅｎｔｒａｌｉｔｙ）又はノードのノード接続性を意味し、ＣＰは該当するノードからリクエストされるコンテンツの人気度（ｐｏｐｕｌａｒｉｔｙ）を意味し、そしてｗ１、ｗ２、ｗ３、ｗ４は加重値を意味する。
【００８３】
コンテンツ要求者は、ノード１にコンテンツ名、例えば「／ｎａｖｅｒ．ｃｏｍ／ｎｅｗｓ／ｏｌｙｍｐｉｃｓ．ｍｐ４」を含むコンテンツ名、候補ノードとコンテンツ所有者との間のネットワーク距離（ＮＤＶ）を含むＮＤＶフィールド、及びコンテンツ要求パケットの送信経路上のノードのキャッシュ収容値のうちの最大キャッシュ収容値を含むキャッシュ収容値（ＣＣＶ）フィールドを含むコンテンツ要求パケットを送信する。コンテンツ要求者は、ネットワーク距離（ＮＤＶ）フィールド及びキャッシュ収容値（ＣＣＶ）フィールドをヌル値「０」に初期化する。
【００８４】
ノード１は、ノード２にコンテンツ要求者がリクエストするコンテンツ名、例えば「／ｎａｖｅｒ．ｃｏｍ／ｎｅｗｓ／ｏｌｙｍｐｉｃｓ．ｍｐ４」、候補ノードとコンテンツ所有者との間のネットワーク距離（ＮＤＶ）、及びノード１のキャッシュ収容値（ＣＣＶ）、例えば「２」を含むコンテンツ要求パケット８１０を転送する。ノード１はキャッシュ候補ノードとコンテンツ所有者との間のネットワーク距離（ＮＤＶ）をヌル値「０」に初期化する。
【００８５】
ノード２は、ノード１からコンテンツ要求パケット８１０を受信し、コンテンツ要求パケット８１０に含まれるキャッシュ収容値をノード２のキャッシュ収容値と比較する。
【００８６】
最も高いキャッシュ収容値を有するノードでコンテンツをキャッシュするために、コンテンツ要求パケットを受信したノードは、ノードのキャッシュ収容値がコンテンツ要求パケットに含まれるキャッシュ収容値よりも大きいキャッシュ収容値を有する場合、コンテンツ要求パケット８１０に含まれるキャッシュ収容値の代わりにノードのキャッシュ収容値を記録する。
【００８７】
従って、ノード２は、コンテンツ要求パケット８３０でノード２によって受信されたコンテンツ要求パケット８１０に含まれる「２」のキャッシュ収容値（ＣＣＶ（２））をノード２で「５」のキャッシュ収容値（ＣＣＶ（５））に上書き（ｏｖｅｒｗｒｉｔｅｓ）する。ノード２がキャッシュ収容値を上書きしたため、ノード２はネットワーク距離（ＮＤＶ）もヌル値「０」に初期化する。
【００８８】
コンテンツ要求パケット８３０はノード２からノード３に転送される。
【００８９】
ノード３の「３」のキャッシュ収容値（ＣＣＶ（３））がコンテンツ要求パケット８３０に含まれる「５」のキャッシュ収容値（ＣＣＶ（５））よりも小さいため、ノード３は、コンテンツ要求パケット８３０に含まれる「５」のキャッシュ収容値（ＣＣＶ（５））を保持し、ノード４に転送されるコンテンツ要求パケット（図８に図示せず）内のネットワーク距離（ＮＤＶ）を「１」に増加させる。
【００９０】
ノード４は、ノード３からコンテンツ要求パケットを受信し、コンテンツ要求パケットに含まれる「５」のキャッシュ収容値（ＣＣＶ（５））とノード４の「５」のキャッシュ収容値（ＣＣＶ（５））とを比較する。
【００９１】
ノード４の「５」のキャッシュ収容値（ＣＣＶ（５））がノード３から受信したコンテンツ要求パケットに含まれる「５」のキャッシュ収容値（ＣＣＶ（５））よりも大きくなく、ノード３から受信したコンテンツ要求パケットに含まれる「５」のキャッシュ収容値（ＣＣＶ（５））がノード４の「５」のキャッシュ収容値（ＣＣＶ（５））と同一であるため、ノード４は、コンテンツ要求パケットに含まれる「５」のキャッシュ収容値（ＣＣＶ（５））を保持し、コンテンツ所有者に転送されるコンテンツ要求パケット８５０内のネットワーク距離（ＮＤＶ）を「２」に増加させる。
【００９２】
上述した動作は、次のようなコーディングで表わされる。以下で「Ｉｎｔｅｒｅｓｔ」はコンテンツ要求パケットを意味し、「Ｒｏｕｔｅｒ」はノードを意味する。
【００９３】
0006352290.tif 000003
【００９４】
一例として、キャッシュ収容値（ＣＣＶ）は、ノードのコンテンツストアの格納空間とノードのネットワーク中心性又はノードの接続性に基づいて決定される。しかし、コンテンツストアの格納空間が可変値であるため、コンテンツストアの格納空間は、大量のコンテンツがリクエストされた場合、短い時間内で全て満たされる。この理由のため、利用可能なキャッシュサイズが各ノードのキャッシュ収容値ｆの決定に対して無駄になる。
【００９５】
ノードのコンテンツストアの格納空間が満杯である場合、利用可能なキャッシュサイズは、実際に保持されたコンテンツストアにキャッシュされたコンテンツと共に、所定時間区間の後に仮想的にリセットされる。或いは、所定の値が、利用可能なキャッシュサイズに割り当てられる。
【００９６】
従って、キャッシュ収容値は、仮想的に利用可能なキャッシュサイズ値に基づいて決定され、これによりネットワークで多様なノードが選択される。
【００９７】
図９は、コンテンツ中心ネットワークにおけるコンテンツ応答パケットを用いてコンテンツをキャッシュする候補ノードを決定する方法の一例を示す図である。
【００９８】
図９を参照すると、コンテツ所有者をサービスするノードは、図８を参照して説明したコンテンツ要求者のコンテンツ要求パケットに応答して、コンテンツ「／ｎａｖｅｒ．ｃｏｍ／ｎｅｗｓ／ｏｌｙｍｐｉｃｓ．ｍｐ４」を含むコンテンツ応答パケットを送信する。コンテンツに加えて、オリジナルネットワーク距離（ｏＮＤＶ）、減少ネットワーク距離（ｄＮＤＶ）、キャッシュ収容値の閾値（ＣＣＶｔｈ）、最大キャッシュ収容値（ＣＣＶ）、加重値、及びコンテンツのライフタイムは、コンテンツ応答パケット（最大キャッシュ収容値（ＣＣＶ）、加重値、及びコンテンツのライフタイムは、図９に図示せず）に更に含まれる。最大キャッシュ収容値は受信されたコンテンツ要求パケットに含まれるキャッシュ収容値であり、加重値は最大キャッシュ収容値に適用される。
【００９９】
「オリジナルネットワーク距離（ｏＮＤＶ）」は、コンテンツをキャッシュする候補ノードとコンテンツ所有者との間のネットワーク距離であり、受信されたコンテンツ要求パケットに格納されたネットワーク距離（ＮＤＶ）からコピー（ｃｏｐｙ）される。
【０１００】
「減少ネットワーク距離（ｄＮＤＶ）」は、コンテンツ応答パケットのダウンストリーム転送で減少又は変化したネットワーク距離であり、コンテンツは、「０」の減少ネットワーク距離（ｄＮＤＶ）を有するノード又は「０」の減少ネットワーク距離（ｄＮＤＶ）を有するノードの隣接ノードにキャッシュされる。
【０１０１】
コンテンツのライフタイムは、コンテンツがキャッシュされる時間の長さである。コンテンツ所有者は、受信されたコンテンツ要求パケットに応答して、コンテンツに設定されたライフタイムと共にコンテンツの人気度に比例するライフタイムを設定して送信する。
【０１０２】
キャッシュ収容値の閾値（ＣＣＶｔｈ）は、送信経路上のノード又は中間ノードの中のコンテンツがキャッシュされるノードを決定するための下限値（Ｌｏｗｅｒ  ｂｏｕｎｄ）である。コンテンツは、キャッシュ収容値の閾値（ＣＣＶｔｈ）よりも大きいキャッシュ収容値を有するノードでキャッシュされる。候補ノードの位置及び候補ノードの個数は、キャッシュ収容値の閾値（ＣＣＶｔｈ）に基づき決定される。
【０１０３】
例えば、キャッシュ収容値の閾値（ＣＣＶｔｈ）が第１値（例えば、「０」）を有する場合、全てのノードはコンテンツをキャッシュする。キャッシュ収容値の閾値（ＣＣＶｔｈ）が第２値（例えば、「０ｘＦＦＦＦ」）を有する場合、全てのノードはコンテンツをキャッシュしない。
【０１０４】
キャッシュ収容値の閾値（ＣＣＶｔｈ）が第３値（例えば、ＣＣＶ×ｅ−ｐ、ここでｐは人気度を意味する）を有する場合、第３値よりも大きいキャッシュ収容値を有するノードはコンテンツをキャッシュする。
【０１０５】
一例として、キャッシュ収容値の閾値（ＣＣＶｔｈ）は、第４値（例えば、人気のあるコンテンツのコミュニティ名）に設定される。例えば、人気のある音楽を取り上げると、キャッシュ収容値の閾値（ＣＣＶｔｈ）は、人気のある音楽に伴う音楽情報を含むコミュニティ名に設定される。この場合、コミュニティ名に該当するノードのみがコンテンツをキャッシュする。
【０１０６】
一例として、中間ノードは、コンテンツ所有者のポリシーに基づいて決定されたキャッシュ収容値の閾値（ＣＣＶｔｈ）の代わりに加重値を用いてコンテンツをキャッシュする候補ノードを決定する。この場合、加重値は、受信されたコンテンツ要求メッセージに含まれる最大キャッシュ収容値と共に、コンテンツ応答パケットに含まれて各ノードに送信される。
【０１０７】
中間ノードが最大キャッシュ収容値及び加重値を含むコンテンツ応答パケットを受信した場合、中間ノードは、加重値を用いてキャッシュ収容値の閾値を算出し、算出されたキャッシュ収容値の閾値を用いて中間ノードがコンテンツをキャッシュする候補ノードであるか否かを決定する。即ち、ノードは、加重値を用いて、算出されたキャッシュ収容値の閾値に基づいてノードがコンテンツをキャッシュするか否かを決定する。
【０１０８】
加重値は、コンテンツの人気度に基づいて算出され、コンテンツ要求メッセージに含まれる最大キャッシュ収容値に適用される。加重値は、人気度に反比例する値であり、例えば「０」以上「１」以下の値を有する。この例で、「０」に近い加重値が高い人気度を有するコンテンツに割り当てられる。
【０１０９】
高い人気度を有するコンテンツがより大きな個数の中間ノードでキャッシュされるために、加重値は、最大キャッシュ収容値に乗算される加重値を小さくすることで新しいキャッシュ収容値の閾値（ＣＣＶｔｈ）を小さくすることによって、人気度に反比例する値（例えば、「０」に近い値）に設定される。
【０１１０】
コンテンツ応答パケットを受信したノードは、最大キャッシュ収容値に加重値を乗算してキャッシュ収容値の閾値（ＣＣＶｔｈ）を算出する。
【０１１１】
ノードは、ノードのキャッシュ収容値と算出されたキャッシュ収容値の閾値とを比較することで、コンテンツをキャッシュする候補ノードであるか否かを決定する。
【０１１２】
算出されたキャッシュ収容値の閾値（ＣＣＶｔｈ）よりも大きいキャッシュ収容値を有するノードは、該当するコンテンツをキャッシュする候補ノードに決定される。ノードのキャッシュ収容値と算出されたキャッシュ収容値の閾値とを比較した結果に基づいてコンテンツをキャッシュするか否かを決定する方法のために、上述したコンテンツ所有者のポリシーに基づいて決定されるキャッシュ収容値の閾値（ＣＣＶｔｈ）を用いた場合を参照する。
【０１１３】
ノードは、コンテンツ応答パケットに含まれる加重値を格納する。加重値を格納したノードがコンテンツ要求メッセージを受信した場合、ノードは、コンテンツ要求が送信される方向の経路上のノードでコンテンツがキャッシュされるか否かの決定に用いられる加重値と共に、コンテンツ要求メッセージに含まれる最大キャッシュ収容値を次のノードに送信する。
【０１１４】
また、ノードは、コンテンツ所有者のポリシーに基づいて決定されるキャッシュ収容値の閾値（ＣＣＶｔｈ）及び加重値を受信する。
【０１１５】
キャッシュ収容値の閾値（ＣＣＶｔｈ）及び加重値を受信した中間ノードは、２段階処理を用いてコンテンツをキャッシュする候補ノードであるか否かを決定する。即ち、ノードは、キャッシュ収容値の閾値（ＣＣＶｔｈ）を用いてコンテンツをキャッシュする候補ノードであるか否かを直ちに決定し、受信されたコンテンツ要求メッセージを処理する際に、コンテンツ要求パケットに含まれる最大キャッシュ収容値及び加重値を用いて、コンテンツをキャッシュする候補ノードであるか否かを決定する。
【０１１６】
コンテンツ所有者は、コンテンツ「／ｎａｖｅｒ．ｃｏｍ／ｎｅｗｓ／ｏｌｙｍｐｉｃｓ．ｍｐ４」、コンテンツ所有者に転送された図８のコンテンツ要求パケット８５０に含まれるネットワーク距離（ＮＤＶ）「２」と同一のオリジナルネットワーク距離（ｏＮＤＶ）「２」、減少ネットワーク距離（ｄＮＤＶ）「２」、及び図８を参照して説明したようにコンテンツ所有者のポリシーに基づいて決定されたキャッシュ収容値の閾値（ＣＣＶｔｈ）「５」を含むコンテンツ応答パケット９１０をノード４に送信する。コンテンツ所有者は、減少ネットワーク距離（ｄＮＤＶ）をオリジナルネットワーク距離（ｏＮＤＶ）の値「２」に初期化する。
【０１１７】
ノード４は、コンテンツ応答パケット９１０を受信し、減少ネットワーク距離（ｄＮＤＶ）を「１」に減少させる。従って、ノード３は、減少ネットワーク距離（ｄＮＤＶ）「１」を含むコンテンツ応答パケット９３０を受信する。ノード３は、減少ネットワーク距離（ｄＮＤＶ）を「０」に減少させ、それにより、ノード２は、減少ネットワーク距離（ｄＮＤＶ）「０」を含むコンテンツ応答パケット９５０を受信する。
【０１１８】
その後、ノード２は、ノード３から減少ネットワーク距離（ｄＮＤＶ）「０」を含むコンテンツ応答パケット９５０を受信し、ノード２の「５」のキャッシュ収容値（ＣＣＶ（５））がコンテンツ応答パケット９５０に含まれるキャッシュ収容値閾値「５」以上であるか否かを決定する。ノード２のキャッシュ収容値がキャッシュ収容値の閾値以上である場合、ノード２の「５」のキャッシュ収容値（ＣＣＶ（５））がキャッシュ収容値の閾値（ＣＣＶｔｈ）「５」と同一であるため、ノード２はコンテンツをキャッシュする。
【０１１９】
ノードが送信経路上のノードの中のコンテンツをキャッシュする候補ノードであるか否かを決定する方法は、次のようなコーディングで表わされる。
【０１２０】
0006352290.tif 000004
【０１２１】
αはコンテンツ所有者のポリシー又はコンテンツの人気度に基づいて決定され、例えばαは０．５の値を有する。
【０１２２】
キャッシュされたコンテンツのライフタイムが満了するか、又はキャッシュされたコンテンツのコンテンツ要求パケットがノードのＦＩＢテーブル（図１０参照）に格納されたフェイスと異なるフェイスを介して受信された場合、ノード２は、ノード２でキャッシュされたコンテンツを削除する。
【０１２３】
図１０は、コンテンツ中心ネットワークにおけるアウトバウンド隣接ノードのＦＩＢテーブルを用いたキャッシュされたコンテンツを有するノードを認知する方法の一例を示す図である。
【０１２４】
図１０を参照すると、ノード４は、コンテンツ所有者からコンテンツ「／ｎａｖｅｒ．ｃｏｍ／ｎｅｗｓ／ｏｌｙｍｐｉｃｓ．ｍｐ４」、コンテンツ所有者によって受信されたコンテンツ要求パケットに含まれるネットワーク距離（ＮＤＶ）「２」と同一のオリジナルネットワーク距離（ｏＮＤＶ）「２」、オリジナルネットワーク距離（ｏＮＤＶ）「２」と同一の減少ネットワーク距離（ｄＮＤＶ）「２」、及びコンテンツ所有者のポリシーに基づいて決定されたキャッシュ収容値の閾値（ＣＣＶｔｈ）「５」を含むコンテンツ応答パケット１０１０を受信する。
【０１２５】
ノード４がコンテンツ応答パケット１０１０を受信した後、ノード４は、減少ネットワーク距離（ｄＮＤＶ）を「１」減少させる。従って、ノード３は、ノード４から減少ネットワーク距離（ｄＮＤＶ）「１」を含むコンテンツ応答パケット１０２０を受信する。
【０１２６】
ノード３は、減少ネットワーク距離（ｄＮＤＶ）に基づいて、ノード３又はノード３の隣接ノードがコンテンツをキャッシュするか否かを認知する。
【０１２７】
コンテンツがキャッシュされる位置（ノード）を認知するために、ノード３は、コンテンツ応答パケットに含まれる情報が（ｄＮＤＶ≦０．５×ｏＮＤＶ）＆（ＣＣＶ≦ＣＣＶｔｈ）を満足するか否かを判定する。
【０１２８】
（ｄＮＤＶ（「１」）≦０．５×ｏＮＤＶ「２」）＆（ＣＣＶ（３）≦ＣＣＶｔｈ「５」）が満たされた場合、ノード３は、ノード３の隣接ノードでコンテンツがキャッシュされることを認知し、コンテンツに伴う情報、例えばコンテンツ名及びコンテンツの位置をノード３のＦＩＢテーブルに格納する。
【０１２９】
アウトバウンド隣接ノードとしてノード３は、ノード３のＦＩＢテーブルに、コンテンツ名（例えば、コンテンツのプリフィクス）、送信経路（即ち、フェイス）のみならず、タイマー情報を保持する。タイマー情報は、格納されるコンテンツに起因する時間の長さを示す。
【０１３０】
タイマーは、一時的なキャッシュに用いられるルーティングテーブル（即ち、ＦＩＢ）のエントリリソースの効率的な使用のために与えられ、キャッシュされたコンテンツのライフタイムに基づいて設定される。
【０１３１】
ノードは、受信されたコンテンツ応答パケットに応答して、キャッシュされたコンテンツをポインティングするテーブル（即ち、ＦＩＢ）のエントリタイマーを通してコンテンツのライフタイムを調整する。
【０１３２】
例えば、ノード３は、ＬＲＵ（ｌｅａｓｔ  ｒｅｃｅｎｔｌｙ  ｕｓｅｄ）方式又はＬＦＵ（ｌｅａｓｔ  ｆｒｅｑｕｅｎｔｌｙ  ｕｓｅｄ）方式を用いて、キャッシュされたコンテンツのライフタイムを調整する。
【０１３３】
ノード３は、ＬＲＵ方式に基づいて最も長い間使用されていないコンテンツのライフタイムを減少させるか又はライフタイムを「０」に調整する。或いは、ノード３は、ＬＦＵ方式に基づいて最も使用頻度の低いコンテンツのライフタイムを減少させるか又はライフタイムを「０」に調整する。
【０１３４】
ノード３は、図９のコンテンツ応答パケット９５０と同様のコンテンツ応答パケット１０３０をノード２に送信する。
【０１３５】
キャッシュされたコンテンツを有するノードのアウトバウンド隣接ノードの動作は、次のようなコーディングで表わされる。
【０１３６】
0006352290.tif 000005
【０１３７】
一例として、キャッシュしないノードの中、キャッシュされたコンテンツを有するノードのアウトバウンド隣接ノードは、コンテンツでなくコンテンツ名を格納し、送信経路を指示する。従って、コンテンツ中心ネットワークでキャッシュリソースが節約される。
【０１３８】
また、コンテンツ名を格納する単一又は複数のノードは、コンテンツ所有者からの距離とキャッシュされたコンテンツを有するノードからの距離とを比較し、近い位置にコンテンツ要求メッセージを送信する。この例で、ホップカウント又はＲＴＴ（ｒｏｕｎｄ  ｔｒｉｐ  ｔｉｍｅ）が距離を比較するために用いられる。従って、コンテンツがキャッシュされるノードは、追加的なコントロールメッセージを要求しなくても、容易に認知されてルーティングを行うことができる。
【０１３９】
キャッシュされたコンテンツ名を管理するために、各ノードは、最初にフォワーディング情報ベース（ＦＩＢ）で該当するエントリのライフタイムを小さい値に設定し、その値はポリシーに従ってコンテンツがキャッシュされる全てのノードに同一に適用される。
【０１４０】
キャッシュされたコンテンツが削除された後であっても、コンテンツ名がノードに保持された場合、肯定エラー（ｆａｌｓｅ  ｐｏｓｉｔｉｖｅ）が発生する。
【０１４１】
従って、キャッシュされたコンテンツの追加的な要求メッセージがコンテンツ名を保持したノードに送信された場合、コンテンツがキャッシュされたノードは、コンテンツの人気度、ヒット率、及び使用率に基づいてコンテンツのライフタイムを再設定し、再設定情報を隣接ノードに提供する。誤検知発生の尤度は、ネットワーク上にキャッシュされたコンテンツに伴う情報を更新することで減少する。
【０１４２】
一例として、コンテンツ名を格納したノードは、コンテンツ所有者でなくキャッシュされたコンテンツを有するノードにコンテンツ要求メッセージを送信し、コンテンツ所有者からでなくキャッシュされたコンテンツを有するキャッシュノードからコンテンツ要求者がコンテンツを受信できるようにする。
【０１４３】
キャッシュされたコンテンツを有するノードは、キャッシュされたコンテンツの送信と共にキャッシュされたコンテンツの更新されたライフタイムを送信し、これによりコンテンツ認知（ｃｏｎｔｅｎｔ−ａｗａｒｅ）ルーティングの信頼性が向上する。
【０１４４】
コンテンツ中心ネットワークで、ノードは、キャッシュされたコンテンツとオリジナルコンテンツをテーブルで個別に管理する。従って、ノードは、必要なときにオリジナルコンテンツのコンテンツ要求メッセージを送信するか、或いは受信されたコンテンツ要求メッセージに応答してキャッシュされたコンテンツを用いた応答に失敗した時にオリジナルコンテンツを送信する。
【０１４５】
図１１は、コンテンツ中心ネットワークにおけるコンテンツ所有者１１００の一例を示すブロック図である。
【０１４６】
図１１を参照すると、コンテンツ所有者１１００は、決定部１１１０、送信部１１３０、閾値調整部１１５０、及びライフタイム調整部１１７０を含む。
【０１４７】
決定部１１１０は、コンテンツ所有者１１００のポリシーに基づいてコンテンツをキャッシュする候補ノードを決定するために用いられるキャッシュ収容値の閾値（ＣＣＶｔｈ）を決定する。
【０１４８】
コンテンツ所有者のポリシーは、コンテンツ名、コンテンツの人気度、コンテンツの重要度、及びコンテンツのヒット率のいずれか１つ又はその組み合せに基づいて決定される。
【０１４９】
キャッシュ収容値の閾値（ＣＣＶｔｈ）は、候補ノードの位置及び候補ノードの個数を決定するために用いられる。
【０１５０】
例えば、キャッシュ収容値の閾値（ＣＣＶｔｈ）が第１値を有する場合、全てのノードがコンテンツをキャッシュし、キャッシュ収容値の閾値（ＣＣＶｔｈ）が第２値を有する場合、全てのノードがコンテンツをキャッシュせず、キャッシュ収容値の閾値（ＣＣＶｔｈ）が第３値を有する場合、第３値よりも大きいキャッシュ収容値を有するノードがコンテンツをキャッシュする。
【０１５１】
送信部１１３０は、コンテンツ要求者のコンテンツ要求パケットに応答してコンテンツ及びキャッシュ収容値の閾値を含むコンテンツ応答パケットを送信する。
【０１５２】
コンテンツ応答パケットは、コンテンツ要求パケットに含まれる候補ノードとコンテンツ所有者との間のオリジナルネットワーク距離（ｏＮＤＶ）、コンテンツ応答パケットのダウンストリーム転送で減少する減少ネットワーク距離（ｄＮＤＶ）、コンテンツ要求パケット内の最大キャッシュ収容値（ＣＣＶ）、加重値、及びコンテンツのライフタイムのいずれか１つ又はその組み合せを含む。
【０１５３】
閾値調整部１１５０は、コンテンツ所有者１１００のポリシーの変更に応答してキャッシュ収容値の閾値（ＣＣＶｔｈ）を調整する。
【０１５４】
ライフタイム調整部１１７０は、コンテンツ所有者１１００のポリシーに基づいてコンテンツ応答パケットに含まれるコンテンツのライフタイムを調整する。
【０１５５】
図１２は、コンテンツ中心ネットワークにおけるノード１２００の一例を示すブロック図である。
【０１５６】
図１２を参照すると、ノード１２００は、算出部１２１０、比較部１２２０、及び決定部１２３０を含む。
【０１５７】
算出部１２１０は、ノード１２００のノード関連情報に基づいてコンテンツをキャッシュする候補ノードを識別するためのキャッシュ収容値（ＣＣＶ）を算出する。
【０１５８】
ノード関連情報は、ノードのキャッシュサイズ、ノードがリクエストするコンテンツの人気度、ノードのネットワーク中心性又はノード接続性、ノードの帯域幅、及びコンテンツ名のうちのいずれか１つ又はその組み合せを含む。
【０１５９】
比較部１２２０は、算出されたキャッシュ収容値とノード１２００によって転送されたコンテンツ要求パケットに含まれるキャッシュ収容値とを比較する。
【０１６０】
決定部１２３０は、比較した結果に基づいてノード１２００がコンテンツをキャッシュする候補ノードであるか否かを決定する。
【０１６１】
図１１及び図１２に示した決定部１１１０、送信部１１３０、閾値調整部１１５０、ライフタイム調整部１１７０、算出部１２１０、比較部１２２０、及び決定部１２３０は、図３（ａ）、（ｂ）、及び図４〜図１０を参照して上述した動作を実行し、１つ以上のハードウェア構成、１つ以上のソフトウェア構成、又は１つ以上のハードウェア及びソフトウェア構成の組み合せにより具現される。
【０１６２】
本発明の一実施形態による方法は、多様なコンピュータ手段を介して多様な処理を実行するプログラム命令の形態で具現され、コンピュータ読み取り可能な記録媒体に記録される。コンピュータ読み取り可能な媒体は、プログラム命令、データファイル、データ構造などのうちの１つ又はその組合せを含む。記録媒体に記録されるプログラム命令は、本発明の目的のために特別に設計されて構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知のものであり、使用可能なものであってもよい。コンピュータ読み取り可能な記録媒体の例としては、ハードディスク、フロッピー（登録商標）ディスク及び磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光記録媒体、光ディスクのような光磁気媒体、及びＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例には、コンパイラによって作られるような機械語コードだけでなく、インタープリタなどを用いてコンピュータによって実行される高級言語コードが含まれる。ハードウェア装置は、本発明の動作を行うために１つ以上のソフトウェアモジュールとして作動するように構成されてもよく、その逆も同様である。
【０１６３】
上述したように、本発明を限定された実施形態と図面によって説明したが、本発明は、上記の実施形態に限定されるものではなく、本発明が属する技術分野における通常の知識を有する者であれば、このような実施形態から多様な修正及び変形が可能である。
従って、本発明の範囲は、開示した実施形態に限定されるものではなく、特許請求の範囲だけではなく特許請求の範囲と均等なものなどによって定められるものである。
【符号の説明】
【０１６４】
１１０    コンテンツ要求者
１２０、１３０、１４０    中間ノード
１５０、３０１、１１００    コンテンツ所有者
２０１    ｆａｃｅ（０）
２０５    ｆａｃｅ（１）
３０３、３０５、３０７    ユーザ１〜３（Ｕｓｅｒ＿１〜３）
２１０    コンテンツストア（ｃｏｎｔｅｎｔｓ  ｓｔｏｒｅ：ＣＳ）
２３０    ペンディングインタレストテーブル（Ｐｅｎｄｉｎｇ  Ｉｎｔｅｒｅｓｔ  Ｔａｂｌｅ：ＰＩＴ）
２５０    フォワーディング情報ベース（Ｆｏｒｗａｒｄｉｎｇ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓｅ：ＦＩＢ）
３１３、３１５、３１７、１２００    ノード
８１０、８３０、８５０    コンテンツ要求パケット
９１０、９３０、９５０、１０１０、１０２０、１０３０    コンテンツ応答パケット
１１１０、１２３０    決定部
１１３０    送信部
１１５０    閾値調整部
１１７０    ライフタイム調整部
１２１０    算出部
１２２０    比較部
【図１】
0006352290.tif 000006
【図２】
0006352290.tif 000007
【図３】
0006352290.tif 000008
【図４】
0006352290.tif 000009
【図５】
0006352290.tif 000010
【図６】
0006352290.tif 000011
【図７】
0006352290.tif 000012
【図８】
0006352290.tif 000013
【図９】
0006352290.tif 000014
【図１０】
0006352290.tif 000015
【図１１】
0006352290.tif 000016
【図１２】
0006352290.tif 000017