JP2001086149A - Method for processing communication - Google Patents

Method for processing communication

Info

Publication number
JP2001086149A
JP2001086149A JP2000245528A JP2000245528A JP2001086149A JP 2001086149 A JP2001086149 A JP 2001086149A JP 2000245528 A JP2000245528 A JP 2000245528A JP 2000245528 A JP2000245528 A JP 2000245528A JP 2001086149 A JP2001086149 A JP 2001086149A
Authority
JP
Japan
Prior art keywords
routing
processing
data
router
packet
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.)
Granted
Application number
JP2000245528A
Other languages
Japanese (ja)
Other versions
JP3475158B2 (en
Inventor
Naoya Ikeda
尚哉 池田
Katsuyoshi Onishi
勝善 大西
Hiromichi Enomoto
博道 榎本
Toshiaki Koyama
俊明 小山
Osamu Takada
治 高田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2000245528A priority Critical patent/JP3475158B2/en
Publication of JP2001086149A publication Critical patent/JP2001086149A/en
Application granted granted Critical
Publication of JP3475158B2 publication Critical patent/JP3475158B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

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

Abstract

PROBLEM TO BE SOLVED: To speed up routing and packet transfer to easily extend a scale by routing-processing reception data from a communication port based on distributed relay route information in a routing accelerator and transferring it to another routing accelerator. SOLUTION: A router managing part 2 being a main processor provided with functions for managing a whole device, creating a routing table and executing distribution or the like is connected to a high speed router bus 1. The routing accelerators 3 having the function for high-speed routing are connected to the router bus 1 from one to eight modules. The router managing part 2 distributes the routing table to the routing accelerators 3, each routing accelerator 3 selects the route of reception packet data, that is, executes the routing processing and packet data is transferred to each routing accelerator 3 where a relay destination network is connected under it via the router bus 1.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は複数のネットワークを接
続する通信ネットワークシステムに係り、特にネットワ
ーク層レベルで複数のネットワークを接続するルータ装
置と称されるインタネットワーク装置及び、データリン
ク層レベルで複数のネットワークを接続するブリッジ機
能とネットワーク層レベルで複数のネットワークを接続
するルータ機能とを兼ね備えたブルータと称されるイン
タネットワーク装置における通信処理方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a communication network system for connecting a plurality of networks, and more particularly to an internetwork apparatus called a router for connecting a plurality of networks at a network layer level and a plurality of networks at a data link layer level. The present invention relates to a communication processing method in an internetwork apparatus called a brouter, which has both a bridge function for connecting networks and a router function for connecting a plurality of networks at a network layer level.

【0002】[0002]

【従来の技術】複数のネットワークを接続する装置とし
ては、ネットワークシステム階層のうちデータリンク層
(特にメディアアクセス副層)において相互接続を行う
ブリッジ、さらにその上位層であるネットワーク層にお
いて相互接続を行うルータなどがある。
2. Description of the Related Art As a device for connecting a plurality of networks, a bridge for interconnecting in a data link layer (in particular, a media access sublayer) in a network system hierarchy, and an interconnecting in a network layer which is an upper layer thereof There are routers.

【0003】ブリッジでは、MAC(Media Access Cont
rol)アドレスを管理し、あるネットワークからの受信フ
レーム(受信パケットデータとも言う)を他のネットワ
ークに中継するか否かの判断を、その受信フレーム中の
宛先MACアドレスの内容及び中継制御情報であるフィ
ルタリングアドレステーブルに従い行う。
In a bridge, a MAC (Media Access Control) is used.
rol) manages the address and determines whether or not to relay a received frame (also referred to as received packet data) from one network to another network based on the contents of the destination MAC address and the relay control information in the received frame. Perform according to the filtering address table.

【0004】また、ルータにおいても、受信フレーム中
のインターネットワーキング用アドレス及び前記ルータ
内のアドレス解決(経路情報)テーブルに従い、あらか
じめ定められた経路あるいは最適な経路を選択し、受信
フレームの中継を行う。
In a router, a predetermined route or an optimal route is selected according to an internetworking address in a received frame and an address resolution (route information) table in the router, and the received frame is relayed. .

【0005】なお、ネットワーク層で用いられるプロト
コルにはいくつかの種類があり、その代表例としてIP
(Internet Protocol)がよく知られている。このIPプ
ロトコルではインターネットワーキング用アドレスとし
てIPアドレスを用いる。そして、アドレス解決テーブ
ルには宛先IPアドレスに対応する隣接した経路のMA
Cアドレスが記述されている。
[0005] There are several types of protocols used in the network layer.
(Internet Protocol) is well known. This IP protocol uses an IP address as an internetworking address. The address resolution table stores the MA of the adjacent route corresponding to the destination IP address.
The C address is described.

【0006】さらに近年では、ブリッジ機能とルータ機
能とを兼ね備えた装置が出現し、異種ネットワークの接
続に用いられるようになってきた。この装置は、ブルー
タと呼ばれる。このブルータは、ネットワーク層におい
て用いられる各種プロトコルのうち、当該装置がサポー
トする、即ち、ルーティング可能なプロトコルに従った
フレームデータについてはルーティングを行い、ネット
ワーク層での相互接続を行う。一方、このブルータは、
当該装置がサポートしない、即ち、ルーティング不可能
なプロトコルに従ったフレームデータついてはメディア
アクセス副層におけるフレームデータの中継処理、即
ち、ブリッジ処理を行う。
[0006] In recent years, devices having both a bridge function and a router function have appeared, and have been used for connecting heterogeneous networks. This device is called a brouter. The brouter routes frame data according to a protocol supported by the device, that is, a routable protocol among various protocols used in the network layer, and performs interconnection at the network layer. On the other hand,
For frame data that is not supported by the device, that is, according to a protocol that cannot be routed, relay processing of frame data in the media access sublayer, that is, bridge processing is performed.

【0007】以上のように、ブリッジ、ルータ装置及び
ブルータ装置などのネットワーク装置は、二つ以上の通
信ポートと、ルーティング或いはブリッジングと呼ばれ
る前述の中継処理を行うプロセッサを少なくとも有する
構成であった。
As described above, a network device such as a bridge, a router device, and a brouter device has a configuration having at least two or more communication ports and a processor for performing the above-described relay processing called routing or bridging.

【0008】このような構成の従来例として、ルータ装
置の一般的な動作をさらに詳しく説明する。ある通信ポ
ートから受信したパケットデータをバッファメモリに格
納し、プロセッサによりそのパケットデータにルーティ
ング処理を施すことにより、ルータ装置は、宛先となる
ネットワークを得る。そして、宛先ネットワークに該当
する別の通信ポートからそのパケットデータを送出する
ことにより、ルータ装置は、パケットデータのルーティ
ングを行う。
As a conventional example of such a configuration, a general operation of a router device will be described in more detail. By storing packet data received from a certain communication port in a buffer memory and performing routing processing on the packet data by a processor, the router device obtains a destination network. Then, by transmitting the packet data from another communication port corresponding to the destination network, the router device performs the routing of the packet data.

【0009】図2は、ルータを用いて接続した複数のネ
ットワークを模式的に表した図である。この図では、8
つのネットワークが5個のルータにより接続されてい
る。これらのルータのうちルータAに着目して見ると、
ルータAのポートa、b、c、dには各々ネットワーク
A、B、C、Dが接続している。今、ネットワークA内
の端末A1からルータEに接続されているネットワーク
G内の端末G2にデータを送りたいとすると、端末A1
から端末G2宛のパケットデータは物理的な宛先アドレ
スをルータAのポートa宛として送信される。ルータA
はこのパケットデータを受信し、ネットワークB、C、
Dのいずれかに中継、即ち、ルーティングを行なう。ル
ータAは、このルーテイングを行なうために、端末G2
宛のパケットデータをネットワークB、C、Dのいずれ
に中継すべきかを予め知っている必要がある。この例で
はネットワークB即ちルータBに対して送信すべきであ
るとして、パケットデータの物理的な宛先アドレスをル
ータBのポートe宛として送信する。ルータB、Eにお
いても同様のルーティング処理が行なわれ、最終的に該
パケットデータは端末G2に到着する。
FIG. 2 is a diagram schematically showing a plurality of networks connected using a router. In this figure, 8
One network is connected by five routers. Looking at router A among these routers,
Networks A, B, C, and D are connected to ports a, b, c, and d of the router A, respectively. Now, suppose that data is to be sent from the terminal A1 in the network A to the terminal G2 in the network G connected to the router E.
The packet data addressed to the terminal G2 is transmitted with the physical destination address addressed to the port a of the router A. Router A
Receives this packet data, and transmits data to networks B, C,
D, ie, performs routing. In order to perform this routing, the router A performs the terminal G2
It is necessary to know in advance which of the networks B, C and D the packet data addressed to should be relayed. In this example, it is assumed that transmission is to be performed to the network B, that is, the router B, and the physical destination address of the packet data is transmitted to the port e of the router B. Similar routing processing is performed in the routers B and E, and the packet data finally reaches the terminal G2.

【0010】このようなルーティング処理を高速に行う
従来の技術としては、特開昭62−181551号公報
に記載された技術が挙げられる。これによれば、一方の
ポートから受信したパケットデータを格納するバッファ
メモリと、他方のポートから受信したパケットデータを
格納するバッファメモリとを分離かつ独立して具え、バ
ッファメモリの管理をハードウェアで行っている。
As a conventional technique for performing such a routing process at high speed, there is a technique described in Japanese Patent Application Laid-Open No. 62-181551. According to this, a buffer memory for storing packet data received from one port and a buffer memory for storing packet data received from the other port are provided separately and independently, and management of the buffer memory is performed by hardware. Is going.

【0011】また、ポート間パケット転送を高速に行な
う技術としては、ネットワンシステムズ(株)1990
年12月19日発行、「TCP/IPとINTERNE
T概要」17ページに記載されている技術が挙げられ
る。これによれば、高速ポート転送用に高速バスを備え
ている。
As a technique for transferring packets between ports at high speed, Net One Systems Co., Ltd. 1990
Published on December 19, 1998, "TCP / IP and INTERNE
Technology described on page 17 of "T Overview". According to this, a high-speed bus is provided for high-speed port transfer.

【0012】[0012]

【発明が解決しようとする課題】これらの従来技術で
は、以下の点が問題点となる。
However, these conventional techniques have the following problems.

【0013】従来技術によるルータではパケットデータ
の転送を高速に行えるが、ルーティングを行う手段が一
ケ所であるためルーティング処理がネックとなり、サポ
ートできるポート数や通信トラフィックに限界がある。
従って、ルータのポートメニュー等の構成を小規模から
大規模までスムーズに拡張すること、ポートのトラフィ
ックや数に応じて性能を向上させることが困難である。
Although the router of the prior art can transfer packet data at high speed, the routing process is a bottleneck because there is only one routing means, and the number of ports that can be supported and communication traffic are limited.
Therefore, it is difficult to smoothly expand the configuration of the router port menu and the like from small to large, and to improve the performance according to the traffic and the number of ports.

【0014】さらに、ネットワーク運用中にネットワー
クの構成などを認識して、ルーティング処理のための中
継情報(前述の従来例において、各ルータが予め知って
いるとした中継のための情報)を動的に生成、追加、変
更、削除するダイナミックルーティングの必要性が近年
高まってきている。即ち、各ルータ間でネットワークに
関する情報をやり取りするためのルーティングプロトコ
ル(例えば、TCP/IPプロトコル群におけるRI
P:Routing Information ProtocolやOSPF:Open S
hortest Path Firstなど)の処理が必要となる。さら
に、ルータ自体の性能情報などの管理情報をネットワー
ク上の管理マスタ局と通信するためのネットワークマネ
ジメントプロトコル(例えば、TCP/IPプロトコル
群におけるSNMP:Simple Network Management Prot
ocolなど)の処理も、従来例におけるルーティングを行
う手段が兼用せざるを得ないため、本来の中継性能が充
分発揮できない。
Further, the network configuration and the like are recognized during the operation of the network, and relay information for routing processing (information for relaying that each router knows in advance in the above-described conventional example) is dynamically obtained. In recent years, the need for dynamic routing that generates, adds, changes, and deletes has been increasing. That is, a routing protocol (for example, RI in the TCP / IP protocol group) for exchanging information about the network between the routers.
P: Routing Information Protocol or OSPF: Open S
hortest Path First). Further, a network management protocol for communicating management information such as performance information of the router itself with a management master station on a network (for example, SNMP: Simple Network Management Protocol in the TCP / IP protocol group).
In the processing of ocol, etc., the means for performing routing in the conventional example must also be used, so that the original relay performance cannot be sufficiently exhibited.

【0015】従って、従来のルータでは、近年出現して
きた100Mbps(Mega bit persecond)の高速LAN
(local Area Network)であるFDDI(Fiber Distribut
edData Interface)や、将来的に普及が見込まれている
広帯域ISDN(以下B−ISDNと略す)及びその一
形態であるATM(Asyncronized Transfer Mode)など1
55Mbpsの高速回線に対応するのは困難である。
Therefore, in the conventional router, a high-speed LAN of 100 Mbps (Mega bit per second) which has recently emerged.
(Local Area Network) FDDI (Fiber Distribut
edData Interface), broadband ISDN (hereinafter abbreviated as B-ISDN), which is expected to be widely used in the future, and ATM (Asyncronized Transfer Mode), which is one form thereof
It is difficult to support a high-speed line of 55 Mbps.

【0016】本発明の目的は、ルーティング及びパケッ
ト転送を高速に行うことができ、かつ規模の拡張及び性
能の向上が容易におこなえるインタネットワーク装置お
よび通信処理方法を提供することにある。
An object of the present invention is to provide an internetwork apparatus and a communication processing method which can perform routing and packet transfer at high speed, and can easily expand the scale and improve the performance.

【0017】さらに、本発明の目的は、前述のブルータ
としての機能をもたせた際のブリッジング処理とルーテ
ィング処理時のデータ転送を考慮したインタネットワー
ク装置および通信処理方法を提供することにある。
A further object of the present invention is to provide an internetwork apparatus and a communication processing method that take into account data transfer during bridging processing and routing processing when the above-described function as a brouter is provided.

【0018】さらに、本発明の目的は、処理できるプロ
トコルの種類を増やすため、既存の装置との接続ができ
るルータ装置および通信処理方法を提供することにあ
る。
A further object of the present invention is to provide a router device and a communication processing method capable of connecting to an existing device in order to increase the types of protocols that can be processed.

【0019】[0019]

【課題を解決するための手段】前記目的を達成するため
に、本発明のインタネットワーク装置は、ホスト管理部
として動作する主プロセッサを補助してルーティングを
行うルーティングアクセラレータを1または複数個有
し、上記各ルーティングアクセラレータがこれを通して
ネットワークとの間でデータの送受信を行う通信ポート
とを備え、本発明の通信処理方法は、上記ホスト管理部
において、データ中継のための中継経路情報を生成/変
更し、この中継経路情報を上記複数のルーティングアク
セラレータに配布し、上記各ルーティングアクセラレー
タにおいて、上記通信ポートからの受信データを上記配
布された中継経路情報に基づいてルーティング処理し、
他のルーティングアクセラレータに転送することを特徴
とする。
In order to achieve the above object, an internetwork apparatus according to the present invention has one or more routing accelerators for performing routing by assisting a main processor operating as a host management unit, A communication port through which each of the routing accelerators transmits / receives data to / from a network. The communication processing method according to the present invention is characterized in that the host management unit generates / changes relay route information for data relay. Distributing the relay route information to the plurality of routing accelerators, and in each of the routing accelerators, routes received data from the communication port based on the distributed relay route information,
It is characterized in that it is forwarded to another routing accelerator.

【0020】さらに、前記目的を達成するために、本発
明のインタネットワーク装置は、ルーティングアクセラ
レータ間を結合する第一の結合手段を有し、この第一の
結合手段に、当該インタネットワーク装置全体を管理す
る管理部として主プロセッサを接続する。そして、ネッ
トワークとのデータ送信受信を行う複数の通信ポート部
とルーティングアクセラレータとを、他のルーティング
アクセラレータとは独立に結合する第二の結合手段を有
する。
Further, in order to achieve the above object, the internetwork apparatus of the present invention has first connection means for connecting between routing accelerators, and the first connection means includes the entire internetwork apparatus. The main processor is connected as a managing unit for managing. Then, there is provided second coupling means for coupling the plurality of communication port units for transmitting and receiving data to and from the network and the routing accelerator independently of other routing accelerators.

【0021】さらに、前記目的を達成するために、本発
明のインタネットワーク装置は、第一の結合手段とは独
立に、主プロセッサとルーティングアクセラレータ間を
結合する第三の結合手段を設ける。
Further, in order to achieve the above object, the internetwork apparatus of the present invention is provided with third coupling means for coupling between the main processor and the routing accelerator independently of the first coupling means.

【0022】さらに、前記目的を達成するために、本発
明のインタネットワーク装置は、主プロセッサとルーテ
ィングアクセラレータ以外に補助プロセッサを有する。
そして、この補助プロセッサとルーティングアクセラレ
ータとを前記第一の結合手段或いは第三の結合手段によ
り結合する。補助プロセッサの機能としては、機能拡張
のため、ブリッジ中継のための同報転送機能や、他の装
置とのインタフェース機能、或いは主プロセッサが処理
不可能なルーティングプロトコルの処理機能などを設け
た。
Further, in order to achieve the above object, the internetwork apparatus of the present invention has an auxiliary processor in addition to the main processor and the routing accelerator.
Then, the auxiliary processor and the routing accelerator are connected by the first connecting means or the third connecting means. As functions of the auxiliary processor, a broadcast transfer function for bridge relay, an interface function with other devices, or a processing function of a routing protocol that the main processor cannot process is provided for the function expansion.

【0023】さらに、前記目的を達成するために、本発
明のインタネットワーク装置は、ルーティングアクセラ
レータに、ルータ回路として、データを格納するバッフ
ァと、格納動作と並行して予め定められた条件でフィル
タリングを行なうフィルタリングアシスト手段と、受信
パケットデータの必要な情報を抽出して該中継経路選択
情報テーブルを検索するルーティングアシスト手段を有
する。
Further, in order to achieve the above object, an internetwork apparatus of the present invention provides a routing accelerator with a buffer for storing data as a router circuit, and a filtering under predetermined conditions in parallel with the storing operation. A filtering assist unit for extracting necessary information of the received packet data and searching the relay route selection information table.

【0024】[0024]

【作用】ルーティングアクセラレータは、受信パケット
データにルーティング処理を施し、必要に応じて他のル
ーティングアクセラレータにデータ転送する。すなわ
ち、そのデータフレームの種類を判別し、ルーティング
中継処理不可能なプロトコルにしたがったデータフレー
ムであることを認識した場合には、ブリッジ中継をすべ
く他の複数のルーティングアクセラレータにデータ転送
する。
The routing accelerator performs a routing process on the received packet data and transfers the data to another routing accelerator as needed. That is, the type of the data frame is determined, and if the data frame is recognized as a data frame according to a protocol that cannot perform routing relay processing, the data is transferred to a plurality of other routing accelerators for bridge relay.

【0025】管理部は、ルータ中継のためのルーティン
グテーブルを生成/変更した後にこのルーティングテー
ブルを全ルーティングアクセラレータに対して配布す
る。各々のルーティングアクセラレータは、第二の結合
手段により接続された通信ポート部からの受信パケット
データを、配布されたルーティングテーブルを参照して
ルーティング処理を施し、必要に応じて第一の結合手段
を用いて他のルーティングアクセラレータにデータ転送
する。すなわち、そのデータフレームの種類を判別し、
ルーティング中継処理不可能なプロトコルにしたがった
データフレームであることを認識した場合には、ブリッ
ジ中継をすべく他の複数のルーティングアクセラレータ
にデータ転送する。データ転送されたルーティングアク
セラレータは、さらに、第二の結合手段により接続され
た通信ポート部を用いてネットワークに対してパケット
データを送信する。従って、本発明のインタネットワー
ク装置は、ルーティングアクセラレータと通信ポート部
の複数のセットによって分散的にルーティング/パケッ
ト中継ができる。
After generating / changing a routing table for router relay, the management unit distributes this routing table to all the routing accelerators. Each routing accelerator performs a routing process on the received packet data from the communication port unit connected by the second coupling unit with reference to the distributed routing table, and uses the first coupling unit as necessary. To transfer data to another routing accelerator. That is, the type of the data frame is determined,
When it is recognized that the data frame conforms to the protocol that cannot perform the routing relay processing, the data is transferred to a plurality of other routing accelerators in order to perform the bridge relay. The routing accelerator to which the data has been transferred further transmits the packet data to the network using the communication port unit connected by the second coupling unit. Therefore, the internetwork apparatus of the present invention can perform distributed routing / packet relaying by a plurality of sets of the routing accelerator and the communication port unit.

【0026】なお、主プロセッサがルーティングテーブ
ルを生成/変更したりネットワーク管理マスタとの通信
を行なうための主プロセッサ宛の管理フレームは第一の
結合手段を用いてルーティングアクセラレータから主プ
ロセッサに対して転送される。また、ルーティングアク
セラレータが第二の結合手段で接続されている通信ポー
ト部からの受信データを受信し、そのデータフレームの
種類を判別し、ルーティング中継処理不可能なプロトコ
ルにしたがったデータフレームであることを認識した場
合には、主プロセッサ宛に転送することもできる。主プ
ロセッサはそのプロトコルを処理可能であればルーティ
ング処理を行ない、適切な宛先ルーティングアクセラレ
ータに対して該データフレームを再転送することによ
り、特殊プロトコルに従ったパケットデータのルーティ
ング中継を行なう。
A management frame addressed to the main processor for the main processor to generate / change the routing table and to communicate with the network management master is transferred from the routing accelerator to the main processor using the first coupling means. Is done. In addition, the routing accelerator receives data received from the communication port unit connected by the second coupling means, determines the type of the data frame, and is a data frame according to a protocol that cannot perform routing relay processing. When it is recognized, it can be transferred to the main processor. If the main processor can process the protocol, the main processor performs a routing process, retransmits the data frame to an appropriate destination routing accelerator, and performs a routing relay of the packet data according to the special protocol.

【0027】第三の結合手段は、主プロセッサがルーテ
ィングテーブルを全ルーティングアクセラレータに対し
て配布する動作と、主プロセッサ宛の管理フレームをル
ーティングアクセラレータから主プロセッサに対して転
送する動作を行う。
The third coupling means performs an operation of distributing the routing table to all the routing accelerators by the main processor and an operation of transferring a management frame addressed to the main processor from the routing accelerator to the main processor.

【0028】補助プロセッサは、補助プロセッサに実装
した機能に従い、ブリッジ中継のための同報転送機能、
他の装置とのインタフェース機能、主プロセッサが処理
不可能なルーティングプロトコルの処理機能などに対応
して、主プロセッサの処理或いは宛先ルーティングアク
セラレータのブリッジ中継機能などを補助する。例え
ば、補助プロセッサがブリッジ中継のための同報転送機
能を補助する場合、ルーティングアクセラレータがルー
ティング中継処理不可能なプロトコルにしたがったデー
タフレームを受信すると、この補助プロセッサに対して
ブリッジ中継すべきフレームデータを転送する。補助プ
ロセッサは、転送されたフレームデータをバッファメモ
リに一旦格納した後、他の全てのルーティングアクセラ
レータに第一の結合手段を用いてデータ転送する。
The auxiliary processor has a broadcast transfer function for bridge relay according to the function implemented in the auxiliary processor,
In correspondence with an interface function with another device, a processing function of a routing protocol that cannot be processed by the main processor, and the like, the processing of the main processor or a bridge relay function of the destination routing accelerator is assisted. For example, when the auxiliary processor assists the broadcast transfer function for bridge relay, when the routing accelerator receives a data frame according to a protocol that cannot perform routing relay processing, the frame data to be bridge-relayed to this auxiliary processor. To transfer. After temporarily storing the transferred frame data in the buffer memory, the auxiliary processor transfers the data to all the other routing accelerators using the first coupling unit.

【0029】ルーティングアクセラレータは、受信パケ
ットデータをバッファへの格納するのと並行して、フィ
ルタリングアシスト手段が予め定められた条件でフィル
タリングを行ない、中継不要なパケットデータを廃棄す
る。中継を必要とする受信パケットデータについては、
プロセッサとルーティングアシスト手段が宛先を判別
し、宛先となるルーティングアクセラレータにパケット
を転送する。
In the routing accelerator, in parallel with storing the received packet data in the buffer, the filtering assist means performs filtering under predetermined conditions, and discards the packet data that does not need to be relayed. For received packet data that requires relaying,
The processor and the routing assist unit determine the destination, and transfer the packet to the routing accelerator serving as the destination.

【0030】[0030]

【実施例】以下、本発明の一実施例について図面を用い
て説明する。なお、本発明のインタネットワーク装置
は、前述のブルータ装置の機能を持つが、以下の説明で
は本来の目的であるルーティング処理を主体に説明する
こととし、従って装置としてもルータと称することとす
る。
An embodiment of the present invention will be described below with reference to the drawings. Although the internetwork apparatus of the present invention has the function of the above-mentioned brouter apparatus, in the following description, the main purpose of the routing processing will be mainly described, and hence the apparatus will also be referred to as a router.

【0031】1.ルータの構成 まず、本発明の一実施例であるルータの全体構成につい
て図1を用いて説明する。この実施例のルータは、ルー
ティングを行う複数のモジュールを有しており、モジュ
ールの増設により容易に性能を向上することができる。
それぞれのモジュールは、一個のルーティングアクセラ
レータを有し、そして、それぞれのルーティングアクセ
ラレータは、更に一つまたは複数の通信ポートを有して
いる。図1は、ルータの全体ブロック図である。図1に
おいて、1が第一の結合手段である200MBytes
/秒のスループットを持つ高速なルータバスである。こ
のルータバス1には、装置全体の管理機能とルーティン
グテーブルの生成・配布等の機能を持つ主プロセッサで
あるルータ管理部2が接続されている。更に、ルータバ
ス1には、高速にルーティングを行う機能を持つルーテ
ィングアクセラレータ3が1乃至8モジュールまで接続
できる。ルータ管理部2は、ルーティングアクセラレー
タ3にルーティングテーブルを配布して、それぞれのル
ーティングアクセラレータ3がこれに基づいて受信パケ
ットデータの経路選択、即ち、ルーティング処理を行
い、中継先のネットワークを配下に接続しているルーテ
ィングアクセラレータ3に対してルータバス1を仲介し
てパケットデータを転送する。
1. First, the overall configuration of a router according to an embodiment of the present invention will be described with reference to FIG. The router of this embodiment has a plurality of modules for performing routing, and the performance can be easily improved by adding modules.
Each module has one routing accelerator, and each routing accelerator further has one or more communication ports. FIG. 1 is an overall block diagram of a router. In FIG. 1, 1 is 200 MBytes, which is the first combining means.
It is a high-speed router bus with a throughput of 1 / sec. The router bus 1 is connected to a router management unit 2 which is a main processor having a function of managing the entire apparatus and a function of generating and distributing a routing table. Further, a routing accelerator 3 having a function of performing high-speed routing can be connected to the router bus 1 from 1 to 8 modules. The router management unit 2 distributes a routing table to the routing accelerators 3, and each of the routing accelerators 3 selects a route of the received packet data, that is, performs a routing process based on the routing table, and connects the relay destination network to the subordinate. The packet data is transferred to the routing accelerator 3 via the router bus 1.

【0032】さらに、各ルーティングアクセラレータ3
の下には、4に示すように第二の結合手段であるバスと
して、例えば、一般に知られている33MBytes/
秒のEISAバス(Extended Industry Standard Archit
ecture Bus)4を具える。このバスには、各種の通信制
御部51〜56(以後ポートとも言う)が接続される。
ここで、このEISAバスのスループットに見合う通信
ポートである100MbpsクラスのFDDIの高速通
信ポート51は、ルーティングアクセラレータ3と1対
1で1つだけ接続されている。同様に、高速回線である
155MbpsのATM(B−ISDN)の通信ポート
52も、ルーティングアクセラレータ3に1つだけ接続
されている。また、例えば10MbpsのLANである
Ethernet(登録商標)の通信ポート53、4M
bpsないし16MbpsのLANであるToken
Ring LANの通信ポート54、または1.5Mb
psの回線であるN−ISDNの通信ポート55のよう
な中低速通信の通信ポートは、一つのルーティングアク
セラレータ3の能力及び一本のEISAバスのスループ
ットで複数個対応できるので、この場合2個接続してい
る。なお、ルーティングアクセラレータ3と通信ポート
51〜56のセットは、別基板上に実装しても、同一基
板上に実装してもよい。
Further, each routing accelerator 3
Below, as shown in FIG. 4, as a bus which is the second coupling means, for example, a generally known 33 MBytes /
EISA bus (Extended Industry Standard Archit)
ecture Bus) 4. Various communication control units 51 to 56 (hereinafter also referred to as ports) are connected to this bus.
Here, only one high-speed communication port 51 of the FDDI of 100 Mbps class, which is a communication port corresponding to the throughput of the EISA bus, is connected to the routing accelerator 3 on a one-to-one basis. Similarly, only one communication port 52 of 155 Mbps ATM (B-ISDN), which is a high-speed line, is connected to the routing accelerator 3. Also, for example, a communication port 53, 4M of Ethernet (registered trademark) which is a LAN of 10 Mbps.
Token which is LAN of bps to 16Mbps
Ring LAN communication port 54 or 1.5 Mb
A plurality of communication ports for medium / low speed communication such as the N-ISDN communication port 55, which is a line of ps, can be handled by the capacity of one routing accelerator 3 and the throughput of one EISA bus. are doing. Note that the set of the routing accelerator 3 and the communication ports 51 to 56 may be mounted on a separate substrate or may be mounted on the same substrate.

【0033】2.ルーティング 前述の基本構成をとったルータにけるルーティングにつ
いて以下説明する。
2. Routing Routing in a router having the above-described basic configuration will be described below.

【0034】まず、前提として、管理部2は、全ルーテ
ィングアクセラレータ3にルーティングテーブルを配布
し、各ルーティングアクセラレータ3は、ルーティング
情報を有している状態とする。例えば、管理部2は、他
のルータとの間で前述したRIP、OSPF等のルーテ
ィングプロトコルでやりとりするか、或いはユーザが予
めスタティックに設定することにより、ルーティング情
報を収集する。
First, it is assumed that the management unit 2 distributes a routing table to all the routing accelerators 3 and that each of the routing accelerators 3 has routing information. For example, the management unit 2 collects routing information by exchanging with another router using the above-described routing protocol such as RIP or OSPF, or by a user statically setting in advance.

【0035】このルーティングテーブルは、一個のネッ
トワークアドレス毎に一個のルーティングのための情報
を示すルーティング情報の集合体である。さらに、ネッ
トワークアドレスを分割して複数の小規模のネットワー
クとして運用する、いわゆるサブネットワークについて
は、各サブネットワーク毎にルーティング情報が定義さ
れる。
This routing table is a set of routing information indicating one piece of routing information for each network address. Further, for a so-called sub-network that divides a network address and operates as a plurality of small-scale networks, routing information is defined for each sub-network.

【0036】図14に1個のルーティング情報の例を示
す。この例では、IPプロトコルだけを対象とし、また
ネットワークサービスの種別等の付加情報は省略されて
いる。図14において、ルーティングテーブル400
は、宛先ネットワークを示すIPアドレスのフィールド
401、宛先ネットワークのサブネット情報を示すサブ
ネットマスクデータ402、次ルータのIPアドレス4
03、次ルータへ中継するための送出インタフェース4
04、及び次エントリへのポインタ405からなる。
FIG. 14 shows an example of one piece of routing information. In this example, only the IP protocol is targeted, and additional information such as the type of network service is omitted. In FIG. 14, the routing table 400
Is a field 401 of an IP address indicating the destination network, subnet mask data 402 indicating subnet information of the destination network, and an IP address 4 of the next router.
03, sending interface 4 for relaying to the next router
04 and a pointer 405 to the next entry.

【0037】送出インタフェース404は、この実施例
では、転送先RA(ルーティングアクセレータ)の識別
番号(RA番号)と該転送先RA内の送出すべきポート
の識別番号(LC番号)となっている。また、次エント
リへのポインタ405は、RA内部におけるルーティン
グ情報の構造化のために必要なフィールドであるが、前
述のRM(ルータ管理部)からの配布するときには意味
はもたない。
In this embodiment, the transmission interface 404 has an identification number (RA number) of a transfer destination RA (routing accelerator) and an identification number (LC number) of a port in the transfer destination RA to be transmitted. The pointer 405 to the next entry is a field necessary for structuring the routing information inside the RA, but has no meaning when distributed from the above-mentioned RM (router management unit).

【0038】RA内のルーティング情報400の集合体
であるルーティングテーブルは、高速検索のために、図
15に示す構造体となっている。ハッシュ関数410
は、あるデータをより小さなデータ量のデータに投影す
る。本実施例では、例えば、IPアドレスのうちのネッ
トワークアドレス部の24ビットを8ビットに投影す
る。ハッシュ関数の出力が8ビットであるからハッシュ
エントリテーブル420のエントリ数は256個であ
る。ハッシュエントリテーブル420内の各エントリに
はネットワークアドレスをハッシュした結果に対応する
ルーティング情報400へのポインタが格納されてい
る。ハッシュはデータ量を圧縮するため、異なるネット
ワークアドレス値がハッシュを行なった結果、同じ8ビ
ットのアドレス値となってしまうこともある。従って、
図15に示したようにハッシュによって同じ結果となる
ネットワークアドレスを持つルーティング情報400
は、ポインタ405で連結される。
The routing table, which is an aggregate of the routing information 400 in the RA, has a structure shown in FIG. 15 for high-speed retrieval. Hash function 410
Projects certain data onto a smaller amount of data. In this embodiment, for example, 24 bits of the network address portion of the IP address are projected to 8 bits. Since the output of the hash function is 8 bits, the number of entries in the hash entry table 420 is 256. Each entry in the hash entry table 420 stores a pointer to the routing information 400 corresponding to the result of hashing the network address. Since the hash compresses the amount of data, different network address values may have the same 8-bit address value as a result of hashing. Therefore,
As shown in FIG. 15, the routing information 400 having a network address that has the same result by hashing
Are connected by a pointer 405.

【0039】なお、ここで説明した、IPアドレスに対
して対応するルーティングテーブルを検索する構造及び
ルーティングテーブルの構造についてはDouglas E.Come
r著「Internetworking with TCP/IP VOLUME II」(81〜
84ページ)に詳しく述べられており、本実施例もこの
手法に従ったルーティングテーブル及びそのRA内での
データ構造を採用している。
The structure for searching the routing table corresponding to the IP address and the structure of the routing table described above are described in Douglas E. Come.
r “Internetworking with TCP / IP VOLUME II” (81-
(P. 84), the present embodiment also employs a routing table and its data structure in the RA according to this method.

【0040】図3は、複数モジュール/複数ポートを具
えた本発明のルータにおける種々のルーティングのケー
スを示した図である。なお、図3においては、管理部2
はRM、ルーティングアクセラレータ3はRA、通信ポ
ート51ないし56はLCと略して表記した。
FIG. 3 is a diagram showing various routing cases in the router of the present invention having a plurality of modules / ports. In FIG. 3, the management unit 2
Is abbreviated as RM, the routing accelerator 3 is abbreviated as RA, and the communication ports 51 to 56 are abbreviated as LC.

【0041】ケース1は、廃棄の場合を示している。ル
ーティングアクセラレータRA(A)は、自分の配下の
通信ポートLC(a)が受信したパケットを一旦パケッ
トバッファに格納し、フィルタリングおよびルーティン
グを行う。ここで、フィルタリング/ルーティングを行
った結果、パケットの宛先が今受信した通信ポートLC
(a)の方向にある場合は、当該パケットを廃棄する。
Case 1 shows a case of disposal. The routing accelerator RA (A) temporarily stores a packet received by the communication port LC (a) under its control in a packet buffer, and performs filtering and routing. Here, as a result of the filtering / routing, the destination of the packet is the communication port LC just received.
If the packet is in the direction of (a), the packet is discarded.

【0042】ケース2は、ルーティングアクセラレータ
RA(A)内のポート間でルーティングを行う場合を示
している。ルーティングアクセラレータRA(A)は、
自分の配下の通信ポートLC(a)が受信したパケット
を一旦パケットバッファに格納し、フィルタリングおよ
びルーティングを行う。ここで、フィルタリング/ルー
ティングを行った結果、通信ポートLC(a)が受信し
たパケットの宛先が自ルーティングアクセレータRA
(A)の配下の通信ポートLC(b)にある場合、当該
受信パケットを折り返し、通信ポートLC(b)へ転送
して中継する。このケースでは、一つのルーティングア
クセレータRA(A)のみでルータとして機能してい
る。
Case 2 shows a case in which routing is performed between ports in the routing accelerator RA (A). The routing accelerator RA (A)
The packet received by the communication port LC (a) under its own control is temporarily stored in a packet buffer, and filtering and routing are performed. Here, as a result of performing the filtering / routing, the destination of the packet received by the communication port LC (a) is set to the own routing accelerator RA.
If the received packet is at the communication port LC (b) under the control of (A), the received packet is returned, transferred to the communication port LC (b), and relayed. In this case, only one routing accelerator RA (A) functions as a router.

【0043】ケース3は、二つのルーティングアクセレ
ータRA(A)と(B)の間でルータバスを介してルー
ティングを行う場合を示している。ルーティングアクセ
ラレータRA(A)は、自分の配下の通信ポートLC
(a)が受信したパケットを一旦パケットバッファに格
納し、フィルタリングおよびルーティングを行う。ここ
で、ルーティングアクセレータRA(A)が受信パケッ
トの宛先を調べた結果、それが他ルーティングアクセレ
ータRA(B)の配下の通信ポートLC(d)であった
場合、ルーティングアクセレータRA(A)とルーティ
ングアクセレータRA(B)の間でパケット転送のため
の情報授受を行って、パケットがルーティングアクセレ
ータRA(A)からルーティングアクセレータRA
(B)へ転送される。
Case 3 shows a case where routing is performed between two routing accelerators RA (A) and (B) via a router bus. The routing accelerator RA (A) has a communication port LC under its control.
(A) temporarily stores the received packet in a packet buffer, and performs filtering and routing. Here, as a result of the routing accelerator RA (A) checking the destination of the received packet, if it is the communication port LC (d) under the control of the other routing accelerator RA (B), the routing accelerator RA (A) and the routing accelerator RA (A) Information for packet transfer is exchanged between accelerators RA (B), and packets are transferred from routing accelerator RA (A) to routing accelerator RA (A).
Transferred to (B).

【0044】ケース4は、受信パケットが自ルータ宛の
パケットである場合を示している。
Case 4 shows a case where the received packet is a packet addressed to the own router.

【0045】自ルータ宛のパケットとは、前述のルーテ
ィングプロトコルフレーム(RIPやOSPFフレー
ム)あるいはネットワーク管理プロトコルSNMPのフ
レームデータなどである。ルーティングアクセラレータ
RA(A)は、自分の配下の通信ポートLC(a)が受
信したパケットを一旦パケットバッファに格納し、フィ
ルタリングおよびルーティングを行う。ここで、例え
ば、IPパケットの宛先IPアドレスが自IPアドレス
であった場合、受信パケットは管理部2へ転送される。
The packet addressed to the own router is the aforementioned routing protocol frame (RIP or OSPF frame) or frame data of the network management protocol SNMP. The routing accelerator RA (A) temporarily stores a packet received by the communication port LC (a) under its control in a packet buffer, and performs filtering and routing. Here, for example, if the destination IP address of the IP packet is its own IP address, the received packet is transferred to the management unit 2.

【0046】3.ルーティングアクセラレータの構成 次にルーティングアクセラレータ3の構成について説明
する。
3. Configuration of Routing Accelerator Next, the configuration of the routing accelerator 3 will be described.

【0047】図4にルーティングアクセラレータ3のブ
ロック図を示す。ルーティングアクセラレータ3は、受
信パケットをハードウェアによってフィルタリングする
フィルタリングアシスト部302、主にフィルタリング
を担当する下位プロセッサ306、下位プロセッサ30
6用ローカルメモリ305、受信パケットをハードウェ
アによってルーティングするルーティングアシスト部3
08、主にルーティングを担当する上位プロセッサ31
0、上位プロセッサ310用ローカルメモリ309、フ
ィルタリングアシスト部302と下位プロセッサ306
との間の情報の授受、あるいは下位プロセッサ306と
上位プロセッサ310との間の相互の情報の授受を行う
コマンドディスクリプタバッファ303、ネットワーク
アドレス(例えばIPアドレス)を物理アドレス(例え
ばMACアドレス)に変換するアドレス変換アシスト部
304、EISAバス4とのインタフェース部301、
パケットバッファ307、及びルータバス転送制御部3
11で構成される。
FIG. 4 is a block diagram of the routing accelerator 3. The routing accelerator 3 includes a filtering assist unit 302 for filtering received packets by hardware, a lower processor 306 mainly responsible for filtering, and a lower processor 30.
6, local memory 305, routing assist unit 3 for routing received packets by hardware
08, upper processor 31 mainly responsible for routing
0, local memory 309 for upper processor 310, filtering assist unit 302, and lower processor 306
And a command descriptor buffer 303 for exchanging information with the lower processor 306 and the upper processor 310, and converting a network address (eg, an IP address) into a physical address (eg, a MAC address). Address conversion assist unit 304, interface unit 301 with EISA bus 4,
Packet buffer 307 and router bus transfer control unit 3
11.

【0048】まず、通信ポート5からルーティングアク
セラレータ3を経由してルータバス1へデータを転送す
る上り方向のデータパスに沿って、ルーティング処理を
図16を用いて説明する。
First, the routing process will be described with reference to FIG. 16 along an upward data path for transferring data from the communication port 5 to the router bus 1 via the routing accelerator 3.

【0049】通信ポート5が受信した全てのパケット
は、各々の通信ポート5が行うDMA転送によってEI
SAバスインタフェース部301を介してパケットバッ
ファ307に一旦格納される(1601)。このパケッ
トバッファ307へのパケット転送動作に並行して、フ
ィルタリングアシスト部302は、フィルタリングに必
要なパケットの先頭部のみを引き抜き、予め定められた
条件で比較及び判別を行うことにより、フィルタリング
を行う。フィルタリングの処理としては、本実施例で
は、取り扱うプロトコルのタイプ、例えばTCP/IP
あるいはOSIのいずれかを認識し、それ以外のプロト
コルのタイプの場合は以後のフィルタリング/ルーティ
ングをせずブリッジとしてのフィルタリングのみを行う
(1602)。なお、ユーザが設定したアプリケーショ
ン対応のアドレスデータパターンであるテンプレートと
比較してフィルタリングを行うこともできる。
All the packets received by the communication port 5 are EI by the DMA transfer performed by each communication port 5.
The data is temporarily stored in the packet buffer 307 via the SA bus interface unit 301 (1601). In parallel with the operation of transferring the packet to the packet buffer 307, the filtering assist unit 302 extracts only the leading part of the packet necessary for filtering, performs comparison and determination under predetermined conditions, and performs filtering. In the present embodiment, the type of protocol to be handled, such as TCP / IP,
Alternatively, it recognizes one of the OSIs, and in the case of other protocol types, performs only filtering as a bridge without performing subsequent filtering / routing (1602). In addition, filtering can be performed by comparing with a template which is an address data pattern corresponding to an application set by the user.

【0050】フィルタリングアシスト部302は、この
結果をコマンドディスクリプタバッファ303に、当該
パケットのパケットバッファ307へのポインタと対応
させて格納する。下位プロセッサ306はこの結果を引
き継いで、ソフトウェアによって更なるフィルタリング
を続行し、不要なパケットと判断すれば、当該パケット
を廃棄する(1603)。下位プロセッサ306は、ま
た、上り方向のバッファ空き状態の監視等のバッファ管
理を行う。そして、パケットが廃棄されなければ、ルー
ティング指示がコマンドディスクリプタバッファ303
に、パケットバッファ307へのポインタと対応させて
格納される。フィルタリング処理はこれで終了し、以後
ルーティング処理が次のように行われ(1604)、ル
ータバスへパケットデータを送信する(1605)。
The filtering assist unit 302 stores the result in the command descriptor buffer 303 in association with the pointer to the packet buffer 307 of the packet. The lower processor 306 takes over the result, continues the further filtering by software, and discards the packet if it determines that the packet is unnecessary (1603). The lower processor 306 also performs buffer management such as monitoring the free buffer status in the upstream direction. If the packet is not discarded, the routing instruction is sent to the command descriptor buffer 303.
Is stored in association with the pointer to the packet buffer 307. This completes the filtering process, and thereafter, the routing process is performed as follows (1604), and the packet data is transmitted to the router bus (1605).

【0051】上り方向のIPルーティング処理について
図14、15、17を用いて説明する。図17は、上位
プロセッサ310の上り方向IPルーティング処理を示
したフローチャートである。まず上位プロセッサ310
は、下位プロセッサ306からのルーティング指示を受
け、コマンドディスクリプタバッファ303に格納され
たパケットバッファへのポインタを参照して、受信パケ
ットデータを読み取る。なお、ここでは受信パケットデ
ータがIPパケットであるとする。
The upstream IP routing process will be described with reference to FIGS. FIG. 17 is a flowchart showing the upstream IP routing process of the upper processor 310. First, the upper processor 310
Receives the routing instruction from the lower processor 306, reads the received packet data with reference to the pointer to the packet buffer stored in the command descriptor buffer 303. Here, it is assumed that the received packet data is an IP packet.

【0052】図17において、まず受信パケットの宛先
IPアドレスを読み出し、該IPアドレスのネットワー
ク部分を図15に示すハッシュ関数処理を施し、ルーテ
ィングテーブルのエントリポインタを得る(176
0)。次に、そのエントリポインタの示すルーティング
情報中の宛先IPアドレス(仮にaとする)を得る(1
761)。受信パケットの宛先IPアドレス(32ビッ
ト)はサブネットを用いている可能性があるため、該ル
ーティング情報中のサブネットマスクを用いてホストア
ドレス部(下位nビット)を削除したネットワークアド
レス値(仮にbとする)を得る(1762)。そして、
aとbを比較し(1763)、一致していれば該ルーテ
ィング情報が受信パケットの宛先を管理する情報である
と判断して、該ルーティング情報内の次ルータのIPア
ドレス403と送出インタフェース404とを得る(1
764)。もし、aとbが不一致であれば、該ルーティ
ングテーブルはハッシュ処理で同じ値となった別のネッ
トワークアドレスの管理情報であるので、該ルーティン
グ情報内の次エントリへのポインタ405を読み出す
(1765)、そして、そのポインタの示すルーテイン
グ情報について同様の処理を繰り返す。
In FIG. 17, first, the destination IP address of the received packet is read out, the network portion of the IP address is subjected to the hash function processing shown in FIG. 15, and the entry pointer of the routing table is obtained (176).
0). Next, the destination IP address (tentatively, a) in the routing information indicated by the entry pointer is obtained (1).
761). Since the destination IP address (32 bits) of the received packet may use the subnet, the network address value (probably b and b) is obtained by deleting the host address part (lower n bits) using the subnet mask in the routing information. Is obtained (1762). And
a and b are compared (1763). If they match, the routing information is determined to be information for managing the destination of the received packet, and the IP address 403 of the next router in the routing information and the transmission interface 404 are determined. (1
764). If a and b do not match, the routing table is management information of another network address having the same value in the hash processing, so that the pointer 405 to the next entry in the routing information is read (1765). The same processing is repeated for the routing information indicated by the pointer.

【0053】尚、受信したIPパケットによってはさら
にオプション処理を必要とすることもある。
Incidentally, depending on the received IP packet, further optional processing may be required.

【0054】このIP処理を終了すると、上位プロセッ
サ310は、ルータバス転送制御部311を起動して宛
先モジュール、具体的には宛先のルーティングアシスト
部308ヘ転送する。転送動作として、転送元のルータ
バス転送制御部311は、転送要求、次ホップIPアド
レス、宛先ポート番号等のコマンドデータを予め転送先
のルータバス転送制御部311に通知し、転送先の上位
プロセッサ310がこれを受ける。転送先の上位プロセ
ッサ310が転送受入れが準備できたとき、転送元のル
ータバス転送制御部311に返答を返すことによって、
パケット転送を開始する。
When the IP processing is completed, the upper processor 310 activates the router bus transfer control unit 311 to transfer the packet to the destination module, specifically, the routing assist unit 308 of the destination. As a transfer operation, the transfer source router bus transfer control unit 311 notifies the transfer destination router bus transfer control unit 311 of command data such as a transfer request, a next hop IP address, a destination port number, and the like in advance, and transmits the transfer destination host processor. 310 receives this. When the upper processor 310 of the transfer destination is ready to accept the transfer, by returning a reply to the router bus transfer controller 311 of the transfer source,
Start packet transfer.

【0055】以上が転送元のルーティングアクセラレー
タ3による上り方向の処理である。
The above is the processing in the upstream direction by the routing accelerator 3 of the transfer source.

【0056】次に転送先のルーティングアクセラレータ
3による下り方向(ルータバスから通信ポートへの方
向)のパケットの流れに沿った処理を図18にそって説
明する。
Next, processing performed by the routing accelerator 3 at the transfer destination along the flow of packets in the downward direction (from the router bus to the communication port) will be described with reference to FIG.

【0057】ルータバス転送制御部311は、転送元の
ルータバス転送制御部311から転送要求を受けると、
上位プロセッサ310にその旨を通知する。下り方向の
バッファ管理は上位プロセッサ310が行う。上位プロ
セッサ310は、パケットバッファ307に対する格納
先開始ポインタをルータバス転送制御部311に与え
る。ルータバス転送制御部311は、転送元のルータバ
ス転送制御部311とハンドシェークをとりつつ、バッ
ファアドレスを更新しながら、ルータバス1から受けた
パケットをパケットバッファ307に格納する。パケッ
ト格納後、上位プロセッサ310は、コマンドディスク
リプタバッファ303へ格納終了通知と宛先ポート番号
とバッファへのポインタとを格納する(1801)。
When the router bus transfer control unit 311 receives a transfer request from the transfer source router bus transfer control unit 311,
The upper processor 310 is notified of this fact. The host processor 310 performs downstream buffer management. The host processor 310 gives a storage destination start pointer to the packet buffer 307 to the router bus transfer control unit 311. The router bus transfer control unit 311 stores the packet received from the router bus 1 in the packet buffer 307 while updating the buffer address while performing handshaking with the transfer source router bus transfer control unit 311. After storing the packet, the upper processor 310 stores the storage end notification, the destination port number, and the pointer to the buffer in the command descriptor buffer 303 (1801).

【0058】下位プロセッサ306は、これを受けて以
下の処理を行う。下位プロセッサ306は、次ホップI
Pアドレスをアドレス変換アシスト部304に入れる。
一方、アドレス変換アシスト部304は、ネットワーク
アドレス(IPアドレス)を物理アドレス(MACアド
レス)に変換して下位プロセッサ306に教える(18
02)。なお、このIPアドレスからMACアドレスへ
の変換手法については、ARPプロトコル(Address Res
olution Protocol)により可能であることは一般に知ら
れている。また、別の手法としてはIPアドレスとMA
Cアドレスとの変換テーブルを予め持ち、その変換テー
ブルを用いて変換処理を行っても良いし、ARPプロト
コルによる結果を登録する学習型の変換テーブルを構築
して変換処理を行っても良い。
The lower processor 306 receives this and performs the following processing. The lower processor 306 sends the next hop I
The P address is input to the address conversion assist unit 304.
On the other hand, the address conversion assisting unit 304 converts the network address (IP address) into a physical address (MAC address) and informs the lower processor 306 (18).
02). Note that this IP address to MAC address conversion method is described in ARP protocol (Address Res
It is generally known that this is possible with the solution protocol. Another method is to use IP address and MA.
A conversion table with the C address may be provided in advance, and the conversion process may be performed using the conversion table. Alternatively, the conversion process may be performed by constructing a learning type conversion table for registering the result of the ARP protocol.

【0059】さらに、下位プロセッサ306は、宛先通
信ポート対応にパケット長を調整するためのパケットデ
ータの分割(セグメンティング)が必要であればパケッ
トバッファ307内のパケットを分割する(180
3)。
Further, the lower processor 306 divides the packet in the packet buffer 307 if it is necessary to divide (segment) the packet data for adjusting the packet length corresponding to the destination communication port (180).
3).

【0060】しかる後に下位プロセッサ306は、該パ
ケットデータ(あるいはセグメンティングされた複数の
パケットデータ)に、宛先の物理アドレスを付加して対
応するポートのパケット形式に構成する。このようにし
て、下位プロセッサ306は、送信パケットの準備がで
きると、配下の通信ポート5を起動してネットワークへ
の送信を行う(1804)。
Thereafter, the lower processor 306 adds a destination physical address to the packet data (or a plurality of segmented packet data) to form a packet format of a corresponding port. In this way, when the lower-level processor 306 is ready for the transmission packet, it activates the subordinate communication port 5 to perform transmission to the network (1804).

【0061】また、本実施例のルータは、マルチプロト
コルをサポートすることができる。
The router according to the present embodiment can support multiple protocols.

【0062】すなわち、前述したフィルタリング処理に
おいて、受信パケットヘッダから、TCP/IPプロト
コル、OSIプロトコルが判別される。その結果に基づ
いて、IPルーティング、またはOSIルーティングが
続行される。また、プロトコルが判別できない場合、ブ
リッジとしてパケットがルーティングされる。ブリッジ
中継機能については後述する。
That is, in the above-described filtering processing, the TCP / IP protocol and the OSI protocol are determined from the received packet header. Based on the result, IP routing or OSI routing is continued. If the protocol cannot be determined, the packet is routed as a bridge. The bridge relay function will be described later.

【0063】なお、本実施例では、フィルタリングはフ
ィルタリングアシスト部302と下位プロセッサ306
とで行い、ルーティングは上位プロセッサ310とルー
ティングアシスト部308とで行い、アドレス変換は下
位プロセッサ306とアドレス変換アシスト部304と
で行う構成であるが、前述のハードウェアによるアシス
ト手段を具えず、マイクロプロセッサが、ソフトウェア
処理で行うようにすることもできる。
In this embodiment, filtering is performed by the filtering assist unit 302 and the lower processor 306.
In this configuration, routing is performed by the upper processor 310 and the routing assist unit 308, and address conversion is performed by the lower processor 306 and the address conversion assist unit 304. The processor may perform the processing by software.

【0064】4.拡張性 次に、本発明の特徴である拡張性(スケーラビリティ)
について説明する。以上に述べてきたように本発明のル
ータの構成は通信ポート数が8個以下の低速回線とルー
テイングアクセラレータ1個からなるモジュールと管理
部のモジュールにより小規模ルータを構成することが出
来る。そして、通信ポートとルーティングアクセラレー
タとを組にしてモジュールを増設すれば、小規模ルータ
と同じアーキテクチャで中規模から大規模までのルータ
を実現できる。
4. Extensibility Next, scalability, which is a feature of the present invention.
Will be described. As described above, in the configuration of the router according to the present invention, a small-scale router can be configured by a module including a low-speed line having eight or less communication ports, one routing accelerator, and a module of the management unit. If a communication port and a routing accelerator are paired to add a module, a middle- to large-scale router can be realized with the same architecture as a small-scale router.

【0065】5.パケットデータ転送用バスと制御デー
タ転送用バスの分離 次に、前述した実施例をさらに高速化する他の実施例に
ついて図5を用いて説明する。本実施例では、前述のル
ータバス1をルーティングアクセラレータ8間のパケッ
トデータ転送専用とし、ルータ管理部2とルーティング
アクセラレータ8との間の管理フレームや中継情報等の
制御データの転送には第三の結合手段としての別のバ
ス、即ち、制御系バス5を設けた。これにより、ルータ
中継すべきパケットデータを有するルーティングアクセ
ラレータの対は、他のルーティングアクセラレータがル
ータ管理部2とデータ転送していても、ルータバス1を
用いてパケットデータ転送を行なうことができるので、
ルータは装置としてより高速となる。なお、ルーティン
グアクセラレータ8に制御系バス5を接続するには、前
述の図4中のルータバス転送制御311のバスインタフ
ェースを、ルータバス1と制御系バス5に対応した2チ
ャンネルのDMA制御回路で実現できる。
5. Separation of Packet Data Transfer Bus and Control Data Transfer Bus Next, another embodiment for further increasing the speed of the above-described embodiment will be described with reference to FIG. In the present embodiment, the router bus 1 is dedicated to the transfer of packet data between the routing accelerators 8, and the transfer of control data such as management frames and relay information between the router management unit 2 and the routing accelerator 8 is performed by the third method. Another bus as a coupling means, that is, a control system bus 5 was provided. Accordingly, a pair of routing accelerators having packet data to be relayed by a router can perform packet data transfer using the router bus 1 even if another routing accelerator is transferring data with the router management unit 2.
Routers are faster as devices. In order to connect the control bus 5 to the routing accelerator 8, the bus interface of the router bus transfer control 311 in FIG. 4 is replaced by a two-channel DMA control circuit corresponding to the router bus 1 and the control bus 5. realizable.

【0066】さらに、この第三の結合手段を利用した場
合のルータシステムの拡張性について図6、図7を用い
て説明する。この実施例によれば、従来ルータに本発明
のルーティングアクセラレータをバス結合することによ
り、ルータとしての性能を向上させ、かつ大規模ネット
ワークへ対応させることができる。
Further, the scalability of the router system when the third coupling means is used will be described with reference to FIGS. According to this embodiment, the performance of the router can be improved and a large-scale network can be accommodated by connecting the routing accelerator of the present invention to the conventional router via a bus.

【0067】図6は従来装置を拡張したルータの一実施
例である。図6中の点線で囲んだ部分は、従来のルータ
の構成要素である。
FIG. 6 shows an embodiment of a router in which the conventional device is extended. The portion surrounded by the dotted line in FIG. 6 is a component of the conventional router.

【0068】図7は、この従来のルータの構成要素だけ
を示したブロック図である。図7において、5は、ルー
タや小型の情報処理装置において標準的に用いられるバ
スで、ここではVMEバスとする。VMEバス5に対し
て、メインメモリとマイクロプロセッサ等からなる主プ
ロセッサ部6と、通信ポート部として回線制御部71、
LAN制御部72及び73が接続されている。通常この
従来のルータにおいては以下のようにルーティングを行
なう。
FIG. 7 is a block diagram showing only the components of the conventional router. In FIG. 7, reference numeral 5 denotes a bus that is used as a standard in routers and small information processing devices, and is a VME bus here. For the VME bus 5, a main processor unit 6 including a main memory and a microprocessor, etc., a line control unit 71 as a communication port unit,
LAN controllers 72 and 73 are connected. Normally, this conventional router performs routing as follows.

【0069】例えば、LAN制御部72が受信したパケ
ットをすべて主プロセッサ部6が受取り、宛先ポートの
選択を行なう。そして、例えば、宛先ポートがLAN制
御部73であれば、該パケットデータをVMEバス5を
介してLAN制御部73に転送することによりルーティ
ング中継を行なう。したがって、VMEバス5は、主プ
ロセッサ部6と各通信制御部71乃至73との間でパケ
ットデータと制御情報の両方を授受するために用いられ
る。
For example, the main processor unit 6 receives all packets received by the LAN control unit 72 and selects a destination port. Then, for example, if the destination port is the LAN control unit 73, routing relay is performed by transferring the packet data to the LAN control unit 73 via the VME bus 5. Therefore, the VME bus 5 is used for exchanging both packet data and control information between the main processor unit 6 and each of the communication control units 71 to 73.

【0070】さて、図6に戻り本発明の実施例の説明を
続ける。ここで、ルーティングアクセラレータ8は、前
述の第一、第二のバスに加え第三のバス接続ができる。
そして、第三のバスとして従来のルータで用いられてい
るVMEバスを用いることにより、主プロセッサ部6と
結合する。一方、高速なルータバス1は、ルーティング
アクセラレータ8間のパケットデータのみを転送する。
即ち本実施例においては、ルータ全体を主プロセッサ部
6が管理し、また、中継情報テーブルを各ルーティング
アクセラレータ8に対して配布する機能など、図5のル
ータ管理部2の代行を行なうことにより、従来のルータ
を高速性と拡張性を兼ね備えた本発明のルータに拡張す
ることができる。
Returning to FIG. 6, description of the embodiment of the present invention will be continued. Here, the routing accelerator 8 can make a third bus connection in addition to the first and second buses described above.
The third bus is connected to the main processor unit 6 by using a VME bus used in a conventional router. On the other hand, the high-speed router bus 1 transfers only packet data between the routing accelerators 8.
That is, in this embodiment, the main processor unit 6 manages the entire router, and the router management unit 2 shown in FIG. 5 is substituted for the function such as distributing the relay information table to each of the routing accelerators 8. The conventional router can be extended to the router of the present invention having both high speed and expandability.

【0071】また、本実施例では従来装置としてルータ
を用いたが、ルータ専用機でなくワークステーション等
の小型の情報処理装置とルーティングアクセラレータ8
を接続すれば、新しいプロトコルへの早期対応などのワ
ークステーション特有の拡張性も生じる。
In this embodiment, a router is used as a conventional device. However, a small information processing device such as a workstation and a routing accelerator 8 are used instead of a dedicated router.
The connection also provides workstation-specific scalability, such as early response to new protocols.

【0072】6.補助プロセッサの追加による機能拡張 次に本発明ルータの機能拡張性をさらに向上するための
他の実施例について図8を用いて説明する。図8はのブ
ロック図では、図1のブロック図のルータに比べ、さら
に補助プロセッサ7を有する。この補助プロセッサ7
は、ルータ管理部2の処理、即ち、装置全体の管理機
能、或いはルーティングプロトコルの処理と中継経路選
択情報テーブルの作成機能の一部を分担してもよい。し
かし、ここでは、ルータの機能拡張性を向上するため
に、他の情報処理装置との接続、即ち、前述の第三のバ
スを用いた結合機能を代行するためのインタフェース機
能を実現する例について説明する。
6. Function Expansion by Adding Auxiliary Processor Next, another embodiment for further improving the function expandability of the router of the present invention will be described with reference to FIG. 8 has an auxiliary processor 7 in addition to the router shown in the block diagram of FIG. This auxiliary processor 7
May share a part of the processing of the router management unit 2, that is, the function of managing the entire apparatus, or the processing of the routing protocol and the function of creating the relay route selection information table. However, here, in order to improve the function expandability of the router, an example of realizing an interface function for connecting to another information processing device, that is, a proxy function using the third bus described above, is described. explain.

【0073】図9において、ルータ100は、外部接続
バス(例としてSCSI)200とルータバス1とを接
続する外部インタフェースボード101を補助プロセッ
サとして実装している。ワークステーション等の情報処
理装置200は、外部接続バスとしてSCSIバス20
1を有している。ここで、情報処理装置200は、ルー
タ100の処理不可能なプロトコル、例えばコネクショ
ンオリエントな従来系ホスト−端末通信プロトコル等を
処理可能であるとする。ルータ100は、回線制御ポー
ト56から従来プロトコルに従ったパケットデータを受
信すると、回線制御ポート56に接続しているルーティ
ングアクセラレータ3からルータバス1を介して外部イ
ンタフェースボード101に受信パケットデータを転送
する。さらに外部インタフェースボード101は、受信
パケットデータをSCSIバス201を介して情報処理
装置200に転送することにより、受信パケットデータ
の中継処理を行う。
In FIG. 9, the router 100 is equipped with an external interface board 101 for connecting an external connection bus (eg, SCSI) 200 and the router bus 1 as an auxiliary processor. The information processing device 200 such as a workstation is provided with a SCSI bus 20 as an external connection bus.
One. Here, it is assumed that the information processing device 200 can process a protocol that cannot be processed by the router 100, for example, a connection-oriented conventional host-terminal communication protocol or the like. When receiving the packet data according to the conventional protocol from the line control port 56, the router 100 transfers the received packet data from the routing accelerator 3 connected to the line control port 56 to the external interface board 101 via the router bus 1. . Further, the external interface board 101 performs the relay processing of the received packet data by transferring the received packet data to the information processing device 200 via the SCSI bus 201.

【0074】図10は、外部インタフェースボード10
1の構成例を示したブロック図である。外部インタフェ
ースボード101は、ルーティングアクセラレータ3と
外部の情報処理装置200間で論理的なインタフェース
も実現可能とする。そのため、インタフェース用プロセ
ッサ102を設け、プロセッサ102が動作するための
ローカルメモリ103を設けた。さらに外部インタフェ
ースボード101は、ルータバス転送制御部104、S
CSIバス転送制御部105、パケットデータを蓄積す
るパケットバッファ107とその制御部106を有す
る。そして、プロセッサ102とパケットバッファ10
7への外部アクセスが同時に行なえるように、バススイ
ッチ108を設けた。したがって、外部インタフェース
ボード101の動作は以下のとおりである。ルータバス
転送制御部104は、パケットバス1からのパケットデ
ータをパケットバッファ107に格納しする。プロセッ
サ102は、該パケットデータに対し外部の情報処理装
置200がアクセスするためのディスクリプタを必要に
応じて付加し、外部の情報処理装置200に対して通知
する。外部の情報処理装置200は、SCSIバス転送
制御部105を介して該パケットデータをパケットバッ
ファ107から読みだす。
FIG. 10 shows the external interface board 10.
1 is a block diagram showing a configuration example of FIG. The external interface board 101 also enables a logical interface between the routing accelerator 3 and the external information processing device 200. Therefore, an interface processor 102 is provided, and a local memory 103 for operating the processor 102 is provided. Further, the external interface board 101 includes a router bus transfer control unit 104, S
A CSI bus transfer control unit 105 includes a packet buffer 107 for storing packet data and a control unit 106 for the packet buffer 107. Then, the processor 102 and the packet buffer 10
The bus switch 108 is provided so that external access to the PC 7 can be performed simultaneously. Therefore, the operation of the external interface board 101 is as follows. The router bus transfer control unit 104 stores the packet data from the packet bus 1 in the packet buffer 107. The processor 102 adds a descriptor for accessing the packet data by the external information processing device 200 as necessary, and notifies the external information processing device 200 of the packet data. The external information processing device 200 reads the packet data from the packet buffer 107 via the SCSI bus transfer control unit 105.

【0075】以上のように、ルータは、外部とのインタ
フェース機能を有する補助プロセッサを有するので、機
能の拡張が可能となる。
As described above, since the router has the auxiliary processor having an external interface function, the function can be expanded.

【0076】7.ルータ処理とブリッジ処理との混在処
理 次に本発明によるインタネット装置において、ルーティ
ング処理が不可能な場合のブリッジ中継処理についての
実施例を以下説明する。
7. Next, a description will be given of an embodiment of a bridge relay process when a routing process is impossible in the Internet device according to the present invention.

【0077】受信したパケットデータがルーティングア
クセラレータにより処理不可能なプロトコルに従ってい
た場合、既に述べたように、そのルーティングアクセラ
レータが他のルータ或いは情報処理装置と接続してお
り、それら別装置での処理が期待できるのであれば、そ
のルーティングアクセラレータは、受信したパケットデ
ータを他のルータ或いは情報処理装置に転送することに
より処理させることができる。また、前述の補助プロセ
ッサや主プロセッサでの処理が期待できる場合も同様で
ある。しかしながら、通信プロトコルは多様であるの
で、本発明のインタネットワーク装置全体でもルーティ
ングができないパケットデータを受信する場合も当然起
りうる。この場合、可能性の有る全ネットワークにたい
してデータリンクレベルでの変換のみを行なって中継す
るブリッジ中継処理を行なう。即ち、該ルーティングア
クセラレータは他の複数のルーティングアクセラレータ
に対して同報することにより、ブリッジ中継を行なう。
しかし、本インタネットワーク装置ではルータ中継とブ
リッジ中継が混在して生じる場合が当然起りうる。この
場合ルータバスに対する同報転送には時間がかり、装置
としての中継性能が低下する場合も有る。これについて
図11を用いて説明する。
If the received packet data conforms to a protocol that cannot be processed by the routing accelerator, as described above, the routing accelerator is connected to another router or information processing device, and the processing by the other device is performed. If expected, the routing accelerator can process the received packet data by transferring it to another router or information processing device. The same applies to the case where processing by the above-described auxiliary processor and main processor can be expected. However, since there are various communication protocols, a case where packet data which cannot be routed even by the entire internetwork apparatus of the present invention may be received naturally occurs. In this case, bridge relay processing is performed for all possible networks by performing only conversion at the data link level and relaying. That is, the routing accelerator performs bridge relay by broadcasting to a plurality of other routing accelerators.
However, in the present internetwork apparatus, a case where router relay and bridge relay are mixed may naturally occur. In this case, the broadcast transfer to the router bus takes time, and the relay performance as a device may be reduced. This will be described with reference to FIG.

【0078】図11のインタネットワーク装置におい
て、ルーティングアクセラレータRA(2)は配下の通
信ポートLC(2)の受信パケットをルーティング処理
した結果、他のルーティングアクセラレータRA(3)
の通信ポートLC(3)に対しルータ中継をすべくルー
タバスを介してルーティングアクセラレータRA(3)
へパケットデータの転送を始めたとする(図11中のt
1で示したデータ転送経路)。
In the internetwork apparatus of FIG. 11, the routing accelerator RA (2) performs a routing process on the received packet of the communication port LC (2) under the control thereof, and as a result, the other routing accelerator RA (3)
A routing accelerator RA (3) via a router bus for relaying to a communication port LC (3) of the router
It is assumed that transfer of packet data has started (t in FIG. 11).
1).

【0079】一方、ルーティングアクセラレータRA
(1)は配下の通信ポートLC(1)の受信パケットを
ルーティング処理しようとした結果、ルーティングアク
セラレータRA(1)ではルーティング処理できないパ
ケットデータであると判断し、他の全ルーティングアク
セラレータに対してブリッジ中継すべくパケットデータ
を同報でデータ転送しようとする。しかし、この時点で
ルーティングアクセラレータRA(3)はルーティング
アクセラレータRA(2)からデータが転送中であるか
ら、ルーティングアクセラレータRA(1)は、同報で
のデータ転送ができない。従って、ルーティングアクセ
ラレータRA(1)は、ルーティングアクセラレータR
A(3)がルータバスからのデータ受信準備できるまで
待つことになる(図11中のt2で示した未完了のデー
タ転送)。
On the other hand, the routing accelerator RA
As for (1), as a result of trying to route the received packet of the communication port LC (1) under the control, the routing accelerator RA (1) judges that the packet data cannot be routed, and bridges all other routing accelerators. Attempts to transfer packet data by broadcast to relay. However, at this point, the routing accelerator RA (3) is not transferring data from the routing accelerator RA (2), so that the routing accelerator RA (1) cannot transfer data by broadcasting. Therefore, the routing accelerator RA (1)
It waits until A (3) is ready to receive data from the router bus (incomplete data transfer indicated by t2 in FIG. 11).

【0080】さらに、ルーティングアクセラレータRA
(2)からルーティングアクセラレータRA(3)への
データ転送が完了しないうちに、また別のルーティング
アクセラレータRA(4)からルーティングアクセラレ
ータRA(5)へのルータ中継のためのデータ転送が発
生したとすると(図11中のt3で示したデータ転
送)、ルーティングアクセラレータRA(1)は、ルー
ティングアクセラレータRA(5)がルータバスからの
データ受信準備ができるまで待つことになる。
Further, the routing accelerator RA
It is assumed that before the data transfer from (2) to routing accelerator RA (3) is completed, data transfer for router relay from another routing accelerator RA (4) to routing accelerator RA (5) occurs. (The data transfer indicated by t3 in FIG. 11), the routing accelerator RA (1) waits until the routing accelerator RA (5) is ready to receive data from the router bus.

【0081】即ち、ブリッジ中継すべく他のすべてのル
ーティングアクセラレータに対して同報転送しようとす
るルーティングアクセラレータは、他のルーティングア
クセラレータ間のデータ転送の完了を待つため、配下の
通信ポートからのルーティング可能な受信データを蓄積
し続けなければならない。結果として、ブリッジ中継を
比較的多く起すネットワークに接続したインタネットワ
ーク装置のルーティング処理性能が低下する。
In other words, a routing accelerator that intends to perform a broadcast transfer to all the other routing accelerators for bridge relaying waits for the completion of data transfer between the other routing accelerators, so that routing from a subordinate communication port is possible. It is necessary to keep storing the received data. As a result, the routing processing performance of an internetwork device connected to a network that causes a relatively large number of bridge relays is reduced.

【0082】このような問題を解決するため、本発明で
は、前述の補助プロセッサをブリッジ中継の補助機能と
して用いる。この実施例について図12及び図13を用
いて説明する。
In order to solve such a problem, in the present invention, the above-mentioned auxiliary processor is used as an auxiliary function of bridge relay. This embodiment will be described with reference to FIGS.

【0083】図12のインタネットワーク装置において
も、ルーティングアクセラレータRA(2)からルーテ
ィングアクセラレータRA(3)へのデータ転送が生じ
たとする(図12中のt1で示したデータ転送)。ここ
で、ルーティングアクセラレータRA(1)は、図11
と同様に、配下の通信ポートからの受信パケットデータ
をブリッジ中継すべきであると判断する。この時、ルー
ティングアクセラレータRA(1)は、他のすべてのル
ーティングアクセラレータに対して同報転送するのでは
なく、ブリッジ中継アシスト部700に対してパケット
データ転送を行う(図12中のt2′で示したデータ転
送)。しかるのち、ブリッジ中継アシスト部700は、
全ルーティングアクセラレータに対して同報転送を行お
うとする。ここで、同様に、ルーティングアクセラレー
タRA(4)からルーティングアクセラレータRA
(5)へのデータ転送が生じた(図12中のt3で示し
たデータ転送)としても、ブリッジ中継アシスト部70
0において同報転送のための待ちを生ずるだけであり、
RA(1)は、以後のルーティング可能な受信データを
蓄積し続ける必要は無い。従ってルーティング処理性能
の低下を防止できる。
In the internetwork apparatus shown in FIG. 12, it is assumed that data transfer occurs from routing accelerator RA (2) to routing accelerator RA (3) (data transfer indicated by t1 in FIG. 12). Here, the routing accelerator RA (1) corresponds to FIG.
Similarly to the above, it is determined that the packet relay from the subordinate communication port should be bridge-relayed. At this time, the routing accelerator RA (1) performs packet data transfer to the bridge relay assist unit 700 instead of performing broadcast transfer to all other routing accelerators (indicated by t2 'in FIG. 12). Data transfer). After that, the bridge relay assist unit 700
Attempts to broadcast to all routing accelerators. Here, similarly, from the routing accelerator RA (4) to the routing accelerator RA (4).
Even if data transfer to (5) occurs (data transfer indicated by t3 in FIG. 12), the bridge relay assist unit 70
0 only causes a wait for the broadcast transfer,
RA (1) does not need to keep accumulating subsequent routable received data. Therefore, it is possible to prevent a decrease in routing processing performance.

【0084】次に、ブリッジ中継アシスト部700の構
成を図13を用いて説明する。ブリッジ中継アシスト部
700は、主にバッファ管理を行うバッファ管理プロセ
ッサ701、プロセッサ701のプログラム及び変数な
どを記憶するためのローカルメモリ702、ブリッジ中
継すべきデータを一時的に格納するためのパケットバッ
ファ703、ルータバスとの転送制御回路704、ルー
タバスからのデータ転送とプロセッサ701のローカル
メモリ702のアクセスを同時に行うためのバスの切り
離しを制御するバススイッチ回路705からなる。前述
のように、ルーティングアクセラレータからブリッジ中
継しようとしたパケットデータは、ルータバス転送制御
回路704を経てパケットバッファ703に格納され
る。この時、パケットバッファ703はバッファ管理プ
ロセッサ701によりキュー管理されており、バッファ
管理プロセッサ701はパケットバッファ703に格納
された順に、全ルーティングアクセラレータに対して同
報転送を行う。
Next, the configuration of the bridge relay assist unit 700 will be described with reference to FIG. The bridge relay assist unit 700 mainly includes a buffer management processor 701 for performing buffer management, a local memory 702 for storing programs and variables of the processor 701, and a packet buffer 703 for temporarily storing data to be bridge-relayed. And a transfer control circuit 704 for connection with the router bus, and a bus switch circuit 705 for controlling disconnection of the bus for simultaneously transferring data from the router bus and accessing the local memory 702 of the processor 701. As described above, the packet data to be bridge-relayed from the routing accelerator is stored in the packet buffer 703 via the router bus transfer control circuit 704. At this time, the queue of the packet buffer 703 is managed by the buffer management processor 701, and the buffer management processor 701 performs the broadcast transfer to all the routing accelerators in the order stored in the packet buffer 703.

【0085】以上のように、本実施例によれば、補助プ
ロセッサを用いてブリッジ処理を補助するので、ブルー
タにおけるルータ処理性能を向上させることができる。
As described above, according to the present embodiment, the bridge processing is assisted by using the auxiliary processor, so that the router processing performance in the brouter can be improved.

【0086】[0086]

【発明の効果】以上のように、本発明によれば以下の効
果がある。
As described above, the present invention has the following effects.

【0087】ネットワーク管理機能などの非ルーティン
グ処理を行なう管理部とルーティング処理を行うルーテ
ィングアクセラレータとを独立化させたので、ルーティ
ングアクセラレータがルーティング処理に専従するため
高速化することができる。
Since the management unit for performing non-routing processing such as a network management function and the routing accelerator for performing routing processing are made independent, the speed can be increased because the routing accelerator is dedicated to the routing processing.

【0088】複数のルーティングアクセラレータにより
複数のパケットデータを同時にルーティングできるの
で、装置全体としてのルーティング性能が高速になる。
また、ルーティングアクセラレータを増設できるので、
必要なネットワーク数や通信トラフィックに応じて、容
易にルータの構成を拡張できる。
Since a plurality of packet data can be simultaneously routed by a plurality of routing accelerators, the routing performance of the entire apparatus becomes faster.
Also, you can add more routing accelerators,
The configuration of the router can be easily expanded according to the required number of networks and communication traffic.

【0089】さらに、本発明の補助プロセッサを用いれ
ば、ブリッジ中継処理を高速に行なうことや、外部の装
置と接続して機能を拡張することも可能となる。
Further, by using the auxiliary processor of the present invention, it is possible to perform bridge relay processing at high speed, and to extend the function by connecting to an external device.

【0090】従って、本発明によれば拡張性を持ち、か
つ高速なルータ処理及びブリッジ処理を行うインタネッ
トワーク装置を実現できる。
Therefore, according to the present invention, an internetwork apparatus having expandability and performing high-speed router processing and bridge processing can be realized.

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

【図1】本発明の一実施例に係るインタネットワーク装
置の構成を示すブロック図である。
FIG. 1 is a block diagram illustrating a configuration of an internetwork device according to an embodiment of the present invention.

【図2】ルータを用いたネットワークシステムを摸式的
に表した図である。
FIG. 2 is a diagram schematically illustrating a network system using a router.

【図3】本発明の一実施例を用いた場合のルーティング
中継のケースを示す図である。
FIG. 3 is a diagram showing a case of routing relay when one embodiment of the present invention is used.

【図4】本発明の一実施例に係るルーティングアクセラ
レータを示すブロック図である。
FIG. 4 is a block diagram illustrating a routing accelerator according to an embodiment of the present invention.

【図5】パケット専用バスと制御データバスとを分離し
た本発明の一実施例のインタネットワーク装置の構成を
示すブロック図である。
FIG. 5 is a block diagram showing a configuration of an internetwork apparatus according to an embodiment of the present invention in which a packet dedicated bus and a control data bus are separated.

【図6】本発明の一実施例に係るルーティングアクセラ
レータと従来のルータ装置を結合したインタネットワー
ク装置の構成を示すブロック図である。
FIG. 6 is a block diagram showing a configuration of an internetwork device in which a routing accelerator according to one embodiment of the present invention and a conventional router device are combined.

【図7】従来のルータ装置の構成を示すブロック図であ
る。
FIG. 7 is a block diagram illustrating a configuration of a conventional router device.

【図8】補助プロセッサを設けた本発明の一実施例の構
成を示すブロック図である。
FIG. 8 is a block diagram showing a configuration of an embodiment of the present invention provided with an auxiliary processor.

【図9】本発明の一実施例と情報処理装置を外部バスで
接続したインタネットワーク装置の構成を示すブロック
図である。
FIG. 9 is a block diagram showing a configuration of an internetwork apparatus in which an embodiment of the present invention and an information processing apparatus are connected by an external bus.

【図10】本発明の一実施例に係る外部インタフェース
ボードの構成を示すブロック図である。
FIG. 10 is a block diagram showing a configuration of an external interface board according to one embodiment of the present invention.

【図11】本発明の一実施例におけるブリッジ中継アシ
スト部無しでのブリッジ中継のケースを示す図である。
FIG. 11 is a diagram showing a case of bridge relay without a bridge relay assist unit in one embodiment of the present invention.

【図12】本発明の一実施例におけるブリッジ中継アシ
スト部有りでのブリッジ中継のケースを示す図である。
FIG. 12 is a diagram illustrating a case of bridge relay with a bridge relay assist unit according to an embodiment of the present invention.

【図13】本発明の一実施例に係るブリッジ中継アシス
ト部の構成を示すブロック図である。
FIG. 13 is a block diagram illustrating a configuration of a bridge relay assist unit according to an embodiment of the present invention.

【図14】本発明の一実施例に係るルーティング情報の
構成を示す図である。
FIG. 14 is a diagram showing a configuration of routing information according to one embodiment of the present invention.

【図15】本発明の一実施例に係るルーティングテーブ
ルの構成を示す図である。
FIG. 15 is a diagram showing a configuration of a routing table according to an embodiment of the present invention.

【図16】本発明の一実施例に係る上り方向のルーティ
ング処理を示すフローチャートである。
FIG. 16 is a flowchart illustrating an uplink routing process according to an embodiment of the present invention.

【図17】本発明の一実施例に係る上り方向のIPルー
ティング処理を示すフローチャートである。
FIG. 17 is a flowchart showing an upstream IP routing process according to an embodiment of the present invention.

【図18】本発明の一実施例に係る下り方向のルーティ
ング処理を示すフローチャートである。
FIG. 18 is a flowchart illustrating a downlink routing process according to an embodiment of the present invention.

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

1…ルータバス、2…ルータ管理部、3…ルーティング
アクセラレータ、4…下位バス、 5…制御系バス、
7…補助プロセッサ、51〜56…通信制御部、301
…EISAバスインタフェース部、302…フィルタリ
ングアシスト部、303…コマンドディスクリプタバッ
ファ、304…アドレス変換アシスト部、 305…ロ
ーカルメモリ、306…下位プロセッサ、307…パケ
ットバッファ、308…ルーティングアシスト部、 3
09…ローカルメモリ、310…上位プロセッサ、31
1…ルータバス制御部。
REFERENCE SIGNS LIST 1 router bus 2 router management unit 3 routing accelerator 4 lower bus 5 control bus
7 ... Auxiliary processor, 51-56 ... Communication control unit, 301
... EISA bus interface unit, 302 ... Filtering assist unit, 303 ... Command descriptor buffer, 304 ... Address conversion assist unit, 305 ... Local memory, 306 ... Lower processor, 307 ... Packet buffer, 308 ... Routing assist unit, 3
09: local memory, 310: upper processor, 31
1. Router bus control unit.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 榎本 博道 神奈川県秦野市堀山下1番地 株式会社日 立製作所神奈川工場内 (72)発明者 小山 俊明 神奈川県秦野市堀山下1番地 株式会社日 立製作所神奈川工場内 (72)発明者 高田 治 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 ──────────────────────────────────────────────────続 き Continuing from the front page (72) Inventor Hiromichi Enomoto 1 Horiyamashita, Hadano-shi, Kanagawa Pref. Inside the Kanagawa Plant of Hitachi Ltd. Inside the Kanagawa Plant (72) Inventor Osamu Takada 1099 Ozenji Temple, Aso-ku, Kawasaki-shi, Kanagawa Prefecture, Ltd.System Development Laboratory, Hitachi, Ltd.

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】ホスト管理部と、各々が上記ホスト管理部
および他のルーティングアクセラレータとの間で互いに
データの転送を行う複数のルーティングアクセラレータ
と、上記各ルーティングアクセラレータがこれを通して
ネットワークとの間でデータの送受信を行う通信ポート
とを備えた装置における通信処理方法であって、 上記ホスト管理部において、データ中継のための中継経
路情報を生成/変更し、この中継経路情報を上記複数の
ルーティングアクセラレータに配布し、 上記各ルーティングアクセラレータにおいて、上記通信
ポートからの受信データを上記配布された中継経路情報
に基づいてルーティング処理し、他のルーティングアク
セラレータに転送することを特徴とする通信処理方法。
1. A host management unit, a plurality of routing accelerators each transferring data between the host management unit and another routing accelerator, and each of the routing accelerators transmits data to and from a network. A communication processing method in an apparatus having a communication port for transmitting and receiving data, wherein the host management unit generates / changes relay route information for data relay, and transmits the relay route information to the plurality of routing accelerators. A communication processing method, comprising: distributing, in each of the routing accelerators, routing processing of data received from the communication port based on the distributed relay path information, and transferring the received data to another routing accelerator.
【請求項2】ホスト管理部と、各々が上記ホスト管理部
および他のルーティングアクセラレータとの間で互いに
データの転送を行う複数のルーティングアクセラレータ
と、上記各ルーティングアクセラレータがこれを通して
ネットワークとの間でデータの送受信を行う通信ポート
とを備えた装置における通信処理方法であって、 上記ホスト管理部において、上記データをルーティング
するためのルーティングテーブルを作成するステップ
と、上記ルーティングテーブルを上記複数のルーティン
グアクセラレータに配布するステップと、 上記各ルーティングアクセラレータにおいて、上記通信
ポートからの受信データを上記配布されたルーティング
テーブルを参照してルーティング処理し、他のルーティ
ングアクセラレータに転送するステップとを有すること
を特徴とする通信処理方法。
2. A host management unit, a plurality of routing accelerators each of which mutually transfers data between the host management unit and another routing accelerator, and each of the routing accelerators transmits data between the network and a network. A communication processing method in a device including a communication port for transmitting and receiving the data, wherein the host management unit creates a routing table for routing the data, and the routing table is transmitted to the plurality of routing accelerators. Distributing, and in each of the routing accelerators, performing a routing process on the received data from the communication port with reference to the distributed routing table and transferring the data to another routing accelerator. Communication processing method characterized in that it comprises and.
【請求項3】ホスト管理部と、各々が上記ホスト管理部
および他のルーティングアクセラレータとの間で互いに
パケットの転送を行う複数のルーティングアクセラレー
タと、上記各ルーティングアクセラレータがこれを通し
てネットワークとの間でパケットの送受信を行う通信ポ
ートとを備えた装置における通信処理方法であって、 上記ホスト管理部において、パケット中継のための中継
経路情報を生成/変更し、この中継経路情報を上記複数
のルーティングアクセラレータに配布し、 上記各ルーティングアクセラレータにおいて、上記通信
ポートからの受信パケットを上記配布された中継経路情
報に基づいてルーティング処理し、他のルーティングア
クセラレータに転送することを特徴とする通信処理方
法。
3. A host management unit, a plurality of routing accelerators each transferring packets between the host management unit and another routing accelerator, and each of the routing accelerators transmits packets to and from a network. A communication processing method in a device including a communication port for transmitting and receiving a packet, wherein the host management unit generates / changes relay route information for packet relay, and transfers the relay route information to the plurality of routing accelerators. A communication processing method comprising: distributing, and in each of the routing accelerators, performing a routing process on a received packet from the communication port based on the distributed relay path information, and transferring the packet to another routing accelerator.
【請求項4】第1の処理部と、複数の第2処理部とを備
え、上記第2の処理部の各々が、ネットワークからの受
信パケットに中継経路情報に基づいたルーティング処理
を施し、上記第1の処理部または他の第2の処理部に転
送するようにした装置における通信処理方法であって、 上記第1の処理部において、パケット中継のための上記
中継経路情報を生成/変更し、該中継経路情報を上記複
数の第2の処理部に配布し、 上記各第2の処理部において、上記配布された中継経路
情報を記憶することを特徴とする通信処理方法。
4. A processing apparatus comprising: a first processing unit; and a plurality of second processing units, wherein each of the second processing units performs a routing process on a packet received from a network based on relay route information, What is claimed is: 1. A communication processing method in an apparatus configured to transfer a packet to a first processing unit or another second processing unit, wherein the first processing unit generates / changes the relay path information for packet relay. A communication processing method comprising: distributing the relay route information to the plurality of second processing units; and storing the distributed relay route information in each of the second processing units.
【請求項5】第1の処理部と、複数の第2処理部とを備
え、上記第2の処理部の各々が、ネットワークからの受
信パケットにルーティングテーブルを参照してルーティ
ング処理を施し、上記第1の処理部または他の第2の処
理部に転送するようにした装置における通信処理方法で
あって、 上記第1の処理部において、上記ルーティングテーブル
を作成するステップと、該ルーティングテーブルを上記
複数の第2の処理部に配布するステップと、 上記各第2の処理部において、上記配布されたルーティ
ングテーブルを記憶するステップとを有することを特徴
とする通信処理方法。
5. A processing apparatus comprising: a first processing unit; and a plurality of second processing units, each of the second processing units performing a routing process on a packet received from the network with reference to a routing table, A communication processing method in an apparatus configured to transfer the routing table to a first processing unit or another second processing unit, wherein the first processing unit creates the routing table; A communication processing method, comprising: distributing to a plurality of second processing units; and, in each of the second processing units, storing the distributed routing table.
【請求項6】第1の処理部と、複数の第2処理部とを備
え、上記第2の処理部の各々が、ネットワークからの受
信パケットに中継経路情報に基づいたルーティング処理
を施し、上記第1の処理部または他の第2の処理部に転
送するようにした装置における通信処理方法であって、 上記第1の処理部において、他のインタネットワーク装
置との間でネットワークに関する情報をやり取りするた
めのプロトコルを利用して、上記中継経路情報を収集
し、該中継経路情報を上記複数の第2の処理部に配布
し、 上記各第2の処理部において、上記配布された中継経路
情報を記憶することを特徴とする通信処理方法。
6. A processing apparatus comprising: a first processing unit; and a plurality of second processing units, wherein each of the second processing units performs a routing process on a packet received from a network based on relay route information, What is claimed is: 1. A communication processing method in an apparatus configured to transfer information to a first processing unit or another second processing unit, wherein the first processing unit exchanges information about a network with another internetwork apparatus. And relaying the relay path information to the plurality of second processing units using a protocol for performing the processing, and in each of the second processing units, the distributed relay path information. A communication processing method characterized by storing
【請求項7】第1の処理部と、複数の第2処理部とを備
え、上記第2の処理部の各々が、ネットワークからの受
信パケットに中継経路情報に基づいたルーティング処理
を施し、上記第1の処理部または他の第2の処理部に転
送するようにした装置における通信処理方法であって、 上記第1の処理部において、ユーザにより設定された情
報から上記中継経路情報を収集し、該中継経路情報を上
記複数の第2の処理部に配布し、 上記各第2の処理部において、上記配布された中継経路
情報を記憶することを特徴とする通信処理方法。
7. A processing system comprising: a first processing unit; and a plurality of second processing units, each of which performs a routing process on a packet received from a network based on relay route information, What is claimed is: 1. A communication processing method in an apparatus configured to transfer the information to a first processing unit or another second processing unit, wherein the first processing unit collects the relay route information from information set by a user. A communication processing method comprising: distributing the relay route information to the plurality of second processing units; and storing the distributed relay route information in each of the second processing units.
JP2000245528A 1991-08-30 2000-08-08 Communication processing method Expired - Lifetime JP3475158B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000245528A JP3475158B2 (en) 1991-08-30 2000-08-08 Communication processing method

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP3-219610 1991-08-30
JP21961091 1991-08-30
JP2000245528A JP3475158B2 (en) 1991-08-30 2000-08-08 Communication processing method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP19673092A Division JP3113742B2 (en) 1991-08-30 1992-07-23 Internetwork equipment

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2002312672A Division JP3475192B2 (en) 1991-08-30 2002-10-28 Internetwork equipment and router

Publications (2)

Publication Number Publication Date
JP2001086149A true JP2001086149A (en) 2001-03-30
JP3475158B2 JP3475158B2 (en) 2003-12-08

Family

ID=26523235

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000245528A Expired - Lifetime JP3475158B2 (en) 1991-08-30 2000-08-08 Communication processing method

Country Status (1)

Country Link
JP (1) JP3475158B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009063545A1 (en) * 2007-11-12 2009-05-22 Fujitsu Limited Data retrieval device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009063545A1 (en) * 2007-11-12 2009-05-22 Fujitsu Limited Data retrieval device
JPWO2009063545A1 (en) * 2007-11-12 2011-03-24 富士通株式会社 Data retrieval device

Also Published As

Publication number Publication date
JP3475158B2 (en) 2003-12-08

Similar Documents

Publication Publication Date Title
JP3113742B2 (en) Internetwork equipment
US5434863A (en) Internetworking apparatus for connecting plural network systems and communication network system composed of plural network systems mutually connected
JP3645734B2 (en) Network relay device and network relay method
JP3575225B2 (en) Packet switch, packet switching network, and packet switching method
JP3142433B2 (en) Bridge device and bridge connection method
US6683885B1 (en) Network relaying apparatus and network relaying method
JP4007690B2 (en) End device and router
JPH10303965A (en) Routing system for router device
JP3645735B2 (en) Network relay device and network relay method
JP3645733B2 (en) Network relay device and network relay method
JP3352073B2 (en) Internetwork equipment
JP3475192B2 (en) Internetwork equipment and router
JP3475158B2 (en) Communication processing method
JP3156760B2 (en) Packet communication method
JP3435130B2 (en) Internetwork equipment
JPH06197111A (en) Internetwork device
JP3156231B2 (en) Address resolution server
US7110397B1 (en) Packet transfer apparatus
JP3097595B2 (en) LAN-to-LAN connection apparatus and method, and recording medium recording LAN-to-LAN connection control program
JP2923921B1 (en) Packet transfer method
JPH1093637A (en) Routing method for inter-network connection device
JP3185866B2 (en) Connectionless gateway device
KR0154016B1 (en) Method for searching atm address of destination lan emulation client by using lan-arp cache in lan emulation client
JPH09149084A (en) Routing method for virtual network
JP3501558B2 (en) ATM communication equipment

Legal Events

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

Free format text: PAYMENT UNTIL: 20070919

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20080919

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20080919

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090919

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090919

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100919

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100919

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110919

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120919

Year of fee payment: 9

EXPY Cancellation because of completion of term