JP2002368793A - Inter-network relay device and packet flow identification method - Google Patents

Inter-network relay device and packet flow identification method

Info

Publication number
JP2002368793A
JP2002368793A JP2001171328A JP2001171328A JP2002368793A JP 2002368793 A JP2002368793 A JP 2002368793A JP 2001171328 A JP2001171328 A JP 2001171328A JP 2001171328 A JP2001171328 A JP 2001171328A JP 2002368793 A JP2002368793 A JP 2002368793A
Authority
JP
Japan
Prior art keywords
packet
relay
search
address
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001171328A
Other languages
Japanese (ja)
Inventor
Toru Kishigami
徹 岸上
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2001171328A priority Critical patent/JP2002368793A/en
Publication of JP2002368793A publication Critical patent/JP2002368793A/en
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

PROBLEM TO BE SOLVED: To provide an inter-network relay device that efficiently relays a packet 3 received from a network to other networks. SOLUTION: The inter-network relaying device is provided with a plurality of contents addressable memories (CAMs) 18, 19 to which an entry number is set by each combination of items by using a plurality of items denoting the attribute included in each packet 3 for a retrieval key, a processing retrieval table 20 that stores relay processing information with respect to a packet by each combination of entry numbers obtained by each CAM, a retrieval means 17 that extracts each item of a received packet, retrieves each CAM according to each items to obtain each entry number, combines the entry numbers to generate a retrieval address, and retrieves the processing retrieval table by using the retrieval address to obtain relay processing information corresponding to the packet, and relay means 9, 12 that relay the packet on the basis of the obtained relay processing information.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、複数のネットワー
ク相互間で送受信されるインターネットのパケットを中
継するネットワーク間中継装置、及びこのネットワーク
間中継装置内におけるパケットの扱いを識別するパケッ
トフロー識別方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an inter-network relay device for relaying Internet packets transmitted and received between a plurality of networks, and a packet flow identification method for identifying handling of a packet in the inter-network relay device. .

【0002】[0002]

【従来の技術】図7に示すように、各ネットワーク1
a、1b、1cに所属する各端末2a、2b、2c相互
間でインターネットを利用して情報を送受信する場合
は、情報を複数のパケット3に組込んで送受信する。複
数のネットワークに亘ってパケット3が送受信される場
合、パケットの送受信は、各ネットワーク1a、1b、
1cに回線4a、4b、4cを介して接続されたネット
ワーク間中継装置5を用いて実施される。
2. Description of the Related Art As shown in FIG.
When information is transmitted and received between the terminals 2a, 2b and 2c belonging to a, 1b and 1c using the Internet, the information is incorporated in a plurality of packets 3 and transmitted and received. When the packet 3 is transmitted and received over a plurality of networks, the transmission and reception of the packet is performed by each of the networks 1a, 1b,
This is performed using the inter-network relay device 5 connected to the communication network 1c via the lines 4a, 4b, and 4c.

【0003】図8は、インターネット・プロトコルIP
v4(Internet Protocol version4)に準拠するパケッ
ト3の構成図である。パケット3は、ヘッダ3aと情報
(データ)3bとからなり、ヘッダ3a内には、IPプ
ロトコルのバージョン(Version)、ヘッダ長IHL(I
nternet Header Length)、サービス・タイプTOS(T
ype of Service)、パケット長(Total Length)、識別
子ID、フラグ、フラグメントオフセット、生存期間T
TL(Time to Live)、プロトコル(Protocol)、送信
元アドレスSA(Source Address)、送信先(宛先)ア
ドレスDA(Destination Address)等の各項目が組込
まれている。
FIG. 8 shows an Internet protocol IP.
FIG. 3 is a configuration diagram of a packet 3 conforming to v4 (Internet Protocol version 4). The packet 3 includes a header 3a and information (data) 3b. In the header 3a, a version (Version) of the IP protocol and a header length IHL (I
Internet Header Length), service type TOS (T
ype of Service), packet length (Total Length), identifier ID, flag, fragment offset, lifetime T
Items such as TL (Time to Live), protocol (Protocol), source address SA (Source Address), and destination (destination) address DA (Destination Address) are incorporated.

【0004】なお、サービス・タイプTOSとは、この
パケット3が要求するサービスの品質を示し、優先度の
指定、遅延の少ない経路の要求、スループットの高い経
路の選択、信頼性の高い経路の要求等が含まれる。
[0004] The service type TOS indicates the quality of service requested by the packet 3, specifies the priority, requests a route with a small delay, selects a route with a high throughput, and requests a route with a high reliability. Etc. are included.

【0005】各ネットワーク1a〜1cから回線4a〜
4cを介して図8に示す構成を有するパケット3が入力
されるネットワーク間中継装置5は、入力されたパケッ
ト3の中継先を判定して、このパケット3を回線4a〜
4cを介して中継先のネットワーク1a〜1cへ送信す
る基本的機能を有する。
[0005] Each of the networks 1a to 1c transmits
The inter-network relay device 5 to which the packet 3 having the configuration shown in FIG. 8 is input via the terminal 4c determines the relay destination of the input packet 3, and transfers the packet 3 to the lines 4a to 4c.
4c has a basic function of transmitting to the relay destination networks 1a to 1c.

【0006】さらに、ネットワーク間中継装置5は、上
述したパケット3を中継する本来の中継機能の他に、ネ
ットワーク1a〜1cにおいて優先制御、帯域保証等の
サービスを実現するために、入力された各パケット3が
要求するサービス、各パケット3が有する重要度、各パ
ケット3が有するパケット種別等の、パケットが有する
各種属性を示すクラス情報を判定して、このクラス情報
に応じた中継処理を実施する。
Further, the inter-network relay device 5 has a function of relaying the packet 3 and, in addition to the original relay function, realizing services such as priority control and bandwidth guarantee in the networks 1a to 1c. Class information indicating various attributes of the packet, such as the service requested by the packet 3, the importance of each packet 3, and the packet type of each packet 3, is determined, and relay processing is performed according to the class information. .

【0007】したがって、ネットワーク間中継装置5
は、入力されたパケット3の中継先判定機能とクラス情
報判定機能とを有する必要がある。
Therefore, the inter-network relay device 5
Needs to have a function of determining the relay destination of the input packet 3 and a function of determining the class information.

【0008】図9は、中継先判定機能とクラス情報判定
機能とを有するネットワーク間中継装置5の概略構成を
示すブロック図である。
FIG. 9 is a block diagram showing a schematic configuration of an inter-network relay device 5 having a relay destination determining function and a class information determining function.

【0009】このネットワーク間中継装置5は、物理層
処理部6、データリンク層処理部7、パケットバッファ
8、パケットバッファ制御部9、ネットワーク層処理部
10、中継先/クラス情報テーブル11、優先制御処理
部12、中継処理制御部13で構成されている。
The inter-network relay device 5 includes a physical layer processing unit 6, a data link layer processing unit 7, a packet buffer 8, a packet buffer control unit 9, a network layer processing unit 10, a relay destination / class information table 11, a priority control, It comprises a processing unit 12 and a relay processing control unit 13.

【0010】このように構成されたネットワーク間中継
装置5の動作をパケット3の処理の流れに沿って順番に
説明していく。物理層処理部6は、回線4a〜4cから
入力されたパケット3に対して、物理回線の制御等、O
SI参照モデル上における物理層の処理を行い、データ
リンク層処理部7へ転送する。データリンク層処理部7
は、物理層処理部6を経由したパケット3に対して、ノ
ード間の物理回線上に設定された論理回線の制御等、デ
ータリンク層の処理を行い、パケットバッファ8内のパ
ケットバッファ制御部9が指定したアドレスに書込むと
ともに、パケットバッファ制御部9へパケット3のパケ
ットバッファ8に対する格納報告を行う。
The operation of the inter-network relay device 5 configured as described above will be sequentially described along the flow of processing of the packet 3. The physical layer processing unit 6 applies O to the packet 3 input from the lines 4a to 4c,
The physical layer processing on the SI reference model is performed and transferred to the data link layer processing unit 7. Data link layer processing unit 7
Performs data link layer processing, such as control of a logical line set on a physical line between nodes, on the packet 3 passed through the physical layer processing unit 6, and performs packet buffer control unit 9 in the packet buffer 8. Write to the designated address and report the storage of the packet 3 to the packet buffer 8 to the packet buffer controller 9.

【0011】パケットバッファ8は、物理層処理部6及
びデータリンク層処理部7で処理された後のパケット3
を一時記憶する。
The packet buffer 8 stores the packets 3 processed by the physical layer processing unit 6 and the data link layer processing unit 7.
Is temporarily stored.

【0012】パケットバッファ制御部9は、パケットバ
ッファ8のバッファ管理を行う。すなわち、データリン
ク層処理部7に対して次に送受信すべきパケット3が格
納されるパケットバッファ8内のバッファアドレスを通
知し、ネットワーク層処理部10に対して、次に処理す
べきパケット3が格納されているバッファアドレスを通
知する。
The packet buffer controller 9 manages the buffer of the packet buffer 8. That is, the buffer address in the packet buffer 8 where the packet 3 to be transmitted / received next is stored is notified to the data link layer processing unit 7, and the packet 3 to be processed next is notified to the network layer processing unit 10. Notifies the stored buffer address.

【0013】中継先/クラス情報テーブル11内には、
各パケット3毎に該当パケット3に与えられた検索アド
レス毎に、該当パケット3の中継先及びクラス情報等が
格納されている。具体的には、中継先として、該当パケ
ット3を送信(中継)するネットワーク1a〜1cへの
回線4a〜4cが接続される論理出力ポートが記憶され
ている。
In the relay destination / class information table 11,
For each packet 3, the relay destination and class information of the packet 3 are stored for each search address given to the packet 3. Specifically, a logical output port to which the lines 4a to 4c to the networks 1a to 1c that transmit (relay) the packet 3 are stored as the relay destination.

【0014】ネットワーク層処理部10は、処理対象と
なるパケット3の図8に示したヘッダ3a内の予め指定
されたTOS、SA、DA等の各項目のデータを基にし
て検索アドレスを得て、この検索アドレスで中継先/ク
ラス情報テーブル11を検索して、検索アドレスに対応
する該当パケット3の中継先及びクラス情報を取得す
る。
The network layer processing unit 10 obtains a search address based on data of each item such as TOS, SA, DA, etc. designated in advance in the header 3a shown in FIG. 8 of the packet 3 to be processed. Then, the relay destination / class information table 11 is searched with this search address to obtain the relay destination and class information of the packet 3 corresponding to the search address.

【0015】ここで、中継先/クラス情報テーブル11
の中継先及びクラス情報を検索するための検索アドレス
の生成方法を説明する。例えば16bit構成の検索アド
レスに組込むべき情報が16bitを越える場合は、この
16bitを越える情報のビット数を16bit以下に圧縮す
るためにハッシュ演算を用いる。具体的には、検索アド
レスに組込むべき情報を、図8に示すパケット3のヘッ
ダ3aにおけるサービス・タイプTOS、プロトコル、
SA、DAの5項目とした場合、これらの合計の80bi
t(=8bit(TOS)+8bit(プロトコル)+32bit
(SA)+32bit(DA))をハッシュ演算を用いて
16bitに圧縮する必要がある。
Here, the relay destination / class information table 11
A method for generating a search address for searching for relay destination and class information will be described. For example, if the information to be incorporated in the 16-bit search address exceeds 16 bits, a hash operation is used to compress the number of bits of the information exceeding 16 bits to 16 bits or less. Specifically, information to be incorporated into the search address is represented by the service type TOS, the protocol, and the header 3a of the packet 3 shown in FIG.
When SA and DA are set to 5 items, the total of these 80bi
t (= 8bit (TOS) + 8bit (protocol) + 32bit
It is necessary to compress (SA) +32 bits (DA)) into 16 bits using a hash operation.

【0016】さらに、ネットワーク層処理部10は、処
理対象となるパケット3の正当性を、生存期間TTL演
算や、パケット長の計数等で確認を行う。
Further, the network layer processing unit 10 confirms the validity of the packet 3 to be processed by calculating the lifetime TTL, counting the packet length, and the like.

【0017】そして、ネットワーク層処理部10は、正
当なパケット3であることが確認された場合には、バッ
ファアドレスとともに取得した中継先をパケットバッフ
ァ制御部9へ通知するとともに、取得した該当パケット
のクラス情報を優先制御処理部12へ通知する。逆に、
不当なパケット3の場合は、パケットバッファ制御部9
にバッファアドレスともにエラー情報を通知する。
When it is confirmed that the packet 3 is a valid packet 3, the network layer processing unit 10 notifies the packet buffer control unit 9 of the obtained relay destination together with the buffer address, The priority control processing unit 12 is notified of the class information. vice versa,
If the packet 3 is invalid, the packet buffer controller 9
Error information together with the buffer address.

【0018】優先制御処理部12は、ネットワーク層処
理部10から通知されたクラス情報を基にして送信待ち
の他のパケット3との間における優先順位付け等の優先
制御を行い、パケット3毎に送信タイミングを決定し、
パケットバッファ制御部9に通知する。
The priority control processing unit 12 performs priority control such as prioritization with other packets 3 waiting to be transmitted based on the class information notified from the network layer processing unit 10, and performs priority control for each packet 3. Determine the transmission timing,
Notify the packet buffer control unit 9.

【0019】パケットバッファ制御部9は優先制御処理
部12から通知されるパケット3の送信タイミングに従
い、データリンク層処理部7に対して、バッファアドレ
スとともに中継先の論理出力ポートを指定してパケット
3の送信通知を行う。
According to the transmission timing of the packet 3 notified from the priority control processing unit 12, the packet buffer control unit 9 instructs the data link layer processing unit 7 to specify the logical output port of the relay destination together with the buffer address, Notification of transmission.

【0020】データリンク層処理部7は、パケットバッ
ファ制御部9の指示に従ってパケットバッファ8よりパ
ケット3を読出し、物理層処理部6を経て、指定された
論理出力ポートに接続された回線4a〜4cにパケット
3を送出する。
The data link layer processing unit 7 reads out the packet 3 from the packet buffer 8 in accordance with the instruction of the packet buffer control unit 9 and passes through the physical layer processing unit 6 to the lines 4a to 4c connected to the designated logical output ports. To the packet 3.

【0021】なお、例えばCPUで構成された中継処理
制御部13は、このネットワーク間中継処理装置5全体
の制御を行い、各処理部6〜12における各種のパラメ
ータの初期設定及び、ネットワーク層処理部10で中継
先及びクラス情報を取得処理できないパケット3に対す
る処理を実施する。
A relay processing control unit 13 composed of, for example, a CPU controls the entire inter-network relay processing apparatus 5, initializes various parameters in the processing units 6 to 12, and sets a network layer processing unit. In step 10, processing is performed on the packet 3 for which the relay destination and class information cannot be obtained and processed.

【0022】図10は、別のネットワーク間中継装置5
aの概略構成をブロック図である。図9に示すネットワ
ーク間中継装置5と同一部分には同一符号を付して重複
する部分の詳細説明を省略する。
FIG. 10 shows another inter-network relay device 5.
FIG. 2 is a block diagram showing a schematic configuration of a. The same parts as those of the inter-network relay device 5 shown in FIG. 9 are denoted by the same reference numerals, and detailed description of the overlapping parts will be omitted.

【0023】このネットワーク間中継装置5aは、物理
層処理部6、データリンク層処理部7、パケットバッフ
ァ8、パケットバッファ制御部9、ネットワーク層処理
部14、中継先/クラス判定CAM(コンテンツ・アド
レサブル・メモリ:ContentsAddressable Memory)1
5、処理検索テーブルとしての中継先/クラス情報テー
ブル16、優先制御処理部12、中継処理制御部13と
で構成されている。
The inter-network relay device 5a includes a physical layer processing unit 6, a data link layer processing unit 7, a packet buffer 8, a packet buffer control unit 9, a network layer processing unit 14, a relay destination / class determination CAM (content addressable・ Memory: ContentsAddressable Memory) 1
5, a relay destination / class information table 16 as a processing search table, a priority control processing unit 12, and a relay processing control unit 13.

【0024】図9に示すネットワーク間中継装置5と異
なる部分は、中継先/クラス判定CAM15、中継先/
クラス情報テーブル16、ネットワーク層処理部14の
みであるので、これらについて詳細に説明する。
The different points from the inter-network relay device 5 shown in FIG.
Only the class information table 16 and the network layer processing unit 14 will be described in detail.

【0025】中継先/クラス判定CAM(コンテンツ・
アドレサブル・メモリ:Contents Addressable Memor
y)15は、一種の検索テーブルであり、この中継先/
クラス判定CAM15内には、図11(a)に示すよう
に、入力されたパケット3の論理入力ポート、該当パケ
ット3のサービス・タイプTOS、プロトコル、送信元
アドレスSA、送信元アドレスDAの合計5個の項目
(検索キー)に対して一つのエントリ番号(アドレス)
が割付られている。
Relay destination / class determination CAM (content
Addressable Memory: Contents Addressable Memor
y) 15 is a kind of search table, and this relay destination /
As shown in FIG. 11A, the class determination CAM 15 has a total of 5 logical input ports of the input packet 3, the service type TOS of the corresponding packet 3, the protocol, the source address SA, and the source address DA. One entry number (address) for each item (search key)
Is assigned.

【0026】したがって、例えば、各ネットワーク1a
〜1cの端末2a〜2cから他のネットワーク1a〜1
cの端末2a〜2cへパケット3を複数回送信する場合
以外は、各パケット3毎に、異なるエントリ番号(アド
レス)が割付られる筈である。しかし、上述した論理入
力ポートから送信元アドレスDAまでの5個の項目(検
索キー)のうち、「*」で示す検索に採用しない項目が
設定されている。したがって、この「*」で示す項目は
どのような値であってもよい。言いかえれば、論理入力
ポートから送信先アドレスDAまでの5個の項目のう
ち、「*」で示す項目のみが異なるのみの各パケット3
が同一のエントリ番号(アドレス)となる。
Therefore, for example, each network 1a
To the other networks 1a to 1c from the terminals 2a to 2c of the
Unless the packet 3 is transmitted a plurality of times to the terminals 2a to 2c of c, different entry numbers (addresses) should be assigned to each packet 3. However, among the five items (search keys) from the above-described logical input port to the source address DA, items that are not adopted in the search indicated by “*” are set. Therefore, the item indicated by “*” may be any value. In other words, out of the five items from the logical input port to the destination address DA, each packet 3 that differs only in the item indicated by “*”
Are the same entry number (address).

【0027】例えば、エントリ#1においては、TO
S、プロトコル、SAはマスク(検索対象としない)し
て、論理入力ポートとDAのみが検索対象となってい
る。同様に、エントリ#2においては、論理入力ポー
ト、TOS、プロトコル、SA、DAの全ての項目が検
索対象となっている。さらに、エントリ#3において
は、は論理入力ポート、プロトコル、SA、DAのみが
検索対象となっている。さらに、エントリ#4にいて
は、論理入力ポート、TOS、DAが対象となってい
る。
For example, in entry # 1, TO
S, protocol, and SA are masked (not searched), and only the logical input port and DA are searched. Similarly, in entry # 2, all items of logical input port, TOS, protocol, SA, and DA are to be searched. Further, in entry # 3, only the logical input port, protocol, SA, and DA are searched. Further, in the entry # 4, the logical input port, TOS, and DA are targeted.

【0028】このように、各エントリ番号(#)毎に、
任意数の項目(検索キー)を設定することができる。す
なわち、同一の中継先及びクラス情報を判定することが
可能な複数のパケット3が同一のエントリ番号(アドレ
ス)となるように、検索対象の項目(検索キー)を選択
設定すればよい。
Thus, for each entry number (#),
Any number of items (search keys) can be set. That is, an item (search key) to be searched may be selected and set so that a plurality of packets 3 capable of determining the same relay destination and class information have the same entry number (address).

【0029】中継先/クラス情報テーブル16内には、
図2(b)に示すように、前記各エントリ番号に等しい
検索アドレス毎に、該当検索アドレスに対応するエント
リ番号に属するパケット3の中継先及びクラス情報等が
格納されている。具体的には、中継先として、該当パケ
ット3を送信(中継)するネットワーク1a〜1cへの
回線4a〜4cが接続される論理出力ポートが記憶され
ている。
In the relay destination / class information table 16,
As shown in FIG. 2B, for each search address equal to the entry number, the relay destination and class information of the packet 3 belonging to the entry number corresponding to the search address are stored. Specifically, a logical output port to which the lines 4a to 4c to the networks 1a to 1c that transmit (relay) the packet 3 are stored as the relay destination.

【0030】ネットワーク層処理部14は、パケットバ
ッファ8内の、パケットバッファ制御部9から指定され
たバッファアドレスのパケット3を読出して、この処理
対象となるパケット3の図8に示したヘッダ3a内の論
理入力ポート、該当パケット3のサービス・タイプTO
S、プロトコル、送信元アドレスSA、送信先アドレス
DAの合計5個の項目(検索キー)で中継先/クラス判
定CAM15内を検索して、対応するエントリ番号(ア
ドレス)を得る。
The network layer processing unit 14 reads the packet 3 having the designated buffer address from the packet buffer control unit 9 in the packet buffer 8, and reads the packet 3 to be processed in the header 3a shown in FIG. Logical input port, service type TO of the corresponding packet 3
A search is made in the relay / class determination CAM 15 with a total of five items (search keys) of S, protocol, source address SA, and destination address DA to obtain a corresponding entry number (address).

【0031】そして、ネットワーク層処理部14は、こ
の中継先/クラス判定CAM15で得たエントリ番号
(アドレス)を検索アドレスとして、この検索アドレス
で中継先/クラス情報テーブル16を検索して、検索ア
ドレスに対応する該当パケット3の中継先及びクラス情
報を取得する。
The network layer processing unit 14 searches the relay destination / class information table 16 with the search address using the entry number (address) obtained by the relay destination / class determination CAM 15 as a search address. And the relay destination and class information of the packet 3 corresponding to.

【0032】さらに、ネットワーク層処理部14は、処
理対象となるパケット3の正当性を、生存期間TTL演
算や、パケット長の計数等で確認を行う。
Further, the network layer processing unit 14 confirms the validity of the packet 3 to be processed by calculating the lifetime TTL, counting the packet length, and the like.

【0033】そして、ネットワーク層処理部14は、正
当なパケット3であることが確認された場合には、バッ
ファアドレスとともに取得した中継先をパケットバッフ
ァ制御部9へ通知するとともに、取得した該当該当パケ
ット3のクラス情報を優先制御処理部12へ通知する。
逆に、不当なパケット3の場合は、パケットバッファ制
御部9にバッファアドレスともにエラー情報を通知す
る。
When it is confirmed that the packet is a valid packet 3, the network layer processing unit 14 notifies the packet buffer control unit 9 of the obtained relay destination together with the buffer address, 3 is notified to the priority control processing unit 12.
Conversely, in the case of an invalid packet 3, the packet buffer control unit 9 is notified of error information together with the buffer address.

【0034】このように、図10に示したネットワーク
間中継装置5aにおいては、中継先/クラス判定CAM
15内に、検索不要の「*」で示す項目を設定すること
によって、中継先/クラス判定CAM15におけるエン
トリ番号(アドレス)の設定数、及び中継先/クラス情
報テーブル16における検索アドレスの設定数を大幅に
削減できる。
As described above, in the inter-network relay device 5a shown in FIG. 10, the relay destination / class determination CAM
By setting an item indicated by “*” that does not need to be searched for in 15, the number of entry numbers (addresses) set in the relay destination / class determination CAM 15 and the set number of search addresses in the relay destination / class information table 16 are reduced. Can be significantly reduced.

【0035】[0035]

【発明が解決しようとする課題】しかしながら、図9、
図10に示した従来の各ネットワーク間中継装置5、5
aにおいてもまだ解消すべき次のような課題があった。
However, FIG.
The conventional inter-network relay devices 5, 5 shown in FIG.
In the case of a, the following problems still need to be solved.

【0036】すなわち、図9に示すネットワーク間中継
装置5においては、中継先/クラス情報テーブル11内
に、検索アドレスとして、パケット3におけるヘッダ3
aを構成する前述した5項目全ての情報を含む検索アド
レスを設定する必要がある。すなわち、検索アドレスを
ほぼ各パケット3毎に設ける必要があるので、検索アド
レス数が膨大になり、中継先/クラス情報テーブル11
の必要記憶容量が増大する。
That is, in the inter-network relay device 5 shown in FIG. 9, the relay destination / class information table 11 stores the header 3
It is necessary to set a search address that includes information on all of the above-mentioned five items that constitute a. That is, since it is necessary to provide a search address almost every packet 3, the number of search addresses becomes enormous, and the relay destination / class information table 11
Required storage capacity increases.

【0037】また、ネットワーク構成の変更やサービス
の追加等を行う際に中継先/クラス情報テーブル11に
対して登録/削除すべきエントリの数が膨大となり、ネ
ットワークの規模が大きい場合や通信のサービス品質を
細かく設定したい場合には運用管理コストが非常に大き
くなってしまうという問題がある。
Further, when the network configuration is changed or a service is added, the number of entries to be registered / deleted from the relay destination / class information table 11 becomes enormous. There is a problem that the operation management cost becomes very large when it is desired to set the quality finely.

【0038】さらに、一般的にハッシュ検索回路が扱え
るビット数には制約があるため、ビット数圧縮の対象と
するパケット3のヘッダ3aのビット長が長いと、ハッ
シュ演算を複数回繰り返す必要が発生し、演算時間が長
くなり、処理性能が劣化する問題がある。さらに、ハッ
シュ演算によりデータを圧縮したものを検索アドレスと
して、中継先及びクラス情報等が格納されている中継先
/クラス情報テーブル11を参照するため、圧縮率が高
いとコリジョンが頻発し、処理性能が低下する可能性が
ある。
Further, since the number of bits that can be handled by the hash search circuit is generally limited, if the bit length of the header 3a of the packet 3 to be subjected to bit number compression is long, it is necessary to repeat the hash operation a plurality of times. However, there is a problem that the calculation time becomes longer and the processing performance deteriorates. Furthermore, since the relay destination / class information table 11 in which the relay destination and class information are stored is referred to using the data obtained by compressing the data by the hash operation as a search address, if the compression ratio is high, the collision frequently occurs and the processing performance is increased. May decrease.

【0039】次に、図10に示すネットワーク間中継装
置5aにおいては、中継先/クラス判定CAM15内に
おいて、中継先判定とクラス判定を含めた情報に対して
1つのエントリ番号を付与している。そのため、エント
リ番号によっては検索対象としない項目が有るにも係わ
らず、対象となる全ての項目の組合せで共通のエントリ
番号(アドレス)を定義し、そのエントリ番号(アドレ
ス)に基づいて、中継先/クラス情報テーブル16内に
検索アドレス及び中継先及びクラス情報を準備すること
になる。
Next, in the inter-network relay apparatus 5a shown in FIG. 10, one entry number is assigned to information including the relay destination determination and the class determination in the relay destination / class determination CAM 15. Therefore, a common entry number (address) is defined for a combination of all target items, and a relay destination is determined based on the entry number (address), although there is an item that is not to be searched depending on the entry number. The search address, the relay destination, and the class information are prepared in the / class information table 16.

【0040】その結果、中継先/クラス判定CAM15
及び中継先/クラス情報テーブル16の必要な記憶容量
が大きくなってしまう問題がある。よって、ネットワー
ク間中継装置5a全体の製造費が上昇する懸念がある。
As a result, the relay destination / class determination CAM 15
In addition, there is a problem that the required storage capacity of the relay destination / class information table 16 increases. Therefore, there is a concern that the manufacturing cost of the entire inter-network relay device 5a will increase.

【0041】本発明はこのような事情に鑑みてなされた
ものであり、各目的毎に異なるCAMを採用することに
よって、各ネットワークが要求する仕様・サービスの変
更に簡単に対応でき、かつCAMを含めた全体の検索テ
ーブルの必要記憶容量を節減でき、装置全体の製造費を
低減でき、さらに、パケットに対する中継処理能率を向
上できるネットワーク間中継装置、及びこのネットワー
ク間中継装置内におけるパケットの扱いを識別するパケ
ットフロー識別方法を提供することを目的とする。
The present invention has been made in view of such circumstances, and by adopting a different CAM for each purpose, it is possible to easily cope with a change in specifications and services required by each network, and to implement a CAM. It is possible to reduce the required storage capacity of the entire search table including the network, reduce the manufacturing cost of the entire apparatus, and further improve the relay processing efficiency for packets. An object of the present invention is to provide a method for identifying a packet flow.

【0042】[0042]

【課題を解決するための手段】本発明は、複数のネット
ワークに接続可能であり、各ネットワークから入力され
た各パケットを別のネットワークへ中継するネットワー
ク間中継装置に適用される。
The present invention is applicable to an inter-network relay device which can be connected to a plurality of networks and relays each packet input from each network to another network.

【0043】そして、上記課題を解消するために、本発
明のネットワーク間中継装置においては、各パケットに
含まれる該当パケットの属性を示す複数の項目を検索キ
ーとし、各項目の組合せ毎にエントリ番号が設定された
複数のCAM(コンテンツ・アドレサブル・メモリ)
と、各CAMで得られるエントリ番号の組合せ毎にパケ
ットに対する中継処理情報を記憶する処理検索テーブル
と、入力されたパケットの各項目を抽出して、この各項
目で各CAMを検索して各エントリ番号を得て、この各
エントリ番号を組合せて検索アドレスを生成して、この
検索アドレスで処理検索テーブルを検索して該当パケッ
トに対応する中継処理情報を得る検索手段と、この得ら
れた中継処理情報に基づいて該当パケットを中継する中
継手段とを備えている。
In order to solve the above problem, in the inter-network relay device of the present invention, a plurality of items indicating the attribute of the packet included in each packet are used as search keys, and an entry number is assigned to each combination of items. Multiple CAMs (content addressable memory) set with
And a processing search table for storing relay processing information for a packet for each combination of entry numbers obtained in each CAM, extracting each item of an input packet, searching each CAM with this item, and searching for each entry Search means for obtaining a search number by combining the entry numbers, generating a search address, searching the processing search table with the search address to obtain the relay processing information corresponding to the packet, and the obtained relay processing. Relay means for relaying the packet based on the information.

【0044】このように構成されたネットワーク間中継
装置においては、パケットを中継するために必要な中継
処理情報の種別や目的に応じて複数のCAMを採用して
いるので、各CAMの項目の組合せ数を、全体を一つの
CAMで形成した場合における組合せ数に比較して減少
できる。さらに、種別や目的毎の検索が1回づつのCA
M検索で済むために、パケット中継処理の高速化を図る
ことができる。
In the inter-network relay apparatus configured as described above, a plurality of CAMs are employed according to the type and purpose of the relay processing information necessary for relaying a packet. The number can be reduced compared to the number of combinations when the whole is formed by one CAM. In addition, CAs that search by type or purpose once
Since only the M search is required, the speed of the packet relay process can be increased.

【0045】また、別の発明は、上述した発明のネット
ワーク間中継装置における検索手段は、各エントリ番号
を組合せたものをハッシュ演算手法を用いてデータ圧縮
して検索アドレスを生成するようにしている。
According to another aspect of the invention, the search means in the inter-network relay device of the above-described invention generates a search address by compressing data obtained by combining each entry number by using a hash calculation method. .

【0046】このように構成されたネットワーク間中継
装置においては、ハッシュ演算を行うことにより検索ア
ドレスを圧縮するので、不要なエントリ番号の組合せの
領域を必ずしも確保する必要がなくなり、結果的に処理
検索テーブルの容量を削減できる。
In the inter-network relay device configured as described above, since the search address is compressed by performing a hash operation, it is not always necessary to secure an area of an unnecessary combination of entry numbers. Table capacity can be reduced.

【0047】また、別の発明は、上述した発明のネット
ワーク間中継装置における処理検索テーブルは、ハッシ
ュ演算する前の各エントリ番号の組合せ毎に中継処理情
報を記憶するとともに、ハッシュ演算の結果発生する同
一検索アドレスを有する複数の中継処理情報を順番に検
索するための次候補ポインタを有し、検索手段は、ハッ
シュ演算により生成した検索アドレスで処理検索テーブ
ルを検索した結果、検索された中継処理情報に対応する
エントリ番号の組合せが該当検索アドレスのハッシュ演
算前のエントリ番号の組合せと不一致の場合、次候補ポ
インタの指定する中継処理情報を検索する。
According to another aspect of the present invention, the process search table in the inter-network relay device according to the above-described invention stores the relay process information for each combination of the entry numbers before the hash operation and generates the result of the hash operation. A next candidate pointer for sequentially searching for a plurality of pieces of relay processing information having the same search address, wherein the search means searches the processing search table with the search address generated by the hash operation, and finds the searched relay processing information. If the combination of the entry numbers corresponding to... Does not match the combination of the entry numbers of the corresponding search address before the hash operation, the relay processing information specified by the next candidate pointer is searched.

【0048】このように構成されたネットワーク間中継
装置においては、ハッシュ演算で圧縮された検索アドレ
スで処理検索テーブルを検索した結果、コリジョンが発
生した場合においても、正しい中継処理情報が得られ
る。
In the inter-network relay device configured as described above, as a result of searching the processing search table with the search address compressed by the hash operation, correct relay processing information can be obtained even if a collision occurs.

【0049】また、別の発明は、上述した発明のネット
ワーク間中継装置における複数のCAMは、各項目の組
合せ毎に同一中継先を指定するエントリ番号が設定され
た中継先判定CAMと、各項目の組合せ毎にパケットの
種別を示す同一クラス情報を指定するエントリ番号が設
定されたクラス判定CAMとで構成されている。さら
に、処理検索テーブルに記憶された中継処理情報は中継
先とクラス情報とで構成されている。
In another aspect of the present invention, a plurality of CAMs in the inter-network relay device according to the above-described invention include a relay destination determination CAM in which an entry number designating the same relay destination is set for each combination of items, And a class determination CAM in which an entry number for specifying the same class information indicating the type of packet is set for each combination of. Further, the relay processing information stored in the processing search table includes a relay destination and class information.

【0050】ざらに、本発明は、複数のネットワークに
接続可能であり、各ネットワークから入力された各パケ
ットを別のネットワークへ中継するネットワーク間中継
装置内におけるパケットの扱いを識別するパケットフロ
ー識別方法に適用される。
The present invention provides a packet flow identification method which is connectable to a plurality of networks, and identifies packet handling in an inter-network relay device which relays each packet input from each network to another network. Applied to

【0051】そして、上記課題を解消するために、本発
明のパケットフロー識別方法においては、入力されたパ
ケットの各項目を抽出してこの各項目で、各項目の組合
せ毎にエントリ番号が設定された複数のCAM(コンテ
ンツ・アドレサブル・メモリ)を検索して各エントリ番
号を得て、この得た各エントリ番号を組合せて検索アド
レスを生成して、この検索アドレスで、エントリ番号の
組合せ毎にパケットに対する中継処理情報を記憶する処
理検索テーブルを検索して該当パケットに対応する中継
処理情報を得る。
In order to solve the above problem, in the packet flow identification method of the present invention, each item of the input packet is extracted, and an entry number is set for each item in each of these items. A plurality of CAMs (content addressable memories) are searched to obtain respective entry numbers, and the obtained entry numbers are combined to generate a search address. With this search address, a packet is generated for each entry number combination. Then, a process search table storing the relay process information for the packet is searched to obtain the relay process information corresponding to the packet.

【0052】また、別の発明は、上述したパケットフロ
ー識別方法において、各CAMを検索して得られたエン
トリ番号を組合せたものをハッシュ演算手法を用いてデ
ータ圧縮して検索アドレスを生成するようにしている。
Further, another invention is such that, in the above-described packet flow identification method, a combination of entry numbers obtained by searching each CAM is subjected to data compression using a hash calculation method to generate a search address. I have to.

【0053】さらに、別の発明は、上述した発明のパケ
ットフロー識別方法において、処理検索テーブルに対し
て、ハッシュ演算する前の各エントリ番号の組合せ毎に
中継処理情報を記憶するとともに、ハッシュ演算の結果
発生する同一検索アドレスを有する複数の中継処理情報
を順番に検索するための次候補ポインタを付加し、ハッ
シュ演算により生成した検索アドレスで処理検索テーブ
ルを検索した結果、検索された中継処理情報に対応する
エントリ番号の組合せが該当検索アドレスのハッシュ演
算前のエントリ番号の組合せと不一致の場合、次候補ポ
インタの指定する中継処理情報を検索するようにしてい
る。
Further, another invention is the packet flow identification method according to the above invention, wherein the relay processing information is stored in the processing search table for each combination of each entry number before the hash calculation, and the hash calculation is performed. As a result of adding a next candidate pointer for sequentially searching a plurality of pieces of relay processing information having the same search address generated as a result and searching the processing search table with the search address generated by the hash operation, the searched relay processing information When the combination of the corresponding entry numbers does not match the combination of the entry numbers of the corresponding search address before the hash operation, the relay processing information specified by the next candidate pointer is searched.

【0054】[0054]

【発明の実施の形態】以下、本発明の一実施形態を図面
を用いて説明する。図1は本発明の実施形態に係るパケ
ットフロー識別方法が採用されたネットワーク間中継装
置5bの概略構成を示すブロック図である。図9、図1
0に示す従来のネットワーク間中継装置5、5aと同一
部分には同一符号が付してある。したがって、重複する
部分の詳細説明を省略する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS One embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a schematic configuration of an inter-network relay device 5b employing a packet flow identification method according to an embodiment of the present invention. 9 and 1
The same reference numerals are assigned to the same parts as those of the conventional inter-network relay devices 5, 5a shown in FIG. Therefore, the detailed description of the overlapping part will be omitted.

【0055】さらに、このネットワーク間中継装置5b
が組込まれるネットワークシステムの全体構成及びこの
ネットワーク間中継装置5bに入出力されるパケット3
の構造はそれぞれ図7、図8に示した通りである。
Further, the inter-network relay device 5b
And the packets 3 input / output to / from the inter-network relay device 5b
Are as shown in FIGS. 7 and 8, respectively.

【0056】この実施形態のネットワーク間中継装置5
bは、物理層処理部6、データリンク層処理部7、パケ
ットバッファ8、パケットバッファ制御部9、ネットワ
ーク層処理部17、中継先判定CAM18、クラス判定
CAM19、処理検索テーブルとしての中継先/クラス
情報テーブル20、優先制御処理部12、中継処理制御
部13で構成されている。
The inter-network relay device 5 of this embodiment
b denotes a physical layer processing unit 6, a data link layer processing unit 7, a packet buffer 8, a packet buffer control unit 9, a network layer processing unit 17, a relay destination determination CAM 18, a class determination CAM 19, and a relay destination / class as a process search table. It comprises an information table 20, a priority control processing unit 12, and a relay processing control unit 13.

【0057】図9、図10に示す従来の各ネットワーク
間中継装置5、5aと異なる部分は、中継先判定CAM
18、クラス判定CAM19、中継先/クラス情報テー
ブル20、ネットワーク層処理部17のみであるので、
これらについて詳細に説明する。
The difference from the conventional inter-network relay devices 5 and 5a shown in FIGS. 9 and 10 is that the relay destination determination CAM
18, the class determination CAM 19, the relay destination / class information table 20, and the network layer processing unit 17 only.
These will be described in detail.

【0058】中継先判定CAM(Contents Addressable
Memory)18は、先に説明した中継先/クラス判定C
AM15と同様に一種の検索テーブルであり、この中継
先判定CAM18内には、図2(a)に示すように、入
力されたパケット3の論理入力ポート、該当パケット3
のヘッダ3a内のサービス・タイプTOS、送信先(宛
先)アドレスDAの合計3個の項目(検索キー)に対し
て一つのエントリ番号(アドレス)が割付られている。
Relay destination determination CAM (Contents Addressable
Memory) 18 is the relay destination / class determination C described above.
As in the case of the AM 15, this is a kind of search table. In the relay destination determination CAM 18, as shown in FIG.
One entry number (address) is assigned to a total of three items (search keys) of the service type TOS and the transmission destination (destination) address DA in the header 3a.

【0059】すなわち、この中継先判定CAM18内に
は、該当パケット3の中継先を判定するために必要と考
えられる3個の項目(検索キー)に対してのみ一つのエ
ントリ番号(アドレス)が割付られているので、パケッ
ト3のヘッダ3a内の他の項目は最初から参照する必要
がないので、パケット3の数に比較して、エントリ番号
(アドレス)の設定数を大幅に減少できる。
That is, in the relay destination determination CAM 18, one entry number (address) is allocated only to three items (search keys) considered to be necessary for determining the relay destination of the packet 3. Since there is no need to refer to other items in the header 3a of the packet 3 from the beginning, the number of entry numbers (addresses) to be set can be greatly reduced as compared with the number of packets 3.

【0060】さらに、上述した論理入力ポート、サービ
ス・タイプTOS、送信先アドレスDAの3個の項目
(検索キー)のうち、「*」で示す検索に採用しない項
目が設定されている。したがって、この「*」で示す項
目はどのような値であってもよい。例えば、エントリ#
1においては、論理入力ポートとDAのみが検索対象と
なっている。同様に、エントリ#2においては、論理入
力ポート、TOS、DAの全ての項目が検索対象となっ
ている。さらに、エントリ#3においては、論理入力ポ
ート、TOSのみが検索対象となっている。さらに、エ
ントリ#4にいては、論理入力ポートのみが対象となっ
ている。
Further, among the three items (search keys) of the above-described logical input port, service type TOS, and transmission destination address DA, items not employed in the search indicated by “*” are set. Therefore, the item indicated by “*” may be any value. For example, entry #
In No. 1, only the logical input port and DA are to be searched. Similarly, in entry # 2, all items of the logical input port, TOS, and DA are to be searched. Further, in entry # 3, only the logical input port and TOS are to be searched. Further, in the entry # 4, only the logical input port is targeted.

【0061】このように、各エントリ番号(#)毎に、
中継先に応じた任意数の項目(検索キー)を設定するこ
とができる。すなわち、同一の中継先と判定することが
可能な複数のパケット3が同一のエントリ番号(アドレ
ス)となるように、検索対象の項目(検索キー)を選択
設定すればよい。よって、さらに、エントリ番号(アド
レス)の設定数を低減できる。
As described above, for each entry number (#),
Any number of items (search keys) can be set according to the relay destination. That is, the search target item (search key) may be selected and set so that the plurality of packets 3 that can be determined to be the same relay destination have the same entry number (address). Therefore, the number of entry numbers (addresses) can be further reduced.

【0062】また、クラス判定CAM(Contents Addre
ssable Memory)19内には、図2(b)に示すよう
に、入力されたパケット3の論理入力ポート、該当パケ
ット3のヘッダ3a内のサービス・タイプTOS、プロ
トコル、送信元アドレスSA、送信先(宛先)アドレス
DAの合計5個の項目(検索キー)に対して一つのエン
トリ番号(アドレス)が割付られている。
Further, a class determination CAM (Contents Addre
2B, the logical input port of the input packet 3, the service type TOS, the protocol, the transmission source address SA, and the transmission destination in the header 3a of the packet 3, as shown in FIG. One entry number (address) is assigned to a total of five items (search keys) of (destination) address DA.

【0063】すなわち、このクラス判定CAM19内に
は、該当パケット3のクラス情報を判定するために必要
と考えられる5個の項目(検索キー)に対してのみ一つ
のエントリ番号(アドレス)が割付られている。
That is, in the class determination CAM 19, one entry number (address) is assigned only to five items (search keys) considered to be necessary for determining the class information of the packet 3 concerned. ing.

【0064】さらに、上述した論理入力ポート、サービ
ス・タイプTOS、プロトコル、送信元アドレスSA、
送信先アドレスDAの5個の項目(検索キー)のうち、
「*」で示す検索に採用しない項目が設定されている。
したがって、この「*」で示す項目はどのような値であ
ってもよい。例えば、エントリ#1においては、送信元
アドレスSA、送信先アドレスDAのみが検索対象とな
っている。同様に、エントリ#2においては、論理入力
ポート、サービス・タイプTOS、プロトコル、送信元
アドレスSA、送信先アドレスDAの5個全ての項目が
検索対象となっている。さらに、エントリ#3において
は、論理入力ポート、プロトコル、送信元アドレスS
A、送信先アドレスDAの4個の項目が検索対象となっ
ている。さらに、エントリ#4にいては、論理入力ポー
トとサービス・タイプTOSのみが対象となっている。
Further, the above-mentioned logical input port, service type TOS, protocol, source address SA,
Of the five items (search key) of the transmission destination address DA,
Items that are not used in the search indicated by “*” are set.
Therefore, the item indicated by “*” may be any value. For example, in the entry # 1, only the source address SA and the destination address DA are searched. Similarly, in entry # 2, all five items of the logical input port, the service type TOS, the protocol, the source address SA, and the destination address DA are to be searched. Further, in entry # 3, the logical input port, protocol, source address S
A, four items of the transmission destination address DA are searched. Further, in the entry # 4, only the logical input port and the service type TOS are targeted.

【0065】このように、各エントリ番号(#)毎に、
クラス情報に応じた任意数の項目(検索キー)を設定す
ることができる。すなわち、同一のクラス情報と判定す
ることが可能な複数のパケット3が同一のエントリ番号
(アドレス)となるように、検索対象の項目(検索キ
ー)を選択設定すればよい。よって、さらに、エントリ
番号(アドレス)の設定数を低減できる。
As described above, for each entry number (#),
Any number of items (search keys) according to the class information can be set. That is, an item (search key) to be searched may be selected and set so that a plurality of packets 3 that can be determined to have the same class information have the same entry number (address). Therefore, the number of entry numbers (addresses) can be further reduced.

【0066】中継先/クラス情報テーブル20内には、
図3に示すように、中継先インデックスとクラス情報イ
ンデックスとの組合せに対して、中継先としての論理出
力ポート、クラス情報が設定されている。さらに、この
中継先インデックスとクラス情報インデックスとの組合
せに対して、この中継先インデックスとクラス情報イン
デックスとの組合せをハッシュ演算してビット数(デー
タ長)を圧縮して生成された検索アドレスが割付けられ
ている。
In the relay destination / class information table 20,
As shown in FIG. 3, a logical output port and a class information as a relay destination are set for a combination of the relay destination index and the class information index. Further, for the combination of the relay destination index and the class information index, a search address generated by performing a hash operation on the combination of the relay destination index and the class information index to compress the number of bits (data length) is assigned. Have been.

【0067】ここで、中継先インデックス、クラス情報
インデックスは、それぞれ中継先判定CAM18及びク
ラス判定CAM19の各エントリ番号(アドレス)であ
る。
Here, the relay destination index and the class information index are the entry numbers (addresses) of the relay destination determination CAM 18 and the class determination CAM 19, respectively.

【0068】したがって、同一の検索アドレスに対し
て、互いに値が異なる複数の中継先インデックスとクラ
ス情報インデックスとの組合せが存在する。
Therefore, there are a plurality of combinations of the relay destination index and the class information index having different values for the same search address.

【0069】さらに、ハッシュ処理を採用した検索アド
レスで検索してコリジョンが発生した時に、同一検索ア
ドレスを有する次の中継先インデックスとクラス情報イ
ンデックスとの組合せを指定する次ポイントが設定され
ている。
Further, when a collision occurs when a search is performed using a search address employing hash processing, a next point for designating a combination of a next relay destination index having the same search address and a class information index is set.

【0070】さらに、該当パケット3の中継処理制御部
(CPU)13への転送の有/無、該当パケット3の破
棄の有/無が設定されている。例えば、該当中継装置宛
のパケットは中継世せずに中継処理制御部(CPU)1
3内へ取り込む。また、例えば、ウイルス等の有害と予
め認定されているパケット3は破棄される。
Furthermore, the presence / absence of transfer of the packet 3 to the relay processing control unit (CPU) 13 and the presence / absence of discard of the packet 3 are set. For example, a packet addressed to the relay device is not relayed and the relay processing control unit (CPU) 1
Take it into 3. Also, for example, the packet 3 that has been determined in advance as being harmful, such as a virus, is discarded.

【0071】ネットワーク層処理部17は、中継先判定
CAM18、クラス判定CAM19、中継先/クラス情
報テーブル20から、入力されたパケット3の中継先及
びクラス情報を取得すると共に、該当パケット3の正当
性を判定する機能を有する。
The network layer processing unit 17 acquires the relay destination and class information of the input packet 3 from the relay destination determination CAM 18, the class determination CAM 19, and the relay destination / class information table 20, and checks the validity of the packet 3 Has the function of determining

【0072】そして、このネットワーク層処理部17内
には、図4に示すように、パケット処理制御部21、パ
ケット受信部22、パケット蓄積メモリ23、パケット
解析部24、中継処理フロー識別部25、パケット送信
部26、優先制御処理部インタフェース27が設けられ
ている。
As shown in FIG. 4, in the network layer processing section 17, a packet processing control section 21, a packet receiving section 22, a packet storage memory 23, a packet analyzing section 24, a relay processing flow identifying section 25, A packet transmission unit 26 and a priority control processing unit interface 27 are provided.

【0073】次に、このように構成されたネットワーク
層処理部17の内部動作を順を追って説明する。パケッ
ト処理制御部21は、パケットバッファ制御部9から、
パケット3が格納されているパケットバッファ8のアド
レスとともにパケット3の受信通知を受けると、パケッ
ト受信部22に対して、パケットバッファ7からのパケ
ット3の読出し処理の開始を指示する。
Next, the internal operation of the network layer processing unit 17 configured as described above will be described step by step. The packet processing control unit 21 sends the packet processing control unit 21
When receiving the reception notification of the packet 3 together with the address of the packet buffer 8 in which the packet 3 is stored, it instructs the packet receiving unit 22 to start the process of reading the packet 3 from the packet buffer 7.

【0074】パケット受信部22はパケットバッファ8
からパケット3を読出し、パケット蓄積メモリ23に格
納する。パケット受信部22はパケット3の格納が終了
した時点で、読出し処理の終了をパケット処理制御部2
1に対して通知する。パケット制御部21はパケット受
信部22からの読出し処理の終了通知を受けると、パケ
ット解析部24に対して解析処理の開始を通知する。
The packet receiving section 22 includes a packet buffer 8
, And stores the packet 3 in the packet storage memory 23. When the storage of the packet 3 is completed, the packet receiving unit 22 notifies the end of the reading process to the packet processing control unit 2.
Notify 1 Upon receiving the read processing end notification from the packet receiving unit 22, the packet control unit 21 notifies the packet analysis unit 24 of the start of the analysis processing.

【0075】パケット解析部24はパケット蓄積メモリ
23に格納されているパケット3を参照することで、O
SI参照モデル上におけるレイヤ2フレームフォーマッ
トを特定し、レイヤ3ヘッダの先頭位置を特定する。パ
ケット解析部24は、その解析結果をパケット蓄積メモ
リ23に格納し、パケット処理制御部21に対して解析
処理の終了を通知する。なお、パケット解析部24を設
けている理由としては、このネットワーク間中継装置5
bに入力されるパケット3のレイヤ2フレームフォーマ
ットに複数のフォーマットがあることを想定しているた
めである。
The packet analysis unit 24 refers to the packet 3 stored in the packet storage memory 23, and
The layer 2 frame format on the SI reference model is specified, and the head position of the layer 3 header is specified. The packet analysis unit 24 stores the analysis result in the packet storage memory 23 and notifies the packet processing control unit 21 of the end of the analysis processing. The reason why the packet analysis unit 24 is provided is that the inter-network relay device 5
This is because it is assumed that there are a plurality of formats in the layer 2 frame format of the packet 3 input to b.

【0076】パケット処理制御部21は、中継処理/フ
ロー識別部25に対して、該当パケット3に対する処理
の開始を指示する。中継処理/フロー識別部25はパケ
ット蓄積メモリ23からパケット3を読出し、パケット
3の正当性を確認し、中継先及びクラス情報を取得す
る。中継先及びクラス情報の取得は、前述した中継先判
定CAM18、クラス判定CAM19、中継先/クラス
情報テーブル20を使用して行う。
The packet processing control unit 21 instructs the relay processing / flow identification unit 25 to start processing for the packet 3. The relay processing / flow identification unit 25 reads the packet 3 from the packet storage memory 23, confirms the validity of the packet 3, and acquires relay destination and class information. The acquisition of the relay destination and class information is performed using the relay destination determination CAM 18, the class determination CAM 19, and the relay destination / class information table 20 described above.

【0077】中継処理/フロー識別部25は処理の結果
(該当パケット3の正当性、中継先、クラス情報)をパ
ケット蓄積メモリ23に格納し、パケット処理制御部2
1に対して処理の終了を通知する。
The relay processing / flow identification unit 25 stores the processing result (validity of the corresponding packet 3, relay destination, class information) in the packet storage memory 23,
1 is notified of the end of the process.

【0078】パケット処理制御部21はパケット送信部
26に対してパケットバッファ8へのパケット3の書込
み処理の開始を通知する。パケット送信部26はパケッ
ト蓄積メモリ23からパケット3を読出し、パケットバ
ッファ8に格納する。パケット送信部26はパケット3
の格納を終了した後、パケット処理制御部21に書込み
処理の終了を通知する。
The packet processing controller 21 notifies the packet transmitter 26 of the start of the process of writing the packet 3 to the packet buffer 8. The packet transmitting unit 26 reads out the packet 3 from the packet storage memory 23 and stores it in the packet buffer 8. The packet transmitting unit 26 receives the packet 3
Is completed, the packet processing control unit 21 is notified of the end of the writing process.

【0079】なお、パケットバッファ8への再度の書込
みが必要な理由としては、ヘッダ3aの各項目が別の値
で置換される場合や、ヘッダ3aのカプセル化・デカプ
セル化により、ヘッダ3aの挿入・削除が必要になる場
合があるからである。
The reason why it is necessary to rewrite the packet 3 into the packet buffer 8 is that each item of the header 3a is replaced with another value, or that the header 3a is inserted by the encapsulation and decapsulation of the header 3a.・ This is because deletion may be required.

【0080】パケット処理制御部21は、優先制御処理
部インタフェース27に対して処理の開始を通知する。
優先制御処理部インタフェース27はパケット蓄積メモ
リ23に格納されているクラス情報を、該当するパケッ
ト3が格納されているパケットバッファ8のアドレスと
ともに優先制御処理部12に通知する。
The packet processing control section 21 notifies the priority control processing section interface 27 of the start of processing.
The priority control processing unit interface 27 notifies the priority control processing unit 12 of the class information stored in the packet storage memory 23 together with the address of the packet buffer 8 in which the corresponding packet 3 is stored.

【0081】パケット処理制御部21は、優先制御処理
部インタフェース27から処理の終了が通知されると、
対象となるパケット3が格納されているパケットバッフ
ァ8のアドレス及び中継先とともに、パケットバッファ
制御部9に対して、ネットワーク層処理の終了を通知す
る。
When the end of the processing is notified from the priority control processing section interface 27, the packet processing control section 21
The packet buffer control unit 9 is notified of the end of the network layer processing, together with the address of the packet buffer 8 in which the target packet 3 is stored and the relay destination.

【0082】次に、中継先判定CAM18、クラス判定
CAM19、中継先/クラス情報テーブル20を用いて
該当パケット3の中継先、クラス情報を得る中継処理/
フロー識別部25の詳細構成及び詳細動作を説明する。
Next, using the relay destination determination CAM 18, the class determination CAM 19, and the relay destination / class information table 20, a relay process for obtaining the relay destination and class information of the packet 3
The detailed configuration and operation of the flow identification unit 25 will be described.

【0083】この中継処理/フロー識別部25内には、
図5に示すように、パケット蓄積メモリ制御部28、ヘ
ッダ処理部29、中継先判定CAM制御部30、クラス
判定CAM制御部31、アドレス発生部32、中継先/
クラス情報テーブル制御部33が設けられている。
In the relay processing / flow identification unit 25,
As shown in FIG. 5, the packet storage memory control unit 28, the header processing unit 29, the relay destination determination CAM control unit 30, the class determination CAM control unit 31, the address generation unit 32, the relay destination /
A class information table control unit 33 is provided.

【0084】この中継処理/フロー識別部25の具体的
処理動作を、図2の中継先判定CAM18及びクラス判
定CAM19、図3の中継先/クラス情報テーブル2
0、及び図6に示す流れ図を用いて説明する。
The specific processing operation of the relay processing / flow identification unit 25 is described in the relay destination determination CAM 18 and the class determination CAM 19 in FIG. 2 and the relay destination / class information table 2 in FIG.
0, and a flowchart shown in FIG.

【0085】先ず、図4のパケット処理制御部21から
処理開始の通知を受けると、図5のパケット蓄積メモリ
制御部28はパケット蓄積メモリ23に格納されている
パケット解析部24で得られた該当パケット3のヘッダ
3aの先頭位置を参照し、該当する位置からパケット3
を読出す。得られたパケット3のヘッダ3aを構成する
各項目データからなるパケットデータは、ヘッダ処理部
29、中継先判定CAM制御部30及びクラス判定CA
M制御部31に渡される。
First, upon receiving a notification of the start of processing from the packet processing control unit 21 in FIG. 4, the packet storage memory control unit 28 in FIG. 5 receives the notification from the packet analysis unit 24 stored in the packet storage memory 23. Referring to the head position of the header 3a of the packet 3, the packet 3
Is read. The packet data composed of each item data constituting the header 3a of the obtained packet 3 is sent to the header processing unit 29, the relay destination determination CAM control unit 30, and the class determination CA
It is passed to the M control unit 31.

【0086】ヘッダ処理部29は、このパケット3の正
当性確認を行う。パケット3の正当性確認には、該当パ
ケット3の図8に示したヘッダ3aにおけるバージョン
(Version)が“4”であることの確認、ヘッダ長(Int
ernet Header Length)が“5”以上であることの確
認、パケット長(Total Length)が正しいことの確認、
生存時間TTLを減算し、減算後の生存時間TTLが
“1”以上であることの確認、チェックサム(Header C
hecksum)が正しいことの確認等の処理が含まれる。
The header processing unit 29 confirms the validity of the packet 3. The validity check of the packet 3 includes checking that the version (Version) in the header 3a of the packet 3 shown in FIG.
ernet Header Length) is more than "5", packet length (Total Length) is correct,
The survival time TTL is subtracted, the survival time TTL after the subtraction is confirmed to be “1” or more, and a checksum (Header C)
hecksum) is correct.

【0087】ヘッダ処理部29は、パケット3の正当性
を確認した後、その確認結果(パケットが正当であるか
・正当でないか)をパケット蓄積メモリ制御部28に通
知する。
After confirming the validity of the packet 3, the header processing unit 29 notifies the packet storage memory control unit 28 of the confirmation result (whether the packet is valid or not).

【0088】中継先判定CAM制御部30は、与えられ
た該当パケット3のパケットデータの各項目データのう
ちのTOS、送信先アドレスDA、及び該当パケット3
の論理入力ポートを用いて、図2(a)に示す中継先判
定CAM18を検索し、各項目の値が一致したエントリ
番号(アドレス)の有無を調べる。中継先判定CAM制
御部30は、一致したエントリ番号(アドレス)をアド
レス生成部32に通知する。なお、中継先判定CAM制
御部30は、一致したエントリ番号(アドレス)が存在
しない場合において、存在しないことをアドレス生成部
32に通知する(図6のステップS1)。
The relay destination determination CAM control unit 30 determines the TOS, the destination address DA, and the corresponding packet 3 of each item data of the given packet data of the corresponding packet 3.
Using the logical input port of (1), the relay destination determination CAM 18 shown in FIG. 2A is searched to determine whether there is an entry number (address) in which the value of each item matches. The relay destination determination CAM control unit 30 notifies the address generation unit 32 of the matching entry number (address). When there is no matching entry number (address), the relay destination determination CAM control unit 30 notifies the address generation unit 32 that there is no matching entry number (address) (step S1 in FIG. 6).

【0089】同様に、クラス判定CAM制御部31は、
与えられた該当パケット3のパケットデータの各項目デ
ータのうちのTOS、プロトコル、送信元アドレスS
A、信先アドレスDA、及び該当パケット3の論理入力
ポートを用いて、図2(b)に示すクラス判定CAM1
9を検索し、各項目の値が一致したエントリ番号(アド
レス)の有無を調べる。クラス判定CAM制御部31
は、一致したエントリ番号(アドレス)をアドレス生成
部32に通知する。なお、クラス判定CAM制御部31
は、一致したエントリ番号(アドレス)が存在しない場
合において、存在しないことをアドレス生成部32に通
知する(図6のステップS2)。
Similarly, the class determination CAM control unit 31
TOS, protocol, source address S in each item data of the packet data of the given packet 3
A, the destination address DA, and the logical input port of the corresponding packet 3, the class determination CAM1 shown in FIG.
9 to determine whether there is an entry number (address) that matches the value of each item. Class determination CAM control unit 31
Notifies the address generation unit 32 of the matching entry number (address). The class determination CAM control unit 31
Notifies the address generation unit 32 that no matching entry number (address) exists (step S2 in FIG. 6).

【0090】アドレス生成部32は、中継先判定CAM
制御部30及びクラス判定CAM制御部31から通知さ
れた各エントリ番号のアドレスを基にして、中継先/ク
ラス情報テーブル20を検索するための検索アドレスを
生成する。
The address generation unit 32 is a relay destination determination CAM
Based on the address of each entry number notified from the control unit 30 and the class determination CAM control unit 31, a search address for searching the relay destination / class information table 20 is generated.

【0091】この場合、中継先/クラス情報テーブル2
0の必要な記憶容量を削減するために検索アドレスのデ
ータ圧縮を実施する。すなわち、中継先判定CAM制御
部30及びクラス判定CAM制御部31から通知された
各エントリ番号を、それぞれ、中継先インデックス、ク
ラス情報インデックスと称する。
In this case, the relay destination / class information table 2
Data compression of the search address is performed to reduce the required storage capacity of zero. That is, the entry numbers notified from the relay destination determination CAM control unit 30 and the class determination CAM control unit 31 are called a relay destination index and a class information index, respectively.

【0092】そして、アドレス生成部32は、この中継
先インデックスとクラス情報インデックスとを合成した
ものをハッシュ演算してビット数(データ長)を圧縮し
て検索アドレスとし、作成した検索アドレスを中継先/
クラス情報テーブル制御部33へ通知する(図6のステ
ップS3)。
Then, the address generation unit 32 performs a hash operation on a composite of the relay destination index and the class information index to compress the number of bits (data length) as a search address, and uses the created search address as the relay destination. /
It notifies the class information table control unit 33 (step S3 in FIG. 6).

【0093】中継先/クラス情報テーブル制御部33は
アドレス生成部28から通知される検索アドレスを使用
して、中継先/クラス情報テーブル20を参照する(図
6のステップS4)。
The relay destination / class information table control unit 33 refers to the relay destination / class information table 20 using the search address notified from the address generation unit 28 (step S4 in FIG. 6).

【0094】この場合、ハッシュ演算により検索アドレ
ス空間が圧縮されているため、同一検索アドレスを有す
る他の中継先インデックスとクラス情報インデックスの
組合せを検索するコリジョンが発生する可能性がある。
In this case, since the search address space is compressed by the hash operation, there is a possibility that a collision for searching for another combination of the relay destination index and the class information index having the same search address may occur.

【0095】そのため、中継先/クラス情報テーブル2
0の検索アドレスが指定した中継先インデックスとクラ
ス情報インデックスとを、該当検索アドレスの圧縮する
前の各エントリ番号(アドレス)と比較して、参照した
検索アドレスを使用すべきか否かを判定する(図6のス
テップS5)。
Therefore, the relay destination / class information table 2
The relay destination index and the class information index designated by the search address 0 are compared with the entry numbers (addresses) of the corresponding search address before compression, and it is determined whether or not the referenced search address should be used ( Step S5 in FIG. 6).

【0096】検索アドレスが指定したそれぞれのインデ
ックスが圧縮する前の各エントリ番号(アドレス)に一
致すれば、中継先/クラス情報テーブル20内の当該検
索アドレスが指定する中継先(論理出力ポート)及びク
ラス情報を取得する(図6のステップS6)。
If each index specified by the search address matches each entry number (address) before compression, the relay destination (logical output port) specified by the search address in the relay destination / class information table 20 and The class information is acquired (Step S6 in FIG. 6).

【0097】インデックスが一致しない場合は、当該検
索アドレスが指定する次ポインタを取得し(図6のステ
ップS7)、この次ポインタの指定する中継先/クラス
情報テーブル20内の中継先インデックスとクラス情報
インデックスを再度参照する。以降、インデックスが一
致するか、次ポインタがNullポインタになるまで(図6
のステップS8)同様の処理を繰り返す。
If the indexes do not match, the next pointer specified by the search address is obtained (step S7 in FIG. 6), and the relay destination index and the class information in the relay destination / class information table 20 specified by the next pointer are obtained. Look up the index again. Thereafter, until the index matches or the next pointer becomes a null pointer (FIG. 6).
Step S8) Similar processing is repeated.

【0098】なお、Nullポインタとは、以降に該当する
中継先インデックスとクラス情報インデックスが存在し
ないことを示す特別なポインタであり、中継先/クラス
情報テーブル20に該当する中継先(論理出力ポート)
及びクラス情報が登録されていないことを示している。
Note that the null pointer is a special pointer indicating that there is no subsequent relay destination index and class information index, and a relay destination (logical output port) corresponding to the relay destination / class information table 20.
And that the class information is not registered.

【0099】図6の流れ図に示す通り、中継先判定CA
M18の検索又はクラス判定CAM19の検索において
インデックスが一致する検索アドレスが存在しない場合
や、最終的にNullポインタが得られた場合は、ネットワ
ーク層処理部17が処理できないパケット3として、中
継処理制御部(CPU)13に転送する指示を行う(図
6のステップS9)。
As shown in the flowchart of FIG. 6, the relay destination determination CA
If there is no search address whose index matches in the search of the M18 or the search of the class determination CAM 19, or if a null pointer is finally obtained, the packet is processed by the relay processing control unit (CPU) 13 is instructed to transfer (step S9 in FIG. 6).

【0100】それぞれのインデックスが一致した場合、
中継先/クラス情報テーブル制御部33は取得した中継
先(論理出力ポート)、クラス情報等をパケット蓄積メ
モリ制御部28に通知する。
If the respective indexes match,
The relay destination / class information table control unit 33 notifies the packet storage memory control unit 28 of the obtained relay destination (logical output port), class information, and the like.

【0101】パケット蓄積メモリ制御部28は、該当パ
ケット3を、取得した中継先(論理出力ポート)、クラ
ス情報等とともに、パケット蓄積メモリ23に書込む。
パケット蓄積メモリ制御部28は、パケット蓄積メモリ
23への書込み終了後、パケット処理制御部21に対し
て、処理の終了を通知する。
The packet storage memory control unit 28 writes the packet 3 into the packet storage memory 23 together with the obtained relay destination (logical output port), class information, and the like.
After the writing to the packet storage memory 23 is completed, the packet storage memory control unit 28 notifies the packet processing control unit 21 of the end of the processing.

【0102】以上の入力されたパケット3に対する処理
動作を行うネットワーク層処理部17が組込まれたネッ
トワーク間中継装置5bの全体動作を図1を用いて説明
する。
The overall operation of the inter-network relay device 5b incorporating the network layer processing unit 17 for performing the processing operation on the input packet 3 will be described with reference to FIG.

【0103】物理層処理部6は、回線4a〜4cから入
力されたパケット3に対して、物理回線の制御等、OS
I参照モデル上における物理層の処理を行い、データリ
ンク層処理部7へ転送する。データリンク層処理部7
は、物理層処理部6を経由したパケット3に対して、ノ
ード間の物理回線上に設定された論理回線の制御等、デ
ータリンク層の処理を行い、パケットバッファ8内のパ
ケットバッファ制御部9が指定したアドレスに書込むと
ともに、パケットバッファ制御部9へパケット3のパケ
ットバッファ8に対する格納報告を行う。
The physical layer processing unit 6 applies an OS such as control of a physical line to the packet 3 input from the lines 4a to 4c.
It performs the processing of the physical layer on the I reference model and transfers it to the data link layer processing unit 7. Data link layer processing unit 7
Performs data link layer processing, such as control of a logical line set on a physical line between nodes, on the packet 3 passed through the physical layer processing unit 6, and performs packet buffer control unit 9 in the packet buffer 8. Write to the designated address and report the storage of the packet 3 to the packet buffer 8 to the packet buffer controller 9.

【0104】パケットバッファ8は、物理層処理部6及
びデータリンク層処理部7で処理された後のパケット3
を一時記憶する。パケットバッファ制御部9は、パケッ
トバッファ8のバッファ管理を行う。すなわち、データ
リンク層処理部7に対して次に送受信すべきパケット3
が格納されるパケットバッファ8内のバッファアドレス
を通知し、ネットワーク層処理部10に対して、次に処
理すべきパケット3が格納されているバッファアドレス
を通知する。
The packet buffer 8 stores the packet 3 processed by the physical layer processing unit 6 and the data link layer processing unit 7.
Is temporarily stored. The packet buffer control unit 9 manages the buffer of the packet buffer 8. That is, the packet 3 to be transmitted / received next to the data link layer processing unit 7
Is notified of the buffer address in the packet buffer 8 where the packet 3 is stored, and the buffer address where the packet 3 to be processed next is stored is notified to the network layer processing unit 10.

【0105】ネットワーク層処理部17は、中継先判定
CAM18、クラス判定CAM19、中継先/クラス情
報テーブル20から入力されたパケット3の中継先(論
理出力ポート)及びクラス情報を取得すると共に、該当
パケット3の正当性を判定する。そして、ネットワーク
層処理部17は、正当なパケット3であることが確認さ
れた場合には、バッファアドレスとともに取得した中継
先(論理出力ポート)をパケットバッファ制御部9へ通
知するとともに、取得した該当パケットのクラス情報を
優先制御処理部12へ通知する。逆に、不当なパケット
3の場合は、パケットバッファ制御部9にバッファアド
レスともにエラー情報を通知する。
The network layer processing unit 17 obtains the relay destination (logical output port) and class information of the packet 3 input from the relay destination determination CAM 18, the class determination CAM 19, and the relay destination / class information table 20, and 3 is determined. Then, when it is confirmed that the packet is a valid packet 3, the network layer processing unit 17 notifies the packet buffer control unit 9 of the obtained relay destination (logical output port) together with the buffer address, and It notifies the priority control processing unit 12 of the class information of the packet. Conversely, if the packet 3 is invalid, the packet buffer control unit 9 is notified of the error information together with the buffer address.

【0106】優先制御処理部12は、ネットワーク層処
理部17から通知されたクラス情報を基にして送信待ち
の他のパケット3との間における優先順位付け等の優先
制御を行い、パケット3毎に送信タイミングを決定し、
パケットバッファ制御部9に通知する。
The priority control processing unit 12 performs priority control such as prioritization with other packets 3 waiting to be transmitted based on the class information notified from the network layer processing unit 17, and performs priority control for each packet 3. Determine the transmission timing,
Notify the packet buffer control unit 9.

【0107】パケットバッファ制御部9は優先制御処理
部12から通知されるパケット3の送信タイミングに従
い、データリンク層処理部7に対して、バッファアドレ
スとともに中継先の論理出力ポートを指定してパケット
3の送信通知を行う。
According to the transmission timing of the packet 3 notified from the priority control processing unit 12, the packet buffer control unit 9 designates the logical output port of the relay destination together with the buffer address to the data link layer processing unit 7, Notification of transmission.

【0108】データリンク層処理部7は、パケットバッ
ファ制御部9の指示に従ってパケットバッファ8よりパ
ケット3を読出し、物理層処理部6を経て、指定された
論理出力ポートに接続された回線4a〜4cにパケット
3を送出する。
The data link layer processing unit 7 reads out the packet 3 from the packet buffer 8 in accordance with the instruction of the packet buffer control unit 9, and passes through the physical layer processing unit 6 to the lines 4 a to 4 c connected to the designated logical output ports. To the packet 3.

【0109】なお、中継処理制御部13は、このネット
ワーク間中継処理装置5b全体の制御を行い、各処理部
における各種のパラメータの初期設定及び、ネットワー
ク層処理部17で中継先(論理出力ポート)及びクラス
情報を取得処理できないパケット3に対する処理を実施
する。
The relay processing control section 13 controls the entire inter-network relay processing apparatus 5b, initializes various parameters in each processing section, and sets a relay destination (logical output port) in the network layer processing section 17. And a process for the packet 3 for which the class information cannot be obtained and processed.

【0110】このように構成されたネットワーク間中継
装置5bにおいては、入力されたパケット3の中継先を
判定するための中継先判定CAM18と、入力されたパ
ケット3のクラス情報を判定するためのクラス判定CA
M19とを別々のCAMで実現している。
In the inter-network relay apparatus 5b thus configured, a relay destination determination CAM 18 for determining the relay destination of the input packet 3 and a class for determining the class information of the input packet 3 Judgment CA
M19 and M19 are realized by separate CAMs.

【0111】したがって、中継先判定CAM18におい
ては、パケット3の論理入力ポート及びヘッダ3aに設
定され各項目のうち、中継先を判定するのに必要な項目
のみを検索項目に採用できる。同様に、クラス判定CA
M19においては、パケット3の論理入力ポート及びヘ
ッダ3aに設定されえた各項目のうち、クラス情報判定
するのに必要な項目のみを検索項目に採用できる。
Therefore, in the relay destination determination CAM 18, only the items necessary for determining the relay destination among the items set in the logical input port of the packet 3 and the header 3a can be adopted as the search items. Similarly, class determination CA
In M19, of the items set in the logical input port of the packet 3 and the header 3a, only items necessary for determining the class information can be adopted as search items.

【0112】その結果、中継先判定CAM18とクラス
判定CAM19とを合わせた設定するエントリ番号(ア
ドレス)数を、図10に示す従来のネットワーク間中継
装置5aにおける中継先/クラス判定CAM15にて設
定すべきエントリ番号(アドレス)数に比較して大幅に
低減できる。
As a result, the number of entry numbers (addresses) to be set by combining the relay destination determination CAM 18 and the class determination CAM 19 is set by the relay destination / class determination CAM 15 in the conventional inter-network relay device 5a shown in FIG. The number can be greatly reduced as compared with the number of entry numbers (addresses) to be provided.

【0113】ちなみに、図10に示す従来のネットワー
ク間中継装置5aにおける中継先/クラス判定CAM1
5においては、中継先とクラス情報とのいずれか一方で
も関係する項目に対しては該当項目を検索対象に加える
必要があり、項目の組合せが多い分だけこの中継先/ク
ラス判定CAM15に設定すべきエントリ番号(アドレ
ス)数は増加する。
Incidentally, the relay destination / class determination CAM1 in the conventional inter-network relay device 5a shown in FIG.
In 5, for items related to either the relay destination or the class information, it is necessary to add the relevant item to the search target, and the relay destination / class determination CAM 15 is set as many as the number of combinations of items is. The number of entry numbers (addresses) to be increased increases.

【0114】したがって、中継先/クラス情報テーブル
20に設定される検索アドレス数も図10に示す従来の
ネットワーク間中継装置5aにおける中継先/クラス情
報テーブル16に比較して大幅に低減できる。
Therefore, the number of search addresses set in the relay destination / class information table 20 can be greatly reduced as compared with the relay destination / class information table 16 in the conventional inter-network relay device 5a shown in FIG.

【0115】このように、各判定CAM15、16及び
テーブル20におけるエントリ番号(アドレス)数及び
検索アドレス数を減少できるので、ネットワーク層処理
部17における、入力されたパケット3の中継先及びク
ラス情報の検索(取得)処理能率を大幅に向上できると
ともに、各判定CAM15、16及びテーブル20必要
とする記憶容量を大幅に低減でき、ネットワーク間中継
装置5b全体の製造費を節減できる。
As described above, the number of entry numbers (addresses) and the number of search addresses in each of the determination CAMs 15 and 16 and the table 20 can be reduced. The search (acquisition) processing efficiency can be greatly improved, the storage capacity required for each of the determination CAMs 15, 16 and the table 20 can be significantly reduced, and the manufacturing cost of the entire inter-network relay device 5b can be reduced.

【0116】さらに、中継先判定CAM18とクラス判
定CAM19とを別々のCAMで実現しているので、ネ
ットワーク1a、1b、1cの接続構成が変化したり、
提供するサービスや仕様が変更になった場合は、中継先
判定CAM18とクラス判定CAM19との記憶内容を
変更する必要があるが、中継先又はクラス情報の関係す
る判定CAM18、19のみを変更するのみでよいの
で、ネットワークシステの仕様変更やサービス変更に対
して柔軟に対処することができる。
Further, since the relay destination determination CAM 18 and the class determination CAM 19 are realized by different CAMs, the connection configuration of the networks 1a, 1b, and 1c may change.
When the service or specification to be provided is changed, the storage contents of the relay destination determination CAM 18 and the class determination CAM 19 need to be changed, but only the determination CAMs 18 and 19 related to the relay destination or the class information are changed. Therefore, it is possible to flexibly cope with a change in the specifications of the network system or a change in the service.

【0117】さらに、中継先/クラス情報テーブル20
を検索する検索アドレスに対してハッシュ演算手法を用
いてデータ圧縮するとともに、中継先/クラス情報テー
ブル20の各領域に、ハッシュ演算の結果発生する同一
検索アドレスを有する複数の中継先及びクラス情報を順
番に検索するための次ポイントを設けている。
Further, the relay destination / class information table 20
A plurality of relay destinations and class information having the same search address generated as a result of the hash operation are stored in each area of the relay destination / class information table 20 while compressing data using a hash operation method for a search address for searching for A next point for searching in order is provided.

【0118】したがって、ハッシュ演算で圧縮された検
索アドレスで中継先/クラス情報テーブル20を検索し
た結果、コリジョンが発生した場合においても、正しい
中継先及びクラス情報が得られる。
Therefore, as a result of searching the relay destination / class information table 20 with the search address compressed by the hash operation, correct relay destination and class information can be obtained even if a collision occurs.

【0119】[0119]

【発明の効果】以上説明したように、本発明のネットワ
ーク間中継装置及びパケットフロー識別方法において
は、各目的毎に項目の組合せが異なる複数のCAMを採
用している。したがって、各ネットワークが要求する仕
様・サービスの変更に簡単に対応でき、かつCAMを含
めた全体の検索テーブルの必要記憶容量を節減でき、装
置全体の製造費を低減でき、さらに、パケットに対する
中継処理能率を向上できる。
As described above, the inter-network relay device and the packet flow identification method of the present invention employ a plurality of CAMs having different combinations of items for each purpose. Therefore, it is possible to easily cope with a change in specifications and services required by each network, to reduce the required storage capacity of the entire search table including the CAM, to reduce the manufacturing cost of the entire device, and to perform a relay process for packets. Efficiency can be improved.

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

【図1】本発明の一実施形態に係わるネットワーク間中
継装置の概略構成を示すブロック図
FIG. 1 is a block diagram showing a schematic configuration of an inter-network relay device according to an embodiment of the present invention;

【図2】同ネットワーク間中継装置内に形成された中継
先判定CAM及びクラス判定CAMの記憶内容を示す図
FIG. 2 is a diagram showing storage contents of a relay destination determination CAM and a class determination CAM formed in the inter-network relay device.

【図3】同ネットワーク間中継装置内に形成された中継
先/クラス情報テーブルの記憶内容を示す図
FIG. 3 is a view showing the storage contents of a relay destination / class information table formed in the inter-network relay device.

【図4】同ネットワーク間中継装置におけるネットワー
ク層処理部の構成を示すブロック図
FIG. 4 is a block diagram showing a configuration of a network layer processing unit in the inter-network relay device.

【図5】同ネットワーク層処理部における中継処理フロ
ー識別部の詳細構成を示すブロック図
FIG. 5 is a block diagram showing a detailed configuration of a relay processing flow identification unit in the network layer processing unit;

【図6】同ネットワーク間中継装置における中継処理フ
ロー識別部の処理動作を示す流れ図
FIG. 6 is a flowchart showing a processing operation of a relay processing flow identification unit in the inter-network relay apparatus.

【図7】一般的なネットワークシステムを示す模式図FIG. 7 is a schematic diagram showing a general network system.

【図8】ネットワーク間で送受信されるパケットの構成
を示すフォーマット図
FIG. 8 is a format diagram showing a configuration of a packet transmitted and received between networks.

【図9】従来のネットワーク間中継装置の概略構成を示
すブロック図
FIG. 9 is a block diagram showing a schematic configuration of a conventional inter-network relay device.

【図10】別の従来のネットワーク間中継装置の概略構
成を示すブロック図
FIG. 10 is a block diagram showing a schematic configuration of another conventional inter-network relay device.

【図11】同従来のネットワーク間中継装置内に形成さ
れた中継先/クラス判定CAM及び中継先/クラス情報
テーブルの記憶内容を示す図
FIG. 11 is a diagram showing storage contents of a relay destination / class determination CAM and a relay destination / class information table formed in the conventional inter-network relay device.

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

1a、1b、1c…ネットワーク 5、5a、5b…ネットワーク間中継装置 6…物理層処理部 7…データリンク層処理部 8…パケットバッファ 9…パケットバッファ制御部 12…優先制御処理部 13…中継処理制御部(CPU) 17…ネットワーク層処理部 18…中継先判定CAM 19…クラス判定CAM 20…中継先/クラス情報テーブル 25…中継処理/フロー識別部 1a, 1b, 1c: Network 5, 5a, 5b: Inter-network relay device 6: Physical layer processing unit 7: Data link layer processing unit 8: Packet buffer 9: Packet buffer control unit 12: Priority control processing unit 13: Relay processing Control unit (CPU) 17 Network layer processing unit 18 Relay destination determination CAM 19 Class determination CAM 20 Relay destination / class information table 25 Relay processing / flow identification unit

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 複数のネットワークに接続可能であり、
各ネットワークから入力された各パケットを別のネット
ワークへ中継するネットワーク間中継装置において、 前記各パケットに含まれる該当パケットの属性を示す複
数の項目を検索キーとし、各項目の組合せ毎にエントリ
番号が設定された複数のCAM(コンテンツ・アドレサ
ブル・メモリ)と、 前記各CAMで得られるエントリ番号の組合せ毎に前記
パケットに対する中継処理情報を記憶する処理検索テー
ブルと、 前記入力されたパケットの各項目を抽出して、この各項
目で前記各CAMを検索して各エントリ番号を得て、こ
の各エントリ番号を組合せて検索アドレスを生成して、
この検索アドレスで前記処理検索テーブルを検索して該
当パケットに対応する中継処理情報を得る検索手段と、 この得られた中継処理情報に基づいて該当パケットを中
継する中継手段とを備えたことを特徴とするネットワー
ク間中継装置。
Claims: 1. It is connectable to a plurality of networks,
In an inter-network relay device that relays each packet input from each network to another network, a plurality of items indicating attributes of the packet included in each packet are used as search keys, and an entry number is set for each combination of items. A plurality of set CAMs (content addressable memories); a processing search table for storing relay processing information for the packets for each combination of entry numbers obtained by the CAMs; Extracting, searching each CAM with each item to obtain each entry number, generating a search address by combining each entry number,
Search means for searching the processing search table with the search address to obtain relay processing information corresponding to the packet, and relay means for relaying the packet based on the obtained relay processing information. Inter-network relay device.
【請求項2】 前記検索手段は、前記各エントリ番号を
組合せたものをハッシュ演算手法を用いてデータ圧縮し
て検索アドレスを生成することを特徴とする請求項1記
載のネットワーク間中継装置。
2. The inter-network relay device according to claim 1, wherein the search means generates a search address by compressing data obtained by combining the respective entry numbers using a hash calculation method.
【請求項3】 前記処理検索テーブルは、ハッシュ演算
する前の各エントリ番号の組合せ毎に中継処理情報を記
憶するとともに、ハッシュ演算の結果発生する同一検索
アドレスを有する複数の中継処理情報を順番に検索する
ための次候補ポインタを有し、 前記検索手段は、ハッシュ演算により生成した検索アド
レスで前記処理検索テーブルを検索した結果、検索され
た中継処理情報に対応するエントリ番号の組合せが該当
検索アドレスのハッシュ演算前のエントリ番号の組合せ
と不一致の場合、次候補ポインタの指定する中継処理情
報を検索することを特徴とする請求項2記載のネットワ
ーク間中継装置。
3. The process search table stores relay process information for each combination of entry numbers before hash calculation, and sequentially stores a plurality of relay process information having the same search address generated as a result of hash calculation. The search means has a next candidate pointer for searching, and as a result of searching the processing search table with a search address generated by a hash operation, a combination of an entry number corresponding to the searched relay processing information is a search address. 3. The inter-network relay device according to claim 2, wherein when the combination does not match the entry number before the hash operation, the relay processing information specified by the next candidate pointer is searched.
【請求項4】 前記複数のCAMは、各項目の組合せ毎
に同一中継先を指定するエントリ番号が設定された中継
先判定CAMと、各項目の組合せ毎にパケットの種別を
示す同一クラス情報を指定するエントリ番号が設定され
たクラス判定CAMとで構成され、 前記処理検索テーブルに記憶された中継処理情報は中継
先とクラス情報とで構成されたことを特徴とする請求項
1から3のいずれか1項記載のネットワーク間中継装
置。
4. The plurality of CAMs include a relay destination determination CAM in which an entry number designating the same relay destination is set for each combination of items, and the same class information indicating a packet type for each combination of items. The relay processing information stored in the processing search table is configured by a class determination CAM in which an entry number to be specified is set, and the relay processing information is configured by a relay destination and class information. 2. The inter-network relay device according to claim 1.
【請求項5】 複数のネットワークに接続可能であり、
各ネットワークから入力された各パケットを別のネット
ワークへ中継するネットワーク間中継装置内における前
記パケットの扱いを識別するパケットフロー識別方法に
おいて、 前記入力されたパケットの各項目を抽出してこの各項目
で、各項目の組合せ毎にエントリ番号が設定された複数
のCAM(コンテンツ・アドレサブル・メモリ)を検索
して各エントリ番号を得て、 この得た各エントリ番号を組合せて検索アドレスを生成
して、 この検索アドレスで、エントリ番号の組合せ毎に前記パ
ケットに対する中継処理情報を記憶する処理検索テーブ
ルを検索して該当パケットに対応する中継処理情報を得
ることを特徴とするパケットフロー識別方法。
5. Connectable to a plurality of networks,
In a packet flow identification method for identifying handling of the packet in an inter-network relay device that relays each packet input from each network to another network, extracting each item of the input packet, A plurality of CAMs (content addressable memories) in which an entry number is set for each combination of items to obtain each entry number, and generate a search address by combining the obtained entry numbers; A packet flow identification method comprising: searching a processing search table storing relay processing information for the packet for each combination of entry numbers using the search address; and obtaining relay processing information corresponding to the packet.
【請求項6】 前記各CAMを検索して得られたエント
リ番号を組合せたものをハッシュ演算手法を用いてデー
タ圧縮して検索アドレスを生成することを特徴とする請
求項5記載のパケットフロー識別方法。
6. The packet flow identification according to claim 5, wherein a combination of the entry numbers obtained by searching each of said CAMs is subjected to data compression using a hash calculation method to generate a search address. Method.
【請求項7】 前記処理検索テーブルに対して、ハッシ
ュ演算する前の各エントリ番号の組合せ毎に中継処理情
報を記憶するとともに、ハッシュ演算の結果発生する同
一検索アドレスを有する複数の中継処理情報を順番に検
索するための次候補ポインタを付加し、 ハッシュ演算により生成した検索アドレスで前記処理検
索テーブルを検索した結果、検索された中継処理情報に
対応するエントリ番号の組合せが該当検索アドレスのハ
ッシュ演算前のエントリ番号の組合せと不一致の場合、
次候補ポインタの指定する中継処理情報を検索すること
を特徴とする請求項6記載のパケットフロー識別方法。
7. A process for storing a plurality of pieces of relay processing information having the same search address generated as a result of a hash operation, wherein the plurality of pieces of relay processing information having the same search address generated as a result of the hash operation are stored in the processing search table for each combination of each entry number before performing a hash operation. As a result of adding the next candidate pointer for the search in order and searching the processing search table with the search address generated by the hash operation, the combination of the entry numbers corresponding to the searched relay processing information is the hash operation of the relevant search address. If there is a mismatch with the previous entry number combination,
7. The packet flow identification method according to claim 6, wherein the relay processing information specified by the next candidate pointer is searched.
JP2001171328A 2001-06-06 2001-06-06 Inter-network relay device and packet flow identification method Pending JP2002368793A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001171328A JP2002368793A (en) 2001-06-06 2001-06-06 Inter-network relay device and packet flow identification method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001171328A JP2002368793A (en) 2001-06-06 2001-06-06 Inter-network relay device and packet flow identification method

Publications (1)

Publication Number Publication Date
JP2002368793A true JP2002368793A (en) 2002-12-20

Family

ID=19013111

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001171328A Pending JP2002368793A (en) 2001-06-06 2001-06-06 Inter-network relay device and packet flow identification method

Country Status (1)

Country Link
JP (1) JP2002368793A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010233083A (en) * 2009-03-27 2010-10-14 Toshiba Corp Network address management device, network address management method and network relay apparatus
JP2019097053A (en) * 2017-11-24 2019-06-20 日本電信電話株式会社 Packet identification device and method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010233083A (en) * 2009-03-27 2010-10-14 Toshiba Corp Network address management device, network address management method and network relay apparatus
JP2019097053A (en) * 2017-11-24 2019-06-20 日本電信電話株式会社 Packet identification device and method

Similar Documents

Publication Publication Date Title
JP3340846B2 (en) ATM-LAN, server and ATM address management method
US7373425B2 (en) High-speed MAC address search engine
US7742478B2 (en) Reply communication apparatus and ARP reply communication apparatus
US6829238B2 (en) IP router device having a TCP termination function and a medium thereof
EP1330720B1 (en) Network architecture and methods for transparent on-line cross-sessional encoding and transport of network communications data
US7515610B2 (en) Packet processing using a multi-port memory
JP4542539B2 (en) Route lookup engine
US6333933B2 (en) Programmable network
US9178818B2 (en) Communication apparatus
US20150254347A1 (en) System and method for direct storage access in a content-centric network
US8391287B2 (en) Packet relay method and device
US6658003B1 (en) Network relaying apparatus and network relaying method capable of high-speed flow detection
WO2018192587A1 (en) Table lookup method and device, and computer storage medium
JPH06261078A (en) Table retrieval method and router
US20060007917A1 (en) Frame transfer method and edge switch
US7408933B2 (en) Distributed router with ping-pong preventing function and ping-pong preventing method using the same
KR20070078347A (en) Multicast forwarding apparatus and control method in system for using ppp multi-link
JPH1198143A (en) Atm repeater
US20110078181A1 (en) Communication device
JP3911273B2 (en) Packet distribution device and distribution method thereof
US7822056B2 (en) LCR switch with header compression
US8488489B2 (en) Scalable packet-switch
CN116095197B (en) Data transmission method and related device
WO2004019561A1 (en) Frame transfer method and node in ethernet(r)
CN116319553A (en) Table item searching method and network equipment