JP3699374B2 - 経路表更新方法およびプログラムおよび記録媒体 - Google Patents

経路表更新方法およびプログラムおよび記録媒体 Download PDF

Info

Publication number
JP3699374B2
JP3699374B2 JP2001246680A JP2001246680A JP3699374B2 JP 3699374 B2 JP3699374 B2 JP 3699374B2 JP 2001246680 A JP2001246680 A JP 2001246680A JP 2001246680 A JP2001246680 A JP 2001246680A JP 3699374 B2 JP3699374 B2 JP 3699374B2
Authority
JP
Japan
Prior art keywords
area
route
added
empty
areas
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.)
Expired - Fee Related
Application number
JP2001246680A
Other languages
English (en)
Other versions
JP2003060688A (ja
Inventor
雅則 宇賀
公平 塩本
昌昭 重谷
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2001246680A priority Critical patent/JP3699374B2/ja
Publication of JP2003060688A publication Critical patent/JP2003060688A/ja
Application granted granted Critical
Publication of JP3699374B2 publication Critical patent/JP3699374B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、IPルータ等のパケット転送装置において、パケット転送処理を行うに当り、パケットヘッダ情報を元にパケットの転送経路を決定する際に検索する経路の検索方法に関する。
【0002】
【従来の技術】
IPルータ等のパケット転送装置においては、パケットヘッダに搭載された宛先アドレスを元に経路表を検索し、次の方路を決定する。経路表には経路と次の方路との関係を保持している。
【0003】
インターネットではCIDR(Classless Inter Domain Routing)の機構が導入されており、経路表の経路は32ビットのIPアドレスとそれに対するプレフィクス長の組み合わせで表現される。経路表の経路は“IPアドレス/プレフィクス長”の形式で表される。
【0004】
経路のうち、プレフィクス長で指定された長さ以降のビットに関してはDon’t Careである。例えば129.131.175.129/32は32ビット全てのビットがDon’t Careでない経路であり、129.60.83/24の先頭の24ビットが有効な経路である。パケットヘッダの宛先アドレスが129.60.83.1も129.60.83.111も同じ経路129.60.83/24に一致する。
【0005】
経路表はパケットヘッダの宛先アドレスをキーとして用いて検索する。経路表を検索する際に、CIDRでは最長一致と呼ばれる経路検索規則に基づく。最長一致とはキーに用いる宛先アドレスが最も長く一致するものを正解とするものである。例えば、経路表に経路129.38.111/24と経路129.38/16の二つの経路がある場合に、129.38.111.2という宛先アドレスを持つパケットが到着した場合は、経路129.38.111/24の方がより長い範囲で一致するので、それを正解とする。
【0006】
このような最長一致検索を行う方法としてPatriciaと呼ばれるデータ構造で経路表を表現する手法が取られてきた。Patriciaとは経路表をツリー構造で表現するものである。ツリーの各ノードにはアドレスの参照ビット位置と経路とが記載されており、宛先アドレスの参照ビット位置と経路の参照ビット位置とが一致しているかどうかで経路の判定を行うものである。図5に従来のPatriciaによる経路表の実現例を示す。Patriciaの検索時間はツリーの深さに依存し、ツリーの深さはIPアドレスの幅に依存する。IPv4アドレスでは最大33段になる。IPv6アドレスでは最大129段になる。メモリ参照を最大129段を行うとパケット転送処理時間が増大する。
【0007】
最長一致による経路表検索を行う別の手段として連想メモリCAM(Content-Addressable-Memory)と呼ばれる素子を使う方法がある。CAMとはアドレスをキーとしてアクセスするのではなく、各番地に記録された値をキーとしてアクセスすることができる記憶素子である。各番地には“0”と“1”のバイナリ(Binary)の値だけでなく“Don’t Care”も使えるターナリー(Ternary)のものもあり、このようなターナリーの連想メモリ(TCAM)を用いることで高速な経路表の検索が可能となる。TCAMでは複数のものが同時にキーとして入力されたものに一致する場合は、最も若い番地にいるものが選ばれる。
【0008】
図6はTCAMの原理を示す図であるが、図6に示すように、TCAMでプレフィクス長はマスクを用いて表現される。マスクビットが1の場合はプレフィクスの値は有効で、マスクビットが“0”の場合はプレフィクスの値はDon’tCare扱いとなる。図6で例えば1番上のプレフィクスは上位4ビットが有効で下位2ビットはDon’t Careとなる。
【0009】
TCAMを用いて最長一致検索を行う場合はプレフィクス長が長い順番にTCAMの若番地に格納する必要がある。最低条件は同じプレフィクス部分を共有する経路同士はプレフィクス長が長いものがより若い番地に格納される必要がある。TCAMの格納領域をプレフィクス長毎に分割するのが簡便なやり方である。図7はそのような領域の分け方を示すものである。129.60.83.121/31はプレフィクス長が31の領域に格納し、129.60.83.121/30は30の領域に格納する。
【0010】
【発明が解決しようとする課題】
インターネットでは経路表の更新が頻繁に行われる。このためTCAMを用いて経路表を実現する際には、経路が追加あるいは削除されるたびにTCAMの中に格納された経路を並べ替えなければならない。
【0011】
図8はそのような状況を説明する図である。プレフィクス長が32の経路を経路表に追加する際には、それより老番地の経路をすべて一つずつずらす必要がある。経路表のエントリ数が10万以上ともなると、その手間は膨大となる。
【0012】
それを解決するために、プレフィクス長毎に空き領域を設けることが有効であるが、その空き領域を適切な大きさを設けるための経路の更新方法が十分に確立されていない。例えば、プレフィクス長毎の経路数に応じて空き領域を作成するようにすると、作成時にプレフィクス長毎の経路数を集計し、そこから空き領域数を計算しなければならず、計算に時間がかかる上、並べ替えを前回行ったときから経路数の分布に大きな差分があると、多くの経路の並べ替えが必要になるという問題がある。
【0013】
本発明は、このような背景に行われたものであって、経路の追加または削除の手間を減少させることができる経路表更新方法を提供することを目的とする。すなわち、本発明は、追加または削除の際に、基本的には上下の空き領域を比較するだけであるので、計算に時間がかかることがなく、高速に経路表の更新を行うことができる経路表更新方法を提供することを目的とする。
【0014】
【課題を解決するための手段】
本発明の第一の観点は、IPアドレスとプレフィクス長との組み合わせにより表現された経路を格納する連想メモリをプレフィクス長のグループ毎に領域に分割し各領域の先頭番地を指す先頭ポインタを付与し、この各領域の中で使用されている最老番地を指す末尾ポインタを付与し、初期段階では、前記各領域間に経路の追加のための空き領域を設ける経路表更新方法である。
【0015】
ここで、本発明の特徴とするところは、経路の追加を行うべき被追加領域に直接接している上下の領域に空き領域がある場合は、この上下の空き領域のうち空き領域の大きい方へ経路の追加を行い拡大された前記被追加領域に対応してポインタを再付与するところにある。
【0016】
また、経路の追加を行うべき被追加領域に直接接している上下の領域に空き領域が無い場合は、最近接の空き領域を探索し、この最近接の空き領域と前記被追加領域との間に挟まれる他領域の経路を前記最近接の空き領域に移動させることにより前記被追加領域の上または下に空き領域を出現させ、この出現させた空き領域に経路の追加を行い拡大された前記被追加領域および経路を移動させた前記他領域に対応してポインタを再付与することが望ましい。
【0017】
すなわち、プレフィクス長毎に分割した各領域は先頭ポインタが指す最若番地から老番地方向に向けて順番に空き領域なく番地を使っていく。このような領域の使い方のため先頭ポインタと末尾ポインタとを用いる。先頭ポインタが指す番地から末尾ポインタが指す番地までは全て使用中である。経路を空き領域に追加するときに上下の空き領域(プレフィクス長Nの経路を追加しようとした場合にはプレフィクス長Nの先頭ポインタからプレフィクス長N+1の末尾ポインタの間が上の空き領域、プレフィクス長Nの末尾ポインタからプレフィクス長N−1の先頭ポインタの間が下の空き領域となる)のうち空き領域が大きい方の端に経路を追加する。
【0018】
上の空き領域が大きければ、プレフィクス長Nの領域の最上端に追加すべき経路を挿入し、先頭ポインタを上へ1つずらす。もし下の空き領域が大きければプレフィクス長Nの最下端に経路を追加し、末尾ポインタを下へ1つずらす。直接接している上下の領域に空き領域が無い場合には、最近接の空き領域を探し、その空き領域まで全てのポインタをずらし、経路を追加する。
【0019】
また、経路の削除後にその経路が格納されていた被削除領域の上下の空き領域のうち空き領域の小さい方の空き領域を大きくするように前記被削除領域の経路を移動させ経路を移動させた前記被削除領域に対応してポインタを再付与することが望ましい。
【0020】
すなわち、経路の削除を行う際には、削除で空いたところに先頭ポインタまたは末尾ポインタの経路を入れる。上下どちらの経路を空いたところへ入れるかは、上下の空き領域の大きさを比較し、空き領域が小さい方に接している経路を選択する。プレフィクス長Nの経路を削除する場合には、上下の空き領域を比較し、上の空き領域が小さい場合には、プレフィクス長Nの末尾の経路を削除で空いたところへ移動し、末尾ポインタを1つ上にずらす。下の領域が小さい場合には、プレフィクス長Nの先頭経路を削除で空いたところへ移動し、先頭ポインタを1つ下へずらす。ここでは空き領域が無い状態は空き領域最小の状態と考える。
【0021】
これにより空き領域を無駄なく利用しつつ、上下の空き領域を比較するだけなので計算量が少なく追加削除する場所を決定することができ、高速な経路表更新が可能となる。
【0022】
本発明の第二の観点は、情報処理装置にインストールすることにより、その情報処理装置に、IPアドレスとプレフィクス長との組み合わせにより表現された経路を格納する連想メモリをプレフィクス長のグループ毎に領域に分割し各領域の先頭番地を指す先頭ポインタを付与し、この各領域の中で使用されている最老番地を指す末尾ポインタを付与し、初期段階では、前記各領域間に経路の追加のための空き領域を設ける経路表更新方法を実行させるプログラムである。
【0023】
ここで、本発明の特徴とするところは、経路の追加を行うべき被追加領域に直接接している上下の領域に空き領域がある場合は、この上下の空き領域のうち空き領域の大きい方へ経路の追加を行い拡大された前記被追加領域に対応してポインタを再付与する手順を実行させるところにある。
【0024】
また、経路の追加を行うべき被追加領域に直接接している上下の領域に空き領域が無い場合は、最近接の空き領域を探索し、この最近接の空き領域と前記被追加領域との間に挟まれる他領域の経路を前記最近接の空き領域に移動させることにより前記被追加領域の上または下に空き領域を出現させ、この出現させた空き領域に経路の追加を行い拡大された前記被追加領域および経路を移動させた前記他領域に対応してポインタを再付与する手順を実行させることが望ましい。
【0025】
また、経路の削除後にその経路が格納されていた被削除領域の上下の空き領域のうち空き領域の小さい方の空き領域を大きくするように前記被削除領域の経路を移動させ経路を移動させた前記被削除領域に対応してポインタを再付与する手順を実行させることが望ましい。
【0026】
本発明の第三の観点は、本発明のプログラムが記録された前記情報処理装置読み取り可能な記録媒体である。本発明の記録媒体を用いて本発明のプログラムを前記情報処理装置にインストールすることができる。また、本発明のプログラムを保持するサーバからネットワークを介して前記情報処理装置が本発明のプログラムをダウンロードすることによっても前記情報処理装置は本発明のプログラムをインストールすることができる。
【0027】
【発明の実施の形態】
本発明実施例を図1ないし図4を参照して説明する。図1は本発明実施例の連想メモリにおける領域の構成を示す図である。図2は本発明実施例における領域拡張が不要の場合の経路の追加時の動作を説明するための図である。図3は本発明実施例における領域拡張が必要の場合の経路の追加時の動作を説明するための図である。図4は本発明実施例における経路の削除時の動作を説明するための図である。
【0028】
本発明は、図1に示すように、IPアドレスとプレフィクス長との組み合わせにより表現された経路を格納する連想メモリをプレフィクス長のグループ毎に領域に分割し各領域の先頭番地を指す先頭ポインタを付与し、この各領域の中で使用されている最老番地を指す末尾ポインタを付与し、初期段階では、前記各領域間に経路の追加のための空き領域を設ける経路表更新方法である。図1におけるplはプレフィクス長を示す。
【0029】
ここで、本発明の特徴とするところは、図2に示すように、経路の追加を行うべき被追加領域に直接接している上下の領域に空き領域がある場合は、この上下の空き領域のうち空き領域の大きい方へ経路の追加を行い拡大された前記被追加領域に対応してポインタを再付与するところにある。
【0030】
また、図3に示すように、経路の追加を行うべき被追加領域に直接接している上下の領域に空き領域が無い場合は、最近接の空き領域を探索し、この最近接の空き領域と前記被追加領域との間に挟まれる他領域の経路を前記最近接の空き領域に移動させることにより前記被追加領域の上または下に空き領域を出現させ、この出現させた空き領域に経路の追加を行い拡大された前記被追加領域および経路を移動させた前記他領域に対応してポインタを再付与する。
【0031】
また、図4に示すように、経路の削除後にその経路が格納されていた被削除領域の上下の空き領域のうち空き領域の小さい方の空き領域を大きくするように前記被削除領域の経路を移動させ経路を移動させた前記被削除領域に対応してポインタを再付与する。ここでは空き領域が無い状態は空き領域最小の状態と考える。
【0032】
本発明実施例では、本発明の経路表更新方法をコンピュータ装置に実行させるが、コンピュータ装置に、本発明の経路表更新方法を実行させるためには、情報処理装置であるコンピュータ装置にインストールすることにより、そのコンピュータ装置に、IPアドレスとプレフィクス長との組み合わせにより表現された経路を格納する連想メモリをプレフィクス長のグループ毎に領域に分割し各領域の先頭番地を指す先頭ポインタを付与し、この各領域の中で使用されている最老番地を指す末尾ポインタを付与し、初期段階では、前記各領域間に経路の追加のための空き領域を設ける経路表更新方法を実行させるプログラムを用いる。
【0033】
ここで、本発明の特徴とするところは、本発明のプログラムを用いて前記コンピュータ装置に、経路の追加を行うべき被追加領域に直接接している上下の領域に空き領域がある場合は、この上下の空き領域のうち空き領域の大きい方へ経路の追加を行い拡大された前記被追加領域に対応してポインタを再付与する手順を実行させるところにある。
【0034】
また、本発明のプログラムを用いて前記コンピュータ装置に、経路の追加を行うべき被追加領域に直接接している上下の領域に空き領域が無い場合は、最近接の空き領域を探索し、この最近接の空き領域と前記被追加領域との間に挟まれる他領域の経路を前記最近接の空き領域に移動させることにより前記被追加領域の上または下に空き領域を出現させ、この出現させた空き領域に経路の追加を行い拡大された前記被追加領域および経路を移動させた前記他領域に対応してポインタを再付与する手順を実行させる。
【0035】
また、本発明のプログラムを用いて前記コンピュータ装置に、経路の削除後にその経路が格納されていた被削除領域の上下の空き領域のうち空き領域の小さい方の空き領域を大きくするように前記被削除領域の経路を移動させ経路を移動させた前記被削除領域に対応してポインタを再付与する手順を実行させる。
【0036】
また、本発明のプログラムが記録された前記コンピュータ装置読み取り可能な記録媒体を本発明の記録媒体とし、この本発明の記録媒体を用いて本発明のプログラムを前記コンピュータ装置にインストールすることができる。また、本発明のプログラムを保持するサーバからネットワークを介して前記コンピュータ装置が本発明のプログラムをダウンロードすることによっても前記コンピュータ装置は本発明のプログラムをインストールすることができる。
【0037】
以下では、本発明実施例をさらに詳細に説明する。
【0038】
経路表の検索については以下のとおり動作する。経路表の各経路がTCAMの各プレフィクス長に対応した領域に格納されており、パケットヘッダのIPアドレスがキーとして入力され、それにマッチしたTCAMのエントリの最若番地のものが答えとなる。
【0039】
プレフィクス長毎に分割した各領域は先頭ポインタが指す最若番地から老番地方向に向けて順番に隙間なく番地を使っていく。その領域のうち、経路を格納している最後の番地を指すのが末尾ポインタである。末尾ポインタが指す次の番地から次のプレフィクス長領域の先頭ポインタが指す番地の一つ前までがそのプレフィクス長領域の空きとなる。
【0040】
経路表に新たに経路を追加する場合は、直接接している上下の領域に空き領域がある場合には、上下の空き領域の大きさを比較し上の空き領域と下の空き領域のどちらかに追加を行う。この例を図2に示す。
【0041】
プレフィクス長30の経路を追加するとする。プレフィクス長30の領域の上下には空き領域があり、上の領域の方が空き領域が大きいため、プレフィクス長30の領域の最上端に経路を追加する。それに伴い、プレフィクス長30の先頭ポインタを上へ一つずらす。
【0042】
図3に上下に空きがない場合に追加を行う場合の例を示す。この場合は、空き領域がある一番近い所を探す。図中ではプレフィクス長29の領域の下が一番近い空き領域である。プレフィクス長30の領域を拡張するために、プレフィクス長29の最上端にある経路をその空き領域へと移す。移った経路が元々あった所へ追加すべき経路を挿入する。この処理に伴い、プレフィクス長30の末尾ポインタとプレフィクス長29の先頭ポインタおよび末尾ポインタを一つずつ下げる。
【0043】
経路表の経路を削除する場合の例を図4に示す。経路を削除した後に、上下の空き領域の大きさを比較し、空き領域の小さい方の経路を削除した経路が格納されていたところへ移動する。図4ではプレフィクス長30の経路を削除した後に、上下の空き領域を確保し、下の領域の方が小さいので、プレフィクス長30の領域の最下端にある経路を削除した所へ移動する。この処理に伴い、プレフィクス長30の末尾ポインタを1つ上に上げる。
【0044】
【発明の効果】
以上説明したように、本発明によれば、経路の追加または削除の手間を減少させることができる。すなわち、追加または削除の際に、基本的には上下の空き領域を比較するだけであるので、計算に時間がかかることがなく、高速に経路表の更新を行うことができる。
【図面の簡単な説明】
【図1】本発明実施例の連想メモリにおける領域の構成を示す図。
【図2】本発明実施例における領域拡張が不要の場合の経路の追加時の動作を説明するための図。
【図3】本発明実施例における領域拡張が必要の場合の経路の追加時の動作を説明するための図。
【図4】本発明実施例における経路の削除時の動作を説明するための図。
【図5】従来のPatriciaによる経路表の実現例を示す図。
【図6】TCAMの原理を示す図。
【図7】TCAMを用いた最長一致検索を行うため経路をプリフィクス長毎に並べて格納している様子を示す図。
【図8】従来の問題で経路追加時にエントリを一つずつずらす必要がある様子を示す図。

Claims (7)

  1. IPアドレスとプレフィクス長との組み合わせにより表現された経路を格納する連想メモリをプレフィクス長のグループ毎に領域に分割し各領域の先頭番地を指す先頭ポインタを付与し、この各領域の中で使用されている最老番地を指す末尾ポインタを付与し、初期段階では、前記各領域間に経路の追加のための空き領域を設ける経路表更新方法において、
    経路の追加を行うべき被追加領域に直接接している上下の領域に空き領域がある場合は、この上下の空き領域のうち空き領域の大きい方へ経路の追加を行い拡大された前記被追加領域に対応してポインタを再付与する
    ことを特徴とする経路表更新方法。
  2. 経路の追加を行うべき被追加領域に直接接している上下の領域に空き領域が無い場合は、最近接の空き領域を探索し、この最近接の空き領域と前記被追加領域との間に挟まれる他領域の経路を前記最近接の空き領域に移動させることにより前記被追加領域の上または下に空き領域を出現させ、この出現させた空き領域に経路の追加を行い拡大された前記被追加領域および経路を移動させた前記他領域に対応してポインタを再付与する
    請求項1記載の経路表更新方法。
  3. 経路の削除後にその経路が格納されていた被削除領域の上下の空き領域のうち空き領域の小さい方の空き領域を大きくするように前記被削除領域の経路を移動させ経路を移動させた前記被削除領域に対応してポインタを再付与する請求項1または2記載の経路表更新方法。
  4. 情報処理装置にインストールすることにより、その情報処理装置に、
    IPアドレスとプレフィクス長との組み合わせにより表現された経路を格納する連想メモリをプレフィクス長のグループ毎に領域に分割し各領域の先頭番地を指す先頭ポインタを付与し、この各領域の中で使用されている最老番地を指す末尾ポインタを付与し、初期段階では、前記各領域間に経路の追加のための空き領域を設ける経路表更新方法を実行させるプログラムにおいて、
    経路の追加を行うべき被追加領域に直接接している上下の領域に空き領域がある場合は、この上下の空き領域のうち空き領域の大きい方へ経路の追加を行い拡大された前記被追加領域に対応してポインタを再付与する手順を実行させる
    ことを特徴とするプログラム。
  5. 経路の追加を行うべき被追加領域に直接接している上下の領域に空き領域が無い場合は、最近接の空き領域を探索し、この最近接の空き領域と前記被追加領域との間に挟まれる他領域の経路を前記最近接の空き領域に移動させることにより前記被追加領域の上または下に空き領域を出現させ、この出現させた空き領域に経路の追加を行い拡大された前記被追加領域および経路を移動させた前記他領域に対応してポインタを再付与する手順を実行させる
    請求項4記載のプログラム。
  6. 経路の削除後にその経路が格納されていた被削除領域の上下の空き領域のうち空き領域の小さい方の空き領域を大きくするように前記被削除領域の経路を移動させ経路を移動させた前記被削除領域に対応してポインタを再付与する手順を実行させる請求項4または5記載のプログラム。
  7. 請求項4ないし6のいずれかに記載のプログラムが記録された前記情報処理装置読み取り可能な記録媒体。
JP2001246680A 2001-08-15 2001-08-15 経路表更新方法およびプログラムおよび記録媒体 Expired - Fee Related JP3699374B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001246680A JP3699374B2 (ja) 2001-08-15 2001-08-15 経路表更新方法およびプログラムおよび記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001246680A JP3699374B2 (ja) 2001-08-15 2001-08-15 経路表更新方法およびプログラムおよび記録媒体

Publications (2)

Publication Number Publication Date
JP2003060688A JP2003060688A (ja) 2003-02-28
JP3699374B2 true JP3699374B2 (ja) 2005-09-28

Family

ID=19076176

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001246680A Expired - Fee Related JP3699374B2 (ja) 2001-08-15 2001-08-15 経路表更新方法およびプログラムおよび記録媒体

Country Status (1)

Country Link
JP (1) JP3699374B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8924640B2 (en) * 2012-05-14 2014-12-30 Alcatel Lucent Dynamic allocation of records to clusters in a ternary content addressable memory

Also Published As

Publication number Publication date
JP2003060688A (ja) 2003-02-28

Similar Documents

Publication Publication Date Title
US8090901B2 (en) TCAM management approach that minimize movements
EP1358739B1 (en) Method and apparatus for routing table management
KR100745693B1 (ko) Tcam 테이블 관리 방법
EP2040184B1 (en) Database and database processing methods
US6691124B2 (en) Compact data structures for pipelined message forwarding lookups
US6490592B1 (en) Method of and apparatus for generating a tree data structure supporting longest match lookup
US6467019B1 (en) Method for memory management in ternary content addressable memories (CAMs)
US6434144B1 (en) Multi-level table lookup
US20040133590A1 (en) Tree data structure with range-specifying keys and associated methods and apparatuses
US7610271B2 (en) Method and apparatus for performing a binary search on an expanded tree
US20040254909A1 (en) Programming routes and access control lists in comparison tree data structures and their use such as in performing lookup operations
KR100586461B1 (ko) 파이프라인 이진 트리를 이용한 ip 어드레스 검색 방법,하드웨어 구조 및 기록매체
EP2288092A1 (en) Method and device for improving scalability of longest prefix match
US7478109B1 (en) Identification of a longest matching prefix based on a search of intervals corresponding to the prefixes
US7233579B1 (en) Routing table for forwarding Internet Protocol (IP) packets through a communications network
US6925503B2 (en) Method and system for performing a longest prefix match search
US7154892B2 (en) Method and apparatus for managing LPM-based CAM look-up table, and recording medium therefor
JP3699374B2 (ja) 経路表更新方法およびプログラムおよび記録媒体
JP3660311B2 (ja) テーブル検索装置および方法およびプログラムおよび記録媒体
EP1657859B1 (en) Protocol speed increasing device
US20050102428A1 (en) Memory management for ternary CAMs and the like
KR100460188B1 (ko) 인터넷 프로토콜 주소 룩-업 방법
JP2005117208A (ja) テーブル検索装置
JP3754042B2 (ja) データ検索装置
JP2005051650A (ja) テーブル検索装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050627

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: 20050705

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050707

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080715

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090715

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090715

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100715

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100715

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110715

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees