JP2001086150A - インタネットワーク装置 - Google Patents
インタネットワーク装置Info
- Publication number
- JP2001086150A JP2001086150A JP2000245529A JP2000245529A JP2001086150A JP 2001086150 A JP2001086150 A JP 2001086150A JP 2000245529 A JP2000245529 A JP 2000245529A JP 2000245529 A JP2000245529 A JP 2000245529A JP 2001086150 A JP2001086150 A JP 2001086150A
- Authority
- JP
- Japan
- Prior art keywords
- routing
- router
- bus
- processor
- accelerator
- 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
Links
Abstract
く、ネットワークの規模に柔軟に対応できるインタネッ
トワーク装置を提供する。 【構成】 ルータ管理部2及びルーティングを行う複数
のルーティングアクセラレータモジュール3が高速バス
1で結合され、各々のルーティングアクセラレータ3に
は複数の通信ポート51〜56が互いに独立に接続され
る。 【効果】 本発明によれば、複数のルーティングアクセ
ラレータにより高速にルーティングができる。また、ル
ーティングアクセラレータの増設すれば、小規模から大
規模ネットワークへの対応が容易に実現できる。
Description
続する通信ネットワークシステムに係り、特にネットワ
ーク層レベルで複数のネットワークを接続するルータ装
置と称されるインタネットワーク装置及び、データリン
ク層レベルで複数のネットワークを接続するブリッジ機
能とネットワーク層レベルで複数のネットワークを接続
するルータ機能とを兼ね備えたブルータと称されるイン
タネットワーク装置に関する。
ては、ネットワークシステム階層のうちデータリンク層
(特にメディアアクセス副層)において相互接続を行う
ブリッジ、さらにその上位層であるネットワーク層にお
いて相互接続を行うルータなどがある。
rol)アドレスを管理し、あるネットワークからの受信フ
レーム(受信パケットデータとも言う)を他のネットワ
ークに中継するか否かの判断を、その受信フレーム中の
宛先MACアドレスの内容及び中継制御情報であるフィ
ルタリングアドレステーブルに従い行う。
のインターネットワーキング用アドレス及び前記ルータ
内のアドレス解決(経路情報)テーブルに従い、あらか
じめ定められた経路あるいは最適な経路を選択し、受信
フレームの中継を行う。
コルにはいくつかの種類があり、その代表例としてIP
(Internet Protocol)がよく知られている。このIPプ
ロトコルではインターネットワーキング用アドレスとし
てIPアドレスを用いる。そして、アドレス解決テーブ
ルには宛先IPアドレスに対応する隣接した経路のMA
Cアドレスが記述されている。
能とを兼ね備えた装置が出現し、異種ネットワークの接
続に用いられるようになってきた。この装置は、ブルー
タと呼ばれる。このブルータは、ネットワーク層におい
て用いられる各種プロトコルのうち、当該装置がサポー
トする、即ち、ルーティング可能なプロトコルに従った
フレームデータについてはルーティングを行い、ネット
ワーク層での相互接続を行う。一方、このブルータは、
当該装置がサポートしない、即ち、ルーティング不可能
なプロトコルに従ったフレームデータついてはメディア
アクセス副層におけるフレームデータの中継処理、即
ち、ブリッジ処理を行う。
ブルータ装置などのネットワーク装置は、二つ以上の通
信ポートと、ルーティング或いはブリッジングと呼ばれ
る前述の中継処理を行うプロセッサを少なくとも有する
構成であった。
置の一般的な動作をさらに詳しく説明する。ある通信ポ
ートから受信したパケットデータをバッファメモリに格
納し、プロセッサによりそのパケットデータにルーティ
ング処理を施すことにより、ルータ装置は、宛先となる
ネットワークを得る。そして、宛先ネットワークに該当
する別の通信ポートからそのパケットデータを送出する
ことにより、ルータ装置は、パケットデータのルーティ
ングを行う。
ットワークを模式的に表した図である。この図では、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に到着する。
従来の技術としては、特開昭62−181551号公報
に記載された技術が挙げられる。これによれば、一方の
ポートから受信したパケットデータを格納するバッファ
メモリと、他方のポートから受信したパケットデータを
格納するバッファメモリとを分離かつ独立して具え、バ
ッファメモリの管理をハードウェアで行っている。
う技術としては、ネットワンシステムズ(株)1990
年12月19日発行、「TCP/IPとINTERNE
T概要」17ページに記載されている技術が挙げられ
る。これによれば、高速ポート転送用に高速バスを備え
ている。
は、以下の点が問題点となる。
の転送を高速に行えるが、ルーティングを行う手段が一
ケ所であるためルーティング処理がネックとなり、サポ
ートできるポート数や通信トラフィックに限界がある。
従って、ルータのポートメニュー等の構成を小規模から
大規模までスムーズに拡張すること、ポートのトラフィ
ックや数に応じて性能を向上させることが困難である。
クの構成などを認識して、ルーティング処理のための中
継情報(前述の従来例において、各ルータが予め知って
いるとした中継のための情報)を動的に生成、追加、変
更、削除するダイナミックルーティングの必要性が近年
高まってきている。即ち、各ルータ間でネットワークに
関する情報をやり取りするためのルーティングプロトコ
ル(例えば、TCP/IPプロトコル群におけるRI
P:Routing Information ProtocolやOSPF:Open S
hortest Path Firstなど)の処理が必要となる。さら
に、ルータ自体の性能情報などの管理情報をネットワー
ク上の管理マスタ局と通信するためのネットワークマネ
ジメントプロトコル(例えば、TCP/IPプロトコル
群におけるSNMP:Simple Network Management Prot
ocolなど)の処理も、従来例におけるルーティングを行
う手段が兼用せざるを得ないため、本来の中継性能が充
分発揮できない。従って、従来のルータでは、近年出現
してきた100Mbps(Megabit per second)の高速L
AN(local Area Network)であるFDDI(Fiber Distr
ibuted Data Interface)や、将来的に普及が見込まれて
いる広帯域ISDN(以下B−ISDNと略す)及びそ
の一形態であるATM(Asyncronized TransferMode)な
ど155Mbpsの高速回線に対応するのは困難であ
る。
ト転送を高速に行うことができ、かつ規模の拡張及び性
能の向上が容易におこなえるインタネットワーク装置を
提供することにある。
としての機能をもたせた際のブリッジング処理とルーテ
ィング処理時のデータ転送を考慮したインタネットワー
ク装置を提供することにある。
トコルの種類を増やすため、既存の装置との接続ができ
るルータ装置を提供することにある。
に、本発明のインタネットワーク装置は、主プロセッサ
を補助してルーティングを行うルーティングアクセラレ
ータを1または複数個有する。
明のインタネットワーク装置は、ルーティングアクセラ
レータ間を結合する第一の結合手段を有し、この第一の
結合手段に、当該インタネットワーク装置全体を管理す
る管理部として主プロセッサを接続する。そして、ネッ
トワークとのデータ送信受信を行う複数の通信ポート部
とルーティングアクセラレータとを、他のルーティング
アクセラレータとは独立に結合する第二の結合手段を有
する。
明のインタネットワーク装置は、第一の結合手段とは独
立に、主プロセッサとルーティングアクセラレータ間を
結合する第三の結合手段を設ける。
明のインタネットワーク装置は、主プロセッサとルーテ
ィングアクセラレータ以外に補助プロセッサを有する。
そして、この補助プロセッサとルーティングアクセラレ
ータとを前記第一の結合手段或いは第三の結合手段によ
り結合する。補助プロセッサの機能としては、機能拡張
のため、ブリッジ中継のための同報転送機能や、他の装
置とのインタフェース機能、或いは主プロセッサが処理
不可能なルーティングプロトコルの処理機能などを設け
た。
明のインタネットワーク装置は、ルーティングアクセラ
レータに、ルータ回路として、データを格納するバッフ
ァと、格納動作と並行して予め定められた条件でフィル
タリングを行なうフィルタリングアシスト手段と、受信
パケットデータの必要な情報を抽出して該中継経路選択
情報テーブルを検索するルーティングアシスト手段を有
する。
データにルーティング処理を施し、必要に応じて他のル
ーティングアクセラレータにデータ転送する。すなわ
ち、そのデータフレームの種類を判別し、ルーティング
中継処理不可能なプロトコルにしたがったデータフレー
ムであることを認識した場合には、ブリッジ中継をすべ
く他の複数のルーティングアクセラレータにデータ転送
する。
グテーブルを生成/変更した後にこのルーティングテー
ブルを全ルーティングアクセラレータに対して配布す
る。各々のルーティングアクセラレータは、第二の結合
手段により接続された通信ポート部からの受信パケット
データを、配布されたルーティングテーブルを参照して
ルーティング処理を施し、必要に応じて第一の結合手段
を用いて他のルーティングアクセラレータにデータ転送
する。すなわち、そのデータフレームの種類を判別し、
ルーティング中継処理不可能なプロトコルにしたがった
データフレームであることを認識した場合には、ブリッ
ジ中継をすべく他の複数のルーティングアクセラレータ
にデータ転送する。データ転送されたルーティングアク
セラレータは、さらに、第二の結合手段により接続され
た通信ポート部を用いてネットワークに対してパケット
データを送信する。従って、本発明のインタネットワー
ク装置は、ルーティングアクセラレータと通信ポート部
の複数のセットによって分散的にルーティング/パケッ
ト中継ができる。
ルを生成/変更したりネットワーク管理マスタとの通信
を行なうための主プロセッサ宛の管理フレームは第一の
結合手段を用いてルーティングアクセラレータから主プ
ロセッサに対して転送される。また、ルーティングアク
セラレータが第二の結合手段で接続されている通信ポー
ト部からの受信データを受信し、そのデータフレームの
種類を判別し、ルーティング中継処理不可能なプロトコ
ルにしたがったデータフレームであることを認識した場
合には、主プロセッサ宛に転送することもできる。主プ
ロセッサはそのプロトコルを処理可能であればルーティ
ング処理を行ない、適切な宛先ルーティングアクセラレ
ータに対して該データフレームを再転送することによ
り、特殊プロトコルに従ったパケットデータのルーティ
ング中継を行なう。
ィングテーブルを全ルーティングアクセラレータに対し
て配布する動作と、主プロセッサ宛の管理フレームをル
ーティングアクセラレータから主プロセッサに対して転
送する動作を行う。
した機能に従い、ブリッジ中継のための同報転送機能、
他の装置とのインタフェース機能、主プロセッサが処理
不可能なルーティングプロトコルの処理機能などに対応
して、主プロセッサの処理或いは宛先ルーティングアク
セラレータのブリッジ中継機能などを補助する。例え
ば、補助プロセッサがブリッジ中継のための同報転送機
能を補助する場合、ルーティングアクセラレータがルー
ティング中継処理不可能なプロトコルにしたがったデー
タフレームを受信すると、この補助プロセッサに対して
ブリッジ中継すべきフレームデータを転送する。補助プ
ロセッサは、転送されたフレームデータをバッファメモ
リに一旦格納した後、他の全てのルーティングアクセラ
レータに第一の結合手段を用いてデータ転送する。
ットデータをバッファへの格納するのと並行して、フィ
ルタリングアシスト手段が予め定められた条件でフィル
タリングを行ない、中継不要なパケットデータを廃棄す
る。中継を必要とする受信パケットデータについては、
プロセッサとルーティングアシスト手段が宛先を判別
し、宛先となるルーティングアクセラレータにパケット
を転送する。
て説明する。なお、本発明のインタネットワーク装置
は、前述のブルータ装置の機能を持つが、以下の説明で
は本来の目的であるルーティング処理を主体に説明する
こととし、従って装置としてもルータと称することとす
る。
て図1を用いて説明する。この実施例のルータは、ルー
ティングを行う複数のモジュールを有しており、モジュ
ールの増設により容易に性能を向上することができる。
それぞれのモジュールは、一個のルーティングアクセラ
レータを有し、そして、それぞれのルーティングアクセ
ラレータは、更に一つまたは複数の通信ポートを有して
いる。図1は、ルータの全体ブロック図である。図1に
おいて、1が第一の結合手段である200MBytes
/秒のスループットを持つ高速なルータバスである。こ
のルータバス1には、装置全体の管理機能とルーティン
グテーブルの生成・配布等の機能を持つ主プロセッサで
あるルータ管理部2が接続されている。更に、ルータバ
ス1には、高速にルーティングを行う機能を持つルーテ
ィングアクセラレータ3が1乃至8モジュールまで接続
できる。ルータ管理部2は、ルーティングアクセラレー
タ3にルーティングテーブルを配布して、それぞれのル
ーティングアクセラレータ3がこれに基づいて受信パケ
ットデータの経路選択、即ち、ルーティング処理を行
い、中継先のネットワークを配下に接続しているルーテ
ィングアクセラレータ3に対してルータバス1を仲介し
てパケットデータを転送する。
の下には、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のセットは、別基板上に実装しても、同一基
板上に実装してもよい。
いて以下説明する。
ィングアクセラレータ3にルーティングテーブルを配布
し、各ルーティングアクセラレータ3は、ルーティング
情報を有している状態とする。例えば、管理部2は、他
のルータとの間で前述したRIP、OSPF等のルーテ
ィングプロトコルでやりとりするか、或いはユーザが予
めスタティックに設定することにより、ルーティング情
報を収集する。
トワークアドレス毎に一個のルーティングのための情報
を示すルーティング情報の集合体である。さらに、ネッ
トワークアドレスを分割して複数の小規模のネットワー
クとして運用する、いわゆるサブネットワークについて
は、各サブネットワーク毎にルーティング情報が定義さ
れる。
す。この例では、IPプロトコルだけを対象とし、また
ネットワークサービスの種別等の付加情報は省略されて
いる。図14において、ルーティングテーブル400
は、宛先ネットワークを示すIPアドレスのフィールド
401、宛先ネットワークのサブネット情報を示すサブ
ネットマスクデータ402、次ルータのIPアドレス4
03、次ルータへ中継するための送出インタフェース4
04、及び次エントリへのポインタ405からなる。
では、転送先RA(ルーティングアクセレータ)の識別
番号(RA番号)と該転送先RA内の送出すべきポート
の識別番号(LC番号)となっている。また、次エント
リへのポインタ405は、RA内部におけるルーティン
グ情報の構造化のために必要なフィールドであるが、前
述のRM(ルータ管理部)からの配布するときには意味
はもたない。
であるルーティングテーブルは、高速検索のために、図
15に示す構造体となっている。ハッシュ関数410
は、あるデータをより小さなデータ量のデータに投影す
る。本実施例では、例えば、IPアドレスのうちのネッ
トワークアドレス部の24ビットを8ビットに投影す
る。ハッシュ関数の出力が8ビットであるからハッシュ
エントリテーブル420のエントリ数は256個であ
る。ハッシュエントリテーブル420内の各エントリに
はネットワークアドレスをハッシュした結果に対応する
ルーティング情報400へのポインタが格納されてい
る。ハッシュはデータ量を圧縮するため、異なるネット
ワークアドレス値がハッシュを行なった結果、同じ8ビ
ットのアドレス値となってしまうこともある。従って、
図15に示したようにハッシュによって同じ結果となる
ネットワークアドレスを持つルーティング情報400
は、ポインタ405で連結される。
して対応するルーティングテーブルを検索する構造及び
ルーティングテーブルの構造についてはDouglas E.Come
r著「Internetworking with TCP/IP VOLUME II」(81〜
84ページ)に詳しく述べられており、本実施例もこの
手法に従ったルーティングテーブル及びそのRA内での
データ構造を採用している。
えた本発明のルータにおける種々のルーティングのケー
スを示した図である。なお、図3においては、管理部2
はRM、ルーティングアクセラレータ3はRA、通信ポ
ート51ないし56はLCと略して表記した。
ーティングアクセラレータRA(A)は、自分の配下の
通信ポートLC(a)が受信したパケットを一旦パケッ
トバッファに格納し、フィルタリングおよびルーティン
グを行う。ここで、フィルタリング/ルーティングを行
った結果、パケットの宛先が今受信した通信ポートLC
(a)の方向にある場合は、当該パケットを廃棄する。
RA(A)内のポート間でルーティングを行う場合を示
している。ルーティングアクセラレータRA(A)は、
自分の配下の通信ポートLC(a)が受信したパケット
を一旦パケットバッファに格納し、フィルタリングおよ
びルーティングを行う。ここで、フィルタリング/ルー
ティングを行った結果、通信ポートLC(a)が受信し
たパケットの宛先が自ルーティングアクセレータRA
(A)の配下の通信ポートLC(b)にある場合、当該
受信パケットを折り返し、通信ポートLC(b)へ転送
して中継する。このケースでは、一つのルーティングア
クセレータRA(A)のみでルータとして機能してい
る。
ータRA(A)と(B)の間でルータバスを介してルー
ティングを行う場合を示している。ルーティングアクセ
ラレータRA(A)は、自分の配下の通信ポートLC
(a)が受信したパケットを一旦パケットバッファに格
納し、フィルタリングおよびルーティングを行う。ここ
で、ルーティングアクセレータRA(A)が受信パケッ
トの宛先を調べた結果、それが他ルーティングアクセレ
ータRA(B)の配下の通信ポートLC(d)であった
場合、ルーティングアクセレータRA(A)とルーティ
ングアクセレータRA(B)の間でパケット転送のため
の情報授受を行って、パケットがルーティングアクセレ
ータRA(A)からルーティングアクセレータRA
(B)へ転送される。
パケットである場合を示している。
ィングプロトコルフレーム(RIPやOSPFフレー
ム)あるいはネットワーク管理プロトコルSNMPのフ
レームデータなどである。ルーティングアクセラレータ
RA(A)は、自分の配下の通信ポートLC(a)が受
信したパケットを一旦パケットバッファに格納し、フィ
ルタリングおよびルーティングを行う。ここで、例え
ば、IPパケットの宛先IPアドレスが自IPアドレス
であった場合、受信パケットは管理部2へ転送される。
する。
ロック図を示す。ルーティングアクセラレータ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で構成される。
セラレータ3を経由してルータバス1へデータを転送す
る上り方向のデータパスに沿って、ルーティング処理を
図16を用いて説明する。
は、各々の通信ポート5が行うDMA転送によってEI
SAバスインタフェース部301を介してパケットバッ
ファ307に一旦格納される(1601)。このパケッ
トバッファ307へのパケット転送動作に並行して、フ
ィルタリングアシスト部302は、フィルタリングに必
要なパケットの先頭部のみを引き抜き、予め定められた
条件で比較及び判別を行うことにより、フィルタリング
を行う。フィルタリングの処理としては、本実施例で
は、取り扱うプロトコルのタイプ、例えばTCP/IP
あるいはOSIのいずれかを認識し、それ以外のプロト
コルのタイプの場合は以後のフィルタリング/ルーティ
ングをせずブリッジとしてのフィルタリングのみを行う
(1602)。なお、ユーザが設定したアプリケーショ
ン対応のアドレスデータパターンであるテンプレートと
比較してフィルタリングを行うこともできる。
結果をコマンドディスクリプタバッファ303に、当該
パケットのパケットバッファ307へのポインタと対応
させて格納する。下位プロセッサ306はこの結果を引
き継いで、ソフトウェアによって更なるフィルタリング
を続行し、不要なパケットと判断すれば、当該パケット
を廃棄する(1603)。下位プロセッサ306は、ま
た、上り方向のバッファ空き状態の監視等のバッファ管
理を行う。そして、パケットが廃棄されなければ、ルー
ティング指示がコマンドディスクリプタバッファ303
に、パケットバッファ307へのポインタと対応させて
格納される。フィルタリング処理はこれで終了し、以後
ルーティング処理が次のように行われ(1604)、ル
ータバスへパケットデータを送信する(1605)。
図14、15、17を用いて説明する。図17は、上位
プロセッサ310の上り方向IPルーティング処理を示
したフローチャートである。まず上位プロセッサ310
は、下位プロセッサ306からのルーティング指示を受
け、コマンドディスクリプタバッファ303に格納され
たパケットバッファへのポインタを参照して、受信パケ
ットデータを読み取る。なお、ここでは受信パケットデ
ータがIPパケットであるとする。
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)、そして、そのポインタの示すルーテイン
グ情報について同様の処理を繰り返す。
にオプション処理を必要とすることもある。
サ310は、ルータバス転送制御部311を起動して宛
先モジュール、具体的には宛先のルーティングアシスト
部308ヘ転送する。転送動作として、転送元のルータ
バス転送制御部311は、転送要求、次ホップIPアド
レス、宛先ポート番号等のコマンドデータを予め転送先
のルータバス転送制御部311に通知し、転送先の上位
プロセッサ310がこれを受ける。転送先の上位プロセ
ッサ310が転送受入れが準備できたとき、転送元のル
ータバス転送制御部311に返答を返すことによって、
パケット転送を開始する。
タ3による上り方向の処理である。
3による下り方向(ルータバスから通信ポートへの方
向)のパケットの流れに沿った処理を図18にそって説
明する。
ルータバス転送制御部311から転送要求を受けると、
上位プロセッサ310にその旨を通知する。下り方向の
バッファ管理は上位プロセッサ310が行う。上位プロ
セッサ310は、パケットバッファ307に対する格納
先開始ポインタをルータバス転送制御部311に与え
る。ルータバス転送制御部311は、転送元のルータバ
ス転送制御部311とハンドシェークをとりつつ、バッ
ファアドレスを更新しながら、ルータバス1から受けた
パケットをパケットバッファ307に格納する。パケッ
ト格納後、上位プロセッサ310は、コマンドディスク
リプタバッファ303へ格納終了通知と宛先ポート番号
とバッファへのポインタとを格納する(1801)。
下の処理を行う。下位プロセッサ306は、次ホップI
Pアドレスをアドレス変換アシスト部304に入れる。
一方、アドレス変換アシスト部304は、ネットワーク
アドレス(IPアドレス)を物理アドレス(MACアド
レス)に変換して下位プロセッサ306に教える(18
02)。なお、このIPアドレスからMACアドレスへ
の変換手法については、ARPプロトコル(Address Res
olution Protocol)により可能であることは一般に知ら
れている。また、別の手法としてはIPアドレスとMA
Cアドレスとの変換テーブルを予め持ち、その変換テー
ブルを用いて変換処理を行っても良いし、ARPプロト
コルによる結果を登録する学習型の変換テーブルを構築
して変換処理を行っても良い。
信ポート対応にパケット長を調整するためのパケットデ
ータの分割(セグメンティング)が必要であればパケッ
トバッファ307内のパケットを分割する(180
3)。
ケットデータ(あるいはセグメンティングされた複数の
パケットデータ)に、宛先の物理アドレスを付加して対
応するポートのパケット形式に構成する。このようにし
て、下位プロセッサ306は、送信パケットの準備がで
きると、配下の通信ポート5を起動してネットワークへ
の送信を行う(1804)。
コルをサポートすることができる。
おいて、受信パケットヘッダから、TCP/IPプロト
コル、OSIプロトコルが判別される。その結果に基づ
いて、IPルーティング、またはOSIルーティングが
続行される。また、プロトコルが判別できない場合、ブ
リッジとしてパケットがルーティングされる。ブリッジ
中継機能については後述する。
ィルタリングアシスト部302と下位プロセッサ306
とで行い、ルーティングは上位プロセッサ310とルー
ティングアシスト部308とで行い、アドレス変換は下
位プロセッサ306とアドレス変換アシスト部304と
で行う構成であるが、前述のハードウェアによるアシス
ト手段を具えず、マイクロプロセッサが、ソフトウェア
処理で行うようにすることもできる。
について説明する。以上に述べてきたように本発明のル
ータの構成は通信ポート数が8個以下の低速回線とルー
テイングアクセラレータ1個からなるモジュールと管理
部のモジュールにより小規模ルータを構成することが出
来る。そして、通信ポートとルーティングアクセラレー
タとを組にしてモジュールを増設すれば、小規模ルータ
と同じアーキテクチャで中規模から大規模までのルータ
を実現できる。
タ転送用バスの分離 次に、前述した実施例をさらに高速化する他の実施例に
ついて図5を用いて説明する。本実施例では、前述のル
ータバス1をルーティングアクセラレータ8間のパケッ
トデータ転送専用とし、ルータ管理部2とルーティング
アクセラレータ8との間の管理フレームや中継情報等の
制御データの転送には第三の結合手段としての別のバ
ス、即ち、制御系バス5を設けた。これにより、ルータ
中継すべきパケットデータを有するルーティングアクセ
ラレータの対は、他のルーティングアクセラレータがル
ータ管理部2とデータ転送していても、ルータバス1を
用いてパケットデータ転送を行なうことができるので、
ルータは装置としてより高速となる。なお、ルーティン
グアクセラレータ8に制御系バス5を接続するには、前
述の図4中のルータバス転送制御311のバスインタフ
ェースを、ルータバス1と制御系バス5に対応した2チ
ャンネルのDMA制御回路で実現できる。
合のルータシステムの拡張性について図6、図7を用い
て説明する。この実施例によれば、従来ルータに本発明
のルーティングアクセラレータをバス結合することによ
り、ルータとしての性能を向上させ、かつ大規模ネット
ワークへ対応させることができる。
例である。図6中の点線で囲んだ部分は、従来のルータ
の構成要素である。
を示したブロック図である。図7において、5は、ルー
タや小型の情報処理装置において標準的に用いられるバ
スで、ここではVMEバスとする。VMEバス5に対し
て、メインメモリとマイクロプロセッサ等からなる主プ
ロセッサ部6と、通信ポート部として回線制御部71、
LAN制御部72及び73が接続されている。通常この
従来のルータにおいては以下のようにルーティングを行
なう。
ットをすべて主プロセッサ部6が受取り、宛先ポートの
選択を行なう。そして、例えば、宛先ポートがLAN制
御部73であれば、該パケットデータをVMEバス5を
介してLAN制御部73に転送することによりルーティ
ング中継を行なう。したがって、VMEバス5は、主プ
ロセッサ部6と各通信制御部71乃至73との間でパケ
ットデータと制御情報の両方を授受するために用いられ
る。
続ける。ここで、ルーティングアクセラレータ8は、前
述の第一、第二のバスに加え第三のバス接続ができる。
そして、第三のバスとして従来のルータで用いられてい
るVMEバスを用いることにより、主プロセッサ部6と
結合する。一方、高速なルータバス1は、ルーティング
アクセラレータ8間のパケットデータのみを転送する。
即ち本実施例においては、ルータ全体を主プロセッサ部
6が管理し、また、中継情報テーブルを各ルーティング
アクセラレータ8に対して配布する機能など、図5のル
ータ管理部2の代行を行なうことにより、従来のルータ
を高速性と拡張性を兼ね備えた本発明のルータに拡張す
ることができる。
を用いたが、ルータ専用機でなくワークステーション等
の小型の情報処理装置とルーティングアクセラレータ8
を接続すれば、新しいプロトコルへの早期対応などのワ
ークステーション特有の拡張性も生じる。
他の実施例について図8を用いて説明する。図8はのブ
ロック図では、図1のブロック図のルータに比べ、さら
に補助プロセッサ7を有する。この補助プロセッサ7
は、ルータ管理部2の処理、即ち、装置全体の管理機
能、或いはルーティングプロトコルの処理と中継経路選
択情報テーブルの作成機能の一部を分担してもよい。し
かし、ここでは、ルータの機能拡張性を向上するため
に、他の情報処理装置との接続、即ち、前述の第三のバ
スを用いた結合機能を代行するためのインタフェース機
能を実現する例について説明する。
バス(例としてSCSI)200とルータバス1とを接
続する外部インタフェースボード101を補助プロセッ
サとして実装している。ワークステーション等の情報処
理装置200は、外部接続バスとしてSCSIバス20
1を有している。ここで、情報処理装置200は、ルー
タ100の処理不可能なプロトコル、例えばコネクショ
ンオリエントな従来系ホスト−端末通信プロトコル等を
処理可能であるとする。ルータ100は、回線制御ポー
ト56から従来プロトコルに従ったパケットデータを受
信すると、回線制御ポート56に接続しているルーティ
ングアクセラレータ3からルータバス1を介して外部イ
ンタフェースボード101に受信パケットデータを転送
する。さらに外部インタフェースボード101は、受信
パケットデータをSCSIバス201を介して情報処理
装置200に転送することにより、受信パケットデータ
の中継処理を行う。
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から読みだす。
フェース機能を有する補助プロセッサを有するので、機
能の拡張が可能となる。
理 次に本発明によるインタネット装置において、ルーティ
ング処理が不可能な場合のブリッジ中継処理についての
実施例を以下説明する。
クセラレータにより処理不可能なプロトコルに従ってい
た場合、既に述べたように、そのルーティングアクセラ
レータが他のルータ或いは情報処理装置と接続してお
り、それら別装置での処理が期待できるのであれば、そ
のルーティングアクセラレータは、受信したパケットデ
ータを他のルータ或いは情報処理装置に転送することに
より処理させることができる。また、前述の補助プロセ
ッサや主プロセッサでの処理が期待できる場合も同様で
ある。しかしながら、通信プロトコルは多様であるの
で、本発明のインタネットワーク装置全体でもルーティ
ングができないパケットデータを受信する場合も当然起
りうる。この場合、可能性の有る全ネットワークにたい
してデータリンクレベルでの変換のみを行なって中継す
るブリッジ中継処理を行なう。即ち、該ルーティングア
クセラレータは他の複数のルーティングアクセラレータ
に対して同報することにより、ブリッジ中継を行なう。
しかし、本インタネットワーク装置ではルータ中継とブ
リッジ中継が混在して生じる場合が当然起りうる。この
場合ルータバスに対する同報転送には時間がかり、装置
としての中継性能が低下する場合も有る。これについて
図11を用いて説明する。
て、ルーティングアクセラレータRA(2)は配下の通
信ポートLC(2)の受信パケットをルーティング処理
した結果、他のルーティングアクセラレータRA(3)
の通信ポートLC(3)に対しルータ中継をすべくルー
タバスを介してルーティングアクセラレータRA(3)
へパケットデータの転送を始めたとする(図11中のt
1で示したデータ転送経路)。
(1)は配下の通信ポートLC(1)の受信パケットを
ルーティング処理しようとした結果、ルーティングアク
セラレータRA(1)ではルーティング処理できないパ
ケットデータであると判断し、他の全ルーティングアク
セラレータに対してブリッジ中継すべくパケットデータ
を同報でデータ転送しようとする。しかし、この時点で
ルーティングアクセラレータRA(3)はルーティング
アクセラレータRA(2)からデータが転送中であるか
ら、ルーティングアクセラレータRA(1)は、同報で
のデータ転送ができない。従って、ルーティングアクセ
ラレータRA(1)は、ルーティングアクセラレータR
A(3)がルータバスからのデータ受信準備できるまで
待つことになる(図11中のt2で示した未完了のデー
タ転送)。
(2)からルーティングアクセラレータRA(3)への
データ転送が完了しないうちに、また別のルーティング
アクセラレータRA(4)からルーティングアクセラレ
ータRA(5)へのルータ中継のためのデータ転送が発
生したとすると(図11中のt3で示したデータ転
送)、ルーティングアクセラレータRA(1)は、ルー
ティングアクセラレータRA(5)がルータバスからの
データ受信準備ができるまで待つことになる。
ーティングアクセラレータに対して同報転送しようとす
るルーティングアクセラレータは、他のルーティングア
クセラレータ間のデータ転送の完了を待つため、配下の
通信ポートからのルーティング可能な受信データを蓄積
し続けなければならない。結果として、ブリッジ中継を
比較的多く起すネットワークに接続したインタネットワ
ーク装置のルーティング処理性能が低下する。
は、前述の補助プロセッサをブリッジ中継の補助機能と
して用いる。この実施例について図12及び図13を用
いて説明する。
も、ルーティングアクセラレータ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)は、以後のルーティング可能な受信データを
蓄積し続ける必要は無い。従ってルーティング処理性能
の低下を防止できる。
成を図13を用いて説明する。ブリッジ中継アシスト部
700は、主にバッファ管理を行うバッファ管理プロセ
ッサ701、プロセッサ701のプログラム及び変数な
どを記憶するためのローカルメモリ702、ブリッジ中
継すべきデータを一時的に格納するためのパケットバッ
ファ703、ルータバスとの転送制御回路704、ルー
タバスからのデータ転送とプロセッサ701のローカル
メモリ702のアクセスを同時に行うためのバスの切り
離しを制御するバススイッチ回路705からなる。前述
のように、ルーティングアクセラレータからブリッジ中
継しようとしたパケットデータは、ルータバス転送制御
回路704を経てパケットバッファ703に格納され
る。この時、パケットバッファ703はバッファ管理プ
ロセッサ701によりキュー管理されており、バッファ
管理プロセッサ701はパケットバッファ703に格納
された順に、全ルーティングアクセラレータに対して同
報転送を行う。
ロセッサを用いてブリッジ処理を補助するので、ブルー
タにおけるルータ処理性能を向上させることができる。
がある。
グ処理を行なう管理部とルーティング処理を行うルーテ
ィングアクセラレータとを独立化させたので、ルーティ
ングアクセラレータがルーティング処理に専従するため
高速化することができる。
複数のパケットデータを同時にルーティングできるの
で、装置全体としてのルーティング性能が高速になる。
また、ルーティングアクセラレータを増設できるので、
必要なネットワーク数や通信トラフィックに応じて、容
易にルータの構成を拡張できる。
ば、ブリッジ中継処理を高速に行なうことや、外部の装
置と接続して機能を拡張することも可能となる。
つ高速なルータ処理及びブリッジ処理を行うインタネッ
トワーク装置を実現できる。
置の構成を示すブロック図である。
に表した図である。
中継のケースを示す図である。
レータを示すブロック図である。
た本発明の一実施例のインタネットワーク装置の構成を
示すブロック図である。
レータと従来のルータ装置を結合したインタネットワー
ク装置の構成を示すブロック図である。
る。
成を示すブロック図である。
接続したインタネットワーク装置の構成を示すブロック
図である。
ボードの構成を示すブロック図である。
スト部無しでのブリッジ中継のケースを示す図である。
スト部有りでのブリッジ中継のケースを示す図である。
ト部の構成を示すブロック図である。
構成を示す図である。
ルの構成を示す図である。
ング処理を示すフローチャートである。
ティング処理を示すフローチャートである。
ング処理を示すフローチャートである。
アクセラレータ、4…下位バス、 5…制御系バス、
7…補助プロセッサ、51〜56…通信制御部、301
…EISAバスインタフェース部、302…フィルタリ
ングアシスト部、303…コマンドディスクリプタバッ
ファ、304…アドレス変換アシスト部、 305…ロ
ーカルメモリ、306…下位プロセッサ、307…パケ
ットバッファ、308…ルーティングアシスト部、 3
09…ローカルメモリ、310…上位プロセッサ、31
1…ルータバス制御部。
Claims (3)
- 【請求項1】複数のネットワーク間でパケットを中継す
るインタネットワーク装置であって、 該インタネットワーク装置を管理するための主プロセッ
サと、 受信パケットを中継処理するための互いに接続された複
数のルーティングアクセラレータと、 上記複数のルーティングアクセラレータのうちの何れか
に接続され、それに接続されたネットワークとの間でパ
ケットを送受信する通信ポート部と、 上記複数のルーティングアクセラレータに接続され、上
記主プロセッサでは実行されない補助の動作を実行する
補助プロセッサとを有し、 上記補助プロセッサが他の情報処理装置と接続され、上
記ルーティングアクセラレータが上記補助プロセッサを
通して上記他の情報処理装置の機能を使用することを特
徴とするインタネットワーク装置。 - 【請求項2】前記補助プロセッサが、前記ルーティング
アクセラレータと前記情報処理装置との間の論理的なイ
ンタフェースを可能とするインタフェース用プロセッサ
を有することを特徴とする請求項1に記載のインタネッ
トワーク装置。 - 【請求項3】前記補助プロセッサが、外部接続バスによ
って前記情報処理装置と接続され、受信パケットを上記
外部接続バスを介して上記情報処理装置に転送すること
により受信パケットの中継処理を行うことを特徴とする
請求項1に記載のインタネットワーク装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000245529A JP3352073B2 (ja) | 1991-08-30 | 2000-08-08 | インタネットワーク装置 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3-219610 | 1991-08-30 | ||
JP21961091 | 1991-08-30 | ||
JP2000245529A JP3352073B2 (ja) | 1991-08-30 | 2000-08-08 | インタネットワーク装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP19673092A Division JP3113742B2 (ja) | 1991-08-30 | 1992-07-23 | インタネットワーク装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001086150A true JP2001086150A (ja) | 2001-03-30 |
JP3352073B2 JP3352073B2 (ja) | 2002-12-03 |
Family
ID=26523236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000245529A Expired - Lifetime JP3352073B2 (ja) | 1991-08-30 | 2000-08-08 | インタネットワーク装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3352073B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7230915B2 (en) | 2002-02-15 | 2007-06-12 | Fujitsu Limited | Upper and lower relays and network system |
-
2000
- 2000-08-08 JP JP2000245529A patent/JP3352073B2/ja not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7230915B2 (en) | 2002-02-15 | 2007-06-12 | Fujitsu Limited | Upper and lower relays and network system |
Also Published As
Publication number | Publication date |
---|---|
JP3352073B2 (ja) | 2002-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3113742B2 (ja) | インタネットワーク装置 | |
US5434863A (en) | Internetworking apparatus for connecting plural network systems and communication network system composed of plural network systems mutually connected | |
JP3142433B2 (ja) | ブリッジ装置及びブリッジ接続方法 | |
JP3575225B2 (ja) | パケット交換機、パケット交換網及びパケット交換方法 | |
JP3645734B2 (ja) | ネットワーク中継装置及びネットワーク中継方法 | |
US6178171B1 (en) | Route switching mechanisms for source-routed ATM networks | |
JP4007690B2 (ja) | エンド装置及びルータ | |
JPH10303965A (ja) | ルータ装置に於けるルーティング方式 | |
JP3352073B2 (ja) | インタネットワーク装置 | |
JP3475192B2 (ja) | インタネットワーク装置およびルータ | |
JP3475158B2 (ja) | 通信処理方法 | |
JP3435130B2 (ja) | インタネットワーク装置 | |
JP3156760B2 (ja) | パケット通信方式 | |
JPH06197111A (ja) | インタネットワーク装置 | |
US7110397B1 (en) | Packet transfer apparatus | |
JP3156231B2 (ja) | アドレス解決サーバ | |
JP3468085B2 (ja) | データ変換転送装置 | |
JP2790550B2 (ja) | ゲートウェイ装置 | |
JPH1093637A (ja) | ネットワーク間接続装置のルーティング方法 | |
JP2923921B1 (ja) | パケット転送方式 | |
KR0154016B1 (ko) | 랜 에뮬레이션 클라이언트에서 랜 에뮬레이션 에이알피 캐시를 이용하여 목적지 랜 에뮬레이션 클라이언트의 에이티엠 어드레스를 얻는 방법 | |
JPH09149084A (ja) | 仮想ネットワークのルーティング方法 | |
JP3185866B2 (ja) | コネクションレスゲートウェイ装置 | |
JP3501558B2 (ja) | Atm通信装置 | |
JP3152287B2 (ja) | ショートカット通信システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070920 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080920 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080920 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090920 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090920 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100920 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100920 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110920 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120920 Year of fee payment: 10 |
|
EXPY | Cancellation because of completion of term |