(57)【特許請求の範囲】
【請求項１】
ネットワークにおいてコンテキスト認識型コンテンツ検索をサポートする方法であって、
コンテンツ名およびコンテキスト要件を含むＩｎｔｅｒｅｓｔメッセージを受信する段階と、
前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名がメモリに格納されているコンテンツ名と一致するか否かを判断するべく前記メモリにアクセスする段階であって、前記メモリは、コンテンツをキャッシュするコンテンツストア、処理中のＩｎｔｅｒｅｓｔメッセージを追跡する処理中Ｉｎｔｅｒｅｓｔテーブル（ＰＩＴ）、および、コンテンツ情報と１または複数のインターフェースとを関連付ける転送情報ベース（ＦＩＢ）を含む、段階と、
前記メモリに格納されているコンテンツ名が前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名に一致することに応じて、前記ＦＩＢに格納されている前記１または複数のインターフェースのうち１または複数のインターフェースが前記コンテンツ名に関連付けられているか否かを判断し、且つ、前記Ｉｎｔｅｒｅｓｔメッセージに含まれる前記コンテキスト要件を、前記ＦＩＢに格納されている前記１または複数のインターフェースに関連付けられているコンテキスト情報とマッチングする段階と、
前記Ｉｎｔｅｒｅｓｔメッセージに含まれる前記コンテキスト要件が前記コンテンツに関連する前記１または複数のインターフェースの前記コンテキスト情報と一致する１または複数のインターフェースのうちの１つに前記Ｉｎｔｅｒｅｓｔメッセージを転送する段階と、
前記コンテキスト要件を含む転送された前記Ｉｎｔｅｒｅｓｔメッセージと前記ＰＩＴにある前記処理中のＩｎｔｅｒｅｓｔメッセージとを統合し、統合されたコンテンツを前記ＰＩＴに格納する段階であって、転送された前記Ｉｎｔｅｒｅｓｔメッセージを前記統合する段階は、前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名と同一のコンテンツ名のエントリが前記ＰＩＴに存在し、前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件と前記ＰＩＴ内の前記コンテキスト要件とが統合可能である場合に、前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件を前記エントリに追加する段階を含む、段階と
を備える方法。
【請求項２】
前記メモリに格納されている前記コンテンツが前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名に一致するか否かを特定するべく前記コンテンツストアにアクセスする段階と、
一致するコンテンツを特定したことに応じて、前記Ｉｎｔｅｒｅｓｔメッセージに対して前記コンテンツストアから得た前記コンテンツで応答し、前記Ｉｎｔｅｒｅｓｔメッセージをドロップする段階と、
一致するコンテンツを特定しなかったことに応じて、前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名に一致するコンテンツ名を持つ前記ＰＩＴ内で格納されているエントリを発見する段階と
をさらに備える請求項１に記載の方法。
【請求項３】
前記ＰＩＴ内で格納されている前記エントリを発見する段階はさらに、
一致するエントリが前記ＰＩＴに格納されている場合には、
前記Ｉｎｔｅｒｅｓｔメッセージと共に受信した前記コンテキスト要件が前記ＰＩＴに格納されているコンテキスト要件を満足させるか否かを判断する段階と、
前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件が前記ＰＩＴに格納されている前記コンテキスト要件を満足させる場合、前記コンテキスト要件を含む前記Ｉｎｔｅｒｅｓｔメッセージと前記ＰＩＴにある前記処理中のＩｎｔｅｒｅｓｔメッセージとを統合する段階と
を有し、
そうでない場合には、前記ＦＩＢに格納されている前記１または複数のインターフェースにアクセスして、前記受信したＩｎｔｅｒｅｓｔメッセージの前記コンテンツ名が前記ＦＩＢに格納されている前記１または複数のインターフェースのコンテンツ名に一致するか否かを判断する段階を有する
請求項２に記載の方法。
【請求項４】
前記コンテンツ名が前記１または複数のインターフェースのうち１つのインターフェースに関連付けられている場合、
前記１つのインターフェースがコンテキスト情報を格納しているか否かを判断する段階と、
前記インターフェースが前記コンテキスト情報を持っていることに応じて、前記１つのインターフェースの前記コンテキスト情報が前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件を満足させるか否かを判断する段階と、
前記１つのインターフェースの前記コンテキスト情報が前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件を満足させる場合、前記転送する段階を実行する段階と、
前記１つのインターフェースの前記コンテキスト情報が前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件を満足させない場合、前記Ｉｎｔｅｒｅｓｔメッセージをドロップして失敗応答を送信する段階と、
前記１つのインターフェースが前記コンテキスト情報を持たないことに応じて、前記転送する段階を実行する段階と
をさらに備える
請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記コンテンツ名が前記１または複数のインターフェースのうち複数に関連付けられている場合、
前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件を満足させるコンテキスト情報を格納している１または複数のインターフェースを発見するべく前記ＦＩＢにアクセスする段階と、
前記コンテキスト情報を格納している１または複数のインターフェースが前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件を満足させる場合、前記１または複数のインターフェースのうち１つを選択して前記転送する段階を実行する段階と、
前記１または複数のインターフェースがコンテキスト情報を格納していない場合、前記転送する段階を実行する段階と
をさらに備える
請求項１から４のいずれか一項に記載の方法。
【請求項６】
前記統合されたコンテンツを含むＤａｔａメッセージを受信する段階と、
前記Ｄａｔａメッセージをローカルキャッシングルールに応じて前記メモリに格納する段階と
をさらに備える請求項１から５のいずれか一項に記載の方法。
【請求項７】
前記統合されたコンテンツを含むＤａｔａメッセージを受信する段階と、
コンテンツ生成者が提供するコンテンツのコンテキスト情報が前記Ｄａｔａメッセージに添付されているか否かを判断する段階と
をさらに備え、
前記コンテキスト情報が前記Ｄａｔａメッセージの前記コンテンツに添付されている場合、前記コンテキスト情報と前記１または複数のインターフェースのうち対応する１つとが関連付けられて、前記コンテキスト情報は前記ＦＩＢに記録され、
前記コンテキスト情報が前記Ｄａｔａメッセージの前記コンテンツに添付されていない場合、前記コンテキスト情報は前記ＦＩＢに記録されない
請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記統合されたコンテンツを含むＤａｔａメッセージを受信する段階と、
前記ＰＩＴに格納されている前記コンテキスト要件と、受信した前記Ｄａｔａメッセージのコンテキスト情報とを比較する段階と、
前記ＰＩＴに格納されている前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名および前記コンテキスト要件が前記受信したＤａｔａメッセージの前記コンテンツのコンテンツ名および前記コンテキスト情報に一致するか否かを判断する段階と
をさらに備え、
前記ＰＩＴに格納されている前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名および前記コンテキスト要件が前記受信したＤａｔａメッセージの前記コンテンツの前記コンテンツ名および前記コンテキスト情報に一致する場合、前記Ｄａｔａメッセージが前記Ｉｎｔｅｒｅｓｔメッセージの送信元のインターフェースに転送され、
前記ＰＩＴに格納されている前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名および前記コンテキスト要件が前記受信したＤａｔａメッセージの前記コンテンツの前記コンテンツ名および前記コンテキスト情報に一致しない場合、前記Ｄａｔａメッセージの転送が終了される
請求項１から７のいずれか一項に記載の方法。
【請求項９】
前記Ｄａｔａメッセージは、コンテキスト情報およびコンテキスト関連情報を含み、
前記Ｄａｔａメッセージを前記受信する段階は、前記コンテキスト関連情報がピギーバックされたＤａｔａメッセージを受信する段階を含み、
前記ＰＩＴに格納されている前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名および前記コンテキスト要件が、前記受信したＤａｔａメッセージの前記コンテンツの前記コンテンツ名、前記コンテキスト情報、および前記コンテキスト関連情報に一致するか否かを判断する段階
をさらに備える請求項６から８のいずれか一項に記載の方法。
【請求項１０】
前記ネットワークは、情報指向ネットワークであり、前記１または複数のインターフェースは転送インターフェースである
請求項１から９のいずれか一項に記載の方法。
【請求項１１】
ネットワークにおいてコンテキスト認識型コンテンツにアクセスするネットワークコンポーネントであって、
前記ネットワークにおいてＩｎｔｅｒｅｓｔメッセージおよびコンテンツを受信および転送するトランシーバと、
コンテンツをキャッシュするコンテンツストア、コンテンツのための処理中のＩｎｔｅｒｅｓｔメッセージを追跡する処理中Ｉｎｔｅｒｅｓｔテーブル（ＰＩＴ）、および、コンテキスト情報と１または複数のインターフェースとを関連付ける転送情報ベース（ＦＩＢ）を格納するメモリと、
前記メモリおよび前記トランシーバに結合されているプロセッサであって、
前記Ｉｎｔｅｒｅｓｔメッセージのコンテンツ名が前記メモリに格納されているコンテンツ名に一致するか否かを判断するべく前記メモリにアクセスし、
前記メモリに格納されているコンテンツ名が前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名に一致することに応じて、前記ＦＩＢに格納されている前記１または複数のインターフェースのうち１または複数のインターフェースが前記コンテンツ名に関連付けられているか否かを判断し、且つ、前記Ｉｎｔｅｒｅｓｔメッセージに含まれるコンテキスト要件を、前記ＦＩＢに格納されている前記１または複数のインターフェースに関連付けられているコンテキスト情報とマッチングし、
前記Ｉｎｔｅｒｅｓｔメッセージに含まれる前記コンテキスト要件が前記コンテンツに関連する前記１または複数のインターフェースの前記コンテキスト情報と一致する１または複数のインターフェースのうちの１つに前記Ｉｎｔｅｒｅｓｔメッセージを転送し、
前記コンテキスト要件を含む転送された前記Ｉｎｔｅｒｅｓｔメッセージと前記ＰＩＴにある前記処理中のＩｎｔｅｒｅｓｔメッセージとを統合し、統合されたコンテンツを前記ＰＩＴに格納し、転送された前記Ｉｎｔｅｒｅｓｔメッセージを統合することは、前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名と同一のコンテンツ名のエントリが前記ＰＩＴに存在し、前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件と前記ＰＩＴ内の前記コンテキスト要件とが統合可能である場合に、前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件を前記エントリに追加することを含む、
プロセッサと
を備えるネットワークコンポーネント。
【請求項１２】
前記プロセッサはさらに、
前記メモリに格納されている前記コンテンツが前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名に一致するか否かを特定するべく前記コンテンツストアにアクセスし、
一致するコンテンツを特定したことに応じて、前記Ｉｎｔｅｒｅｓｔメッセージに対して前記コンテンツストアから得た前記コンテンツで応答し、前記Ｉｎｔｅｒｅｓｔメッセージをドロップし、
一致するコンテンツを特定しなかったことに応じて、前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名に一致するコンテンツ名を持つ前記ＰＩＴ内で格納されているエントリを発見する
請求項１１に記載のネットワークコンポーネント。
【請求項１３】
前記ＰＩＴ内で格納されている前記エントリを発見することはさらに、
一致するエントリが前記ＰＩＴに格納されている場合には、
前記Ｉｎｔｅｒｅｓｔメッセージと共に受信したコンテキスト要件が前記ＰＩＴに格納されている前記コンテキスト要件を満足させるか否かを判断することと、
前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件が前記ＰＩＴに格納されている前記コンテキスト要件を満足させる場合、前記コンテキスト要件を含む前記Ｉｎｔｅｒｅｓｔメッセージと前記ＰＩＴにある前記処理中のＩｎｔｅｒｅｓｔメッセージとを統合することとを含み、
そうでない場合には、前記ＦＩＢに格納されている前記１または複数のインターフェースにアクセスして、前記受信したＩｎｔｅｒｅｓｔメッセージの前記コンテンツ名が前記ＦＩＢに格納されている前記１または複数のインターフェースのコンテンツ名に一致するか否かを判断することを含む
請求項１２に記載のネットワークコンポーネント。
【請求項１４】
前記コンテンツ名が前記１または複数のインターフェースのうち１つのインターフェースに関連付けられている場合、
前記プロセッサはさらに、
前記１つのインターフェースが前記コンテキスト情報を格納しているか否かを判断し、
前記１つのインターフェースが前記コンテキスト情報を持っていることに応じて、前記１つのインターフェースの前記コンテキスト情報が前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件を満足させるか否かを判断し、
前記１つのインターフェースの前記コンテキスト情報が前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件を満足させる場合、前記転送を実行し、
前記１つのインターフェースの前記コンテキスト情報が前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件を満足させない場合、前記Ｉｎｔｅｒｅｓｔメッセージをドロップして失敗応答を送信し、
前記１つのインターフェースが前記コンテキスト情報を持たないことに応じて、前記転送を実行する
請求項１１から１３のいずれか一項に記載のネットワークコンポーネント。
【請求項１５】
前記コンテンツ名が前記１または複数のインターフェースのうち複数に関連付けられている場合、
前記プロセッサはさらに、
前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件を満足させるコンテキスト情報を格納している１または複数のインターフェースを発見するべく前記ＦＩＢにアクセスし、
前記コンテキスト情報を格納している１または複数のインターフェースが前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件を満足させる場合、前記１または複数のインターフェースのうち１つを選択して前記転送を実行し、
前記１または複数のインターフェースがコンテキスト情報を格納していない場合、前記転送を実行する
請求項１１から１４のいずれか一項に記載のネットワークコンポーネント。
【請求項１６】
前記プロセッサはさらに、
前記統合されたコンテンツを含むＤａｔａメッセージを受信し、
前記Ｄａｔａメッセージをローカルキャッシングルールに応じて前記メモリに格納する
請求項１１から１５のいずれか一項に記載のネットワークコンポーネント。
【請求項１７】
前記プロセッサはさらに、
前記統合されたコンテンツを含むＤａｔａメッセージを受信し、
コンテンツ生成者が提供するコンテンツのコンテキスト情報が前記Ｄａｔａメッセージに添付されているか否かを判断し、
前記コンテキスト情報が前記Ｄａｔａメッセージの前記コンテンツに添付されている場合、前記コンテキスト情報と前記１または複数のインターフェースのうち対応する１つとが関連付けられて、前記コンテキスト情報は前記ＦＩＢに記録され、
前記コンテキスト情報が前記Ｄａｔａメッセージの前記コンテンツに添付されていない場合、前記コンテキスト情報は前記ＦＩＢに記録されない
請求項１１から１６のいずれか一項に記載のネットワークコンポーネント。
【請求項１８】
前記プロセッサはさらに、
前記統合されたコンテンツを含むＤａｔａメッセージを受信し、
前記ＰＩＴに格納されている前記コンテキスト要件と、受信した前記Ｄａｔａメッセージのコンテキスト情報とを比較し、
前記ＰＩＴに格納されている前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名および前記コンテキスト要件が前記受信したＤａｔａメッセージの前記コンテンツのコンテンツ名および前記コンテキスト情報に一致するか否かを判断し、
前記ＰＩＴに格納されている前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名および前記コンテキスト要件が前記受信したＤａｔａメッセージの前記コンテンツの前記コンテンツ名および前記コンテキスト情報に一致する場合、前記Ｄａｔａメッセージが前記Ｉｎｔｅｒｅｓｔメッセージの送信元のインターフェースに転送され、
前記ＰＩＴに格納されている前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名および前記コンテキスト要件が前記受信したＤａｔａメッセージの前記コンテンツの前記コンテンツ名および前記コンテキスト情報に一致しない場合、前記Ｄａｔａメッセージの転送が終了される
請求項１１から１７のいずれか一項に記載のネットワークコンポーネント。
【請求項１９】
前記Ｄａｔａメッセージは、コンテキスト情報およびコンテキスト関連情報を含み、
前記Ｄａｔａメッセージを受信する段階は、前記コンテキスト関連情報がピギーバックされたＤａｔａメッセージを受信する段階を含み、
前記プロセッサはさらに、
前記ＰＩＴに格納されている前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名および前記コンテキスト要件が、前記受信したＤａｔａメッセージの前記コンテンツの前記コンテンツ名、前記コンテキスト情報、および前記コンテキスト関連情報に一致するか否かを判断する、
請求項１６から１８のいずれか一項に記載のネットワークコンポーネント。
【請求項２０】
前記ネットワークは、情報指向ネットワークであり、前記１または複数のインターフェースは転送インターフェースである
請求項１１から１９のいずれか一項に記載のネットワークコンポーネント。
【請求項２１】
ネットワークにおいてコンテキスト認識型コンテンツ検索をサポートするためのプログラムであって、
前記プログラムは、１または複数のプロセッサに、
コンテンツ名およびコンテキスト要件を含むＩｎｔｅｒｅｓｔメッセージを受信する段階と、
前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名がメモリに格納されているコンテンツ名と一致するか否かを判断するべく前記メモリにアクセスする段階であって、前記メモリは、コンテンツをキャッシュするコンテンツストア、処理中のＩｎｔｅｒｅｓｔメッセージを追跡する処理中Ｉｎｔｅｒｅｓｔテーブル（ＰＩＴ）、および、コンテンツ情報と１または複数のインターフェースとを関連付ける転送情報ベース（ＦＩＢ）を含む、段階と、
前記メモリに格納されているコンテンツ名が前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名に一致することに応じて、前記ＦＩＢに格納されている前記１または複数のインターフェースのうち１または複数のインターフェースが前記コンテンツ名に関連付けられているか否かを判断し、且つ、前記Ｉｎｔｅｒｅｓｔメッセージに含まれる前記コンテキスト要件を、前記ＦＩＢに格納されている前記１または複数のインターフェースに関連付けられているコンテキスト情報とマッチングする段階と、
前記Ｉｎｔｅｒｅｓｔメッセージに含まれる前記コンテキスト要件が前記コンテンツに関連する前記１または複数のインターフェースの前記コンテキスト情報と一致する１または複数のインターフェースのうちの１つに前記Ｉｎｔｅｒｅｓｔメッセージを転送する段階と、
前記コンテキスト要件を含む転送された前記Ｉｎｔｅｒｅｓｔメッセージと前記ＰＩＴにある前記処理中のＩｎｔｅｒｅｓｔメッセージとを統合し、統合されたコンテンツを前記ＰＩＴに格納する段階であって、転送された前記Ｉｎｔｅｒｅｓｔメッセージを前記統合する段階は、前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名と同一のコンテンツ名のエントリが前記ＰＩＴに存在し、前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件と前記ＰＩＴ内の前記コンテキスト要件とが統合可能である場合に、前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテキスト要件を前記エントリに追加する段階を含む、段階と
を実行させるプログラム。
【請求項２２】
前記１または複数のプロセッサに、
Ｄａｔａメッセージを前記受信する段階であって、前記Ｄａｔａメッセージは、コンテキスト情報およびコンテキスト関連情報を含み、前記コンテキスト関連情報がピギーバックされた前記Ｄａｔａメッセージを受信する段階を含む、段階と、
前記ＰＩＴに格納されている前記Ｉｎｔｅｒｅｓｔメッセージの前記コンテンツ名および前記コンテキスト要件が前記受信したＤａｔａメッセージの前記コンテンツの前記コンテンツ名、前記コンテキスト情報、および前記コンテキスト関連情報に一致するか否かを判断する段階と
をさらに実行させる、請求項２１に記載のプログラム。
【請求項２３】
前記ネットワークは、情報指向ネットワークであり、前記１または複数のインターフェースは転送インターフェースである
請求項２１または２２に記載のプログラム。
【発明の詳細な説明】
【背景技術】
【０００１】
＜優先権の主張＞
本願は、米国非仮特許出願第１５／０７０，８２２（出願日：２０１６年３月１５日、発明の名称「Ｓｙｓｔｅｍ  Ａｎｄ  Ｍｅｔｈｏｄ  ｔｏ  Ｓｕｐｐｏｒｔ  Ｃｏｎｔｅｘｔ−Ａｗａｒｅ  Ｃｏｎｔｅｎｔ  Ｒｅｑｕｅｓｔｓ  ｉｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｃｅｎｔｒｉｃ  Ｎｅｔｗｏｒｋｓ」）に基づき優先権を主張する。当該米国非仮特許出願は、米国仮特許出願第６２／２６０，８４４号（出願日：２０１５年１１月３０日）に基づき優先権を主張する。当該米国仮特許出願の内容は全て参照により本願に組み込まれる。
【０００２】
情報指向ネットワーク（Ｉｎｆｏｒｍａｔｉｏｎ−Ｃｅｎｔｒｉｃ  Ｎｅｔｗｏｒｋ、ＩＣＮ）は、コンテンツ指向型ネットワーク（Ｃｏｎｔｅｎｔ  Ｏｒｉｅｎｔｅｄ  Ｎｅｔｗｏｒｋ、ＣＯＮ）とも呼ばれ、ＩＣＮでは、ドメイン内で一意的な名称をコンテンツ配信フレームワークの一部分を成す各エンティティに割り当てる。エンティティは、ビデオクリップもしくはウェブページ等のデータコンテンツ、および／または、ルータ、スイッチもしくはサーバ等のインフラストラクチャ要素を含むとしてよい。コンテンツルータは、コンテンツネットワーク内でコンテンツパケットをルーティングするために名称のプレフィクスを利用する。これは、ネットワークアドレスの代わりになるもので、省略していない完全なコンテンツ名またはコンテンツ名の適切なプレフィクスであってよい。ＩＣＮにおいて、公開、要求、管理（例えば、修正、削除等）を含むコンテンツ配信は、コンテンツの位置ではなく、コンテンツ名に基づいて行われるとしてよい。従来のインターネットプロトコル（ＩＰ）ネットワークと異なるＩＣＮの側面の１つとして、ＩＣＮは複数の地理上の点を相互接続することができると共に、コンテンツを一時的にキャッシュできるか、または、より持続的にコンテンツを格納できる点がある。これによって、コンテンツは、本来のサーバではなく、ネットワークから提供することが可能になり得る。したがって、キャッシング／格納は、ユーザがフェッチするリアルタイムデータ、または、ユーザまたはコンテンツプロバイダ、例えば、第三者のプロバイダのものである持続的データに対して利用されるとしてよい。 
【０００３】
＜簡単な要約＞
一実施形態において、ネットワークにおいてコンテキスト認識型コンテンツ検索をサポートする方法が提供される。当該方法は、コンテンツ名およびコンテキスト要件を含むＩｎｔｅｒｅｓｔメッセージを受信する段階と、Ｉｎｔｅｒｅｓｔメッセージのコンテンツ名がメモリに格納されているコンテンツ名と一致するか否かを判断するべくメモリにアクセスする段階であって、メモリは、コンテンツをキャッシュするコンテンツストア、処理中のＩｎｔｅｒｅｓｔメッセージを追跡する処理中Ｉｎｔｅｒｅｓｔテーブル（ＰＩＴ）、および、コンテンツ情報と１または複数のインターフェースとを関連付ける転送情報ベース（ＦＩＢ）のうち少なくとも１つを含む、段階と、メモリに格納されているコンテンツ名がＩｎｔｅｒｅｓｔメッセージのコンテンツ名に一致することに応じて、ＦＩＢに格納されているインターフェースのうち１または複数がコンテンツ名に関連付けられているか否かを判断し、且つ、Ｉｎｔｅｒｅｓｔメッセージに含まれるコンテキスト要件を、ＦＩＢに格納されている１または複数のインターフェースに関連付けられているコンテキスト情報とマッチングする段階と、Ｉｎｔｅｒｅｓｔメッセージに含まれるコンテキスト要件がコンテンツに関連する１または複数のインターフェースのコンテキスト情報と一致する１または複数のインターフェースのうちの１つにＩｎｔｅｒｅｓｔメッセージを転送する段階と、コンテキスト要件を含む転送されたＩｎｔｅｒｅｓｔメッセージとＰＩＴにある処理中のＩｎｔｅｒｅｓｔメッセージとを統合し、統合されたコンテンツをＰＩＴに格納する段階とを備える。
【０００４】
別の実施形態において、ネットワークにおいてコンテキスト認識型コンテンツにアクセスするネットワークコンポーネントが提供される。当該ネットワークコンポーネントは、  ネットワークにおいてＩｎｔｅｒｅｓｔメッセージおよびコンテンツを受信および転送するよう構成されているトランシーバと、  コンテンツをキャッシュするコンテンツストア、コンテンツのための処理中のＩｎｔｅｒｅｓｔメッセージを追跡する処理中Ｉｎｔｅｒｅｓｔテーブル（ＰＩＴ）、および、コンテキスト情報と１または複数のインターフェースとを関連付ける転送情報ベース（ＦＩＢ）を格納するメモリと、メモリおよびトランシーバに結合されているプロセッサであって、Ｉｎｔｅｒｅｓｔメッセージのコンテンツ名がメモリに格納されているコンテンツ名に一致するか否かを判断するべくメモリにアクセスするよう構成されており、メモリに格納されているコンテンツ名がＩｎｔｅｒｅｓｔメッセージのコンテンツ名に一致することに応じて、ＦＩＢに格納されているインターフェースのうち１または複数がコンテンツ名に関連付けられているか否かを判断し、且つ、Ｉｎｔｅｒｅｓｔメッセージに含まれるコンテキスト要件を、ＦＩＢに格納されている１または複数のインターフェースに関連付けられているコンテキスト情報とマッチングするよう構成されており、Ｉｎｔｅｒｅｓｔメッセージに含まれるコンテキスト要件がコンテンツに関連する１または複数のインターフェースのコンテキスト情報と一致する１または複数のインターフェースのうちの１つにＩｎｔｅｒｅｓｔメッセージを転送するよう構成されており、コンテキスト要件を含む転送されたＩｎｔｅｒｅｓｔメッセージとＰＩＴにある処理中のＩｎｔｅｒｅｓｔメッセージとを統合し、統合されたコンテンツをＰＩＴに格納するよう構成されているプロセッサとを備える。
【０００５】
さらに別の実施形態において、ネットワークにおいてコンテキスト認識型コンテンツ検索をサポートするためのコンピュータ命令を格納している非一時的コンピュータ可読媒体が提供される。コンピュータ命令は、１または複数のプロセッサによって実行されると、１または複数のプロセッサに、コンテンツ名およびコンテキスト要件を含むＩｎｔｅｒｅｓｔメッセージを受信する段階と、Ｉｎｔｅｒｅｓｔメッセージのコンテンツ名がメモリに格納されているコンテンツ名と一致するか否かを判断するべくメモリにアクセスする段階であって、メモリは、コンテンツをキャッシュするコンテンツストア、処理中のＩｎｔｅｒｅｓｔメッセージを追跡する処理中Ｉｎｔｅｒｅｓｔテーブル（ＰＩＴ）、および、コンテンツ情報と１または複数のインターフェースとを関連付ける転送情報ベース（ＦＩＢ）のうち少なくとも１つを含む、段階と、メモリに格納されているコンテンツ名がＩｎｔｅｒｅｓｔメッセージのコンテンツ名に一致することに応じて、ＦＩＢに格納されているインターフェースのうち１または複数がコンテンツ名に関連付けられているか否かを判断し、且つ、Ｉｎｔｅｒｅｓｔメッセージに含まれるコンテキスト要件を、ＦＩＢに格納されている１または複数のインターフェースに関連付けられているコンテキスト情報とマッチングする段階と、Ｉｎｔｅｒｅｓｔメッセージに含まれるコンテキスト要件がコンテンツに関連する１または複数のインターフェースのコンテキスト情報と一致する１または複数のインターフェースのうちの１つにＩｎｔｅｒｅｓｔメッセージを転送する段階と、コンテキスト要件を含む転送されたＩｎｔｅｒｅｓｔメッセージとＰＩＴにある処理中のＩｎｔｅｒｅｓｔメッセージとを統合し、統合されたコンテンツをＰＩＴに格納する段階とを実行させる。
【０００６】
一実施形態例において、ネットワークにおいてコンテキスト認識型コンテンツ検索をサポートするためのメカニズムが用いられる。当該メカニズムは、コンテンツ名およびコンテキスト要件を含むＩｎｔｅｒｅｓｔメッセージを受信する受信部と、Ｉｎｔｅｒｅｓｔメッセージのコンテンツ名がメモリに格納されているコンテンツ名と一致するか否かを判断するべくメモリにアクセスするアクセス部であって、メモリは、コンテンツをキャッシュするコンテンツストア、処理中のＩｎｔｅｒｅｓｔメッセージを追跡する処理中Ｉｎｔｅｒｅｓｔテーブル（ＰＩＴ）、および、コンテンツ情報と１または複数のインターフェースとを関連付ける転送情報ベース（ＦＩＢ）のうち少なくとも１つを含む、アクセス部とを備える。当該メカニズムはさらに、メモリに格納されているコンテンツ名がＩｎｔｅｒｅｓｔメッセージのコンテンツ名に一致することに応じて、ＦＩＢに格納されているインターフェースのうち１または複数がコンテンツ名に関連付けられているか否かを判断し、且つ、Ｉｎｔｅｒｅｓｔメッセージに含まれるコンテキスト要件を、ＦＩＢに格納されている１または複数のインターフェースに関連付けられているコンテキスト情報とマッチングする判断部と、Ｉｎｔｅｒｅｓｔメッセージに含まれるコンテキスト要件がコンテンツに関連する１または複数のインターフェースのコンテキスト情報と一致する１または複数のインターフェースのうちの１つにＩｎｔｅｒｅｓｔメッセージを転送する転送部と、コンテキスト要件を含む転送されたＩｎｔｅｒｅｓｔメッセージとＰＩＴにある処理中のＩｎｔｅｒｅｓｔメッセージとを統合する統合部と、統合されたコンテンツをＰＩＴに格納する格納部とを備えるとしてよい。
【０００７】
この要約は、以下の詳細な説明においてさらに説明する概念のうち選択したものを簡単に紹介するために記載されている。この要約は、請求している主題のうち鍵となる特徴または不可欠な特徴を特定することを意図したものではなく、請求している主題の範囲を決定する一助として利用されることを意図したものでもない。請求している主題は、背景技術で挙げた問題点の一部または全てを解決する実施例に限定されるものではない。
【図面の簡単な説明】
【０００８】
本開示の複数の態様は、一例として図示しており、添付図面で限定されるものではない。添付図面について、同様の参照符号は同様の構成要素を意味する。
【０００９】
【図１】情報指向ネットワークのコンテンツルータの実施形態を示す図である。
【００１０】
【図２】図１のコンテンツルータが採用され得る情報指向ネットワークアーキテクチャの実施形態を示す図である。
【００１１】
【図３】図１および図２のルータが保持するデータ構造を示す図である。
【００１２】
【図４Ａ】図１および図２に応じたＩｎｔｅｒｅｓｔメッセージを受信するルータのフロー図である。
【００１３】
【図４Ｂ】図１および図２に応じたＩｎｔｅｒｅｓｔメッセージを受信するルータのフロー図である。
【００１４】
【図５】図１および図２に応じたＤａｔａメッセージを受信するルータのフロー図である。
【００１５】
【図６Ａ】図１のルータの転送情報ベースを更新する場合を説明するためのシーケンス図である。
【００１６】
【図６Ｂ】図１のルータの転送情報ベースを更新する場合を説明するためのシーケンス図である。
【００１７】
【図７】図１および図２の実施形態に応じたルータの実施形態を示す図である。
【００１８】
【図８】さまざまな実施形態を実装するために用いられ得るネットワークシステムを示すブロック図である。
【発明を実施するための形態】
【００１９】
本開示は、ネットワークにおいてコンテキスト認識型コンテンツ検索をサポートするための技術に関する。ルータは、コンテンツ名およびコンテキスト要件を含むＩｎｔｅｒｅｓｔメッセージを受信する。メモリにアクセスして、Ｉｎｔｅｒｅｓｔメッセージのコンテンツ名がメモリに格納されているコンテンツ名に一致するか否かを判断する。コンテンツ名がＩｎｔｅｒｅｓｔメッセージのコンテンツ名に一致することに応じて、ルータは、メモリに格納されているインターフェースのうち１または複数がコンテンツ名に関連付けられているか否かを判断する。Ｉｎｔｅｒｅｓｔメッセージに含まれるコンテキスト要件を、メモリに格納されている１または複数のインターフェースに関連付けられているコンテキスト情報とマッチングする。Ｉｎｔｅｒｅｓｔメッセージに含まれるコンテキスト要件が、コンテンツに関連するインターフェースのコンテキスト情報に一致するインターフェースのうちの１つにＩｎｔｅｒｅｓｔメッセージを転送する。ルータはこの後、コンテキスト要件を含む転送されたＩｎｔｅｒｅｓｔメッセージとメモリにある処理中のＩｎｔｅｒｅｓｔメッセージとを統合する。
【００２０】
本発明は多くの異なる形態で具現化され得るものであり本明細書に記載する実施形態に限定されると解釈されるべきではないと理解されたい。これらの実施形態はむしろ、本開示が綿密且つ完全となり本開示により当業者が本発明を完全に理解できるように記載されているものである。実際のところ、本開示は、これらの実施形態の代替例、変形例および均等例を含むことを意図しており、これらの代替例、変形例および均等例は添付の特許請求の範囲で定義される本発明の範囲および意図に含まれるものである。さらに、以下に記載する本開示の詳細な説明では、本開示を完全に理解できるよう数多く具体的且つ詳細な内容を記載している。しかし、本開示はこのような具体的且つ詳細な内容を参照することなく実施され得ることは当業者には明らかであろう。
【００２１】
情報指向ネットワーキング（ＩＣＮ）は、将来のインターネットおよび将来のモノのインターネット（ＩｏＴ）のアーキテクチャの有望な選択肢である。今日のＩＰルータとは異なり、ＩＣＮルータは、コンテンツルーティング、コンテンツ演算能力およびコンテンツローカルキャッシュ／格納機能をまとめて持つとしてよい。高い信頼性を保ちつつセキュアにコンテンツ配信を実現することは、ユーザがコンテンツ配信に関して何らかの形で制御を行う場合等において、ＩＣＮが抱える課題であるとしてよい。コンテンツ指向ネットワーク（ＣＣＮ）／ネームドデータネットワーキング（Ｎａｍｅｄ  Ｄａｔａ  Ｎｅｔｗｏｒｋｉｎｇ、ＮＤＮ）モデル等の一部のＩＣＮモデルでは、コンテンツ名（例えば、プレフィクス）をコンテンツルーティングに利用するとしてよく、これによって、ＩＣＮルータからのコンテンツ検索を誘導するべくコンテンツ到達可能性を定義するとしてよい。オープンショーテストパスファースト（ＯＳＰＦ）およびボーダーゲートウェイプロトコル（ＢＧＰ）等のインターネットルーティングプロトコルは、コンテンツルーティング処理のために、コンテンツプレフィクスを各ＩＣＮルータにポピュレートするべく拡張することが提案されている（例えば、ネットワーク内、ドメイン内またはグループ内）。
【００２２】
上記で示唆したように、ＩＣＮは、名称ベースルーティングおよびネットワーク内キャッシングを、ネットワークインフラストラクチャの基礎として、統合する。ＮＤＮを始めとして、ＩＣＮについてはいくつかの提案が既に存在する。ＮＤＮでは、通信は、Ｉｎｔｅｒｅｓｔパケット（またはメッセージ）およびＤａｔａパケット（またはメッセージ）という２種類のパケットのやり取りを通じて、受信側、つまり、データ消費者によって行われる。Ｉｎｔｅｒｅｓｔパケットでは、消費者は所望のデータの名称をＩｎｔｅｒｅｓｔパケットに入れて、ネットワークに送信する。ルータは、この名称を用いて、Ｉｎｔｅｒｅｓｔをデータ生成者に転送する。Ｄａｔａパケットでは、要求されたデータを持つノードにＩｎｔｅｒｅｓｔが到達すると、当該ノードは、名称およびコンテンツの両方を含むＤａｔａパケットを、これら２つを結ぶ生成者の鍵による署名と共に、返送する。Ｄａｔａパケットは通常、Ｉｎｔｅｒｅｓｔが辿った経路を逆に辿って、要求元の消費者に戻る。このプロセスを、図１を参照しつつ、以下でより詳細に説明する。
【００２３】
コンテキスト認識型コンテンツネットワーク内では、「コンテキスト」という用語はエンティティの状況を特徴付けるために用いられ得る情報であればどのような情報であってもよい。「エンティティ」という用語は、例えば、ユーザとアプリケーションとの間のやり取りに関連すると見なされる人物、場所または物体であってよく、ユーザ自体およびアプリケーション自体を含む。ユーザは、特定のコンテキストにおいてコンテンツを要求することが多い。例えば、（１）ユーザは、サイズ＜１００ＭＢ、サイズ＞２ＧＢおよび解像度＝１０８０Ｐという条件で表現されるコンテキストにおいて映画を要求する場合があり、（２）値＞華氏９０度および値＜華氏３０度という条件で表現されるコンテキストにおいて温度読出データを検索する場合があり、（３）最終価格＜２０ドルおよび店までの距離＜３０マイルという条件で表現されるコンテキストにおいてクーポンを検索する場合があるとしてよい。
【００２４】
ハイパーテキストトランスファープロトコル（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ、ＨＴＴＰ）およびコンストレインドアプリケーションプロトコル（Ｃｏｎｓｔｒａｉｎｅｄ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ、ＣｏＡＰ）等のアプリケーションレイヤプロトコルは、要求を条件付きとすることによって、ある程度までコンテキスト認識型をサポートしている。例えば、ＨＴＴＰでは以下のヘッダがみられる。
Ｉｆ−Ｍａｔｃｈ要求ヘッダフィールドリソースから以前に取得した１または複数のエンティティを持つクライアントは、それらのエンティティに関連付けられているエンティティタグのリストをＩｆ−Ｍａｔｃｈヘッダフィールドに含めることで、これらのエンティティのうち１つが現在のエンティティであることを証明し得る。
Ｉｆ−Ｍｏｄｉｆｉｅｄ−Ｓｉｎｃｅ要求ヘッダフィールド要求されたバリアントがこのフィールドにおいて指定された時点から修正されていない場合、エンティティはサーバから返送されない。
Ｉｆ−Ｎｏｎｅ−Ｍａｔｃｈ要求ヘッダフィールドリソースから以前に取得した１または複数のエンティティを持つクライアントは、それらのエンティティに関連付けられているエンティティタグのリストをＩｆ−Ｎｏｎｅ−Ｍａｔｃｈヘッダフィールドに含めることで、これらのエンティティのうちどれも現在のエンティティでないことを証明し得る。この特徴の目的は、トランザクションオーバーヘッドを最小限に抑えて、キャッシュされた情報を効率的に更新することを可能とする点にある。
Ｉｆ−Ｕｎｍｏｄｉｆｉｅｄ−Ｓｉｎｃｅ要求ヘッダフィールド要求されたリソースがこのフィールドにおいて指定された時点から修正されていない場合、Ｉｆ−Ｕｎｍｏｄｉｆｉｅｄ−Ｓｉｎｃｅヘッダが存在しないかのように、サーバは要求された処理を実行すべきである。
【００２５】
ＨＴＴＰと同様に、ＣｏＡＰではヘッダに含め得るオプションとして以下のものがある。
Ｉｆ−Ｍａｔｃｈオプションは、ターゲットリソースの１または複数の表現についてＥＴａｇが現在存在することまたはＥＴａｇの値を要求の条件とするために用いられるとしてよい。
Ｉｆ−Ｎｏｎｅ−Ｍａｔｃｈオプションは、ターゲットリソースが存在しないことを要求の条件とするために用いられるとしてよい。
【００２６】
このようなアプリケーションレイヤプロトコルは、コンテキスト認識をサポートするための下層ネットワークプロトコルを必要とする。しかし、下層ネットワークプロトコルの候補の一つとして挙げられるＮＤＮは、コンテンツ要求についてコンテキスト認識をサポートしない。コンテキスト情報を認識しないので、ＮＤＮルータは、要求されたコンテンツについて複数の生成者が存在する場合には、転送フェースを選択する際に正しい決断をできない場合がある。このため、クライアントに返送されたコンテンツがクライアントのコンテキスト要件を満たしていない場合、Ｉｎｔｅｒｅｓｔおよびコンテンツを搬送するためにネットワーク帯域幅が無駄になってしまう。これに代えて、ＮＤＮルータはＩｎｔｅｒｅｓｔを全てのフェースにマルチキャストすることができるが、複数の一致するコンテンツが複数の生成者から返送され得るので、ネットワークにかかる負荷が増えてしまう。
【００２７】
説明する実施形態は、ＩＣＮアーキテクチャ（例えば、ＮＤＮアーキテクチャ）においてコンテキスト認識をコンテンツ要求に追加すること、つまり、クライアント、ＮＤＮルータ（ＩＣＮの一例として挙げる）およびコンテンツ生成者がサポートするコンテキスト認識を開示する。クライアント側では、コンテキスト要件がコンテンツ要求Ｉｎｔｅｒｅｓｔメッセージに追加される。ＮＤＮルータ側では、コンテキスト要件を含むＩｎｔｅｒｅｓｔメッセージの受信に関する手順およびＤａｔａメッセージの受信を説明する。特に、Ｄａｔａメッセージが受信されると、ＮＤＮルータは、複数の異なる転送フェースにマッピングされている複数の異なる生成者に関して、コンテンツのコンテキスト情報を認知する。認知したコンテキスト情報はＦＩＢで保持される。ＦＩＢは、クライアントからの特定のコンテキスト要件を含むコンテンツ要求について、正しい転送フェースを決定する際にＮＤＮルータを支援するとしてよい。コンテンツ生成者側では、コンテキスト要件を含むＩｎｔｅｒｅｓｔメッセージを処理する手順についても以下で説明する。コンテンツ生成者は、返送されるＤａｔａメッセージに何らかの関連するコンテキスト情報をピギーバックするとしてよい。これによってさらに、今後のコンテンツ要求を適切に転送するようにＮＤＮルータを支援することができる。
【００２８】
図１は、情報指向ネットワークのコンテンツルータの実施形態を示す図である。コンテンツルータ１００は、ＩＣＮ等のネットワークにおいて、１または複数の他のコンテンツルータ（不図示）とコンテンツキャッシングについて協調するとしてよい。以下のように構成されているとしてよい。コンテンツルータ１００は、コンテンツストア（ＣＳ）１１０、処理中Ｉｎｔｅｒｅｓｔテーブル（ＰＩＴ）１２０および転送情報ベース（ＦＩＢ）１３０を備えるとしてよい。ＣＳ１１０は、コンテンツデータをキャッシュ（比較的短時間にわたる）または格納（比較的長時間にわたる）するために、（例えば、ストレージまたはメモリユニットにおいて）用いられるとしてよい。ＣＳ１１０はさらに、Ｉｎｔｅｒｅｓｔ（ユーザによるコンテンツの要求）を受信して、対応するコンテンツデータ（要求されたコンテンツ）と関連付けるとしてよい。 
【００２９】
ＰＩＴ１２０は、対応中または処理中（対応する要求されたコンテンツデータを受信するまで）の受信したＩｎｔｅｒｅｓｔ（コンテンツに対する要求）を記録して追跡するために用いられる任意のデータ構造（例えば、テーブル、リストまたはデータベース）であってよい。Ｉｎｔｅｒｅｓｔは、ＰＩＴ１２０において、Ｉｎｔｅｒｅｓｔが受信されたコンテンツルータ１００であって協調キャッシングを行っているコンテンツルータ１００のネクストホップ（または、ネクストホップインターフェースまたはネクストホップフェース）に関連付けられているとしてよい。
【００３０】
ＦＩＢ１３０は、コンテンツと、Ｉｎｔｅｒｅｓｔおよびコンテンツデータの受信先および転送先である（ネクストホップのための）対応するポートまたはフェースとを関連付けるために用いられる任意のデータ構造（例えば、テーブル、リストまたはデータベース）であってよい。ＦＩＢ１３０のエントリは、コンテンツ（ＩｎｔｅｒｅｓｔおよびＤａｔａ）の転送先であるネクストホップを示すとしてよい。ＦＩＢ１３０は、データプレーンまたは転送プレーンにおいて（コンテンツＩｎｔｅｒｅｓｔおよびＤａｔａを処理するべく）保持および管理され得るデータ構造またはサブデータ構造（例えば、データ構造内のデータ構造、例えば、テーブル、リストまたはデータベース（図２））であってよい。データプレーンは、ＣＯＮにおいてコンテンツ情報（ＩｎｔｅｒｅｓｔおよびＤａｔａ）を移動させるための処理を含むとしてよく、制御プレーンは、データプレーンの処理を含むネットワーク処理を制御することに関する処理を含むとしてよい。上記のデータ構造は、コンテンツルータ１００のストレージまたはメモリユニットにおいて格納および保持されるとしてよい。 
【００３１】
Ｉｎｔｅｒｅｓｔパケットおよびデータパケットの転送機能を実現するべく、コンテンツルータ１００（例えば、ＮＤＮルータ）は、上述した３つのデータ構造を保持する。つまり、（１）ルータが受信したＤａｔａパケットの一時的なキャッシュとして機能するＣＳ１１０、キャッシュされたＤａｔａパケットは今後のＩｎｔｅｒｅｓｔを満足させるために用いられるとしてよい。（２）ルータが転送したがまだ満足させていないＩｎｔｅｒｅｓｔをすべて格納しているＰＩＴ１２０、各ＰＩＴエントリは、送信元のインターフェースおよび送信先のインターフェースと共に、Ｉｎｔｅｒｅｓｔが保持しているデータ名を記録している。（３）名称コンポーネントをインターフェースにマッピングするルーティングテーブルとして機能するＦＩＢ１３０は、名称プレフィクスベースのルーティングプロトコルでポピュレートされており、各プレフィクスについて複数の出力インターフェースを持つとしてよい。これに加えて、コンテンツルータ１００は、パケットの転送を行うための、転送ポリシーおよび転送ルールを含むとしてよい。
【００３２】
一実施形態例において、コンテンツルータ１００が、例えば、要求元が要求したいコンテンツの名称を含むＩｎｔｅｒｅｓｔパケット（入力されるＩｎｔｅｒｅｓｔ）を受信すると、コンテンツルータ１００は最初に、ローカルにキャッシュされた当該コンテンツのコピーがＣＳ１１０に存在するか否かを判断するために確認する。 ローカルにキャッシュされた当該コンテンツのコピーがＣＳ１１０に存在する場合、コンテンツルータ１００は、Ｉｎｔｅｒｅｓｔの送信元のフェースにコンテンツのコピーを送信することによって、Ｉｎｔｅｒｅｓｔに対して応答することができる。
【００３３】
ローカルにキャッシュされた当該コンテンツのコピーが存在しない場合、コンテンツルータ１００は、同一コンテンツ名を持つ処理中のＩｎｔｅｒｅｓｔがＰＩＴ１２０に存在するか否かを判断するべく確認する。同一のＩｎｔｅｒｅｓｔが存在し処理中である場合、新しい方のＩｎｔｅｒｅｓｔの送信元のフェースが、ＰＩＴ１２０内のこのコンテンツ名のためのフェースリストに追加される。 したがって、新しい方のＩｎｔｅｒｅｓｔはこれ以上転送する必要はない。
【００３４】
そうでない場合、コンテンツルータ１００は、コンテンツ名に基づいてＦＩＢ１３０において、ロンゲストマッチルックアップ等のルックアップを実行することでＩｎｔｅｒｅｓｔを転送する。この後、ＩｎｔｅｒｅｓｔはＰＩＴ１２０に格納される。一致するエントリがＦＩＢ１３０に保持されていない場合、Ｉｎｔｅｒｅｓｔは、送信元のフェース以外のフェースに転送される。 
【００３５】
図２は、コンテキスト認識型ＩＣＮアーキテクチャの実施形態を示す図である。コンテキスト認識型ＩＣＮアーキテクチャは、コンテキストベースのネットワーキングフレームワークを提供するために用いられるとしてよい。コンテキスト認識型ＩＣＮアーキテクチャは、ユーザノード２１０（例えば、スマートモバイルデバイス）、コンテンツルーティングノード２２０（例えば、スマートコンテンツルーティングデバイス）および他の搬送／中継／サービスネットワークノード２３０（例えば、スマートメディア搬送／中継／サーバデバイス）の間で、複数の異なる論理層またはサービスのマッピングを行うとしてよい。「スマート」という用語は本明細書において、コンテキストに対する対応、処理、ルーティングおよびキャッシング／格納が改良された構成を持つデバイスを意味するために用いられている。
【００３６】
ユーザノード２１０は、コンテキストベースのサービスまたは処理のための複数の論理ブロックまたは論理コンポーネントを含むとしてよく、アプリケーション２１０Ａ、アプリケーションコンテキスト２１０Ｂ、コンテンツ配信コンテキスト２１０Ｃ、アクセス適応化２１０Ｄ、および、例えば、モバイルユーザのための無線インターフェース（例えば、ニアフィールドコミュニケーション（ＮＦＣ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ワイヤレスフィデリティ（ＷｉＦｉ）（登録商標）、第３／第４世代モバイル通信技術（３Ｇ／４Ｇ））等のアクセス技術またはインターフェース２１０Ｅを含む。スマートコンテンツルーティングデバイス２２０はさらに、コンテキストベースのサービスまたは処理のための複数の論理ブロックまたは論理コンポーネントを含むとしてよい。これらは、サービス配信コンテキスト２２０Ａ、コンテンツ配信コンテキスト２２０Ｂ、コンテンツルーティングおよびストレージ２２０Ｃ、ならびに、戦略的コンテンツ搬送適応化２２０Ｄを含む。搬送／中継／サーバノード２３０（例えば、スマートメディア搬送／中継／サーバデバイス）もまた、コンテキストベースのサービスまたは処理のための複数の論理ブロックまたは論理コンポーネントを含むとしてよい。これらは、アプリケーションコンテキスト２３０Ａ、コンテンツ配信コンテキスト２３０Ｂおよびコンテンツ搬送ネットワーク適応化２３０Ｃを含む。 
【００３７】
図３は、図１および図２のルータが保持するデータ構造を示す。クライアント側からコンテキスト認識をサポートするべく、クライアントは、条件として表現される任意のコンテキスト要件を含むＩｎｔｅｒｅｓｔメッセージを開始するとしてよい。条件は例えば、コンテキスト名、処理者およびコンテキスト値で表現されるとしてよい。コンテキストに関して上記で挙げた例は、適用され得るコンテキスト値、処理者およびコンテキスト名の種類を表現するものであるが、これに限定されない。複数のコンテキスト要件を処理者がＡＮＤ、ＯＲ等で結合する場合がある。例えば、コンテキスト要件を含むＩｎｔｅｒｅｓｔメッセージは以下のようになるとしてよい。
【表１】
0006601784.tif 000002
【００３８】
条件はコンテキスト名、処理者およびコンテキスト値に限定されないものと考えられたい。
【００３９】
図３の例では、ＩＣＮルータ（例えば、ＮＤＮルータ）を例示を目的として用いている。ＮＤＮルータは、ＣＳ３０５、ＰＩＴ３１０およびＦＩＢ３１５という３つのデータ構造を保持（格納）している。これらは、例えば、図１で開示しているＣＳ１１０、ＰＩＴ１２０およびＦＩＢ１３０と同一であってよい。これに加えて、条件として表現される関連コンテキスト情報もそれぞれ、ＣＳ３０５、ＰＩＴ３１０およびＦＩＢ３１５に記録する。例えば、コンテンツ名は「／ｅｘａｍｐｌｅ．ｃｏｍ／ｍｏｖｉｅ１」であり、コンテキスト要件はサイズ＞１ＧＢである。 
【００４０】
以下に記載する例では、ＮＤＮルータ１００がコンテキスト要件を持つＩｎｔｅｒｅｓｔメッセージを受信することに関連する手順を説明する。ＮＤＮルータ１００は、これに応じて、ＰＩＴ３１０を更新するための処理を実行する。これに加えて、ＮＤＮルータ１００がＤａｔａメッセージを受信することに関する手順を説明する。ＮＤＮルータ１００は、ＣＳ３０５、ＰＩＴ３１０およびＦＩＢ３１５を更新するための処理を実行する。以下に記載する例は限定的ではないと考えられたい。
【００４１】
図４Ａは、図１および図２に応じたＩｎｔｅｒｅｓｔメッセージをルータが受信する場合を説明するフロー図である。具体的には、同図はコンテキスト要件を含むＩｎｔｅｒｅｓｔメッセージの受信を説明している。４０２ＡにおいてＮＤＮルータ１００がコンテキスト要件（例えば、条件を含む）を含むＩｎｔｅｒｅｓｔを受信すると、ＮＤＮルータ１００が実行する動作は、４０４Ａにおいて、一致するコンテンツが存在するか否かを判断するべくＣＳ３０５を確認することを含む。
【００４２】
４０６ＡにおいてＮＤＮルータ１００がコンテキスト要件を満足させる一致するコンテンツがＣＳ３０５に格納されていると判断すると、４０８ＡにおいてＮＤＮルータ１００はキャッシュされているコンテンツをクライアント（要求元のクライアント）に返送し、Ｉｎｔｅｒｅｓｔをドロップする。 コンテンツをＣＳ３０５にキャッシュすることに加えて、関連するコンテキスト情報もまたＣＳ３０５に保持されるとしてよい。 
【００４３】
一方、一致するコンテンツがＣＳ３０５に格納されていない場合、４１０Ａにおいて、ＮＤＮルータ１００は同一コンテンツ名のエントリがＰＩＴ３１０に存在するか否かを判断する。このようなエントリがＰＩＴ３１０に存在する場合、４１２Ａにおいて、ＮＤＮルータ１００は受信したコンテキスト要件が、ＰＩＴ３１０に既に存在するコンテキスト要件と統合可能であるか否かを確認する。例えば、既に存在するコンテキスト要件が「サイズ＞１ＧＢ」であり、入力されたＩｎｔｅｒｅｓｔのコンテキスト要件が「サイズ＞５００Ｍ」である場合、入力されたＩｎｔｅｒｅｓｔは統合することが可能である。したがって、入力されたＩｎｔｅｒｅｓｔの送信元のフェースおよび関連付けられているコンテキスト要件は、ＰＩＴ３１０に既に存在するエントリに追加される。 
【００４４】
４１２Ａにおいて、ＮＤＮルータ１００がコンテキスト要件はＰＩＴ３１０に既に存在するコンテキスト要件と統合できないと判断する場合、または、同一コンテンツ名のエントリがＰＩＴ３１０に存在しない場合、４１６Ａにおいて、ＮＤＮルータ１００は入力されたＩｎｔｅｒｅｓｔについてＦＩＢ３１５において転送フェース（コンテンツ名）を確認する（処理は図４Ｂに続く）。
【００４５】
図４Ｂは、図１および図２に応じたＩｎｔｅｒｅｓｔメッセージを受信するルータを説明するためのフロー図である。同図のプロセスは、図４Ａに説明したプロセスの続きである。以下に記載する例では、４１６Ａ（図４Ａ）における確認の結果、４０２Ｂにおいて、ＮＤＮルータ１００はＩｎｔｅｒｅｓｔと同一コンテンツ名を持つエントリがＦＩＢ３１０に存在するか否かを判断する。エントリが存在する場合、４０４Ｂにおいて、ＮＤＮルータ１００は、ＦＩＢ３１０では１または複数の転送フェースが当該コンテンツ名に関連付けられていると分かるか否かを判断する。しかし、これは単に一例であり複数の転送フェースが関連付けられ得ると考えられたい。
【００４６】
４０４ＢにおいてＮＤＮルータ１００が１つの転送フェースが存在すると判断すると、４１６ＢにおいてＮＤＮルータ１００は、当該転送フェースにコンテキスト情報が関連付けられているか否かを判断する。ＮＤＮルータ１００が当該転送フェースに関連付けられているコンテキスト情報がないと判断すると、４２０ＢにおいてＮＤＮルータ１００はＩｎｔｅｒｅｓｔを当該フェースに転送し、４２２ＢにおいてＩｎｔｅｒｅｓｔは、Ｉｎｔｅｒｅｓｔに含まれている対応するコンテキスト要件と共に、ＰＩＴ３１０に入れられる。
【００４７】
４１６ＢにおいてＮＤＮルータ１００が転送フェースに関連付けられているコンテキスト情報があると判断する場合、４１８ＢにおいてＮＤＮルータ１００は関連付けられているコンテキスト情報がクライアントが特定したコンテキスト要件に反するか否かを確認する。つまり、４１８ＢにおいてＮＤＮルータ１００は、コンテキスト要件を、同一コンテキスト名を持つ関連付けられているコンテキスト情報とマッチングする。別のコンテキスト名を持つ、転送フェースに関連付けられている別のコンテキスト情報が存在する場合、この「別の」コンテキスト情報は無視する。例えば、図３に示す例では、コンテンツ名「ｅｘａｍｐｌｅ．ｃｏｍ／ｍｏｖｉｅ１」は、コンテンツ検索について「サイズ＞１ＧＢ」というコンテキスト要件を持つ。ＦＩＢ３１５では、転送フェースに関連付けられているコンテキスト情報が２つある（フェースリスト＝２）。したがって、「サイズ」という名称を持つコンテキスト情報のみが比較される一方、「別の」コンテキスト情報（例えば、解像度＝１０８０ｐ）は無視する。
【００４８】
一致するものがない場合、４１４ＢにおいてＮＤＮルータ１００はＩｎｔｅｒｅｓｔをドロップして、失敗応答をクライアント側に返送する。任意で、ＮＤＮルータ１００は、Ｉｎｔｅｒｅｓｔの送信元のフェースまたはＦＩＢ３１５で保持されているフェース以外のフェースにＩｎｔｅｒｅｓｔをブロードキャストするとしてよい。 
【００４９】
４１８ＢにおいてＮＤＮルータ１００が一致すると判断した場合、４２０ＢにおいてＮＤＮルータ１００はＩｎｔｅｒｅｓｔをフェースに転送する。続いて、４２２ＢにおいてＩｎｔｅｒｅｓｔは、ＰＩＴ３１０に含まれている対応するコンテキスト要件と共に、統合されたコンテンツとして、ＰＩＴ３１０に入れられる。
【００５０】
４０４ＢにおいてＮＤＮルータ１００が複数の転送フェースがコンテンツ名に関連付けられていると判断する場合、４０６ＢにおいてＮＤＮルータ１００は、コンテキスト要件と、転送フェースに関連付けられているコンテキスト情報とを比較して、４１２ＢにおいてＮＤＮルータ１００は一致するコンテキストを含むフェースを選択する。 
【００５１】
４０６Ｂにおいて一致する転送フェースが存在しない場合、４０８ＢにおいてＮＤＮルータ１００はクライアントが特定したコンテキスト要件に反するフェースを除外することができる。４０８Ｂで決定した残りのフェースの中から、４１０ＢにおいてＮＤＮルータ１００は転送フェースを選択する。選択は任意の公知の技術を用いて、例えば、ランダムに、最短距離等の基準に基づいて、または、サーバのロードバランシングのためにラウンドロビン方式で行うとしてよい。この後４２２Ｂにおいて、Ｉｎｔｅｒｅｓｔは、対応するコンテキスト要件と共に、ＰＩＴ３１０に入れられる。
【００５２】
図５は、図１および図２に応じたＤａｔａメッセージをルータが受信する場合を説明するためのフロー図である。コンテキスト要件を持つＩｎｔｅｒｅｓｔを、コンテキスト要件を満足させるコンテンツを提供するデータ生成者が受信する場合、データ生成者は、同一経路を逆に辿ってクライアント側へとＤａｔａメッセージでコンテンツを返送する。一実施形態において、データ生成者は、コンテキスト要件に含まれている同一コンテキスト名に関連する値をピギーバックする。例えば、図３を参照して説明すると、「ｅｘａｍｐｌｅ．ｃｏｍ／ｍｏｖｉｅ１」という名称を持つコンテンツを検索するためのコンテキスト要件は「サイズ＞１ＧＢ」である。この例では、データ生成者は提供可能なコンテンツのサイズに関するコンテキスト情報をピギーバックする（または添付する）。
【００５３】
このため、一実施形態では、ＮＤＮルータ１００は、通信経路にいる場合、データ生成者について同一名称を持つ完全なコンテキスト情報を認知するとしてよい。例えば、データ生成者は、２００ＭＢ＜サイズ＜６００ＭＢ等のコンテキスト情報を持つコンテンツを提供することができる。このようにピギーバックされる情報（生成者が提供し得るコンテンツのコンテキスト情報）は、Ｄａｔａメッセージの破壊を回避するべく、同一名称（例えば、サイズ）に関連するコンテキスト情報を含む。一方、元のコンテキスト要件もＤａｔａメッセージにピギーバックされるとしてよい（返送されたデータのコンテキスト情報）。これによって、通信経路にいるＮＤＮルータ１００は、Ｄａｔａメッセージを対応するクライアント側に転送することができる。
【００５４】
５０２において、ＮＤＮルータ１００はＤａｔａメッセージを受信する。５０８において、ＮＤＮルータ１００は、返送されたデータにピギーバックされたコンテキスト情報と、同一コンテンツ名を持つＰＩＴ３１０に格納されているコンテキスト情報とを比較する。５１４において同一コンテンツ名および一致するコンテキスト要件を持つ処理中のＩｎｔｅｒｅｓｔがＰＩＴ３１０に格納されている場合、５１６においてＩｎｔｅｒｅｓｔの元の（最初の）送信元のフェースにＤａｔａメッセージを転送する（そして、５１８においてＤａｔａメッセージの転送を停止する）。ＰＩＴ３１０で処理中のＩｎｔｅｒｅｓｔが見当たらない場合、５１８においてＮＤＮルータ１００はＤａｔａメッセージの転送を停止する。 
【００５５】
これと並行して、ＮＤＮルータ１００は、残りの処理（５０４、５１０、５１２および５０６）を実行する。これらは任意でバックグラウンドで処理されるとしてもよい。例えば、５０６において、ＮＤＮルータ１００は、ローカルキャッシング基準に基づいてＤａｔａメッセージをキャッシュするか否かを判断する。５０４において、Ｄａｔａメッセージは（キャッシュされてもされなくても）、ＣＳ３０５に格納されているコンテキスト情報に関連付けられる。Ｄａｔａメッセージが、生成者が提供し得るであろうコンテンツのコンテキスト情報（一実施形態では、元々要求されたコンテンツと同一名称）をピギーバックしている場合、５２０において、ＮＤＮルータ１００はコンテキスト情報を記録してＦＩＢ３１５において対応するフェースに関連付ける。一方、５０４における判断結果について、生成者が提供し得るコンテンツのコンテキスト情報がピギーバックされていない場合、５１２においてフェースのコンテキストは特定されない（空の）ままである。
【００５６】
図６Ａは、図１のルータにおいて転送情報ベースを更新する場合を説明するためのシーケンス図である。同図では、コンテキスト認識型コンテンツ要求がＩＣＮネットワーク、例えば、ＮＤＮルータによってどのようにサポートされているかを示す。以下に記載する例は限定的ではないと考えられたい。同シーケンス図では、複数のクライアント（例えば、クライアント１（６０５）、クライアント２（６０３）およびクライアント３（６０１））、ルータ（例えば、ルータ１）、複数のフェース（例えば、フェース１ネクストホップルータ６０９およびフェース２ネクストホップルータ６１１）ならびに複数の生成者（例えば、サーバ１（６１３）およびサーバ２（６１５）を示す。同図では、破線は特定のクライアントとの交渉を表す。
【００５７】
クライアント１（６０５）は、 コンテンツ名（つまり、「ｍｏｖｉｅ．Ｆｒｏｚｅｎ」）およびコンテキスト要件（つまり、サイズ＜２００ＭＢ）を含むＩｎｔｅｒｅｓｔを付随するルータ１（６０７）に送信する。ＦＩＢ３１５のデータ構造によると（クライアント１（６０５）の要求が処理される前）、プレフィクス「ｍｏｖｉｅ．Ｆｒｏｚｅｎ」はルータ１（６０７）に存在する。ルータ１（６０７）は、フェースリストによれば（例えば、「ルータ１内のＦＩＢ」という名称のテーブルを参照されたい）、２つの転送フェース、例えば、フェース１ネクストホップルータ６０９およびフェース２ネクストホップルータ６１２を持つ。６０７Ａにおいて、ルータ１（６０７）は、例えばランダムに、Ｉｎｔｅｒｅｓｔを転送するべくこれらのフェースのうち１つを選択する。これによって、Ｉｎｔｅｒｅｓｔメッセージを搬送する際のオーバーヘッドが抑制される。 
【００５８】
この例では、フェース１ネクストホップルータ６０９が選択される。フェース１ネクストホップルータ６０９はこの後、Ｉｎｔｅｒｅｓｔを生成者のうち１つ、例えば、サーバ１（６１３）またはサーバ２（６１５）（この場合はサーバ１が選択される）に転送する。サーバ１（６１３）は、Ｉｎｔｅｒｅｓｔ要求を処理して、コンテンツ名およびコンテキスト要件を抽出する。 サーバ１（６１３）はこの後、格納されている情報に基づいて、一致するコンテキスト情報を持つコンテンツデータを提供可能であると判断する。サーバ１（６１３）は、コンテンツデータで応答し、返送するコンテンツの元のコンテキスト要件（つまり、サイズ＜２００ＭＢ）と共に、コンテンツのコンテキスト情報（つまり、２００ＭＢ＜サイズ＜６００ＭＢ、これはサーバ１（６１３）がコンテンツ「ｍｏｖｉｅ．Ｆｒｏｚｅｎ」について提供可能な全てのサイズを示す）をピギーバックする。 コンテンツは、逆経路を辿ってルータ１（６０７）に転送され、ルータ１（６０７）はコンテンツをクライアント１（６０５）に返送する。
【００５９】
逆経路を辿ってコンテンツを転送している間、ルータ１は、６０７Ｂにおいて、ローカルキャッシング基準に基づいて、転送したコンテンツをキャッシュする。キャッシュされたコンテンツが持つコンテキスト情報はサイズ＜２００ＭＢである。ルータ１は、６０７Ｂにおいて、ピギーバックされたコンテキスト情報を、転送フェース１ネクストホップルータ６０９に関連付けて、コンテキスト情報「２００ＭＢ＜サイズ＜６００ＭＢ」を持つコンテンツ「ｍｏｖｉｅ．Ｆｒｏｚｅｎ」がフェース１ネクストホップルータ６０９を介して返送され得る旨を示す。 これは、クライアント１（６０５）からの要求を処理した後のルータ１（６０７）のＦＩＢ３１５において示されている（例えば、「クライアント１の要求の後のルータ１内のＦＩＢ」と題したテーブルを参照されたい）。
【００６０】
続いて、クライアント２（６０３）は、 コンテンツ名（つまり、「ｍｏｖｉｅ．Ｆｒｏｚｅｎ」）およびコンテキスト要件（つまり、サイズ＜３００ＭＢ）を含むＩｎｔｅｒｅｓｔを付随するルータ１（６０７）に送信する。ルータ１（６０７）は、クライアント１（６０５）の要求の後で更新されたＦＩＢ３１５に基づいて、コンテキスト要件を満たすローカルキャッシュされたコピーを発見し、当該コピーをクライアント２（６０３）に返送する。この後Ｉｎｔｅｒｅｓｔはルータ１（６０７）においてドロップされる。
【００６１】
図６Ｂは、図１のルータの転送情報ベースを更新する場合を説明するためのシーケンス図であり、図６Ａの続きである。クライアント２（６０３）の要求がルータ１（６０７）で処理された後、クライアント３（６０１）が、 コンテンツ名（つまり、「ｍｏｖｉｅ．Ｆｒｏｚｅｎ」）およびコンテキスト要件（つまり、サイズ＞１ＧＢ）を含むＩｎｔｅｒｅｓｔを付随するルータ１（６０７）に送信する。ルータ１ （６０７）は、フェース１ネクストホップルータ６０９を除外（またはホップ）することができ、６０７Ｄにおいて要求をフェース２ネクストホップルータ６１１に送信する。これは、ＦＩＢ３１５内で関連付けられているコンテキスト情報（つまり、２００Ｍ＜サイズ＜６００Ｍ）がＩｎｔｅｒｅｓｔのコンテキスト要件（つまり、サイズ＞１ＧＢ）を満たしていないためである。 ルータ１（６０７）はこのように、Ｉｎｔｅｒｅｓｔをフェース２ネクストホップルータ６１１に転送するという決断を下す点において「コンテキストを認識している」と見なされる。 
【００６２】
フェース２ネクストホップルータ６１１はこの後、Ｉｎｔｅｒｅｓｔを生成者のうち１つ、例えば、サーバ１（６１３）またはサーバ２（６１５）（この場合はサーバ２）に転送する。サーバ２（６１５）は、Ｉｎｔｅｒｅｓｔ要求を処理して、コンテンツ名およびコンテキスト要件を抽出する。サーバ２（６１５）は、格納されている情報に基づいて、一致するコンテキスト情報を持つコンテンツデータを提供可能であると判断する。したがって、サーバ２（６１５）は、コンテンツデータで応答し、返送するコンテンツの元のコンテキスト要件（例えば、サイズ＞１ＧＢ）と共に、コンテンツのコンテキスト情報（例えば、１ＧＢ＜サイズ＜３ＧＢ、これはサーバ２（６１５）がコンテンツ「ｍｏｖｉｅ．Ｆｒｏｚｅｎ」について提供可能な全てのサイズを示す）をピギーバックする。
【００６３】
コンテンツは逆経路を辿ってルータ１（６０７）へと転送される。ルータ１（６０７） は、コンテンツをクライアント２（６０３）に返送し、ルータ１（６０７）は、記憶容量に限度があるので、ローカルキャッシュ基準に基づき、コンテンツをキャッシュしないと判断する。ルータ１（６０７）は、６０７Ｅにおいて、ピギーバックされたコンテキスト情報を、転送フェース２ネクストホップルータ６１１に関連付けて、コンテキスト情報「１ＧＢ＜サイズ＜３ＧＢ」を持つコンテンツ「ｍｏｖｉｅ．Ｆｒｏｚｅｎ」がフェース２ネクストホップルータ６１１を介して返送され得る旨を示す（例えば、「クライアント２およびクライアント３の要求の後のルータ１内のＦＩＢ」と題したテーブルを参照されたい）。
【００６４】
図７は、本開示の実施形態に応じたルータの実施形態を示す図である。ノード（例えば、ルータ）７００は、例えば、コンテンツルータ１００（図１）または上述したようにＩＣＮにおける任意のその他のノードまたはルータであってよい。ノード７００は、複数の入出力ポート７１０／７３０、ならびに／または、他のノードからデータを送受信するための受信機（Ｒｘ）７１２および送信機（Ｔｘ）７３２を備えるとしてよく、プロセッサ７２０（または、コンテンツ認識ユニット）は、ストレージ７２２およびプログラミング可能コンテンツ転送プレーン７２８を含み、データを処理しどのノードにデータを送信するかを判断する。ノード７００はまた、上述したように、ＩｎｔｅｒｅｓｔメッセージおよびＤａｔａメッセージを受信するとしてよい。プロセッサ７２０は、単一プロセッサとして図示しているが、これに限定されず複数のプロセッサを含むとしてもよい。プロセッサ７２０は、１または複数の中央演算処理装置（ＣＰＵ）チップ、コア（例えば、マルチコアプロセッサ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ａｐｐｌｉｃａｔｉｏｎ  ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔｓ、ＡＳＩＣ）および／またはデジタルシグナルプロセッサ（ＤＳＰ）として実装されるとしてよく、ならびに／または、１または複数のＡＳＩＣの一部であってよい。プロセッサ７２０は、実施形態で説明したステップのいずれか１つまたはそれらの組み合わせを用いて、本明細書で説明する方式、例えば、図３から図６Ｂに図示したプロセス等であればいずれを実装するよう構成されているとしてよい。さらに、プロセッサ７２０は、ハードウェア、ソフトウェアまたは両方を用いて実装するとしてよい。
【００６５】
ストレージ７２２（またはメモリ）は、キャッシュ７２４および長期ストレージ７２６を含むとしてよく、ルーティングテーブル、転送テーブルもしくは他のテーブルまたは本明細書で開示した情報を格納するよう構成されているとしてよい。ストレージ７２２は、単一のストレージとして図示しているが、リードオンリーメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、または、セカンダリストレージ（例えば、データを不揮発に格納するために用いられる１または複数のディスクドライブまたはテープドライブ）を組み合わせたものとして実装されるとしてもよい。
【００６６】
プログラミング可能コンテンツ転送プレーン７２８は、アプリケーションレイヤまたはＬ３等において、コンテンツ転送および処理機能を実装するよう構成されているとしてよい。ここで、コンテンツは、コンテンツ名またはプレフィクスに基づいて、そして、可能であればコンテンツをネットワークトラフィックにマッピングするその他のコンテンツ関連情報にも基づいて、転送されるとしてよい。このようなマッピング情報は、プロセッサ７２０の１または複数のコンテンツテーブル（例えば、ＣＳ、ＰＩＴ、ＦＩＢ）で保持されるとしてよい。プログラミング可能コンテンツ転送プレーン７２８は、コンテンツに対するユーザ要求を解釈して、それにしたがって、例えば、メタデータおよび／またはコンテンツ名（プレフィクス）に基づいて、コンテンツをネットワークまたは他のコンテンツルータからフェッチして、コンテンツを、例えば、一時的に、ストレージ７２２に格納するとしてよい。プログラミング可能コンテンツ転送プレーン７２８はこの後、キャッシュされたコンテンツをユーザに転送するとしてよい。プログラミング可能コンテンツ転送プレーン７２８は、ソフトウェア、ハードウェアまたは両方を用いて実装するとしてよく、ＩＰレイヤまたはＬ２より上層で動作するとしてよい。 
【００６７】
図８は、さまざまな実施形態を実装するために用いられ得るネットワークシステムを示すブロック図である。具体的なデバイスは、図示しているコンポーネントの全てを利用するとしてもよいし、または、図示しているコンポーネントのうち一部のみを利用するとしてもよく、集積化の程度はデバイス毎に異なるとしてよい。さらに、デバイスは一のコンポーネントの複数のインスタンス、例えば、複数の処理ユニット、プロセッサ、メモリ、送信機、受信機等を含むとしてもよい。ネットワークシステムは、ネットワークインターフェース、ストレージインターフェース等の１または複数の入出力デバイスを備える処理ユニット８０１を備えるとしてよい。処理ユニット８０１は、バスに接続されている中央演算処理装置（ＣＰＵ）８１０、メモリ８２０、大容量ストレージデバイス８３０、および、入出力インターフェース８６０を有するとしてよい。バスは、任意の種類の複数のバスアーキテクチャのうち１または複数であってよく、メモリバスまたはメモリコントローラ、周辺バス等を含む。
【００６８】
ＣＰＵ８１０は、任意の種類の電子データプロセッサを含むとしてよい。メモリ８２０は、任意の種類のシステムメモリを含むとしてよく、スタティックランダムアクセスメモリ（ＳＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、これらの組み合わせ等を含むとしてよい。ある実施形態において、メモリ８２０は、起動時に利用するためのＲＯＭと、プログラム実行中に利用するためのプログラムおよびデータを格納するＤＲＡＭとを含むとしてよい。実施形態において、メモリ８２０は非一時的なメモリである。大容量ストレージデバイス８３０は、データ、プログラムおよびその他の情報を格納し、バスを介してデータ、プログラムおよびその他の情報にアクセス可能とするよう構成されている任意の種類のストレージデバイスを含むとしてよい。大容量ストレージデバイス８３０は、例えば、ソリッドステートドライブ、ハードディスクドライブ、磁気ディスクドライブ、光ディスクドライブ等のうち１または複数を含むとしてよい。
【００６９】
処理ユニット８０１はさらに、ノードまたは１もしくは複数のネットワーク８８０へアクセスするためのＥａｔｈｅｒｎｅｔ（登録商標）ケーブル等の有線リンクおよび／または無線リンクを含み得る１または複数のネットワークインターフェース８５０を含む。ネットワークインターフェース８５０によって、処理ユニット８０１はネットワーク８８０を介してリモートユニットと通信できるようになる。例えば、ネットワークインターフェース８５０は、１または複数の送信機／送信アンテナおよび１または複数の受信機／受信アンテナを介して無線通信を提供するとしてもよい。ある実施形態では、処理ユニット８０１は、他の処理ユニット、インターネット、リモートストレージ施設等のリモートデバイスとの通信およびデータ処理のためにローカルエリアネットワークまたはワイドエリアネットワークに結合されている。 
【００７０】
実施形態に応じて、ＩＣＮアーキテクチャにおけるコンテンツ要求についてコンテキスト認識をサポートするためのメカニズムが提供される。プロトコルへの変更は最小限に抑えつつ、ＩＣＮアーキテクチャおよび基礎的設計原理を活用してそれらに基づいて構築する。ルータはコンテンツのコンテキスト情報およびその生成者を、余分なオーバーヘッドを発生させることなく、認知することができる。ルータは、今後のコンテンツ要求のために、コンテキスト情報を転送フェースと関連付けることができる。したがって、当該システムは、クライアントの要求を満足させることができないコンテンツの搬送に利用されるネットワーク帯域幅が大幅に減少し、ルータは、クライアントのコンテキスト要件を満たすコンテンツにつながる転送フェースを選択する際に正しい決断を下せるので、コンテンツ要求の失敗が少なくなり、ルータは、存在する場合には複数の転送フェースの全てにＩｎｔｅｒｅｓｔメッセージをマルチキャストする必要がなくなったので、Ｉｎｔｅｒｅｓｔメッセージの搬送に利用されるネットワーク帯域幅が減少したと同様に、関連する各ルータが保持する制御状態も減少する。
【００７１】
上述したコンテキスト認識型コンテンツメカニズムにより、これらに限定されないが、下記に挙げるようにいくつかの利点が得られる。（１）任意でコンテキスト要件を条件として表現するＩｎｔｅｒｅｓｔメッセージ形式を利用したクライアント側からのコンテキスト認識。条件はコンテキスト名、処理者およびコンテキスト値で表現される。（２）クライアントからのコンテキスト要件を含むＩｎｔｅｒｅｓｔメッセージを処理し、コンテキスト要件をフェースのコンテキスト情報とマッチングすることで転送フェースを決定し、コンテキスト要件が重なることで処理中のＩｎｔｅｒｅｓｔを統合し、Ｄａｔａメッセージを処理し、そして、対応する処理中のＩｎｔｅｒｅｓｔから認知したコンテキスト情報または生成者がピギーバックしたコンテキスト情報を関連付けることで、ルータ側からコンテキスト認識をサポートする。（３）コンテキスト要件を含むＩｎｔｅｒｅｓｔメッセージを処理し、要求されたコンテンツの関連するコンテキスト情報をＤａｔａメッセージにピギーバックすることでコンテンツ生成者側からコンテキスト認識をサポートする。
【００７２】
これに加えて、上記で開示されたメカニズムは、コンテンツ要求におけるコンテキスト認識を可能とする。この解決手段により、ＩＣＮプロトコル（例えば、ＮＤＮプロトコルおよびプリミティブ）は、ＩｏＴアプリケーションの下層プロトコルとしてより適切となり、ネットワーク全体で全てのコンテンツの全てのコンテキスト情報を明示的にブロードキャストするようコンテンツ生成者に要求せず、ルータはコンテンツのコンテキスト情報およびその生成者を暗示的に認知することができる。このため、この解決手段によりルータは要求されたコンテキストを持つコンテンツを提供できるコンテンツ生成者につながる転送フェースを正しく決断でき、全ての転送フェースにＩｎｔｅｒｅｓｔメッセージをマルチキャストすることがなくなるのでルータが保持する制御状態が減少する。
【００７３】
本開示のさまざまな実施形態に応じて、本明細書で説明した方法はソフトウェアプログラムを実行するハードウェアコンピュータシステムを利用して実装されるとしてよい。さらに、一例でありそれに限定されない実施形態では、実装は分散型処理、コンポーネント／オブジェクト分散型処理、および、並列処理を含むとしてもよい。仮想コンピュータシステム処理は、本明細書で説明した方法または機能のうち１または複数を実装するように構築され得る。本明細書で説明したプロセッサは仮想処理環境をサポートするために利用され得る。 
【００７４】
本開示の態様は、本開示の実施形態に係る方法、装置（システム）およびコンピュータプログラム製品を説明するブロック図ならびに／またはフローチャートによる図示を参照しつつ本明細書で説明した。ブロック図および／またはフローチャートによる図示の各ブロック、ならびに、ブロック図および／またはフローチャートによる図示のブロック同士の組み合わせはコンピュータプログラム命令によって実装可能と理解されたい。このようなコンピュータプログラム命令は、機械を製造するべく汎用コンピュータ、特定用途向けコンピュータまたはその他のプログラミング可能データ処理装置のプロセッサに提供されるとしてよく、これによって、コンピュータまたはその他のプログラミング可能命令実行装置のプロセッサ で実行されることで、これらの命令は、フローチャートおよび／またはブロック図の一または複数のブロックで規定されている機能／動作を実装するためのメカニズムを作成する。 
【００７５】
本明細書で用いる用語は、特定の態様を説明することのみを目的としており、本開示を限定する意図はない。本明細書で用いる場合、「ａ」、「ａｎ」および「ｔｈｅ」で示される単数形は、文脈から明確にそうでないと分からない限り、複数形も同様に含むことを意図している。さらに、「ｃｏｍｐｒｉｓｅｓ」および／または「ｃｏｍｐｒｉｓｉｎｇ」という用語は本明細書で用いられる場合、記載した特徴、整数、ステップ、処理、要素および／またはコンポーネントが存在すると特定しているが、１または複数のその他の特徴、整数、ステップ、処理、要素、コンポーネントおよび／またはこれらの群が存在することまたは追加されることを除外するものではないと理解されたい。
【００７６】
本開示の説明は、例示および説明を目的として記載されたが、全てを網羅することを意図したものではなく、または、開示した形態に限定されることを意図したものでもない。本開示の範囲および意図から逸脱することなく、当業者には、多くの点で修正および変更し得ることが明らかであろう。本明細書の開示の態様は、本開示の原理および実際に適用する場合を説明し易いように、そして、検討している特定の用途に合わせて適宜さまざまな修正を本開示に加えることを当業者が理解できるように選択して記載されたものである。
【００７７】
本文献の目的に鑑みて、開示された技術に対応付けられている各処理は、継続的に１または複数のコンピューティングデバイスによって実行されるとしてよい。プロセスの各ステップは、他のステップで利用されるものと同一または異なるコンピューティングデバイスで実行されるとしてよく、各ステップは必ずしも単一のコンピューティングデバイスで実行する必要はない。
【００７８】
構造上の特徴および／または方法論の視点から見た処理に特有の用語で主題を説明してきたが、添付した特許請求の範囲で定義されている主題は必ずしも、上述した特定の特徴または処理に限定されるわけではないと理解されたい。逆に、上述した特定の特徴および処理は、請求項を実装する形態の例として開示されているものである。
［項目１］
ネットワークにおいてコンテキスト認識型コンテンツ検索をサポートする方法であって、
コンテンツ名およびコンテキスト要件を含むＩｎｔｅｒｅｓｔメッセージを受信する段階と、
上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツ名がメモリに格納されているコンテンツ名と一致するか否かを判断するべく上記メモリにアクセスする段階であって、上記メモリは、コンテンツをキャッシュするコンテンツストア、処理中のＩｎｔｅｒｅｓｔメッセージを追跡する処理中Ｉｎｔｅｒｅｓｔテーブル（ＰＩＴ）、および、コンテンツ情報と１または複数のインターフェースとを関連付ける転送情報ベース（ＦＩＢ）のうち少なくとも１つを含む、段階と、
上記メモリに格納されているコンテンツ名が上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツ名に一致することに応じて、上記ＦＩＢに格納されている上記インターフェースのうち１または複数が上記コンテンツ名に関連付けられているか否かを判断し、且つ、上記Ｉｎｔｅｒｅｓｔメッセージに含まれる上記コンテキスト要件を、上記ＦＩＢに格納されている上記１または複数のインターフェースに関連付けられている上記コンテキスト情報とマッチングする段階と、
上記Ｉｎｔｅｒｅｓｔメッセージに含まれる上記コンテキスト要件が上記コンテンツに関連する上記１または複数のインターフェースの上記コンテキスト情報と一致する上記１または複数のインターフェースのうちの１つに上記Ｉｎｔｅｒｅｓｔメッセージを転送する段階と、
上記コンテキスト要件を含む転送された上記Ｉｎｔｅｒｅｓｔメッセージと上記ＰＩＴにある上記処理中のＩｎｔｅｒｅｓｔメッセージとを統合し、統合された上記コンテンツを上記ＰＩＴに格納する段階と
を備える方法。
［項目２］
上記メモリに格納されている上記コンテンツが上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツに一致するか否かを特定するべく上記コンテンツストアにアクセスする段階と、
一致するコンテンツを特定したことに応じて、上記Ｉｎｔｅｒｅｓｔメッセージに対して上記コンテンツストアから得た上記コンテンツで応答し、上記Ｉｎｔｅｒｅｓｔメッセージをドロップする段階と、
一致するコンテンツを特定しなかったことに応じて、上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツ名に一致するコンテンツ名を持つ上記ＰＩＴ内で格納されているエントリを発見する段階と
をさらに備える項目１に記載の方法。
［項目３］
上記ＰＩＴ内で上記エントリを発見する段階はさらに、
一致するエントリが上記ＰＩＴに格納されている場合には、
上記Ｉｎｔｅｒｅｓｔメッセージと共に受信した上記コンテキスト要件が上記ＰＩＴに格納されている上記コンテキスト要件を満足させるか否かを判断する段階と、
上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテキスト要件が上記ＰＩＴに格納されている上記コンテキスト要件を満足させる場合、上記コンテキスト要件を含む上記Ｉｎｔｅｒｅｓｔメッセージと上記ＰＩＴにある上記処理中のＩｎｔｅｒｅｓｔメッセージとを統合する段階と
を有し、
そうでない場合には、上記ＦＩＢに格納されている上記１または複数のインターフェースにアクセスして、上記受信したＩｎｔｅｒｅｓｔメッセージの上記コンテンツ名が上記ＦＩＢに格納されている上記１または複数のインターフェースの上記コンテンツ名に一致するか否かを判断する段階を有する
項目２に記載の方法。
［項目４］
上記コンテンツ名が上記１または複数のインターフェースのうち１つに関連付けられている場合、
上記インターフェースが上記コンテキスト情報を格納しているか否かを判断する段階と、
上記インターフェースが上記コンテキスト情報を持っていることに応じて、上記インターフェースの上記コンテキスト情報が上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテキスト要件を満足させるか否かを判断する段階と、
上記インターフェースの上記コンテキスト情報が上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテキスト要件を満足させる場合、上記転送する段階を実行する段階と、
上記インターフェースの上記コンテキスト情報が上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテキスト要件を満足させない場合、上記Ｉｎｔｅｒｅｓｔメッセージをドロップして失敗応答を送信する段階と、
上記インターフェースが上記コンテキスト情報を持たないことに応じて、上記転送する段階を実行する段階と
をさらに備える
項目１に記載の方法。
［項目５］
上記コンテンツ名が上記インターフェースのうち複数に関連付けられている場合、
上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテキスト要件を満足させる上記コンテキスト情報を格納している上記１または複数のインターフェースを発見するべく上記ＦＩＢにアクセスする段階と、
上記コンテキスト情報を格納している１または複数のインターフェースが上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテキスト要件を満足させる場合、上記１または複数のインターフェースのうち１つを選択して上記転送する段階を実行する段階と、
上記１または複数のインターフェースがコンテキスト情報を格納していない場合、上記転送する段階を実行する段階と
をさらに備える
項目１に記載の方法。
［項目６］
上記統合されたコンテンツを含むＤａｔａメッセージを受信する段階と、
上記Ｄａｔａメッセージをローカルキャッシングルールに応じて上記メモリに格納する段階と
をさらに備える項目１に記載の方法。
［項目７］
上記統合されたコンテンツを含むＤａｔａメッセージを受信する段階と、
コンテンツ生成者が提供する上記コンテンツの上記コンテキスト情報が上記Ｄａｔａメッセージに添付されているか否かを判断する段階と
をさらに備え、
上記コンテキスト情報が上記Ｄａｔａメッセージの上記コンテンツに添付されている場合、上記コンテキスト情報と上記１または複数のインターフェースのうち対応する１つとを関連付けて、上記コンテキスト情報を上記ＦＩＢに記録し、
上記コンテキスト情報が上記Ｄａｔａメッセージの上記コンテンツに添付されていない場合、上記コンテキスト情報は上記ＦＩＢに記録されない
項目１に記載の方法。
［項目８］
上記統合されたコンテンツを含むＤａｔａメッセージを受信する段階と、
上記ＰＩＴに格納されている上記コンテキスト要件と、受信した上記Ｄａｔａメッセージの上記コンテキスト情報とを比較する段階と、
上記ＰＩＴに格納されている上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツ名および上記コンテキスト要件が上記受信したＤａｔａメッセージの上記コンテンツの上記コンテンツ名および上記コンテキスト要件に一致するか否かを判断する段階と
をさらに備え、
上記ＰＩＴに格納されている上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツ名および上記コンテキスト要件が上記受信したＤａｔａメッセージの上記コンテンツの上記コンテンツ名および上記コンテキスト要件に一致する場合、上記Ｄａｔａメッセージを上記Ｉｎｔｅｒｅｓｔメッセージの送信元のインターフェースに転送し、
上記ＰＩＴに格納されている上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツ名および上記コンテキスト要件が上記受信したＤａｔａメッセージの上記コンテンツの上記コンテンツ名および上記コンテキスト要件に一致しない場合、上記Ｄａｔａメッセージの転送を終了する
項目１に記載の方法。
［項目９］
上記ネットワークは、情報指向ネットワークであり、上記１または複数のインターフェースは転送インターフェースである
項目１に記載の方法。
［項目１０］
ネットワークにおいてコンテキスト認識型コンテンツにアクセスするネットワークコンポーネントであって、
上記ネットワークにおいてＩｎｔｅｒｅｓｔメッセージおよびコンテンツを受信および転送するよう構成されているトランシーバと、
コンテンツをキャッシュするコンテンツストア、コンテンツのための処理中のＩｎｔｅｒｅｓｔメッセージを追跡する処理中Ｉｎｔｅｒｅｓｔテーブル（ＰＩＴ）、および、コンテキスト情報と１または複数のインターフェースとを関連付ける転送情報ベース（ＦＩＢ）を格納するメモリと、
上記メモリおよび上記トランシーバに結合されているプロセッサであって、
上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツ名が上記メモリに格納されているコンテンツ名に一致するか否かを判断するべく上記メモリにアクセスするよう構成されており、
上記メモリに格納されているコンテンツ名が上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツ名に一致することに応じて、上記ＦＩＢに格納されている上記インターフェースのうち１または複数が上記コンテンツ名に関連付けられているか否かを判断し、且つ、上記Ｉｎｔｅｒｅｓｔメッセージに含まれる上記コンテキスト要件を、上記ＦＩＢに格納されている上記１または複数のインターフェースに関連付けられている上記コンテキスト情報とマッチングするよう構成されており、
上記Ｉｎｔｅｒｅｓｔメッセージに含まれる上記コンテキスト要件が上記コンテンツに関連する上記１または複数のインターフェースの上記コンテキスト情報と一致する上記１または複数のインターフェースのうちの１つに上記Ｉｎｔｅｒｅｓｔメッセージを転送するよう構成されており、
上記コンテキスト要件を含む転送された上記Ｉｎｔｅｒｅｓｔメッセージと上記ＰＩＴにある上記処理中のＩｎｔｅｒｅｓｔメッセージとを統合し、統合された上記コンテンツを上記ＰＩＴに格納するよう構成されている
プロセッサと
を備えるネットワークコンポーネント。
［項目１１］
上記プロセッサはさらに、
上記メモリに格納されている上記コンテンツが上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツに一致するか否かを特定するべく上記コンテンツストアにアクセスするよう構成されており、
一致するコンテンツを特定したことに応じて、上記Ｉｎｔｅｒｅｓｔメッセージに対して上記コンテンツストアから得た上記コンテンツで応答し、上記Ｉｎｔｅｒｅｓｔメッセージをドロップするよう構成されており、
一致するコンテンツを特定しなかったことに応じて、上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツ名に一致するコンテンツ名を持つ上記ＰＩＴ内で格納されているエントリを発見するよう構成されている
項目１０に記載のネットワークコンポーネント。
［項目１２］
上記ＰＩＴ内で上記エントリを発見することはさらに、
一致するエントリが上記ＰＩＴに格納されている場合には、
上記Ｉｎｔｅｒｅｓｔメッセージと共に受信した上記コンテキスト要件が上記ＰＩＴに格納されている上記コンテキスト要件を満足させるか否かを判断し、
上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテキスト要件が上記ＰＩＴに格納されている上記コンテキスト要件を満足させる場合、上記コンテキスト要件を含む上記Ｉｎｔｅｒｅｓｔメッセージと上記ＰＩＴにある上記処理中のＩｎｔｅｒｅｓｔメッセージとを統合し、
そうでない場合には、上記ＦＩＢに格納されている上記１または複数のインターフェースにアクセスして、上記受信したＩｎｔｅｒｅｓｔメッセージの上記コンテンツ名が上記ＦＩＢに格納されている上記１または複数のインターフェースの上記コンテンツ名に一致するか否かを判断する
項目１１に記載のネットワークコンポーネント。
［項目１３］
上記コンテンツ名が上記１または複数のインターフェースのうち１つに関連付けられている場合、
上記プロセッサはさらに、
上記インターフェースが上記コンテキスト情報を格納しているか否かを判断するよう構成されており、
上記インターフェースが上記コンテキスト情報を持っていることに応じて、上記インターフェースの上記コンテキスト情報が上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテキスト要件を満足させるか否かを判断するよう構成されており、
上記インターフェースの上記コンテキスト情報が上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテキスト要件を満足させる場合、上記転送を実行するよう構成されており、
上記インターフェースの上記コンテキスト情報が上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテキスト要件を満足させない場合、上記Ｉｎｔｅｒｅｓｔメッセージをドロップして失敗応答を送信するよう構成されており、
上記インターフェースが上記コンテキスト情報を持たないことに応じて、上記転送を実行するよう構成されている
項目１０に記載のネットワークコンポーネント。
［項目１４］
上記コンテンツ名が上記インターフェースのうち複数に関連付けられている場合、
上記プロセッサはさらに、
上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテキスト要件を満足させる上記コンテキスト情報を格納している上記１または複数のインターフェースを発見するべく上記ＦＩＢにアクセスするよう構成されており、
上記コンテキスト情報を格納している１または複数のインターフェースが上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテキスト要件を満足させる場合、上記１または複数のインターフェースのうち１つを選択して上記転送を実行するよう構成されており、
上記１または複数のインターフェースがコンテキスト情報を格納していない場合、上記転送を実行するよう構成されている
項目１０に記載のネットワークコンポーネント。
［項目１５］
上記プロセッサはさらに、
上記統合されたコンテンツを含むＤａｔａメッセージを受信するよう構成されており、
上記Ｄａｔａメッセージをローカルキャッシングルールに応じて上記メモリに格納するよう構成されている
項目１０に記載のネットワークコンポーネント。
［項目１６］
上記プロセッサはさらに、
上記統合されたコンテンツを含むＤａｔａメッセージを受信するよう構成されており、
コンテンツ生成者が提供する上記コンテンツの上記コンテキスト情報が上記Ｄａｔａメッセージに添付されているか否かを判断するよう構成されており、
上記コンテキスト情報が上記Ｄａｔａメッセージの上記コンテンツに添付されている場合、上記コンテキスト情報と上記１または複数のインターフェースのうち対応する１つとを関連付けて、上記コンテキスト情報を上記ＦＩＢに記録するよう構成されており、
上記コンテキスト情報が上記Ｄａｔａメッセージの上記コンテンツに添付されていない場合、上記コンテキスト情報は上記ＦＩＢに記録されない
項目１０に記載のネットワークコンポーネント。
［項目１７］
上記プロセッサはさらに、
上記統合されたコンテンツを含むＤａｔａメッセージを受信するよう構成されており、
上記ＰＩＴに格納されている上記コンテキスト要件と、受信した上記Ｄａｔａメッセージの上記コンテキスト情報とを比較するよう構成されており、
上記ＰＩＴに格納されている上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツ名および上記コンテキスト要件が上記受信したＤａｔａメッセージの上記コンテンツの上記コンテンツ名および上記コンテキスト要件に一致するか否かを判断するよう構成されており、
上記ＰＩＴに格納されている上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツ名および上記コンテキスト要件が上記受信したＤａｔａメッセージの上記コンテンツの上記コンテンツ名および上記コンテキスト要件に一致する場合、上記Ｄａｔａメッセージを上記Ｉｎｔｅｒｅｓｔメッセージの送信元のインターフェースに転送するよう構成されており、
上記ＰＩＴに格納されている上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツ名および上記コンテキスト要件が上記受信したＤａｔａメッセージの上記コンテンツの上記コンテンツ名および上記コンテキスト要件に一致しない場合、上記Ｄａｔａメッセージの転送を終了するよう構成されている
項目１０に記載のネットワークコンポーネント。
［項目１８］
上記ネットワークは、情報指向ネットワークであり、上記１または複数のインターフェースは転送インターフェースである
項目１０に記載のネットワークコンポーネント。
［項目１９］
ネットワークにおいてコンテキスト認識型コンテンツ検索をサポートするためのコンピュータ命令を格納している非一時的コンピュータ可読媒体であって、
上記コンピュータ命令は、１または複数のプロセッサによって実行されると、上記１または複数のプロセッサに、
コンテンツ名およびコンテキスト要件を含むＩｎｔｅｒｅｓｔメッセージを受信する段階と、
上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツ名がメモリに格納されているコンテンツ名と一致するか否かを判断するべく上記メモリにアクセスする段階であって、上記メモリは、コンテンツをキャッシュするコンテンツストア、処理中のＩｎｔｅｒｅｓｔメッセージを追跡する処理中Ｉｎｔｅｒｅｓｔテーブル（ＰＩＴ）、および、コンテンツ情報と１または複数のインターフェースとを関連付ける転送情報ベース（ＦＩＢ）のうち少なくとも１つを含む、段階と、
上記メモリに格納されているコンテンツ名が上記Ｉｎｔｅｒｅｓｔメッセージの上記コンテンツ名に一致することに応じて、上記ＦＩＢに格納されている上記インターフェースのうち１または複数が上記コンテンツ名に関連付けられているか否かを判断し、且つ、上記Ｉｎｔｅｒｅｓｔメッセージに含まれる上記コンテキスト要件を、上記ＦＩＢに格納されている上記１または複数のインターフェースに関連付けられている上記コンテキスト情報とマッチングする段階と、
上記Ｉｎｔｅｒｅｓｔメッセージに含まれる上記コンテキスト要件が上記コンテンツに関連する上記１または複数のインターフェースの上記コンテキスト情報と一致する上記１または複数のインターフェースのうちの１つに上記Ｉｎｔｅｒｅｓｔメッセージを転送する段階と、
上記コンテキスト要件を含む転送された上記Ｉｎｔｅｒｅｓｔメッセージと上記ＰＩＴにある上記処理中のＩｎｔｅｒｅｓｔメッセージとを統合し、統合された上記コンテンツを上記ＰＩＴに格納する段階と
を実行させる非一時的コンピュータ可読媒体。
［項目２０］
上記ネットワークは、情報指向ネットワークであり、上記１または複数のインターフェースは転送インターフェースである
項目１９に記載の非一時的コンピュータ可読媒体。
【図１】
0006601784.tif 000003
【図２】
0006601784.tif 000004
【図３】
0006601784.tif 000005
【図４Ａ】
0006601784.tif 000006
【図４Ｂ】
0006601784.tif 000007
【図５】
0006601784.tif 000008
【図６Ａ】
0006601784.tif 000009
【図６Ｂ】
0006601784.tif 000010
【図７】
0006601784.tif 000011
【図８】
0006601784.tif 000012