JP4646823B2 - ルータ装置、ルータ装置におけるルート決定方法 - Google Patents

ルータ装置、ルータ装置におけるルート決定方法 Download PDF

Info

Publication number
JP4646823B2
JP4646823B2 JP2006040459A JP2006040459A JP4646823B2 JP 4646823 B2 JP4646823 B2 JP 4646823B2 JP 2006040459 A JP2006040459 A JP 2006040459A JP 2006040459 A JP2006040459 A JP 2006040459A JP 4646823 B2 JP4646823 B2 JP 4646823B2
Authority
JP
Japan
Prior art keywords
entry
packet
routing
cache
route
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
JP2006040459A
Other languages
English (en)
Other versions
JP2007221514A (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.)
SII Network Systems Inc
Original Assignee
SII Network Systems Inc
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 SII Network Systems Inc filed Critical SII Network Systems Inc
Priority to JP2006040459A priority Critical patent/JP4646823B2/ja
Publication of JP2007221514A publication Critical patent/JP2007221514A/ja
Application granted granted Critical
Publication of JP4646823B2 publication Critical patent/JP4646823B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、パケットのルートを決定するルータ装置、ルータ装置におけるルート決定方法に関する。
従来、ルータ装置では、パケットのルートをルーティングテーブルに予め登録し、ルーティングテーブルを検索してパケットのルートを決定している。
ルーティングテーブルの検索方法としては、パケットの宛先ホストアドレスであるIPアドレスを検索キーとしてシーケンシャルな検索を行う方法や、2進数で表したIPアドレスを2進木のツリー構造で管理し、ツリー検索を行う方法がある。ツリー検索の例としては、トライ、ラディッシュ、パトリシア等がある。
また、ルータ装置では、パケットのIPアドレスを基にルーティングテーブルを検索してルートを決定した場合、そのパケットのルートをキャッシュテーブルに登録し、キャッシュテーブルにルートが登録されているパケットについては、以降、キャッシュテーブルを検索してルートを決定している。これにより、ルーティングテーブルの検索を省略することができるため、高速なルートの検索が実現できる。
以下、ルーティングテーブルとキャッシュテーブルを用いる従来のルータ装置について詳細に説明する。
ルーティングテーブルは、パケットの宛先ネットワークアドレスとルートとの対応関係を表すエントリ(ルーティングエントリ)が登録されるテーブルである。
具体的には、表1を参照すると、ルーティングテーブルには、ルーティングエントリごとに、宛先ネットワークアドレス、プレフィックス長、ネクストホップアドレス、送信IF等が登録される。
Figure 0004646823
メモリアドレスは、ルーティングエントリの情報が登録されているメモリ領域のメモリアドレスを示している。例えば、宛先ネットワークアドレス“10.20.1.0”、プレフィックス長“24”のルーティングエントリの情報はメモリアドレス“a”のメモリ領域に登録されていることを示している。
宛先ネットワークアドレスおよびプレフィックス長は、パケットのルートを表すルート情報を示している。例えば、宛先ネットワークアドレス“10.20.1.0”の上位24ビット部分と一致する宛先ホストアドレスについては、宛先ネットワークアドレス“10.20.1.0”、プレフィックス長“24”のルーティングエントリにヒットしたとみなすことを示している。ヒットしたとみなされたルーティングエントリが複数ある場合は、一致するビット部分のビット長が最も長いものにヒットしたとみなす。この検索方法は、LPM(Longest Prefix Match)と呼ばれている。以降、宛先ネットワークアドレス“10.20.1.0”、プレフィックス長“24”のルーティングエントリは、宛先ネットワークアドレス“10.20.1.0/24”と記述する。
ネクストホップアドレスおよび送信IFもパケットのルートを表すルート情報を示している。例えば、宛先ネットワークアドレス“10.20.1.0/24”のルーティングエントリにヒットしたパケットのルートは、送信IF“IF2”を経由したネクストホップアドレス“10.20.1.50”であることを示している。
キャッシュテーブルは、ルーティングテーブルのルーティングエントリを用いてすでにルートが決定されたパケットの宛先アドレスとルートとの対応関係を表すエントリ(キャッシュエントリ)が登録されるテーブルである。
具体的には、表2を参照すると、キャッシュテーブルには、キャッシュエントリごとに、宛先ホストアドレス、ルート情報の登録先等が登録される。
Figure 0004646823
宛先ホストアドレスは、パケットのパケットプロファイルを示している。例えば、宛先ホストアドレス“10.20.1.1”についてはヒットしたとみなすことを示している。
ルーティングエントリへのポインタは、パケットのルートの決定に用いられたルーティングエントリとの関係を示すもので、そのルーティングエントリの情報が登録されているメモリ領域のメモリアドレスを示している。例えば、宛先ホストアドレス“10.20.1.1”のキャッシュエントリにヒットするパケットのルートは、メモリアドレス“c”のメモリ領域に登録されていることを示している。
ここで、従来のルータ装置において、パケット受信時に行われるフォワーディング処理について説明する。
ルータ装置は、物理回線からインタフェースを介してパケットを受信すると、まず、パケットのヘッダに付加された宛先ホストアドレスが、キャッシュテーブルのキャッシュエントリのいずれかにヒットするか否かを検索する。
例えば、キャッシュテーブルが表2の状態である時に、宛先ホストアドレス“10.20.1.1”を持つパケットを受信した場合、この宛先ホストアドレスにヒットするキャッシュエントリはキャッシュテーブルに存在している。そのため、ルータ装置は、そのキャッシュエントリの情報を基にパケットのルートを決定し、決定したルートにパケットをフォワーディングする。
また、ルーティングテーブルが表1の状態で、キャッシュテーブルが表2の状態である時に、宛先ホストアドレス“10.128.2.1”を持つパケットを受信した場合、この宛先ホストアドレスにヒットするキャッシュエントリはキャッシュテーブルに存在しない。そのため、ルータ装置は、続いて、この宛先ホストアドレスが、ルーティングテーブルのルーティングエントリのいずれかにヒットするか否かを検索する。この宛先ホストアドレスは、表1の最下段の宛先ネットワークアドレス“10.128.2.0/24”と上位24ビットが同じであるため、この宛先ネットワークアドレスのルーティングエントリとヒットする。そこで、ルータ装置は、ヒットしたルーティングエントリの情報を基にパケットのルートを決定し、決定したルートにパケットをフォワーディングする。また、ルータ装置は、宛先ホストアドレス“10.128.2.1”とメモリアドレス“e”とを表すキャッシュエントリをキャッシュテーブルに登録する。その結果、キャッシュテーブルは、表3に示すように変更される。
Figure 0004646823
なお、ルータ装置は、キャッシュテーブルからヒットするキャッシュエントリが検索されず、さらに、ルーティングテーブルからもヒットするルーティングエントリが検索されない場合は、そのパケットを廃棄する。
ところで、ルータ装置では、ルーティングテーブルがルーティングエントリの登録/削除等で変更された場合、キャッシュテーブルからキャッシュエントリを削除することが行われている。
従来のルータ装置では、ルーティングテーブルが変更された場合、下記の(1)、(2)のいずれかの方法でキャッシュテーブルからキャッシュエントリを削除している。
(1)キャッシュテーブルの全キャッシュエントリを削除
(2)キャッシュテーブルの全キャッシュエントリについて、そのキャッシュエントリにヒットする宛先ホストアドレスが、変更したルーティングテーブルのルーティングエントリにヒットするか否かを検索し、検索されたキャッシュエントリのみを削除
しかし、上記の(1)の方法では、キャッシュテーブルから全キャッシュエントリを削除するため、キャッシュエントリを削除する負荷は大きい。
また、(2)の方法では、キャッシュテーブルから一部のキャッシュエントリのみを削除しているものの、キャッシュテーブルの全キャッシュエントリについてルーティングエントリにヒットするか否かを検索して、削除すべきキャッシュエントリを特定する必要があるため、キャッシュエントリを特定する負荷が大きくなってしまうことから、キャッシュエントリを削除する負荷は依然として大きい。
一般に、キャッシュテーブルの容量を大きくすると、キャッシュエントリのヒット率を高めることが可能であるが、キャッシュエントリを削除する負荷が大きい場合、キャッシュテーブルの容量を大きくした分だけキャッシュエントリの削除に要する負荷が大きくなってしまう。他方、キャッシュテーブルの容量を小さくすると、キャッシュエントリのヒット率が低くなってしまう。
そこで、最近、ルーティングテーブルの変更に伴うキャッシュエントリの削除に要する負荷を低減することを目的としたルータ装置が一部で開示されている。
例えば、特許文献1に開示されたルータ装置は、キャッシュテーブルのキャッシュエントリとルーティングテーブルのルーティングエントリとの対応関係を管理するキャッシュ管理部を設け、ルーティングテーブルが変更された場合には、キャッシュ管理部にて管理されている情報を基にして対応関係にあるキャッシュエントリを検索し、そのキャッシュエントリのみを削除することとしている。
特許第3239836号明細書
しかし、特許文献1に開示されたルータ装置は、ルーティングテーブルが変更された場合、キャッシュエントリとルーティングエントリとの対応関係をキャッシュ管理部から検索する必要があり、削除すべきキャッシュエントリを特定するのに負荷がかかるため、キャッシュエントリを削除する負荷は依然として大きい。
そこで、本発明の目的は、ルーティングテーブルの変更に伴ってキャッシュテーブルからキャッシュエントリを削除する場合に、キャッシュエントリを削除する負荷を低減することができるルータ装置、ルータ装置におけるルート決定方法を提供することにある。
上記目的を達成するために本発明は、
パケットを受信すると、前記パケットのルートを決定するルータ装置において、
パケットの宛先アドレスとルートとの対応関係を表すルーティングエントリが登録されるルーティングテーブルと、
前記ルーティングエントリを用いてすでにルートが決定されたパケットの宛先アドレスとルートとの対応関係を表すキャッシュエントリが登録されるキャッシュテーブルと、
カウンタを備え、前記ルーティングテーブルにルーティングエントリを登録または前記ルーティングテーブルからルーティングエントリを削除すると、前記カウンタのカウント値をインクリメントし、インクリメントされたカウント値を登録または削除されたルーティングエントリに設定する第1の制御部と、
パケットを受信すると、前記パケットの宛先アドレスにヒットするキャッシュエントリがない場合、前記パケットの宛先アドレスにヒットするルーティングエントリのルートを前記パケットのルートに決定して前記キャッシュテーブルにキャッシュエントリを登録するとともに、当該キャッシュエントリのルートの決定に用いられたルーティングエントリのカウント値をキャッシュエントリに設定する第2の制御部とを有することを特徴とする。
この構成によれば、キャッシュエントリのカウント値は、キャッシュエントリがキャッシュテーブルに登録された後は不変であるのに対し、ルーティングエントリのカウント値は、ルーティングエントリがルーティングテーブルに登録された後もルーティングエントリの削除によって変更されることになる。
そのため、ルーティングテーブルが変更された場合に、各キャッシュエントリについてルートの決定に用いられたルーティングエントリが変更されたか否かの判断は、両者のカウント値を比較することで簡単に行うことができる。したがって、削除すべきキャッシュエントリを特定する負荷が低減され、その結果、キャッシュエントリを削除する負荷を低減することができる。また、キャッシュエントリを削除する負荷が低減されるため、キャッシュテーブルの容量を大きくすることもでき、その結果、キャッシュエントリのヒット率を高めることができる。
また、前記第2の制御部は、パケットを受信すると、前記パケットの宛先アドレスにヒットするキャッシュエントリがあるが、当該キャッシュエントリのカウント値と当該キャッシュエントリのルートの決定に用いられたルーティングエントリのカウント値とが一致しない場合、当該キャッシュエントリを前記キャッシュテーブルから削除することを特徴とする。
この構成によれば、ルーティングテーブルが変更された場合に、全キャッシュエントリを削除するのではなく、ルートの決定に用いられたルーティングエントリが変更されたキャッシュエントリのみを削除しているため、キャッシュエントリを削除する負荷を低減することができる。また、キャッシュエントリを削除する負荷が低減されることによって、キャッシュテーブルの容量を大きくすることもできることから、キャッシュエントリのヒット率を高めることができる。
なお、前記第2の制御部は、パケットを受信すると、前記キャッシュエントリを削除した後、前記パケットの宛先アドレスにヒットするルーティングエントリのルートを前記パケットのルートに決定して前記キャッシュテーブルにキャッシュエントリを登録するとともに、当該キャッシュエントリのルートの決定に用いられたルーティングエントリのカウント値をキャッシュエントリに設定することとしても良い。
また、前記第2の制御部は、パケットを受信すると、前記キャッシュエントリを削除した後、前記パケットの宛先アドレスにヒットするルーティングエントリもない場合、前記パケットを廃棄することとしても良い。
また、前記第2の制御部は、パケットを受信すると、前記パケットの宛先アドレスにヒットするキャッシュエントリがあり、当該キャッシュエントリのカウント値と当該キャッシュエントリのルートの決定に用いられた前記ルーティングエントリのカウント値とが一致する場合、当該キャッシュエントリのルートを前記パケットのルートに決定することとしても良い。
また、前記第2の制御部は、パケットを受信すると、前記パケットの宛先アドレスにヒットするキャッシュエントリおよびルーティングエントリがない場合、前記パケットを廃棄することとしても良い。
また、前記第1の制御部は、前記ルーティングテーブルの管理を行うに際して、前記ルーティングエントリの宛先アドレスを2進数で表して最上位ビットから順番に各ビット位置にて2進木のノードを生成し、生成したノードから分岐させた分岐先に次に生成したノードを配置したツリー構造で管理を行うこととしても良い。
また、前記第1の制御部は、前記ルーティングテーブルにルーティングエントリを登録すると、登録されたルーティングエントリだけでなく、当該ルーティングエントリの宛先アドレスと前記ツリー構造上で所定の関係を有する宛先アドレスのルーティングエントリにも前記カウンタのカウント値を設定することとしても良い。
以上説明したように本発明によれば、第1の制御部において、ルーティングテーブルにルーティングエントリを登録または削除すると、カウンタのカウント値をインクリメントして登録または削除されたルーティングエントリに設定し、第2の制御部において、キャッシュテーブルにキャッシュエントリを登録すると、キャッシュエントリのルートの決定に用いられたルーティングエントリのカウント値をキャッシュエントリに設定する。
ここで、キャッシュエントリのカウント値は、キャッシュエントリがキャッシュテーブルに登録された後は不変であるのに対し、ルーティングエントリのカウント値は、ルーティングエントリがルーティングテーブルに登録された後もルーティングエントリの削除によって変更されることになる。
そのため、ルーティングテーブルが変更された場合に、各キャッシュエントリについてルートの決定に用いられたルーティングエントリが変更されたか否かの判断は、両者のカウント値を比較することで簡単に行うことができる。
したがって、削除すべきキャッシュエントリを特定する負荷が低減され、その結果、キャッシュエントリを削除する負荷を低減することができるという効果が得られる。また、キャッシュエントリを削除する負荷が低減されるため、キャッシュテーブルの容量を大きくすることもでき、その結果、キャッシュエントリのヒット率を高めることができるという効果も得られる。
以下に、本発明を実施するための最良の形態について図面を参照して説明する。
図1を参照すると、本発明の一実施形態のルータ装置は、フォワーディング処理部10a〜10cと、スイッチ部20と、ルーティングテーブル30と、第1の制御部40とを有している。なお、フォワーディング処理部10a〜10cの数は、図1に示したように3つに限定されるものではなく、いくつであっても良い。
フォワーディング処理部10a〜10cは、物理回線からインタフェースを介してパケットを受信した場合に、内部に保持するキャッシュテーブルとルーティングテーブルを順次検索してパケットのルートを決定し、決定したルートにパケットをフォワーディングする。
スイッチ部20は、フォワーディング処理部で受信したパケットが別のフォワーディング処理部から送信される場合等のスイッチング処理を行う。
ルーティングテーブル30は、パケットの宛先ネットワークアドレスとルートとの関係を表すエントリ(ルーティングエントリ)が登録されるテーブルである。
第1の制御部40は、ルーティングテーブル30を管理し、ルーティングテーブル30におけるルーティングエントリの登録/削除を行う。
また、第1の制御部40は、グローバルなアップデートカウンタ(不図示)を備えており、ルーティングテーブル30のルーティングエントリの登録/削除を行う時に、アップデートカウンタのカウント値をインクリメントし、インクリメントされたカウント値を登録/削除されたルーティングエントリに設定する。
また、第1の制御部40は、ルーティングテーブル30の管理を行う際に、ルーティングエントリの宛先ネットワークアドレスを2進数で表して2進木のツリー構造で管理しており、ツリー検索が可能な構成になっているが、詳細は後述する。
また、第1の制御部40は、ルーティングテーブル30を変更した場合、フォワーディング処理部10a〜10c内のルーティングテーブルを変更する制御を行う。このようにして、ルーティングテーブル30とフォワーディング処理部10a〜10c内のルーティングテーブルとは、同じ内容になるように制御されている。
図2を参照すると、フォワーディング処理部10a〜10cのそれぞれは、物理回線終端部11と、ルーティングテーブル12と、キャッシュテーブル13と、第2の制御部14とを有している。
物理回線終端部11は、物理回線を終端し物理回線を介してパケットの送受信を行う。
ルーティングテーブル12は、上述したように、ルーティングテーブル30と同じ内容のテーブルである。
キャッシュテーブル13は、ルーティングテーブル12のルーティングエントリを用いてすでにルートが決定されたパケットの宛先アドレスとルートとの対応関係を表すエントリ(キャッシュエントリ)が登録されるテーブルである。
第2の制御部14は、第1の制御部40の制御の元でルーティングテーブル12を変更する。
また、第2の制御部14は、物理回線からインタフェースを介してパケットを受信した場合に、キャッシュテーブル13とルーティングテーブル12を順次検索してパケットのルートを決定し、決定したルートにパケットをフォワーディングする。この際、キャッシュテーブル13に該当するキャッシュエントリが存在せず、ルーティングテーブル12に該当するルーティングエントリが存在する場合は、このルーティングエントリを用いてルートが決定されたキャッシュエントリをキャッシュテーブル13に登録する。
以下、図1および図2に示したルータ装置の動作について説明する。
(ルーティングテーブルの内容)
表4を参照すると、第1の制御部40は、ルーティングテーブル30に、ルーティングエントリごとに、宛先ネットワークアドレス、プレフィックス長、アップデートカウント値、ネクストホップアドレス、送信IF等を登録する。
ルーティングテーブル30が従来のルーティングテーブルと大きく異なる点は、ルーティングエントリにアップデートカウント値を設定している点にある。ルーティングエントリが登録/削除された時に、第1の制御部40内のアップデートカウンタのアップデートカウント値がインクリメントされ、そのアップデートカウント値がルーティングエントリに設定される。アップデートカウント値は、フォワーディング処理部10a〜10c内のキャッシュテーブル13のキャッシュエントリの有効/無効の判定に用いられる。
Figure 0004646823
また、第1の制御部40は、ルーティングテーブル30のルーティングエントリの宛先ネットワークアドレスを2進数で表し、2進木のツリー構造で管理している。
図3を参照すると、第1の制御部40は、ルーティングテーブル30にエントリされている宛先ネットワークアドレスのプレフィックス長分のアドレス(可変長ビット列)を2進木のツリー構造で管理している。このツリーは、2進木のNode(ノード)の部分と、Leaf(リーフ)と呼ばれる端点の部分と、LPMによる検索方法を実行するために必要な中間Leafと呼ばれる端点の部分とから構成される。
第1の制御部40は、このようなツリー構造を管理する際に、宛先ネットワークアドレスのプレフィックス長分のアドレスを2進数で表して最上位ビットから順番に各ビット位置にて2進木のNodeを生成し、そのNodeから分岐した分岐先に次に生成したNodeを配置していく。このとき、分岐に必要のないNode(Nodeの下にLeafが存在しないもの)は全て省略するが、中間Leafが存在するNodeについては残しておく。
なお、図3には、表4の状態にあるルーティングテーブル30を管理する例が示されており、上位7ビット、上位8ビット、および上位22ビットの各ビット位置のNodeのみが残されている。上位7ビットおよび上位8ビットの各ビット位置のNodeには、中間Leafとして、それぞれ、“10.0.0.0/7”と“10.0.0.0/8”が存在する。上位8ビットのビット位置のNodeでは分岐が生じ、分岐の一方にはLeafとして“10.128.2.0/24”が存在し、分岐の他方には上位22ビットのビット位置のNodeが存在する。上位22ビットのビット位置のNodeでも分岐が生じ、分岐の一方にはLeafとして“10.20.1.0/24”が存在し、分岐の他方にはLeafとして“10.20.2.0/24”が存在する。
(ルーティングエントリのアップデートカウント値)
最初に、ルーティングテーブル30にルーティングエントリを登録する場合の各ルーティングエントリのアップデートカウント値について説明する。ここでは、表4のルーティングテーブル30を作成するために、“10.0.0.0/7”、“10.0.0.0/8”、“10.20.1.0/24”、“10.20.2.0/24”、“10.128.2.0/24”のルーティングエントリが順番に登録される場合を例に挙げて説明する。
Figure 0004646823
表5を参照すると、第1の制御部40は、最初に、“10.0.0.0/7”のルーティングエントリを登録する。この際、アップデートカウンタのアップデートカウント値を“1”にインクリメントし、“10.0.0.0/7”のルーティングエントリにアップデートカウント値“1”を設定する。
次に、第1の制御部40は、“10.0.0.0/8”のルーティングエントリを登録する。この際、アップデートカウンタのアップデートカウント値を“2”にインクリメントし、“10.0.0.0/8”のルーティングエントリにアップデートカウント値“2”を設定する。さらに、図3のツリーを、“10.0.0.0/8”の位置から上の方向に辿り、1つ上に存在する中間Leaf“10.0.0.0/7”のルーティングエントリにもアップデートカウント値“2”を設定する。
次に、第1の制御部40は、“10.20.1.0/24”のルーティングエントリを登録する。この際、アップデートカウンタのアップデートカウント値を“3”にインクリメントし、“10.20.1.0/24”のルーティングエントリにアップデートカウント値“3”を設定する。さらに、図3のツリーを、“10.20.1.0/24”の位置から上の方向に辿り、1つ上に存在する中間Leaf“10.0.0.0/8”のルーティングエントリにもアップデートカウント値“3”を設定する。
次に、第1の制御部40は、“10.20.2.0/24”のルーティングエントリを登録する。この際、アップデートカウンタのアップデートカウント値を“4”にインクリメントし、“10.20.2.0/24”のルーティングエントリにアップデートカウント値“4”を設定する。さらに、図3のツリーを、“10.20.2.0/24”の位置から上の方向に辿り、1つ上に存在する中間Leaf“10.0.0.0/8”のルーティングエントリにもアップデートカウント値“4”を設定する。
最後に、第1の制御部40は、“10.128.2.0/24”のルーティングエントリを登録する。この際、アップデートカウンタのアップデートカウント値を“5”にインクリメントし、“10.128.2.0/24”のルーティングエントリにアップデートカウント値“5”を設定する。さらに、図3のツリーを、“10.128.2.0/24”の位置から上の方向に辿り、1つ上に存在する中間Leaf“10.0.0.0/8”のルーティングエントリにもアップデートカウント値“5”を設定する。
これにより、ルーティングテーブル30の各ルーティングエントリのアップデートカウント値は、最終的に、表4に示す値になる。
次に、ルーティングテーブル30からルーティングエントリを削除する場合の各ルーティングエントリのアップデートカウント値について説明する。ここでは、ルーティングテーブル30が表4の状態にある時に、“10.20.2.0/24”のルーティングエントリを削除する場合を例に挙げて説明する。
第1の制御部40は、ルーティングテーブル30が表4の状態にある時に、“10.20.2.0/24”のルーティングエントリを削除する。この際、アップデートカウンタのアップデートカウント値を“6”にインクリメントし、“10.20.2.0/24”のルーティングエントリにアップデートカウント値“6”を設定する。これにより、ルーティングテーブル30は、表6に示すように変更される。
Figure 0004646823
第1の制御部40は、ルーティングテーブル30を変更すると、フォワーディング処理部10a〜10c内のルーティングテーブル12を変更する制御を行う。これにより、ルーティングテーブル30とフォワーディング処理部10a〜10c内のルーティングテーブル12とは、同じ内容になる。
なお、本実施形態においては、第1の制御部40は、ルーティングエントリが登録された場合に、ツリーの1つ上のルーティングエントリのみアップデートカウント値を新たに設定しているが、ツリーの上の全てのルーティングエントリのアップデートカウント値を新たに設定しても良い。
また、本実施形態においては、第1の制御部40は、ルーティングエントリの登録/削除を行った時に、登録/削除により影響を受けた全てのルーティングエントリのアップデートカウント値を一括して同じ値に設定しているが、ルーティングエントリごとに異なるアップデートカウント値に設定しても良い。すなわち、ルーティングエントリの登録/削除により影響を受けたルーティングエントリのアップデートカウント値が新たに設定されれば良い。
また、本実施形態においては、第1の制御部40は、アップデートカウント値が上限値に達した場合には、アップデートカウント値を“1”に戻す。その際、フォワーディング処理部10a〜10c内の第2の制御部14は、キャッシュテーブル13のすべてのキャッシュエントリを削除する。
(パケット受信時)
次に、フォワーディング処理部10a〜10cにおけるパケット受信時の動作について説明する。
図4を参照すると、ステップ401で、物理回線終端部11が物理回線からインタフェースを介してパケットを受信すると、ステップ402で、第2の制御部14は、パケットのヘッダに付加された宛先ホストアドレスが、キャッシュテーブル13のキャッシュエントリのいずれかにヒットするか否かを検索する。
ここで、キャッシュテーブル13は、図5に示すように構成されている。キャッシュエントリは、パケットプロファイルとルーティングエントリへのポインタからなる。第2の制御部14は、キャッシュエントリの登録時には、宛先ホストアドレスのハッシュ値を計算し、キャッシュテーブル13のハッシュ値に相当するエントリに登録する。なお、図5に示したキャッシュテーブル13は、同じハッシュ値に最大4つまで登録可能としている。また、第2の制御部14は、キャッシュエントリの検索時には、宛先ホストアドレスのハッシュ値を計算して、計算したハッシュ値に相当するエントリにキャッシュエントリが存在するかを検索する。ハッシュ値の計算は、宛先ホストアドレスおよびその他の情報を含むパケットプロファイルから計算しても良い。
ステップ402でキャッシュエントリが検索された場合には、ステップ403を実行する。ステップ403では、第2の制御部14は、ステップ402で検索されたキャッシュエントリのアップデートカウント値と、そのキャッシュエントリのルートの決定に用いられたルーティングエントリのアップデートカウント値とが一致するか判定する。ステップ403でアップデートカウント値が一致する場合は、ステップ407を実行する。ステップ407では、第2の制御部14は、キャッシュエントリの情報を基に決定されたルートにパケットをフォワーディングする。
また、ステップ403でアップデートカウント値が一致しない場合は、ステップ404を実行する。ステップ404では、第2の制御部14は、ステップ402で検索されたキャッシュエントリを無効と判定し、キャッシュテーブル13から削除した上でステップ405を実行する。また、ステップ402でキャッシュエントリが検索されない場合も、ステップ405を実行する。
ステップ405では、第2の制御部14は、パケットのヘッダに付加された宛先ホストアドレスが、ルーティングテーブル12のルーティングエントリのいずれかにヒットするか否かを検索する。
ここで、例えば、図3において、パケットの宛先ホストアドレスが“10.20.2.1”であれば、第2の制御部14は、図3の点線に示すように、ルーティングテーブル12のツリー検索を行う。すなわち、上位7ビット、上位8ビット、および上位22ビットの各ビット位置のNodeでそれぞれ分岐を行い、最終的に、“10.20.2.0/24”のルーティングエントリにヒットしたとみなす。
また、図3において、パケットの宛先ホストアドレスが“10.20.3.1”であれば、第2の制御部14は、図3の実線に示すように、ルーティングテーブル12のツリー検索を行う。すなわち、上位7ビット、上位8ビット、および上位22ビットの各ビット位置のNodeでそれぞれ分岐を行うが、上位22ビットのビット位置のNodeの下に存在するLeafのルーティングエントリにはいずれもヒットしない。そのため、最終的には、最後に通過した上位8ビットのビット位置のNodeに存在する中間Leaf“10.0.0.0/8”のルーティングエントリにヒットしたとみなす。
このように、ツリー検索を行うことにより、最大でも宛先ホストアドレスのビット数分の分岐でLeafまで辿り着くことができ、また、Leafにヒットしなかった場合でも通過したNodeの中間Leafを最後に通過したものから順番に比較していくことでヒットするルーティングエントリを検索できる。
ステップ405でルーティングエントリが検索された場合には、ステップ406を実行する。ステップ406では、第2の制御部14は、ルーティングエントリを用いてルートが検索されたパケットの宛先ホストアドレスとそのルーティングエントリへのポインタを表すキャッシュエントリをキャッシュテーブル13に登録する。その際、そのルーティングエントリのカウント値をキャッシュエントリに設定する。また、ステップ407では、第2の制御部14は、ステップ405で検索されたルーティングエントリの情報を基に決定されたルートにパケットをフォワーディングする。
また、ステップ405でルーティングエントリが検索されない場合には、ステップ408を実行する。ステップ408では、第2の制御部14は、パケットを廃棄する。
ここで、図4の動作について、具体例を挙げてさらに詳細に説明する。
まず、ルーティングテーブル12が表4の状態で、キャッシュテーブル13にはキャッシュエントリが全く登録されていない状態である時に、宛先ホストアドレス“10.20.1.1”、“10.20.2.1”、“10.128.2.1”を持つパケットを順番に受信した場合を考える。
この場合、ステップ401で宛先ホストアドレス“10.20.1.1”を持つパケットを受信した時点で、その宛先ホストアドレスがヒットするキャッシュエントリはキャッシュテーブル13に存在しない。
そのため、第2の制御部14は、ステップ402で“No”と判定し、続いて、ステップ405で、宛先ホストアドレス“10.20.1.1”がヒットするルーティングエントリをルーティングテーブル12から検索する。
ここでは、宛先ネットワークアドレス“10.20.1.0/24”にヒットするため、第2の制御部14は、ステップ405で“Yes”と判定する。
続いて、第2の制御部14は、ステップ406で、宛先ネットワークアドレス“10.20.1.0/24”のルーティングエントリを用いてルートが検索されたパケットの宛先ホストアドレス“10.20.1.1”とそのルーティングエントリへのポインタ“c”を表すキャッシュエントリをキャッシュテーブル13に登録する。その際、宛先ネットワークアドレス“10.20.1.0/24”のルーティングエントリのアップデートカウント値“3”をキャッシュエントリに設定する。そして、ステップ407で、宛先ネットワークアドレス“10.20.1.0/24”のルーティングエントリの情報を基に決定されたルートにパケットをフォワーディングする。
なお、宛先ホストアドレス“10.20.2.1”、“10.128.2.1”を持つパケットを受信した場合も上記と同様の処理が行われる。その結果、キャッシュテーブル13は表7に示すように変更される。
Figure 0004646823
次に、ルーティングテーブル12が表4の状態で、キャッシュテーブル13が表7の状態である時に、宛先ホストアドレス“10.20.1.1”を持つパケットを受信した場合を考える。
この場合、ステップ401で宛先ホストアドレス“10.20.1.1”を持つパケットを受信した時点で、その宛先ホストアドレスがヒットするキャッシュエントリはキャッシュテーブル13に存在する。
そのため、第2の制御部14は、ステップ402で“Yes”と判定し、続いて、ステップ403で、宛先ホストアドレス“10.20.1.1”のキャッシュエントリのアップデートカウント値と、そのキャッシュエントリのルートの決定に用いられた宛先ネットワークアドレス“10.20.1.0/24”のルーティングエントリのアップデートカウント値とを比較する。
ここでは、宛先ホストアドレス“10.20.1.1”のキャッシュエントリのアップデートカウント値と、宛先ネットワークアドレス“10.20.1.0/24”のルーティングエントリのアップデートカウント値とが共に“3”で一致する。
そのため、第2の制御部14は、ステップ403で“Yes”と判定し、続いて、ステップ407で、宛先ホストアドレス“10.20.1.1”のキャッシュエントリを基にして決定されたルートにパケットをフォワーディングする。
次に、ルーティングテーブル12が表6の状態で、キャッシュテーブル13が表7の状態である時に、宛先ホストアドレス“10.20.2.1”を持つパケットを受信した場合を考える。
この場合、ステップ401で宛先ホストアドレス“10.20.2.1”を持つパケットを受信した時点で、その宛先ホストアドレスがヒットするキャッシュエントリはキャッシュテーブル13に存在する。
そのため、第2の制御部14は、ステップ402で“Yes”と判定し、続いて、ステップ403で、宛先ホストアドレス“10.20.2.1”のキャッシュエントリのアップデートカウント値と、そのキャッシュエントリのルートの決定に用いられた宛先ネットワークアドレス“10.20.2.0/24”のルーティングエントリのアップデートカウント値とを比較する。
ここでは、宛先ホストアドレス“10.20.1.1”のキャッシュエントリのアップデートカウント値が“4”であるのに対し、宛先ネットワークアドレス“10.20.1.0/24”のルーティングエントリのアップデートカウント値が“6”である。
そのため、第2の制御部14は、ステップ403で“No”と判定し、続いて、ステップ404で、宛先ホストアドレス“10.20.1.1”のキャッシュエントリを無効と判定し、キャッシュテーブル13から削除した上で、ステップ405で、宛先ホストアドレス“10.20.1.1”がヒットするルーティングエントリをルーティングテーブル12から再検索する。
ここでは、宛先ネットワークアドレス“10.0.0.0/8”にヒットするため、第2の制御部14は、ステップ405で“Yes”と判定する。
続いて、第2の制御部14は、ステップ406で、宛先ネットワークアドレス“10.0.0.0/8”のルーティングエントリを用いてルートが検索されたパケットの宛先ホストアドレス“10.20.2.1”とそのルーティングエントリへのポインタ“b”を表すキャッシュエントリをキャッシュテーブル13に登録する。その際、宛先ネットワークアドレス“10.0.0.0/8”のルーティングエントリのアップデートカウント値“5”をキャッシュエントリに設定する。そして、ステップ407で、宛先ネットワークアドレス“10.0.0.0/8”のルーティングエントリの情報を基に決定されたルートにパケットをフォワーディングする。その結果、キャッシュテーブル13は表8に示すように変更される。
Figure 0004646823
本発明の一実施形態のルータ装置の構成を示すブロック図である。 図1に示したフォワーディング処理部の構成を示すブロック図である。 図1および図2に示したルーティングテーブルにエントリされている宛先ネットワークアドレスをツリー構造で管理する一例を示す図である。 図2に示したフォワーディング処理部におけるパケット受信時の動作の一例を説明するフローチャートである。 図2に示したキャッシュテーブルの一構成例を示す図である。
符号の説明
10a〜10c フォワーディング処理部
11 物理回線終端部
12 ルーティングテーブル
13 キャッシュテーブル
14 第2の制御部
20 スイッチ部
30 ルーティングテーブル
40 第1の制御部

Claims (14)

  1. パケットを受信すると、受信したパケットのルートを決定するルータ装置において、
    パケットの宛先アドレスとルートとの対応関係を表すルーティングエントリが登録されるルーティングテーブルと、
    前記ルーティングエントリを用いてすでにルートが決定されたパケットの宛先アドレスとルートとの対応関係を表すキャッシュエントリが登録されるキャッシュテーブルと、
    カウンタを備え、前記ルーティングテーブルにルーティングエントリを登録または前記ルーティングテーブルからルーティングエントリを削除すると、前記カウンタのカウント値をインクリメントし、インクリメントされたカウント値を登録または削除されたルーティングエントリに設定する第1の制御部と、
    パケットを受信すると、前記パケットの宛先アドレスにヒットするキャッシュエントリがない場合、前記パケットの宛先アドレスにヒットするルーティングエントリのルートを前記パケットのルートに決定して前記キャッシュテーブルにキャッシュエントリを登録するとともに、当該キャッシュエントリのルートの決定に用いられたルーティングエントリのカウント値をキャッシュエントリに設定する第2の制御部とを有し、
    前記第2の制御部は、パケットを受信すると、前記パケットの宛先アドレスにヒットするキャッシュエントリがあるが、当該キャッシュエントリのカウント値と当該キャッシュエントリのルートの決定に用いられたルーティングエントリのカウント値とが一致しない場合、当該キャッシュエントリを前記キャッシュテーブルから削除するルータ装置。
  2. 請求項1に記載のルータ装置において、
    前記第2の制御部は、パケットを受信すると、前記キャッシュエントリを削除した後、前記パケットの宛先アドレスにヒットするルーティングエントリのルートを前記パケットのルートに決定して前記キャッシュテーブルにキャッシュエントリを登録するとともに、当該キャッシュエントリのルートの決定に用いられたルーティングエントリのカウント値をキャッシュエントリに設定するルータ装置。
  3. 請求項1に記載のルータ装置において、
    前記第2の制御部は、パケットを受信すると、前記キャッシュエントリを削除した後、前記パケットの宛先アドレスにヒットするルーティングエントリもない場合、前記パケットを廃棄するルータ装置。
  4. 請求項1から3のいずれか1項に記載のルータ装置において、
    前記第2の制御部は、パケットを受信すると、前記パケットの宛先アドレスにヒットするキャッシュエントリがあり、当該キャッシュエントリのカウント値と当該キャッシュエントリのルートの決定に用いられた前記ルーティングエントリのカウント値とが一致する場合、当該キャッシュエントリのルートを前記パケットのルートに決定するルータ装置。
  5. 請求項1から4のいずれか1項に記載のルータ装置において、
    前記第2の制御部は、パケットを受信すると、前記パケットの宛先アドレスにヒットするキャッシュエントリおよびルーティングエントリがない場合、前記パケットを廃棄するルータ装置。
  6. 請求項1から5のいずれか1項に記載のルータ装置において、
    前記第1の制御部は、前記ルーティングテーブルの管理を行うに際して、前記ルーティングエントリの宛先アドレスを2進数で表して最上位ビットから順番に各ビット位置にて2進木のノードを生成し、生成したノードから分岐させた分岐先に次に生成したノードを配置したツリー構造で管理を行うルータ装置。
  7. 請求項6に記載のルータ装置において、
    前記第1の制御部は、前記ルーティングテーブルにルーティングエントリを登録すると、登録されたルーティングエントリだけでなく、当該ルーティングエントリの宛先アドレスと前記ツリー構造上で所定の関係を有する宛先アドレスのルーティングエントリにも前記カウンタのカウント値を設定するルータ装置。
  8. パケットの宛先アドレスとルートとの対応関係を表すルーティングエントリが登録されるルーティングテーブルと、前記ルーティングエントリを用いてすでにルートが決定されたパケットの宛先アドレスとルートとの対応関係を表すキャッシュエントリが登録されるキャッシュテーブルとを有するルータ装置におけるパケットのルート決定方法において、
    前記ルーティングテーブルにルーティングエントリを登録または前記ルーティングテーブルからルーティングエントリを削除すると、所定のカウンタのカウント値をインクリメントし、インクリメントされたカウント値を登録または削除されたルーティングエントリに設定するステップと、
    パケットを受信すると、前記パケットの宛先アドレスにヒットするキャッシュエントリがない場合、前記パケットの宛先アドレスにヒットするルーティングエントリのルートを前記パケットのルートに決定して前記キャッシュテーブルにキャッシュエントリを登録するとともに、当該キャッシュエントリのルートの決定に用いられたルーティングエントリのカウント値をキャッシュエントリに設定するステップとを有し、
    パケットを受信すると、前記パケットの宛先アドレスにヒットするキャッシュエントリがあるが、当該キャッシュエントリのカウント値と当該キャッシュエントリのルートの決定に用いられたルーティングエントリのカウント値とが一致しない場合、当該キャッシュエントリを前記キャッシュテーブルから削除するステップとを有するルート決定方法。
  9. 請求項8に記載のルート決定方法において、
    パケットを受信すると、前記キャッシュエントリを削除した後、前記パケットの宛先アドレスにヒットするルーティングエントリのルートを前記パケットのルートに決定してキャッシュエントリを前記キャッシュテーブルに登録するとともに、当該キャッシュエントリのルートの決定に用いられたルーティングエントリのカウント値を前記キャッシュエントリに設定するステップを有するルート決定方法。
  10. 請求項8に記載のルート決定方法において、
    パケットを受信すると、前記キャッシュエントリを削除した後、前記パケットの宛先アドレスにヒットするルーティングエントリもない場合、前記パケットを廃棄するステップを有するルート決定方法。
  11. 請求項8から10のいずれか1項に記載のルート決定方法において、
    パケットを受信すると、前記パケットの宛先アドレスにヒットするキャッシュエントリがあり、当該キャッシュエントリのカウント値と当該キャッシュエントリのルートの決定に用いられたルーティングエントリのカウント値とが一致する場合、当該キャッシュエントリのルートを前記パケットのルートに決定するステップを有するルート決定方法。
  12. 請求項8から11のいずれか1項に記載のルート決定方法において、
    パケットを受信すると、前記パケットの宛先アドレスにヒットするキャッシュエントリおよびルーティングエントリがない場合、前記パケットを廃棄するステップを有するルート決定方法。
  13. 請求項8から12のいずれか1項に記載のルート決定方法において、
    前記ルーティングテーブルの管理を行うに際して、前記ルーティングエントリの宛先アドレスを2進数で表して最上位ビットから順番に各ビット位置にて2進木のノードを生成し、生成したノードから分岐させた分岐先に次に生成したノードを配置したツリー構造で管理を行うステップを有するルート決定方法。
  14. 請求項13に記載のルート決定方法において、
    前記ルーティングテーブルにルーティングエントリを登録すると、登録されたルーティングエントリだけでなく、当該ルーティングエントリの宛先アドレスと前記ツリー構造上で所定の関係を有する宛先アドレスのルーティングエントリにも前記カウンタのカウント値を設定するステップを有するルート決定方法。
JP2006040459A 2006-02-17 2006-02-17 ルータ装置、ルータ装置におけるルート決定方法 Expired - Fee Related JP4646823B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006040459A JP4646823B2 (ja) 2006-02-17 2006-02-17 ルータ装置、ルータ装置におけるルート決定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006040459A JP4646823B2 (ja) 2006-02-17 2006-02-17 ルータ装置、ルータ装置におけるルート決定方法

Publications (2)

Publication Number Publication Date
JP2007221514A JP2007221514A (ja) 2007-08-30
JP4646823B2 true JP4646823B2 (ja) 2011-03-09

Family

ID=38498265

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006040459A Expired - Fee Related JP4646823B2 (ja) 2006-02-17 2006-02-17 ルータ装置、ルータ装置におけるルート決定方法

Country Status (1)

Country Link
JP (1) JP4646823B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5012526B2 (ja) * 2008-01-17 2012-08-29 日本電気株式会社 パケット転送装置及び転送方法
JP5531517B2 (ja) * 2009-09-04 2014-06-25 ヤマハ株式会社 通信装置および通信方法
JP5016657B2 (ja) * 2009-11-12 2012-09-05 日本電信電話株式会社 ネクストホップ検索装置、ネクストホップ検索方法およびプログラム
CN107579916B (zh) 2016-07-04 2021-03-23 新华三技术有限公司 转发表项访问方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000232479A (ja) * 1999-02-10 2000-08-22 Nec Corp キャッシュを有するルータの方路決定装置及びプログラムを記録した機械読み取り可能な記録媒体
JP2001045061A (ja) * 1999-08-02 2001-02-16 Hitachi Ltd 通信ノード装置
JP2001290718A (ja) * 2000-04-07 2001-10-19 Nec Corp ルータにおけるキャッシュテーブル管理装置およびプログラム記録媒体
JP2004023450A (ja) * 2002-06-17 2004-01-22 Nec Corp ルータ装置
JP2004221807A (ja) * 2003-01-14 2004-08-05 Hitachi Ltd 分散ルーティングテーブル管理方式およびルータ
JP2004524754A (ja) * 2001-03-19 2004-08-12 インターナショナル・ビジネス・マシーンズ・コーポレーション キャッシュ入力の選択方法および装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3239836B2 (ja) * 1998-04-03 2001-12-17 日本電気株式会社 ルータ装置及び伝達ルートの設定方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000232479A (ja) * 1999-02-10 2000-08-22 Nec Corp キャッシュを有するルータの方路決定装置及びプログラムを記録した機械読み取り可能な記録媒体
JP2001045061A (ja) * 1999-08-02 2001-02-16 Hitachi Ltd 通信ノード装置
JP2001290718A (ja) * 2000-04-07 2001-10-19 Nec Corp ルータにおけるキャッシュテーブル管理装置およびプログラム記録媒体
JP2004524754A (ja) * 2001-03-19 2004-08-12 インターナショナル・ビジネス・マシーンズ・コーポレーション キャッシュ入力の選択方法および装置
JP2004023450A (ja) * 2002-06-17 2004-01-22 Nec Corp ルータ装置
JP2004221807A (ja) * 2003-01-14 2004-08-05 Hitachi Ltd 分散ルーティングテーブル管理方式およびルータ

Also Published As

Publication number Publication date
JP2007221514A (ja) 2007-08-30

Similar Documents

Publication Publication Date Title
US6993031B2 (en) Cache table management device for router and program recording medium thereof
US6768739B1 (en) Router with a cache having a high hit probability
US9672234B2 (en) Database and database processing methods
US7443841B2 (en) Longest prefix matching (LPM) using a fixed comparison hash table
CA2327866C (en) Table searching technique
US7325071B2 (en) Forwarding traffic in a network using a single forwarding table that includes forwarding information related to a plurality of logical networks
US20070171911A1 (en) Routing system and method for managing rule entry thereof
US7313138B2 (en) Router device and routing method
JP2000196670A (ja) 高速検索方法及び高速検索装置
JP5888338B2 (ja) 通信システムおよび通信方法
US7277399B1 (en) Hardware-based route cache using prefix length
CN106803809B (zh) 一种报文转发的方法和装置
JP4646823B2 (ja) ルータ装置、ルータ装置におけるルート決定方法
KR100541846B1 (ko) 3 단계 테이블로 구성된 아이피 주소 룩업 시스템 및 그방법
WO2008119242A1 (fr) Méthode de recherche dans un arbre multi-bit de type trie
US7493412B2 (en) Method for processing a data packet
US6925503B2 (en) Method and system for performing a longest prefix match search
JP7436712B2 (ja) パケットマッチング方法、装置、ネットワークデバイスおよび媒体
CN113824814B (zh) 一种转发表的地址匹配方法、装置、网络设备及介质
JP2005347969A (ja) パケット転送装置およびパケット転送方法
CN107204926B (zh) 预处理cache的路由快速查找方法
JP3989503B2 (ja) ネットワーク中継器
WO2015103868A1 (zh) 一种路由查找方法和路由器
US9444731B2 (en) Methods and systems for data packet routing
KR100572693B1 (ko) 인터넷 프로토콜 패킷 룩업 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080909

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20091105

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20091113

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20091118

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100928

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101115

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101207

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

Free format text: PAYMENT UNTIL: 20131217

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4646823

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees