(57)【要約】      （修正有）【課題】コンテンツ指向ネットワークにおけるコンテンツネゴシエーションを促進するシステムを提供する。【解決手段】システムは、コンテンツ生成デバイスによって、第１のインタレストに対応するパケットを受信する。インタレストの符号化名は、許容可能なタイプの要求されているコンテンツの複数の限定詞を示し、名前は、連続する名前構成要素を含む階層構造可変長識別子である。システムは、示されている複数の限定詞の１つを満足する第１のコンテンツオブジェクトを生成する。このコンテンツオブジェクトの名前は符号化名であり、コンテンツオブジェクトは、満足された限定詞に対応するデータおよびコンテンツタイプを示す。【選択図】図４
2017027593.tif 000002
【特許請求の範囲】
【請求項１】
パケットを転送するためのコンピュータシステムであって、前記システムは、
プロセッサと、
前記プロセッサによって実行されると前記プロセッサに方法を実施させる命令を記憶している記憶デバイスと
を備え、前記方法は、
コンテンツ生成デバイスによって、第１のインタレストに対応するパケットを受信することであって、前記インタレストの符号化名は、許容可能なタイプの要求されているコンテンツの複数の限定詞を示し、名前は、連続する名前構成要素を含む階層構造可変長識別子である、受信することと、
前記示されている複数の限定詞の１つを満足する第１のコンテンツオブジェクトを生成することであって、前記コンテンツオブジェクトの名前は符号化名であり、コンテンツオブジェクトは、前記満足された限定詞に対応するデータおよびコンテンツタイプを示す、生成することと
を含む、コンピュータシステム。
【請求項２】
前記方法は、
マルチパートコンテンツオブジェクトを示す第２のコンテンツオブジェクトを生成することであって、前記マルチパートコンテンツオブジェクトの名前は前記符号化名であり、前記マルチパートコンテンツオブジェクトは、複数のメンバーコンテンツオブジェクトを示し、メンバーコンテンツオブジェクトはコンテンツ固有名を示す、生成することと、
前記コンテンツ生成デバイスが別の限定詞を満足することができるという判定に応答して、前記他の限定詞を満足する対応するコンテンツオブジェクトを生成することと、
前記対応するコンテンツオブジェクトを、メンバーコンテンツオブジェクトとして前記マルチパートコンテンツオブジェクトに追加することと
をさらに含む、請求項１に記載のコンピュータシステム。
【請求項３】
前記方法は、
認証情報に基づいて前記対応するコンテンツオブジェクトと関連付けられるデータを暗号化することと、
前記認証情報を前記対応するコンテンツオブジェクトの先頭に追加することと
をさらに含む、請求項２に記載のコンピュータシステム。
【請求項４】
前記方法は、
認証情報に基づいて前記対応するコンテンツオブジェクトと関連付けられるデータを暗号化することと、
前記暗号化データを前記認証情報に置き換えることと
をさらに含む、請求項２に記載のコンピュータシステム。
【請求項５】
パケットを転送するためのコンピュータシステムであって、前記システムは、
プロセッサと、
前記プロセッサによって実行されると前記プロセッサに方法を実施させる命令を記憶している記憶デバイスと
を備え、前記方法は、
転送デバイスによって、第１のインタレストに対応するパケットを受信することであって、前記インタレストの符号化名は、許容可能なタイプの要求されているコンテンツの複数の限定詞を示し、名前は、連続する名前構成要素を含む階層構造可変長識別子である、受信することと、
前記符号化名に基づいて前記第１のインタレストのペンディングインタレストテーブル内にエントリを追加することと、
前記示されている複数の限定詞の１つを満足する第１のコンテンツオブジェクトに対応するパケットを受信することであって、前記第１のコンテンツオブジェクトの名前は符号化名であり、コンテンツオブジェクトは、前記満足された限定詞に対応するデータおよびコンテンツタイプを示す、受信することと
を含む、コンピュータシステム。
【請求項６】
前記方法は、
前記第１のコンテンツオブジェクトおよび前記転送デバイスのアプリケーションロジックに基づいて第２のインタレストを生成することと、
前記第２のインタレストのペンディングインタレストテーブル内にエントリを追加することと、
前記第２のインタレストをコンテンツ生成デバイスに送信することと
をさらに含む、請求項５に記載のコンピュータシステム。
【請求項７】
前記方法は、
前記第２のインタレストに一致する第２のコンテンツオブジェクトに対応するパケットを受信することと、
前記第２のコンテンツオブジェクトをキャッシュ内に記憶することと
をさらに含む、請求項６に記載のコンピュータシステム。
【請求項８】
前記方法は、
前記第１のコンテンツオブジェクトがマルチパートコンテンツオブジェクトを示すという判定に応答して、前記マルチパートコンテンツオブジェクトを１つまたは複数のメンバーコンテンツオブジェクトに分割することであって、メンバーコンテンツオブジェクトは、コンテンツ固有名を含む、分割することと、
前記符号化名に基づいて前記マルチパートコンテンツオブジェクトをキャッシュ内に記憶することと、
前記対応するコンテンツ固有名に基づいて前記１つまたは複数のメンバーコンテンツオブジェクトを前記キャッシュ内に記憶することと
をさらに含む、請求項５に記載のコンピュータシステム。
【請求項９】
パケットを転送するためのコンピュータ実装方法であって、前記方法は、
コンテンツ生成デバイスによって、第１のインタレストに対応するパケットを受信することであって、前記インタレストの符号化名は、許容可能なタイプの要求されているコンテンツの複数の限定詞を示し、名前は、連続する名前構成要素を含む階層構造可変長識別子である、受信することと、
前記示されている複数の限定詞の１つを満足する第１のコンテンツオブジェクトを生成することであって、前記コンテンツオブジェクトの名前は符号化名であり、コンテンツオブジェクトは、前記満足された限定詞に対応するデータおよびコンテンツタイプを示す、生成すること
を含む、コンピュータ実装方法。
【請求項１０】
マルチパートコンテンツオブジェクトを示す第２のコンテンツオブジェクトを生成することであって、前記マルチパートコンテンツオブジェクトの名前は前記符号化名であり、前記マルチパートコンテンツオブジェクトは、複数のメンバーコンテンツオブジェクトを示し、メンバーコンテンツオブジェクトはコンテンツ固有名を示す、生成することと、
前記コンテンツ生成デバイスが別の限定詞を満足することができるという判定に応答して、前記他の限定詞を満足する対応するコンテンツオブジェクトを生成することと、
前記対応するコンテンツオブジェクトを、メンバーコンテンツオブジェクトとして前記マルチパートコンテンツオブジェクトに追加することと
をさらに含む、請求項９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は概してデジタルコンテンツの配信に関する。より具体的には、本開示は、ＣＣＮ名における符号化許容可能応答に基づいてコンテンツ指向ネットワーク（ＣＣＮ）内でコンテンツをネゴシエートするためのシステムおよび方法に関する。
【背景技術】
【０００２】
インターネットおよび電子商取引の広がりによって、膨大な量のデジタルコンテンツが生成され続けている。そのようなデジタルコンテンツへのアクセスおよびその処理を容易にするために、コンテンツ指向ネットワーク（ＣＣＮ）アーキテクチャが設計されている。ＣＣＮは、様々なコンテンツアイテムのインタレストパケットを送信し、引き換えにコンテンツオブジェクトパケットを受信することによって互いに通信するネットワーククライアント、転送器（たとえば、ルータ）、コンテンツ生成器のようなエンティティまたはノードを含む。ＣＣＮインタレストおよびコンテンツオブジェクトは、一般的には階層構造可変長識別子（ＨＳＶＬＩ）であるそれらの固有名によって識別される。ＨＳＶＬＩは、最も一般的なレベルから最も特定的なレベルへと順序付けされた連続する複数の名前構成要素を含むことができる。インタレストパケットが、コンテンツ要求ノードからネットワークを通じてコンテンツ生成ノードへとルーティングされると、各中間ＣＣＮルータが、そのインタレストに対応するそのペンディングインタレストテーブル（ＰＩＴ）内にエントリを追加し、インタレストを次のＣＣＮルータに転送する。一致するコンテンツオブジェクトパケットがコンテンツ生成ノードから要求ノードに返信されるとき、当該パケットはインタレストの逆の経路に従う。各中間ＣＣＮルータは、対応するＰＩＴエントリ内にリストされている要求側インターフェースに沿ってコンテンツオブジェクトを転送し、その後、ＰＩＴエントリを削除する。これは、インタレストが実現されたことを示す。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
デジタルコンテンツの量がますます増えていくことで、コンテンツ要求ノードまたはクライアントが限定詞を有する応答を指定することを可能にするなど、コンテンツに対して柔軟にアクセスすることに対する需要も生まれている。ハイパーテキスト転送プロトコル（ＨＴＴＰ）におけるコンテンツネゴシエーションは、この柔軟なアクセスを可能にする１つの技法である。ＨＴＴＰプロトコルは、クライアントが、「ＧＥＴ（取得）」要求をＨＴＴＰサーバに送信し、特定の言語または符号化における文書のような特定のリソースセットを得るために追加のメタデータを要求内に含めることを可能にする。ＣＣＮアーキテクチャの発展に伴って、コンテンツ要求ノードまたはクライアントに同様のコンテンツネゴシエーション技法を提供することが必要とされている。
【課題を解決するための手段】
【０００４】
一実施形態は、コンテンツ指向ネットワークにおけるコンテンツネゴシエーションを促進するシステムを提供する。動作中、システムは、コンテンツ生成デバイスによって、第１のインタレストに対応するパケットを受信し、インタレストの符号化名は、許容可能なタイプの要求されているコンテンツの複数の限定詞を示し、名前は、連続する名前構成要素を含む階層構造可変長識別子である。システムは、示されている複数の限定詞の１つを満足する第１のコンテンツオブジェクトを生成し、このコンテンツオブジェクトの名前は符号化名であり、コンテンツオブジェクトは、満足された限定詞に対応するデータおよびコンテンツタイプを示す。
【０００５】
いくつかの実施形態において、システムは、マルチパートコンテンツオブジェクトを示す第２のコンテンツオブジェクトを生成し、マルチパートコンテンツオブジェクトの名前は符号化名であり、マルチパートコンテンツオブジェクトは、複数のメンバーコンテンツオブジェクトを示し、メンバーコンテンツオブジェクトはコンテンツ固有名を示す。コンテンツ生成デバイスが別の限定詞を満足することができるという判定に応答して、システムは、その他の限定詞を満足する対応するコンテンツオブジェクトを生成する。システムはまた、その対応するコンテンツオブジェクトを、メンバーコンテンツオブジェクトとしてマルチパートコンテンツオブジェクトに追加する。
【０００６】
いくつかの実施形態において、システムは、認証情報に基づいて対応するコンテンツオブジェクトと関連付けられるデータを暗号化し、認証情報を対応するコンテンツオブジェクトの先頭に追加する。
【０００７】
いくつかの実施形態において、システムは、認証情報に基づいて対応するコンテンツオブジェクトと関連付けられるデータを暗号化し、その暗号化データを認証情報と置き換える。
【０００８】
いくつかの実施形態において、第１のコンテンツオブジェクトは、第１のコンテンツオブジェクトの認証情報を示す第２のコンテンツオブジェクトをさらに示す。
【０００９】
いくつかの実施形態において、第１のコンテンツオブジェクトは、コンテンツ固有名をさらに示す。
【００１０】
いくつかの実施形態において、システムは、第１のインタレストおよびコンテンツ生成デバイスのアプリケーションロジックに基づいて要求されていないコンテンツオブジェクトを生成する。システムはその後、第１のインタレストと関連付けられる要求デバイスに、生成された要求されていないコンテンツオブジェクトを送信する。
【００１１】
いくつかの実施形態において、システムは、示されている限定詞に基づいてコンテンツに対する新たなインタレストにおいて使用されるべき情報およびコンテンツ固有名を示す第３のコンテンツオブジェクトを生成し、第３のコンテンツオブジェクトの名前は符号化名である。システムは、第２のインタレストに対応するパケットを受信し、第２のインタレストの名前は、第３のコンテンツオブジェクトにおいて示されるコンテンツ固有名である。システムはまた、第２のインタレストを満足する第４のコンテンツオブジェクトをも生成し、第４のコンテンツオブジェクトの名前は、第２のインタレストのコンテンツ固有名である。
【００１２】
本発明の別の実施形態において、システムは、転送デバイスによって、第１のインタレストに対応するパケットを受信し、インタレストの符号化名は、許容可能なタイプの要求されているコンテンツの複数の限定詞を示し、名前は、連続する名前構成要素を含む階層構造可変長識別子である。システムは、符号化名に基づいて第１のインタレストのペンディングインタレストテーブル内にエントリを追加する。その後、システムは、示されている複数の限定詞の１つを満足する第１のコンテンツオブジェクトに対応するパケットを受信し、第１のコンテンツオブジェクトの名前は符号化名であり、コンテンツオブジェクトは、満足された限定詞に対応するデータおよびコンテンツタイプを示す。
【００１３】
この実施形態に対する変形形態において、システムは、第１のコンテンツオブジェクトおよび転送デバイスのアプリケーションロジックに基づいて第２のインタレストを生成する。システムは、第２のインタレストのペンディングインタレストテーブル内にエントリを追加し、第２のインタレストをコンテンツ生成デバイスに送信する。
【００１４】
いくつかの実施形態において、システムは、第２のインタレストに一致する第２のコンテンツオブジェクトに対応するパケットを受信する。システムは、第２のコンテンツオブジェクトをキャッシュ内に記憶する。
【００１５】
いくつかの実施形態において、第１のコンテンツオブジェクトがマルチパートコンテンツオブジェクトを示すという判定に応答して、システムは、マルチパートコンテンツオブジェクトを１つまたは複数のメンバーコンテンツオブジェクトに分割し、メンバーコンテンツオブジェクトは、コンテンツ固有名を含む。システムは、符号化名に基づいてマルチパートコンテンツオブジェクトをキャッシュ内に記憶する。システムはまた、対応するコンテンツ固有名に基づいて１つまたは複数のメンバーコンテンツオブジェクトをもキャッシュ内に記憶する。
【００１６】
いくつかの実施形態において、システムは、符号化名、および、第１のインタレストと関連付けられる対応するインターフェースのペンディングインタレストテーブル内のエントリを識別する。システムは、識別されたインターフェースを介してマルチパートコンテンツオブジェクトを送信する。システムはまた、識別されたエントリをペンディングインタレストテーブルから除去する。
【図面の簡単な説明】
【００１７】
【図１Ａ】図１Ａは、本発明の一実施形態による、抽象化方法に基づいてＣＣＮにおけるコンテンツネゴシエーションを促進する例示的なネットワークを示す図である。
【図１Ｂ】図１Ｂは、本発明の一実施形態による、過剰供給方法に基づいてＣＣＮにおけるコンテンツネゴシエーションを促進する例示的なネットワークを示す図である。
【図１Ｃ】図１Ｃは、本発明の一実施形態による、リダイレクト方法に基づいてＣＣＮにおけるコンテンツネゴシエーションを促進する例示的なネットワークを示す図である。
【図２Ａ】図２Ａは、本発明の一実施形態による、ＣＣＮにおけるコンテンツネゴシエーションを促進するためのコンテンツ生成デバイスによる方法を示す流れ図である。
【図２Ｂ】図２Ｂは、本発明の一実施形態による、過剰供給方法に基づいてＣＣＮにおけるコンテンツネゴシエーションを促進するためのコンテンツ生成デバイスによる方法を示す流れ図である。
【図２Ｃ】図２Ｃは、本発明の一実施形態による、リダイレクト方法に基づいてＣＣＮにおけるコンテンツネゴシエーションを促進するためのコンテンツ生成デバイスによる方法を示す流れ図である。
【図３】図３は、本発明の一実施形態による、ＣＣＮにおけるコンテンツネゴシエーションを促進するための転送デバイスによる方法を示す流れ図である。
【図４】図４は、本発明の一実施形態による、ＣＣＮにおけるコンテンツネゴシエーション中のアクセス制御を可能にするためのコンテンツ生成デバイスによる方法を示す流れ図である。
【図５Ａ】図５Ａは、本発明の一実施形態による、ＣＣＮにおけるコンテンツネゴシエーションを促進する例示的な装置を示す図である。
【図５Ｂ】図５Ｂは、本発明の一実施形態による、ＣＣＮにおけるコンテンツネゴシエーションを促進する例示的な装置を示す図である。
【図６Ａ】図６Ａは、本発明の一実施形態による、ＣＣＮにおけるコンテンツネゴシエーションを促進する例示的なコンピュータおよび通信システムを示す図である。
【図６Ｂ】図６Ｂは、本発明の一実施形態による、ＣＣＮにおけるコンテンツネゴシエーションを促進する例示的なコンピュータおよび通信システムを示す図である。
【発明を実施するための形態】
【００１８】
図面において、同様の参照符号は同じ図面要素を指す。
【００１９】
以下の説明は、任意の当業者が、本実施形態を作成および使用することを可能にするために提示され、特定の用途およびその要件の文脈において提供されている。開示される実施形態の様々な改変が当業者には容易に諒解され、本明細書において定義されている一般原理は、本発明の精神および範囲から逸脱することなく、他の実施形態および用途に適用することができる。したがって、本発明は、示されている実施形態には限定されず、本明細書において開示されている原理および特徴と一致する最も広い範囲を与えられるべきである。
【００２０】
本発明の実施形態は、コンテンツ指向ネットワーク（ＣＣＮ）におけるコンテンツネゴシエーションを促進するシステムを提供する。ＨＴＴＰに基づくもののような、従来のコンテンツネゴシエーション方法においては、クライアントは、要求されているコンテンツのメタデータまたは限定詞、たとえば、特定の言語または符号化タイプを含むことができる「ＧＥＴ」要求を送信することができる。ＣＣＮにおいて、すべてのコンテンツ（コンテンツに対するインタレストまたは要求を含む）は、「ｐｈｏｔｏ．ｊｐｇ」のような名前によって識別することができる。しかしながら、ＣＣＮ名は一般的には、そのコンテンツ、符号化、またはさらにはそのデータが、たとえば、写真であるか否かに関する情報を一切含まない。それゆえ、ＪＰＧを要求するがＧＩＦを受け入れることができるクライアントは、この限定情報を標準的なＣＣＮインタレスト内に含めることができない。加えて、生成器は、中間ルータによってキャッシュすることができるＪＰＧを生成することができる。生成器はその後、ＧＩＦフォーマットに移行することができ、その結果として、ＪＰＧのキャッシュされたバージョンを有しない中間ノードを通過する、ＪＰＧに対するクライアントのインタレストがもたらされ得る。したがって、生成器のフォーマット変更は、クライアントを、以前に生成されたＪＰＧを生成器から取り出す信頼可能な手段がないままにし得る。
【００２１】
本発明のシステムは、限定詞を「／ｎａｍｅ＿ｃｏｍｐｏｎｅｎｔ｛ｔｙｐｅｓ｝」のようなＣＣＮ名に符号化することによってこれらのコンテンツネゴシエーション問題に対処し、「／ｎａｍｅ＿ｃｏｍｐｏｎｅｎｔ」は、要求されている文書名の始まりとすることができ、「ｔｙｐｅｓ」は、要求されているコンテンツの許容可能な符号化のための限定詞のリストとすることができる。たとえば、「／ｐｈｏｔｏ｛ｊｐｇ｜ｇｉｆ｝」の名前を有するＣＣＮインタレストは、ＪＰＧまたはＧＩＦのいずれかのフォーマットに符号化されなければならないデータを有する「／ｐｈｏｔｏ」というタイトルの文書に対する要求である。符号化名に含むことができる限定詞の数に制限はないことに留意されたい。
【００２２】
インタレストを受信するコンテンツ生成器は、３つの方法に基づいてコンテンツを返信することができる。第１の方法、すなわち、抽象化によるコンテンツネゴシエーションにおいて、生成器は、限定詞の少なくとも１つ、たとえば、ＪＰＧまたはＧＩＦのいずれかを満足する応答を返信することができる。要求はＪＰＧまたはＧＩＦのいずれかに対するものであったため、いずれかのフォーマットが応答を満足する。応答コンテンツオブジェクトの名前は、特定的に符号化されているコンテンツオブジェクトに対応するデータを有する符号化名「／ｐｈｏｔｏ｛ｊｐｇ｜ｇｉｆ｝」である。第１の生成器がＪＰＧ符号化コンテンツオブジェクトに応答することができ、第２の生成器がＧＩＦ符号化コンテンツオブジェクトに応答することができる。この結果として、中間転送器またはルータが、同じ符号化名および異なるデータを有する２つのコンテンツオブジェクトをキャッシュすることができる。これらのコンテンツオブジェクトのいずれかが、「／ｐｈｏｔｏ｛ｊｐｇ｜ｇｉｆ｝」に対する後続の要求を満足することができる。
【００２３】
第２の方法、すなわち、過剰供給によるコンテンツネゴシエーションにおいて、生成器は、可能な限り多くのコンテンツオブジェクト、たとえば、ＪＰＧとＧＩＦの両方を含むことができる。生成器は、符号化名を有するマルチパートコンテンツオブジェクトを作成することができ、ＪＰＧとＧＩＦの両方の符号化データを、メンバーコンテンツオブジェクトとしてマルチパートコンテンツオブジェクト内に含めることができる。このとき、クライアントは、受信されたマルチパートコンテンツオブジェクトを解析または分割してそのメンバーコンテンツオブジェクトにする役割を担う。
【００２４】
第３の方法、すなわち、リダイレクトによるコンテンツネゴシエーションにおいて、生成器は、符号化されていない名前およびメタデータのリストを含むコンテンツオブジェクトを、コンテンツに対する新たな要求において使用するために戻すことができる。転送器は、リストを再検討し、いずれの名前を特定の符号化またはコンテンツタイプに使用すべきかを決定し、特定の名前（たとえば、符号化されていない名前）を有する新たなインタレストを送信することができる。
【００２５】
加えて、生成器および転送器の両方が、最適化動作を実施することができる。たとえば、生成器のアプリケーションロジックに基づいて、生成器は、符号化名を有するインタレストの受信に応答して追加のまたは関連するコンテンツをプッシュすることによってネットワークを「プレシード」することができる。同様に、転送器のアプリケーションロジックに基づいて、転送器は、符号化名を有するインタレストまたはコンテンツの受信に応答してコンテンツに対する新たなインタレストを発行することによって、ネットワークのコンテンツを「プリフェッチ」することができる。転送器はまた、各メンバーコンテンツオブジェクトをキャッシュし、将来の要求のために利用可能にすることができるように、マルチパートコンテンツオブジェクトを解析または分割することもできる。
【００２６】
ＣＣＮにおいて、各コンテンツ片は個々に名前を付けられ、個々のデータ片は、同じデータの他のバージョンまたは他のソースからのデータのような任意の他のデータ片からそのデータを区別する固有名に結びつけられる。この固有名は、ネットワークデバイスが、固有名を示す要求またはインタレストを広めることによってデータを要求することを可能にし、データの記憶場所、ネットワーク位置、アプリケーション、および搬送手段とは無関係にデータを得ることができる。ＣＣＮアーキテクチャを説明するために以下の用語を使用する。
【００２７】
コンテンツオブジェクト：固有名に結びつけられる単一の名前付きデータ片。コンテンツオブジェクトは「持続性」であり、これは、コンテンツオブジェクトがコンピューティングデバイス内を、または、複数の異なるコンピューティングデバイスにわたって移動することができるが、変化はしないことを意味する。コンテンツオブジェクトの任意の構成要素が変化する場合、変更を行ったエンティティが、更新されたコンテンツを含む新たなコンテンツオブジェクトを生成し、新たなコンテンツオブジェクトを新たな固有名に結びつける。
【００２８】
固有名：ＣＣＮにおける名前は一般的に位置独立であり、コンテンツオブジェクトを一意に識別する。データ転送デバイスは、この名前または名前プレフィックスを使用して、コンテンツオブジェクトのネットワークアドレスまたは物理的位置にかかわりなく、コンテンツオブジェクトを生成または記憶するネットワークノードに向けてパケットを転送することができる。いくつかの実施形態において、名前は、階層構造可変長識別子（ＨＳＶＬＩ）であってもよい。ＨＳＶＬＩは、様々な方法で構造化することができるいくつかの階層構成要素に分割することができる。たとえば、個々の名前構成要素ｐａｒｃ、ｈｏｍｅ、ｃｃｎ、およびｔｅｓｔ．ｔｘｔは、左にいくほど上位プレフィックスとなるように構造化して、名前「／ｐａｒｃ／ｈｏｍｅ／ｃｃｎ／ｔｅｓｔ．ｔｘｔ」を形成することができる。したがって、名前「／ｐａｒｃ／ｈｏｍｅ／ｃｃｎ」は、「／ｐａｒｃ／ｈｏｍｅ／ｃｃｎ／ｔｅｓｔ．ｔｘｔ」の「親」または「プレフィックス」とすることができる。追加の構成要素を使用して、協同文書のようなコンテンツアイテムの複数の異なるバージョン間で区別を行うことができる。
【００２９】
いくつかの実施形態において、名前は、コンテンツオブジェクトのデータ（たとえば、チェックサム値）および／またはコンテンツオブジェクトの名前の要素から導き出されるハッシュ値のような非階層識別子を含むことができる。ハッシュベースの名前の説明は、米国特許出願第１３／８４７，８１４号明細書に記載されている。名前は、フラットなラベルとすることもできる。以降、「名前」は、階層型の名前または名前プレフィックス、フラットな名前、固定長の名前、任意長の名前、またはラベル（たとえば、マルチプロトコルラベルスイッチング（ＭＰＬＳ）ラベル）のような、名前データネットワーク内のデータ片の任意の名前を指すのに使用される。
【００３０】
インタレスト：データ片を求める要求を示し、そのデータ片の名前（または名前プレフィックス）を含むパケット。データ消費者は、情報指向ネットワークにわたって要求またはインタレストを広めることができ、この要求またはインタレストは、ＣＣＮルータが要求またはインタレストを満たすために、記憶デバイス（たとえば、キャッシュサーバ）、または、要求されているデータを提供することができるデータ生成者に向けて伝搬することができる。
【００３１】
本明細書に開示する方法は、ＣＣＮネットワークには限定されず、他のアーキテクチャにも同様に適用可能である。ＣＣＮアーキテクチャの説明は、米国特許出願第１２／３３８，１７５号明細書に記載されている。
【００３２】
図１Ａは、本発明の一実施形態による、抽象化方法に基づいてＣＣＮにおけるコンテンツネゴシエーションを促進する例示的なネットワーク１００を示す。ネットワーク１００は、コンテンツ要求デバイス１１６および１２０と、コンテンツ生成デバイス１１８および１２２と、ノード１０２、１０４、１０６、１０８、１１０、１１２、および１１４にあるルータまたは他の転送デバイスとを含むことができる。ノードは、コンピュータシステム、ユーザを表すエンドポイント、および／または、インタレストを生成するかもしくはコンテンツを発することができるデバイスであってもよい。ノードはまた、エッジルータ（たとえば、ＣＣＮノード１０２、１０４、１１２、および１１４）またはコアルータ（たとえば、中間ＣＣＮルータ１０６〜１１０）であってもよい。
【００３３】
動作中、第１のクライアント（たとえば、デバイス１１６）が、「／ｐｈｏｔｏ｛ｊｐｇ｜ｇｉｆ｝」の符号化名を有するインタレスト１３０を生成し、インタレスト１３０をノード１０２に送信することができる。ノード１０２が、インタレスト１３０のエントリをそのペンディングインタレストテーブル（ＰＩＴ）内に追加し、インタレスト１３０をノード１１０および１１２に送信し、ノード１１０および１１２の各々は同様の動作を実施する。ノード１１２は、インタレスト１３０を第１のコンテンツ生成器（たとえば、デバイス１１８）に送信することができる。生成器１１８は、抽象化のコンテンツネゴシエーション方法を決定し、符号化名、「ｐｈｏｔｏ／ｊｐｇ」のコンテンツタイプ、および対応するＪＰＧ符号化データを有するコンテンツオブジェクト１３２を返信することによって、インタレスト１３０を満足することができる。コンテンツオブジェクト１３２はインタレスト１３０とは逆の経路を進行し（たとえば、ノード１１２、１１０、および１０２を介してクライアント１１６に戻る）、各中間ノードは、符号化名およびＪＰＧ符号化データを有するコンテンツオブジェクト１３２をキャッシュする。
【００３４】
符号化名は同じであるがデータ（たとえば、符号化またはデータ型）は異なるコンテンツの複数のコピーがネットワーク上に存在し得る。たとえば、第２のクライアント（たとえば、デバイス１２０）が、インタレスト１３０と同じ名前（たとえば、「／ｐｈｏｔｏ｛ｊｐｇ｜ｇｉｆ｝」）を有するインタレスト１３４を生成し、インタレスト１３４をノード１０４に送信し得る。ノード１０４は、インタレスト１３４のエントリをそのＰＩＴ内に追加し、インタレスト１３４をノード１０２に送信する。符号化名およびＪＰＧ符号化データを有する要求されているコンテンツのキャッシュされたコピーを有するノード１０２は、インタレスト１３４を満足し、応答コンテンツオブジェクト１３２を、ノード１０４を介してクライアント１２０に返すことができる。代替的に、インタレスト１３４を受信すると、ノード１０４は、異なる経路に沿ってノード１０６にインタレスト１３４を送信してもよい。ノード１０６は、インタレスト１３４をそのＰＩＴにキャッシュし、インタレスト１３４をノード１１４に送信することができ、ノード１１４も再びインタレスト１３４をそのＰＩＴにキャッシュし、インタレスト１３４を第２のコンテンツ生成器（たとえば、デバイス１２２）に送信する。生成器１２２は、抽象化のコンテンツネゴシエーション方法を決定し、符号化名、「ｐｈｏｔｏ／ｇｉｆ」のコンテンツタイプ、およびＧＩＦ符号化データを有するコンテンツオブジェクト１３６を返信することによって、インタレスト１３４を満足することができる。コンテンツオブジェクト１３６はインタレスト１３４とは逆の経路を進行し（たとえば、ノード１１４、１０６、および１０４を介してクライアント１２０に戻る）、各中間ノードは、符号化名およびＧＩＦ符号化データを有するコンテンツオブジェクト１３６をキャッシュする。このように、符号化名は同じであるがデータは異なるコンテンツの複数のコピーがネットワーク１００上に存在し得る。
【００３５】
図１Ｂは、本発明の一実施形態による、過剰供給方法に基づいてＣＣＮにおけるコンテンツネゴシエーションを促進する例示的なネットワーク１６０を示す。動作中、図１Ａに示すデータフローと同様に、第１のクライアント（たとえば、デバイス１１６）が、「／ｐｈｏｔｏ｛ｊｐｇ｜ｇｉｆ｝」の符号化名を有するインタレスト１３０を生成し、インタレスト１３０をノード１０２、１１０、および１１２を介して生成器１１８に送信し、これらのノードの各々がインタレスト１３０のエントリをそのＰＩＴ内に追加することができる。ノード１１２はインタレスト１３０を生成器１１８に送信することができ、生成器１１８は、過剰供給のコンテンツネゴシエーション方法を決定することができる。生成器１１８は、符号化名、「ｍｕｌｔｉｐａｒｔ／ｍｉｘｅｄ」のコンテンツタイプ、およびＪＰＧおよびＧＩＦデータで符号化されている対応するメンバーコンテンツオブジェクトを有するマルチパートコンテンツオブジェクト１４０を返信することによってインタレスト１３０を満足することができる。各メンバーコンテンツオブジェクトは、コンテンツ名（たとえば、「／ｐｈｏｔｏ．ｊｐｇ」）、コンテンツタイプ（たとえば、「ｉｍａｇｅ／ｊｐｇ」）、および対応するデータ（たとえば、「＜ＪＰＧ  ｄａｔａ＞」）を含むことができる。マルチパートコンテンツオブジェクト１４０はインタレスト１３０とは逆の経路を進行し（たとえば、ノード１１２、１１０、および１０２を介してクライアント１１６に戻る）、各中間ノードは、符号化名および異なる符号化を有するメンバーコンテンツオブジェクトを有するマルチパートコンテンツオブジェクト１４０をキャッシュする。マルチパートコンテンツオブジェクト１４０を受信すると、中間ＣＣＮルータまたは転送器（たとえば、ノード１１０）は、マルチパートコンテンツオブジェクト１４０を解析または分割してそのメンバーコンテンツオブジェクトにし、将来の要求を満足するために、メンバーコンテンツオブジェクトをそのキャッシュ内に記憶することができる。同様に、クライアント１１６は、マルチパートコンテンツオブジェクト１４０を受信してそのメンバーコンテンツオブジェクトに分割することができ、そのメンバーコンテンツオブジェクトの各々は、ＧＩＦまたはＪＰＧデータに対する元のインタレスト要求（たとえば、インタレスト１３０）を満足する。
【００３６】
図１Ｃは、本発明の一実施形態による、リダイレクト方法に基づいてＣＣＮにおけるコンテンツネゴシエーションを促進する例示的なネットワーク１９０を示す。動作中、図１Ａに示すデータフローと同様に、クライアント１１６は、「／ｐｈｏｔｏ｛ｊｐｇ｜ｇｉｆ｝」の名前を有するインタレスト１３０を生成し、ノード１０２、１１０、および１１２を介して生成器１１８にインタレスト１３０を送信する。生成器１１８は、リダイレクトのコンテンツネゴシエーション方法を決定し、符号化名を有するコンテンツオブジェクト１３８を返信することによって、インタレスト１３０を満足することができる。コンテンツオブジェクト１３８は、新たなインタレストを生成するために使用されるべき特定のコンテンツ名および対応するメタデータのリストを示すことができる。たとえば、コンテンツオブジェクト１３８は、コンテンツタイプフィールド１４２およびコンテンツ名フィールド１４４を含むことができる。コンテンツオブジェクト１３８内の１つのエントリは、タイプフィールド１４２の「ｉｍａｇｅ／ｇｉｆ」の値および名前フィールド１４４の「／ｐｈｏｔｏ．ｇｉｆ」の値を含むことができる。コンテンツオブジェクト１３８はインタレスト１３０とは逆の経路を進行し（たとえば、ノード１１２、１１０、および１０２を介してクライアント１１６に戻る）、各中間ノードは、符号化名ならびにタイプおよび名前情報のリストを有するコンテンツオブジェクト１３８をキャッシュする。コンテンツオブジェクト１３８を受信すると、クライアント１１６は、所望のコンテンツタイプに基づいて新たなインタレストを生成および送信することができる。たとえば、クライアント１１６は、「／ｐｈｏｔｏ．ｊｐｇ」の名前を有するインタレスト１５０を生成し、インタレスト１５０を、ネットワークを通じノード１０２、１１０、および１１２を介して生成器１１８に送信することができる。生成器１１８は、「／ｐｈｏｔｏ．ｊｐｇ」の名前（たとえば、従来の符号化されていないＣＣＮ名）を有するコンテンツオブジェクト１５８によってインタレスト１５０を満足し、逆の経路を介してコンテンツオブジェクト１５８をクライアント１１６に返すことができる。代替的に、インタレスト１５０を受信し、名前「／ｐｈｏｔｏ．ｊｐｇ」に一致するコンテンツをそのキャッシュ内に含む任意の中間ノードまたは転送器がインタレスト１５０を満足してもよい。
【００３７】
図２Ａは、本発明の一実施形態による、ＣＣＮにおけるコンテンツネゴシエーションを促進するためのコンテンツ生成デバイスによる方法を示す流れ図２００である。動作中、コンテンツ生成デバイス（たとえば、コンテンツ生成器）は、第１のインタレストに対応するパケットを受信し、インタレストの符号化名は、要求されているコンテンツの許容可能なタイプに関する複数の限定詞を含む（動作２０２）。生成器は、限定詞の少なくとも１つを満足することができるコンテンツを有するか否かを判定する（判定２０４）。そうでない場合、動作は戻る。そうである場合、生成器はコンテンツネゴシエーション方法を決定する（動作２０６）。生成器は、過剰供給（動作２０８）、抽象化（動作２１０）、またはリダイレクト（動作２１２）のコンテンツネゴシエーション方法を選択することができる。過剰供給について、動作は図２ＢのラベルＡに記載されているように継続する。リダイレクトについて、動作は図２ＣのラベルＢに記載されているように継続する。抽象化について、生成器は、示されている限定詞の１つを満足する第１のコンテンツオブジェクトを生成し、コンテンツオブジェクトの名前は符号化名である（動作２１４）。第１のコンテンツオブジェクトは、満足される限定詞に対応するデータおよびコンテンツタイプを示すことができる。生成器は、そのＰＩＴ内に保持されている情報に基づいて、要求側クライアントに第１のコンテンツオブジェクトを返信することができる。
【００３８】
その後、３つすべてのコンテンツネゴシエーション方法に関する動作が実施されると、生成器は、任意選択的に最適化動作を実施することができる（動作２１６）。たとえば、生成器は、第１のコンテンツオブジェクトおよび生成器のアプリケーションロジックに基づいて、要求されていないコンテンツオブジェクトを生成することができる。生成器はその後、第１のインタレストと関連付けられるデバイスに、要求されていないコンテンツオブジェクトを送信することができる。このインテリジェントな「プレシード」動作は、生成器が、受信されたインタレストに基づいて、コンテンツに対する後続の要求を予測し、予測されるコンテンツをクライアントにプッシュ（し、同時に、ネットワーク内の中間ルータにおいてコンテンツのキャッシュコピーを作成）することを可能にする。
【００３９】
図２Ｂは、本発明の一実施形態による、過剰供給方法に基づいてＣＣＮにおけるコンテンツネゴシエーションを促進するためのコンテンツ生成デバイスによる方法を示す流れ図２３０を提示する。動作中、符号化名を有するインタレストを受信すると、生成器は、マルチパートコンテンツオブジェクトを示す第２のコンテンツオブジェクトを生成し、マルチパートコンテンツオブジェクトの名前は符号化名である（動作２３２）。マルチパートコンテンツオブジェクトはメンバーコンテンツオブジェクトを示し、メンバーコンテンツオブジェクトはコンテンツ固有名を示す。生成器は、符号化名においてリストされている限定詞のいずれかを満足することができるか否かを判定する（判定２３４）。できない場合、動作は戻る。できる場合、生成器は、限定詞を満足する対応するコンテンツオブジェクトを生成する（動作２３６）。その後、生成器は、その対応するコンテンツオブジェクトを、メンバーコンテンツオブジェクトとしてマルチパートコンテンツオブジェクトに追加する（動作２３８）。動作は判定２３４に戻り、生成器は引き続き任意の他の限定詞を満足することができるか否かを判定し、もはやいかなる限定詞も満足することができなくなるまで、メンバーコンテンツオブジェクトを生成および追加し、動作は戻る。
【００４０】
図２Ｃは、本発明の一実施形態による、リダイレクト方法に基づいてＣＣＮにおけるコンテンツネゴシエーションを促進するためのコンテンツ生成デバイスによる方法を示す流れ図２６０を提示する。動作中、符号化名を有するインタレストを受信すると、生成器は、示されている限定詞に基づいてコンテンツに対する新たなインタレストにおいて使用されるべきコンテンツタイプおよびコンテンツ固有名を示す第３のコンテンツオブジェクトを生成し、第３のコンテンツオブジェクトの名前は符号化名である（動作２６２）。生成器は、第１のインタレストと関連付けられるデバイス（たとえば、クライアント）に、第３のコンテンツオブジェクトを送信する（動作２６４）。その後、生成器は、第２のインタレストに対応するパケットを受信し、第２のインタレストの名前は、第３のコンテンツオブジェクトにおいて示されるコンテンツ固有名である（動作２６６）。生成器は、第２のインタレストを満足する第４のコンテンツオブジェクトをも生成し、第４のコンテンツオブジェクトの名前は、第２のインタレストのコンテンツ固有名である（動作２６８）。最後に、生成器は、第２のインタレストと関連付けられるデバイス（たとえば、クライアント）に、第４のコンテンツオブジェクトを送信する（動作２７０）。
【００４１】
図３は、本発明の一実施形態による、ＣＣＮにおけるコンテンツネゴシエーションを促進するための転送デバイスによる方法を示す流れ図３００を提示する。動作中、転送デバイス（たとえば、転送器、ルータ、中間ルータ、中間ノード、またはＣＣＮルータ）は、第１のインタレストに対応するパケットを受信し、インタレストの符号化名は、要求されているコンテンツの許容可能なタイプに関する複数の限定詞を示す（動作３０２）。転送器は、符号化名に基づいて第１のインタレストのそのＰＩＴ内にエントリを追加する（動作３０４）。その後、転送器は、示されている限定詞を満足する第１のコンテンツオブジェクトに対応するパケットを受信し、第１のコンテンツオブジェクトの名前は符号化名である（動作３０６）。転送器は、符号化名、および、インタレストが受信された対応するインターフェースのＰＩＴエントリを識別する（動作３０８）。転送器は、コンテンツオブジェクトパケットがマルチパートコンテンツオブジェクトであるか否かを判定する（判定３１０）。そうでない場合、転送器は、キャッシュ内に第１のコンテンツオブジェクトを記憶し（動作３１２）、ＰＩＴから識別されたインターフェースを介して第１のコンテンツオブジェクトを転送し（動作３１４）、ＰＩＴエントリを消去する（動作３１６）。パケットがマルチパートコンテンツオブジェクトである場合、転送器は、マルチパートコンテンツオブジェクトをメンバーコンテンツオブジェクトに分割する（動作３１８）。その後、転送器は、マルチパートコンテンツオブジェクトをキャッシュ内に記憶し（動作３２０）、また、各メンバーコンテンツオブジェクトも、キャッシュ内に記憶する（動作３２２）。
【００４２】
次に、転送器は、任意選択的に最適化動作を実施してもよい（動作３２４）。転送器は、第１のインタレストまたは第１のコンテンツオブジェクトおよび転送器のアプリケーションロジックに基づいてコンテンツをインテリジェントに「プリフェッチ」することができる。たとえば、転送器は、受信された第１のコンテンツオブジェクトに基づいて１つまたは複数のインタレストを生成することができる。転送器は、生成されたインタレストに対応する１つまたは複数のコンテンツオブジェクトを受信およびキャッシュすることができる。転送器はまた、第１のインタレストと関連付けられるデバイス（たとえば、クライアント）に、受信されたコンテンツオブジェクトを送信することもできる。このプリフェッチ動作の結果として、図２Ａに関連して上述したように、要求されていない予測されるコンテンツがプレシードされることになり、予測されるコンテンツがクライアントおよびネットワークにプッシュされる。
【００４３】
クライアントは、符号化名に限定詞を含めることによって、種々のタイプのコンテンツを要求することができる。しかし、種々のタイプのコンテンツは、異なるセキュリティまたはアクセス制御方針下で存在し得る。たとえば、クライアントはビデオ符号化サービスからＨＤまたはＳＤいずれかのコンテンツを要求することができるが、有料加入者のみがＨＤ符号化ビデオコンテンツを取り出すことができる。これらの需要に対処するために、アクセス制御セマンティクスを、特定のコンテンツネゴシエーション方法に基づいてコンテンツネゴシエーションプロトコルに組み込むことができる。図４は、本発明の一実施形態による、ＣＣＮにおけるコンテンツネゴシエーション中のアクセス制御を可能にするためのコンテンツ生成デバイスによる方法を示す流れ図４００を提示する。動作中、コンテンツ生成デバイス（たとえば、コンテンツ生成器）は、受信されたインタレストパケットのためのコンテンツネゴシエーション方法を決定し、インタレストの符号化名は、要求されているコンテンツの許容可能なタイプに関する複数の限定詞を示す（動作４０２）。生成器が過剰供給方法を選択すると（動作４０４）、動作は図２ＢのラベルＡに記載されているように継続し、これはマルチパートコンテンツオブジェクトを返す。その後、生成器は、認証情報に基づいて対応するコンテンツオブジェクト（たとえば、メンバーコンテンツオブジェクト）と関連付けられるデータを暗号化することができる（動作４０６）。認証情報は、そのクライアントと以前に交換された共有対称鍵、クライアントおよび／もしくは生成器のデジタル証明書、または、クライアントおよび／もしくは生成器のＫｅｙＩｄに基づく暗号化を含むことができる。生成器は、以下の２つの方法、すなわち、１）認証情報を対応するコンテンツオブジェクトの先頭に追加すること（動作４０８）、または、２）暗号化データを認証情報に置き換え（動作４１０）、対応するコンテンツオブジェクトのコンテンツタイプを示す（動作４１２）ことのうちの一方において認証情報を提供することができる。いくつかの実施形態において、たとえば、暗号化データのサイズが大きいとき、生成器は、消費者がその後、保護されているコンテンツを直接（たとえば、符号化されていないコンテンツ固有名を使用してネゴシエーションなしで）求めることを必要とする、第２の選択肢を選択し得る。この結果として、保護されているコンテンツはネットワーク内で通常通りキャッシュされることになる。加えて、第２の選択肢に基づいて認証情報を提供するとき、生成器は、マルチパートコンテンツオブジェクト（たとえば、過剰供給応答）内に、アクセス制御情報またはプレーンテキストコンテンツオブジェクトデータのいずれかとしての、コンテンツオブジェクトバイトの各可能なセットのコンテンツタイプを含めることができ、したがって、受信するクライアント（または転送器）が、マルチパートコンテンツオブジェクトを正確に解析することが可能になる。
【００４４】
生成器が抽象化方法を選択するとき（動作４１４）、生成器は、示されている限定詞の１つを満足する第１のコンテンツオブジェクトを生成し、第１のコンテンツオブジェクトの名前は符号化名である（動作４１６）。第１のコンテンツオブジェクトは、満足される限定詞に対応するデータおよびコンテンツタイプを示すことができる。第１のコンテンツオブジェクトは、第１のコンテンツオブジェクトの認証情報を示す第２のコンテンツオブジェクトをも示すことができる。生成器は、いずれのデータフォーマットを応答コンテンツオブジェクト内で使用すべきかを判定するため、また、アクセス制御方針は選択されるデータフォーマットに基づいて異なる場合があるため、生成器はアクセス制御を再びその可能性のある応答の各々に結びつけることができる。たとえば、生成器がＪＰＧまたはＧＩＦに対するインタレストに応答してＧＩＦ画像を帰す場合、ＧＩＦに対するアクセス制御情報（たとえば、アクセス制御仕様コンテンツオブジェクトに対する名前）を、コンテンツオブジェクト応答に含むことができる。
【００４５】
生成器がリダイレクト方法を選択すると（図４には示されていない）、応答コンテンツオブジェクトは、生成器によって満足することができる可能なコンテンツタイプの名前（たとえば、ポインタ）を含む。クライアントによって送信される後続のインタレストは特定のコンテンツオブジェクトに対するものであるため、生成器は、標準的なＣＣＮ準拠アクセス制御方針を使用して、アクセスを対応するコンテンツオブジェクトに制限することができる。
【００４６】
図５Ａは、本発明の一実施形態による、ＣＣＮにおけるコンテンツネゴシエーションを促進する例示的な装置５００を示す。装置５００は、有線または無線通信チャネルを介して互いに通信することができる複数のモジュールを備えることができる。装置５００は、１つまたは複数の集積回路を使用して実現されてもよく、図５に示されているものよりも少ないまたは多いモジュールを含んでもよい。さらに、装置５００は、コンピュータシステム内に組み込まれてもよく、または、他のコンピュータシステムおよび／もしくはデバイスと通信することが可能である別個のデバイスとして実現されてもよい。具体的には、装置５００は、通信モジュール５０２と、パケット処理モジュール５０４と、パケット構築モジュール５０６と、パケットシーディングモジュール５０８と、セキュリティモジュール５１０とを備えることができる。
【００４７】
いくつかの実施形態において、通信モジュール５０２は、コンピュータネットワークにわたって他のネットワークノードへ／からデータパケット（インタレストおよびコンテンツオブジェクトを含む）を送信および／または受信することができる。パケット構築モジュール５０６は、インタレストの符号化名において示されている限定詞を満足する第１のコンテンツオブジェクトを生成することができる。パケット構築モジュール５０６はまた、符号化名である名前を有するマルチパートコンテンツオブジェクトを示す第２のコンテンツオブジェクトをも生成することができ、マルチパートコンテンツオブジェクトはメンバーコンテンツオブジェクトを示す。パケット処理モジュール５０４は、デバイスが、示されている限定詞を満足することができることを判定することができる。パケット構築モジュール５０６は、示されている限定詞を満足するコンテンツオブジェクトを生成し、さらに、コンテンツオブジェクトをマルチパートコンテンツオブジェクトに追加することができる。パケット構築モジュール５０６は、示されている限定詞に基づいてコンテンツに対する新たなインタレストにおいて使用されるべき情報およびコンテンツ固有名を示す第３のコンテンツオブジェクトを生成することができる。パケット構築モジュール５０６はまた、第３のコンテンツオブジェクトにおいて示されているコンテンツ固有名である名前を有する第２のインタレストを満足する第４のコンテンツオブジェクトをも生成することができる。
【００４８】
パケットシーディングモジュール５０８は、第１のインタレストおよびコンテンツ生成デバイスのアプリケーションロジックに基づいて、要求されていないコンテンツオブジェクトを生成し、さらに、要求されていないコンテンツオブジェクトを、第１のインタレストと関連付けられるデバイスに送信することができる。セキュリティモジュール５１０は、認証情報に基づいてコンテンツオブジェクトと関連付けられるデータを暗号化し、認証情報を、対応するコンテンツオブジェクトの先頭に追加することができる。セキュリティモジュール５１０はまた、暗号化データを認証情報に置き換えることもできる。
【００４９】
図５Ｂは、本発明の一実施形態による、ＣＣＮにおけるコンテンツネゴシエーションを促進する例示的な装置５５０を示す。装置５５０は、有線または無線通信チャネルを介して互いに通信することができる複数のモジュールを備えることができる。装置５５０は、１つまたは複数の集積回路を使用して実現されてもよく、図５Ｂに示されているものよりも少ないまたは多いモジュールを含んでもよい。さらに、装置５５０は、コンピュータシステム内に組み込まれてもよく、または、他のコンピュータシステムおよび／もしくはデバイスと通信することが可能である別個のデバイスとして実現されてもよい。具体的には、装置５５０は、通信モジュール５５２と、パケット処理モジュール５５４と、パケット構築モジュール５５６と、ＰＩＴ保守管理モジュール５５８と、パケットシーディングモジュール５６０とを備えることができる。いくつかの実施形態において、通信モジュール５５２は、コンピュータネットワークにわたって他のネットワークノードへ／からデータパケット（インタレストおよびコンテンツオブジェクトを含む）を送信および／または受信することができる。ＰＩＴ保守管理モジュール５５８は、符号化名に基づいて第１のインタレストのＰＩＴ内にエントリを追加することができる。
【００５０】
パケットシーディングモジュール５６０は、第１のコンテンツオブジェクトおよび転送デバイスのアプリケーションロジックに基づいて第２のインタレストを生成することができる。ＰＩＴ保守管理モジュール５５８は、第２のインタレストのＰＩＴ内にエントリを追加することができ、通信モジュール５５２は、第２のインタレストをコンテンツ生成デバイスに送信することができる。パケットシーディングモジュール５６０は、受信された第２のコンテンツオブジェクトをキャッシュ内に記憶することができる。パケット処理モジュール５５４は、第１のコンテンツオブジェクトがマルチパートコンテンツオブジェクトを示すことを判定することができる。パケット処理モジュール５５４は、さらに、マルチパートコンテンツオブジェクトをメンバーコンテンツオブジェクトに分割することができる。パケット処理モジュール５５４は、マルチパートコンテンツオブジェクトおよびメンバーコンテンツオブジェクトをキャッシュ内に記憶することができる。ＰＩＴ保守管理モジュール５５８は、符号化名および対応するインターフェースのＰＩＴエントリを識別し、識別されたエントリをＰＩＴから削除することができる。通信モジュール５５２は、識別されたインターフェースを介してマルチパートコンテンツオブジェクトを送信することができる。
【００５１】
図６Ａは、本発明の一実施形態による、ＣＣＮにおけるコンテンツネゴシエーションを促進する例示的なコンピュータおよび通信システム６０２を示す。コンピュータおよび通信システム６０２は、プロセッサ６０４と、メモリ６０６と、記憶デバイス６０８とを含む。メモリ６０６は、管理メモリとしての役割を果たす揮発性メモリ（たとえば、ＲＡＭ）を含むことができ、１つまたは複数のメモリプールを記憶するのに使用することができる。さらに、コンピュータおよび通信システム６０２は、表示デバイス６１０、キーボード６１２、およびポインティングデバイス６１４に結合することができる。記憶デバイス６０８は、オペレーティングシステム６１６、コンテンツ処理システム６１８、およびデータ６３０を記憶することができる。
【００５２】
コンテンツ処理システム６１８は、コンピュータおよび通信システム６０２によって実行されると、コンピュータおよび通信システム６０２に、本開示に記載されている方法および／またはプロセスを実施させることができる命令を含むことができる。具体的には、コンテンツ処理システム６１８は、コンテンツ生成デバイスによって、第１のインタレストに対応するパケットを受信するための命令を含むことができ、インタレストの符号化名は、要求されているコンテンツの許容可能なタイプに関する複数の限定詞を示す（通信モジュール６２０）。コンテンツ処理システム６１８は、示されている限定詞の１つを満足する第１のコンテンツオブジェクトを生成するための命令を含むことができ、このコンテンツオブジェクトの名前は符号化名であり、コンテンツオブジェクトは、満足された限定詞に対応するデータおよびコンテンツタイプを示す（パケット構築モジュール６２４）。
【００５３】
コンテンツ処理システム６１８はまた、マルチパートコンテンツオブジェクトを示す第２のコンテンツオブジェクトを生成するための命令（パケット構築モジュール６２４）と、コンテンツ生成デバイスが別の限定詞を満足することができるという判定に応答して（パケット処理モジュール６２２）、その他の限定詞を満足する対応するコンテンツオブジェクトが生成される（パケット構築モジュール６２４）ための命令をも含むことができる。コンテンツ処理システム６１８はまた、その対応するコンテンツオブジェクトを、メンバーコンテンツオブジェクトとしてマルチパートコンテンツオブジェクトに追加するための命令をも含むことができる。
【００５４】
加えて、コンテンツ処理システム６１８は、第１のインタレストおよびコンテンツ生成デバイスのアプリケーションロジックに基づいて、要求されていないコンテンツオブジェクトを生成するための命令（パケットシーディングモジュール６２６）を含むことができ、さらに、要求されていないコンテンツオブジェクトを、第１のインタレストと関連付けられるデバイスに送信するための命令（通信モジュール６２０）を含むことができる。コンテンツ処理システム６１８は、認証情報に基づいて対応するコンテンツオブジェクトと関連付けられるデータを暗号化し、認証情報を、対応するコンテンツオブジェクトの先頭に追加するための命令を含むことができる（セキュリティモジュール６２８）。コンテンツ処理システム６１８は、暗号化データを認証情報に置き換えるための命令をさらに含むことができる（セキュリティモジュール６２８）。
【００５５】
コンテンツ処理システム６１８は、示されている限定詞に基づいてコンテンツに対する新たなインタレストにおいて使用されるべき情報およびコンテンツ固有名を示す第３のコンテンツオブジェクトを生成するための命令をさらに含むことができる（パケット構築モジュール６２４）。コンテンツ処理システム６１８は、第２のインタレストに対応するパケットを受信するための命令を含むことができ、第２のインタレストの名前は、第３のコンテンツオブジェクトにおいて示されるコンテンツ固有名である（通信モジュール６２０）。コンテンツ処理システム６１８はまた、第２のインタレストを満足する第４のコンテンツオブジェクトを生成するための命令をも含むことができ、第４のコンテンツオブジェクトの名前は、第２のインタレストのコンテンツ固有名である（パケット構築モジュール６２４）。
【００５６】
データ６３０は、本開示に記載されている方法および／またはプロセスによって、入力として要求されるか、または、出力として生成される任意のデータを含むことができる。具体的には、データ６３０は少なくとも、符号化名を有する第１のインタレストに対応するパケット、要求されているコンテンツの許容可能なタイプの複数の限定詞を示す符号化名、ＨＳＶＬＩである名前、符号化名において示されている限定詞を満足する第１のコンテンツオブジェクト、マルチパートコンテンツオブジェクトである第２のコンテンツオブジェクト、マルチパートコンテンツオブジェクトにおいて示されているようなメンバーコンテンツオブジェクト、コンテンツタイプ、コンテンツ名、コンテンツを表すデータ、認証情報、デジタル証明書、秘密鍵、共有対称鍵、公開鍵、ＫｅｙＩｄ、要求されていないコンテンツオブジェクトまたはインタレスト、コンテンツ生成デバイスまたは転送デバイスと関連付けられるアプリケーションロジック、後続のインタレストの情報およびコンテンツ固有名を示す第３のコンテンツオブジェクト、符号化されていない名前を有する第２のインタレスト、ならびに、第２のインタレストに対応する第４のコンテンツオブジェクトを記憶することができる。
【００５７】
図６Ｂは、本発明の一実施形態による、ＣＣＮにおけるコンテンツネゴシエーションを促進する例示的なコンピュータおよび通信システム６５２を示す。コンピュータおよび通信システム６５２は、プロセッサ６５４と、メモリ６５６と、記憶デバイス６５８とを含む。メモリ６５６は、管理メモリとしての役割を果たす揮発性メモリ（たとえば、ＲＡＭ）を含むことができ、１つまたは複数のメモリプールを記憶するのに使用することができる。さらに、コンピュータおよび通信システム６５２は、表示デバイス６６０、キーボード６６２、およびポインティングデバイス６６４に結合することができる。記憶デバイス６５８は、オペレーティングシステム６６６、コンテンツ処理システム６６８、およびデータ６８０を記憶することができる。
【００５８】
コンテンツ処理システム６６８は、コンピュータおよび通信システム６５２によって実行されると、コンピュータおよび通信システム６５２に、本開示に記載されている方法および／またはプロセスを実施させることができる命令を含むことができる。具体的には、コンテンツ処理システム６６８は、転送デバイスによって、第１のインタレストに対応するパケットを受信するための命令を含むことができ、インタレストの符号化名は、要求されているコンテンツの許容可能なタイプに関する複数の限定詞を示す（通信モジュール６７０）。
【００５９】
コンテンツ処理システム６６８は、符号化名に基づいて第１のインタレストのＰＩＴ内にエントリを追加するための命令を含むことができる（ＰＩＴ保守管理モジュール６７６）。コンテンツ処理システム６６８は、限定詞を満足する第１のコンテンツオブジェクトに対応するパケットを受信するための命令を含むことができる（通信モジュール６７０）。コンテンツ処理システム６６８はまた、第１のコンテンツオブジェクトおよび転送デバイスのアプリケーションロジックに基づいて第２のインタレストを生成するための命令をも含むことができる（パケットシーディングモジュール６７８）。コンテンツ処理システム６６８は、第２のインタレストのＰＩＴ内にエントリを追加するための命令（ＰＩＴ保守管理モジュール６７６）と、コンテンツ生成デバイスに第２のインタレストを送信するための命令（通信モジュール６７０）とを含むことができる。
【００６０】
コンテンツ処理システム６６８は、受信された第２のコンテンツオブジェクトをキャッシュ内に記憶するための命令をさらに含むことができる（パケット処理モジュール６７２）。コンテンツ処理システム６６８は、第１のコンテンツオブジェクトがマルチパートコンテンツオブジェクトを示すことを判定するための命令を含むことができる（パケット処理モジュール６７２）。コンテンツ処理システム６６８はまた、マルチパートコンテンツオブジェクトをメンバーコンテンツオブジェクトに分割するための命令と、マルチパートコンテンツオブジェクトおよびメンバーコンテンツオブジェクトをキャッシュ内に記憶するための命令とをも含むことができる（パケット処理モジュール６７２）。コンテンツ処理システム６６８はまた、符号化名および対応するインターフェースのＰＩＴエントリを識別し、識別されたエントリをＰＩＴから削除するための命令（ＰＩＴ保守管理モジュール６７６）と、識別されたインターフェースを介してマルチパートコンテンツオブジェクトを送信するための命令（通信モジュール６７０）とをも含むことができる。
【００６１】
データ６８０は、本開示に記載されている方法および／またはプロセスによって、入力として要求されるか、または、出力として生成される任意のデータを含むことができる。具体的には、データ６８０は少なくとも、符号化名を有する第１のインタレストに対応するパケット、要求されているコンテンツの許容可能なタイプの複数の限定詞を示す符号化名、ＨＳＶＬＩである名前、符号化名において示されている限定詞を満足する第１のコンテンツオブジェクト、第１のコンテンツオブジェクトおよび転送デバイスのアプリケーションロジックに基づく第２のインタレスト、第２のインタレストに一致する第２のコンテンツオブジェクト、マルチパートコンテンツオブジェクト、マルチパートコンテンツオブジェクトにおいて示されているようなメンバーコンテンツオブジェクト、コンテンツタイプ、コンテンツ名、コンテンツを表すデータ、ペンディングインタレストテーブル（ＰＩＴ）、ＰＩＴエントリ、ならびにインターフェースを記憶することができる。
【００６２】
この詳細な説明に記載されているデータ構造およびコードは一般的に、コンピュータシステムによって使用するためにコードおよび／またはデータを記憶することができる任意のデバイスまたは媒体であってもよいコンピュータ可読記憶媒体上に記憶される。コンピュータ可読記憶媒体は、限定ではないが、揮発性メモリ、不揮発性メモリ、ディスクドライブ、磁気テープ、ＣＤ（コンパクトディスク）、ＤＶＤ（デジタル多用途ディスクまたはデジタルビデオディスク）のような磁気および光学記憶デバイス、または、現在既知であるかまたは後に開発されるコンピュータ可読媒体を記憶することが可能な他の媒体を含む。
【００６３】
詳細な説明の節に記載されている方法およびプロセスは、上述したようにコンピュータ可読記憶媒体内に記憶することができるコードおよび／またはデータとして具現化することができる。コンピュータシステムが、コンピュータ可読記憶媒体上に記憶されているコードおよび／またはデータを読み出し実行すると、コンピュータシステムは、データ構造およびコードとして具現化されており、コンピュータ可読記憶媒体内に記憶されている方法およびプロセスを実施する。
【００６４】
さらに、上述した方法およびプロセスは、ハードウェアモジュールまたは装置に含めることができる。ハードウェアモジュールまたは装置は、限定ではないが、特定用途向け集積回路（ＡＳＩＣ）チップ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定の時間に特定のソフトウェアモジュールまたはコード片を実行する専用または共有プロセッサ、および、現在既知であるかまたは後に開発される他のプログラム可能論理デバイスを含むことができる。ハードウェアモジュールまたは装置が起動されると、それらは、それらの中に含まれている方法およびプロセスを実施する。
【図１Ａ】
2017027593.tif 000003
【図１Ｂ】
2017027593.tif 000004
【図１Ｃ】
2017027593.tif 000005
【図２Ａ】
2017027593.tif 000006
【図２Ｂ】
2017027593.tif 000007
【図２Ｃ】
2017027593.tif 000008
【図３】
2017027593.tif 000009
【図４】
2017027593.tif 000010
【図５Ａ】
2017027593.tif 000011
【図５Ｂ】
2017027593.tif 000012
【図６Ａ】
2017027593.tif 000013
【図６Ｂ】
2017027593.tif 000014