JP2017017678A - 情報セントリックネットワーキングにおけるインテリジェント・ルーティング - Google Patents

情報セントリックネットワーキングにおけるインテリジェント・ルーティング Download PDF

Info

Publication number
JP2017017678A
JP2017017678A JP2016102438A JP2016102438A JP2017017678A JP 2017017678 A JP2017017678 A JP 2017017678A JP 2016102438 A JP2016102438 A JP 2016102438A JP 2016102438 A JP2016102438 A JP 2016102438A JP 2017017678 A JP2017017678 A JP 2017017678A
Authority
JP
Japan
Prior art keywords
network device
content
pending
interest packet
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2016102438A
Other languages
English (en)
Other versions
JP6662195B2 (ja
Inventor
リィウ・レイ
Lei Liu
伊藤 章
Akira Ito
章 伊藤
イエ・ズロォン
Ye Zilong
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JP2017017678A publication Critical patent/JP2017017678A/ja
Application granted granted Critical
Publication of JP6662195B2 publication Critical patent/JP6662195B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】ICNネットワークにおけるインテリジェント・ルーティングの方法等を提供する。【解決手段】方法は、コンテンツホストと第1のネットワークデバイスとの間の接続が変化したとの通知を受け取ることと、コンテンツホストにおいて保持されているコンテンツを要求するペンディング・インタレスト・パケットを第1のネットワークデバイスから受け取ることと、コンテンツホストと第3のネットワークデバイスとの間の接続が変化したとの通知を受け取ることと、第3のネットワークデバイスを含む、ペンディング・インタレスト・パケットによって要求されているコンテンツのための第2のネットワークデバイスへの新しい経路を決定することと、コンテンツ・パケットが新しい経路に沿って第2のネットワークデバイスへルーティングされることを指示するメッセージを発することとを含んでよい。【選択図】図4

Description

ここで論じられる実施形態は、情報セントリックネットワーキング(ICN;information centric networking)におけるインテリジェント・ルーティングと関係がある。
インターネットは、現在、どこにコンテンツがあるのか(例えば、所与のIPアドレスにある。)というフレーム・オブ・レファレンスをもって、インターネット・プロトコル(IP;Internet Protocol)構造に基づいている。情報セントリックネットワーキング(ICN)ネットワークでは、フレーム・オブ・レファレンスは、どこにコンテンツがあるのかよりもむしろ、どのようなコンテンツが要求されているのかに基づく。
ここで請求されている対象は、上記の如何なる欠点も解消し、あるいは、上記のような環境においてのみ動作する実施形態に制限されない。むしろ、この背景は、ここで記載されている幾つかの実施形態が実施され得る技術分野の一例を説明するためにのみ与えられている。
本開示の幾つかの実施形態は、情報セントリックネットワーキング(ICN)ネットワークにおけるインテリジェント・ルーティングの方法を含んでよい。当該方法は、コンテンツホストと第1のネットワークデバイスとの間の接続が変化したとの第1の通知を受け取ることを含んでよい。当該方法は、前記コンテンツホストにおいて保持されており、第2のネットワークデバイスへルーティングされるべきコンテンツを要求するペンディング・インタレスト・パケットを前記第1のネットワークデバイスから受け取ることを更に含んでよい。当該方法は、前記コンテンツホストと第3のネットワークデバイスとの間の接続が変化したとの第2の通知を受け取ることを更に含んでよい。当該方法は、前記第3のネットワークデバイスを含む、前記ペンディング・インタレスト・パケットによって要求されている前記コンテンツのための前記第2のネットワークデバイスへの新しい経路を決定することを更に含んでよい。当該方法は、前記ペンディング・インタレスト・パケットに応答して前記コンテンツを含むコンテンツ・パケットが前記新しい経路に沿って前記第2のネットワークデバイスへルーティングされることを指示するメッセージを発することを更に含んでよい。
実施形態の目的及び利点は、特許請求の範囲において特に指し示されている要素、機構、及び組み合わせによって少なくとも実現され達成される。上記の概要及び下記の詳細な説明はいずれも、実例及び説明のためであり、制限ではない。
例となる実施形態は、添付の図面の使用を通じて、更なる特定及び詳細をもって記載及び説明される。
本開示の幾つかの実施形態に従って、パケットのインテリジェント・ルーティングに関する情報セントリックネットワーキング(ICN)ネットワークを例示する図である。
本開示の幾つかの実施形態に従って、ICNネットワーク内で動作するよう構成されるコンピューティングシステムの例を表す。
本開示の幾つかの実施形態に従って、ネットワークデバイス内の様々なテーブルの例となる図である。
本開示の幾つかの実施形態に従って、ICNネットワークにおけるインテリジェント・ルーティングの例となる方法のフローチャートである。
本開示の幾つかの実施形態に従って、ICNネットワークにおけるインテリジェント・ルーティングの他の例となる方法のフローチャートである。
本開示の幾つかの実施形態に従って、ICNネットワークにおけるインテリジェント・ルーティングの他の例となる方法のフローチャートである。
本開示の幾つかの実施形態に従って、ICNネットワークにおけるインテリジェント・ルーティングの他の例となる方法のフローチャートである。
本開示の幾つかの実施形態に従って、ICNネットワークにおけるインテリジェント・ルーティングの他の例となる方法の更なるフローチャートである。
本開示は、情報セントリックネットワーキング(ICN)ネットワークにおけるインタレスト・パケット及びコンテンツ・パケットのインテリジェント・ルーティングと関係がある。例となるICNネットワークは、コンテンツを要求するインタレスト・パケットを受け取り、コンテンツ・パケットにおける要求されたコンテンツにより応答することができるコンテンツホストを有してよい。位置コーディネータが導入されてよく、該位置コーディネータは、ICNネットワークのトポロジを認識してよい。それにより、コンテンツホストがネットワーク接続を変える場合に、位置コーディネータは、前の接続を通じてコンテンツホストへルーティングされたインタレスト・パケット及び/又はコンテンツ・パケットの、ICNネットワーク内の変更後の接続を通じたインテリジェント・ルーティングを促してよい。
本開示において、コンテンツを要求するパケットは、インタレスト・パケットと呼ばれてよく、インタレスト・パケットによって要求されているコンテンツを供給するパケットは、コンテンツ・パケットと呼ばれてよい。
本開示の実施形態は、添付の図面を参照して説明される。
図1は、本開示において記載されている幾つかの実施形態に従って、ICNネットワークとして動作する例となるネットワーク100を表す図である。ネットワーク100は、エンドユーザ110と、1つ以上のネットワークデバイス121、122、123及び124と、コンテンツホスト130と、位置コーディネータ140とを有してよい。ネットワーク100は、デフォルトのルールに従ってネットワーク100を通じてルーティングされる、インタレスト・パケット及びコンテンツ・パケットのようなパケットを有してよく、一方で、幾つかの実施形態において、位置コーディネータ140は、デフォルトのルールから外れる様態において、ネットワーク100内のパケットのインテリジェント・ルーティングを促してよい。
図1に表されるように、両側矢印線は、ネットワーク100の一般的なトラフィック(例えば、インタレスト・パケット及びコンテンツ・パケット)及び管理トラフィック(例えば、接続ステータス通知)を含め、データが通信され得る接続を示してよい。破線は、形成されてもされなくてもよい、あるいは、ある一時に形成されて、後に弱められ、強められ、又は中断され得る、あるいは、ある一時に形成されずに後に形成され得る接続を示してよい。
エンドユーザ110は、遠隔のデバイスにコンテンツを要求するよう構成されるあらゆるデバイス、システム、コンポーネント、又はコンポーネントの集合を含んでよい。エンドユーザ110は、コンピュータ(例えば、デスクトップ、ラップトップ、サーバ、等)として、モバイルデバイス(例えば、携帯電話機、パーソナル・デジタル・アシスタント(PDA)、タブレット、等)として、あるいは、ネットワークへ接続されている如何なる他のデバイス(例えば、ネットワーク対応のサーモスタット、冷蔵庫、又は他のアプライアンス)としても、実装されてよい。エンドユーザ110は、プロセッサ、メモリ、及び記憶媒体を含んでよい。一例として、ネットワーク100における動作の間に、エンドユーザ110は、インタレスト・パケットをネットワークデバイス121へ送信してよい。ネットワーク100はICNネットワークとして動作しているので、インタレスト・パケットは、所望のコンテンツがどこにあるのかを示さず、代わりに、エンドユーザ110によって望まれているコンテンツの名称を挙げてよい。
ネットワークデバイス121、122、123及び124は、ネットワーク100内でパケットを受信、操作及び/又は処理するよう構成されるあらゆるデバイス、システム、コンポーネント、又はコンポーネントの集合を含んでよい。ネットワークデバイス121、122、123及び124は、夫々がルータ、ゲートウェイ、スイッチ、又は他の何らかのネットワーク要素として実装されてよい。幾つかの実施形態において、ネットワークデバイス121、122、123及び124は、夫々がプロセッサ、メモリ、及び記憶媒体を含んでよい。ネットワークデバイス121、122、123及び124は、夫々が1つ以上のインターフェイスを更に有してよい。そのインターフェイスを介して、ネットワークデバイス121、122、123及び124は通信する。インターフェイスは、ネットワークデバイスとの通信のための物理的及び/又は論理的なエントランス又はイグジット点を含んでよい。例えば、ネットワークデバイス121は、エンドユーザ110へ接続する第1のインターフェイスと、ネットワークデバイス122へ接続する第2のインターフェイスとを有してよい。
幾つかの実施形態において、ネットワークデバイス121、122、123及び124は、夫々がコンテンツストア、ペンディング・インタレスト・テーブル(PIT;pending interest table)、及びフォワーディング情報ベース(FIB;forwarding information base)を含んでよい。コンテンツストア、PIT、及びFIBは、ネットワークデバイス121、122、123及び124の記憶媒体及び/又はメモリ内の物理的又は論理的な記憶コンポーネント又は場所であってよい。コンテンツストア、PIT、及びFIBにおける動作/構造/情報の例は、これより、ネットワークデバイス121に関して説明されるが、ネットワークデバイス122、123及び124に適用されてよい。それら及び他の実施形態において、コンテンツストアは、ネットワークデバイス121がネットワーク100における他のデバイスによって要求されたことがあるコンテンツを保持するための記憶場所として、動作してよい。コンテンツストアを使用することによって、頻繁に要求されるコンテンツは、複数のネットワークデバイスのコンテンツストアに位置してよく、より早く及び/又は効率的に、コンテンツを要求しているデバイスへ提供されてよい。
幾つかの実施形態において、PITは、どのようなインタレスト・パケットがネットワークデバイスによって受信されており、そのためにネットワークデバイスが依然としてコンテンツ・パケットを待っているのかというステータス・インジケータの役割を果たしてよい。例えば、PITは、要求されているコンテンツを、そのコンテンツを要求するインタレスト・パケットを受信したネットワークデバイスのインターフェイスと関連付けるテーブル・エントリを有してよい。PITは、そのコンテンツが要求されているかどうかと、どのインターフェイスがそのコンテンツを要求しているのかとを識別するために、コンテンツ・パケットがネットワークデバイスによって受信される場合に使用されてよい。そのようにして、コンテンツ・パケットは、要求元のインターフェイスにおいてネットワークデバイスから送出されてよい。
幾つかの実施形態において、FIBは、データベース、ルールの組、プロトコル、又は同様のものであってよい。それによって、ネットワークデバイスは、ネットワークデバイスによって受信される場合にインタレスト・パケットを転送すべきかどうかを判定してよい。例えば、インタレスト・パケットがネットワークデバイスで受信される場合に、FIBは、ネットワークデバイスのどのインターフェイス(複数を含む。)が、コンテンツを要求するようインタレスト・パケットを送信するために使用されるのかを決定するために、利用されてよい。コンテンツストア、PIT、及びFIBの例は、図3においても説明され得る。
一例として、ネットワークデバイス121の動作は、これより、デフォルトのルールの下で動作する場合について記載される。ネットワークデバイス122、123及び124は、ネットワークデバイス121に関して記載されたのと同じ原理に従って動作してよい。
例えば、ネットワークデバイス121が(例えば、エンドユーザ110又は他のネットワークデバイス122から)インタレスト・パケットを受信する場合に、ネットワークデバイス121は、インタレスト・パケットが、ネットワークデバイス121のコンテンツストアに既に保持されているコンテンツを要求しているかどうかを確認してよい。コンテンツがネットワークデバイス121のコンテンツストアにある場合には、ネットワークデバイス121は、インタレスト・パケットが受信されたインターフェイスを介して、コンテンツ・パケットにおいてコンテンツを返送してよい。例えば、図1に示されるように、インタレスト・パケットは、エンドユーザ110から送信され、ネットワークデバイス121によってインターフェイスにおいて受信されてよく、コンテンツ・パケットは、エンドユーザ110をネットワークデバイス121へ接続するそのインターフェイスを介して返送されてよい。コンテンツがネットワークデバイス121のコンテンツストアにない場合には、ネットワークデバイス121は、他のインタレスト・パケットによって以前に要求されたことがあるコンテンツの名称についての既存のエントリがあるがどうかを判定するよう、ネットワークデバイス121のPITを確認してよい。エントリがない場合には、ネットワークデバイス121は、そのインタレスト・パケットについてのエントリをPITにおいて生成してよい。PITのエントリは、要求されたコンテンツの名称と、インタレスト・パケットが受信されたインターフェイスとを含んでよい。インタレスト・パケットについてのエントリがPITにある場合には、ネットワークデバイス121は、インタレスト・パケットが受信されたインターフェイスを更に含めるようインタレスト・パケットのエントリを更新してよい。PITにおける新しいエントリについて、ネットワークデバイス121は、FIBにおけるルールに従ってインタレスト・パケットを転送してよい。例えば、FIBにおけるルールは、指名データ・リンク・ステート・ルーティング(NLSR;Named Data Link State Routing)プロトコル又はICNネットワークで使用される他のルーティング・プロトコルに従ってよい。インタレスト・パケットを転送することは、インタレスト・パケットが1つのインターフェイス又は複数のインターフェイスへ転送されるようにしてよい。ICNのデフォルトのルールを用いると、単一のインタレスト・パケットがコンテンツのために送信されてよく、同じコンテンツを要求する如何なる追加のインタレスト・パケットも、単にPITエントリを更新してよい。また、あるインターフェイスにおける1つのインタレスト・パケットは、1つのコンテンツ・パケットが同じインターフェイスを介して送信されることを生じさせてよい。
他の例として、ネットワークデバイス121がコンテンツ・パケットを受信する場合に、ネットワークデバイス121は、PITがコンテンツ・パケットにおけるコンテンツの名称についてのエントリを有するかどうかを判定するよう、PITを確認する。コンテンツについてのエントリがない場合には、ネットワークデバイス121はコンテンツ・パケットを捨ててよい。コンテンツ・パケットにおけるコンテンツの名称についてPITにおいてエントリがある場合には、ネットワークデバイス121は、コンテンツ・パケットのコンテンツをコンテンツストアに格納にしてよく、次いで、コンテンツ・パケットにおけるコンテンツの名称に関連したPITエントリにおけるインターフェイスの夫々へコンテンツ・パケットを送出してよい。上述されたように、インタレスト・パケットは、コンテンツを要求する複数のインターフェイスにおいて受信されていてよい。コンテンツ・パケットが送信された後、ネットワークデバイス121は、そのコンテンツについてPITにおいてエントリを除いてよい。
コンテンツホスト130は、ネットワーク100内でコンテンツを記憶及び提供するよう構成されるあらゆるデバイス、システム、コンポーネント、又はコンポーネントの集合を含んでよい。コンテンツホスト130は、プロセッサ、メモリ、及び記憶媒体を含んでよい。幾つかの実施形態において、コンテンツホスト130は、コンテンツホスト130とネットワークデバイス121、122、123及び124のうちの1つ以上との間の接続又は接続の強さが変化し得るように、物理的な位置を変えてよい。例えば、コンテンツホスト130は、最初に、ネットワークデバイス123へ接続されてよい。コンテンツホスト130は、ネットワークデバイス123への接続が弱められるか又は中断されて、ネットワークデバイス124への接続が形成されるか又は強められ得るように、位置を変えてよい。コンテンツホスト130が、コンテンツホスト130において保持されているコンテンツについてのインタレスト・パケットを受信する場合に、コンテンツホスト130は、コンテンツを含むコンテンツ・パケットを、インタレスト・パケットを送信するデバイスへ送信してよい。
以下は、コンテンツホストが接続を変更する場合にデフォルトのルールの動作の例である。エンドユーザ110が、ネットワーク100においてコンテンツホスト130で保持されているコンテンツ(例のために、要求されたコンテンツがコンテンツホスト130から来るように、介在するネットワークデバイスのいずれにおいても保持されていない。)を要求した場合に、ネットワークデバイス121は、インタレスト・パケットによりネットワークデバイス121のPITを更新してよく、ネットワークデバイス121のFIBに基づきインタレスト・パケットをネットワークデバイス122へ送信してよい。ネットワークデバイス122は、インタレスト・パケットによりネットワークデバイス122のPITを更新してよく、ネットワークデバイス122のFIBに基づきインタレスト・パケットをネットワークデバイス123へ送信してよい。ネットワークデバイス123は、インタレスト・パケットによりネットワークデバイス123のPITを更新してよく、インタレスト・パケットをコンテンツホスト130へ送信してよい。
コンテンツホスト130は、要求されているコンテンツを選択し、要求されているコンテンツをインタレスト・パケットに基づき送信するようコンテンツ・パケットを形成してよい。コンテンツホスト130は、コンテンツ・パケットをネットワークデバイス123へ送信してよい。ネットワークデバイス123は、コンテンツ・パケットのコンテンツをネットワークデバイス123のコンテンツストアに格納し、PITエントリを除き、PITエントリに従ってネットワークデバイス122へコンテンツ・パケットを送信してよい。ネットワークデバイス122は、コンテンツ・パケットのコンテンツをネットワークデバイス122のコンテンツストアに格納し、PITエントリを除き、PITエントリに従ってネットワークデバイス121へコンテンツ・パケットを送信してよい。ネットワークデバイス121は、コンテンツ・パケットのコンテンツをネットワークデバイス121のコンテンツストアに格納し、PITエントリを除き、PITエントリに従ってエンドユーザ110へコンテンツ・パケットを送信してよい。上記は、概して、デフォルトのルールに従うネットワークデバイス121、122、123及び124の動作を記載してよい。
幾つかの実施形態において、コンテンツホスト130は、1つ以上の接続を形成又は中断され得る。これは、インタレスト・パケットの処理に影響を及ぼし得る。例えば、コンテンツホスト130は、最初にネットワークデバイス123へ接続されてよく、そして、コンテンツをコンテンツホスト130に要求するようネットワーク100を通じてネットワークデバイス123へルーティングされる1つ以上のインタレスト・パケットが存在してよい。コンテンツホスト130は、ネットワークデバイス123への接続が中断され得、ネットワークデバイス124への接続が形成され得るように、位置を変えてよい。そのような環境において、ネットワークデバイス123は、コンテンツをコンテンツホスト130に要求している受信された如何なるインタレスト・パケットもキャッシング、バッファリング、又は別なふうに記憶し始めてよい。コンテンツホスト130がネットワークデバイス124へ接続された後、仮想インタレスト・パケットは、ネットワークデバイス123で保持されている如何なるペンディング・インタレスト・パケットも取り出すよう、ネットワークデバイス124からネットワークデバイス123へ送信されてよい。
記憶されたインタレスト・パケットを要求する仮想インタレスト・パケットを受信した後、ネットワークデバイス123は、記憶されたインタレスト・パケットを要求元のインターフェイスへ返送してよい。例えば、ネットワークデバイス123は、記憶されたインタレスト・パケットをネットワークデバイス122へ送信してよい。ネットワークデバイス123へ接続されているインターフェイスは、ネットワークデバイス122がインタレスト・パケットを受信した場所であるから、ネットワークデバイス122は、次いで、そのインターフェイスを含めるようネットワークデバイス122のPITを更新してよい。ネットワークデバイス122は、記憶されたインタレスト・パケットをネットワークデバイス124へ送信してよい。ネットワークデバイス124は、ネットワークデバイス122へ接続されているインターフェイスを含めるようネットワークデバイス124のPITを更新してよい。ネットワークデバイス124は、記憶されたインタレスト・パケットをコンテンツホスト130へ送信してよい。
コンテンツホスト130は、記憶されたインタレスト・パケットに応答してコンテンツ・パケットを要求元のインターフェイスを通じて、例えば、ネットワークデバイス124へ送信してよい。ネットワークデバイス124は、コンテンツをネットワークデバイス124のコンテンツストアに格納してよく、PITエントリを除いてよく、コンテンツをコンテンツ・パケットにおいてネットワークデバイス122へ送信してよい。ネットワークデバイス122は、コンテンツがネットワークデバイス121(最初のユーザ110の要求による。)及びネットワークデバイス123(記憶されたインタレスト・パケットによる。)の両方へ送信されるためのPITエントリを有してよい。ネットワークデバイス122は、コンテンツをネットワークデバイス122のコンテンツストアに格納してよく、コンテンツをコンテンツ・パケットにおいてネットワークデバイス123及び121の両方へ送信してよく、PITからエントリを除いてよい。
ネットワークデバイス121は、コンテンツをネットワークデバイス121のコンテンツストアに格納してよく、PITエントリを除いてよく、コンテンツをコンテンツ・パケットにおいてエンドユーザ110へ送信してよい。ネットワークデバイス123は、コンテンツがネットワークデバイス122(最初のユーザの要求による。)へ送信されるためのエントリをPITにおいて有してよい。ネットワークデバイス123は、コンテンツをネットワークデバイス123のコンテンツストアに格納してよく、PITエントリを除いてよく、コンテンツをコンテンツ・パケットにおいてネットワークデバイス122へ送信してよい。ネットワークデバイス122は、ネットワークデバイス122がコンテンツについてのPITエントリをもはや有さないので、コンテンツ・パケットを捨ててよい。
そのような環境での動作は、ネットワーク100において不必要な及び/又は無駄なネットワークトラフィックをもたらし得る。例えば、コンテンツ・パケットをネットワークデバイス122からネットワークデバイス123へルーティングし、次いで再びネットワークデバイス122へ戻してそこで捨てられることは、不必要及び/又は無駄であり得る。
幾つかの実施形態において、インタレスト・パケット及び/又はコンテンツ・パケットは、ICNネットワークにおいて不必要なネットワークトラフィックを低減し又は最小限にするように扱われてよい。例えば、ネットワークトポロジを保持するよう構成され、パケットの新しいルートに関してメッセージをネットワークデバイスへ提供し得る位置コーディネータのICNネットワークへの導入は、ICNネットワークにおいて不必要なネットワークトラフィックを低減し又は最小限にするメカニズムを提供してよい。
位置コーディネータ140は、ネットワーク100のトポロジをモニタリングし、ネットワーク100内のパケットのインテリジェント・ルーティングを支援するよう構成されるあらゆるデバイス、システム、コンポーネント、又はそれらの組み合わせを含んでよい。位置コーディネータ140は、スタンドアローンのコンピュータシステムとして実装されてよく、あるいは、ネットワーク管理システム(NMS;network management system)、NDNS(domain name services (DNS) for Named Data Networking (NDN))、又はソフトウェア定義ネットワーキング(SDN;software-defined networking)コントローラのような既存のコンピュータシステムのより小さいコンポーネントであってよい。位置コーディネータ140は、プロセッサ、メモリ、及び記憶媒体を含んでよい。位置コーディネータ140は、ネットワークデバイス121、122、123及び124のうちの1つ以上と通信してよい。幾つかの実施形態において、位置コーディネータ140は、ネットワーク100の現在のトポロジ及びステータスをモニタリングし保持してよい。例えば、図1を参照して、位置コーディネータ140は、ネットワークデバイス121がネットワークデバイス122へ接続されていること、ネットワークデバイス122がネットワークデバイス123及びネットワークデバイス124の両方へ接続されていること、並びにコンテンツホスト130がネットワークデバイス123及び124の一方又は両方へ接続されていることといった情報を保持してよい。
幾つかの実施形態において、位置コーディネータ140は、コンテンツホスト130が接続を移動しているかもしれない又は既に接続を移動したかもしれないとの通知を受信してよい。そのような通知は、ネットワークデバイスが移動性である場合又はコンテンツホスト130が移動性である場合に受信されてよい。例えば、コンテンツホスト130が、ネットワークデバイス123に、自身が移動していること又はコンテンツホスト130とネットワークデバイス123との間の接続が別なふうに弱められるか若しくは中断されたことを通知する場合に、ネットワークデバイス123は、次いで、この変化を位置コーディネータ140に通知してよい。同様に、コンテンツホスト130が、ネットワークデバイス124に、コンテンツホスト130がネットワークデバイス124との接続に移動したこと又はコンテンツホスト130とネットワークデバイス124との間の接続が別なふうに強められるか若しくは形成されたことを通知する場合に、ネットワークデバイス124は、次いで、この変化を位置コーディネータ140に通知してよい。そのような移動又は変化が起きた場合に、接続の変化が理由でコンテンツホスト130によって履行され得ないペンディング・インタレスト・パケットがネットワークデバイス123に存在し得る。それらは、例えば、コンテンツホスト130がネットワークデバイス123に接続されている状態からネットワークデバイス124に接続されている状態へ移る場合にネットワークデバイス123が保留又はキャッシュしたPITエントリであってよい。幾つかの実施形態では、ネットワークデバイス123及び124がハンドオフ又は他の接続変化を位置コーディネータ140へ通信するのではなく、コンテンツホスト130が、ハンドオフ又は他の接続変化の情報を位置コーディネータ140へ通信してよい。
幾つかの実施形態において、位置コーディネータ140は、ペンディング・インタレスト・パケットのインテリジェント・ルーティングを助けてよい。位置コーディネータ140は、多数の方法、又は種々の潜在的な方法の組み合わせにおいて、インテリジェント・ルーティングを助けてよい。幾つかの実施形態において、位置コーディネータ140は、ペンディング・インタレスト・パケット(又はペンディング・インタレスト・パケットの名称)及びペンディング・インタレスト・パケットについての対応する要求元のネットワークデバイス(例えば、図1に表されている例では、ネットワークデバイス122)を位置コーディネータ140へ送信するために、メッセージを送信するか又は別なふうにネットワークデバイス123に通知してよい。位置コーディネータ140は、ペンディング・インタレスト・パケットに応答するコンテンツ・パケットのための新しい経路を決定してよい。応答コンテンツ・パケットのための新しい経路は、位置コーディネータ140がネットワークデバイス123へ接続されていたときのインタレスト・パケットの前のルートにあったネットワークデバイスを含んでよい。例えば、図1に表されているように、位置コーディネータ140は、応答コンテンツ・パケットがネットワークデバイス124を通ってネットワークデバイス122へルーティングされ得ることを決定してよい。図1に表されているトポロジは、例となるトポロジである。他のトポロジでは、ネットワークデバイスはいくつでも、位置コーディネータ140によって選択された新しい経路に含まれてよい。
幾つかの実施形態において、新しい経路は、ネットワークデバイス間のホップの数、応答コンテンツ・パケットが移動し得る距離、ネットワーク負荷、ネットワークデバイス負荷、ネットワークデバイス性能、バンド幅、レイテンシーなどを含む多数の因子に基づき、位置コーディネータ140によって決定されてよい。新しい経路が決定された後、位置コーディネータ140は、新しい経路に沿って履行されるべきペンディング・インタレスト・パケットを含めるようネットワークデバイスのPITエントリを更新するために、新しい経路にあるネットワークデバイスへメッセージ又は通知を送信してよい。例えば、位置コーディネータ140は、ネットワークデバイス123のPITに以前に含まれていた同じコンテンツについての新しいエントリを含めるようネットワークデバイス124のPITを更新するようにネットワークデバイス124に指示するメッセージをネットワークデバイス124へ送信してよい。ネットワークデバイス124のPITにおける新しいエントリは、ネットワークデバイス122に接続するインターフェイスを含んでよい。そのようなメッセージによれば、コンテンツホスト130が、要求されているコンテンツを含むコンテンツ・パケットをネットワークデバイス124へ供給する場合に、ネットワークデバイス124は、そのコンテンツのエントリをネットワークデバイス124のPITにおいて有し、PITにおけるそのエントリに基づきコンテンツ・パケットをネットワークデバイス122へ送信してよい。ネットワークデバイス122による受信の後、コンテンツ・パケットは、デフォルトのルールにより処理されてよく、それにより、ネットワークデバイス122は、コンテンツ・パケットをネットワークデバイス121へルーティングし、ネットワークデバイス121は、コンテンツ・パケットをエンドユーザ110へルーティングしてよい。
幾つかの実施形態において、位置コーディネータ140は、コンテンツホスト130と通信してよい。例えば、ネットワークデバイス123でのペンディング・インタレスト・パケットを知らされた場合に、位置コーディネータ140は、コンテンツホスト130に、コンテンツ・パケットの先頭に付加的なヘッダを含めるよう指示してよい。ヘッダは、ネットワーク100における目標位置の名称を含んでよく、あるいは、ネットワーク100における一連の停留所を含んでよい。例えば、ヘッダは、ネットワークデバイス122が目標位置であることを示す情報を含んでよい。ネットワークデバイスの夫々のFIBは、ヘッダを伴うコンテンツ・パケットを目標ネットワークデバイスへルーティングするためにヘッダを使用してよい。例えば、ネットワークデバイス124は、ネットワークデバイス122を指定する付加的なヘッダを伴ったコンテンツ・パケットを受信してよく、ヘッダを用いてFIBに基づきネットワークデバイス122に向かってコンテンツ・パケットをルーティングしてよい。コンテンツ・パケットが目標ネットワークデバイスに到着した後、ヘッダはコンテンツ・パケットから除かれてよく、コンテンツ・パケットはデフォルトのルールに従って処理されてよい。例えば、コンテンツ・パケットがネットワークデバイス122に到着すると、ネットワークデバイス122はヘッダを除いてよく、PITにおいてコンテンツの名称を探して、コンテンツ・パケットをネットワークデバイス121へルーティングしてよい。次いで、ネットワークデバイス121は、コンテンツ・パケットをエンドユーザ110へルーティングしてよい。このようなヘッダは、所望のネットワークデバイスへの経路を生成するために使用されるトンネル又はトンネルヘッダと呼ばれてよい。図1の例によれば、そのようなヘッダは、ネットワークデバイス124からネットワークデバイス122へのトンネルを生成してよい。
幾つかの実施形態において、位置コーディネータ140は、新しい経路が決定されると他のネットワークデバイスと通信してよい。例えば、位置コーディネータ140は、ネットワークデバイス122へメッセージを送信して、ネットワークデバイス122に、コンテンツについての新しいインタレスト・パケットをネットワークデバイス124へ発行するよう指示してよい。ネットワークデバイス124は、インタレスト・パケットをコンテンツホスト130へ送ってよく、コンテンツホスト130は、コンテンツ・パケットをネットワークデバイス124へ返すとともに、デフォルトのルールに従うペンディング・インタレスト・パケットの経路を撤回してよい。幾つかの実施形態において、新しいインタレスト・パケットを使用することは、未解決でありえるネットワークデバイス123でのバッファリングされたインタレスト・パケットを残してよい。しかし、タイムアウト又は他の機能が含まれてよく、それにより、一定時間内に処理されないバッファリングされたインタレスト・パケットは自動的に削除されてよい。そのような自動削除によれば、たとえネットワークデバイス123でのペンディング・インタレスト・パケットが未解決であるとしても、ペンディング・インタレスト・パケットはタイムアウトして、自動的に削除されてよい。
図1に対して、変更、追加、又は削除が、本開示の適用範囲から逸脱することなしに行われてよい。例えば、ネットワーク100は、本開示で図示及び記載されているよりも多い又は少ない要素を含んでよい。例えば、ネットワーク100は、如何なるトポロジにおいても配置される多数の更なるネットワークデバイス、コンテンツホスト、及びエンドユーザを含んでよい。図1に表されている比較的少数のネットワークノード及び簡単なトポロジは、理解の容易のためであって、制限でない。
図2は、本開示の幾つかの実施形態に従って、例となるコンピューティングシステム202のブロック図を表す。エンドユーザ110、ネットワークデバイス121、122、123若しくは124、コンテンツホスト130、及び/又は位置コーディネータ140のいずれか1つは、例となるコンピューティングシステム202のようなコンピューティングシステムとして実装されてよい。コンピューティングシステム202は、本開示の1つ以上の動作を実施するよう構成されてよい。コンピューティングシステム202は、プロセッサ250、メモリ252、及びデータストレージ254を含んでよい。プロセッサ250、メモリ252、及びデータストレージ254は、通信上結合されてよい。
一般に、プロセッサ250は、様々なコンピュータハードウェア又はソフトウェアモジュールを含むあらゆる適切な特別目的若しくは汎用のコンピュータ、コンピューティングエンティティ、又はプロセッシングデバイスを含んでよく、何らかの適用可能なコンピュータ可読記憶媒体で記憶されている命令を実行するよう構成されてよい。例えば、プロセッサ250は、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP;digital signal processor)、特定用途向け集積回路(ASIC;application-specific integrated circuit)、フィールドプログラマブルゲートアレイ(FPGA;Field-Programmable Gate Array)、あるいは、プログラム命令を解釈及び/又は実行するよう及び/又はデータを処理するよう構成されるあらゆる他のデジタル又はアナログ回路を含んでよい。図2では単一のプロセッサとして表されているが、プロセッサ250は、本開示において記載されている動作をいくつでも個々に又は集合的に実行するよう構成されるプロセッサをいくつでも含んでよい。
幾つかの実施形態において、プロセッサ250は、メモリ252、データストレージ254、又はメモリ252及びデータストレージ254において記憶されているプログラム命令を解釈及び/又は実行し、且つ/あるいは、記憶されているデータを処理してよい。幾つかの実施形態において、プロセッサ250は、データストレージ254からプログラム命令をフェッチし、プログラム命令をメモリ252にロードしてよい。プログラム命令がメモリ252にロードされた後、プロセッサ250はプログラム命令を実行してよい。
例えば、幾つかの実施形態において、位置コーディネータは、スタンドアローンのコンピュータシステムとして実装されてよく、あるいは、NMS、NDNS、又はSDNコントローラのような既存のコンピュータシステムのより小さいコンポーネントであってよい。それら及び他の実施形態において、データストレージ254は、図1の位置コーディネータ140のような位置コーディネータによって実行される動作を実装するプログラム命令を含んでよい。プロセッサ250は、データストレージ254からプログラム命令をフェッチしてよく、プログラム命令をメモリ252にロードしてよい。プログラム命令がメモリ252にロードされた後、プロセッサ250はプログラム命令を実行してよく、それにより、コンピューティングシステムは、命令によって指示されるように位置コーディネータによって実行される動作を実施してよい。
メモリ252及びデータストレージ254は、コンピュータ実行可能命令又はデータ構造を担持又は記憶しているコンピュータ可読記憶媒体を含んでよい。そのようなコンピュータ可読記憶媒体は、プロセッサ250のような汎用又は特別目的のコンピュータによってアクセスされ得る如何なる利用可能な媒体も含んでよい。一例として、制限なしに、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD−ROM若しくは他の光ディスクストレージ、磁気ディスクストレージ若しくは他の磁気記憶デバイス、フラッシュメモリデバイス(例えば、ソリッドステートメモリデバイス)、あるいは、コンピュータ実行可能命令又はデータ構造の形で所望のプログラムコードを担持又は記憶するために使用されてよく且つ汎用又は特別目的のコンピュータによってアクセスされ得る如何なる他の記憶媒体も含む有形な又は非一時的なコンピュータ可読記憶媒体を含んでよい。上記の組み合わせも、コンピュータ可読記憶媒体の適用範囲内に含まれてよい。コンピュータ実行可能命令は、例えば、プロセッサ250に特定の動作又は動作群を実行させるよう構成された命令及びデータを含んでよい。
コンピューティングシステム202に対して、変更、追加、又は削除が、本開示の適用範囲から逸脱することなしに行われてよい。例えば、幾つかの実施形態において、コンピューティングシステム202は、明示的に図示又は記載されていない他のコンポーネントをいくつでも含んでよい。
図3は、本開示の幾つかの実施形態に従って、ネットワークデバイス300内の様々なテーブルの例である。ネットワークデバイス300は、コンテンツストア305、PIT310、FIB315、並びにインターフェイス320a(インターフェイス0)、320b(インターフェイス1)及び320c(インターフェイス2)を含んでよい。それらのコンポーネントの夫々は、図1に関して記載されたように実装されてよい。例えば、インタレスト・パケットがネットワークデバイス300においてインターフェイス320aで受信される場合に、ネットワークデバイス300は、インタレスト・パケットにおいて要求されているコンテンツがコンテンツストア305に保持されているかどうかを判定してよい。コンテンツがコンテンツストア305にある場合には、ネットワークデバイス300は、コンテンツをコンテンツ・パケットにおいてインターフェイス320aを通じて返送してよい。コンテンツがそこに保持されていない場合には、ネットワークデバイス300は、インタレスト・パケットを含めるようPIT310を更新してよい。PIT310を更新することは、コンテンツについてエントリがない場合にPIT310において新しいエントリを生成すること、又は要求されているコンテンツについての既存のPITエントリがある場合にはインターフェイス320aをPITに加えることを含んでよい。インタレスト・パケットを送信する場合に、ネットワークデバイス300は、FIB315に従ってインタレスト・パケットを転送してよい。FIB315は、NLSRプロトコルに従って動作してよい(例えば、自動的に構成されてよい)。
図4は、本開示の幾つかの実施形態に従って、ICNネットワークにおけるインテリジェント・ルーティングの例となる方法400のフローチャートである。方法400は、如何なる適切なシステム、装置、又はデバイスによっても実行されてよい。例えば、図1のネットワーク100又は図2のコンピューティングシステム202は、方法400に関連する動作の1つ以上を実行してよい。それら及び他の実施形態において、コンピュータ可読媒体で記憶されているプログラム命令は、方法400の動作の1つ以上を実行するよう実行されてよい。方法400を記載する際の便宜上、第1、第2及び第3のネットワークデバイスが記載されてよい。一例として、それらのネットワークデバイスは、図1のネットワークデバイス121、122、123及び124に夫々対応してよい。
ブロック405で、エンドユーザは、ICNネットワークにコンテンツを要求してよい。コンテンツは、ドキュメント、イメージ、フォーム、ビデオ、等のような、ネットワークに要求される如何なるコンテンツであってもよい。幾つかの実施形態において、要求は、ネットワークがインタレスト・パケットをルーティングすることを生じさせてよい。インタレスト・パケットは、少なくとも第2のネットワークデバイスを通じることを含めネットワークを通じて第1のネットワークデバイスに及びコンテンツホストにコンテンツを要求する。ブロック410で、コンテンツホストは、インタレスト・パケットに応答してコンテンツを第1のネットワークデバイスへ供給し始めてよい。
ブロック415で、コンテンツホストと第1のネットワークデバイスとの間の接続が変化してよい。上述されたように、接続の変化は、接続の中断若しくは喪失又は信号の弱化を含んでよい。接続の変化は、コンテンツホストのモビリティ、第1のネットワークデバイスのモビリティ、又はコンテンツホストと第1のネットワークデバイスとの間で信号の弱化を引き起こし得る何らかの他の事象(例えば、ネットワーク不具合、ネットワーク負荷の増大、等)によって引き起こされてよい。幾つかの実施形態において、接続の変化に関して、コンテンツホストは第1のネットワークデバイスに知らせてよく、あるいは、第1のネットワークデバイスがコンテンツホストに知らせてよい。代替的に、又は追加的に、コンテンツホスト及び/又は第1のネットワークデバイスは、接続が変化したことを位置コーディネータに通知してよい。接続の変化は、第1のネットワークデバイスに、第1のネットワークデバイスが受信し得るコンテンツホストへ向けられた如何なるペンディング・インタレスト・パケットもキャッシング又は別なふうに記憶させてよい。
ブロック420で、コンテンツホストと第3のネットワークデバイスとの間の接続が変化してよい。接続の変化は、コンテンツホストと第3のネットワークデバイスとの間の接続の形成を含んでよく、あるいは、コンテンツホストと第3のネットワークデバイスとの間の接続の強化を含んでよい。ブロック425で、第1のネットワークデバイスで保持されているペンディング・インタレスト・パケット(又は第1のネットワークデバイスで保持されているペンディング・インタレスト・パケットの名称)及び要求元のネットワークデバイスは、位置コーディネータへ送信されてよい。
ブロック430で、位置コーディネータは、インタレスト・パケットに応答してコンテンツ・パケットをエンドユーザへ返送するよう新しい経路を決定してよい。新しい経路は、少なくとも第3のネットワークデバイス及び第2のネットワークデバイスを含み、コンテンツホストが第1のネットワークデバイスに接続されていたときにエンドユーザとコンテンツホストとの間で初期インタレスト・パケットによって辿られた経路とは異なってよい。新しい経路を決定することによって、位置コーディネータは、ネットワークを通じたコンテンツ・パケットのインテリジェント・ルーティングを助けることができる。上述されたように、インテリジェント・ルーティングは、経路長さ(例えば、最短経路)、レイテンシー、バンド幅使用量、等を含む様々な因子のいくつに基づいてもよい。位置コーディネータは、新しい経路を決定することにおいて、ネットワークのトポロジの保持されているステータスを利用してよい。例えば、位置コーディネータは、第2のネットワークデバイスが第1及び第3のネットワークデバイスの両方へ接続されていることを承知していてよい。
新しい経路が決定された後、ブロック435で、位置コーディネータは、如何にして新しい経路が実装され得るのかに関する指示を含むメッセージを送信してよい。メッセージ及びその内容は、多種多様な実施形態をとってよく、ネットワーク内の多種多様な要素へ送信されてよい。幾つかの例が図5A乃至5Dにおいて与えられており、以下でより詳細に論じられる。
ブロック440で、要求されたコンテンツを含むコンテンツ・パケットは、デフォルトのルールに従って第2のネットワークデバイスを通じてエンドユーザへルーティングされてよい。上述されたように、コンテンツ・パケットをエンドユーザへルーティングすることは、第2のネットワークデバイスとエンドユーザとの間の経路において、コンテンツ・パケットを受信し、コンテンツ・パケットにおけるコンテンツについてのエントリに関してネットワークデバイスのPITを確認し、エントリが存在する場合にはコンテンツ・パケットにおけるコンテンツをネットワークデバイスのコンテンツストアに格納にし、PITエントリで識別されたインターフェイスへコンテンツ・パケットを送信する如何なるネットワークデバイスも含んでよい。
方法400に対して、変更、追加、又は削除が、本開示の適用範囲から逸脱することなしに行われてよい。例えば、方法400の動作は、異なる順序で実施されてよい。例えば、ブロック415、420及び425は、如何なる順序でも行われてよい。追加的に、又は代替的に、2つ以上の動作は同時に実行されてよい。例えば、ブロック415、420及び425は同時に行われてよい。更に、説明されている動作及びアクションは、例として提供されているにすぎず、動作及びアクションの幾つかは、開示されている実施形態の本質から外れることなしに、任意であっても、より少ない動作及びアクションにまとめられても、あるいは、更なる動作及びアクションに拡張されてもよい。例えば、幾つかの実施形態において、デフォルトのルールから外れて、ブロック440での動作の前にコンテンツ・パケットのルーティング又は処理が存在してよい。
図5Aは、本開示の幾つかの実施形態に従って、ICNネットワークにおけるインテリジェント・ルーティングの他の例となる方法500aのフローチャートである。方法500aは、如何なる適切なシステム、装置、又はデバイスによっても実行されてよい。例えば、図1のネットワーク100又は図2のコンピューティングシステム202は、方法500aに関連する動作の1つ以上を実行してよい。上述されたように、方法500aは、図4のブロック435の実施の一例であってよい。例えば、方法500aの動作を実行するより前に、図4のブロック405、410、415、420及び452での動作の1つ以上が実行されてよい。それら及び他の実施形態において、コンピュータ可読媒体で記憶されているプログラム命令は、方法500aの動作の1つ以上を実行するよう実行されてよい。
ブロック502で、位置コーディネータは、要求元のインターフェイスとともにコンテンツについてのPITエントリを加えるよう第3のネットワークデバイスへ通知を送信してよい。要求元のインターフェイスは、第3のネットワークデバイスを第2のネットワークデバイスへ接続するインターフェイスであってよい。
ブロック504で、第3のネットワークデバイスは、インタレスト・パケットをコンテンツホストへ送信してよい。ブロック506で、コンテンツホストは、インタレスト・パケットで要求されたコンテンツをコンテンツ・パケットにおいて第3のネットワークデバイスへ供給してよい。第3のネットワークデバイスは、位置コーディネータからのメッセージに基づきコンテンツについてPITエントリを生成しているので、第3のネットワークデバイスは、その場合に、デフォルトのルールに従ってコンテンツ・パケットを処理してよい。デフォルトのルールに従うそのような処理は、エンドユーザによって要求されたコンテンツを含むコンテンツ・パケットがネットワークを通じてエンドユーザへルーティングされることをもたらし得る。
方法500aに対して、変更、追加、又は削除が、本開示の適用範囲から逸脱することなしに行われてよい。例えば、方法500aの動作は、異なる順序で実施されてよい。追加的に、又は代替的に、2つ以上の動作は同時に実行されてよい。更に、説明されている動作及びアクションは、例として提供されているにすぎず、動作及びアクションの幾つかは、開示されている実施形態の本質から外れることなしに、任意であっても、より少ない動作及びアクションにまとめられても、あるいは、更なる動作及びアクションに拡張されてもよい。
例えば、幾つかの実施形態において、位置コーディネータは、第1のネットワークデバイスに、コンテンツホストと第1のネットワークデバイスとの間の接続の変化及び/又はコンテンツホストと第3のネットワークデバイスとの間の接続の変化の間に受信される如何なるペンディング・インタレスト・パケットもキャッシング又は別なふうに記憶するよう指示してよい。幾つかの実施形態において、位置コーディネータが、コンテンツホストと第3のネットワークデバイスとの間の接続がコンテンツ・パケットをルーティングしているとの通知を第3のネットワークデバイスから受信した後、位置コーディネータは、第1のネットワークデバイスに、第1のネットワークデバイスで受信されたコンテンツホストに対するペンディング・インタレスト・パケットを送信するよう要求してよい。位置コーディネータがペンディング・インタレスト・パケットを第1のネットワークデバイスに要求するタイミングは、接続のステータスに関して形成及び問い合わせを行う際に使用されるメッセージングプロトコルや、ネットワークで使用されるルーティング・プロトコル、等に基づいてよい。
図5Bは、本開示の幾つかの実施形態に従って、ICNネットワークにおけるインテリジェント・ルーティングの更なる例となる方法500bのフローチャートである。方法500bは、如何なる適切なシステム、装置、又はデバイスによっても実行されてよい。例えば、図1のネットワーク100又は図2のコンピューティングシステム202は、方法500bに関連する動作の1つ以上を実行してよい。上述されたように、方法500bは、図4のブロック435の実施の一例であってよい。例えば、方法500bの動作を実行するより前に、図4のブロック405、410、415、420及び452での動作の1つ以上が実行されてよい。それら及び他の実施形態において、コンピュータ可読媒体で記憶されているプログラム命令は、方法500bの動作の1つ以上を実行するよう実行されてよい。
ブロック512で、位置コーディネータは、コンテンツ・パケットの先頭に付加的なヘッダを含めるようメッセージにおいてコンテンツホストに通知してよい。メッセージは、コンテンツホストへ直接に送信されてよく、あるいは、コンテンツホストへ中継されるよう第3のネットワークデバイスへ送信されてよい。付加的なヘッダは、目標のネットワークデバイスを含んでよく、あるいは、位置コーディネータによって決定された新しい経路沿いの一連のネットワークデバイスを含んでよい。ブロック514で、第3のネットワークデバイスは、付加的なヘッダを伴ったコンテンツ・パケットを受信してよい。第3のネットワークデバイスは、付加的なヘッダに従ってコンテンツ・パケットをルーティングしてよい。方法500bを記載する際の便宜上、目標のネットワークデバイスは第2のネットワークデバイスであってよい。ブロック516で、付加的なヘッダを伴ったコンテンツ・パケットが、付加的なヘッダにおいて指名されている目標のネットワークデバイス又は最終のネットワークデバイス(第2のネットワークデバイス)で受信される場合に、目標又は最終のネットワークデバイスは付加的なヘッダを取り去ってよい。コンテンツ・パケットは、次いで、ネットワークを通じてエンドユーザへ、例えば、デフォルトのルールを用いて、ルーティングされてよい。
方法500bに対して、変更、追加、又は削除が、本開示の適用範囲から逸脱することなしに行われてよい。例えば、方法500bの動作は、異なる順序で実施されてよい。追加的に、又は代替的に、2つ以上の動作は同時に実行されてよい。更に、説明されている動作及びアクションは、例として提供されているにすぎず、動作及びアクションの幾つかは、開示されている実施形態の本質から外れることなしに、任意であっても、より少ない動作及びアクションにまとめられても、あるいは、更なる動作及びアクションに拡張されてもよい。
図5Cは、本開示の幾つかの実施形態に従って、ICNネットワークにおけるインテリジェント・ルーティングの更なる例となる方法500cのフローチャートである。方法500cは、如何なる適切なシステム、装置、又はデバイスによっても実行されてよい。例えば、図1のネットワーク100又は図2のコンピューティングシステム202は、方法500cに関連する動作の1つ以上を実行してよい。上述されたように、方法500cは、図4のブロック435の実施の一例であってよい。例えば、方法500cの動作を実行するより前に、図4のブロック405、410、415、420及び452での動作の1つ以上が実行されてよい。それら及び他の実施形態において、コンピュータ可読媒体で記憶されているプログラム命令は、方法500cの動作の1つ以上を実行するよう実行されてよい。
ブロック520で、位置コーディネータは、第2のネットワークデバイスでのPITにおけるペンディング・インタレスト・パケットエントリが、インタレスト・パケットについてのエントリにおいて第1のネットワークデバイスの名称を含むかどうかを判定してよい。例えば、FIBで使用されるルーティング・プロトコル又は他の因子に応じて、インタレスト・パケットは、PITエントリにおいて第1のネットワークデバイスの名称を含んでよい。例えば、第1のネットワークデバイスの名称によらない場合には、エントリは、/Fujitsu.com/global/about/businesspolicy/tech/index.html/v3/s2を含んでよい。エントリが第1のネットワークデバイスの名称に依存する場合には、それは、first_device/Fujitsu.com/global/about/businesspolicy/tech/index.html/v3/s2を含んでよい。PITエントリが第1のネットワークデバイスの名称に基づかない場合、すなわち、言い換えれば、インタレスト・パケットが第1のネットワークデバイスの名称を含まない場合には、方法500cはブロック522へ進んでよい。ブロック522で、位置コーディネータは、コンテンツを要求している第3のネットワークデバイスへインタレスト・パケットを送信するよう第2のネットワークデバイスに通知してよい。そのような通知は、ペンディング・インタレスト・パケットを第3のネットワークデバイスへ転送するよう第2のネットワークデバイスに知らせることを含んでよい。位置コーディネータからの通知はまた、第2のネットワークデバイスに、第3のネットワークデバイスにコンテンツを要求する更新されたPITエントリを生成させるか、又はそれを行うよう指示してよい。PITエントリを更新することは、第2のネットワークデバイスがインタレスト・パケットを第3のネットワークデバイスへ送出する場合に、デフォルトのルールに従って起こってよい。ブロック524で、第2のネットワークデバイスは、インタレスト・パケットを第3のネットワークデバイスへ送信してよい。幾つかの実施形態において、第3のネットワークデバイスの名称は、インタレスト・パケットが第3のネットワークデバイスへ転送され得るように転送により示唆されるとして、インタレスト・パケットにおいて運ばれてよい。ブロック526で、第3のネットワークデバイスは、インタレスト・パケットを第2のネットワークデバイスから受信し、デフォルトのルールに従ってインタレスト・パケットを処理してよい。その結果、第3のネットワークデバイスはインタレスト・パケットをコンテンツホストへ送信する。ブロック528で、コンテンツホストは、インタレスト・パケットに応答してコンテンツをコンテンツ・パケットにおいて第3のネットワークデバイスへ送信してよい。コンテンツ・パケットは、次いで、デフォルトのルールに従って処理され、ネットワークを通じてエンドユーザへルーティングされてよい。
ブロック520で、PITエントリが第1のネットワークデバイスの名称に基づくと決定される場合には、方法500cはブロック530へ進んでよい。ブロック530で、位置コーディネータは、PITエントリを変更して依存関係を第1のネットワークデバイスから第3のネットワークデバイスへ変えるよう第2のネットワークデバイスに通知を送信してよい。例えば、名称が/first_device/Fujitsu.com/global/about/businesspolicy/tech/index.html/v3/s2であった場合に、エントリは、/thrid_device/Fujitsu.com/global/about/businesspolicy/tech/index.html/v3/s2に変更されてよい。インタレスト・パケットの名称も、新しい名称/thrid_device/Fujitsu.com/global/about/businesspolicy/tech/index.html/v3/s2により然るべく更新されてよい。ブロック532で、第2のネットワークデバイスは、次いで、更新されたインタレスト・パケットをFIBに基づき第3のネットワークデバイスへ送信してよい。更新されたインタレスト・パケットは、名称の変更により第3のネットワークデバイスへルーティングされ得る。ブロック534で、第3のネットワークデバイスは、インタレスト・パケットを受信してよく、デフォルトのルールに従ってインタレスト・パケットをコンテンツホストへ送信してよい。ブロック536で、コンテンツホストは、インタレスト・パケットを受信し、インタレスト・パケットに応答して、要求されているコンテンツをコンテンツ・パケットにおいて第3のネットワークデバイスへ送信してよく、第3のネットワークデバイスは、コンテンツ・パケットを第2のネットワークデバイスへ送信することを含め、コンテンツ・パケットをデフォルトのルールに従って処理してよい。その結果、コンテンツ・パケットはエンドユーザへルーティングされ得る。
方法500cに対して、変更、追加、又は削除が、本開示の適用範囲から逸脱することなしに行われてよい。例えば、方法500cの動作は、異なる順序で実施されてよい。追加的に、又は代替的に、2つ以上の動作は同時に実行されてよい。更に、説明されている動作及びアクションは、例として提供されているにすぎず、動作及びアクションの幾つかは、開示されている実施形態の本質から外れることなしに、任意であっても、より少ない動作及びアクションにまとめられても、あるいは、更なる動作及びアクションに拡張されてもよい。
図5Dは、本開示の幾つかの実施形態に従って、ICNネットワークにおけるインテリジェント・ルーティングの例となる方法500dの更なるフローチャートである。方法500dは、如何なる適切なシステム、装置、又はデバイスによっても実行されてよい。例えば、図1のネットワーク100又は図2のコンピューティングシステム202は、方法500dに関連する動作の1つ以上を実行してよい。方法500dは、位置コーディネータが第2のネットワークデバイスと通信することができ、第2のネットワークデバイスにおけるPITエントリが第1のネットワークデバイスの名称に基づくところの代替の実施形態であってよい。つまり、ブロック552乃至562は、図5Cにおけるブロック530乃至536に取って代わってよい。例えば、方法500dの動作を実行するより前に、図4のブロック405、410、415、420及び452での動作並びに図5Cのブロック520での動作の1つ以上が実行されてよい。
ブロック552で、位置コーディネータは、そもそも第1のネットワークデバイスへルーティングされるペンディング・インタレスト・パケットにおいて付加的なヘッダを含めるよう第2のネットワークデバイスに通知してよい。付加的なヘッダは、ペンディング・インタレスト・パケットがこの場合にルーティングされ得る場所として第3のネットワークデバイスを識別するために使用されてよい。ブロック554で、第2のネットワークデバイスは、第3のネットワークデバイスを識別する付加的なヘッダを伴ったペンディング・インタレスト・パケットを第3のネットワークデバイスへ送信してよい。ブロック556で、第3のネットワークデバイスは、インタレスト・パケットをコンテンツホストへ送信してよい。第3のネットワークデバイスは、インタレスト・パケットにおいて付加的なヘッダを保持してよい。コンテンツホストは、インタレスト・パケットを受信し、コンテンツ・パケットを第3のネットワークデバイスへ返送してよい。
幾つかの実施形態において、コンテンツホストは、付加的なヘッダをインタレスト・パケットから取り、それをコンテンツ・パケットの先頭に含めるよう指示されてよい。ブロック558で、第3のネットワークデバイスは、付加的なヘッダを伴ったコンテンツ・パケットを受信し、それを第2のネットワークデバイスへ送信してよい。コンテンツ・パケットは、第3のネットワークデバイスによってデフォルトのルールに従って処理されてよい。ブロック560で、第2のネットワークデバイスは、第3のネットワークデバイスを通る経路を識別したコンテンツ・パケットから付加的なヘッダを除いてよい。ブロック562で、第2のネットワークデバイスは、デフォルトのルールに従ってコンテンツ・パケットを処理してよい。デフォルトのルールに従ってコンテンツ・パケットを処理することは、コンテンツ・パケットがネットワークを通じてエンドユーザへルーティングされることをもたらしてよい。
方法500dに対して、変更、追加、又は削除が、本開示の適用範囲から逸脱することなしに行われてよい。例えば、方法500dの動作は、異なる順序で実施されてよい。追加的に、又は代替的に、2つ以上の動作は同時に実行されてよい。更に、説明されている動作及びアクションは、例として提供されているにすぎず、動作及びアクションの幾つかは、開示されている実施形態の本質から外れることなしに、任意であっても、より少ない動作及びアクションにまとめられても、あるいは、更なる動作及びアクションに拡張されてもよい。
上述されたように、幾つかの実施形態において、位置コーディネータは、第1のネットワークデバイスに、コンテンツホストと第1のネットワークデバイスとの間の接続の変化の間に受信される如何なるペンディング・インタレスト・パケットもキャッシング又は別なふうに記憶するよう指示してよい。幾つかの実施形態において、位置コーディネータが、コンテンツホストと第3のネットワークデバイスとの間の接続がコンテンツ・パケットをルーティングしているとの通知を第3のネットワークデバイスから受信した後、位置コーディネータは、第1のネットワークデバイスに、第1のネットワークデバイスで受信されるコンテンツホストに対するペンディング・インタレスト・パケットを送信するよう要求してよい。位置コーディネータがペンディング・インタレスト・パケットを第1のネットワークデバイスに要求するタイミングは、接続のステータスに関して形成及び問い合わせを行う際に使用されるメッセージングプロトコルや、ネットワークで使用されるルーティング・プロトコル、等に基づいてよい。位置コーディネータは、次いで、図5C及び5Dを含め本開示で記載されるように、第2のネットワークデバイスと通信することを進めてよい。
本開示で使用されるように、語「モジュール」又は「コンポーネント」は、モジュール若しくはコンポーネントのアクションを実行するよう構成される特定のハードウェア実施、及び/又はコンピューティングシステムの汎用ハードウェア(例えば、コンピュータ可読媒体、プロセッシングデバイス、等)で記憶及び/又は実行され得るソフトウェアオブジェクト若しくはソフトウェアルーチンに言及してよい。幾つかの実施形態において、本開示で記載される種々のコンポーネント、モジュール、エンジン、及びサービスは、コンピューティングシステムで(例えば、別個のスレッドとして)実行するオブジェクト又はプロセスとして実施されてよい。本開示で記載されるシステム及び方法の幾つかは、(汎用ハードウェアで記憶及び/又は実行される)ソフトウェアにおいて実施されるものとして概して記載されているが、特定のハードウェア実施又はソフトウェア及び特定のハードウェア実施の組み合わせも可能であって考えられている。本開示において、「コンピューティングエンティティ」は、本開示で先に定義されているあらゆるコンピューティングシステム、又はコンピューティングシステムで実行されるあらゆるモジュール若しくはモジュールの組み合わせであってよい。
一般的に、本明細書内、特に添付の請求の範囲内(例えば、添付の請求の範囲の要部)で使用される用語は、一般的に「非限定的な(open)」用語として意図されている(例えば、「含んでいる(including)」という用語は、「・・・を含んでいるが限定されない(including, but not limited to)」と解釈されるべきであり、「有している(having)」という用語は、「少なくとも・・・を有している(having at least)」と解釈されるべきであり、「含む(includes)」という用語は、「・・・を含むが限定されない(includes but is not limited to)」と解釈されるべきである。)。
加えて、導入されたクレーム記載(introduced claim recitation)において特定の数が意図される場合、そのような意図は当該クレーム中に明確に記載され、そのような記載がない場合は、そのような意図も存在しない。理解を促すために、例えば、後続の添付する請求の範囲では、「少なくとも1つの(at least one)」及び「1つ以上の(one or more)」といった導入句を使用し、クレーム記載を導入することがある。しかし、このような句を使用するからといって、「a」又は「an」といった不定冠詞によりクレーム記載を導入した場合に、たとえ同一のクレーム内に、「1つ以上の」又は「少なくとも1つの」といった導入句と「a」又は「an」といった不定冠詞との両方が含まれるとしても、当該導入されたクレーム記載を含む特定のクレームが、当該記載事項を1つのみ含む例に限定されるということが示唆されると解釈されるべきではない(例えば、「a」及び/又は「an」は、「少なくとも1つの」又は「1つ以上の」を意味すると解釈されるべきである)。定冠詞を使用してクレーム記載を導入する場合にも同様のことが当てはまる。
加えて、導入されたクレーム記載において特定の数が明示されている場合であっても、そのような記載は、「少なくとも」記載された数を意味するように解釈されるべきであることは、当業者には理解されるであろう(例えば、他に修飾語のない、単なる「2つの記載事項」という記載がある場合、この記載は、「少なくとも」2つの記載事項、又は「2つ以上の」記載事項を意味する)。更に、「A、B及びC等のうち少なくとも1つ」又は「A、B及びC、等のうちの1つ以上」に類する表記が使用される場合、一般的に、そのような構造は、Aのみ、Bのみ、Cのみ、AとBの両方、AとCの両方、BとCの両方、又はAとBとCの全て、等などを有するよう意図される。
更に、2つ以上の選択可能な用語を表す実質的にあらゆる離接語及び/又は離接句は、説明文内であろうと、請求の範囲内であろうと、又は図面内であろうと、それら用語のうちの1つ、それらの用語のうちのいずれか、又はそれらの用語の両方を含む可能性を意図すると理解されるべきである。例えば、「A又はB」という句は、「A又はB」、あるいは、「A及びB」の可能性を含むことが理解されるべきである。
本開示において挙げられている全ての例及び条件付き言語は、当該技術を促進することに本発明者によって寄与される概念及び本発明を読者が理解するのを助けるよう教育的な目的を意図され、そのような具体的に挙げられている例及び条件に制限されないものとして解釈されるべきである。本開示の実施形態は詳細に記載されてきたが、様々な変更、置換及び代替は、本開示の主旨及び適用範囲から逸脱することなしに、それらの実施形態に対して行わされてよい。
上記の実施形態に加えて、以下の付記を開示する。
(付記1)
情報セントリックネットワーキング(ICN)ネットワークにおけるインテリジェント・ルーティングの方法であって、
コンテンツホストと第1のネットワークデバイスとの間の接続が変化したとの第1の通知を受け取り、
前記コンテンツホストにおいて保持されており、第2のネットワークデバイスへルーティングされるべきコンテンツを要求するペンディング・インタレスト・パケットを前記第1のネットワークデバイスから受け取り、
前記コンテンツホストと第3のネットワークデバイスとの間の接続が変化したとの第2の通知を受け取り、
前記第3のネットワークデバイスを含む、前記ペンディング・インタレスト・パケットによって要求されている前記コンテンツのための前記第2のネットワークデバイスへの新しい経路を決定し、
前記ペンディング・インタレスト・パケットに応答して前記コンテンツを含むコンテンツ・パケットが前記新しい経路に沿って前記第2のネットワークデバイスへルーティングされることを指示するメッセージを発する
ことを含む方法。
(付記2)
前記メッセージを発することは、前記メッセージを前記第3のネットワークデバイスへ送ることを含む、
付記1に記載の方法。
(付記3)
前記メッセージは、前記第3のネットワークデバイスに、前記ペンディング・インタレスト・パケットのためのペンディング・インタレスト・テーブル(PIT)エントリを加えるよう指示し、且つ、前記第3のネットワークデバイスに、対応するインタレスト・パケットを前記コンテンツホストへ送るよう指示する、
付記2に記載の方法。
(付記4)
前記メッセージは、前記第3のネットワークデバイスに、前記コンテンツホストが前記ペンディング・インタレスト・パケットに応答してコンテンツ・パケットの付加的なヘッダを加えることを要求するよう指示し、前記付加的なヘッダは、前記第2のネットワークデバイスを目標ネットワークデバイスとして識別する、
付記2に記載の方法。
(付記5)
前記メッセージを発することは、前記メッセージを前記第2のネットワークデバイスへ送ることを含む、
付記1に記載の方法。
(付記6)
前記第2のネットワークデバイスに係属しているインタレスト・パケットが前記第1のネットワークデバイスの名称を含むかどうかを判定し、
前記第2のネットワークデバイスに係属している前記インタレスト・パケットが前記第1のネットワークデバイスの名称を含まないと決定されると、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットを前記第3のネットワークデバイスへ送るよう指示するように、前記メッセージを構成する
ことを更に有する付記5に記載の方法。
(付記7)
前記第2のネットワークデバイスに係属しているインタレスト・パケットが前記第1のネットワークデバイスの名称を含むかどうかを判定し、
前記第2のネットワークデバイスに係属している前記インタレスト・パケットが前記第1のネットワークデバイスの名称を含むと決定されると、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットに関連するPITエントリを変更して前記第1のネットワークデバイスの名称の代わりに前記第3のネットワークデバイスの名称を含めるよう指示するように、且つ、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットを前記第3のネットワークデバイスへ送るように、前記メッセージを構成する
ことを更に有する付記5に記載の方法。
(付記8)
前記第2のネットワークデバイスに係属しているインタレスト・パケットが前記第1のネットワークデバイスの名称を含むかどうかを判定し、
前記第2のネットワークデバイスに係属している前記インタレスト・パケットが前記第1のネットワークデバイスの名称を含むと決定されると、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットにおいて付加的なヘッダを含めて、前記第3のネットワークデバイスを、前記第2のネットワークデバイスに係属している前記インタレスト・パケットのための目標ネットワークデバイスとして識別するように、前記メッセージを構成する
ことを更に有する付記5に記載の方法。
(付記9)
前記メッセージを発することは、前記メッセージを前記コンテンツホストへ送ることを含む、
付記1に記載の方法。
(付記10)
前記メッセージは、前記コンテンツホストが前記ペンディング・インタレスト・パケットに応答してコンテンツ・パケットのための付加的なヘッダを加えることを要求し、前記付加的なヘッダは、前記第2のネットワークデバイスを識別する、
付記9に記載の方法。
(付記11)
前記コンテンツホストと前記第3のネットワークデバイスとの間の接続が前記ペンディング・インタレスト・パケットを扱うために選択されるまで、前記コンテンツホストにコンテンツを要求する如何なる入来するインタレスト・パケットもキャッシュするように、前記第1のネットワークデバイスへ通知を発する
ことを更に有する付記1に記載の方法。
(付記12)
プロセッサによって実行される場合に、
コンテンツホストと第1のネットワークデバイスとの間の接続が変化したとの第1の通知を受け取り、
前記コンテンツホストにおいて保持されており、第2のネットワークデバイスへルーティングされるべきコンテンツを要求するペンディング・インタレスト・パケットを前記第1のネットワークデバイスから受け取り、
前記コンテンツホストと第3のネットワークデバイスとの間の接続が変化したとの第2の通知を受け取り、
前記第3のネットワークデバイスを含む、前記ペンディング・インタレスト・パケットによって要求されている前記コンテンツのための前記第2のネットワークデバイスへの新しい経路を決定し、
前記ペンディング・インタレスト・パケットに応答して前記コンテンツを含むコンテンツ・パケットが前記新しい経路に沿って前記第2のネットワークデバイスへルーティングされることを指示するメッセージを発する
ことを含む動作を実行するよう構成される命令を有する非一時的なコンピュータ可読媒体。
(付記13)
前記メッセージを発することは、前記メッセージを前記第3のネットワークデバイスへ送ることを含む、
付記12に記載のコンピュータ可読媒体。
(付記14)
前記メッセージは、前記第3のネットワークデバイスに、前記ペンディング・インタレスト・パケットのためのペンディング・インタレスト・テーブル(PIT)エントリを加えるよう指示し、且つ、前記第3のネットワークデバイスに、対応するインタレスト・パケットを前記コンテンツホストへ送るよう指示する、
付記13に記載のコンピュータ可読媒体。
(付記15)
前記メッセージは、前記第3のネットワークデバイスに、前記コンテンツホストが前記ペンディング・インタレスト・パケットに応答してコンテンツ・パケットの付加的なヘッダを加えることを要求するよう指示し、前記付加的なヘッダは、前記第2のネットワークデバイスを目標ネットワークデバイスとして識別する、
付記13に記載のコンピュータ可読媒体。
(付記16)
前記メッセージを発することは、前記メッセージを前記第2のネットワークデバイスへ送ることを含む、
付記12に記載のコンピュータ可読媒体。
(付記17)
前記動作は、
前記第2のネットワークデバイスに係属しているインタレスト・パケットが前記第1のネットワークデバイスの名称を含むかどうかを判定し、
前記第2のネットワークデバイスに係属している前記インタレスト・パケットが前記第1のネットワークデバイスの名称を含まないと決定されると、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットを前記第3のネットワークデバイスへ送るよう指示するように、前記メッセージを構成する
ことを更に含む、付記16に記載のコンピュータ可読媒体。
(付記18)
前記動作は、
前記第2のネットワークデバイスに係属しているインタレスト・パケットが前記第1のネットワークデバイスの名称を含むかどうかを判定し、
前記第2のネットワークデバイスに係属している前記インタレスト・パケットが前記第1のネットワークデバイスの名称を含むと決定されると、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットに関連するPITエントリを変更して前記第1のネットワークデバイスの名称の代わりに前記第3のネットワークデバイスの名称を含めるよう指示するように、且つ、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットを前記第3のネットワークデバイスへ送るように、前記メッセージを構成する
ことを更に含む、付記16に記載のコンピュータ可読媒体。
(付記19)
前記動作は、
前記第2のネットワークデバイスに係属しているインタレスト・パケットが前記第1のネットワークデバイスの名称を含むかどうかを判定し、
前記第2のネットワークデバイスに係属している前記インタレスト・パケットが前記第1のネットワークデバイスの名称を含むと決定されると、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットにおいて付加的なヘッダを含めて前記第3のネットワークデバイスを識別するように、前記メッセージを構成する
ことを更に有する付記16に記載のコンピュータ可読媒体。
(付記20)
前記メッセージを発することは、前記メッセージを前記コンテンツホストへ送ることを含み、
前記メッセージは、前記コンテンツホストが前記ペンディング・インタレスト・パケットに応答してコンテンツ・パケットのための付加的なヘッダを加えることを要求し、前記付加的なヘッダは、前記第2のネットワークデバイスを識別する、
付記12に記載のコンピュータ可読媒体。
100 ネットワーク
110 エンドユーザ
121〜124,300 ネットワークデバイス
130 コンテンツホスト
140 位置コーディネータ
202 コンピューティングシステム
250 プロセッサ
252 メモリ
254 データストレージ
305 コンテンツストア
310 PIT
315 FIB
320a〜320c インターフェイス

Claims (20)

  1. 情報セントリックネットワーキング(ICN)ネットワークにおけるインテリジェント・ルーティングの方法であって、
    コンテンツホストと第1のネットワークデバイスとの間の接続が変化したとの第1の通知を受け取り、
    前記コンテンツホストにおいて保持されており、第2のネットワークデバイスへルーティングされるべきコンテンツを要求するペンディング・インタレスト・パケットを前記第1のネットワークデバイスから受け取り、
    前記コンテンツホストと第3のネットワークデバイスとの間の接続が変化したとの第2の通知を受け取り、
    前記第3のネットワークデバイスを含む、前記ペンディング・インタレスト・パケットによって要求されている前記コンテンツのための前記第2のネットワークデバイスへの新しい経路を決定し、
    前記ペンディング・インタレスト・パケットに応答して前記コンテンツを含むコンテンツ・パケットが前記新しい経路に沿って前記第2のネットワークデバイスへルーティングされることを指示するメッセージを発する
    ことを含む方法。
  2. 前記メッセージを発することは、前記メッセージを前記第3のネットワークデバイスへ送ることを含む、
    請求項1に記載の方法。
  3. 前記メッセージは、前記第3のネットワークデバイスに、前記ペンディング・インタレスト・パケットのためのペンディング・インタレスト・テーブル(PIT)エントリを加えるよう指示し、且つ、前記第3のネットワークデバイスに、対応するインタレスト・パケットを前記コンテンツホストへ送るよう指示する、
    請求項2に記載の方法。
  4. 前記メッセージは、前記第3のネットワークデバイスに、前記コンテンツホストが前記ペンディング・インタレスト・パケットに応答してコンテンツ・パケットの付加的なヘッダを加えることを要求するよう指示し、前記付加的なヘッダは、前記第2のネットワークデバイスを目標ネットワークデバイスとして識別する、
    請求項2に記載の方法。
  5. 前記メッセージを発することは、前記メッセージを前記第2のネットワークデバイスへ送ることを含む、
    請求項1に記載の方法。
  6. 前記第2のネットワークデバイスに係属しているインタレスト・パケットが前記第1のネットワークデバイスの名称を含むかどうかを判定し、
    前記第2のネットワークデバイスに係属している前記インタレスト・パケットが前記第1のネットワークデバイスの名称を含まないと決定されると、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットを前記第3のネットワークデバイスへ送るよう指示するように、前記メッセージを構成する
    ことを更に有する請求項5に記載の方法。
  7. 前記第2のネットワークデバイスに係属しているインタレスト・パケットが前記第1のネットワークデバイスの名称を含むかどうかを判定し、
    前記第2のネットワークデバイスに係属している前記インタレスト・パケットが前記第1のネットワークデバイスの名称を含むと決定されると、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットに関連するPITエントリを変更して前記第1のネットワークデバイスの名称の代わりに前記第3のネットワークデバイスの名称を含めるよう指示するように、且つ、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットを前記第3のネットワークデバイスへ送るように、前記メッセージを構成する
    ことを更に有する請求項5に記載の方法。
  8. 前記第2のネットワークデバイスに係属しているインタレスト・パケットが前記第1のネットワークデバイスの名称を含むかどうかを判定し、
    前記第2のネットワークデバイスに係属している前記インタレスト・パケットが前記第1のネットワークデバイスの名称を含むと決定されると、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットにおいて付加的なヘッダを含めて、前記第3のネットワークデバイスを、前記第2のネットワークデバイスに係属している前記インタレスト・パケットのための目標ネットワークデバイスとして識別するように、前記メッセージを構成する
    ことを更に有する請求項5に記載の方法。
  9. 前記メッセージを発することは、前記メッセージを前記コンテンツホストへ送ることを含む、
    請求項1に記載の方法。
  10. 前記メッセージは、前記コンテンツホストが前記ペンディング・インタレスト・パケットに応答してコンテンツ・パケットのための付加的なヘッダを加えることを要求し、前記付加的なヘッダは、前記第2のネットワークデバイスを識別する、
    請求項9に記載の方法。
  11. 前記コンテンツホストと前記第3のネットワークデバイスとの間の接続が前記ペンディング・インタレスト・パケットを扱うために選択されるまで、前記コンテンツホストにコンテンツを要求する如何なる入来するインタレスト・パケットもキャッシュするように、前記第1のネットワークデバイスへ通知を発する
    ことを更に有する請求項1に記載の方法。
  12. プロセッサによって実行される場合に、
    コンテンツホストと第1のネットワークデバイスとの間の接続が変化したとの第1の通知を受け取り、
    前記コンテンツホストにおいて保持されており、第2のネットワークデバイスへルーティングされるべきコンテンツを要求するペンディング・インタレスト・パケットを前記第1のネットワークデバイスから受け取り、
    前記コンテンツホストと第3のネットワークデバイスとの間の接続が変化したとの第2の通知を受け取り、
    前記第3のネットワークデバイスを含む、前記ペンディング・インタレスト・パケットによって要求されている前記コンテンツのための前記第2のネットワークデバイスへの新しい経路を決定し、
    前記ペンディング・インタレスト・パケットに応答して前記コンテンツを含むコンテンツ・パケットが前記新しい経路に沿って前記第2のネットワークデバイスへルーティングされることを指示するメッセージを発する
    ことを含む動作を実行するよう構成される命令を有する非一時的なコンピュータ可読媒体。
  13. 前記メッセージを発することは、前記メッセージを前記第3のネットワークデバイスへ送ることを含む、
    請求項12に記載のコンピュータ可読媒体。
  14. 前記メッセージは、前記第3のネットワークデバイスに、前記ペンディング・インタレスト・パケットのためのペンディング・インタレスト・テーブル(PIT)エントリを加えるよう指示し、且つ、前記第3のネットワークデバイスに、対応するインタレスト・パケットを前記コンテンツホストへ送るよう指示する、
    請求項13に記載のコンピュータ可読媒体。
  15. 前記メッセージは、前記第3のネットワークデバイスに、前記コンテンツホストが前記ペンディング・インタレスト・パケットに応答してコンテンツ・パケットの付加的なヘッダを加えることを要求するよう指示し、前記付加的なヘッダは、前記第2のネットワークデバイスを目標ネットワークデバイスとして識別する、
    請求項13に記載のコンピュータ可読媒体。
  16. 前記メッセージを発することは、前記メッセージを前記第2のネットワークデバイスへ送ることを含む、
    請求項12に記載のコンピュータ可読媒体。
  17. 前記動作は、
    前記第2のネットワークデバイスに係属しているインタレスト・パケットが前記第1のネットワークデバイスの名称を含むかどうかを判定し、
    前記第2のネットワークデバイスに係属している前記インタレスト・パケットが前記第1のネットワークデバイスの名称を含まないと決定されると、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットを前記第3のネットワークデバイスへ送るよう指示するように、前記メッセージを構成する
    ことを更に含む、請求項16に記載のコンピュータ可読媒体。
  18. 前記動作は、
    前記第2のネットワークデバイスに係属しているインタレスト・パケットが前記第1のネットワークデバイスの名称を含むかどうかを判定し、
    前記第2のネットワークデバイスに係属している前記インタレスト・パケットが前記第1のネットワークデバイスの名称を含むと決定されると、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットに関連するPITエントリを変更して前記第1のネットワークデバイスの名称の代わりに前記第3のネットワークデバイスの名称を含めるよう指示するように、且つ、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットを前記第3のネットワークデバイスへ送るように、前記メッセージを構成する
    ことを更に含む、請求項16に記載のコンピュータ可読媒体。
  19. 前記動作は、
    前記第2のネットワークデバイスに係属しているインタレスト・パケットが前記第1のネットワークデバイスの名称を含むかどうかを判定し、
    前記第2のネットワークデバイスに係属している前記インタレスト・パケットが前記第1のネットワークデバイスの名称を含むと決定されると、前記第2のネットワークデバイスに、該第2のネットワークデバイスに係属している前記インタレスト・パケットにおいて付加的なヘッダを含めて前記第3のネットワークデバイスを識別するように、前記メッセージを構成する
    ことを更に有する請求項16に記載のコンピュータ可読媒体。
  20. 前記メッセージを発することは、前記メッセージを前記コンテンツホストへ送ることを含み、
    前記メッセージは、前記コンテンツホストが前記ペンディング・インタレスト・パケットに応答してコンテンツ・パケットのための付加的なヘッダを加えることを要求し、前記付加的なヘッダは、前記第2のネットワークデバイスを識別する、
    請求項12に記載のコンピュータ可読媒体。
JP2016102438A 2015-06-30 2016-05-23 情報セントリックネットワーキングにおけるインテリジェント・ルーティング Active JP6662195B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201562187158P 2015-06-30 2015-06-30
US62/187,158 2015-06-30
US14/845,151 2015-09-03
US14/845,151 US20170005891A1 (en) 2015-06-30 2015-09-03 Intelligent routing in information centric networking

Publications (2)

Publication Number Publication Date
JP2017017678A true JP2017017678A (ja) 2017-01-19
JP6662195B2 JP6662195B2 (ja) 2020-03-11

Family

ID=57683382

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016102438A Active JP6662195B2 (ja) 2015-06-30 2016-05-23 情報セントリックネットワーキングにおけるインテリジェント・ルーティング

Country Status (2)

Country Link
US (1) US20170005891A1 (ja)
JP (1) JP6662195B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10397809B2 (en) * 2016-05-13 2019-08-27 Cisco Technology, Inc. Mobility loss detection and recovery
US10680938B2 (en) * 2017-09-11 2020-06-09 Futurewei Technologies, Inc. Method and apparatus for information centric networking (ICN) over locator/identifier separator protocol (LISP)
KR20230105592A (ko) * 2022-01-04 2023-07-11 한국전자통신연구원 Icn 네트워크에서 가상 사설 네트워크 서비스 제공 장치 및 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011244445A (ja) * 2010-05-13 2011-12-01 Samsung Electronics Co Ltd コンテンツ中心ネットワーク(ccn)における端末の通信方法とccnにおけるハブの通信方法、そのための記録媒体、及びccnのための端末
WO2014083739A1 (ja) * 2012-11-28 2014-06-05 パナソニック株式会社 受信端末および受信方法
JP2014171128A (ja) * 2013-03-04 2014-09-18 National Institute Of Information & Communication Technology 基地局間ハンドオーバ方法
JP2014529959A (ja) * 2012-09-03 2014-11-13 華為技術有限公司Huawei Technologies Co.,Ltd. 情報中心ネットワークのための一般化デュアルモードデータ転送プレーン
WO2015029321A1 (ja) * 2013-09-02 2015-03-05 日本電気株式会社 通信システム、制御装置、通信方法および記憶媒体

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150091880A (ko) * 2014-02-04 2015-08-12 한국전자통신연구원 모바일 애드혹 네트워크 환경에서 icn 기반 콘텐트 통신 방법 및 장치
US9516144B2 (en) * 2014-06-19 2016-12-06 Palo Alto Research Center Incorporated Cut-through forwarding of CCNx message fragments with IP encapsulation
US10270689B2 (en) * 2014-12-19 2019-04-23 Futurewei Technologies, Inc. Multi-nonce enabled interest packet design for named-data networking
US9629037B2 (en) * 2015-06-12 2017-04-18 Telefonaktiebolaget L M Ericsson (Publ) Handover of a mobile device in an information centric network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011244445A (ja) * 2010-05-13 2011-12-01 Samsung Electronics Co Ltd コンテンツ中心ネットワーク(ccn)における端末の通信方法とccnにおけるハブの通信方法、そのための記録媒体、及びccnのための端末
JP2014529959A (ja) * 2012-09-03 2014-11-13 華為技術有限公司Huawei Technologies Co.,Ltd. 情報中心ネットワークのための一般化デュアルモードデータ転送プレーン
WO2014083739A1 (ja) * 2012-11-28 2014-06-05 パナソニック株式会社 受信端末および受信方法
JP2014171128A (ja) * 2013-03-04 2014-09-18 National Institute Of Information & Communication Technology 基地局間ハンドオーバ方法
WO2015029321A1 (ja) * 2013-09-02 2015-03-05 日本電気株式会社 通信システム、制御装置、通信方法および記憶媒体

Also Published As

Publication number Publication date
JP6662195B2 (ja) 2020-03-11
US20170005891A1 (en) 2017-01-05

Similar Documents

Publication Publication Date Title
KR102033999B1 (ko) 컨텐트 중심 네트워크에서의 통신 방법 및 장치
JP6047229B2 (ja) 情報中心ネットワークにおける名前ベースの近隣探索及びマルチホップサービス探索
US20130219038A1 (en) Router based on core score and method for setting core score and providing and searching content information therein
EP3035638A1 (en) Interest acknowledgements for information centric networking
JP2017069950A (ja) スモールマルチパス又はシングルパス転送状態による情報中心ネットワーキング
JP2007066161A (ja) キャッシュシステム
WO2020249129A1 (zh) 一种网络路由方法及装置
US20160234738A1 (en) Data transmission method for mobile receiver in publish/subscribe system
US10117140B2 (en) Network storage method, switch device, and controller
WO2015014196A1 (zh) 确定内容获取路径、请求处理的方法、装置和系统
US20210112004A1 (en) Apparatus and method for forwarding a packet in content centric network
JP2014241135A (ja) コンテンツ中心ネットワークにおけるノードの通信方法及びそのノード
JP6662195B2 (ja) 情報セントリックネットワーキングにおけるインテリジェント・ルーティング
JP2016082479A (ja) 通信装置、通信方法およびプログラム
AU2018426050B2 (en) Icn packet forwarding method
EP3044933B1 (en) A method for operating an information-centric network and network
US9781038B2 (en) Packet routing and forwarding in information centric networking
US11184460B2 (en) Server device and transfer device for content distribution system
EP2785017B1 (en) Content-centric networking
EP2940967A1 (en) Content-centric networking
JP2007233700A (ja) キャッシュシステム、負荷監視サーバ、キャッシュ管理サーバ及びキャッシュサーバ。
EP4193585A1 (en) Network nodes and methods therein for indirect communication
US10033642B2 (en) System and method for making optimal routing decisions based on device-specific parameters in a content centric network
JP2018049473A (ja) コンテンツ配信システムのサーバ装置、転送装置及びプログラム
KR100507799B1 (ko) 분산형 라우터의 라우팅 엔트리 분산 방법 및 라우팅테이블 구조

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191016

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191023

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191101

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200114

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200127

R150 Certificate of patent or registration of utility model

Ref document number: 6662195

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150