JP3371006B2 - Table search method and router device - Google Patents

Table search method and router device

Info

Publication number
JP3371006B2
JP3371006B2 JP04235193A JP4235193A JP3371006B2 JP 3371006 B2 JP3371006 B2 JP 3371006B2 JP 04235193 A JP04235193 A JP 04235193A JP 4235193 A JP4235193 A JP 4235193A JP 3371006 B2 JP3371006 B2 JP 3371006B2
Authority
JP
Japan
Prior art keywords
entry
cam
destination address
address
network
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 - Lifetime
Application number
JP04235193A
Other languages
Japanese (ja)
Other versions
JPH06261078A (en
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP04235193A priority Critical patent/JP3371006B2/en
Publication of JPH06261078A publication Critical patent/JPH06261078A/en
Application granted granted Critical
Publication of JP3371006B2 publication Critical patent/JP3371006B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Small-Scale Networks (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、通信システムのルータ
におけるルーティングテーブル検索方式に関するもので
ある。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a routing table search system in a router of a communication system.

【0002】[0002]

【従来の技術】複数の端末が接続される複数のLAN及
びWANと、これらを相互接続するための複数のネット
ワークインタフェースを持つブリッジ機能を持つルータ
(ブルータ、ブリッジングルータと呼ばれることもあ
る)において、異なるネットワークに接続されている端
末間の通信情報を受信したルータは、その情報を他のネ
ットワークへ中継(ルーティング)しなければならな
い。そのために宛先ネットワークアドレスとそのネット
ワークアドレスを持つネットワークに到達するための次
のルータのネットワークアドレス及び送出するネットワ
ークインタフェースの番号を1エントリとするデータベ
ースを持つ。
2. Description of the Related Art A plurality of LANs and WANs to which a plurality of terminals are connected, and a router having a bridge function having a plurality of network interfaces for interconnecting these terminals (sometimes referred to as bruta or bridging router) A router that receives communication information between terminals connected to different networks must relay (route) the information to other networks. Therefore, it has a database in which the destination network address, the network address of the next router for reaching the network having the network address, and the number of the network interface to be sent out are one entry.

【0003】近年はネットワークの伝送速度がますます
高速化し、ネットワークの大規模化により、上記のルー
ティング処理の高速化が要求されている。これらの処理
の高速化方式としては、例えば論文「LANのアドレス
フィルタリングを超高速に処理する16kbitストリ
ングサーチエンジンLSI」(電子情報通信学会論文誌
1989年5月 Vol.J72−C−II No.
5)に記載された方式がある。上記従来技術は、ブリッ
ジにおけるフィルタリングテーブルの高速検索方式を示
したものであり、フィルタリングテーブル自身を連想メ
モリ(以下CAM:Content Addressable Memoryと称
す)に登録して、フィルタリングテーブルの登録/検索
処理をハードウェアで行うことにより、フィルタリング
処理の高速化を図っている。
In recent years, the transmission speed of the network has become higher and higher, and the larger scale of the network has required higher speed of the routing process. As a method for speeding up these processes, for example, a paper "16 kbit string search engine LSI for processing LAN address filtering at an extremely high speed" (Journal of the Institute of Electronics, Information and Communication Engineers, May 1989, Vol. J72-C-II No.
There is a method described in 5). The above-mentioned prior art shows a high-speed search method for a filtering table in a bridge, in which the filtering table itself is registered in an associative memory (hereinafter, referred to as CAM: Content Addressable Memory), and the filtering table registration / search process is performed by a hard disk. This is done by software to speed up the filtering process.

【0004】[0004]

【発明が解決しようとする課題】上記従来技術の場合、
フィルタリング処理の高速化は図れるが、フィルタリン
グテーブル自身をCAMに登録するので、登録できるエ
ントリ数はCAMのエントリ数に限定されてしまう。ル
ータのルーティングテーブルに適用した場合でも、ネッ
トワークの大規模化によりルーティングテーブルのエン
トリ数は増加の一途をたどっているので、CAMの大容
量化が必要となる。CAMのエントリ数は現時点におい
ては256や512と比較的少なく、大容量化は今後の
課題となっている。またルーティングプロトコルによっ
ては、ルーティングテーブルを検索するキーの情報が、
CAMのエントリサイズよりも大きな場合が考えられ
る。
In the case of the above prior art,
Although the filtering process can be speeded up, since the filtering table itself is registered in the CAM, the number of entries that can be registered is limited to the number of entries in the CAM. Even when it is applied to the routing table of the router, the number of entries in the routing table is increasing due to the increase in the scale of the network, so that it is necessary to increase the capacity of the CAM. The number of entries in the CAM is relatively small at the present time, 256 and 512, and increasing the capacity is an issue for the future. Also, depending on the routing protocol, the key information for searching the routing table may be
It may be larger than the CAM entry size.

【0005】本発明の目的は、CAMを利用する際の長
所である検索処理の高速化を活かし、現時点では短所で
あるエントリ数やエントリサイズの制限を補足して、ル
ーティングテーブル、フィルタリングテーブルあるいは
アドレス解決テーブルの検索処理の高速化を図るための
方式を提供することにある。
An object of the present invention is to take advantage of the speed-up of search processing, which is an advantage when using CAM, and to supplement the limitations on the number of entries and entry size, which are currently disadvantages, to make a routing table, a filtering table, or an address. It is to provide a method for accelerating the resolution table search processing.

【0006】[0006]

【課題を解決するための手段】上記目的を達成するた
め、本発明は、ルータ装置において、CAMをキャッシ
ュメモリの一部としてルーティング制御部、フィルタリ
ング制御部あるいはアドレス解決制御部に各々利用する
ことを特徴とする。例えば、ルーティング制御部におい
て、受信パケットから宛先アドレスを抽出し、宛先アド
レスをキーとして一度ルーティングテーブルを検索し、
ルーティングテーブル上の該当エントリへのポインタが
分かっている宛先アドレスをCAMに登録する。そし
て、CAMのエントリに対して1対1に対応するエント
リを持つ対応テーブルに、上記ルーティングテーブルの
該当エントリへのポインタを登録する。
In order to achieve the above object, the present invention uses a CAM as a part of a cache memory in a router device as a routing control unit, a filtering control unit or an address resolution control unit. Characterize. For example, in the routing control unit, the destination address is extracted from the received packet, the routing table is searched once using the destination address as a key,
A destination address whose pointer to the corresponding entry on the routing table is known is registered in the CAM. Then, the pointer to the corresponding entry of the routing table is registered in the correspondence table having the entry corresponding to the entry of the CAM one to one.

【0007】[0007]

【作用】本発明によれば、同じ宛先アドレスに対して再
度テーブルを検索する場合は、CAMに宛先アドレスの
照合を行うと、該当アドレスの登録の有無が瞬時に分か
り、登録有りの場合にはCAMの該当アドレスが登録さ
れているエントリに対応する対応テーブルのエントリか
らテーブルへのポインタが得られることにより、テーブ
ル検索時の高速化を図ることができる。
According to the present invention, when the table is searched again for the same destination address, if the destination address is collated with the CAM, it is instantly known whether or not the address is registered. By obtaining the pointer to the table from the entry of the correspondence table corresponding to the entry in which the corresponding address of the CAM is registered, it is possible to speed up the table search.

【0008】このように、ルーティングテーブル、フィ
ルタリングテーブルあるいはアドレス解決テーブルの検
索用のキャッシュメモリとして、CAMと対応テーブル
を設けることにより、検索回数の多い宛先アドレスがキ
ャッシュメモリに登録されることにより、テーブル検索
時の高速化を図り、ルーティング処理能力を向上させる
ことができる。また、対応テーブルを設けていることに
より、CAMによるエントリサイズ等の制約を、解決で
きる。
As described above, by providing the CAM and the correspondence table as the cache memory for searching the routing table, the filtering table, or the address resolution table, the destination address that is frequently searched is registered in the cache memory. The search speed can be increased and the routing processing capacity can be improved. Further, by providing the correspondence table, it is possible to solve the constraint such as the entry size by the CAM.

【0009】[0009]

【実施例】以下、本発明の第一の実施例を図1〜図15
を用いて説明する。第一の実施例は、ルータにおけるル
ーティングテーブルの検索に特徴がある。先ず図1に、
本発明が適用されるルータの構成例を示す。同図におい
て、100がルータであり、そのネットワークインタフ
ェース110(110Aないし110D)は、それぞれ
フィルタリング制御部120(120Aないし120
D)、ルーティング制御部130(130Aないし13
0D)に分かれている。フィルタリング制御部120
は、それぞれフィルタリングテーブル140(140A
ないし140D、ただし図1の中では140A以外は図
示省略、以下同じ)を有する。また、ルーティング制御
部130は、それぞれCAM151と、対応テーブル1
52からなるキャッシュメモリ150と、ルーティング
テーブル154と、パケットの送受信バッファ156を
有する。160はルータ管理部、162は予備部、17
0は管理装置をそれぞれ示している。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A first embodiment of the present invention will be described below with reference to FIGS.
Will be explained. The first embodiment is characterized by the search of the routing table in the router. First, in Figure 1,
The structural example of the router to which this invention is applied is shown. In the figure, reference numeral 100 is a router, and the network interfaces 110 (110A to 110D) of the routers are filtering control units 120 (120A to 120D).
D), the routing control unit 130 (130A to 13)
It is divided into 0D). Filtering control unit 120
Are the filtering tables 140 (140A
Through 140D, except for 140A in FIG. 1, which is the same hereinafter). In addition, the routing control unit 130 has the CAM 151 and the correspondence table 1 respectively.
It has a cache memory 150 composed of 52, a routing table 154, and a packet transmission / reception buffer 156. 160 is a router management unit, 162 is a spare unit, 17
Reference numeral 0 indicates a management device.

【0010】端末191と192がローカルエリアネッ
トワーク(LAN)181に、端末193と194がL
AN182にそれぞれ接続され、LAN181と18
2、ワイドエリアネットワーク(WAN)183と18
4が、ルータ100内のネットワークインタフェース1
10Aないし110Dにそれぞれ接続されている。
Terminals 191 and 192 connect to a local area network (LAN) 181, and terminals 193 and 194 connect to L.
LAN181 and 18 connected to AN182 respectively
2. Wide area network (WAN) 183 and 18
4 is a network interface 1 in the router 100
10A to 110D, respectively.

【0011】図2はネットワークインタフェース110
Aの構成例を示す。フィルタリング制御部120Aは、
LAN181とパケットを送受信するネットワーク送受
信回路210Aと、フィルタリングテーブル140Aを
検索してルーティング制御部130Aの受信バッファ2
30Aに渡すか廃棄するかどうかを判定するフィルタリ
ング制御回路220Aを有する。ルーティング制御部1
30Aは、受信バッファ230Aに格納されたパケット
をCAM151A及び対応テーブル152Aを介してル
ーティングテーブル154Aを検索して他のネットワー
クインタフェース(例えば、110B)に送信するため
に、パケットに必要情報を付加しインタフェース間送受
信回路250Aに渡すか廃棄するかどうかを判定するル
ーティング制御回路240Aと、ネットワーク送受信回
路210Aを介してLAN181へ送信するための送信
バッファ260Aを有する。これらの回路はプロセッサ
270Aがメモリ280A内のプログラムにより制御す
る。
FIG. 2 shows a network interface 110.
The structural example of A is shown. The filtering control unit 120A
The network transmission / reception circuit 210A for transmitting / receiving packets to / from the LAN 181 and the reception buffer 2 of the routing control unit 130A by searching the filtering table 140A.
It has a filtering control circuit 220A that determines whether to pass it to 30A or discard it. Routing control unit 1
The 30A adds necessary information to the packet in order to search the routing table 154A through the CAM 151A and the correspondence table 152A for the packet stored in the reception buffer 230A and to send it to another network interface (for example, 110B). It has a routing control circuit 240A for determining whether to pass it to the inter-transmission / reception circuit 250A or discard it, and a transmission buffer 260A for transmitting to the LAN 181 via the network transmission / reception circuit 210A. These circuits are controlled by the processor 270A according to a program in the memory 280A.

【0012】図1と2に示したルータ100は、通常は
ISO(International Organization for Standard)の
OSI(Open Systems Interconnection)参照モデルの
第3レイヤであるネットワークレイヤで端末間の情報の
経路制御(以下ルーティングと称す)を行う(ルータ処
理)が、ルータ100が第3レイヤでサポートしていな
いプロトコルの情報を受信した場合にはルーティングで
きないので、OSI参照モデルの第2レイヤであるデー
タリンクレイヤでルーティングを行う(ブリッジ処
理)。図3にルータ100のルータ処理とブリッジ処理
の分岐を示す。ルータ100は端末間でやり取りされる
パケットを受信すると、パケットからネットワークレイ
ヤのプロトコルを示すプロトコルタイプを抽出し(ステ
ップ310)、抽出が可能ならば(320)抽出したプ
ロトコルタイプがルータ100のサポートしているプロ
トコルがどうかを判定し(330)、サポートしている
場合はルータ処理を行い(340)、サポートしていな
い場合とステップ320においてプロトコルタイプが抽
出不可能ならばブリッジ処理を行う(350)。本発明
は、ルータ処理とブリッジ処理の両方に有効であるが、
以下ではまず、ルータ処理340に注目して説明を行
う。
The router 100 shown in FIGS. 1 and 2 is a network layer which is a third layer of an OSI (Open Systems Interconnection) reference model of ISO (International Organization for Standard). However, when the router 100 receives the information of the protocol that is not supported by the third layer, the routing cannot be performed. Therefore, the routing is performed by the data link layer which is the second layer of the OSI reference model. (Bridge processing). FIG. 3 shows a branch of the router process and the bridge process of the router 100. When the router 100 receives the packet exchanged between the terminals, it extracts the protocol type indicating the protocol of the network layer from the packet (step 310), and if the extraction is possible (320), the extracted protocol type is supported by the router 100. It is judged whether the protocol is present (330), if it is supported, router processing is performed (340), and if it is not supported and if the protocol type cannot be extracted in step 320, bridge processing is performed (350). . The present invention is effective for both router processing and bridge processing,
In the following, first, the router process 340 will be focused and described.

【0013】図4はルーティングテーブル154のフォ
ーマットの一例を示す。宛先ネットワークアドレス、宛
先ネットワークアドレスに対するマスク、送出ネットワ
ーク内での宛先ネットワークアドレス、送出インタフェ
ース番号を格納するエントリ410を複数個持つ。
FIG. 4 shows an example of the format of the routing table 154. It has a plurality of entries 410 for storing a destination network address, a mask for the destination network address, a destination network address in the sending network, and a sending interface number.

【0014】図5はフィルタリングテーブル140のフ
ォーマットの一例を示す。データリンクレイヤアドレス
(以下物理アドレスと称す)を格納するエントリ510
を複数個持つ。
FIG. 5 shows an example of the format of the filtering table 140. An entry 510 that stores a data link layer address (hereinafter referred to as a physical address)
Have multiple.

【0015】図6はキャッシュメモリ150(CAM1
51及び対応テーブル152)のフォーマットの一例を
示す。CAM151は宛先ネットワークアドレスを格納
するエントリ610を複数個持つ。対応テーブル152
は宛先ネットワークアドレス、ルーティングテーブル1
54内のどのエントリ410に対応しているかを示すポ
インタを格納するエントリ620を複数個持つ。CAM
151の各々のエントリ(例えば610)は対応テーブ
ル152の各々のエントリ(例えば620)と1対1で
対応している。
FIG. 6 shows a cache memory 150 (CAM1
51 and a correspondence table 152). The CAM 151 has a plurality of entries 610 which store destination network addresses. Correspondence table 152
Is the destination network address, routing table 1
It has a plurality of entries 620 each of which stores a pointer indicating which entry 410 in 54 corresponds to. CAM
Each entry of 151 (for example, 610) has a one-to-one correspondence with each entry (for example, 620) of the correspondence table 152.

【0016】図7は本発明が適用されるルータをネット
ワークに接続した一例を示す。ネットワーク721には
端末731及び732が接続され、ネットワーク722
には端末733が接続され、ネットワーク721と72
2はルータ100のネットワークインタフェース110
Aと110Bを介して相互接続されている。またネット
ワーク723には端末734が接続され、ネットワーク
722と723はルータ100と同様のルータ700の
ネットワークインタフェース710Aと710Bを介し
て相互接続されている。これらのネットワークシステム
には、システム内で一意であるネットワークアドレスを
定義し、ネットワーク721ないし723、ルータ10
0及び700のネットワークインタフェース110A、
110B、710A、710B、端末731ないし73
4に割り当てる。このネットワークアドレスは、OSI
参照モデルのネットワークレイヤで扱うアドレスであ
る。ネットワークアドレスは例えば32ビットからな
り、これを8ビットずつの4つの組に分けて10進数で
表現する方法が一般的であり、図7に示したネットワー
クアドレス741ないし743はこの表記法に従ってい
る。
FIG. 7 shows an example in which a router to which the present invention is applied is connected to a network. The terminals 731 and 732 are connected to the network 721, and the network 722
A terminal 733 is connected to the network 721 and 72.
2 is a network interface 110 of the router 100
A and 110B are interconnected. A terminal 734 is connected to the network 723, and the networks 722 and 723 are interconnected via the network interfaces 710A and 710B of the router 700 similar to the router 100. For these network systems, network addresses that are unique within the system are defined, and the networks 721 to 723 and the router 10 are defined.
0 and 700 network interfaces 110A,
110B, 710A, 710B, terminals 731-73
Assign to 4. This network address is OSI
This is the address handled by the network layer of the reference model. A network address consists of, for example, 32 bits, and it is general to divide it into four groups of 8 bits and express it in decimal number. The network addresses 741 to 743 shown in FIG. 7 follow this notation.

【0017】ネットワークアドレスは、属しているネッ
トワーク番号を表すフィールドと、そのネットワーク内
の各要素(ネットワーク721ないし723、ルータ1
00および700のネットワークインタフェース110
A、110B、710A、710B、端末731ないし
734)を識別するフィールドに分割される。図7の例
では上位16ビットがネットワーク番号、下位16ビッ
トが要素識別子となっている。ネットワーク721のネ
ットワークアドレス741は133.144.0.0であるが、こ
れはネットワーク番号が133.144、要素識別子が0.0であ
ることを示している。
The network address is a field indicating the network number to which it belongs and each element in the network (networks 721 to 723, router 1).
00 and 700 network interface 110
A, 110B, 710A, 710B, terminals 731-734). In the example of FIG. 7, the upper 16 bits are the network number and the lower 16 bits are the element identifier. The network address 741 of the network 721 is 133.144.0.0, which means that the network number is 133.144 and the element identifier is 0.0.

【0018】ルータ100及び700のネットワークイ
ンタフェース110A、110B、710A、710
B、端末731ないし734の各々については、上記の
ネットワークアドレスの他に、OSI参照モデルのデー
タリンクレイヤで扱う物理アドレスが付与されている。
この物理アドレスは、自分が属しているネットワーク内
でのみ有効な情報であり、ネットワーク内部のルーティ
ング制御に用いられる。
Network interfaces 110A, 110B, 710A, 710 of routers 100 and 700
B, each of the terminals 731 to 734 is provided with a physical address handled by the data link layer of the OSI reference model, in addition to the above network address.
This physical address is information valid only within the network to which it belongs and is used for routing control inside the network.

【0019】図8に、図7で示したネットワークシステ
ムに割り当てたネットワークアドレスおよび物理アドレ
スを示す。物理アドレスは16ビットまたは48ビット
であるが、実施例の動作を簡単に説明するために適当な
幅にしている。
FIG. 8 shows network addresses and physical addresses assigned to the network system shown in FIG. The physical address is 16 bits or 48 bits, but has an appropriate width in order to briefly explain the operation of the embodiment.

【0020】図7で示したネットワークシステム構成
で、図8で示したアドレスの割り当てにより、図9にル
ータ100のネットワークインタフェース110Aが持
つルーティングテーブル154Aの一例とフィルタリン
グテーブル140Aの一例を示す。他のネットワークイ
ンタフェースにも154Aと140Aと同様なテーブル
が存在する。ルーティングテーブル154Aの内容は、
ルータ100及び700の間で実行されるルーティング
プロトコルにより動的に生成されてもよいし、予め管理
者が登録することにより静的に生成されてもよい。
With the network system configuration shown in FIG. 7, by allocating the addresses shown in FIG. 8, FIG. 9 shows an example of the routing table 154A and the filtering table 140A of the network interface 110A of the router 100. Other network interfaces also have tables similar to 154A and 140A. The contents of the routing table 154A are
It may be dynamically generated by a routing protocol executed between the routers 100 and 700, or may be statically generated by being registered in advance by an administrator.

【0021】ルーティングテーブル154Aには、特定
のネットワークが自分のどのネットワークインタフェー
スを介して到達可能であるか、また、そのネットワーク
インタフェースを介してパケットを送出したとき、送出
ネットワーク内での宛先をどこにすればよいか、の情報
が書かれている。送出ネットワーク内での宛先=「Nu
ll」は、該当するネットワークに自ルータが接続され
ていることを示す。
In the routing table 154A, which network interface of a particular network can be reached, and when a packet is transmitted through the network interface, the destination of the destination in the transmission network is determined. Information is written. Destination in sending network = “Nu
"ll" indicates that the local router is connected to the corresponding network.

【0022】次に、本発明の第一の実施例の動作を、ネ
ットワークインタフェース110A、110Bに注目し
て、図9ないし図14を用いて説明する。図9は動作開
始前におけるネットワークインタフェース110A内の
ルーティングテーブル154Aの内容とフィルタリング
テーブル140Aの内容を示す。
Next, the operation of the first embodiment of the present invention will be described with reference to FIGS. 9 to 14, focusing on the network interfaces 110A and 110B. FIG. 9 shows the contents of the routing table 154A and the filtering table 140A in the network interface 110A before the operation is started.

【0023】図10にネットワークインタフェース11
0Aで受信されるパケットの一例を示す。(a)は端末
731から端末733宛に通信を行うパケット101
0、(b)は端末732から端末734宛に通信を行う
パケット1020を示す。TYPEはプロトコルのタイ
プ、FCSはフレームチェックシーケンスである。
FIG. 10 shows the network interface 11
An example of the packet received by 0A is shown. (A) is a packet 101 for communication from the terminal 731 to the terminal 733.
0 and (b) show a packet 1020 for communication from the terminal 732 to the terminal 734. TYPE is a protocol type, and FCS is a frame check sequence.

【0024】図11はキャッシュメモリ150AのCA
M151A及び対応テーブル152Aの内容と、ネット
ワークインタフェース110Bが持つ、ネットワークア
ドレスと物理アドレスのマッピングを行うためのアドレ
ス解決テーブル1150の内容を示す。図12はフィル
タリング処理部120Aの処理フロー、図13はルーテ
ィングテーブル検索終了までのルーティング処理部13
0Aの処理フローを示す。図14はネットワークインタ
フェース110Bと710Bからそれぞれ送信されるパ
ケットの一例を示す。
FIG. 11 shows the CA of the cache memory 150A.
The contents of the M151A and the correspondence table 152A and the contents of the address resolution table 1150 for mapping the network address and the physical address of the network interface 110B are shown. 12 is a processing flow of the filtering processing unit 120A, and FIG. 13 is a routing processing unit 13 until the end of the routing table search.
The processing flow of 0A is shown. FIG. 14 shows an example of a packet transmitted from each of the network interfaces 110B and 710B.

【0025】以下の説明では、ネットワークインタフェ
ース110Aが図10に示すパケットを受信してから宛
先端末に達するまでの動作を説明する。 (1)パケット1010を受信する場合 図12に示すように、フィルタリング制御部120Aは
受信中パケット1010から宛先物理アドレスDA(=
0001)を抽出し(ステップ1210)、DAをキー
として図9のフィルタリングテーブル140Aを検索し
(1220)、DAと物理アドレスが一致するエントリ
が存在しないので(1230)、パケット1010を受
信バッファ230Aに格納する(1250)。
In the following description, the operation of the network interface 110A from receiving the packet shown in FIG. 10 to reaching the destination terminal will be described. (1) When receiving the packet 1010 As shown in FIG. 12, the filtering control unit 120A determines the destination physical address DA (=
0001) is extracted (step 1210), the filtering table 140A of FIG. 9 is searched using the DA as a key (1220), and since there is no entry whose physical address matches DA (1230), the packet 1010 is stored in the reception buffer 230A. It is stored (1250).

【0026】図13に示すように、ルーティング制御部
130Aは受信バッファ230Aに格納されたパケット
1010から宛先ネットワークアドレスDN(=133.14
4.0.3)を抽出し(1310)、DNをキーとして図1
1のCAM151Aにハードウェア的に検索要求を出す
(1320)。DNと宛先ネットワークアドレスが一致
するエントリが有のとき(1330)、対応テーブルに
登録されている宛先ネットワークアドレスがDNと一致
するかどうかを調べる(1340)。一致している場合
には、ルーティングテーブル154AへのポインタRP
を取得する(1350)。
As shown in FIG. 13, the routing control unit 130A determines the destination network address DN (= 133.14) from the packet 1010 stored in the reception buffer 230A.
4.0.3) is extracted (1310), and DN is used as a key in Fig. 1.
A search request is sent to the CAM 151A of No. 1 by hardware (1320). When there is an entry in which the DN and the destination network address match (1330), it is checked whether the destination network address registered in the correspondence table matches the DN (1340). If they match, a pointer RP to the routing table 154A
Is acquired (1350).

【0027】次に、RPが指すルーティングテーブル1
54Aのエントリ910のマスク(=255.255.0.0)を
DN(=133.145.0.3)にかけた値MN(=133.145.0.
0)を計算する(1360)。MNはエントリ910内
の宛先ネットワークアドレス(=133.145.0.0)と一致
しているので(1370)、このエントリ910が検索
結果としてルーティング処理に使用される。
Next, the routing table 1 pointed to by the RP
Value MN (= 133.145.0.) Obtained by multiplying DN (= 133.145.0.3) by the mask (= 255.255.0.0) of entry 910 of 54A.
0) is calculated (1360). Since the MN matches the destination network address (= 133.145.0.0) in the entry 910 (1370), this entry 910 is used as the search result in the routing process.

【0028】なお、ステップ1330においてDNと宛
先ネットワークアドレスが一致するエントリが無しの場
合、あるいは、ステップ1340において対応テーブル
に登録されている宛先ネットワークアドレスがDNと一
致していない場合、ステップ1370においてMNがエ
ントリ910内の宛先ネットワークアドレスと一致しな
い場合は、いずれもキャッシュミスヒットとなり、ルー
ティングテーブル154AをDNをキーとして直接検索
する処理を行う(1380)。
If there is no entry in which the DN and the destination network address match in step 1330 or the destination network address registered in the correspondence table in step 1340 does not match the DN, the MN in step 1370. , Does not match the destination network address in the entry 910, a cache miss hit occurs, and the routing table 154A is directly searched using the DN as a key (1380).

【0029】上記のルーティング制御部の検索結果によ
り、パケット1010はエントリ910に示される送出
インタフェース110Bに転送される。送出ネットワー
ク内での宛先はNullとなっているので、端末733
はネットワークインタフェース110Bに接続している
ネットワーク上に存在するので、アドレス解決テーブル
1150(図11)を端末733の宛先ネットワークア
ドレス(=133.145.0.3)でそのまま検索して、宛先物
理アドレス(=000C)を得る。したがって、ネット
ワークインタフェース110Bからは図14の(a)に
示すパケット1410が送信され、宛先端末733にパ
ケット1410が到達する。
The packet 1010 is transferred to the transmission interface 110B indicated by the entry 910 according to the search result of the routing control unit. Since the destination in the sending network is Null, the terminal 733
Exists on the network connected to the network interface 110B, the address resolution table 1150 (FIG. 11) is directly searched by the destination network address (= 133.145.0.3) of the terminal 733 and the destination physical address (= 000C) is searched. To get Therefore, the packet 1410 shown in FIG. 14A is transmitted from the network interface 110B, and the packet 1410 reaches the destination terminal 733.

【0030】(2)パケット1020を受信する場合 (1)と同様のルーティングテーブル検索が行われ、図
9に示すエントリ920が検索結果としてルーティング
処理に使用される。この結果により、パケット1020
はエントリ910に示される送出インタフェース110
Bに転送される。送出ネットワーク内での宛先は133.14
5.0.2となっているので、端末734はネットワークイ
ンタフェース110Bに接続しているネットワーク上に
存在しない。そこで、図11のアドレス解決テーブル1
150を送出ネットワーク内での宛先(=133.145.0.
2)で検索して宛先物理アドレス(=0003)を得
る。したがって、ネットワークインタフェース110B
からは図14の(b)に示すパケット1420が送信さ
れる。
(2) When receiving the packet 1020, the same routing table search as in (1) is performed, and the entry 920 shown in FIG. 9 is used as the search result in the routing process. This result indicates that the packet 1020
Is the outgoing interface 110 shown in entry 910
B. The destination in the sending network is 133.14
Since it is 5.0.2, the terminal 734 does not exist on the network connected to the network interface 110B. Therefore, the address resolution table 1 of FIG.
150 is the destination in the sending network (= 133.145.0.
The destination physical address (= 0003) is obtained by searching in 2). Therefore, the network interface 110B
Transmits a packet 1420 shown in FIG. 14B.

【0031】このパケット1420は、ネットワークイ
ンタフェース710Aにより受信され、上記のネットワ
ークインタフェース110Aと同様の処理が行われ、ネ
ットワークインタフェース710Bに転送され、ネット
ワークインタフェース710Bから図14の(c)に示
すパケット1430が送信され、宛先端末734宛にこ
のパケット1430が到達する。
This packet 1420 is received by the network interface 710A, processed in the same manner as the above-mentioned network interface 110A, transferred to the network interface 710B, and the packet 1430 shown in FIG. 14C from the network interface 710B. This packet 1430 is transmitted and reaches the destination terminal 734.

【0032】次に、ネットワークインタフェース110
Aに注目して、図6及び図9ないし図15を用いてCA
M及び対応テーブルの登録方式を説明する。図10で示
したパケット1010を受信する前のCAM及び対応テ
ーブルは、図6で示したようなフォーマットで何も登録
されていない状態とする。ルーティングテーブル154
Aとフィルタリングテーブル140Aは図9で示した内
容になっているものとする。図15はルーティング処理
部130Aの処理フローを示す。
Next, the network interface 110
Pay attention to A, and use FIG. 6 and FIG. 9 to FIG.
The registration method of M and the correspondence table will be described. The CAM and the correspondence table before receiving the packet 1010 shown in FIG. 10 are in a state in which nothing is registered in the format as shown in FIG. Routing table 154
It is assumed that A and the filtering table 140A have the contents shown in FIG. FIG. 15 shows a processing flow of the routing processing unit 130A.

【0033】以下の説明では、ネットワークインタフェ
ース110Aが図10で示したパケット1010を受信
する場合の動作について説明する。図12で示したよう
に、パケット1010が受信バッファ230Aに格納さ
れるまでは、第一の実施例と同様の動作を行う。図13
で示したように、CAM及び対応テーブルに何も登録さ
れていない状態では、ステップ1380のキャッシュミ
スヒット処理を行うことになる。
In the following description, the operation when the network interface 110A receives the packet 1010 shown in FIG. 10 will be described. As shown in FIG. 12, the same operation as that of the first embodiment is performed until the packet 1010 is stored in the reception buffer 230A. FIG.
As shown in, the cache mishit processing of step 1380 is performed when nothing is registered in the CAM and the correspondence table.

【0034】図15に示すように、ルーティング制御部
130Aは受信バッファ230Aに格納されたパケット
1010から抽出した宛先ネットワークアドレスDN
(=133.144.0.3)をキーとしてルーティングテーブル
154Aを検索し(ステップ1510)、1エントリ毎
に内容を読み出し、DNにマスクをかけた情報が宛先ネ
ットワークアドレスと一致するエントリが見つかるまで
検索を行う。その結果、一致するエントリがある場合
(1520)、このエントリのポインタRPを取得し
(1530)、CAM151に空きエントリがあるか調
べ、空きエントリがある場合(1540)、その空きエ
ントリにDNを登録し(1550)、そのエントリに対
応する対応テーブルのエントリにDNとRPを登録する
(1560)。ステップ1520において、一致するエ
ントリが見つからない場合は登録不可とする。ステップ
1540において、CAMに空きエントリがない場合
は、使用中エントリから適切なアルゴリズムを用いてそ
の中から1つを空きエントリにして(1570)、その
エントリにDNを登録する(1550)。
As shown in FIG. 15, the routing controller 130A extracts the destination network address DN extracted from the packet 1010 stored in the reception buffer 230A.
The routing table 154A is searched using (= 133.144.0.3) as a key (step 1510), the contents are read for each entry, and the search is performed until an entry whose masked DN information matches the destination network address is found. As a result, if there is a matching entry (1520), the pointer RP of this entry is acquired (1530), and it is checked whether or not there is a free entry in the CAM 151. If there is a free entry (1540), the DN is registered in that free entry. Then (1550), the DN and RP are registered in the entry of the correspondence table corresponding to that entry (1560). In step 1520, if no matching entry is found, registration is not possible. If there is no free entry in the CAM in step 1540, one of the in-use entries is made free by using an appropriate algorithm (1570), and the DN is registered in that entry (1550).

【0035】次に本発明の第二の実施例を図16を用い
て説明する。第二の実施例は、第一の実施例におけるC
AM及び対応テーブルの登録方式の変形例である。すな
わち、ルーティングテーブル154検索のための検索キ
ーである宛先ネットワークアドレスが、CAM151の
エントリサイズよりも大きい場合の、CAM及び対応テ
ーブルの登録時及びルーティングテーブル検索時の動作
について、図16のルーティング制御部の処理フローを
用いて説明する。この処理は、図15のステップ153
0以降の処理を置き換えた処理フローである。
Next, a second embodiment of the present invention will be described with reference to FIG. The second embodiment is C in the first embodiment.
It is a modification of the registration method of the AM and the correspondence table. That is, regarding the operation at the time of registering the CAM and the corresponding table and at the time of searching the routing table when the destination network address which is the search key for searching the routing table 154 is larger than the entry size of the CAM 151, the routing control unit of FIG. This will be described using the processing flow of. This process is performed by step 153 in FIG.
This is a processing flow in which processing after 0 is replaced.

【0036】図16に示すように、CAMの空きエント
リが見つかり(ステップ1540、1570)、宛先ネ
ットワークアドレスDNをCAMのエントリサイズに変
換するハッシュ関数Hにより、DNをハッシュ処理後の
宛先ネットワークアドレスHNに変換し(1610)、
CAMの空きエントリにはこのHNを登録し(162
0)、対応テーブルの対応するエントリにはDNとルー
ティングテーブルへのポインタRPを登録する(156
0)。
As shown in FIG. 16, a CAM free entry is found (steps 1540 and 1570), and the hash function H for converting the destination network address DN into the CAM entry size is used to hash the DN to the destination network address HN. (1610),
This HN is registered in the empty entry of the CAM (162
0), the DN and the pointer RP to the routing table are registered in the corresponding entry of the correspondence table (156).
0).

【0037】また、第三の実施例を図17により説明す
る。この実施例は、図13のステップ1320から13
30の処理を置き換えるものである。すなわち、図13
のステップ1310でパケットから抽出された宛先ネッ
トワークアドレスDNをハッシュ関数でHNに変換し
(1710)、このHNをキーとしてCAMにハードウ
ェア的に検索要求を出し(1720)、HNと宛先ネッ
トワークアドレスか一致するエントリがあるかを調べ
(1730)、エントリがある場合には図13のステッ
プ1340以降の処理を行い、エントリがない場合には
図13のステップ1380のキャッシュミスヒット処理
を行う。このキャッシュミスヒット処理は、図15と図
16で示す処理フローである。
A third embodiment will be described with reference to FIG. In this example, steps 1320 to 13 of FIG.
It replaces the processing of 30. That is, in FIG.
In step 1310, the destination network address DN extracted from the packet is converted into an HN by a hash function (1710), and the HN is used as a key to issue a hardware search request to the CAM (1720). It is checked whether there is a matching entry (1730), and if there is an entry, the processing from step 1340 of FIG. 13 is performed, and if there is no entry, the cache mishit processing of step 1380 of FIG. 13 is performed. This cache mishit processing is the processing flow shown in FIGS. 15 and 16.

【0038】次に本発明の第四の実施例を図18を用い
て説明する。この実施例は、CAM150及び対応テー
ブル152の登録方式の変形例である。第一の実施例で
述べたように、ルーティングテーブル154の検索のた
めの検索キーとして宛先ネットワークアドレスを使用し
ているが、ルーティングプロトコルの種類によっては、
上記宛先ネットワークアドレスとその他の情報を使用す
る場合がある。このその他の情報としては、例えば通信
品質のサービス(TOS:Type Of Service、またはQ
OS:Quality Of Serviceと呼ばれる)等がある。具体
的には、宛先に対して複数の経路が存在する場合など
に、上記の通信品質サービス等の設定が可能としている
ルーティングプロトコルが該当する。この場合ルーティ
ングテーブルには、宛先ネットワークアドレスは同じだ
が通信品質サービスの値が異なるエントリが複数存在す
る。図18は検索キーとして宛先ネットワークアドレス
とTOSを使用する場合の、ルーティングテーブル15
4とCAM151及び対応テーブル152のフォーマッ
トの一例を示し、各々複数のエントリ1810〜183
0を有する。
Next, a fourth embodiment of the present invention will be described with reference to FIG. This embodiment is a modification of the registration method of the CAM 150 and the correspondence table 152. As described in the first embodiment, the destination network address is used as the search key for searching the routing table 154. However, depending on the type of routing protocol,
The destination network address and other information may be used. This other information is, for example, a communication quality service (TOS: Type Of Service, or QOS).
OS: called Quality of Service). Specifically, when there are a plurality of routes for the destination, the above-mentioned routing protocol that enables setting of the communication quality service or the like is applicable. In this case, the routing table has a plurality of entries having the same destination network address but different communication quality service values. FIG. 18 shows the routing table 15 when the destination network address and TOS are used as search keys.
4 and CAM 151 and an example of the format of the correspondence table 152, each of a plurality of entries 1810 to 183.
Has 0.

【0039】検索キーが複数ある場合には、それらを文
字列として合成して1つのキーとし、第一ないし第三の
実施例で説明した検索キーである宛先ネットワークアド
レスと置き換えて考えることにより、動作は明らかであ
る。合成したキーがCAMのエントリサイズよりも大き
くなる場合でも、第三の実施例により解決できる。
When there are a plurality of search keys, they are combined as a character string into one key, which is replaced by the destination network address which is the search key described in the first to third embodiments. The operation is clear. Even if the combined key is larger than the CAM entry size, it can be solved by the third embodiment.

【0040】次に本発明の第五の実施例を図19〜図2
1を用いて説明する。第五の実施例は、アドレス解決テ
ーブルの検索方式及び登録方式を示す。第一の実施例及
び第二の実施例の動作の説明における、一連の動作の流
れの中でアドレス解決テーブルの使用例も示したが、第
五の実施例では上記アドレス解決テーブルの検索及び登
録に対して、CAMと対応テーブルを用いた場合の動作
の説明を行なう。
Next, a fifth embodiment of the present invention will be described with reference to FIGS.
This will be described using 1. The fifth embodiment shows a search method and a registration method of the address resolution table. In the description of the operations of the first and second embodiments, the use example of the address resolution table is shown in the flow of a series of operations, but in the fifth embodiment, the search and registration of the address resolution table is performed. The operation of the CAM and the correspondence table will be described.

【0041】図19は、図2で示したネットワークイン
タフェース構成図のルーティング制御部だけを抜き出
し、アドレス解決テーブル及びその制御回路を付加した
ものである。アドレス解決制御回路1910Aは、ネッ
トワークアドレスと物理アドレスとのマッピングテーブ
ルであるアドレス解決テーブル1924Aと、キャッシ
ュメモリ1920Aすなわち検索キーを格納するCAM
1920A及びアドレス解決テーブルへのポインタを格
納する対応テーブル1922Aを制御する。
In FIG. 19, only the routing control unit of the network interface configuration diagram shown in FIG. 2 is extracted and an address resolution table and its control circuit are added. The address resolution control circuit 1910A includes an address resolution table 1924A that is a mapping table of network addresses and physical addresses, and a CAM that stores a cache memory 1920A, that is, a search key.
It controls the correspondence table 1922A that stores pointers to 1920A and the address resolution table.

【0042】第一の実施例及び第二の実施例の動作にお
けるルーティングテーブル検索後の動作について、第五
の実施例で説明する。図20の(a)はアドレス解決テ
ーブルの内容(図11の110Bと同じ)、図20の
(b)はCAM及び対応テーブルの内容を示す。図21
はルーティングテーブル検索後のルーティング処理部1
30Aの処理フローを示す。
The operation after the routing table search in the operations of the first and second embodiments will be described in the fifth embodiment. 20A shows the contents of the address resolution table (the same as 110B in FIG. 11), and FIG. 20B shows the contents of the CAM and the correspondence table. Figure 21
Is the routing processing unit 1 after searching the routing table
The processing flow of 30A is shown.

【0043】パケット1010を受信する場合、図13
での処理ステップ1370及び図15の処理ステップ1
560の後で、端末733の宛先ネットワークアドレス
DN1(=133.145.0.3)をキーとして、図19のCA
M1921Aにハードウェア的に検索要求を出す(ステ
ップ2105)。DN1と宛先ネットワークアドレスが
一致するエントリ(2040)が有のとき(211
0)、対応テーブルに登録されている宛先ネットワーク
アドレス(=133.145.0.3)がDN1と一致するかどう
かを調べ(2115)、一致しているのでアドレス解決
テーブル1924AへのポインタRP1(=1002)
を取得する(2120)。アドレス解決テーブル192
4Aの該当ポインタのエントリ2020から、宛先物理
アドレス(=000C)を得る。一方、処理ステップ2
110または2115において、NOの場合はキャッシ
ュミスヒットとなり、図15で示したキャッシュミスヒ
ット時の処理と同様な処理を行なう(2125ないし2
155)。
When the packet 1010 is received, FIG.
Processing step 1370 and processing step 1 of FIG.
After 560, using the destination network address DN1 (= 133.145.0.3) of the terminal 733 as a key, the CA in FIG.
A hardware search request is issued to M1921A (step 2105). When there is an entry (2040) in which the destination network address matches DN1 (211)
0), it is checked whether the destination network address (= 133.145.0.3) registered in the correspondence table matches DN1 (2115). Since they match, pointer RP1 (= 1002) to address resolution table 1924A.
Is acquired (2120). Address resolution table 192
The destination physical address (= 000C) is obtained from the entry 2020 of the corresponding pointer of 4A. On the other hand, processing step 2
If NO at 110 or 2115, a cache miss hit occurs, and the same process as the process at the time of the cache miss hit shown in FIG. 15 is performed (2125 to 2125).
155).

【0044】次に本発明の第六の実施例を図22〜図2
4を用いて説明する。第六の実施例では、ルータ装置が
ブリッジ機能も備えている場合の、ルーティング制御部
のフィルタリングテーブルの検索方式及び登録方式を示
す。図22に示す実施例は、図19のルーティング制御
部の構成に、フィルタリングテーブル及びその制御回路
を付加したものである。ブリッジ制御回路2210A
は、物理アドレスと送出インタフェースとのマッピング
テーブルであるフィルタリングテーブル2224Aと、
キャッシュメモリ2220A(検索キーを格納するCA
M2220A、フィルタリングテーブルへのポインタを
格納する対応テーブル2222A)を制御する。図23
の(a)はフィルタリングテーブルの内容、図23の
(b)はCAM及び対応テーブル2220Aの内容を示
す。図23の(c)は図7のネットワークシステムの構
成例で、端末731から端末733へのブリッジ処理さ
れるパケットの例を示す。図24はルーティング処理部
130Aにおけるブリッジ処理(図3での処理ステップ
350)の処理フローを示す。ただし、図24では、フ
ィルタリングテーブル2224A自身の学習処理につい
て説明を省略する。
Next, a sixth embodiment of the present invention will be described with reference to FIGS.
4 will be described. The sixth embodiment shows a search method and a registration method of the filtering table of the routing control unit when the router device also has a bridge function. The embodiment shown in FIG. 22 is obtained by adding a filtering table and its control circuit to the configuration of the routing controller of FIG. Bridge control circuit 2210A
Is a filtering table 2224A which is a mapping table of physical addresses and transmission interfaces,
Cache memory 2220A (CA storing search key
M2220A, a correspondence table 2222A) that stores a pointer to the filtering table. FIG. 23
23A shows the contents of the filtering table, and FIG. 23B shows the contents of the CAM and the correspondence table 2220A. FIG. 23C is a configuration example of the network system of FIG. 7, and shows an example of a packet subjected to bridge processing from the terminal 731 to the terminal 733. FIG. 24 shows a processing flow of the bridge processing (processing step 350 in FIG. 3) in the routing processing unit 130A. However, in FIG. 24, the description of the learning process of the filtering table 2224A itself is omitted.

【0045】パケット2370を受信すると、図3のル
ータ処理とブリッジ処理の分岐において、パケット23
70のTYPEフィールドがサポートされていないもの
とすると、ブリッジ処理(ステップ350)が行なわれ
る。端末733の宛先物理アドレスDA(=000C)
をキーとして、図22のCAM2221Aにハードウェ
ア的に検索要求を出し(ステップ2405)、DAと宛
先物理アドレスが一致するエントリ(2340)が有と
なり(2410)、対応テーブルに登録されている宛先
物理アドレス(=000C)がDAと一致するかどうか
を調べ(2415)、一致しているのでフィルタリング
テーブル2224AへのポインタRP3(=2002)
を取得する(2420)。フィルタリングテーブル22
24Aの該当ポインタのエントリ2320から、送出イ
ンタフェース(=110B)を得る。処理ステップ24
10または2415において、NOの場合はキャッシュ
ミスヒットとなり、図15で示したキャッシュミスヒッ
ト時の処理と同様な処理を行なう(2425ないし24
55)。ブリッジ処理の場合、DAと宛先物理アドレス
の一致するエントリがない場合(2430)は、送出イ
ンタフェースはすべてのインタフェース(同報)とな
り、DAと宛先物理アドレスの一致するエントリが有の
場合(2430)で、送出インタフェースが受信したイ
ンタフェースと等しい(=110A)場合はパケット廃
棄となる。
When the packet 2370 is received, the packet 23 is divided in the branch of the router process and the bridge process of FIG.
Assuming that the 70 TYPE field is not supported, the bridging process (step 350) is performed. Destination physical address DA of terminal 733 (= 000C)
22 is used as a key to issue a search request to the CAM 2221A of FIG. 22 by hardware (step 2405), and there is an entry (2340) whose DA and the destination physical address match (2410), and the destination physical registered in the correspondence table. It is checked whether the address (= 000C) matches DA (2415). Since they match, pointer RP3 to filtering table 2224A (= 2002).
Is acquired (2420). Filtering table 22
The transmission interface (= 110B) is obtained from the entry 2320 of the corresponding pointer of 24A. Processing step 24
If NO in 10 or 2415, a cache miss hit occurs and the same process as the process at the time of the cache miss hit shown in FIG. 15 is performed (2425 to 2425).
55). In the case of the bridge processing, if there is no entry having a matching DA and destination physical address (2430), the sending interface is all interfaces (broadcast), and if there is an entry having a matching DA and destination physical address (2430). Then, if the sending interface is equal to the received interface (= 110 A), the packet is discarded.

【0046】[0046]

【発明の効果】本発明によれば、ルーティングテーブ
ル、フィルタリングテーブルあるいはアドレス解決テー
ブルの検索用のキャッシュメモリとして、CAMと対応
テーブルを設けることにより、検索回数の多い宛先アド
レスがキャッシュメモリに登録される。これにより、テ
ーブル検索時の高速化を図り、ルーティング処理等の能
力を向上させることができる。また、CAMによるエン
トリサイズ等の制約も、対応テーブルを設けていること
により解決できる。
According to the present invention, by providing a CAM and a correspondence table as a cache memory for searching a routing table, a filtering table or an address resolution table, a destination address with a large number of searches is registered in the cache memory. . As a result, it is possible to speed up the table search and improve the capability of routing processing and the like. Further, restrictions on the entry size and the like due to the CAM can be solved by providing the correspondence table.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の第一の実施例になるルータの構成図で
ある。
FIG. 1 is a configuration diagram of a router according to a first embodiment of the present invention.

【図2】図1のネットワークインタフェース構成の詳細
を示す図である。
FIG. 2 is a diagram showing details of a network interface configuration of FIG.

【図3】図1の装置におけるルータ処理とブリッジ処理
の分岐を示す図である。
FIG. 3 is a diagram showing a branch of a router process and a bridge process in the apparatus of FIG.

【図4】図1のルーティングテーブルの一例を示す図で
ある。
FIG. 4 is a diagram showing an example of a routing table of FIG.

【図5】図1のフィルタリングテーブルの一例を示す図
である。
5 is a diagram showing an example of a filtering table of FIG.

【図6】図1のCAM及び対応テーブルのフォーマット
の一例を示す図である。
FIG. 6 is a diagram showing an example of formats of a CAM and a correspondence table of FIG. 1.

【図7】第一の実施例のネットワークシステムの構成例
を示す図である。
FIG. 7 is a diagram showing a configuration example of a network system of a first embodiment.

【図8】図7のネットワークシステムのアドレス割り当
てを示す図である。
8 is a diagram showing address allocation of the network system of FIG.

【図9】第一の実施例のネットワークインタフェース1
10Aが持つテーブルの内容の一例を示す図である。
FIG. 9 is a network interface 1 of the first embodiment.
It is a figure which shows an example of the content of the table which 10A has.

【図10】第一の実施例のネットワークインタフェース
110Aで受信されるパケットの一例を示す図である。
FIG. 10 is a diagram showing an example of a packet received by the network interface 110A of the first embodiment.

【図11】第一の実施例のCAM及び対応テーブル及び
アドレス解決テーブルの内容の一例を示す図である。
FIG. 11 is a diagram showing an example of contents of a CAM, a correspondence table, and an address resolution table according to the first embodiment.

【図12】第一の実施例のフィルタリング制御部の処理
フローを示す図である。
FIG. 12 is a diagram illustrating a processing flow of a filtering control unit according to the first embodiment.

【図13】第一の実施例のルーティング制御部の処理フ
ローを示す図である。
FIG. 13 is a diagram showing a processing flow of a routing control unit of the first embodiment.

【図14】第一の実施例のネットワークインタフェース
110B及び710Bから送信されるパケットの一例を
示す図である。
FIG. 14 is a diagram showing an example of packets transmitted from the network interfaces 110B and 710B of the first embodiment.

【図15】第一の実施例のCAM及び対応テーブルの登
録処理フローを示す図である。
FIG. 15 is a diagram showing a registration processing flow of a CAM and a correspondence table according to the first embodiment.

【図16】第二の実施例のルーティング制御部の処理フ
ローを示す図である。
FIG. 16 is a diagram showing a processing flow of a routing control unit of the second embodiment.

【図17】第三の実施例のルーティング制御部の処理フ
ローを示す図である。
FIG. 17 is a diagram showing a processing flow of a routing control unit of the third embodiment.

【図18】第四の実施例のテーブルの内容の一例を示す
図である。
FIG. 18 is a diagram showing an example of the contents of a table of the fourth embodiment.

【図19】第五の実施例のルーティング制御部の構成図
を示す図である。
FIG. 19 is a diagram showing a configuration diagram of a routing control unit of the fifth embodiment.

【図20】第五の実施例のアドレス解決テーブル、CA
M及び対応テーブルの内容の一例を示す図である。
FIG. 20 is an address resolution table of the fifth embodiment, CA
It is a figure which shows an example of the content of M and a correspondence table.

【図21】第五の実施例のルーティング制御部の処理フ
ローを示す図である。
FIG. 21 is a diagram showing a processing flow of the routing control unit of the fifth embodiment.

【図22】第六の実施例のルーティング制御部の構成図
を示す図である。
FIG. 22 is a diagram showing a configuration diagram of a routing control unit of the sixth embodiment.

【図23】第六の実施例のフィルタリングテーブル、C
AM、対応テーブルの内容およびネットワークインタフ
ェース110Aで受信されるパケットの一例を示す図で
ある。
FIG. 23 is a filtering table of the sixth embodiment, C
It is a figure which shows an example of AM, the content of a correspondence table, and the packet received by network interface 110A.

【図24】第六の実施例のルーティング制御部の処理フ
ローを示す図である。
FIG. 24 is a diagram showing a processing flow of the routing control unit of the sixth embodiment.

【符号の説明】[Explanation of symbols]

100…ルータ、110…ネットワークインタフェー
ス、120…フィルタリング制御部、130…ルーティ
ング制御部、140…フィルタリングテーブル、150
…キャッシュメモリ、151…CAM、152…対応テ
ーブル、154…ルーティングテーブル、181〜18
4…ネットワーク、191〜194…端末、1010,
1020,1410〜1430…パケット、1150…
アドレス解決テーブル
100 ... Router, 110 ... Network interface, 120 ... Filtering control unit, 130 ... Routing control unit, 140 ... Filtering table, 150
... cache memory, 151 ... CAM, 152 ... correspondence table, 154 ... routing table, 181-18
4 ... Network, 191-194 ... Terminals, 1010,
1020, 1410 to 1430 ... Packets, 1150 ...
Address resolution table

───────────────────────────────────────────────────── フロントページの続き (72)発明者 高田 治 神奈川県川崎市麻生区王禅寺1099番地 株式会社日立製作所システム開発研究所 内 (72)発明者 左古 義人 神奈川県海老名市下今泉810番地 株式 会社日立製作所オフィスシステム事業部 内 (56)参考文献 特開 平6−197111(JP,A) 特開 平5−153125(JP,A) 特開 平2−131646(JP,A) 特開 平6−121004(JP,A) 特開 平6−97965(JP,A) 特開 平5−219060(JP,A) 特開 平4−351041(JP,A) 特開 平6−261063(JP,A) 特許2785599(JP,B2) (58)調査した分野(Int.Cl.7,DB名) H04L 12/56 H04L 12/46 ─────────────────────────────────────────────────── ─── Continuation of front page (72) Inventor Osamu Takada 1099 Ozenji, Aso-ku, Kawasaki-shi, Kanagawa Hitachi Ltd. System Development Laboratory (72) Inventor Yoshito Saiko 810 Shimoimaizumi, Ebina-shi, Kanagawa Stock Company (56) Reference JP-A-6-197111 (JP, A) JP-A-5-153125 (JP, A) JP-A-2-131646 (JP, A) JP-A-6- 121004 (JP, A) JP-A-6-97965 (JP, A) JP-A-5-219060 (JP, A) JP-A-4-351041 (JP, A) JP-A-6-261063 (JP, A) Patent 2785599 (JP, B2) (58) Fields investigated (Int.Cl. 7 , DB name) H04L 12/56 H04L 12/46

Claims (5)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】複数のネットワークインタフェースを有
し、上記各ネットワークインタフェースが、ルーティン
グ情報を記憶するための複数のエントリからなるルーテ
ィングテーブルと、宛先アドレスを記憶するための複数
のエントリからなるCAMと、上記CAM内の各エント
リにリンクした複数のエントリを持つ対応テーブルとを
有するルータ装置におけるテーブル検索方法であって、受信パケットから抽出された宛先アドレスに基いて上記
ルーティングテーブルから該当エントリを検索した後、
上記宛先アドレスを上記 CAM内の1つのエントリに登
すると共に、該CAMエントリにリンクした上記対応
テーブル内の1つのエントリに上記検索対象となった
ントリへのポインタを登録しておき、 同じ宛先アドレスについて再度上記ルーティングテーブ
ルを検索する場合に、上記CAM宛先アドレス照合
し、該宛先アドレスがCAMに登録済みの場合は、上記
宛先アドレスの登録エントリにリンクしている上記対応
テーブルのエントリが示すポインタに基いて、上記ル
ーティングテーブルを検索することを特徴とするテーブ
ル検索方法。
1. A plurality of network interfaces are provided.
However, each of the above network interfaces
Routing table consisting of a plurality of entries for storing group information and a plurality of destination tables for storing destination addresses.
CAM consisting of entries of
And a correspondence table with multiple entries linked to
A method for searching a table in a router device having the above, based on a destination address extracted from a received packet ,
After searching the corresponding entry from the routing table,
The destination address and registers to one entry in the CAM, and registers the pointer to the e <br/> entry became the search to a single entry in the correspondence table that is linked to the CAM entry placed, when searching the routing table again with the same destination address, checking the destination address in the CAM
And, if the destination address is already registered in the CAM, the
Based on the pointer indicated by the entry in the correspondence table linked to the registered entry of the destination address,
Table search method characterized by retrieving a computing table.
【請求項2】複数のネットワークインタフェースを有
し、上記ネットワークインタフェースが、ルーティング
情報を記憶するためのルーティングテーブルと、ISO
のOSI参照モデルの第3レイヤであるネットワークア
レイヤのドレスと第2レイヤであるデータリンクレイヤ
のアドレスとのマッピングを行うためのアドレス解決テ
ーブルとを備え、上記各テーブル毎に、宛先アドレスを
記憶するための複数のエントリからなるCAMと、上記
CAM内の各エントリにリンクした複数のエントリを持
つ対応テーブルとを有するルータ装置におけるテーブル
検索方法であって受信パケットから抽出された宛先
アドレスに基いて上記ルーティングテーブルまたはアド
レス解決テーブルの何れかで該当エントリを検索した
後、上記宛先アドレスを上記テーブルと対応するCAM
内の1つのエントリに登録すると共に、該CAMエント
リにリンクしている上記対応テーブル内の1つのエント
リに上記検索対象となったエントリへのポインタを登録
ておき、 同じ宛先アドレスについて再度テーブル検索する場合
に、上記CAM宛先アドレス照合し、該宛先アドレ
がCAMに登録済みの場合は、上記宛先アドレスの登
エントリにリンクしている上記対応テーブルのエン
トリが示すポインタに基いて、上記テーブルを検索する
ことを特徴とするテーブル検索方法。
2. A plurality of network interfaces are provided.
And the above network interface
A routing table for storing information and ISO
Comprising a third network A layer is a layer of the OSI reference model dresses and the address resolution table for mapping the address of the data link layer is the second layer, at the each table, the destination address
A CAM consisting of multiple entries for storage, and
Have multiple entries linked to each entry in the CAM
In the router device having one correspondence table
Search method, the destination extracted from the received packet
Based on the address, the above routing table or add
Searches for the corresponding entry in any of the reply table
After that, the destination address is CAM corresponding to the table.
One entry in the above correspondence table that is registered to one entry in the
Li the previously registered a pointer to the entry becomes the search target, when the re-table search with the same destination address, compares the destination address in the CAM, the destination address <br/> scan within CAM If you have already registered, register the above destination address .
A table search method, characterized in that the table is searched based on a pointer indicated by an entry in the correspondence table linked to the registered entry.
【請求項3】複数のネットワークインタフェースを有
し、上記ネットワークインタフェースが、ルーティング
情報を記憶するためのルーティングテーブルと、ISO
のOSI参照モデルの第3レイヤであるネットワークア
レイヤのドレスと第2レイヤであるデータリンクレイヤ
のアドレスとのマッピングを行うためのアドレス解決テ
ーブルと、ブリッジのフィルタリングテーブルとを
え、上記各テーブル毎に、宛先アドレスを記憶するため
の複数のエントリからなるCAMと、上記CAM内の各
エントリにリンクした複数のエントリを持つ対応テーブ
ルとを有するルータ装置におけるテーブル検索方法であ
って、 受信パケットから抽出された宛先アドレスに基いて上記
ルーティングテーブル、アドレス解決テーブルまたはフ
ィルタリングテーブルの何れかで該当エントリを検索し
た後、上記 宛先アドレスを上記テーブルと対応するCA
内の1つのエントリに登録すると共に、該CAMエン
トリにリンクしている上記対応テーブル内の1つのエン
トリに上記検索対象となったエントリへのポインタを登
録しておき、 同じ宛先アドレスについて再度テーブル
検索する場合に、上記CAM宛先アドレス照合
該宛先アドレスがCAMに登録済みの場合は、上記宛先
アドレスの登録エントリにリンクしている上記対応テー
ブルのエントリが示すポインタに基いて、上記テーブ
ルを検索することを特徴とするテーブル検索方法。
3. Having a plurality of network interfaces
And the above network interface
A routing table for storing information , ISO
Bei and address resolution table, the bridge filtering table for a third network A layer is a layer of the OSI reference model dresses the mapping between an address of data link layer is the second layer
Well, to store the destination address for each of the above tables
CAM consisting of multiple entries of
Corresponding table with multiple entries linked to it
A table search method in a router device having
Based on the destination address extracted from the received packet ,
Routing table, address resolution table or
Search for the corresponding entry in any of the filtering tables.
Then, the above destination address is set to the CA corresponding to the above table.
And registers in a single entry in the M, one end in the corresponding table linked to the CAM entry
Previously registered a pointer to the entry becomes the search to a bird, in the case of re-table search with the same destination address, it compares the destination address in the CAM,
If the destination address is already registered in the CAM, the table is searched based on the pointer indicated by the entry in the correspondence table linked to the registration entry of the destination address.
Table search method characterized by retrieving Le.
【請求項4】受信パケットから抽出した宛先アドレス
ついて前記CAMでアドレス登録の有無を判定し、登録
有りの場合には上記CAMにおける上記宛先アドレス
の登録エントリにリンクしている前記対応テーブルエン
トリからポインタを獲得し、該ポインタアドレスに基い
て検索対象となるテーブルを検索し、登録なしの場合に
上記宛先アドレスを検索キーとして上記検索対象
ーブルを検索することを特徴とする請求項1、2、3の
何れかに記載のテーブル検索方法。
4. A destination address extracted from the received packet
Then, the presence or absence of the address registration is judged in the CAM , and if the registration is found , the destination address in the CAM is decided .
The acquired pointer from the corresponding table entry, based on the pointer address that is linked to registration entries
Te searches the table to be searched, in the case of no registration, according to claim 1, 2, 3, characterized in that searching for the search target Te <br/> Buru as a search key the destination address
The table search method described in any of the above .
【請求項5】受信パケットから抽出された宛先アドレス
をハッシュ関数で短縮した形で前記CAMに登録するこ
とを特徴とする請求項1、2、3の何れかに記載のテー
ブル検索方法。
5. A destination address extracted from the received packet
The table search method according to claim 1 , wherein the table is registered in the CAM in a form shortened by a hash function .
JP04235193A 1993-03-03 1993-03-03 Table search method and router device Expired - Lifetime JP3371006B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04235193A JP3371006B2 (en) 1993-03-03 1993-03-03 Table search method and router device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04235193A JP3371006B2 (en) 1993-03-03 1993-03-03 Table search method and router device

Publications (2)

Publication Number Publication Date
JPH06261078A JPH06261078A (en) 1994-09-16
JP3371006B2 true JP3371006B2 (en) 2003-01-27

Family

ID=12633618

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04235193A Expired - Lifetime JP3371006B2 (en) 1993-03-03 1993-03-03 Table search method and router device

Country Status (1)

Country Link
JP (1) JP3371006B2 (en)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8828094D0 (en) * 1988-12-01 1989-01-05 Balmfield Ltd Improvements in converting stored documents into electronic signals
JPH09219702A (en) * 1996-02-14 1997-08-19 Nec Corp Method for retrieving free route of mesh configuration
JPH1198143A (en) * 1997-09-17 1999-04-09 Toshiba Corp Atm repeater
JP3301359B2 (en) 1997-09-30 2002-07-15 日本電気株式会社 List management system, method and storage medium
WO1999049618A1 (en) * 1998-03-23 1999-09-30 Hitachi, Ltd. Network repeater and network next transfer destination searching method
JP3228249B2 (en) 1998-12-04 2001-11-12 日本電気株式会社 Router device
JP3199051B2 (en) 1999-02-10 2001-08-13 日本電気株式会社 Router deciding device having cache and machine-readable recording medium recording program
KR100384895B1 (en) * 1999-09-16 2003-05-22 한국전자통신연구원 Look-up apparatus and its method for processing multi-layer parallel in communication system
KR100325426B1 (en) * 1999-11-24 2002-02-25 윤종용 Internet gateway system supporting VoIP
JP3449326B2 (en) 1999-12-08 2003-09-22 日本電気株式会社 Data search system, packet processing apparatus, and control method
JP3591420B2 (en) 2000-04-07 2004-11-17 日本電気株式会社 Cache table management device and program recording medium in router
JP3745616B2 (en) 2000-11-24 2006-02-15 株式会社エヌ・ティ・ティ・ドコモ Relay device
JP3957570B2 (en) 2002-06-17 2007-08-15 日本電気株式会社 Router device
CN100555985C (en) * 2004-02-20 2009-10-28 富士通株式会社 A kind of switch and routing table method of operating
JP4622490B2 (en) * 2004-12-02 2011-02-02 株式会社日立製作所 Data transfer device
GB0524126D0 (en) * 2005-11-26 2006-01-04 Cogniscience Ltd Data transmission method
US7782864B2 (en) 2005-12-06 2010-08-24 Electronics And Telecommunications Research Institute Apparatus and method for providing QoS for MPLS traffic
JP4714081B2 (en) 2006-06-01 2011-06-29 アラクサラネットワークス株式会社 Network connection device
JP4994302B2 (en) * 2008-05-30 2012-08-08 Kddi株式会社 Information retrieval device, data processing device, communication traffic measurement device, database survey device, and computer program
JP5152861B2 (en) * 2008-10-30 2013-02-27 岩崎通信機株式会社 Router device and routing search control method
US8325730B2 (en) * 2009-12-17 2012-12-04 Amazon Technologies, Inc. Distributed routing architecture
JPWO2011148925A1 (en) * 2010-05-24 2013-07-25 日本電気株式会社 Semiconductor device and network routing method and system
JP6170718B2 (en) 2012-11-21 2017-07-26 ルネサスエレクトロニクス株式会社 Search system
JP6148546B2 (en) * 2013-06-14 2017-06-14 Kddi株式会社 Packet transfer apparatus and program

Also Published As

Publication number Publication date
JPH06261078A (en) 1994-09-16

Similar Documents

Publication Publication Date Title
JP3371006B2 (en) Table search method and router device
US6633565B1 (en) Apparatus for and method of flow switching in a data communications network
US6650642B1 (en) Network relaying apparatus and network relaying method capable of high-speed routing and packet transfer
US6683885B1 (en) Network relaying apparatus and network relaying method
CA2281018C (en) Packet relaying apparatus and high speed multicast system
US6711153B1 (en) Route lookup engine
JP3381687B2 (en) Flow identification device, flow processing device, flow identification method, and flow processing method
US6957272B2 (en) Stackable lookup engines
EP0606079B1 (en) Multi-protocol packet switching network
US5434863A (en) Internetworking apparatus for connecting plural network systems and communication network system composed of plural network systems mutually connected
US5909440A (en) High speed variable length best match look-up in a switching device
US20050171937A1 (en) Memory efficient hashing algorithm
US7346059B1 (en) Header range check hash circuit
US20020071437A1 (en) Connection switching apparatus, connection switching network control system and connection switching network control method
US6658003B1 (en) Network relaying apparatus and network relaying method capable of high-speed flow detection
US6922410B1 (en) Organization of databases in network switches for packet-based data communications networks
JP2000196670A (en) Fast retrieving method and its device
JP2001509978A (en) Fast Variable Length Best Match Lookup in Switching Devices
JPH07143180A (en) Address learning equipment in clad
JP3113742B2 (en) Internetwork equipment
JP2002176431A (en) Packet transfer unit and transfer information management method used for it, and its transfer information retrieval method
JPH1198143A (en) Atm repeater
US6337862B1 (en) Network switch with truncated trie look-up facility
US6671277B1 (en) Network relaying apparatus and network relaying method capable of high quality transfer of packets under stable service quality control
JP2001237881A (en) Table type data retrieval device and packet processing system using it, and table type data retrieval method

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071115

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20081115

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20081115

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20091115

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20101115

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20101115

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20111115

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20111115

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20121115

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20121115

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20131115

Year of fee payment: 11

EXPY Cancellation because of completion of term