特許第5981367号(P5981367)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ KDDI株式会社の特許一覧

<>
  • 特許5981367-通信装置及びプログラム 図000002
  • 特許5981367-通信装置及びプログラム 図000003
  • 特許5981367-通信装置及びプログラム 図000004
  • 特許5981367-通信装置及びプログラム 図000005
  • 特許5981367-通信装置及びプログラム 図000006
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5981367
(24)【登録日】2016年8月5日
(45)【発行日】2016年8月31日
(54)【発明の名称】通信装置及びプログラム
(51)【国際特許分類】
   H04L 12/701 20130101AFI20160818BHJP
【FI】
   H04L12/701
【請求項の数】7
【全頁数】9
(21)【出願番号】特願2013-37637(P2013-37637)
(22)【出願日】2013年2月27日
(65)【公開番号】特開2014-165857(P2014-165857A)
(43)【公開日】2014年9月8日
【審査請求日】2015年8月13日
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100076428
【弁理士】
【氏名又は名称】大塚 康徳
(74)【代理人】
【識別番号】100112508
【弁理士】
【氏名又は名称】高柳 司郎
(74)【代理人】
【識別番号】100115071
【弁理士】
【氏名又は名称】大塚 康弘
(74)【代理人】
【識別番号】100116894
【弁理士】
【氏名又は名称】木村 秀二
(74)【代理人】
【識別番号】100130409
【弁理士】
【氏名又は名称】下山 治
(74)【代理人】
【識別番号】100134175
【弁理士】
【氏名又は名称】永川 行光
(74)【代理人】
【識別番号】100131886
【弁理士】
【氏名又は名称】坂本 隆志
(74)【代理人】
【識別番号】100170667
【弁理士】
【氏名又は名称】前田 浩次
(72)【発明者】
【氏名】福嶋 正機
(72)【発明者】
【氏名】田上 敦士
(72)【発明者】
【氏名】長谷川 亨
【審査官】 大石 博見
(56)【参考文献】
【文献】 特開2010−226340(JP,A)
【文献】 特開2009−302817(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/701
(57)【特許請求の範囲】
【請求項1】
複数のインタフェースと、
可変長のプレフィクスと出力先のインタフェースとの関係を示す転送情報を保持する保持手段と、
前記転送情報に含まれる、受信パケットの宛先アドレスと一致する最長のプレフィックスを検索する検索手段と、
前記転送情報の前記検索されたプレフィクスに対応するインタフェースにパケットを出力する出力手段と、
を備えており、
前記出力手段は、前記転送情報の前記検索されたプレフィクスの長さを前記出力するパケットに設定することを特徴とする通信装置。
【請求項2】
複数のインタフェースと、
可変長のプレフィクスと出力先のインタフェースとの関係を示す転送情報を保持する保持手段と、
受信パケットの出力先のインタフェースを決定するために、前記転送情報に含まれる、当該受信パケットの宛先アドレスと一致する最長のプレフィックスを検索する第1検索手段と、
受信パケットの出力先のインタフェースを決定するために、当該受信パケットのアドレスの先頭から、当該受信パケットに設定されているプレフィクス長のコンポーネントを抜き出して、当該抜き出したコンポーネントと一致し、かつ、葉プレフィクスであるプレフィクスが前記転送情報に存在するかを検索する第2検索手段と、
受信パケットにプレフィクス長が設定されていると、前記第2検索手段により当該受信パケットの出力先を決定し、前記第2検索手段により当該受信パケットの出力先が決定できないと、前記第1検索手段により当該受信パケットの出力先を決定する様に制御する制御手段と、
を備えており、
前記葉プレフィクスは、前記転送情報に含まれるプレフィクスを木構造で表現したときに葉ノードに対応するプレフィクスであることを特徴とする通信装置。
【請求項3】
前記転送情報は、プレフィクスと、出力先のインタフェースと、当該プレフィクスが葉プレフィクスであるか否かの情報を含むことを特徴とする請求項2に記載の通信装置。
【請求項4】
前記制御手段は、前記転送情報に含まれない葉プレフィクスのプレフィクス長を判定できる情報であるフィルタ情報を保持し、受信パケットに設定されたプレフィクス長の葉プレフィクスが前記転送情報に含まれない場合には前記第2検索手段による検索を行わないことを特徴とする請求項2又は3に記載の通信装置。
【請求項5】
前記転送情報は、前記通信装置が受信パケットの出力先のインタフェースを決定するために使用する総てのプレフィクスと、出力先のインタフェースとの関係を示す第1転送情報と、前記第1転送情報に含まれるプレフィクスのうちの葉プレフィクスと、出力先のインタフェースとの関係を示す第2転送情報を含み、
前記第1検索手段は前記第1転送情報を検索し、前記第2検索手段は前記第2転送情報を検索することを特徴とする請求項2に記載の通信装置。
【請求項6】
前記制御手段は、前記第2転送情報に含まれないプレフィクス長を判定できる情報であるフィルタ情報を保持し、受信パケットに設定されたプレフィクス長が前記第2転送情報に含まれない場合には前記第2検索手段による検索を行わないことを特徴とする請求項5に記載の通信装置。
【請求項7】
請求項1から6のいずれか1項に記載の通信装置としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、パケット通信ネットワークの通信装置に関し、特に、アドレスの一部に基づき転送先を決定する通信装置に関する。
【背景技術】
【0002】
パケット通信ネットワークにおいては、パケットを交換するルータやスイッチ等の通信装置は複数のインタフェースを有し、あるインタフェースでパケットを受信すると、受信パケットが示す宛先アドレスに基づき、当該パケットを出力すべきインタフェースを決定し、当該決定したインタフェースに当該パケットを出力する。なお、アドレスは、1つ以上のコンポーネントの列と定義できる。具体的には、例えば、非特許文献1に記載のIP(インターネット・プロトコル)v4では、アドレスは32ビットのビット列であり、各ビットがコンポーネントである。また、非特許文献2に記載のCCN(Content Centric Network)において、アドレスはコンテンツ名(Content Name)とも呼ばれる任意長の文字列であり、区切り文字であるスラッシュ"/"で区切られた部分がコンポーネントとなる。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】RFC791、1981年9月
【非特許文献2】Van Jacobson,et al.,"NetworkingNamed Content",CoNEXT'09,2009年
【発明の概要】
【発明が解決しようとする課題】
【0004】
通常、通信プロトコルで使用するアドレスの総数は膨大であるため、通信装置がパケットの出力先のインタフェースをアドレス毎に管理することは現実的ではない。このため、通信装置は、通常、アドレスの先頭部分を抜き出した可変長の"プレフィクス"と、パケットの出力先インタフェースとの関係を転送情報(Forwarding Information)として管理する。例えば、図1(A)に示す様に2つの通信装置5及び6が接続されているものとする。なお、図1(A)において、各通信装置5及び6は3つのインタフェース(それぞれ、番号#1、#2、#3で示す。)を有し、通信装置5のインタフェース#3と、通信装置6のインタフェース#1が接続されている。また、通信装置5が有する転送情報が図1(B)の通りであり、通信装置6が有する転送情報が図1(C)の通りであるものとする。
【0005】
図1(A)に示す様に、通信装置5がインタフェース#1で、宛先アドレスが"/aaa/bbb/ccc"のパケットを受信したものとする。なお、このアドレスは、非特許文献2で開示されているものであり3つのコンポーネントで構成されている。なお、以下の説明においてアドレス長とは、アドレスに含まれるコンポーネントの長さとし、プレフィクス長とは、プレフィクスに含まれるコンポーネントの長さとする。よって、アドレス"/aaa/bbb/ccc"の長さは3である。通信装置5は、図1(B)に示す転送情報から、宛先アドレスと一致するプレフィクスを検索する。図1(B)に示す転送情報において、番号#2のエントリは、プレフィクスが"/aaa"であり、受信したパケットの宛先アドレスの先頭部分と一致し、さらに、番号#3のエントリは、プレフィクスが"/aaa/bbb"であり、受信したパケットの宛先アドレスの先頭部分と一致する。
【0006】
この様な場合、通信装置5は、最も長いプレフィクスのエントリに従いパケットを転送する。つまり、図1(B)に示す転送情報の番号#2のエントリのプレフィクス長は1であり、番号#3のエントリのプレフィクス長は2であるため、通信装置5は、番号#3のエントリに従い、受信したパケットをインタフェース#3に出力する。したがって、通信装置6は、通信装置5が転送したパケットを受信する。なお、図1の通信装置5において、受信したパケットの宛先アドレスと一致するプレフィクスが存在しない場合には、番号#1のエントリに従い、インタフェース#1に受信したパケットを出力する。通信装置6が有する図1(C)に示す転送情報において、宛先アドレス"/aaa/bbb/ccc"に一致するプレフィクスは、番号#2のエントリのみであるため、通信装置6は、インタフェース#3に受信したパケットを転送する。
【0007】
上記の様に、パケットは、所謂、"最長プレフィックス検索"に従い転送される。しかしながら、パケットを受信した段階において、通信装置は、自装置が有する転送情報のプレフィクスのうち、どの長さのプレフィクスと、受信したパケットの宛先アドレスが一致するかについての情報を保持してはいない。このため、例えば、通信装置5は、まず、プレフィクス長が1であるものとして、転送情報に"/aaa"のプレフィクスが存在するかを検索する。続いて、プレフィクス長が2であるものとして"/aaa/bbb"のプレフィクスが存在するかを検索する。図1(B)に示す転送情報に含まれるプレフィクス長の最大値は"2"であるため、通信装置5は、この2回の検索により検索された転送情報のエントリのうち、最大のプレフィクス長のエントリに従いパケットの転送を行う。
【0008】
なお、図1(B)の転送情報に含まれるプレフィクス長の最大値が"N"であると、通信装置5は、上記検索をN回実行する必要がある。なお、上記例において検索はプレフィクス長の昇順に行ったが降順に行うこともできる。降順で行う場合には、最初に一致したものが最長プレフィクスであるため、転送情報に含まれるプレフィクス長の最大値が"N"であったとしもてN回未満の検索で判定できる場合がある。しかしながら、いずれにしても、検索回数は、転送情報に含まれるプレフィクス長の数の範囲が多くなる程、多くなり、検索時間が長くなる。
【0009】
本発明は、転送情報の検索時間を短くできる通信装置を提供するものである。
【課題を解決するための手段】
【0010】
本発明の一態様によると、通信装置は、複数のインタフェースと、可変長のプレフィクスと出力先のインタフェースとの関係を示す転送情報を保持する保持手段と、前記転送情報に含まれる、受信パケットの宛先アドレスと一致する最長のプレフィックスを検索する検索手段と、前記転送情報の前記検索されたプレフィクスに対応するインタフェースにパケットを出力する出力手段と、を備えており、前記出力手段は、前記転送情報の前記検索されたプレフィクスの長さを前記出力するパケットに設定することを特徴とする。
【0011】
本発明の一態様によると、通信装置は、複数のインタフェースと、可変長のプレフィクスと出力先のインタフェースとの関係を示す転送情報を保持する保持手段と、受信パケットの出力先のインタフェースを決定するために、前記転送情報に含まれる、当該受信パケットの宛先アドレスと一致する最長のプレフィックスを検索する第1検索手段と、受信パケットの出力先のインタフェースを決定するために、当該受信パケットのアドレスの先頭から、当該受信パケットに設定されているプレフィクス長のコンポーネントを抜き出して、当該抜き出したコンポーネントと一致し、かつ、葉プレフィクスであるプレフィクスが前記転送情報に存在するかを検索する第2検索手段と、受信パケットにプレフィクス長が設定されていると、前記第2検索手段により当該受信パケットの出力先を決定し、前記第2検索手段により当該受信パケットの出力先が決定できないと、前記第1検索手段により当該受信パケットの出力先を決定する様に制御する制御手段と、を備えており、前記葉プレフィクスは、前記転送情報に含まれるプレフィクスを木構造で表現したときに葉ノードに対応するプレフィクスであることを特徴とする。
【発明の効果】
【0012】
転送情報の検索時間が短くなる。
【図面の簡単な説明】
【0013】
図1】最長プレフィックス検索の説明図。
図2】一実施形態によるプレフィクス検索の考え方を示す図。
図3】問題点の説明図。
図4】葉プレフィクスの説明及び葉プレフィクスのみを含む転送情報を示す図。
図5】一実施形態による通信装置の概略的な構成図。
【発明を実施するための形態】
【0014】
以下、本発明の例示的な実施形態について図面を参照して説明する。なお、以下の各図においては、実施形態の説明に必要ではない構成要素については図から省略する。
【0015】
本実施形態は、隣接する通信装置の転送情報には、同じプレフィックスが多く含まれる傾向があることを利用している。したがって、通信装置は、パケットを転送する際に、当該パケットに自装置で一致したプレフィクス長を設定する。また、プレフィクス長が設定されたパケットを受信した場合、通信装置は、設定されたプレフィクス長により転送情報を検索する。この構成により、検索時間を短くすることができる。以下、図2を用いて具体的に説明する。
【0016】
図2(A)は、本実施形態による通信装置1及び2を示し、図2(A)において、各通信装置1及び2は3つのインタフェース(それぞれ、番号#1、#2、#3で示す。)を有し、通信装置1のインタフェース#3と、通信装置2のインタフェース#1が接続されている。また、通信装置1が有する転送情報が図2(B)の通りであり、通信装置2が有する転送情報が図2(C)の通りであるものとする。図2(B)及び(C)に示す様に転送情報に含まれるプレフィクスは固定長ではなく可変長である。
【0017】
図2(A)に示す様に、通信装置1がインタフェース#1で、宛先アドレスが"/aa/bb/cc/dd"のパケットを受信したものとする。なお、通信装置1がインタフェース#1で受信するパケットは、例えば、ユーザの端末といった本実施形態による通信装置以外の通信装置からのものであり、よって、パケットにはプレフィクス長が設定されていないものとする。したがって、通信装置1は、従来と同様に最長プレフィックス検索を行う。図2(B)の転送情報から明らかな様に、番号#3のエントリのプレフィクス"/aa/bb""が、アドレス"/aa/bb/cc/dd"に一致する最長のプレフィクスであり、よって、通信装置1は、インタフェース#3にパケットを出力する。なお、このとき、通信装置1は、転送情報において、受信パケットの宛先アドレスに一致した最長プレフィクスの長さ、つまり、番号#3のエントリのプレフィクス長である"2"を示す情報をパケットの所定のヘッダ位置に追加する。
【0018】
通信装置2は、このパケットをインタフェース#1で受信する。通信装置2が受信するパケットにはプレフィクス長が設定されているため、通信装置2は、アドレス"/aa/bb/cc/dd"の先頭から2つのコンポーネントを抜き出した"/aa/bb"が、転送情報に含まれているかを検索する。図2(C)の転送情報においては、番号#2のエントリが検索され、よって、通信装置2は、番号#2のエントリに従い、インタフェース#3に当該パケットを出力する。なお、"/aa/bb"をプレフィクスとするエントリが転送情報に含まれていない場合には、通信装置2は、通常の最長プレフィックス検索を行ってパケットを転送する。なお、この際、通信装置2は、一致したプレフィクス長を転送するパケットに設定し直す。
【0019】
以上の通り、パケットを転送する際に、一致したプレフィクス長を転送するパケットに設定することで、下流側の通信装置においては1回の検索で転送先を決定できる可能性が高くなり、よって、検索時間を短くしてスループットを高めることができる。
【0020】
続いて、上記処理を単純に行った場合の問題点について図3を用いて説明する。図3図2の違いは、図3(C)に示す通信装置2の転送情報の番号#3のエントリのみである。通信装置2が、受信パケットに含まれるプレフィクス長のみに従い転送情報を検索すると、番号#2のエントリに従い図3(A)に示す様に、受信パケットをインタフェース#3に出力してしまう。しかしながら、図3(C)の番号#3のエントリのプレフィクスが、受信パケットの宛先アドレスと最長で一致するものであり、よって、本来、通信装置2は、インタフェース#2にパケットを出力し、さらに、出力するパケットに設定するプレフィクス長を"3"としなければならない。
【0021】
上記問題は、受信パケットに設定されたプレフィクス長に従いアドレスから抜き出したプレフィクスの後ろ側にさらにコンポーネントを付加したプレフィクスが転送情報に存在する場合に生じ得る。この問題を回避するため、本実施形態において各通信装置は、通常の転送情報(第1転送情報)とは別に第2転送情報を保持する。ここで、第2転送情報とは、第1転送情報から葉プレフィクスに関するエントリを抜き出したものである。ここで、葉プレフィクスとは、第1転送情報にあるプレフィクスを木構造のノードに対応させて表したときに、その葉ノードに相当するプレフィクスである。たとえば、図3(C)に示す第1転送情報の各エントリの各プレフィクスは、図4(A)の木構造で表すことができる。この場合、葉プレフィクスは、番号#3のエントリの"/aa/bb/cc"と、番号#4のエントリの"/bb/cc"である。したがって、第2転送情報は図4(B)の通りとなる。なお、葉プレフィクスは、そのプレフィクスの後ろ側にコンポーネントが付加されたプレフィクスが、同じ転送情報内にないプレフィクスと定義することもできる。
【0022】
本実施形態における通信装置は、プレフィクス長が設定されたパケットを上流側の通信装置から受信すると、受信パケットの宛先アドレスの先頭から当該プレフィクス長だけ抜き出したプレフィクスが、第2転送情報に存在するかを判定し、存在する場合には、第2転送情報に従いパケットを転送する。一方、存在しない場合には、第1転送情報に従い従来と同様に最長プレフィックス検索を行ってパケットを転送する。この構成により平均的な検索時間を、常に最長プレフィックス検索を行う場合より短くすることができる。なお、例えば、第1転送情報及び第2転送情報は、連想配列を使用することができる。また、第1転送情報は、トライ木とすることもできる。
【0023】
図5は、本実施形態による通信装置の概略的な構成図である。なお、図5において、制御部15は、その他の機能部と制御情報を送受できる様に構成されている。また、保持部16は、メモリ等の情報の記憶部であり、第1転送情報131及び第2転送情報132を含む転送情報13を保持している。
【0024】
複数のインタフェースを含むインタフェース部11で受信したパケットは検索部12に送られる。制御部15は、受信パケットのヘッダにプレフィクス長が設定されているか否かを判定し、プレフィクス長が設定されていれば、第2検索部122に第2転送情報132による検索を行わせる。このとき、第2検索部122は、上述した様に、受信パケットの宛先アドレスの先頭から、受信パケットに設定されているプレフィクス長だけコンポーネントを抜き出し、抜き出したコンポーネントにより第2転送情報132を検索する。抜き出したコンポーネントが第2転送情報132に存在すると、出力部14は、検索された第2転送情報132のエントリに従い判定されたインタフェースに受信パケットを出力する。また、その際、出力部14は、転送するパケットのヘッダに転送情報に一致したプレフィクス長を設定する。一方、抜き出したコンポーネントが第2転送情報132に存在しない場合と、受信パケットのヘッダにプレフィクス長が設定されていない場合、制御部15は、第1検索部121に第1転送情報131を使用しての最長プレフィックス検索を行わせる。その場合、判定部14は、第1転送情報131のエントリに従い判定されたインタフェースに、最長一致したプレフィクスのプレフィクス長を設定してパケットを出力する。
【0025】
なお、本実施形態においては、第1転送情報131から第2転送情報132を生成したが、第2転送情報132を設けず、代わりに、第1転送情報の各エントリに葉プレフィクスであるか否かの情報を追加する構成とすることもできる。この場合、第2検索部122は、受信パケットに設定されたプレフィクス長に従い、受信パケットの宛先アドレスから抜き出したコンポーネントが第1転送情報131に存在するかを検索し、存在する場合には、検索されたエントリが葉プレフィクスを示している否かを検査する。ここで、葉プレフィクスである場合には、出力部14は、検索したエントリに従うインタフェースに受信パケットを出力する。一方、葉プレフィクスを示していない場合には、第1検索部121が最長プレフィックス検索を行う。
【0026】
なお、例えば、図4(B)に示す第2転送情報132のエントリ数は2つであったが、実際には、この第2転送情報132のエントリ数もかなり大きな値となり得る。このため、例えば、第2転送情報132のエントリのプレフィクス長のうち、その数が零であるプレフィクス長を判定できるフィルタ情報を保持しておく構成とすることもできる。この場合、制御部15は、受信したパケットに設定されているプレフィクス長が、第2転送情報132に存在しないとフィルタ情報により判定されると、第2検索部122による検索は行わず、直接、第1検索部121に検索を行わせる。例えば、図4(B)に示す第2転送情報132ではプレフィクス長2及び3が存在するため、存在するプレフィクス長である2及び3をフィルタ情報とすることができる。この場合、受信パケットに設定されたプレフィクス長が1や4である場合には、第2検索部122による検索をスキップできる。
【0027】
なお、第1転送情報131に葉プレフィクスを示す情報を追加し、第2転送情報132を設けない構成であってもこの構成を適用できる。即ち、第1転送情報14に含まれるプレフィクス長の数、或いは、第1転送情報14に含まれるプレフィクス長のうち葉プレフィクスである数をフィルタ情報とし、受信パケットに設定されているプレフィクス長が第1転送情報131に含まれていないと、第2検索部122による検索は行わず、第1検索部121による最長プレフィックス検索を行う構成とすることができる。また、制御部15は、ブルームフィルタを使用して、第2検索部122による検索を行うか否かの判定を行うこともできる。
【0028】
なお、本発明による通信装置は、コンピュータを上記通信装置として動作させるプログラムにより実現することができる。これらコンピュータプログラムは、コンピュータが読み取り可能な記憶媒体に記憶されて、又は、ネットワーク経由で配布が可能なものである。
図1
図2
図3
図4
図5