JP6474710B2 - 通信装置及びプログラム - Google Patents
通信装置及びプログラム Download PDFInfo
- Publication number
- JP6474710B2 JP6474710B2 JP2015225615A JP2015225615A JP6474710B2 JP 6474710 B2 JP6474710 B2 JP 6474710B2 JP 2015225615 A JP2015225615 A JP 2015225615A JP 2015225615 A JP2015225615 A JP 2015225615A JP 6474710 B2 JP6474710 B2 JP 6474710B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- address
- transfer destination
- interfaces
- ccn
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
- H04L45/7453—Address table lookup; Address filtering using hashing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
- H04L45/306—Route determination based on the nature of the carried application
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/42—Centralised routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/742—Route cache; Operation thereof
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
本開示は、コンテンツを複数のオブジェクトに分割して配信するコンテンツ配信ネットワーク間の中継を行うネットワークにおける通信装置に関する。
コンテンツを示す名前に基づきコンテンツの配信を行うネットワークが提案されている。特許文献1及び非特許文献1は、その様なネットワークの1つであるコンテンツ・セントリック・ネットワーク(CCN:Content Centric Networking)を開示している。
コンテンツ・セントリック・ネットワークにおいて、コンテンツを公開するサーバ装置は当該コンテンツを1つ以上のチャンクと呼ばれるオブジェクトに分割し、クライアント装置は、この分割されたオブジェクト単位でコンテンツを取得する。また、コンテンツ・セントリック・ネットワークにおいて、オブジェクトの転送を行った通信装置(以下、転送装置と呼ぶ。)は、当該オブジェクトを保存(キャッシュ)できる。この転送装置は、自装置が保持しているオブジェクトを要求するインタレスト・パケット(要求パケット)をクライアント装置から受信すると、当該インタレスト・パケットをサーバ装置に向けて転送することなく、自装置が保持するオブジェクトを、当該インタレスト・パケットの送信元のクライアント装置に向けて送信できる。
以下に、転送装置の動作の一例を説明する。転送装置は、CS(Contents Store)と、FIB(Forward Information Base)と、PIT(PIT:Pending Interest Table)を管理する。CSは、自装置が保持しているオブジェクトを示す情報である。FIBは、インタレスト・パケットと、当該インタレスト・パケットを転送すべきインタフェースとの関係を示す情報である。PITは、転送したインタレスト・パケットが要求するオブジェクトと、当該転送したインタレスト・パケットを受信したインタフェースとの関係を示す情報である。
転送装置は、インタレスト・パケットを受信すると、CSを検索し、当該インタレスト・パケットが要求するオブジェクトを保持しているか否かを判定する。保持している場合には、自装置が保持しているオブジェクトを、当該インタレスト・パケットの送信元のクライアント装置に向けて送信する。一方、受信したインタレスト・パケットが要求するオブジェクトを保持していない場合には、PITを検索して、当該インタレスト・パケットと同じオブジェクトを要求するインタレスト・パケットを既に転送し、当該オブジェクトの受信待ちの状態であるかを判定する。受信待ちの状態であると、受信したインタレスト・パケットを転送せず、当該インタレスト・パケットの受信インタフェースを、当該インタレスト・パケットが要求するオブジェクトに関連付ける様にしてPITを更新する。一方、受信したインタレスト・パケットが要求するオブジェクトの受信待ちでなければ、FIBに基づき判定したインタフェースから当該インタレスト・パケットを転送すると共にPITを更新する。また、転送装置は、オブジェクトを受信すると、当該オブジェクトの転送先インタフェースをPITに基づき判定し、当該オブジェクトに関する情報をPITから削除する。また、転送装置は、受信して転送したオブジェクトを保存するとCSを更新する。
非特許文献2は、CCNパケットをオープンフロー(OpenFlow)ネットワークで転送する構成を開示している。ここで、オープンフロー・ネットワークとは、パケットの転送を行う通信装置と、通信装置におけるパケットの転送先を通信装置に設定する制御装置とを分離したネットワークである。オープンフロー・ネットワークの制御装置は、IPパケットの宛先アドレス、送信元アドレス、宛先ポート番号、送信元ポート番号等からフローを識別し、各フローのオープンフロー・ネットワークにおける経路を判定し、判定した経路上の転送装置に対して当該フローに属するパケットの出力インタフェースを設定する。非特許文献2においては、CCNパケットに含まれるコンテンツの名前のハッシュ値を求め、このハッシュ値をIPパケットの宛先アドレスに設定することで、オープンフロー・ネットワークにおいてCCNパケットの転送を行っている。
V.Jacobson,et al.,"Networking Named Content",in Proceedings of ACM CoNEXT 2009,2009年12月
大岡 睦、他、"OpenFlowを用いたCCNアーキテクチャおよびルータの実装"、電子情報通信学会技術研究報告(IN2013−19)、2013年5月
非特許文献2の構成では、制御装置がコンテンツのキャッシュや、各転送装置におけるPIT等を管理するため制御装置での処理負荷が増大する。
本発明は、コンテンツを複数のオブジェクトに分割して配信するコンテンツ配信ネットワーク間の中継を効率よく行うための通信装置及びプログラムを提供するものである。
本発明の一側面によると、通信装置は、複数の第1インタフェースと、1つ以上の第2インタフェースと、を有する通信装置であって、前記複数の第1インタフェースの1つを介して受信した第1パケットが自装置宛でないと、フロー・テーブルに基づき前記複数の第1インタフェースの1つを介して前記第1パケットを転送し、前記第1パケットが自装置宛であると、前記第1パケットの第1フィールドに含まれる値に基づき前記第1パケットの転送先のアドレスを特定できるかを判定し、前記第1パケットの転送先のアドレスを特定できる場合、前記第1パケットの宛先アドレスに、前記特定した転送先のアドレスを設定し、前記フロー・テーブルに基づき前記複数の第1インタフェースの1つを介して転送する転送手段と、自装置宛である前記第1パケットの転送先のアドレスを特定できず、かつ、前記第1パケットが、コンテンツを分割したオブジェクトのオブジェクト名により当該オブジェクトを要求する第1要求パケットを含む場合、前記オブジェクト名に基づき、当該第1要求パケットの転送先が前記複数の第1インタフェースであるか、前記1つ以上の第2インタフェースであるかと、当該第1要求パケットの転送先が前記1つ以上の第2インタフェースである場合には、当該第1要求パケットを出力する第2インタフェースを特定する処理を行う処理手段と、を含むことを特徴とする。
本発明によると、コンテンツを複数のオブジェクトに分割して配信するコンテンツ配信ネットワーク間の中継を効率良く行うことができる。
以下、本発明の例示的な実施形態について図面を参照して説明する。なお、以下の各図においては実施形態の説明に必要ではない構成要素については図から省略する。また、以下の実施形態は例示であり本発明を実施形態の内容に限定するものではない。
図1は、本実施形態によるネットワーク100を示している。ネットワーク100は、CCN200及びCCN300間においてCCNパケットの中継を行う。ここで、CCNパケットは、コンテンツのオブジェクトを要求するインタレスト・パケットと、インタレスト・パケットの応答として送信され、オブジェクトを含むデータ・パケットに分けられる。なお、ネットワーク100は、CCN以外の通常のIPネットワーク間の中継も行う。また、以下では、ネットワーク100がCCN間の中継を行うものとして説明するが、コンテンツをオブジェクトに分割し、オブジェクトの名前に基づきインタレスト・パケットの転送を行う他の任意のネットワークの中継に本発明を適用できる。
ネットワーク100は、オープンフロー・ネットワークと同様に、通信装置と制御装置で構成される。以下、通常のオープンフロー・ネットワークのプロトコルについて説明する。オープンフロー・ネットワークの通信装置はフロー・テーブルを維持している。フロー・テーブルは、フローと出力先の関係を示すテーブルであり、通信装置は、IPパケットを受信すると、IPパケットのヘッダ情報から当該IPパケットが属するフローを判定し、フロー・テーブルで示されるインタフェースから当該IPパケットを出力する。さらに、受信したIPパケットが属するフローについての情報がフロー・テーブルにないと、受信したIPパケットのコピーを制御装置に送信する。制御装置は、受信したIPパケットから、フロー及びその経路を決定し、経路上の各通信装置にフローを特定するために使用するIPパケットのヘッダ情報と出力先との関係を通知して、各通信装置にフロー・テーブルを更新させる。
図4は、本実施形態によるネットワーク100の通信装置の構成図である。CCNインタフェース部1は、CCNと接続するための1つ以上のインタフェースを含んでいる。CCN処理部2は、PIT7及びFIB8に基づきCCNパケット、つまり、インタレスト・パケットや、データ・パケットの転送処理を行う。IPパケット終端部3は、CCNインタフェース部1から受信したCCNパケットを、ネットワーク100で中継する際に、CCNパケットをIPパケットにカプセル化する処理を行う。また、ネットワーク100で中継されたIPパケットに含まれるCCNパケットを、CCNインタフェース部1のインタフェースから送信する場合、受信したIPパケットからCCNパケットを取り出す処理を行う。判定部4とハッシュ値テーブル9については後述する。オープンフロー処理部5は、上述したオープンフロー・プロトコルに従いIPパケットの転送を行う。なお、オープンフロー処理部5は、図示しないフロー・テーブルを保持している。このフロー・テーブルは、フローと出力先インタフェースとの関係を示し、その内容については、図示しない制御装置から指定される。オープンフロー・インタフェース部6は、他の通信装置と接続するための複数のインタフェースを有する。なお、ネットワーク100は、通信装置以外に、通信装置を制御する制御装置を有するが、制御装置と通信装置間での処理は、オープンフロー・プロトコルに従うため、その説明については省略する。
以下では、図2に示す様に、本実施形態による通信装置10、20、30により、CCN200から受信したインタレスト・パケットをCCN300に転送し、転送したインタレスト・パケットの応答としてCCN300から受信したデータ・パケットをCCN200に転送する場合を例にし、各通信装置における動作を説明する。なお、インタレスト・パケットは、オブジェクト名が"/KDDI.com/A/1"であるオブジェクトを要求するものとし、通信装置10、20、30は、このオブジェクトをキャッシュしていないものとする。また、オブジェクト名が"/KDDI.com/A/1"であるオブジェクトを要求するインタレスト・パケットを初めて受信したものとする。
図2の構成においては、通信装置10のオープンフロー・インタフェース部6の1つのインタフェースが、通信装置20のオープンフロー・インタフェース部6の1つのインタフェースと接続しており、通信装置20のオープンフロー・インタフェース部6の1つのインタフェースが、通信装置30のオープンフロー・インタフェース部6の1つのインタフェースと接続している。さらに、通信装置10のCCNインタフェース部1の1つのインタフェースがCCN200と接続しており、通信装置30のCCNインタフェース部1の1つのインタフェースがCCN300と接続している。また、通信装置10、20、30のPIT7、FIB8、ハッシュ値テーブル9には、必要な情報があらかじめ設定されているものとする。また、図2に示す様に、通信装置10、20、30のIPアドレスを、それぞれ、Add#10、Add#20、Add#30とする。
通信装置10は、CCN200からCCNインタフェース部1でインタレスト・パケットを受信すると、受信したインタレスト・パケットをCCN処理部2に出力する。CCN処理部2は、受信したインタレスト・パケットが要求する、その名前が"/KDDI.com/A/1"であるオブジェクトをキャッシュしているか否かを判定する。本例では、キャッシュしていないため、CCN処理部2は、PIT7に基づき、その名前が"/KDDI.com/A/1"であるオブジェクトを要求するインタレスト・パケットを転送済みで、当該オブジェクトの受信待ちであるかを判定する。本例では、受信待ちではないため、CCN処理部2は、当該インタレスト・パケットの転送先をFIB8に基づき決定する。
図5(A)は、通信装置10のFIB8の例を示している。通常、FIB8には、オブジェクト名に対応する転送先インタフェースが示されている。本実施形態において、インタレスト・パケットの転送先がCCNインタフェース部1のインタフェースであると、FIB8の転送先インタフェースには、転送先のインタフェースを特定する情報を設定する。例えば、図5(A)において、オブジェクト名"A"に対しては、CCNインタフェース部1のインタフェースであるIF#1が示されている。一方、インタレスト・パケットの転送先が、オープンフロー・インタフェース部6のインタフェースである場合、つまり、ネットワーク100である場合には、FIB8の転送先インタフェースには、IPアドレスが設定される。図5(A)のFIB8においては、オブジェクト名が"/KDDI.com/A"であるオブジェクトを要求するインタレスト・パケットについては、通信装置20のIPアドレスが記載されている。なお、"/KDDI.com/A"とは、"/KDDI.com/A*"の意味であり、"*"は任意の文字列との意味である。つまり、図5(A)の例において、オブジェクト名が"/KDDI.com/A/1"であるオブジェクトを要求するインタレスト・パケットの転送先として、通信装置20のIPアドレスが設定されている。よって、CCN処理部2は、このインタレスト・パケットについては、ネットワーク100で転送するものと判定し、このインタレスト・パケットをIPパケット終端部3に出力する。このとき、CCN処理部2は、FIB8のヒットしたエントリのオブジェクト名である、"/KDDI.com/A"と、その転送先として示されているIPアドレスである、Add#20をIPパケット終端部3に通知する。また、CCN処理部2は、当該インタレスト・パケットの応答として受信するデータ・パケットの出力先を示す情報をPIT7に追加する。この出力先は、当該インタレスト・パケットを受信したCCNインタフェース部1のインタフェースである。
IPパケット終端部3は、図3(A)に示す様に、受信したインタレスト・パケットに返送先アドレス・フィールドと、ハッシュ値フィールドを加え、さらに、IPヘッダを追加してIPパケットを生成する。ここで、返送先アドレス・フィールドには、自装置、つまり、通信装置10のIPアドレスであるAdd#10を格納する。また、ハッシュ値フィールドには、CCN処理部2から通知された"/KDDI.com/A"のハッシュ値を格納する。なお、本例において、"/KDDI.com/A"のハッシュ値を"Hash#1"であるものとする。さらに、IPパケット終端部3は、IPヘッダの宛先アドレスには、CCN処理部2から通知された通信装置20のIPアドレス、つまり、Add#20を設定する。
そして、IPパケット終端部3は、この様にして生成したIPパケットを、判定部4を介してオープンフロー処理部5に出力する。オープンフロー処理部5は、IPパケットの宛先アドレスが自装置ではない場合、通常のオープンフロー・プロトコルに従い処理する。したがって、このIPパケットは、オープンフロー・インタフェース部6のインタフェースを介して通信装置20に送信される。
通信装置20は、通信装置10からオープンフロー・インタフェース部6のインタフェースを介してIPパケットを受信すると、当該IPパケットをオープンフロー処理部5に出力する。オープンフロー処理部5は、IPパケットのIPヘッダの宛先アドレスを確認する。IPヘッダの宛先アドレスが自装置ではないと、通常のオープンフロー・プロトコルに従い、フローを識別し、フロー・テーブルに基づきIPパケットの転送を行う。一方、IPヘッダの宛先アドレスが自装置のものであると、受信したIPパケットを判定部4に出力する。本例においては、宛先アドレスが通信装置20を示しているため、オープンフロー処理部5は、判定部4に受信したIPパケットを出力する。
判定部4は、IPパケットのハッシュ値フィールドに設定されている値が、ハッシュ値テーブル9に存在するかを確認する。ハッシュ値テーブル9とは、IPパケットのハッシュ値フィールドに設定されている値と、転送先のIPアドレスとの対応関係を示すテーブルである。ハッシュ値テーブルに、受信したIPパケットのハッシュ値フィールドに設定されている値が存在すると、通信装置20は、受信したIPパケットのIPヘッダの宛先アドレスにハッシュ値テーブルが示すIPアドレスを設定してオープンフロー処理部5に出力する。オープンフロー処理部5は、判定部4から受信するIPパケットを、通常のオープンフロー・プロトコルに従い処理する。一方、ハッシュ値テーブル9に、受信したIPパケットのハッシュ値フィールドに設定されている値が存在しない場合、判定部4は、IPパケットをIPパケット終端部3に出力する。IPパケット終端部3は、IPパケットからCCNパケットを取り出してCCN処理部2に出力し、CCN処理部2は、FIB8に基づき転送先を判定する。なお、FIB8から転送先を判定できない場合には、当該CCNパケットを廃棄する。
図5(B)は、本例において、通信装置20が有するハッシュ値テーブル9を示している。図5(B)においては、ハッシュ値フィールドに設定されているHash#1の宛先IPアドレスとして、通信装置30のアドレス、つまり、Add#30が設定されている。この場合、通信装置20の判定部4は、受信したIPパケットの宛先アドレスをAdd#30に変更し、変更後のIPパケットをオープンフロー処理部5に出力する。オープンフロー処理部5は、このIPパケットを、オープンフロー・インタフェース部6のインタフェースを介して通信装置30に送信する。
なお、本例においては、通信装置20が有するハッシュ値テーブル9には、Hash#1の宛先IPアドレスとして、通信装置30のアドレスが設定されているものとした。しかしながら、ハッシュ値テーブル9に、Hash#1のエントリが存在しないが、通信装置20のFIB8には、オブジェクト名"/KDDI.com/A/1"の転送先として通信装置30のIPアドレスが設定されている場合も存在する。この場合、判定部4は、IPパケットをIPパケット終端部3に出力し、IPパケット終端部3は、IPパケットからインタレスト・パケットを取り出してCCN処理部2に出力する。CCN処理部2は、インタレスト・パケットが示すオブジェクト名から、当該インタレスト・パケットの転送先を判定する。ここで、本例では、当該インタレスト・パケットの転送先として通信装置30のIPアドレスが設定されている。したがって、通信装置10のCCN処理部2が当該インタレスト・パケットを受信した際の処理と同様に、通信装置20CCN処理部2は、当該インタレスト・パケットを処理し、当該インタレスト・パケットは、図3(A)に示す様に、カプセル化されて通信装置30に送信される。
通信装置30は、通信装置20から受信したIPパケットをオープンフロー処理部5に出力する。この受信したIPパケットの宛先アドレスは、通信装置30のアドレスであるため、オープンフロー処理部5は、このIPアドレスを判定部4に出力する。通信装置30のハッシュ値テーブル9には、ハッシュ値"Hash#1"が格納されていないため、判定部4は、受信したIPパケットをIPパケット終端部3に出力し、IPパケット終端部3は、IPパケットに格納されているインタレスト・パケットをCCN処理部2に出力する。また、IPパケット終端部3は、返送先アドレス・フィールドに設定されている、通信装置10のIPアドレスである、Add#10をCCN処理部2に通知する。
なお、通信装置30は、CCN200とCCN300間で送受信されるCCNパケットではなく、通信装置30が最終的な目的地であるIPパケットも受信する。このIPパケットの宛先アドレスは、通信装置30のアドレスであるが、このIPパケットにはCCNパケットが格納されてはいない。よって、IPパケット終端部3は、判定部4から入力されるIPパケットにCCNパケットが格納されている場合には、当該CCNパケットをCCN処理部2に出力するが、CCNパケットが格納されていない場合には、図示しない処理部にIPパケットのペイロードを出力して自装置で処理する。なお、CCNパケットが格納されているか否かは、例えば、IPヘッダにおいて示す構成とすることができる。
CCN処理部2は、FIB8に基づき当該インタレスト・パケットの転送先インタフェースを判定する。本例では、FIB8には、CCNインタフェース部1のインタフェースが示されており、CCN処理部2は、このインタフェースを介してインタレスト・パケットをCCN300に転送する。また、PIT7には、このインタレスト・パケットの応答として受信するデータ・パケットの送信先として、IPパケット終端部3が通知する通信装置10のIPアドレスを記載する。図6は、このときの通信装置30のPIT7を示している。
続いて、通信装置30のCCN処理部2は、先に送信したインタレスト・パケットの応答として、CCN300からCCNインタフェース部1のインタフェースを介してデータ・パケットを受信する。CCN処理部2は、PIT7に基づき、当該データ・パケットの返送先インタフェースを判定する。ここで、通常、PIT7には、インタフェースを示す値が格納されているが、前述したように、本例において、当該データ・パケットの返送先としては、通信装置10のIPアドレスが格納されている。FIB8での説明と同様に、本実施形態において、データ・パケットの転送先が、CCNインタフェース部1のインタフェースである場合、PIT7の転送先には、インタフェースを特定する情報が格納される。一方、データ・パケットの転送先が、オープンフロー・インタフェース部6のインタフェース、つまり、データ・パケットをネットワーク100で転送する場合には、PIT7の転送先には、IPアドレスが格納される。したがって、CCN処理部2は、PIT7の転送先としてIPアドレスが格納されている場合、当該データ・パケットをIPパケット終端部3に出力する。なお、このとき、CCN処理部2は、PIT7が示すIPアドレス、つまり、本例においては通信装置10のIPアドレスであるAdd#10をIPパケット終端部3に通知する。IPパケット終端部3は、図3(B)に示すIPパケットを生成する。ここで、IPヘッダの宛先アドレスには、CCN処理部2から通知されたIPアドレス、つまり、本例では、通信装置10のIPアドレスを格納する。
IPパケット終端部3が生成したIPパケットは、判定部4を介してオープンフロー処理部5に送信される。オープンフロー処理部5は、IPパケットのIPアドレスに基づき、当該IPパケットを通信装置10に送信する。なお、このIPパケットの宛先アドレスは、通信装置10を示しているため、通信装置20においては、オープンフロー処理部5において単なる転送処理のみが行われる。
通信装置10は、通信装置30から受信したIPアドレスの宛先アドレスが自装置を示しているため、このIPパケットを判定部4に出力する。このIPパケットには、ハッシュ値フィールドが含まれていないため、判定部4は、このIPパケットをIPパケット終端部3に出力する。このIPパケットには、データ・パケット、つまり、CCNパケットが含まれているため、IPパケット終端部3は、このIPパケットからデータ・パケットを取出してCCN処理部2に出力する。CCN処理部2は、PIT7に基づき、CCNインタフェース部1のインタフェースから、当該データ・パケットを送信する。
続いて、ハッシュ値テーブル9の作成について説明する。CCNにおいては、FIB8が保持される。ここで、ハッシュ値テーブル9は、同じ装置が保持するFIB8から生成できる。つまり、ハッシュ値テーブル9は、FIB8の各エントリの内、その転送先にIPアドレスが設定されているエントリのオブジェクト名をハッシュ値に変換し、転送先には同じIPアドレスを設定したものである。なお、この場合、インタレスト・パケットは、CCN200に接続する通信装置からCCN300に接続する通信装置の間に有る総ての通信装置において、判定部4におけるハッシュ値テーブル9を用いたIPヘッダの宛先アドレスの変換が行われ、転送される。しかしながら、本実施形態において、返送先アドレス・フィールドにより、データ・パケットは、CCN300に接続する通信装置からCCN200に接続する通信装置に直接送信され、間にある通信装置においては、オープンフロー処理部5による処理のみが行われる。したがって、データ・パケットを高速に転送することができる。また、インタレスト・パケットについても、中間の通信装置において、CCN処理部2での処理を要しないため、通常のCCNより高速に転送できる。
また、本実施形態のネットワーク100において、図示しない制御装置は、本実施形態との通信装置との間で通常のオープンフローの処理を行うのみであり、制御装置の処理負荷が増大することはない。なお、例えば、通信装置10のFIB8において、"/KDDI.com/A"の転送先としてCCN300と接続する通信装置30のIPアドレスを設定する構成とすることもできる。この場合、インタレスト・パケットについても中間の通信装置における判定部4での処理を省略でき高速に転送を行うことができる。
また、本発明による通信装置は、コンピュータを上記通信装置として動作させるプログラムにより実現することができる。これらコンピュータプログラムは、コンピュータが読み取り可能な記憶媒体に記憶されて、又は、ネットワーク経由で配布が可能なものである。
1:CCNインタフェース部、2:CCN処理部、3:IPパケット終端部、4:判定部、5:オープンフロー処理部、6:オープンフロー・インタフェース部、7:PIT、8:FIB、9:ハッシュ値テーブル
Claims (8)
- 複数の第1インタフェースと、1つ以上の第2インタフェースと、を有する通信装置であって、
前記複数の第1インタフェースの1つを介して受信した第1パケットが自装置宛でないと、フロー・テーブルに基づき前記複数の第1インタフェースの1つを介して前記第1パケットを転送し、前記第1パケットが自装置宛であると、前記第1パケットの第1フィールドに含まれる値に基づき前記第1パケットの転送先のアドレスを特定できるかを判定し、前記第1パケットの転送先のアドレスを特定できる場合、前記第1パケットの宛先アドレスに、前記特定した転送先のアドレスを設定し、前記フロー・テーブルに基づき前記複数の第1インタフェースの1つを介して転送する転送手段と、
自装置宛である前記第1パケットの転送先のアドレスを特定できず、かつ、前記第1パケットが、コンテンツを分割したオブジェクトのオブジェクト名により当該オブジェクトを要求する第1要求パケットを含む場合、前記オブジェクト名に基づき、当該第1要求パケットの転送先が前記複数の第1インタフェースであるか、前記1つ以上の第2インタフェースであるかと、当該第1要求パケットの転送先が前記1つ以上の第2インタフェースである場合には、当該第1要求パケットを出力する第2インタフェースを特定する処理を行う処理手段と、
を含むことを特徴とする通信装置。 - 前記処理手段は、オブジェクト名と、当該オブジェクト名のオブジェクトを要求する要求パケットの転送先との関係を示す第1テーブルに基づき、前記第1要求パケットの転送先が前記複数の第1インタフェースであるか、前記1つ以上の第2インタフェースであるかと、前記第1要求パケットの転送先が前記1つ以上の第2インタフェースである場合には、前記第1要求パケットを出力する第2インタフェースを特定することを特徴とする請求項1に記載の通信装置。
- 前記第1テーブルは、要求パケットの転送先が前記1つ以上の第2インタフェースである場合には、前記1つ以上の第2インタフェースの1つを当該転送先として示しており、要求パケットの転送先が前記複数の第1インタフェースである場合には、アドレスを当該転送先として示していることを特徴とする請求項2に記載の通信装置。
- 前記処理手段は、前記第1要求パケットの転送先として、前記第1テーブルにアドレスが示されていると、前記第1要求パケットをカプセル化して第2パケットを生成し、生成した第2パケットの宛先アドレスに前記第1テーブルに示されたアドレスを設定し、
前記転送手段は、前記第2パケットを、前記フロー・テーブルに基づき前記複数の第1インタフェースの1つを介して転送することを特徴とする請求項3に記載の通信装置。 - 前記第1パケットの第2フィールドにはアドレスが設定されており、
前記処理手段は、前記第1要求パケットの転送先として、前記第1テーブルに第2インタフェースが示されていると、前記第1要求パケットを当該第2インタフェースから出力し、前記第1要求パケットが要求するオブジェクト名と、前記第2フィールドに設定されたアドレスとの関係を第2テーブルに格納し、前記第1要求パケットの応答として当該第2インタフェースを介してオブジェクトを含むデータ・パケットを受信すると、当該データ・パケットをカプセル化して第3パケットを生成し、生成した第3パケットの宛先アドレスに前記第2テーブルに格納したアドレスを設定し、
前記転送手段は、前記第3パケットを、前記フロー・テーブルに基づき前記複数の第1インタフェースの1つを介して転送することを特徴とする請求項3に記載の通信装置。 - 前記第1パケットの第1フィールドには、前記第1要求パケットが要求するオブジェクト名に基づくハッシュ値が格納されることを特徴とする請求項1から5のいずれか1項に記載の通信装置。
- 前記転送手段は、前記ハッシュ値と転送先のアドレスを示す第3テーブルを保持しており、前記第3テーブルに基づき前記第1パケットの転送先のアドレスを特定できるかを判定することを特徴とする請求項6に記載の通信装置。
- 請求項1から7のいずれか1項に記載の通信装置としてコンピュータを機能させることを特徴とするプログラム。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015225615A JP6474710B2 (ja) | 2015-11-18 | 2015-11-18 | 通信装置及びプログラム |
PCT/JP2016/083880 WO2017086330A1 (ja) | 2015-11-18 | 2016-11-16 | 通信装置及びコンピュータ可読記憶媒体 |
CN201680054280.1A CN108605012B (zh) | 2015-11-18 | 2016-11-16 | 通信装置以及计算机可读存储介质 |
EP16866331.8A EP3337108B1 (en) | 2015-11-18 | 2016-11-16 | Communication device and computer readable storage medium |
US15/923,568 US10469384B2 (en) | 2015-11-18 | 2018-03-16 | Communication device and computer-readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015225615A JP6474710B2 (ja) | 2015-11-18 | 2015-11-18 | 通信装置及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017098600A JP2017098600A (ja) | 2017-06-01 |
JP6474710B2 true JP6474710B2 (ja) | 2019-02-27 |
Family
ID=58718919
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015225615A Active JP6474710B2 (ja) | 2015-11-18 | 2015-11-18 | 通信装置及びプログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US10469384B2 (ja) |
EP (1) | EP3337108B1 (ja) |
JP (1) | JP6474710B2 (ja) |
CN (1) | CN108605012B (ja) |
WO (1) | WO2017086330A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10547702B2 (en) * | 2016-11-07 | 2020-01-28 | Cable Television Laboratories, Inc. | Internet protocol over a content-centric network (IPoC) |
US10791051B2 (en) * | 2017-04-18 | 2020-09-29 | Cisco Technology, Inc. | System and method to bypass the forwarding information base (FIB) for interest packet forwarding in an information-centric networking (ICN) environment |
US11277280B2 (en) * | 2018-03-19 | 2022-03-15 | Cable Television Laboratories, Inc. | Content centric networking systems and methods |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8386622B2 (en) | 2008-05-16 | 2013-02-26 | Palo Alto Research Center Incorporated | Method and apparatus for facilitating communication in a content centric network |
KR101913313B1 (ko) * | 2011-12-28 | 2018-10-31 | 삼성전자주식회사 | 게이트웨이에서 인터넷 프로토콜 기반 네트워크를 이용하여 컨텐츠 중심 네트워크를 구현하는 방법 및 그 게이트웨이 |
US9049251B2 (en) * | 2012-02-28 | 2015-06-02 | Futurewei Technologies, Inc. | Method and apparatus for internet protocol based content router |
CN104322020B (zh) * | 2013-03-26 | 2019-01-01 | 松下电器产业株式会社 | 服务器、路由器、接收终端及处理方法 |
US20140376549A1 (en) * | 2013-06-20 | 2014-12-25 | Mediatek Inc. | Packet processing apparatus and method for processing input packet according to packet processing list created based on forwarding decision made for input packet |
US20150281376A1 (en) * | 2014-04-01 | 2015-10-01 | Palo Alto Research Center Incorporated | System and method for device registration and discovery in content-centric networks |
CN104158763A (zh) * | 2014-08-29 | 2014-11-19 | 重庆大学 | 一种基于软件定义的内容中心网络架构 |
-
2015
- 2015-11-18 JP JP2015225615A patent/JP6474710B2/ja active Active
-
2016
- 2016-11-16 CN CN201680054280.1A patent/CN108605012B/zh active Active
- 2016-11-16 WO PCT/JP2016/083880 patent/WO2017086330A1/ja active Application Filing
- 2016-11-16 EP EP16866331.8A patent/EP3337108B1/en active Active
-
2018
- 2018-03-16 US US15/923,568 patent/US10469384B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2017086330A1 (ja) | 2017-05-26 |
US10469384B2 (en) | 2019-11-05 |
JP2017098600A (ja) | 2017-06-01 |
CN108605012B (zh) | 2020-11-03 |
CN108605012A (zh) | 2018-09-28 |
EP3337108B1 (en) | 2019-02-27 |
EP3337108A4 (en) | 2018-09-26 |
US20180205655A1 (en) | 2018-07-19 |
EP3337108A1 (en) | 2018-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11503105B2 (en) | System and method for content retrieval from remote network regions | |
US20130111063A1 (en) | Routing method in content-centric network | |
JP6544401B2 (ja) | パケット転送装置、制御装置、通信システム、通信方法及びプログラム | |
JP5962676B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP6474710B2 (ja) | 通信装置及びプログラム | |
CN106464596A (zh) | 开放流通信方法、系统、控制器和业务网关 | |
US11184460B2 (en) | Server device and transfer device for content distribution system | |
JP6495777B2 (ja) | コンテンツ配信ネットワークの転送装置、サーバ装置及びプログラム | |
JP6590774B2 (ja) | コンテンツ配信システムのサーバ装置、転送装置及びプログラム | |
JP2017147601A (ja) | 通信装置および通信方法 | |
JP6516692B2 (ja) | コンテンツ配信ネットワークの転送装置及びプログラム | |
WO2023085270A1 (ja) | データ転送デバイス、データ処理デバイスおよびデータ処理方法 | |
JP6591946B2 (ja) | コンテンツ配信システムのサーバ装置、転送装置及びプログラム | |
JP6403566B2 (ja) | コンテンツ配信ネットワークの転送装置、クライアント装置及びプログラム | |
WO2023085266A1 (ja) | データ処理システムおよびデータ処理方法 | |
JP2016039467A (ja) | パケット優先制御システムおよびその方法 | |
JP5810047B2 (ja) | 通信システム、及びパケット通信方法 | |
JP2023072287A (ja) | データ転送装置およびデータ転送方法 | |
JP2009147578A (ja) | Ipネットワークにおけるスイッチ装置及びダウンストリームデータ分散配信方法 | |
JP2015207829A (ja) | ゲートウェイ装置及びプログラム | |
JP2012080493A (ja) | アクセス中継方法、アクセス中継プログラム、および、中継装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180307 |
|
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: 20190111 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190130 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6474710 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |