[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JPH1070573A - Route information retrieving circuit - Google Patents

Route information retrieving circuit

Info

Publication number
JPH1070573A
JPH1070573A JP22573096A JP22573096A JPH1070573A JP H1070573 A JPH1070573 A JP H1070573A JP 22573096 A JP22573096 A JP 22573096A JP 22573096 A JP22573096 A JP 22573096A JP H1070573 A JPH1070573 A JP H1070573A
Authority
JP
Japan
Prior art keywords
information
route information
address
bit
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.)
Pending
Application number
JP22573096A
Other languages
Japanese (ja)
Inventor
Hideyuki Tsuboi
秀幸 坪井
Kazuhiro Hayashi
一博 林
Akira Toyoshima
鑑 豊島
Yutaka Watanabe
裕 渡邉
Hiroyuki Fujiwara
弘之 藤原
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 JP22573096A priority Critical patent/JPH1070573A/en
Publication of JPH1070573A publication Critical patent/JPH1070573A/en
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a route information retrieving circuit retrieving route information faster by minimizing the number of accessing times to a memory storing a routing table. SOLUTION: An IP(internal protocol) address (32bits) is separated (102 to 106) into three parts (the common part of a high order, the route information referring part of an intermediate order and the subnet mask part of a smallest size IP network of a low order) from user's information (VPI)(virtual path identifier). Then the common part of the high order is used for collating arithmetic (108) for judging whether a sent cell is effective or ineffective. In addition, the intermediate-order bit is used as the memory address of route reference (107) with user information to assign route information to an area designated by the address. Thereby route information is obtained by once access to a memory.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、インタネットシス
テムにおいて用いられるルート振り分け装置内のルート
情報検索回路に係り、送られてきた通信情報の中の宛先
情報に基づき、ルート情報を管理するテーブルからより
高速にルート情報を調べることができるルート情報検索
回路に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a route information retrieving circuit in a route sorting device used in an Internet system. The present invention relates to a route information retrieving circuit which manages route information based on destination information in transmitted communication information. The present invention relates to a route information search circuit that can check route information at high speed.

【0002】[0002]

【従来の技術】インタネットシステムにおいては、ネッ
トワーク相互を接続する装置として、宛先IPアドレス
(internet protocl アドレス)をキーとしてルート情
報管理テーブルから決定されるルートにより送信情報を
振り分けるルータと呼ばれる装置が設けられている。従
来のルータでは、ルート情報を管理するテーブルを設
け、送られてきた通信情報の中の宛先情報と該テーブル
からルート情報を調べていた。そして、このルート情報
を調べる回路には多くがプロセッサを用い、前記テーブ
ルに書かれた情報を順次読み出し、送信先情報(IPア
ドレス)と順次比較して一致するIPアドレスを探し、
これにより、対応するルート情報を決定することとして
いた。
2. Description of the Related Art In an Internet system, a device called a router for distributing transmission information according to a route determined from a route information management table using a destination IP address (internet protocl address) as a key is provided as a device for connecting networks. ing. In the conventional router, a table for managing the route information is provided, and the route information is checked from the destination information in the transmitted communication information and the table. Most of the circuits for checking the route information use a processor, sequentially read the information written in the table, and sequentially compare the information with the destination information (IP address) to find a matching IP address.
Thereby, the corresponding route information is determined.

【0003】[0003]

【発明が解決しようとする課題】上述したような従来の
ルータ(ルート振り分け装置)では、ルート情報の検索
の実行をプロセッサによる処理で行っていた。そして、
この検索処理によって一致するIPアドレスを探し当て
るまで、ルーティング・テーブル、すなわち、メモリに
何度もアクセスすることになっていた。
In the conventional router (route distribution device) as described above, the search of the route information is executed by the processing by the processor. And
Until a matching IP address is found by this search process, the routing table, that is, the memory is accessed many times.

【0004】従って、ルータにおいてルート情報を検索
する処理の高速化を図るためには、メモリのアクセス回
数を減らすことが重要であった。しかし、送られてきた
IPアドレスとテーブルから読み出したIPアドレスと
を比較することにより、IPアドレスが一致するルート
情報を探すという従来の検索処理では、アクセス回数の
削減にも限界があった。更に、かかる従来の技術では、
検索処理は同じメモリのアクセスが繰り返されることが
あり、必ずしもパイプライン的な処理に向いているとは
いえなかった。
Therefore, it is important to reduce the number of accesses to the memory in order to speed up the process of searching for the route information in the router. However, in the conventional search processing of searching for route information having the same IP address by comparing the transmitted IP address with the IP address read from the table, there is a limit to the reduction in the number of accesses. Further, in such conventional technology,
In the search processing, access to the same memory may be repeated, and it is not always suitable for a pipeline-like processing.

【0005】本発明はかかる事情に鑑みてなされたもの
で、ルーティング・テーブルを記憶したメモリへのアク
セス回数を最小限にとどめ、より高速にルート情報を検
索することができるルート情報検索回路を提供すること
を目的とする。
The present invention has been made in view of the above circumstances, and provides a route information search circuit capable of searching for route information at a higher speed by minimizing the number of accesses to a memory storing a routing table. The purpose is to do.

【0006】[0006]

【課題を解決するための手段】請求項1記載の発明は、
送られてきた送信宛情報と、ルート情報を管理するテー
ブルとを照合し、ルート情報を検索して決定する通信装
置におけるルート情報検索回路において、前記送られて
きた送信宛情報から、前記テーブルを書き込んだメモリ
における物理的なアドレスとなるビットを切り出し、当
該アドレスに基づいて前記メモリにアクセスすることを
特徴としている。
According to the first aspect of the present invention,
A route information search circuit in a communication device that compares the transmitted transmission destination information with a table that manages the route information and searches for and determines the route information. A bit serving as a physical address in the written memory is cut out, and the memory is accessed based on the address.

【0007】請求項2記載の発明は、請求項1記載のル
ート情報検索回路において、前記送られてきた送信宛情
報から、登録されている送信宛情報に共通な一致部分で
あって、照合に必要なビットを切り出し、登録にあるも
のかどうかの照合判断をする回路を具備したことを特徴
としている。
According to a second aspect of the present invention, there is provided the route information search circuit according to the first aspect, wherein the transmitted transmission destination information is a matching part common to the registered transmission destination information. It is characterized in that a circuit is provided for cutting out necessary bits and determining whether or not the bits are registered.

【0008】請求項3記載の発明は、請求項1又は2記
載のルート情報検索回路における内部処理を、順次パイ
プライン的に行うことを特徴としている。
According to a third aspect of the present invention, the internal processing in the route information search circuit according to the first or second aspect is sequentially performed in a pipeline manner.

【0009】[0009]

【発明の実施の形態】本発明が適用される通信装置で
は、送信宛情報(相手先IPアドレス)によりテーブル
を参照してルート情報(IPアドレス−送信VPI T
able)を決定する。そして、送られてくる送信宛情
報は、例えば、所定のビット数(例えば32ビット)
で、その中にサブネットマスク(ドントケアな複数ビッ
ト)が含まれたものであり、検索テーブルには、各送信
宛情報に対応するルート情報がある。又、検索テーブル
に登録されている送信宛情報は、上位ビット部分が共通
の場合が多い。
DESCRIPTION OF THE PREFERRED EMBODIMENTS In a communication apparatus to which the present invention is applied, route information (IP address-transmission VPI T) is referred to by referring to a table based on transmission destination information (a destination IP address).
able) is determined. The transmitted transmission destination information is, for example, a predetermined number of bits (for example, 32 bits).
In the search table, route information corresponding to each transmission destination information is included in the search table. Also, the transmission destination information registered in the search table often has a common upper bit portion.

【0010】そこで、本発明では、送信宛情報をユーザ
情報(VPI:virtual path identifier)から3つの
部分(上位の共通部、中位の経路情報参照部、下位の最
小サイズIPネットワークのサブネットマスク部)に分
離し、上位の共通部は送られてきたセルが有効か無効か
の判断に用い、中位ビットはユーザ情報と合わせてルー
ト参照のメモリアドレスとし、該アドレスで指定される
領域にルート情報を割り当てる。
Therefore, in the present invention, the transmission destination information is converted from user information (VPI: virtual path identifier) into three parts (an upper common part, an intermediate path information reference part, and a lower minimum size IP network subnet mask part). ), And the upper common part is used to determine whether the transmitted cell is valid or invalid. The middle bit is used as the memory address of the route reference together with the user information, and is routed to the area specified by the address. Assign information.

【0011】すなわち、ユーザ情報毎に送信宛情報を一
致部分と不一致部分とに分け、一致部分は登録された送
信宛情報との照合に用い、不一致部分は経路情報参照部
分としてメモリのアドレスに用いて一発で検索する。
That is, the transmission destination information is divided into a coincident part and a non-coincidence part for each user information, and the coincidence part is used for comparison with the registered transmission destination information, and the non-coincidence part is used as a path information reference part in the address of the memory. Search in one shot.

【0012】このように、テーブルを調べる際には、プ
ロセッサによる処理ではなく、上述の処理を行う専用ハ
ードウエアを作り、これを組み込んでテーブルに記憶さ
れたルート情報を調べる。そして、テーブル(メモリ)
アクセスが1度で済むように、送り元のユーザ情報と送
信宛情報の一部を、対応するルート情報の直接メモリの
アドレスをとする演算処理を行い、当該アドレスに基づ
いてアクセスする。
As described above, when examining the table, instead of processing by the processor, dedicated hardware for performing the above-described processing is created, and this is incorporated to check the route information stored in the table. And the table (memory)
In order to perform the access only once, a part of the source user information and the transmission destination information is subjected to arithmetic processing using the address of the corresponding route information in the direct memory, and access is performed based on the address.

【0013】これにより、従来、ルート情報を得るため
にプロセッサによる処理で何度もメモリをアクセスして
比較し、この結果から一致検索行っていたものが、1度
のメモリアクセスによって実行でき、全体の処理時間を
大幅に短縮することが可能となる。
[0013] In this way, conventionally, the memory is accessed and compared a number of times by the processing of the processor to obtain the route information, and a match search is performed from the result. Can be greatly reduced.

【0014】以下、更に具体的な本発明の実施の形態に
ついて説明する。図1は本発明の一実施形態によるルー
ト情報検索回路を経時的な機能によって表したもので、
経路参照部分及び有効送信情報判定部分の両方を含む通
信装置における実施の形態を示している。
Hereinafter, more specific embodiments of the present invention will be described. FIG. 1 shows a route information search circuit according to an embodiment of the present invention by a function over time.
The embodiment in the communication device including both the route reference portion and the valid transmission information determination portion is shown.

【0015】本発明の一実施形態によるルート情報検索
回路においては、まず、スタート101から2つのこと
が同時に行われる。1つは、送信情報に含まれるIPア
ドレスの抽出102であり、もう一つは、VPIの抽出
103である。
In the route information search circuit according to the embodiment of the present invention, first, two things are simultaneously performed from the start 101. One is extraction 102 of the IP address included in the transmission information, and the other is extraction 103 of the VPI.

【0016】抽出されたVPI値は、rビット情報、a
ビット情報及びIPvビット列が記憶された第1のメモ
リのアドレスとなり、抽出されたVPI値に応じたr、
aの各ビット情報とIPvのビット列とがデータとして
読み出される(図中104のMemory VPI T
able アクセス)。
The extracted VPI value is r-bit information, a
The address of the first memory in which the bit information and the IPv bit string are stored, and r,
a of each bit information and a bit string of IPv4 are read out as data (Memory VPI T 104 in FIG.
able access).

【0017】ここで、rビット情報は、「IPアドレス
の抽出102」で抽出されたIPアドレスから、後述す
る経路情報参照部(IPrビット列)を分離する処理
(105)を行うために用いるビット情報である。例え
ば、あるVPI値において登録されたIPアドレス(3
2ビット)が、
Here, the r-bit information is bit information used for performing a process (105) of separating a path information reference unit (IPr bit string), which will be described later, from the IP address extracted in “IP address extraction 102”. It is. For example, an IP address (3
2 bits)

【0018】 [0018]

【0019】であった場合、rビット情報は、 ***.*.***.*:01011101.00000011.11101111.00000000 … r となる。すなわち、rビット情報とは、登録された全I
Pアドレスの各ビット毎に”1”または”0”に値が一
致している所を”0”とし、あるIPアドレスのビット
の値が”1”で別のIPアドレスは”0”となってい
る、つまりビットの値が異なっている所を”1”とした
ものである。従って、経路参照情報に必要なビットは、
rビット情報中の値で”1”となっている部分である。
In this case, the r-bit information becomes ***. *. ***. *: 01011101.00000011.11101111.00000000... R. That is, r-bit information refers to all registered I
A point where the value of each bit of the P address matches “1” or “0” is “0”, the value of a bit of a certain IP address is “1”, and another IP address is “0”. That is, the place where the bit value is different is set to "1". Therefore, the bits required for the route reference information are
This is the portion of the value in the r bit information that is "1".

【0020】一方、aビット情報は、同じく「IPアド
レスの抽出102」で抽出されたIPアドレスから、後
述する一致部分(IPaビット列)を分離する処理(1
06)を行うために用いるビット情報である。例えば、
rビット情報が上記例において示した ***.*.***.*:01011101.00000011.11101111.00000000 … r であった場合、aビット情報は、 ***.*.***.*:10100010.11111100.00010000.00000000 … a となる。すなわち、aビット情報は、最大のサブネット
マスク長の下位数ビット(ここでは仮に8ビットとして
ある)を除いて、rビット情報と各ビット位置でちょう
ど”1”と”0”とが逆の関係にある。
On the other hand, the a-bit information is used to separate a matching portion (IPa bit string), which will be described later, from the IP address extracted in the “IP address extraction 102” (1).
06). For example,
If the r-bit information is ***. *. ***. *: 01011101.00000011.11101111.00000000... r, the a-bit information is ***. *. ***. *: 10100010.11111100. 00010000.00000000 ... a That is, the a-bit information has the inverse relationship between the r-bit information and exactly "1" and "0" at each bit position, except for the lower few bits of the maximum subnet mask length (here, tentatively 8 bits). It is in.

【0021】又、IPvビット列は、登録された全ての
IPアドレスとaビット情報との各ビット位置でのAN
Dをとった値を示しており、後述の処理にて照合用IP
アドレスとして用いられる。例えば、上記例でのIPv
ビット列は、 192.1.4.0:11000000.00000001.00000100.00000000 ***.*.***.*:10100010.11111100.00010000.00000000 …a ***.*.***.*:1*0***0*.000000**.***0****.******** …IPv 157.2.101.0:10011101.00000010.01100101.00000000 ***.*.***.*:10100010.11111100.00010000.00000000 …a ***.*.***.*:1*0***0*.000000**.***0****.******** …IPv となる。尚、以下の説明においては、適宜、上記rビッ
ト情報、aビット情報及びIPvビット列を用いること
にする。
The IPv bit string is an AN at each bit position of all registered IP addresses and a-bit information.
D indicates the value obtained by comparing the IP for verification in the process described later.
Used as an address. For example, IPv4 in the above example
The bit string is 192.1.4.0:11000000.00000001.00000100.00000000 ***. *. ***. *: 10100010.11111100.00010000.00000000… a ***. *. ***. *: 1 * 0 *** 0 * .000000 * *. *** 0 ****. ********… IPv157.2.101.0: 10011101.00000010.01100101.00000000 ***. *. ***. *: 10100010.11111100.00010000.00000000… a ***. * . ***. *: 1 * 0 *** 0 * .000000 **. *** 0 ****. ******** ... IPv In the following description, the r-bit information, a-bit information, and IPv bit string will be used as appropriate.

【0022】次に、経路情報参照部でIPrビット列
を、一致部分でIPaビット列を出力する処理(10
5、106)が行われる。今、これらの処理を説明する
ために、仮に「IPアドレス抽出の102」で得られた
IPアドレスの値が次の様であったとしよう。 157.2.1.3:10011101.00000010.00000001.00000011 … IP
Next, a process of outputting the IPr bit string in the route information reference section and outputting the IPa bit string in the matching part (10)
5, 106) are performed. Now, to explain these processes, suppose that the value of the IP address obtained in “IP address extraction 102” is as follows. 157.2.1.3:10011101.00000010.00000001.00000011… IP

【0023】このとき、「経路情報参照部分の切り出し
105」では、このIPアドレスの値からrビット情報
の”1”となっているビット位置のみを切り出し、これ
をIPrビット列とする。従って 157.2.1.3:10011101.00000010.00000001.00000011 … IP ***.*.***.*:01011101.00000011.11101111.00000000 … r ***.*.***.*:*0*11101.******10.000*0001.******** … IPr となる。
At this time, in the “extraction of path information reference portion 105”, only the bit position of “1” of the r bit information is extracted from the value of the IP address, and this is used as an IPr bit string. Therefore 157.2.1.3:10011101.00000010.00000001.00000011 ... IP ***. *. ***. *: 01011101.00000011.11101111.00000000 ... r ***. *. ***. *: * 0 * 11101. ****** 10.000 * 0001. ******** ... It becomes IPr.

【0024】一方、「一致部分の切り出し106」で
は、上記IPアドレスの値からaビット情報の”1”と
なっているビット位置のみを切り出し、これをIPaビ
ット列とする。従って、 157.2.1.3:10011101.00000010.00000001.00000011 … IP ***.*.***.*:10100010.11111100.00010000.00000000 … a ***.*.***.*:1*0***0*.000000**.***0****.******** … IPa となる。
On the other hand, in "matching portion extraction 106", only the bit position of "1" of the a-bit information is extracted from the value of the IP address, and this is set as an IPa bit sequence. Therefore, 157.2.1.3:10011101.00000010.00000001.00000011… IP ***. *. ***. *: 10100010.11111100.00010000.00000000… a ***. *. ***. *: 1 * 0 *** 0 * .000000 **. *** 0 ****. ******** ... It becomes IPa.

【0025】続いて、ルート情報テーブルをアクセス
し、出力ポートなどの情報を読み出す(図中107のM
emory Routing Table アクセス)
と共に、照合演算部でIPvビット列とIPaビット列
とを用いて照合演算を行う(108の照合演算)。
Subsequently, the route information table is accessed, and information such as the output port is read (M in FIG. 10).
emory Routing Table Access)
At the same time, a collation operation is performed by the collation operation unit using the IPv bit string and the IPa bit string (collation operation of 108).

【0026】ここで、「Memory Routing
Table アクセス107」でのメモリアクセスに
おいては、経路情報の参照に不要なビット部分を除いて
圧縮したIPrビット列と、VPIとを合わせたアドレ
スを用いる。例えば、VPIが00001001ならば、アクセ
スアドレスは次のようになる。 VPI:00001001 ***.*.***.*:*0*11101.******10.000*0001.******** … IPr 00001001.011101.10.0000001 … アドレス
Here, "Memory Routing"
In the memory access in the “table access 107”, an address obtained by combining the IPr bit string excluding a bit portion unnecessary for referring to the path information with the VPI and the VPI is used. For example, if the VPI is 00001001, the access address is as follows. VPI: 00001001 ***. *. ***. *: * 0 * 11101. ****** 10.000 * 0001. ********… IPr 00001001.011101.10.0000001… Address

【0027】このため、ルート情報テーブルにおいて
は、登録IPアドレスから上述した演算処理によって与
えられるアドレスに出力ポートなどの情報が事前に書き
込まれている。以下にかかるルート情報テーブルの構成
の一例を示す。尚、下記の例においては、入力の時のV
PIを00001001としており、各行が”IPアドレス:ル
ート情報テーブルのアドレス → ルート情報テーブル
内のデータ(出力VPI)”を表している。
For this reason, in the route information table, information such as an output port is written in advance from a registered IP address to an address given by the above-described arithmetic processing. An example of the configuration of the route information table will be described below. In the following example, V at the time of input is
The PI is set to 00001001, and each row represents “IP address: address of route information table → data in route information table (output VPI)”.

【0028】 157.1.1.0:00001001.011101.01.0000001 → 00000001 (VPI No.1) 157.1.2.0:00001001.011101.01.0000010 → 00000001 (VPI No.1) 157.1.3.0:00001001.011101.01.0000011 → 00000001 (VPI No.1) 157.2.0.0:00001001.011101.10.0000000 → 00000000 (VPI No.0) 157.2.1.0:00001001.011101.10.0000001 → 00000000 (VPI No.0) 157.2.2.0:00001001.011101.10.0000010 → 00000000 (VPI No.0) 157.2.100.0:00001001.011101.10.0110100 → 00000100 (VPI No.4) 157.2.101.0:00001001.011101.10.0110101 → 00000100 (VPI No.4) 157.2.200.0:00001001.011101.10.1101000 → 00000101 (VPI No.5) 157.3.0.0:00001001.011101.11.0000000 → 00010010 (VPI No.18) 192.1.1.0:00001001.100000.01.0000001 → 00000010 (VPI No.2) 192.1.2.0:00001001.100000.01.0000010 → 00000010 (VPI No.2) 192.1.3.0:00001001.100000.01.0000011 → 00000010 (VPI No.2) 192.1.4.0:00001001.100000.01.0000100 → 00001000 (VPI No.8) ・ ・ ・ ・ ・ ・ ・ ・ ・157.1.1.0:00001001.011101.01.0000001 → 00000001 (VPI No.1) 157.1.2.0:00001001.011101.01.0000010 → 00000001 (VPI No.1) 157.1.3.0:00001001.011101.01.0000011 → 00000001 (VPI No.1) 157.2. 0.0: 00001001.011101.10.0000000 → 00000000 (VPI No.0) 157.2.1.0:00001001.011101.10.0000001 → 00000000 (VPI No.0) 157.2.2.0:00001001.011101.10.0000010 → 00000000 (VPI No.0) 157.2.100.0:00001001.011101.10.0110100 → 00000100 (VPI No.4) 157.2.101.0:00001001.011101.10.0110101 → 00000100 (VPI No.4) 157.2.200.0:00001001.011101.10.1101000 → 00000101 (VPI No.5) 157.3.0.0:00001001.011101.11.0000000 → 00010010 (VPI No. .18) 192.1.1.0:00001001.100000.01.0000001 → 00000010 (VPI No.2) 192.1.2.0:00001001.100000.01.0000010 → 00000010 (VPI No.2) 192.1.3.0:00001001.100000.01.0000011 → 00000010 (VPI No.2) 192.1. 4.0: 00001001.100000.01.0000100 → 00001000 (VPI No.8) ・ ・ ・ ・ ・ ・ ・ ・ ・ ・

【0029】そして、上記「Memory Routi
ng Table アクセス107」において、上記メ
モリに登録されているIPアドレスであった場合には、
当該IPアドレスに対応したルート情報テーブルのアド
レスにアクセスし、登録されていないIPアドレスであ
った場合には、無効なIPアドレスであるとのデータが
読み出される。
The above "Memory Routi"
ng Table access 107 ", if the IP address is registered in the memory,
The address of the route information table corresponding to the IP address is accessed, and if the IP address is not registered, data indicating that the IP address is invalid is read.

【0030】一方、「照合演算108」では、IPvビ
ット列とIPaビット列との各ビット位置の値同士でE
xclusive OR(@で表す)の値をとり、この
値の全ビットのORの値を出力する。従って、今回扱っ
ている例では、 ***.*.***.*:1*0***0*.000000**.***0****.******** …IPv ***.*.***.*:1*0***0*.000000**.***0****.******** …IPa ***.*.***.*:0*0***0*.000000**.***0****.******** …IPv@IPa となり、全ビットのORの値は”0”である。
On the other hand, in the "collation operation 108", the value of each bit position of the IPv bit sequence and the IPa bit sequence is E
Take the value of xplus OR (represented by $) and output the OR value of all bits of this value. Therefore, in this example, ***. *. ***. *: 1 * 0 *** 0 * .000000 **. *** 0 ****. ******* *… IPv ***. *. ***. *: 1 * 0 *** 0 * .000000 **. *** 0 ****. ********… IPa *** . *. ***. *: 0 * 0 *** 0 * .000000 **. *** 0 ****. ******** ... IPvIPIPa and OR of all bits The value is "0".

【0031】次いで、「ルート情報決定109」におい
て、ルート情報テーブルから得られたルート情報によ
り、ルート情報が決定される。但し、この決定されたル
ート情報は、「有効IPアドレス判定110」において
所定の条件が満たされていると判定された場合にのみ有
効とされる。ここに、「有効アドレス判定110」で
は、上記「Memory Routing Table
アクセス107」で無効なIPアドレスであるとのデ
ータが読み出されていないか、ということと、上記「照
合演算108」でIPaビット列とIPvビット列との
一致が確認されたか、ということについての判定がなさ
れる。すなわち、ルート情報が有効となるのは、「Me
mory Routing Table アクセス10
7」において所望のルート情報が読み出され、かつ、
「照合演算108」における照合演算部の出力値、つま
り、全ビットのORの値が”0”であった場合のみであ
る。
Next, in "route information determination 109", route information is determined based on the route information obtained from the route information table. However, the determined route information is valid only when it is determined that the predetermined condition is satisfied in “valid IP address determination 110”. Here, in the “valid address determination 110”, the “Memory Routing Table” is used.
A determination is made as to whether data indicating an invalid IP address has not been read out in “Access 107” and whether a match between the IPa bit string and the IPv bit string has been confirmed in “Collation operation 108”. Is made. In other words, the route information is valid only for "Me
more Routing Table Access 10
7), the desired route information is read out, and
This is only when the output value of the collation operation unit in the “collation operation 108”, that is, when the OR value of all bits is “0”.

【0032】次に、上記図1に示したそれぞれの処理を
経時的な段階に分け、順次受信されるパケットについ
て、順次シフトした段階の処理を行うことによってルー
ト情報を決定する実施形態について説明する。
Next, a description will be given of an embodiment in which the respective processes shown in FIG. 1 are divided into time-dependent stages, and the route information is determined by performing the processes of the sequentially received packets in the sequentially shifted stage. .

【0033】図2は、図1に示された処理を5段階に分
けて扱い、パイプライン的に実行する場合の例を示す図
である。この図における各段階においては、以下の処理
が行われる。 ・第1段階:送信情報(IPアドレス,VPI)の抽
出。これは、上記「IPアドレスの抽出102」及び
「VPIの抽出103」に相当する。 ・第2段階:r,aビット情報,IPvビット列の取
得。これは、上記「Memory VPI Table
アクセス104」に相当する。 ・第3段階:IPr,IPaビット列の切り出し。これ
は、上記「経路情報参照部分の切り出し105」及び
「一致部分の切り出し106」に相当する。 ・第4段階:ルート管理テーブル・アクセスとIPアド
レス照合。これは、上記「Memory Routin
g Table アクセス107」及び「照合演算10
8」に相当する。 ・第5段階:送信情報の有効・無効の判定とルート情報
の決定。これは、上記「ルート情報決定109」及び
「有効IPアドレス判定」に相当する。
FIG. 2 is a diagram showing an example in which the processing shown in FIG. 1 is handled in five stages and executed in a pipeline. At each stage in this figure, the following processing is performed. First stage: extraction of transmission information (IP address, VPI) This corresponds to the “extraction of IP address 102” and the “extraction of VPI 103”. 2nd stage: Acquisition of r and a bit information and IPv bit string. This is the same as the "Memory VPI Table"
Access 104 ". Third stage: IPr, IPa bit string extraction. This corresponds to the above-described “cutout 105 of route information reference portion” and “cutout 106 of matching portion”. Fourth stage: Route management table access and IP address verification. This is described in the above "Memory Routin
g Table access 107 "and" collation operation 10 "
8 ". -Fifth stage: determination of validity / invalidity of transmission information and determination of route information. This corresponds to the “route information determination 109” and the “valid IP address determination”.

【0034】これら5段階の処理を、図2に示すよう
に、ある時に受信したM番目のパケットについては次の
ようにして行う。まず、N stepで第1段階の「送
信情報(IPアドレス,VPI)の抽出」を行い(21
1)、N+1 stepで第2段階の「r,aビット情
報,IPvビット列の取得」を行う(212)。次い
で、N+2 stepで第3段階の「IPr,IPaビ
ット列の切り出し」を行い(213)、N+3 ste
pで第4段階の「ルート管理テーブル・アクセスとIP
アドレス照合」を行う(214)。そして、N+4 s
tepで第5段階の「送信情報の有効・無効の判定とル
ート情報の決定」を行い(215)、これにより、M番
目に受信したパケットについての処理を終える。
As shown in FIG. 2, these five steps are performed on the M-th packet received at a certain time as follows. First, the first step "extraction of transmission information (IP address, VPI)" is performed in N step (21
1) In the N + 1 step, the second stage "acquisition of r, a bit information, IPv bit string" is performed (212). Next, in the N + 2 step, the third stage “cutout of the IPr and IPa bit strings” is performed (213), and the N + 3 step is performed.
p, the fourth stage "route management table access and IP
Address collation "is performed (214). And N + 4 s
In the step, the fifth step “determination of validity / invalidity of transmission information and determination of route information” is performed (215), and the processing for the Mth received packet is completed.

【0035】一方、次のM+1番目に受信したパケット
については、第1〜第5それぞれの処理(221〜22
5)を、上記M番目のパケットより1stepつづつ後
のstep(N+1 step 〜 N+5 step)で
実行する。つまり、N stepで実行されるM番目に
受信したパケットについての「送信情報(IPアドレ
ス,VPI)の抽出211」から、1stepシフトし
たN+1 stepにおいて、M+1番目に受信したパ
ケットについての「送信情報(IPアドレス,VPI)
の抽出221」を行う。このとき、回路内の送信情報抽
出部においては、M番目のパケットについての第1段階
処理が終了しているので、M+1番目のパケットについ
ての第1段階処理を行うことが可能となるのである。
On the other hand, for the next (M + 1) th received packet, the first to fifth processings (221 to 22) are performed.
5) is executed in steps (N + 1 step to N + 5 step) one step after the M-th packet. In other words, from the “transmission information (IP address, VPI) extraction 211” for the Mth received packet executed in N steps, the “transmission information (M + 1) received packet for the (M + 1) th received packet in N + 1 steps shifted by 1 step” IP address, VPI)
Extraction 221 ". At this time, the transmission information extraction unit in the circuit has completed the first-stage processing for the M-th packet, and thus can perform the first-stage processing for the (M + 1) -th packet.

【0036】次いで、N+1 stepにおけるM番目
に受信したパケットについての「r,aビット情報,I
Pvビット列の取得212」から、1stepシフトし
たN+2 stepでM+1番目に受信したパケットに
ついての「r,aビット情報,IPvビット列の取得2
22」を行う。このときも、回路内の第1のメモリ等に
おいては、M番目のパケットについての第2段階処理が
終了しているので、M+1番目のパケットについての第
2段階処理を行うことが可能となるのである。
Next, “r, a bit information, I” for the Mth received packet in the N + 1 step
From “Pv bit string acquisition 212”, “r, a bit information, IPv bit string acquisition 2” for the (M + 1) th received packet in N + 2 step shifted by 1 step
22 ". Also at this time, in the first memory or the like in the circuit, the second-stage processing for the (M + 1) -th packet can be performed because the second-stage processing for the M-th packet has been completed. is there.

【0037】以下同様に、「IPr,IPaビット列の
切り出し223」はN+3 step、「ルート管理テ
ーブル・アクセスとIPアドレス照合224」はN+4
step、「送信情報の有効・無効の判定とルート情
報の決定225」はN+5stepにおいてそれぞれ実
行する。このように、M+1番目のパケットについて
は、各段階の処理を、M番目のパケットについての各段
階の処理が終了した後を追うようにして実行する。
Similarly, "extraction of bit sequence 223 of IPr and IPa" is N + 3 steps, and "route management table access and IP address collation 224" is N + 4.
Step and "determination of validity / invalidity of transmission information and determination of route information 225" are executed in N + 5 steps. As described above, the processing of each stage is executed for the (M + 1) th packet so as to follow the completion of the processing of each stage for the Mth packet.

【0038】さらに、その次(M+2番目)に受信した
パケットについては、第1〜第5それぞれの処理(23
1〜235)を、上記M+1番目のパケットよりさらに
1stepつづつ後のstep(N+2 step 〜
N+6 step)で実行する。すなわち、このM+2
番目のパケットについての各段階の処理は、M+1番目
のパケットについての各段階の処理が終了した後を追う
ようにして実行する。
Further, for the next (M + 2) received packet, the first to fifth processing (23
1 to 235), the next step (N + 2 step to 1 step) after the (M + 1) th packet for each step.
N + 6 step). That is, this M + 2
The processing of each stage for the Nth packet is executed after the completion of the processing of each stage for the (M + 1) th packet.

【0039】以上説明したように、このルート検索およ
び送信情報の有効・無効判断の内部処理は、パイプライ
ン的に実行可能である。また個々の内部処理も決してル
ープバックするような処理内容を持っておらず、パイプ
ラインの処理がどこかの段階で滞ることは考えにくい。
As described above, the internal processing of the route search and the determination of the validity / invalidity of the transmission information can be executed in a pipeline manner. Also, each internal process does not have the content of a process that loops back, and it is unlikely that the pipeline process will be stuck at some stage.

【0040】[0040]

【発明の効果】以上説明したように本発明によるルート
情報検索回路の処理経過は、送信情報毎に特に同一メモ
リを何度もアクセスしたり、アクセスにより得られた情
報を使い、再び先にした処理へ戻る必要もない。これに
より、ルーティング・テーブルを記憶したメモリへのア
クセスを1度で済ますことができ、ルート情報検索の高
速化を図ることができるという効果が得られる。
As described above, the processing progress of the route information search circuit according to the present invention is performed again, especially by accessing the same memory many times for each transmission information or using the information obtained by the access. There is no need to return to processing. As a result, access to the memory storing the routing table can be performed only once, and the effect of increasing the speed of route information retrieval can be obtained.

【0041】更に、かかる一方的な処理は、本発明によ
るルート情報検索回路においてパイプライン的に実行し
うる。従って、仮に送信宛情報が集中・連続的に送られ
てきたとしても送信情報を蓄積せずに処理することがで
きる。
Further, such one-sided processing can be executed in a pipeline manner in the route information search circuit according to the present invention. Therefore, even if the transmission destination information is sent in a concentrated and continuous manner, the processing can be performed without storing the transmission information.

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

【図1】 本発明の一実施形態によるルート情報検索回
路を経時的な機能によって表した図である。
FIG. 1 is a diagram showing a route information search circuit according to an embodiment of the present invention by a function over time.

【図2】 図1に示された処理を5段階に分けて扱う場
合の例を示す図である。
FIG. 2 is a diagram illustrating an example of a case where the processing illustrated in FIG. 1 is handled in five stages.

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

101 START 102 VPIの抽出,IPアドレスの抽出 104 Memory VPI Tableアクセス 105 経路情報参照部分(IPrビット列)の切り出
し 106 一致部分(IPaビット列)の切り出し 107 Memory Routing Table ア
クセス 108 照合演算(IPaビット列とIPrビット列) 109 ルート情報決定 110 有効IPアドレス判定 111、112 END 211 M番目に受信したパケットについての送信情報
(IPアドレス,VPI)の抽出 212 M番目に受信したパケットについてのr,aビ
ット情報,IPvビット列の取得 213 M番目に受信したパケットについてのIPr,
IPaビット列の切り出し 214 M番目に受信したパケットについてのルート管
理テーブル・アクセスとIPアドレス照合演算 215 M番目に受信したパケットについての送信情報
の有効・無効の判定とルート情報の決定 221 M+1番目に受信したパケットについての送信
情報(IPアドレス,VPI)の抽出 222 M+1番目に受信したパケットについてのr,
aビット情報,IPvビット列の取得 223 M+1番目に受信したパケットについてのIP
r,IPaビット列の切り出し 224 M+1番目に受信したパケットについてのルー
ト管理テーブル・アクセスとIPアドレス照合演算 225 M+1番目に受信したパケットについての送信
情報の有効・無効の判定とルート情報の決定 231 M+2番目に受信したパケットについての送信
情報(IPアドレス,VPI)の抽出 232 M+2番目に受信したパケットについてのr,
aビット情報,IPvビット列の取得 233 M+2番目に受信したパケットについてのIP
r,IPaビット列の切り出し 234 M+2番目に受信したパケットについてのルー
ト管理テーブル・アクセスとIPアドレス照合演算 235 M+2番目に受信したパケットについての送信
情報の有効・無効の判定とルート情報の決定
101 START 102 Extraction of VPI, extraction of IP address 104 Memory VPI Table access 105 Extraction of path information reference part (IPr bit string) 106 Extraction of matching part (IPa bit string) 107 Memory Routing Table access 108 Matching operation (IPa bit string and IPr bit string) 109 Route information determination 110 Valid IP address determination 111, 112 END 211 Extraction of transmission information (IP address, VPI) for Mth received packet 212 r, a bit information, IPv bit string for Mth received packet 213 IPr for the Mth received packet,
Extraction of IPa bit string 214 Route management table access and IP address collation operation for Mth received packet 215 Validity / invalidity determination of transmission information and determination of route information for Mth received packet 221 M + 1st reception Extraction of transmission information (IP address, VPI) for the received packet 222 r, r for the (M + 1) th received packet
Acquisition of a-bit information and IPv bit sequence 223 M + 1
Extraction of r, IPa bit string 224 Access to route management table and IP address collation operation for M + M first received packet 225 Determination of valid / invalid transmission information and determination of route information for M + M received first packet 231 M + 2 Extraction of transmission information (IP address, VPI) for the received packet 232 M + r, r, for the second received packet
Acquisition of a-bit information and IPv bit string 233 M + IP of second received packet
Extraction of r, IPa bit string 234 Access to route management table and IP address collation for M + 2nd received packet 235 Determination of validity / invalidity of transmission information and determination of route information for M + 2nd received packet

───────────────────────────────────────────────────── フロントページの続き (72)発明者 渡邉 裕 東京都新宿区西新宿三丁目19番2号 日本 電信電話株式会社内 (72)発明者 藤原 弘之 東京都新宿区西新宿三丁目19番2号 日本 電信電話株式会社内 ──────────────────────────────────────────────────続 き Continuing on the front page (72) Inventor Hiroshi Watanabe 3-19-2 Nishi-Shinjuku, Shinjuku-ku, Tokyo Inside Nippon Telegraph and Telephone Corporation (72) Inventor Hiroyuki Fujiwara 3- 192-1 Nishishinjuku, Shinjuku-ku, Tokyo No. Japan Telegraph and Telephone Corporation

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 送られてきた送信宛情報と、ルート情報
を管理するテーブルとを照合し、ルート情報を検索して
決定する通信装置におけるルート情報検索回路におい
て、 前記送られてきた送信宛情報から、前記テーブルを書き
込んだメモリにおける物理的なアドレスとなるビットを
切り出し、当該アドレスに基づいて前記メモリにアクセ
スすることを特徴とするルート情報検索回路。
1. A route information search circuit in a communication apparatus for comparing transmitted sent destination information with a table for managing route information and searching for and determining route information, comprising: And extracting a bit serving as a physical address in the memory in which the table is written, and accessing the memory based on the address.
【請求項2】 請求項1記載のルート情報検索回路にお
いて、 前記送られてきた送信宛情報から、登録されている送信
宛情報に共通な一致部分であって、照合に必要なビット
を切り出し、登録にあるものかどうかの照合判断をする
回路を具備したことを特徴とするルート情報検索回路。
2. The route information search circuit according to claim 1, wherein a bit which is a matching part common to registered transmission destination information and is necessary for collation is cut out from the transmitted transmission destination information. A route information search circuit, comprising: a circuit for determining whether or not the information is registered.
【請求項3】 請求項1又は2記載のルート情報検索回
路における内部処理を、順次パイプライン的に行うこと
を特徴とするルート情報検索回路。
3. A route information search circuit according to claim 1, wherein internal processes in the route information search circuit according to claim 1 or 2 are sequentially performed in a pipeline manner.
JP22573096A 1996-08-27 1996-08-27 Route information retrieving circuit Pending JPH1070573A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22573096A JPH1070573A (en) 1996-08-27 1996-08-27 Route information retrieving circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22573096A JPH1070573A (en) 1996-08-27 1996-08-27 Route information retrieving circuit

Publications (1)

Publication Number Publication Date
JPH1070573A true JPH1070573A (en) 1998-03-10

Family

ID=16833933

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22573096A Pending JPH1070573A (en) 1996-08-27 1996-08-27 Route information retrieving circuit

Country Status (1)

Country Link
JP (1) JPH1070573A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6134135A (en) * 2000-01-10 2000-10-17 Switchcore, A.B. Mask arrangement for scalable CAM/RAM structures

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6134135A (en) * 2000-01-10 2000-10-17 Switchcore, A.B. Mask arrangement for scalable CAM/RAM structures

Similar Documents

Publication Publication Date Title
US6526444B1 (en) Using an authentication server to obtain dial-out information on a network
US7349382B2 (en) Reverse path forwarding protection of packets using automated population of access control lists based on a forwarding information base
US10389633B2 (en) Hash-based address matching
US6430190B1 (en) Method and apparatus for message routing, including a content addressable memory
US7069268B1 (en) System and method for identifying data using parallel hashing
US7924833B2 (en) Packet transfer unit
EP1649389B1 (en) Internet protocol security matching values in an associative memory
CA2311078A1 (en) Multithreaded address resolution system
JP2001509978A (en) Fast Variable Length Best Match Lookup in Switching Devices
JP2006180162A (en) Device and method for switching packet
US20080133494A1 (en) Method and apparatus for searching forwarding table
US7403526B1 (en) Partitioning and filtering a search space of particular use for determining a longest prefix match thereon
JPH06261078A (en) Table retrieval method and router
US20040184455A1 (en) System and method used by a gateway for processing fragmented IP packets from a private network
US20050248970A1 (en) Distributed content addressable memory
US6687715B2 (en) Parallel lookups that keep order
US7599364B2 (en) Configurable network connection address forming hardware
CN113343034A (en) IP searching method, system and storage medium
JP3837670B2 (en) Data relay apparatus, associative memory device, and associative memory device utilization information retrieval method
JPH1070573A (en) Route information retrieving circuit
US7249216B2 (en) Data relay apparatus, content addressable/associative memory device, and content addressable/associative memory device use information search method
JP3660311B2 (en) Table search apparatus and method, program, and recording medium
JP3558151B2 (en) Data search circuit
KR100378599B1 (en) Routing Table Lookup Using Indirected RAM Indexing
JPH11284658A (en) Longest coincident retrieval device