JP2003198598A - Address table management method and address table management device - Google Patents

Address table management method and address table management device

Info

Publication number
JP2003198598A
JP2003198598A JP2001398153A JP2001398153A JP2003198598A JP 2003198598 A JP2003198598 A JP 2003198598A JP 2001398153 A JP2001398153 A JP 2001398153A JP 2001398153 A JP2001398153 A JP 2001398153A JP 2003198598 A JP2003198598 A JP 2003198598A
Authority
JP
Japan
Prior art keywords
address
entry
unused
registered
upper layer
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
JP2001398153A
Other languages
Japanese (ja)
Inventor
Takahiro Hara
孝宏 原
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.)
Furukawa Electric Co Ltd
Original Assignee
Furukawa Electric Co 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 Furukawa Electric Co Ltd filed Critical Furukawa Electric Co Ltd
Priority to JP2001398153A priority Critical patent/JP2003198598A/en
Publication of JP2003198598A publication Critical patent/JP2003198598A/en
Pending legal-status Critical Current

Links

Abstract

<P>PROBLEM TO BE SOLVED: To suppress to a minimum the movement of an entry associated with the entry registration and deletion of IP addresses. <P>SOLUTION: The head and tail of a storage area for each block in an address table 13a registered with IP addresses are pointed by a pointer and the address of a unused entry caused by the deletion of an entry is registered in a stack memory 11b. When registering an IP address in the address table 13a, a processor 12 for device management detects the unused entry from the stack memory 11b and a network processor 14 performs the entry registration of this IP address in the unused area of the address table 13a. <P>COPYRIGHT: (C)2003,JPO

Description

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

【0001】[0001]

【発明の属する技術分野】この発明は、アドレステーブ
ルへの上位層アドレスのエントリ登録およびアドレステ
ーブルからの上位層アドレスのエントリ削除を行うアド
レステーブル管理方法およびアドレステーブル管理装置
に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an address table management method and an address table management device for registering an entry of an upper layer address in an address table and deleting an entry of an upper layer address from the address table.

【0002】[0002]

【従来の技術】従来、インターネット上を流れるデータ
は、例えばパケットと呼ばれる一塊のデジタルデータを
単位として構成されている。ネットワーク間に設けられ
たルータなどのネットワーク中継装置では、中継処理用
のネットワークプロセッサが一方のネットワークから受
信したこのパケットを認識して、データの中継処理を行
った後に、他方のネットワークに転送している。このネ
ットワーク中継装置における中継処理に対しては、近年
のデータ通信量の大容量化に伴って非常に高速な処理の
要求が高まっており、その解決のための様々な手法が案
出されている。
2. Description of the Related Art Conventionally, data flowing on the Internet is composed of, for example, a unit of digital data called a packet. In a network relay device such as a router provided between networks, the network processor for relay processing recognizes this packet received from one network, relays the data, and then transfers it to the other network. There is. With regard to the relay processing in this network relay device, the demand for very high-speed processing has been increasing with the increase in the capacity of data communication in recent years, and various methods have been devised for solving the problem. .

【0003】この中継処理の主な動作は、パケットのヘ
ッダに格納された宛先アドレスや発信元アドレスから転
送先ポートを求めることであり、例えばこのアドレスを
検索キーとして転送先ポートを求める目的でアドレスを
記憶したアドレステーブルを用いていた。このアドレス
テーブルは、中継処理用のネットワークプロセッサに接
続されたメモリ内に構成されており、このアドレステー
ブルの高速なアドレス検索や効率の良いメモリ利用を可
能とするためには、このアドレステーブルの管理方法が
重要な課題であった。
The main operation of this relay process is to obtain the transfer destination port from the destination address or the source address stored in the header of the packet. For example, the address is used to obtain the transfer destination port using this address as a search key. Was used to store the address table. This address table is configured in the memory connected to the network processor for relay processing. To enable high-speed address search and efficient memory use of this address table, management of this address table is required. Method was an important issue.

【0004】このようなアドレステーブルを、例えば高
速検索が可能な特殊なメモリであるCAM(Conte
nt Addressable Memory)に設け
ることで、ネットワーク中継装置の性能を大きく向上さ
せることが可能となった。
Such an address table is used, for example, in a CAM (Content) which is a special memory capable of high speed retrieval.
nt Addressable Memory), it has become possible to greatly improve the performance of the network relay device.

【0005】このアドレステーブルでは、登録されるエ
ントリの検索を容易に行うために、予めメモリを異なる
プレフィクス長の数だけブロックに分割する。そしてC
AMとは別の汎用メモリを設け、この汎用メモリは、装
置管理用のプロセッサによって制御される図17に示す
ような管理テーブルを備え、ブロックの順序が変わらな
いようにエントリの登録や削除を行う。すなわち、各ブ
ロック0,1,2,…,n(nは任意の整数)にフロア
ポインタ(FloorPTR)、ネクストフリーポイン
タ(NextFreePTR)を一組ずつ用意する。こ
のフロアポインタは、該当するブロックにエントリされ
る先頭のアドレスを示し、ネクストフリーポインタは、
該当するブロックの未使用領域の先頭を示すものであ
る。
In this address table, in order to easily search the entry to be registered, the memory is divided into blocks in advance by the number of different prefix lengths. And C
A general-purpose memory different from the AM is provided, and this general-purpose memory has a management table as shown in FIG. 17, which is controlled by a processor for device management, and registers and deletes entries so that the order of blocks does not change. . That is, a pair of floor pointer (FloorPTR) and next free pointer (NextFreePTR) is prepared for each block 0, 1, 2, ..., N (n is an arbitrary integer). This floor pointer indicates the top address entered in the corresponding block, and the next free pointer is
It shows the beginning of the unused area of the corresponding block.

【0006】CIDR(Classless Inte
r Domain Routing)によるアドレス管
理方法を使用したアドレステーブルは、例えば3つのブ
ロック0,1,2に分割されており、それぞれのブロッ
クに登録されるエントリは、プレフィクスの長さが異な
っている。このエントリは、インデックス(Inde
x)番号の若い方に、プレフィクスの長いものがグルー
プ化されて配置されるようにソートされている。
CIDR (Classless Inte)
An address table using an address management method based on r Domain Routing) is divided into, for example, three blocks 0, 1, and the entries registered in each block have different prefix lengths. This entry is indexed (Inde
x) Sorts are arranged such that long prefixes are grouped and arranged to the smaller number.

【0007】ネットワークプロセッサは、このようなア
ドレステーブルにおいて、プレフィクスの長さの等しい
ブロックに対応するネクストフリーPTRが示すエント
リに、アドレス情報を登録する場合およびブロックを再
構成する場合を、図18のフローチャートと図19〜図
22のアドレステーブルのテーブル構成図に基づいて説
明する。例えば、エントリ“164.99.42.X”
(Xは、0から255の任意の十進数に一致)を図19
に示すアドレステーブルに登録する場合には、プレフィ
クスの長さが等しいブロック0(インデックス番号(テ
ーブルのアドレス)が“01000”〜“01FF
F”)へ登録しなければならない。すなわち、装置管理
用のプロセッサは、図18に示すように、管理テーブル
(図17参照)から該当するブロック0の未使用領域の
先頭を示すエントリ(ネクストフリーPTR(0))を
取得する(ステップ101)。そして、このブロック0
の未使用領域があるかどうか判断する(ステップ10
2)。
FIG. 18 shows a case where the network processor registers address information in the entry indicated by the next free PTR corresponding to a block having the same prefix length in such an address table and reconfigures the block. The flowchart will be described with reference to the flowchart of FIG. For example, the entry “164.99.42.X”
(X matches any decimal number from 0 to 255)
In the case of registering in the address table shown in, the block 0 having the same prefix length (index number (table address) "01000" to "01FF"
F "). That is, as shown in FIG. 18, the device management processor uses the management table (see FIG. 17) to enter an entry (next free) indicating the beginning of the unused area of the corresponding block 0. PTR (0)) is acquired (step 101), and this block 0 is acquired.
It is determined whether there is an unused area (step 10).
2).

【0008】ここで、この未使用領域がある場合には、
登録プログラムをネットワークプロセッサに転送する。
ネットワークプロセッサは、この登録プログラムに基づ
いて、ネクストフリーPTR(0)が示す位置に“16
4.99.42.X”をアドレステーブルに登録させる
(ステップ103)。また、装置管理用プロセッサは、
図20に示すように、ネクストフリーPTR(0)を+
1させてインデックス番号“01701”に対応させて
管理テーブルを更新する(ステップ104)。
If there is this unused area,
Transfer the registration program to the network processor.
Based on this registration program, the network processor sets "16" at the position indicated by the next free PTR (0).
4.99.42. X "is registered in the address table (step 103). Further, the device management processor
As shown in FIG. 20, the next free PTR (0) is +
The management table is updated in association with the index number "01701" (step 104).

【0009】しかし、ステップ102において、該当す
るブロックにエントリ登録のための未使用領域がない場
合には、ブロックの再構成の手順が必要となるので、ブ
ロック再構成のプログラムをネットワークプロセッサに
転送する(ステップ105)。ネットワークプロセッサ
は、このブロック再構成のプログラムに基づいて、例え
ばエントリ“134.68.X.X”を新規に登録する
場合には、ブロック1(インデックス番号が“0200
0”〜“02FFF”)に登録する必要がある。ところ
が、このブロックには、図19に示すように、すでにネ
クストフリーPTR(1)=フロアPTR(2)となっ
ており、新たなエントリが登録できない状態にある。
However, in step 102, if there is no unused area for entry registration in the corresponding block, a block reconfiguration procedure is required, so the block reconfiguration program is transferred to the network processor. (Step 105). When the network processor newly registers the entry “134.68.XX.X”, for example, based on this block reconfiguration program, the block 1 (index number “0200
0 ”to“ 02FFF ”). However, in this block, as shown in FIG. 19, the next free PTR (1) = floor PTR (2) is already set and a new entry is added. You cannot register.

【0010】この状態で、ブロック1に上記エントリを
登録するためには、このブロック再構成のプログラムに
基づいて、次のようなブロック拡張のための手順を行う
必要がある。まず、ネットワークプロセッサは、図21
に示すように、フロアPTR(2)が示すエントリ“1
92.X.X.X”を、ネクストフリーPTR(2)が
示す未使用領域に移動する。
In this state, in order to register the above-mentioned entry in the block 1, it is necessary to carry out the following procedure for expanding the block based on the program for reconstructing the block. First, the network processor is shown in FIG.
, The entry "1" indicated by the floor PTR (2)
92. X. X. X ″ is moved to an unused area indicated by the next free PTR (2).

【0011】この移動には、このエントリのインデック
ス番号“03000”からの読み出し、エントリの無効
(図21参照)、インデックス番号“03101”への
エントリの追加(図22参照)の手順が必要となってく
る。そして、フロアPTR(2)を+1に修正すると、
ネクストフリーPTR(1)が指し示すインデックス番
号“03000”の位置に未使用領域が現れる。
This movement requires a procedure of reading this entry from the index number "03000", invalidating the entry (see FIG. 21), and adding an entry to the index number "03101" (see FIG. 22). Come on. Then, if the floor PTR (2) is modified to +1,
An unused area appears at the position of the index number “03000” indicated by the next free PTR (1).

【0012】そして、ネットワークプロセッサは、この
未使用領域となったネクストフリーPTR(1)が示す
領域に、新規エントリ“134.68.X.X”を登録
して(ステップ103)、ネクストフリーPTR(1)
を+1に変更してアドレステーブルを更新し(ステップ
104)、ブロック1へのエントリ登録を完了してい
た。
Then, the network processor registers a new entry "134.68.XX.X" in the area indicated by the next free PTR (1) which has become the unused area (step 103), and the next free PTR. (1)
Was changed to +1 and the address table was updated (step 104), and entry registration in block 1 was completed.

【0013】次に、エントリの削除の場合について、図
23のフローチャートと図24、図25のアドレステー
ブルの構成図に基づいて説明する。このエントリの削除
は、該当エントリを無効にするだけでなく、そのエント
リを再使用できるように、ブロックの再構成を行う必要
がある。例えば図24に示すように、ブロック2の中央
付近に位置するインデックス番号“03050”のエン
トリ“186.X.X.X”を削除したい場合を考え
る。
Next, the case of deleting an entry will be described with reference to the flowchart of FIG. 23 and the address table configuration diagrams of FIGS. 24 and 25. Deleting this entry requires not only invalidating the entry, but also reconfiguring the block so that the entry can be reused. For example, as shown in FIG. 24, consider a case where it is desired to delete the entry "186.X.XX.X" of the index number "03050" located near the center of the block 2.

【0014】まず、ネットワークプロセッサは、装置管
理用プロセッサから転送された削除のプログラムに基づ
き、削除したいエントリ“186.X.X.X”を無効
にする(ステップ201)。次に、ネットワークプロセ
ッサは、ブロックの途中に空き領域を作らないようにす
るために、装置管理用のプロセッサから転送されるブロ
ック再構成のプログラムに基づいて、ブロック2の再構
成を行う(ステップ202)。このブロック2の再構成
では、ネクストフリーPTR(2)が示す直前のエント
リ“192.X.X.X”を、無効化したエントリ(イ
ンデックス番号“03050”)に書き込む。
First, the network processor invalidates the entry "186.XX.XX.X" to be deleted based on the deletion program transferred from the device management processor (step 201). Next, the network processor reconfigures the block 2 based on the block reconfiguration program transferred from the device management processor in order to prevent a free area from being created in the middle of the block (step 202). ). In the reconfiguration of the block 2, the previous entry "192.X.XX.X" indicated by the next free PTR (2) is written to the invalidated entry (index number "03050").

【0015】なお、この書き込み動作には、このエント
リのインデックス番号“03101”からの読み出し、
エントリの無効(図24参照)、インデックス番号“0
3050”へのエントリの書き込み(図25参照)の手
順が必要となる。
In this writing operation, reading from the index number "03101" of this entry,
Invalid entry (see Fig. 24), index number "0"
The procedure of writing an entry to the 3050 ″ (see FIG. 25) is required.

【0016】そして、装置管理用プロセッサは、ネクス
トフリーPTR(2)を−1に変更して管理テーブルを
更新し(ステップ203)、未使用領域を1つにまとめ
ることによって、ブロック2のエントリの削除が完了し
ていた。
Then, the device management processor updates the management table by changing the next free PTR (2) to -1 (step 203), and collects the unused areas into one, whereby the entry of the block 2 is deleted. The deletion was completed.

【0017】[0017]

【発明が解決しようとする課題】しかしながら、上記従
来例では、CAMへのエントリの追加や削除の動作に、
ブロックの再構成を頻繁に行う必要性が生じている。こ
の再構成に伴うCAMエントリの読み出しや書き込みの
動作は、検索に比べて非常に時間がかかりこの他の動作
に遅延をきたすこととなるので、装置全体の処理性能を
低下させるという問題点があった。
However, in the above conventional example, the operation of adding or deleting an entry to the CAM is
The need for frequent block restructuring has arisen. The read / write operation of the CAM entry accompanying this reconfiguration takes much longer than the search, and causes a delay in other operations. Therefore, there is a problem that the processing performance of the entire device is deteriorated. It was

【0018】この発明は、上記問題点に鑑みなされたも
ので、アドレスのエントリ登録および削除に伴うエント
リの移動を最小限に抑えることができるアドレステーブ
ル管理方法およびアドレステーブル管理装置を提供する
ことを目的とする。
The present invention has been made in view of the above problems, and it is an object of the present invention to provide an address table management method and an address table management apparatus capable of minimizing the movement of entries due to entry registration and deletion of addresses. To aim.

【0019】[0019]

【課題を解決するための手段】上記目的を達成するた
め、この発明では、複数の記憶領域に分割されたアドレ
ステーブルを有し、該アドレステーブルの管理を行うア
ドレステーブル管理方法において、入力する上位層アド
レスを前記アドレステーブルの記憶領域のうちの所定記
憶領域にエントリ登録または削除するエントリ工程と、
前記上位層アドレスが登録された記憶領域の先頭と後尾
とを指示する第1および第2の指示情報を前記各記憶領
域に設定する第1の設定工程と、前記エントリの削除に
よって生じた未使用エントリのアドレスを登録テーブル
に登録する登録工程と、前記エントリの削除によって生
じた未使用エントリのアドレスを指示する第3の指示情
報を前記登録テーブルに設定する第2の設定工程とを含
むことを特徴とするアドレステーブル管理方法が提供さ
れる。
In order to achieve the above object, according to the present invention, an address table management method is provided which has an address table divided into a plurality of storage areas and manages the address table. An entry step of registering or deleting a layer address in a predetermined storage area of the storage area of the address table;
A first setting step of setting first and second instruction information for instructing the beginning and the end of the storage area in which the upper layer address is registered in each of the storage areas, and an unused state caused by deleting the entry. A registration step of registering the address of the entry in the registration table; and a second setting step of setting in the registration table the third instruction information for instructing the address of the unused entry caused by the deletion of the entry. A featured address table management method is provided.

【0020】この発明によれば、前記上位層アドレスが
登録された記憶領域の先頭と後尾とを指示するととも
に、エントリの削除によって生じた未使用エントリのア
ドレスを登録テーブルに登録することで、次に上位層ア
ドレスを登録する際には、この記憶領域の未使用領域に
エントリすればよいので、アドレスのエントリ登録およ
び削除に伴うエントリの移動を最小限に抑える。
According to the present invention, by indicating the head and tail of the storage area in which the upper layer address is registered and registering the address of the unused entry generated by the deletion of the entry in the registration table, When registering an upper layer address in the storage area, it is sufficient to make an entry in an unused area of this storage area, so that the movement of the entry due to the entry registration and deletion of the address is minimized.

【0021】この発明の請求項2では、上記発明におい
て、前記エントリ工程では、前記上位層アドレスが入力
されると、前記所定記憶領域内の未使用エントリを検出
し、該上位層アドレスを該検出した未使用エントリに登
録するとともに、前記第1の設定工程によって前記上位
層アドレスが登録された記憶領域の先頭と後尾を前記第
1および第2の指示情報によって指示させ、前記登録工
程では、前記上位層アドレスが登録された未使用エント
リのアドレスを前記登録テーブルから削除し、前記第2
の設定工程では、前記登録テーブルに登録されている次
の未使用エントリのアドレスを前記第3の指示情報によ
って指示させることを特徴とする。
According to a second aspect of the present invention, in the above invention, when the upper layer address is input in the entry step, an unused entry in the predetermined storage area is detected, and the upper layer address is detected. The unused entry is registered, and the first and second instruction information are used to indicate the head and tail of the storage area in which the upper layer address is registered by the first setting step. The unused entry address in which the upper layer address is registered is deleted from the registration table, and the second
In the setting step, the address of the next unused entry registered in the registration table is instructed by the third instruction information.

【0022】この発明によれば、上位層アドレスが入力
されると、未使用エントリを検出してこの未使用エント
リに登録するとともに、登録テーブルからこの未使用エ
ントリのアドレスを削除してアドレスのエントリ登録お
よび削除を迅速に行う。
According to the present invention, when an upper layer address is input, an unused entry is detected and registered in this unused entry, and the address of this unused entry is deleted from the registration table to delete the address entry. Register and delete quickly.

【0023】この発明の請求項3では、上記発明におい
て、前記エントリの削除があると、エントリ工程では、
前記所定記憶領域に登録されている該当上位層アドレス
のエントリ削除を行い、前記登録工程では、前記削除に
よって生じた未使用エントリのアドレスを前記登録テー
ブルに登録させることを特徴とする。
According to claim 3 of the present invention, in the above invention, when the entry is deleted, in the entry step,
The entry of the corresponding upper layer address registered in the predetermined storage area is deleted, and in the registration step, the address of the unused entry generated by the deletion is registered in the registration table.

【0024】この発明によれば、エントリの削除がある
と、該当する記憶領域の上位層アドレスが登録されたエ
ントリを無効化するとともに、未使用エントリのアドレ
スを登録テーブルに登録することで、ステップ数を減ら
してアドレスのエントリ登録および削除に伴うエントリ
の移動を最小限に抑える。
According to the present invention, when an entry is deleted, the entry in which the upper layer address of the corresponding storage area is registered is invalidated, and the address of the unused entry is registered in the registration table. Reduce the number to minimize the movement of entries due to entry registration and deletion of addresses.

【0025】この発明の請求項4では、上記発明におい
て、前記上位層アドレスは、IPアドレスからなること
を特徴とする。
According to a fourth aspect of the present invention, in the above invention, the upper layer address is an IP address.

【0026】この発明によれば、上位層アドレスをレイ
ヤ3レベルのIP(Internet Protoco
l)アドレスとすることで、インターネットにも対応可
能とした。
According to the present invention, the upper layer address is an IP (Internet Protocol) at the layer 3 level.
l) By using an address, it can be used on the Internet.

【0027】この発明の請求項5では、複数の記憶領域
に分割され、入力する上位層アドレスを該記憶領域のう
ちの所定記憶領域に記憶させるアドレステーブルを管理
するアドレステーブル管理装置において、前記アドレス
テーブルへの前記上位層アドレスのエントリ登録および
エントリ削除を行うアドレステーブル制御手段と、前記
エントリの削除によって生じた未使用エントリのアドレ
スを登録する登録テーブルと、前記登録テーブルへの未
使用エントリのアドレス登録および削除を行う登録テー
ブル制御手段と、前記記憶領域の先頭と後尾とを指示す
る第1および第2の指示情報と、前記エントリの削除に
よって生じた未使用エントリのアドレスを指示する第3
の指示情報を記憶する管理テーブルと、前記記憶領域の
先頭と後尾を、前記第1および第2の指示情報によって
指示させる第1の指示手段と、前記登録テーブルに記憶
されて未使用エントリのアドレスを、前記第3の指示情
報によって指示させる第2の指示手段とを備えたことを
特徴とするアドレステーブル管理装置が提供される。
According to a fifth aspect of the present invention, in the address table management device for managing an address table which is divided into a plurality of storage areas and stores an input upper layer address in a predetermined storage area of the storage areas, Address table control means for registering an entry of the upper layer address in the table and deleting the entry, a registration table for registering an address of an unused entry caused by the deletion of the entry, and an address of the unused entry in the registration table Registration table control means for performing registration and deletion, first and second instruction information for instructing the head and tail of the storage area, and a third for instructing the address of an unused entry generated by deleting the entry.
Table for storing instruction information of the storage area, first instruction means for instructing the head and tail of the storage area by the first and second instruction information, and addresses of unused entries stored in the registration table. Is provided by the second instruction means for instructing by the third instruction information.

【0028】この発明によれば、アドレステーブルとは
別に登録テーブルを備えて未使用エントリのアドレスを
登録しておくことで、従来のようなブロックの再構成を
頻繁に行う必要性をなくし、装置全体の処理性能を向上
させる。
According to the present invention, a registration table is provided in addition to the address table to register the addresses of unused entries, thereby eliminating the need for frequent block reconfiguration as in the conventional case, and Improves overall processing performance.

【0029】この発明の請求項6では、上記発明におい
て、前記上位層アドレスが入力されると、前記テーブル
制御手段は、該上位層アドレスの登録を行う前記所定記
憶領域内の未使用エントリを検出し、該上位層アドレス
を該未使用エントリに登録させ、かつ前記第1の指示手
段は、前記所定領域の先頭と後尾を前記第1および第2
の指示情報によって指示させるとともに、登録テーブル
制御手段は、前記未使用エントリに上位層アドレスが登
録されると、当該未使用エントリのアドレスを削除し、
前記第2の指示手段は、前記登録テーブルに記憶されて
いる次の未使用エントリのアドレスを前記第3の指示情
報によって指示させることを特徴とする。
According to a sixth aspect of the present invention, in the above invention, when the upper layer address is input, the table control means detects an unused entry in the predetermined storage area in which the upper layer address is registered. Then, the upper layer address is registered in the unused entry, and the first instructing means sets the head and tail of the predetermined area to the first and second areas.
And the registration table control means deletes the address of the unused entry when the upper layer address is registered in the unused entry,
The second instructing means causes the address of the next unused entry stored in the registration table to be instructed by the third instructing information.

【0030】この発明によれば、上位層アドレスが入力
されると、テーブル制御手段によって未使用エントリを
検出してこの未使用エントリに登録するとともに、テー
ブル制御手段によって登録テーブルからこの未使用エン
トリのアドレスを削除してアドレスのエントリ登録およ
び削除を迅速に行う。
According to the present invention, when the upper layer address is input, the table control means detects an unused entry and registers it in the unused entry, and the table control means records the unused entry from the registration table. Delete addresses to quickly register and delete address entries.

【0031】この発明の請求項7では、上記発明におい
て、前記エントリの削除があると、前記テーブル制御手
段は、前記アドレステーブルの所定記憶領域に登録され
ている該当上位層アドレスのエントリ削除を行い、かつ
前記登録テーブル制御手段は、前記削除によって生じた
未使用エントリのアドレスを前記登録テーブルに登録さ
せることを特徴とする。
According to a seventh aspect of the present invention, in the above invention, when the entry is deleted, the table control means deletes the entry of the corresponding upper layer address registered in a predetermined storage area of the address table. The registration table control means registers the address of an unused entry generated by the deletion in the registration table.

【0032】この発明によれば、エントリの削除がある
と、テーブル制御手段によって該当するアドレステーブ
ルの記憶領域の上位層アドレスが登録されたエントリを
無効化するとともに、登録テーブル制御手段によって未
使用エントリのアドレスを登録テーブルに登録すること
で、ステップ数を減らしてアドレスのエントリ登録およ
び削除に伴うエントリの移動を最小限に抑える。
According to the present invention, when an entry is deleted, the entry in which the upper layer address of the storage area of the corresponding address table is registered is invalidated by the table control means, and the unused entry is registered by the registration table control means. By registering these addresses in the registration table, the number of steps can be reduced and the movement of entries due to entry registration and deletion of addresses can be minimized.

【0033】[0033]

【発明の実施の形態】以下に添付図面を参照して、この
発明にかかるアドレステーブル管理方法およびアドレス
テーブル管理装置の好適な実施の形態を説明する。
BEST MODE FOR CARRYING OUT THE INVENTION Preferred embodiments of an address table management method and an address table management device according to the present invention will be described below with reference to the accompanying drawings.

【0034】(実施例1)図1は、この発明にかかるア
ドレステーブル管理装置の一実施例の構成を示す構成図
である。図において、このアドレステーブル管理装置1
0は、管理テーブル11aおよびスタックメモリ11b
を含む汎用メモリ11と、汎用メモリ11の制御を行う
装置管理用プロセッサ12と、アドレステーブル13a
を含むCAM13と、CAM13を制御するネットワー
クプロセッサ14と、装置管理用プロセッサ12とネッ
トワークプロセッサ14を接続する内部バス15とから
構成されている。
(First Embodiment) FIG. 1 is a block diagram showing the arrangement of an embodiment of an address table management device according to the present invention. In the figure, this address table management device 1
0 is the management table 11a and the stack memory 11b
General-purpose memory 11 including a memory, a device management processor 12 that controls the general-purpose memory 11, and an address table 13a.
And a network processor 14 that controls the CAM 13, and an internal bus 15 that connects the device management processor 12 and the network processor 14.

【0035】管理テーブル11aは、図2に示すよう
に、各ブロック0,1,2,…,nにフロアポインタ
(FloorPTR)、シーリングポインタ(Ceil
ingPTR)、エンプティスタックポインタ(Emp
tyStackPTR)の3つのポインタを一組として
用意する。このフロアPTRは、該当するブロックの先
頭を示し、シーリングPTRは、該当するブロックの後
尾を示し、エンプティスタックPTRは、エントリ削除
時に生じた未使用エントリのIPアドレス(インデック
ス番号)を登録する汎用メモリ11上にあるスタックメ
モリの先頭を示している。
As shown in FIG. 2, the management table 11a has a floor pointer (FloorPTR) and a ceiling pointer (Ceil) for each block 0, 1, 2 ,.
ingPTR), empty stack pointer (Emp
Three pointers (tyStackPTR) are prepared as one set. The floor PTR indicates the head of the corresponding block, the ceiling PTR indicates the tail of the corresponding block, and the empty stack PTR is a general-purpose memory for registering the IP address (index number) of an unused entry generated when the entry is deleted. 11 shows the top of the stack memory above 11.

【0036】スタックメモリ11bは、図3に示すよう
に、例えば3つのブロック0,1,2に分割されてお
り、それぞれのブロック(Block)には、装置管理
用プロセッサ12のメモリアドレス(Address)
と、エントリ削除時に生じた未使用エントリのインデッ
クス番号が登録されるコンテンツ(Content)
と、各ブロックの空き領域の先頭を指示するエンプティ
スタックPTRとからなっている。なお、図3は、未使
用領域を示すインデックス番号がコンテンツに登録され
ていない初期状態のスタックメモリを示すものである。
As shown in FIG. 3, the stack memory 11b is divided into, for example, three blocks 0, 1, 2, and each block (Block) has a memory address (Address) of the device management processor 12.
And the content (Content) in which the index number of the unused entry generated when the entry is deleted
And an empty stack PTR that indicates the beginning of the free area of each block. Note that FIG. 3 shows the stack memory in the initial state in which the index number indicating the unused area is not registered in the content.

【0037】装置管理用プロセッサ12は、管理テーブ
ル11aとともに、スタックメモリ11bもデータ更新
の制御しており、ブロックの順序が変わらないようにイ
ンデックス番号の登録や削除を行う。また、装置管理用
プロセッサ12は、内部バス15を介して、ブロック再
構成や登録や削除のプログラムを状況に応じてネットワ
ークプロセッサ14に転送している。
The device management processor 12 controls not only the management table 11a but also the stack memory 11b for updating data, and registers or deletes index numbers so that the order of blocks does not change. Further, the device management processor 12 transfers a program for block reconfiguration, registration, or deletion to the network processor 14 via the internal bus 15 depending on the situation.

【0038】CIDR(Classless Inte
r Domain Routing)によるアドレス管
理方法を使用したアドレステーブル13aは、図4に示
すように、従来例と同様に、例えば3つのブロック0,
1,2に分割されており、それぞれのブロックに登録さ
れるエントリは、プレフィクスの長さが異なっている。
このエントリは、インデックス(Index)番号の若
い方に、プレフィクスの長いものがグループ化されて配
置されるようにソートされている。
CIDR (Classless Inte)
As shown in FIG. 4, the address table 13a using the address management method based on r Domain Routing, for example, has three blocks 0,
The entry is divided into 1 and 2, and the entries registered in the respective blocks have different prefix lengths.
The entries are sorted so that the ones with long prefixes are grouped and arranged in the smaller index number.

【0039】ネットワークプロセッサ14は、このアド
レステーブル13aに対してアドレスの登録、削除およ
びブロック再構成を行っている。なお、これらの動作
は、装置管理用プロセッサ12から転送される各プログ
ラムに基づいて行われている。次に、ネットワークプロ
セッサ14は、このアドレステーブル13aにおいて、
該当ブロックの未使用領域のエントリに、アドレス情報
を登録する場合およびブロックを再構成する場合を、図
5〜図7のフローチャート、図8のスタックメモリと図
9〜図11のアドレステーブルの構成図に基づいて説明
する。例えば、エントリ“233.64.X.X”を図
4に示すアドレステーブルに登録する場合には、プレフ
ィクスの長さが等しいブロック1(インデックス番号
(テーブルのアドレス)が“02000”〜“02FF
F”)へ登録しなければならない。なお、スタックメモ
リには、図8に示すようにブロック1の未使用領域に、
例えばインデックス“02400”がアドレス“001
6000”にエントリ登録されているものとする。
The network processor 14 performs address registration, deletion and block reconfiguration for this address table 13a. Note that these operations are performed based on each program transferred from the device management processor 12. Next, the network processor 14 in the address table 13a
5 to 7 are flowcharts of the case of registering address information and the case of reconfiguring a block in the entry of the unused area of the block, and the configuration diagrams of the stack memory of FIG. 8 and the address table of FIGS. 9 to 11. It will be described based on. For example, when the entry “233.64.XX.X” is registered in the address table shown in FIG. 4, the block 1 having the same prefix length (index number (table address) “02000” to “02FF”) is registered.
F ”). In the stack memory, as shown in FIG.
For example, the index “02400” is assigned to the address “001
It is assumed that the entry is registered in 6000 ".

【0040】装置管理用プロセッサ12は、入力するア
ドレスに対して、管理テーブル11aの該当ブロックの
エンプティスタックPTR(1)を取得し、図8のスタ
ックメモリ11bからその該当ブロックのエンプティス
タックPTR(1)に基づいて未使用領域を検索する
(ステップ201)。なお、この場合には、エンプティ
スタックPTR(1)が指示する領域の1つ前の領域を
検索し、そこの未使用領域情報を検索する(ステップ2
01)。そして、この登録すべき該当ブロックに未使用
領域があるかどうか判断する(ステップ202)。
The device management processor 12 acquires the empty stack PTR (1) of the corresponding block of the management table 11a for the input address, and the empty stack PTR (1 of the corresponding block from the stack memory 11b of FIG. ) To search for an unused area (step 201). In this case, the area immediately before the area designated by the empty stack PTR (1) is searched for unused area information (step 2).
01). Then, it is judged whether or not there is an unused area in the corresponding block to be registered (step 202).

【0041】ここで、該当ブロックに未使用領域がある
場合には、エンプティスタックPTRの1つ前の領域か
らインデックス番号“02400”を取り出し、登録プ
ログラムとともに、ネットワークプロセッサ14に転送
し、ネットワークプロセッサ14を登録の処理に移行さ
せ(ステップ203)、さらに装置管理用プロセッサ
は、図3に示すように、エンプティスタックPTR
(1)を−1させてアドレス“0016000”に対応
させて管理テーブル11aおよびスタックメモリ11b
を更新する(ステップ204)。
If there is an unused area in the block, the index number "02400" is fetched from the area immediately before the empty stack PTR and transferred to the network processor 14 together with the registration program. To the registration process (step 203), and the device management processor, as shown in FIG.
The management table 11a and the stack memory 11b are associated with the address "0016000" by decrementing (1) by -1.
Is updated (step 204).

【0042】ネットワークプロセッサ14は、この登録
プログラムに基づいて、図6の登録動作を行い、アドレ
ステーブルのインデックス番号“02400”が示す位
置にエントリ“233.64.X.X”を登録させる
(ステップ301)。
The network processor 14 performs the registration operation of FIG. 6 based on this registration program, and registers the entry "233.64.XX.X" at the position indicated by the index number "02400" in the address table (step). 301).

【0043】また、図5のステップ202において、該
当ブロック1に未使用領域がない場合には、ブロック再
構成の手順が必要となるので、装置管理用プロセッサ1
2は、ブロック再構成のプログラムをネットワークプロ
セッサ14に転送する(ステップ205)。
If there is no unused area in the block 1 in step 202 in FIG. 5, a block reconfiguration procedure is required, so the device management processor 1
2 transfers the block reconstruction program to the network processor 14 (step 205).

【0044】ネットワークプロセッサ14は、このブロ
ック再構成のプログラムに基づいて、例えばブロック1
にエントリ“68.128.X.X”を新規登録する場
合には、図4に示すように、シーリングPTR(1)と
フロアPTR(2)が連続しているため、このままでは
インデックス番号の大きい方には、登録が不可能となっ
ている。
The network processor 14 uses, for example, the block 1 based on this block reconstruction program.
In the case of newly registering the entry "68.128.XX." in the table, the ceiling PTR (1) and the floor PTR (2) are continuous as shown in FIG. For those who are not registered.

【0045】この状態で、ブロック1に上記エントリを
登録するためには、このブロックの再構成のプログラム
に基づいて、次のようなブロック拡張のための手順を行
う必要がある。まず、ネットワークプロセッサ14は、
図10に示すように、フロアPTR(2)が示すエント
リ“192.X.X.X”を読み出して(ステップ40
1)、シーリングPTR(2)の次に示す未使用領域の
移動先(インデックス番号“03101”へのエント
リ)に移動させて書き込む(ステップ402)。そし
て、ネットワークプロセッサ14は、図11に示すよう
に、移動元のエントリ(インデックス番号“0300
0”のエントリ“192.X.X.X”)を無効化する
(ステップ403)。そして、このフロアPTR(2)
を+1に修正すると、インデックス番号“03000”
の位置に未使用領域が現れる。
In this state, in order to register the above-mentioned entry in the block 1, it is necessary to carry out the following procedure for expanding the block based on the program for reconfiguring the block. First, the network processor 14
As shown in FIG. 10, the entry “192.X.XX.X” indicated by the floor PTR (2) is read (step 40
1) Move to the destination of the unused area shown next to the ceiling PTR (2) (entry to index number “03101”) and write (step 402). Then, as shown in FIG. 11, the network processor 14 moves the entry (index number “0300”
0 ”entry“ 192. X. X. X ″) is invalidated (step 403), and this floor PTR (2)
Is corrected to +1, the index number "03000"
An unused area appears at the position.

【0046】次に、ネットワークプロセッサ14は、登
録プログラムに基づいて、図6の登録動作を行い、アド
レステーブルのインデックス番号“03000”が示す
位置にエントリ“68.128.X.X”を登録させる
ことができる(ステップ301)。
Next, the network processor 14 performs the registration operation of FIG. 6 based on the registration program to register the entry "68.128.XX.X" at the position indicated by the index number "03000" in the address table. (Step 301).

【0047】このように、この実施例では、スタックメ
モリに登録されたCAMの未使用エントリのIPアドレ
スをエンプティスタックPTRというポインタを用いて
指示するようにしたので、CAMに複数の未使用エント
リが存在しても、それらを特定することが可能となる。
As described above, in this embodiment, since the IP address of the unused entry of the CAM registered in the stack memory is designated by using the pointer of the empty stack PTR, a plurality of unused entries are stored in the CAM. Even if they exist, it is possible to identify them.

【0048】(実施例2)次に、エントリの削除の場合
について、図13、図14のフローチャートと図15の
アドレステーブル、図16のスタックメモリの構成図に
基づいて説明する。このエントリの削除は、該当エント
リを無効にするだけではなく、そのインデックス番号を
エンプティスタックPTRが示す領域に格納することを
目的とする。なお、ここでは、従来必要であったブロッ
クの再構成に伴うエントリの移動は行う必要がなくな
る。
(Embodiment 2) Next, the case of deleting an entry will be described with reference to the flowcharts of FIGS. 13 and 14, the address table of FIG. 15 and the stack memory configuration diagram of FIG. The purpose of deleting this entry is not only to invalidate the entry, but also to store the index number in the area indicated by the empty stack PTR. In this case, it is not necessary to move the entry due to the block rearrangement, which is conventionally required.

【0049】まず、装置管理用プロセッサ12は、指定
されたIPアドレスをアドレステーブル13aから削除
するプログラムを用意し、これをネットワークプロセッ
サ14に転送する(ステップ501)。
First, the device management processor 12 prepares a program for deleting the designated IP address from the address table 13a and transfers it to the network processor 14 (step 501).

【0050】ネットワークプロセッサは、図14に示す
ように、受信した削除のプログラムに基づき、削除した
い例えばエントリ“233.44.X.X”を無効化す
る(ステップ601)。このエントリ“233.44.
X.X”の削除は、図15のアドレステーブルの構成図
に示すように、アドレステーブル13aのインデックス
“02400”のエントリを無効にすることである。
As shown in FIG. 14, the network processor invalidates, for example, the entry "233.44.XX.X" to be deleted based on the received deletion program (step 601). This entry “233.44.
X. The deletion of X "is to invalidate the entry of the index" 02400 "of the address table 13a as shown in the configuration diagram of the address table of FIG.

【0051】このエントリの無効化がなされると、装置
管理用プロセッサ12は、図16のスタックメモリの構
成図に示すように、エンプティスタックPTR(1)が
示していたスタックメモリ11bの該当ブロック1のア
ドレス“0016000”に、そのインデックス番号
“02400”を未使用領域情報として更新登録するこ
とである(図13のステップ502)。
When this entry is invalidated, the device management processor 12 causes the corresponding block 1 of the stack memory 11b indicated by the empty stack PTR (1) as shown in the stack memory configuration diagram of FIG. The index number "02400" is updated and registered as the unused area information in the address "0016000" (step 502 in FIG. 13).

【0052】このように、この実施例では、該当エント
リを無効にし、かつそのインデックス番号をエンプティ
スタックPTRが示す領域に格納するので、従来必要で
あったブロックの再構成に伴うエントリの移動が不必要
になって、アドレスの削除に伴うステップ数が大幅に減
り、エントリの移動を最小限に抑えることができ、これ
により装置全体の処理性能を低下させることなく、効率
的なCAM上のアドレステーブルの管理が可能となる。
As described above, in this embodiment, since the corresponding entry is invalidated and the index number thereof is stored in the area indicated by the empty stack PTR, the movement of the entry due to the reconfiguration of the block, which is conventionally required, is not required. The number of steps required for address deletion is drastically reduced, entry movement can be minimized, and the address table on the CAM can be efficiently used without degrading the processing performance of the entire device. Can be managed.

【0053】また、ここでステップ501のプログラム
のステップ数をn、ステップ601はm、それ以外は1
とすると、この場合のプログラムステップ数は、1+n
+mとなる。
Here, the number of steps of the program in step 501 is n, step 601 is m, and otherwise 1
Then, the number of program steps in this case is 1 + n
+ M.

【0054】また、従来例のエントリ削除で記述した装
置管理用プロセッサからの転送をn、ステップ201の
無効化をm、ブロック再構成プログラムの転送をn、エ
ントリの読み出しをm、読み出したエントリの書き込み
をm、エントリの無効化をm、管理テーブルの更新を1
とすると、この場合のプログラムステップ数は、1+2
n+4mとなる。
In addition, n is the transfer from the device management processor described in the conventional entry deletion, m is the invalidation of step 201, n is the transfer of the block reconfiguration program, m is the read of the entry, and m is the read of the read entry. M for writing, m for invalidating entries, 1 for updating the management table
Then, the number of program steps in this case is 1 + 2
It becomes n + 4m.

【0055】ここで一般に、プログラムの転送に必要な
プログラムステップ数nは、メモリ1回のアクセスより
も、数十倍〜数百倍に及ぶ。また、CAMは、検索実行
に特化されているため、ネットワークプロセッサがCA
Mのエントリを読み書きするために必要なプログラムス
テップ数mは、検索の数倍のステップ数となることが多
い。
In general, the number of program steps n required to transfer a program is several tens to several hundreds of times that in one memory access. In addition, since the CAM is specialized for search execution, the network processor is CA
The number of program steps required to read / write M entries m is often several times the number of steps of search.

【0056】そこで、n=10、m=4として評価した
場合、この実施例の評価値は、15となり、従来例の評
価値は、37となった。このことから、この実施例は、
削除において大幅にステップ数を減少させることができ
た。また、削除が頻繁に発生し得るアドレステーブルの
場合には、この実施例では、アルゴリズムが有効に作用
することがわかった。
Therefore, when evaluated with n = 10 and m = 4, the evaluation value of this example was 15, and the evaluation value of the conventional example was 37. From this, this embodiment is
The number of steps could be greatly reduced in the deletion. It was also found that the algorithm works effectively in this embodiment in the case of an address table in which deletion can occur frequently.

【0057】この発明は、これら実施形態に限定される
ものではなく、この発明の要旨を逸脱しない範囲で種々
の変形実施が可能である。
The present invention is not limited to these embodiments, and various modifications can be made without departing from the gist of the present invention.

【0058】[0058]

【発明の効果】以上説明したように、この発明では、複
数の記憶領域に分割されたアドレステーブルを有し、入
力する上位層アドレスをこのアドレステーブルの記憶領
域のうちの所定記憶領域にエントリ登録または削除する
とともに、アドレステーブルからのエントリ削除によっ
て生じた未使用エントリのアドレスを登録テーブルに登
録するので、上位層アドレスの登録または削除の際に
は、少ないステップ数でこのアドレステーブルの未使用
領域にエントリまたはエントリ削除でき、アドレスのエ
ントリ登録および削除に伴うエントリの移動を最小限に
抑えることができる。
As described above, according to the present invention, an address table divided into a plurality of storage areas is provided, and an input upper layer address is registered as an entry in a predetermined storage area of the storage areas of the address table. In addition to deleting, the address of the unused entry generated by deleting the entry from the address table is registered in the registration table. Therefore, when registering or deleting the upper layer address, the unused area of this address table is saved with a small number of steps. An entry or an entry can be deleted, and the movement of the entry due to the registration and deletion of the address entry can be minimized.

【0059】また、この発明では、上位層アドレスが入
力されると、登録テーブルから未使用エントリを検出
し、この未使用エントリに上位層アドレスを登録すると
ともに、登録テーブルからこの未使用エントリのアドレ
スを削除するので、アドレステーブルの未使用領域の特
定が容易になるとともに、アドレスのエントリ登録およ
び削除を迅速に行うことができる。
Further, according to the present invention, when an upper layer address is input, an unused entry is detected from the registration table, the upper layer address is registered in this unused entry, and the address of this unused entry is registered from the registration table. Since it is deleted, the unused area of the address table can be easily specified, and the address entry can be registered and deleted quickly.

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

【図1】この発明にかかるアドレステーブル管理装置の
一実施例の構成を示す構成図である。
FIG. 1 is a configuration diagram showing a configuration of an embodiment of an address table management device according to the present invention.

【図2】図1に示した管理テーブルの構成の一例を示す
テーブル構成図である。
FIG. 2 is a table configuration diagram showing an example of a configuration of a management table shown in FIG.

【図3】図1に示したスタックメモリの構成の第1例
(初期状態)を示す構成図である。
FIG. 3 is a configuration diagram showing a first example (initial state) of the configuration of the stack memory shown in FIG.

【図4】図1に示したアドレステーブルの構成の第1例
を示すテーブル構成図である。
FIG. 4 is a table configuration diagram showing a first example of the configuration of the address table shown in FIG.

【図5】図1に示した装置管理用プロセッサのアドレス
の登録動作を説明するためのフローチャートである。
5 is a flowchart for explaining an address registration operation of the device management processor shown in FIG.

【図6】図1に示したネットワークプロセッサのブロッ
ク再構成動作を説明するためのフローチャートである。
6 is a flow chart for explaining a block reconfiguration operation of the network processor shown in FIG. 1. FIG.

【図7】同じく、ネットワークプロセッサのアドレスの
登録動作を説明するためのフローチャートである。
FIG. 7 is likewise a flowchart for explaining the address registration operation of the network processor.

【図8】図1に示したスタックメモリの構成の第2例を
示す構成図である。
8 is a configuration diagram showing a second example of the configuration of the stack memory shown in FIG. 1. FIG.

【図9】図1に示したアドレステーブルの第2例を示す
テーブル構成図である。
9 is a table configuration diagram showing a second example of the address table shown in FIG.

【図10】同じく、アドレステーブルの第3例を示すテ
ーブル構成図である。
FIG. 10 is also a table configuration diagram showing a third example of the address table.

【図11】同じく、アドレステーブルの第3例の変化を
示すテーブル構成図である。
FIG. 11 is also a table configuration diagram showing a change of the third example of the address table.

【図12】同じく、アドレステーブルの第4例を示すテ
ーブル構成図である。
FIG. 12 is also a table configuration diagram showing a fourth example of the address table.

【図13】図1に示したアドレステーブル管理装置のア
ドレスの削除動作を説明するためのフローチャートであ
る。
FIG. 13 is a flowchart for explaining an address deleting operation of the address table management device shown in FIG.

【図14】図1に示したネットワークプロセッサのエン
トリの削除動作を説明するためのフローチャートであ
る。
FIG. 14 is a flowchart for explaining an entry deletion operation of the network processor shown in FIG.

【図15】同じく、アドレステーブルの第5例を示すテ
ーブル構成図である。
FIG. 15 is also a table configuration diagram showing a fifth example of the address table.

【図16】同じく、スタックメモリの構成の第3例を示
す構成図である。
FIG. 16 is also a configuration diagram showing a third example of the configuration of the stack memory.

【図17】従来の管理テーブルの構成を示す構成図であ
る。
FIG. 17 is a configuration diagram showing a configuration of a conventional management table.

【図18】従来のアドレスの登録、ブロック再構成動作
を説明するためのフローチャートである。
FIG. 18 is a flowchart for explaining conventional address registration and block reconfiguration operation.

【図19】従来のアドレステーブルの構成を示す構成図
である。
FIG. 19 is a configuration diagram showing a configuration of a conventional address table.

【図20】同じく、アドレステーブルの構成を示す構成
図である。
FIG. 20 is also a configuration diagram showing the configuration of an address table.

【図21】同じく、アドレステーブルの構成を示す構成
図である。
FIG. 21 is a block diagram showing the structure of an address table.

【図22】同じく、アドレステーブルの構成を示す構成
図である。
FIG. 22 is a block diagram showing the structure of an address table.

【図23】従来のアドレスの削除動作を説明するための
フローチャートである。
FIG. 23 is a flowchart for explaining a conventional address deleting operation.

【図24】同じく、アドレステーブルの構成を示す構成
図である。
FIG. 24 is also a configuration diagram showing the configuration of an address table.

【図25】同じく、アドレステーブルの構成を示す構成
図である。
FIG. 25 is also a configuration diagram showing a configuration of an address table.

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

0〜2 ブロック 10 アドレステーブル管理装置 11 汎用メモリ 11a 管理テーブル 11b スタックメモリ 12 装置管理用プロセッサ 13 CAM 13a アドレステーブル 14 ネットワークプロセッサ 15 内部バス PTR ポインタ 0-2 blocks 10 Address table management device 11 General-purpose memory 11a management table 11b Stack memory 12 Device management processor 13 CAM 13a address table 14 Network processor 15 Internal bus PTR pointer

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 複数の記憶領域に分割されたアドレステ
ーブルを有し、該アドレステーブルの管理を行うアドレ
ステーブル管理方法において、 入力する上位層アドレスを前記アドレステーブルの記憶
領域のうちの所定記憶領域にエントリ登録または削除す
るエントリ工程と、 前記上位層アドレスが登録された記憶領域の先頭と後尾
とを指示する第1および第2の指示情報を前記各記憶領
域に設定する第1の設定工程と、 前記エントリの削除によって生じた未使用エントリのア
ドレスを登録テーブルに登録する登録工程と、 前記エントリの削除によって生じた未使用エントリのア
ドレスを指示する第3の指示情報を前記登録テーブルに
設定する第2の設定工程とを含むことを特徴とするアド
レステーブル管理方法。
1. An address table management method for managing an address table, comprising an address table divided into a plurality of storage areas, wherein an upper layer address to be input is a predetermined storage area of the storage areas of the address table. An entry step of registering or deleting an entry in, and a first setting step of setting first and second instruction information for instructing the beginning and the end of the storage area in which the upper layer address is registered in each of the storage areas. A registration step of registering an address of an unused entry caused by the deletion of the entry in a registration table, and setting third instruction information indicating an address of the unused entry caused by the deletion of the entry in the registration table An address table management method including a second setting step.
【請求項2】 前記エントリ工程では、前記上位層アド
レスが入力されると、前記所定記憶領域内の未使用エン
トリを検出し、該上位層アドレスを該検出した未使用エ
ントリに登録するとともに、前記第1の設定工程によっ
て前記上位層アドレスが登録された記憶領域の先頭と後
尾を前記第1および第2の指示情報によって指示させ、
前記登録工程では、前記上位層アドレスが登録された未
使用エントリのアドレスを前記登録テーブルから削除
し、前記第2の設定工程では、前記登録テーブルに登録
されている次の未使用エントリのアドレスを前記第3の
指示情報によって指示させることを特徴とする請求項1
に記載のアドレステーブル管理方法。
2. In the entry step, when the upper layer address is input, an unused entry in the predetermined storage area is detected, and the upper layer address is registered in the detected unused entry. Instructing the head and tail of the storage area in which the upper layer address is registered by the first setting step by the first and second instruction information,
In the registration step, the address of the unused entry in which the upper layer address is registered is deleted from the registration table, and in the second setting step, the address of the next unused entry registered in the registration table is deleted. The instruction is made by the third instruction information.
Address table management method described in.
【請求項3】 前記エントリの削除があると、エントリ
工程では、前記所定記憶領域に登録されている該当上位
層アドレスのエントリ削除を行い、前記登録工程では、
前記削除によって生じた未使用エントリのアドレスを前
記登録テーブルに登録させることを特徴とする請求項1
または2に記載のアドレステーブル管理方法。
3. When the entry is deleted, in the entry step, the entry of the corresponding upper layer address registered in the predetermined storage area is deleted, and in the registration step,
The address of an unused entry generated by the deletion is registered in the registration table.
Or the address table management method described in 2.
【請求項4】 前記上位層アドレスは、IPアドレスか
らなることを特徴とする請求項1〜3のいずれか一つに
記載のアドレステーブル管理方法。
4. The address table management method according to claim 1, wherein the upper layer address is an IP address.
【請求項5】 複数の記憶領域に分割され、入力する上
位層アドレスを該記憶領域のうちの所定記憶領域に記憶
させるアドレステーブルを管理するアドレステーブル管
理装置において、 前記アドレステーブルへの前記上位層アドレスのエント
リ登録およびエントリ削除を行うアドレステーブル制御
手段と、 前記エントリの削除によって生じた未使用エントリのア
ドレスを登録する登録テーブルと、 前記登録テーブルへの未使用エントリのアドレス登録お
よび削除を行う登録テーブル制御手段と、 前記記憶領域の先頭と後尾とを指示する第1および第2
の指示情報と、前記エントリの削除によって生じた未使
用エントリのアドレスを指示する第3の指示情報を記憶
する管理テーブルと、 前記記憶領域の先頭と後尾を、前記第1および第2の指
示情報によって指示させる第1の指示手段と、 前記登録テーブルに記憶されて未使用エントリのアドレ
スを、前記第3の指示情報によって指示させる第2の指
示手段とを備えたことを特徴とするアドレステーブル管
理装置。
5. An address table management device for managing an address table which is divided into a plurality of storage areas and stores an input upper layer address in a predetermined storage area of the storage areas, wherein the upper layer to the address table is stored. Address table control means for registering an entry of an address and deleting an entry, a registration table for registering an address of an unused entry caused by the deletion of the entry, and registration for registering and deleting an address of the unused entry in the registration table Table control means, and first and second instructing the head and tail of the storage area
Management information for storing the third instruction information for instructing the address of an unused entry generated by deleting the entry, the head and tail of the storage area, and the first and second instruction information. Address table management comprising: first instructing means for instructing by the third instruction information; and second instructing means for instructing an address of an unused entry stored in the registration table by the third instruction information. apparatus.
【請求項6】 前記上位層アドレスが入力されると、前
記テーブル制御手段は、該上位層アドレスの登録を行う
前記所定記憶領域内の未使用エントリを検出し、該上位
層アドレスを該未使用エントリに登録させ、かつ前記第
1の指示手段は、前記所定領域の先頭と後尾を前記第1
および第2の指示情報によって指示させるとともに、登
録テーブル制御手段は、前記未使用エントリに上位層ア
ドレスが登録されると、当該未使用エントリのアドレス
を削除し、前記第2の指示手段は、前記登録テーブルに
記憶されている次の未使用エントリのアドレスを前記第
3の指示情報によって指示させることを特徴とする請求
項5に記載のアドレステーブル管理装置。
6. When the upper layer address is input, the table control means detects an unused entry in the predetermined storage area in which the upper layer address is registered, and the upper layer address is used as the unused entry. The entry is registered in the entry, and the first instruction means sets the beginning and the end of the predetermined area to the first
And the second instruction information, the registration table control means deletes the address of the unused entry when the upper layer address is registered in the unused entry, and the second instruction means is operable to delete the address of the unused entry. The address table management device according to claim 5, wherein the address of the next unused entry stored in the registration table is instructed by the third instruction information.
【請求項7】 前記エントリの削除があると、前記テー
ブル制御手段は、前記アドレステーブルの所定記憶領域
に登録されている該当上位層アドレスのエントリ削除を
行い、かつ前記登録テーブル制御手段は、前記削除によ
って生じた未使用エントリのアドレスを前記登録テーブ
ルに登録させることを特徴とする請求項5または6に記
載のアドレステーブル管理装置。
7. When the entry is deleted, the table control means deletes the entry of the corresponding upper layer address registered in a predetermined storage area of the address table, and the registration table control means 7. The address table management device according to claim 5, wherein the address of the unused entry generated by the deletion is registered in the registration table.
JP2001398153A 2001-12-27 2001-12-27 Address table management method and address table management device Pending JP2003198598A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001398153A JP2003198598A (en) 2001-12-27 2001-12-27 Address table management method and address table management device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001398153A JP2003198598A (en) 2001-12-27 2001-12-27 Address table management method and address table management device

Publications (1)

Publication Number Publication Date
JP2003198598A true JP2003198598A (en) 2003-07-11

Family

ID=27603702

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001398153A Pending JP2003198598A (en) 2001-12-27 2001-12-27 Address table management method and address table management device

Country Status (1)

Country Link
JP (1) JP2003198598A (en)

Similar Documents

Publication Publication Date Title
US7099324B2 (en) System and method for processing packets
KR102290835B1 (en) Merge tree modifications for maintenance operations
US6618760B1 (en) Forwarding information retrieval technique
CN110301120B (en) Stream classification device, method and system
US6842791B2 (en) Method and apparatus for memory efficient fast VLAN lookups and inserts in hardware-based packet switches
US9871727B2 (en) Routing lookup method and device and method for constructing B-tree structure
US20100228914A1 (en) Data caching system and method for implementing large capacity cache
US20100246446A1 (en) Tree-based node insertion method and memory device
US8010557B2 (en) Retrieving method for fixed length data
JP3570323B2 (en) How to store prefixes for addresses
CN108134739B (en) Route searching method and device based on index trie
JP2003198598A (en) Address table management method and address table management device
JP2009017439A (en) Packet transfer device and method
JP6266445B2 (en) Packet relay apparatus and packet relay method
JP2003198596A (en) Address table management method and address table management device
JP3570606B2 (en) Data retrieval apparatus and method
US8199756B2 (en) Forwarding apparatus, forwarding method, and computer product
JP3660311B2 (en) Table search apparatus and method, program, and recording medium
CN111131197B (en) Filtering strategy management system and method thereof
JP2009123050A (en) Information retrieving device and registration method of entry information to the same
KR100491090B1 (en) A control method and apparatus for the table having array data structure for managing layer 2 forwarding table
JP3699374B2 (en) Routing table update method, program, and recording medium
KR100421414B1 (en) Method for searching and updating using node structure of multiway search tree
CN116366548A (en) Route matching method of IPv6 subnetwork
JP2009017440A (en) Information management device, information management method, packet transfer device, packet transfer method, and computer program