JP2004080098A - 通信ネットワーク、ノード装置及びそれらの制御方法 - Google Patents
通信ネットワーク、ノード装置及びそれらの制御方法 Download PDFInfo
- Publication number
- JP2004080098A JP2004080098A JP2002233844A JP2002233844A JP2004080098A JP 2004080098 A JP2004080098 A JP 2004080098A JP 2002233844 A JP2002233844 A JP 2002233844A JP 2002233844 A JP2002233844 A JP 2002233844A JP 2004080098 A JP2004080098 A JP 2004080098A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- channel
- read
- storage area
- output
- 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.)
- Withdrawn
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
【課題】パケット伝送途中での順序入れ替わりを防止する。
【解決手段】ヘッダ検出部302で伝送するパケットの宛先端末を調べ、その宛先端末に応じて、書き込み制御部303がパケットを分類してバッファ301に書き込み、読み出し記憶領域決定部305及び読み出し制御部304が、宛先端末毎に分類されたパケットをバッファ301に書き込んだ順序で読み出す。
【選択図】 図3
【解決手段】ヘッダ検出部302で伝送するパケットの宛先端末を調べ、その宛先端末に応じて、書き込み制御部303がパケットを分類してバッファ301に書き込み、読み出し記憶領域決定部305及び読み出し制御部304が、宛先端末毎に分類されたパケットをバッファ301に書き込んだ順序で読み出す。
【選択図】 図3
Description
【0001】
【発明の属する技術分野】
本発明は、複数の端末装置を接続するための複数のノード装置を並列な複数のチャネルでリング状に接続した通信ネットワーク、ノード装置及びそれらの制御方法に関する。
【0002】
【従来の技術】
近年、情報量の増大に伴い、複数の端末装置を接続するネットワークの高速化大容量化に対応すべく、ノード装置を並列多重伝送路で接続し、各々の通信路に均等にパケットが流れるように分散させながらパケットを送信する通信システムが提案されている。例えば、特開平8−172394号及び特開平8−237306号にその構成例が示されている。以下、これら提案された構成例を参考例として紹介する。
【0003】
参考例では、図5に示すノード装置が図18に示すパケットを用いて通信するものである。図18は、参考例のネットワークに用いられるパケット構成を示す図である。図示するように、パケットはヘッダとデータとから構成される。このヘッダには送信データの宛先情報が格納され、またデータには送信データが格納される。更に、ヘッダは図18に示すように、以下のように構成されている。
【0004】
Nは宛先ノード番号であり、仮に本参考例のネットワークにノード装置が32台接続できるならばノード番号1〜32を示す5ビットで構成される。それぞれのノード装置には1〜32のうち、異なる番号がノード番号として与えられる。Nには宛先端末が接続されたノード装置のノード番号(宛先ノード番号と呼ぶ)が格納される。
【0005】
Tは伝送チャネル番号であり、仮に本参考例のネットワークで並列多重伝送路の伝送チャネル数(多重数)が8個ならば1〜8を示す3ビットで構成される。それぞれの伝送チャネルには1〜8のうち異なる番号が伝送チャネル番号として与えられる。Tには宛先端末が接続された伝送チャネル番号(宛先チャネル番号と呼ぶ)が格納される。
【0006】
Sはシーケンス番号であり、パケットの送信順番に対応して付加される。Cは各コネクションを識別するためのコネクション識別子である。その他には、同期信号、誤り訂正符号などが、必要に応じて挿入される。
【0007】
ネットワーク内の各端末は、ノード番号と伝送チャネル番号により個々に識別される。また、本ネットワークで行われる一連の通信はパケットのヘッダの宛先ノード番号、宛先チャネル番号、コネクション識別子により、区別される。更に、その区別された通信毎に、端末インタフェース部によりシーケンス番号が付加される。
【0008】
図5は、参考例のネットワークにおけるノード装置の構成例を示す図である。図5に示すように、ノード装置500にはサブ伝送路を介して端末装置551〜558が接続されている。符号501〜508は、挿入手段であるところの端末信号挿入部であり、端末装置551〜558から出力され、端末インタフェース(I/F)部571〜578を経由して入力されるパケットを並列多重伝送路521〜528から入力されるパケット流に挿入する機能を有している。
【0009】
符号561〜568は、分離手段であるところの端末信号分離部であり、並列多重伝送路521〜528から入力されるパケット流のヘッダに格納された宛先情報を検出し、サブ伝送路及び端末インタフェース部571〜578を経由して端末装置551〜558へ伝送させるパケットと、端末信号挿入部501〜508を経由してバッファ511〜518へ入力させるパケットとに分離する機能を有している。
【0010】
符号511〜518は,バッファ手段であるところのバッファであり、端末信号挿入部501〜508から出力されるパケットをスイッチ541の8つの出力端OUT1〜OUT8それぞれに対応した記憶領域、及び任意の出力端に対応した記憶領域に一時記憶する機能を有している。
【0011】
符号571〜578は、端末インタフェース部である。端末インタフェース部571〜578は、端末装置551〜558から出力された信号をネットワークで規定されたパケットのデータサイズに分割し、分割したデータそれぞれに対し宛先ノード番号、宛先チャネル番号、シーケンス番号、コネクション番号を含むヘッダを付加して、端末信号挿入部501〜508へ送る。シーケンス番号は、パケットの順番に応じて付加される。また、端末インタフェース部571〜578は、端末信号分離部561〜568から出力されたパケットを、そのコネクション番号毎にシーケンス番号の順番に並び替えて端末装置551〜558に送る。
【0012】
符号521〜528、531〜538はノード間を接続するための複数のチャネルを並列に設けた並列多重伝送路であり、例えば空間的に分離された複数の光ファイバ伝送路、或いは1本の光ファイバ上に波長分割されて多重化された波長多重伝送路である。この例では、8本の並列多重伝送チャネルを想定しており、521と531をチャネル1、522と532をチャネル2、…、528と538をチャネル8と呼ぶ。
【0013】
符号541はスイッチであり、スイッチ制御部542に制御され、入力端IN1〜IN8に入力したパケットを任意の出力端OUT1〜OUT8へ接続するものである。スイッチ541は、並列多重伝送路に複数の光ファイバ伝送を用いるときには、空間スイッチ等を用いて交換を行う。また、波長多重伝送路を用いる場合には、図とは若干構成が異なるが、複数の可変波長レーザダイオードと合波器からなる送信部を波長多重伝送路へ接続し、波長多重伝送路の受信部で分波器により各波長を分離することで、ノード間でスイッチを構成し、可変波長レーザダイオードの送信波長を波長λ1〜λ8の任意の波長に設定することで、交換を行う。
【0014】
符号542はスイッチ制御部であり、例えば図4に示すようなテーブルの制御パターンに従ってスイッチを制御する。スイッチ制御部542はスイッチ541に対し、図4に示すテーブルのように制御アドレスをA1,A2,A3,A4,A5,A6,A7,A8,A1,A2…と順次供給してスイッチ541の入力と出力との接続関係を変更させる。制御アドレスを変更する周期は1パケット時間(1つのパケットがある地点を通過するのにかかる時間を1パケット時間と呼ぶ)の倍数であれば特に規定されない。尚、この例では、制御アドレスを、例えば1パケット時間周期毎に供給することで、8パケット時間周期で同じパターンを繰り返すように制御しているものとする。
【0015】
更に、スイッチ制御部542は、スイッチの接続状態に応じて、各バッファ511〜518内に一時記憶されているパケットのうち、どのパケットを読み出すべきなのか、という読み出し記憶領域候補情報を各バッファ511〜518に伝える(詳細は後述する)。
【0016】
図8は、端末信号分離部561〜568の内部構成を示す図である。801はパケットのヘッダから宛先ノード(N)を検出するヘッダ検出部、802、803は入力信号を出力、又は遮断するためのゲートである。端末信号分離部561〜568において、並列多重伝送路より入力したパケットはヘッダ検出部801においてヘッダが検出され、そのヘッダの内容によりゲート802と803の開閉の処理を行う。ヘッダ検出部801には予め自ノード装置の番号(自ノード番号と呼ぶ)が記憶されている。
【0017】
ここで、図12を参照しながらヘッダ検出部801におけるパケットの経路を制御する処理について説明する。ヘッダ検出部801は、入力パケットのヘッダを検出し(S1201)、検出したノード番号(N)が記憶している自ノード番号と一致するか否かを判定する(S1202)。ここで、一致した場合はゲート803を開き、且つ、ゲート802を閉じて端末インタフェース部に対してそのパケットを出力する(S1203)。また、入力パケットのヘッダから検出したノード番号(N)が記憶している自ノード番号と一致しない場合は、ゲート802を開き、且つ、ゲート803を閉じて端末信号挿入部501〜508に対してそのパケットを出力する(S1204)。そして、端末信号挿入部501〜508に出力されたパケットは、端末信号挿入部を経由してバッファ511〜518へ送られる。
【0018】
図9は、端末信号挿入部501〜508の内部構成を示す図である。901はパケットのヘッダを検出するヘッダ検出部、904は2つの入力信号のどちらか一方を出力するセレクタ、905はパケットを一時記憶するためのFIFO(First In First Out)である。端末信号挿入部501〜508では、端末装置551〜558から端末インタフェース部571〜578を経由して伝送されてきたパケットをFIFO905に一時記憶する。また同時に、端末信号分離部561〜568からセレクタ904に入力されたパケット流のヘッダをヘッダ検出部901によって検出しており、パケット流にすき間があるときにFIFO905から読み出し、セレクタ904を通ってバッファへ送るように動作する。尚、端末信号挿入部のヘッダ検出部901と端末信号分離部のヘッダ検出部801は兼用することができる。
【0019】
図10は、バッファ部511〜518の内部構成を示す図である。1001は入力されたパケットを一時記憶するためのバッファメモリであり、その内部は、スイッチ541の8つの出力端それぞれに対応したチャネル1出力用記憶領域〜チャネル8出力用記憶領域の8つの記憶領域、及びスイッチ541の特定の出力端を指定しない(任意の出力端を指定する)チャネル無指定記憶領域とから構成される。
【0020】
このようにバッファメモリ1001を構成する目的は、ノード装置500からパケットを出力する際、そのパケットをチャネル1(531)へ出力したい場合はチャネル1出力用記憶領域に記憶し、チャネル2(532)へ出力したい場合はチャネル2出力用記憶領域に記憶し、…、チャネル8(538)へ出力したい場合はチャネル8出力用記憶領域に記憶し、任意のチャネルへ出力したい場合はチャネル無指定記憶領域に記憶するようにするためである。また、これらの記憶領域の区別を「記憶領域の種類」と呼ぶ。
【0021】
従って、9つそれぞれの記憶領域に記憶されるパケットの種類は以下のようになる。まず、チャネル1出力用記憶領域には、スイッチ541によって531に出力されるべきパケット(チャネル1指定パケットと呼ぶ)が一時記憶される。同じく、チャネル2出力用記憶領域には、スイッチ541によって532に出力されるべきパケット(チャネル2指定パケットと呼ぶ)が一時記憶される。以下同様に、チャネル8出力用記憶領域には、スイッチ541によって538に出力されるべきパケット(チャネル8指定パケットと呼ぶ)が一時記憶される。また、スイッチ541によって任意のチャネルに出力してよいパケットをチャネル無指定パケットと呼び、このチャネル無指定パケットは、チャネル無指定記憶領域に一時記憶される。またこれらのパケットの区別を「パケット宛先分類」と呼ぶ。
【0022】
図10に示す1002はパケットのヘッダを検出するヘッダ検出部、1003はバッファメモリ1001にパケットを書き込むための書き込みアドレスを供給する書き込み制御部である。図5に示すバッファ511〜518において、端末信号挿入部501〜508より入力したパケットはヘッダ検出部1002によりヘッダが検出され、ヘッダの内容によりそのパケット宛先分類(チャネル1指定パケット、チャネル2指定パケット、…、チャネル8指定パケット、チャネル無指定パケット)が決定される。
【0023】
ヘッダ検出部1002には、予め隣接する下流ノード装置のノード番号(下流ノード番号と呼ぶ)が記憶されている。ヘッダ検出部1002は以下のように、パケットのヘッダから検出した宛先ノード番号(N)と宛先チャネル番号(T)と、記憶している下流ノード番号とから、そのパケットがスイッチ541によって531〜538のどのチャネルに出力されるべきパケットかを判断(つまり、パケット宛先分類を判断)する。更に、そのパケット宛先分類からそのパケットを一時記憶する記憶領域の種類を決定し、それを書き込み制御部1003に伝える。
【0024】
ここで、図13を参照しながらヘッダ検出部1002におけるパケットの経路を制御する処理について説明する。ヘッダ検出部1002は、入力されたパケットのヘッダを検出し(S1301)、検出した宛先ノード番号(N)が記憶している下流ノード番号と一致するか否かを判断する(S1302)。ここで、一致すれば、スイッチ541から出力されるチャネルとして、検出した宛先チャネル番号(T)と同じ番号のチャネルから出力されるパケット(つまり、チャネルT指定パケット)であると判断し、そのパケットを記憶する記憶領域としてチャネルT出力用記憶領域を選択する(S1303)。但し、本参考例では、Tは1〜8までの何れかである。
【0025】
また、パケットのヘッダから検出した宛先ノード番号(N)が記憶している下流ノード番号と一致しなければ、このパケットがスイッチ541から出力されるチャネルを指定しないパケットであると判定する。つまり、チャネル無指定パケットと判断し、そのパケット記憶する記憶領域としてチャネル無指定記憶領域を選択する(S1304)。
【0026】
このように、パケット宛先分類及びそのパケットを書き込む記憶領域の種類を判断し、その情報を書き込み制御部1003に伝える。この書き込み制御部1003はバッファメモリ1001にパケットを書き込むための書き込みアドレスを供給する書き込み制御部である。また、書きこみ制御部1003はヘッダ検出部1002から送られる記憶領域の種類に基づいてその記憶領域に対してパケットを一時記憶するための書き込みアドレスをバッファメモリ1001に出力し、パケットをその記憶領域に書き込む。また同時に、読み出し記憶領域決定部1005に対して記憶領域毎に書き込んだパケットの数を伝える。
【0027】
このようにして、ヘッダ検出部1002でパケット宛先分類を特定されたパケットは、書き込み制御部1003が出力するアドレスに従って9つの記憶領域のうちから自身のパケット宛先分類に応じた記憶領域に書き込まれる。
【0028】
1005は読み出し記憶領域決定部である。読み出し記憶領域決定部1005は、スイッチ制御部542から送られる読み出し記憶領域候補情報(後述)と、書き込み制御部1003から出力されている記憶領域毎のパケット書き込み数と、読み出し制御部1004から出力されている記憶領域毎のパケット読み出し数とに基づいて、読み出し領域の種類を決定し、それを読み出し制御部1004に伝える。
【0029】
スイッチ制御部542は、その時のスイッチの接続状態に応じて、各バッファ511〜518内に存在する読み出し記憶領域決定部1005に対し、バッファメモリ1001に一時記憶されているパケットのうちどの種類のパケットを読み出すべきなのか、即ち、どの記憶領域からパケットを読み出すべきなのかという読み出し記憶領域候補情報を以下のように伝える。
【0030】
スイッチ制御部542は、各バッファ511〜518内に存在する読み出し記憶領域決定部1005に対し、スイッチ541の接続状態により、そのバッファから出力されるパケットが531に出力できるような場合には、読み出し記憶領域候補情報としてチャネル1出力用記憶領域を指定し、532に出力できるような場合には、読み出し記憶領域候補情報としてチャネル2出力用記憶領域を指定し、…、538に出力できるような場合には、読み出し記憶領域候補情報としてチャネル8出力用記憶領域を指定する。
【0031】
ここで、図11を参照しながら読み出し記憶領域決定部1005における処理について説明する。読み出し記憶領域決定部1005では、スイッチ制御部542から、読み出し記憶領域候補情報を入力し(S1101)、その読み出し記憶領域候補情報で指定された領域に対応する書き込みパケット数と、読み出しパケット数との差からその領域に読み出すべきパケットが存在するか否かを判断する(S1102)。その結果、
1.あるスイッチ接続状態に対し、スイッチ制御部542が指定する読み出し記憶領域候補情報に示された記憶領域に読み出すべきパケットが存在する場合は(S1102のYES)、読み出し制御部1004に対し、読み出し記憶領域の種類として、スイッチ制御部542で指定された記憶領域を通知し(S1103)、
2.あるスイッチ接続状態に対し、スイッチ制御部542が指定する読み出し記憶領域候補情報に示された記憶領域に読み出すべきパケットが存在しないが(S1102のNO)、チャネル無指定記憶領域には読み出すべきパケットが存在する場合には(S1104のYES)、読み出し制御部1004に対し、読み出し領域の種類として、チャネル無指定記憶領域を通知し(S1105)、
3.あるスイッチ接続状態に対し、スイッチ制御部542が指定する読み出し記憶領域候補情報に示された記憶領域に読み出すべきパケットが存在せず(S1102のNO)、チャネル無指定記憶領域にも読み出すべきパケットが存在しない場合には(S1104のNO)、読み出し制御部1004に対し、読み出し記憶領域の種類を通知しない。
【0032】
このように、読み出し領域の種類を決定し、それを読み出し制御部1004に伝える。
【0033】
1004はバッファメモリ1001からパケットを読み出すための読み出しアドレスを供給する読み出し制御部である。読み出し制御部1004は、読み出し記憶領域決定部1005から送られる読み出し記憶領域の種類に基づいて以下の何れかの動作を行う:
a.読み出し記憶領域決定部1005から読み出し記憶領域の種類が通知された場合は(上記1.,2.)、通知された記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ1001に出力し、その記憶領域からパケットを読み出す。また同時に、読み出し記憶領域決定部1005に対して、記憶領域毎に読み出したパケットの数を伝え、
b.読み出し記憶領域決定部1005から読み出し記憶領域が通知されなければ(上記3.)、特に何も行わない。
【0034】
このように、バッファメモリ1001の9つの記憶領域の何れかに一時記憶されたパケットは、スイッチ制御部542からの指示に基づいてスイッチ541の接続状態に応じた記憶領域から読み出される。
【0035】
上述したように、複数の通信路を用いて各通信路に均等にパケットが流れるように分散させながらパケットを送信する通信システムでは、送信側ノード装置から受信側ノード装置へのパケットの伝送途中において、複数の送信路にパケットがランダムに送出され、かつ、途中経由していくノードのバッファの混み具合に従ってパケットが停滞するため、パケットの到着順序がばらばらになり、受信側ノードに到着するパケットの順番は保証されない。
【0036】
このような問題を解決するために、特開2000−151687では、並列多重伝送路と端末装置との間に、571〜578に示される端末インタフェース部を設けている。
【0037】
図14は、端末インタフェース部571〜578の内部構成を示す図である。符号1404はヘッダ変換部であり、端末551〜558から送られた信号を固定長のパケットに分割する。さらに、その分割したパケットに対し、各パケットのヘッダに宛先端末の宛先ノード番号と宛先端末の宛先チャネル番号とその通信を識別するコネクション識別子を記載し、そのコネクション識別子に応じてパケットを振り分け、シーケンス番号付加部1401に出力する。
【0038】
符号1401は、シーケンス番号をパケットの送信順番に対応してパケットのヘッダに付加するシーケンス番号付加部である。シーケンス番号付加部1401は1つの端末が同時に送信できるコネクションの数だけ必要となる。
【0039】
符号1403は到着したパケットからコネクション識別子を分離し、コネクション毎にパケットの出力先を制御するコネクション制御部である。
【0040】
符号1402はコネクション制御部から出力されたある特定のコネクションのパケットをシーケンス番号順に並べ替える機能を持つ並べ替え部である。そして、並べ替え部1402は、1つの端末が同時に使用できるコネクションの数だけ必要となる。ここではパケットの並べ替えの具体的な手順は、本発明と直接関係がないので、その説明は省略する。さらにパケットの順序を並び替えると同時に、ヘッダを除去し、元の信号に戻して端末装置に送り出す。
【0041】
図6は、図5に示すノード装置を用いたネットワークシステムの構成例を示す図である。ここで、4つのノード装置601〜604を並列多重伝送路605〜608によってリング型に接続し、各ノード装置にはそれぞれ8本のサブ伝送路を介して8台の端末装置が接続されている。ここで、端末装置611〜618は端末551〜558に対応し、同様に621〜628、631〜638、641〜648も端末551〜558に対応している。
【0042】
図7は、図6に示すネットワークの通信原理を説明するための図である。図7において、701〜704はノード装置、705〜708はスイッチ541に対応した交換スイッチ、709〜712はバッファ511〜518に対応したバッファ、721〜736は端末、A,B,C,Dはリングを成す並列伝送路である。
【0043】
以下、図7を参照してネットワークの通信原理について説明する。このネットワークは複数のリングA,B,C,Dを有し、各リング間は交換スイッチ705〜708によって相互に接続されている。各端末は並列伝送路A,B,C,Dの中の1つのリング伝送路に接続されており、他のリングに接続された端末と通信を行う場合は、少なくとも1回、任意の交換スイッチで他のリングに交換されることで通信が行われる。尚、交換が行われる位置は特定されないが、宛先ノードの1つ手前のノードで宛先の伝送路へ乗り換え、他のノードでは任意の伝送路へ乗り換えるようにすると通信制御が容易になる。このネットワークはノード装置を簡略化するため、交換スイッチ705〜708は入力信号とは無関係に入出力の接続関係を所定のパターンに従って、かつそのパターンを繰り返して変更し、バッファ709〜712で入力信号を一時蓄積して、交換スイッチの入出力接続関係が所望の関係になったときに、バッファからパケットを読み出すようにして交換が行われる。
【0044】
例えば、端末722から端末732へ通信する場合、端末722から出力されたパケットはノード装置701のバッファ709に蓄積され、スイッチ705の入力端IN2が、例えば出力端OUT2に接続されたときにバッファから読み出されて伝送路Bに出力され、ノード装置702のバッファ710へ入力してスイッチ706のIN2とOUT4が接続されたときにバッファから読み出されることにより、伝送路Dへ出力されて端末732へパケットが送られる。
【0045】
このように、宛先ノード装置の1つ手前のノード装置で宛先の伝送路へ乗り換えて他のノード装置では任意の伝送路へ乗り換えることにより通信が行われる。
【0046】
次に、図5、6を用いて端末616から端末635へコネクション識別子0を用いて通信する場合の動作例について説明する。説明において、並列多重伝送路は空間的に分離された複数の光ファイバ伝送路、スイッチは空間スイッチとして説明するが、波長多重伝送路を用いる場合も上記原理に基づいており、ほぼ同様の動作が行われる。
【0047】
1.端末616からの送信データはサブ伝送路を通ってノード装置601へ入力し、端末インタフェース部576のヘッダ変換部1404において、固定長のパケットに分割される。さらに分割された各パケットのヘッダに宛先ノード番号(N=3)と宛先チャネル番号(T=5)とコネクション識別子(C=0)が記載され、コネクション識別子0に対応したシーケンス番号付加部1401に出力される。シーケンス番号付加部1401では、入力してきた順序に従ってパケットにシーケンス番号を記載し出力する。
【0048】
2.端末インタフェース部576から出力されたパケットは、端末信号挿入部506のFIFO905に一時記憶される。記憶されたパケットは、端末信号分離部566からセレクタ904に入力したパケット流にすき間があるときにFIFO905から読み出され、セレクタ904を通ってバッファ516へ送られる。
【0049】
3.バッファ516のヘッダ検出部1002は、入力されたパケットのヘッダから検出した宛先ノード番号(N=3)が記憶している下流ノード番号(2)と一致しないので、このパケットが特定のチャネルを指定しないパケット(チャネル無指定パケット)であることがわかる。従って書き込み制御部1003に通知する書き込み記憶領域の種類として、チャネル無指定記憶領域を選択する。ヘッダ検出部1002は、書き込み記憶領域としてチャネル無指定記憶領域を書き込み制御部1003に通知する(図13参照)。
【0050】
4.書き込み制御部1003はその情報を受けて、上記で選択したチャネル無指定記憶領域に対する書き込みアドレスを発生させ、そのパケットをバッファメモリ1001のチャネル無指定記憶領域に書き込ませる。同時に、読み出し記憶領域決定部1005に対して、チャネル無指定記憶領域に書き込んだパケットの数(1)を伝える。
【0051】
5.スイッチ制御部542は、図4に示すテーブルのように制御アドレスをA1,A2,A3,A4,A5,A6,A7,A8と順次繰り返し供給することでスイッチ541の接続関係を変更させ、かつ制御アドレスを、例えば1パケット時間周期に供給することで、8パケット時間周期で同じパターンを繰り返すように制御している。従って、バッファ516に通知される読み出し記憶領域候補情報として、1パケット時間毎に、チャネル6出力用記憶領域、チャネル7出力用記憶領域、…、チャネル4出力用記憶領域、チャネル5出力用記憶領域と順次繰り返し指定される。
【0052】
6.バッファ516の読み出し記憶領域決定部1005では、スイッチ制御部542からの読み出し記憶領域候補情報で指定された領域に対応する書き込みパケット数と読み出しパケット数の差から、その領域に読み出すべきパケットが存在するか否かを判断する。今の場合、チャネル1出力用記憶領域〜チャネル8出力用記憶領域の何れの領域でもパケットは存在せず、チャネル無指定記憶領域には読み出すべきパケットが存在するので、読み出し制御部1004に対し、読み出し領域の種類として、チャネル無指定記憶領域を通知する(図11参照)。
【0053】
7.読み出し制御部1004はスイッチ541の入力端IN6(バッファ516と接続している)がどの出力端と接続している時にでも、チャネル無指定記憶領域からそのパケットの読み出しをすることができるが、ここではたまたまスイッチ541の入力端IN6が出力端OUT1に接続されたとき(つまり、図4の制御アドレスA4の時。そのときスイッチ541の接続は、IN6とOUT1が接続される)に、バッファ516の無指定記憶領域からこのパケットを読み出すものとする。更に同時に、読み出し制御部1004は、読み出し記憶領域決定部1005に対し、チャネル無指定記憶領域から読み出したパケットの数(1)を伝える。
【0054】
8.バッファ516のチャネル無指定記憶領域から読み出されたパケットは、スイッチ541を通って伝送路531へ出力される。
【0055】
9.伝送路531を通ってノード装置602の端末信号分離部561に入力したパケットは、ヘッダ検出部801でヘッダが検出される。検出した宛先ノード番号(N=3)は記憶している自ノード番号(2)と一致しないので、ゲート802を開きゲート803を閉じて端末信号挿入部501へそのパケットを出力する。端末信号挿入部501のセレクタ904へ出力されたパケットは、セレクタ904を通りバッファ511へ入力する。
【0056】
10.バッファ511のヘッダ検出部1002は、入力してきたパケットのヘッダから検出した宛先ノード番号(N=3)が記憶している下流ノード番号(3)と一致することと、検出したチャネル番号(T=5)とから、このパケットがチャネル5指定パケットであることがわかる。従って、書き込み制御部1003に通知する書き込み記憶領域の種類としてチャネル5出力用記憶領域を選択し、それを通知する(図13参照)。
【0057】
11.書き込み制御部1003はその情報を受けて、上記で選択したチャネル5出力用記憶領域に対する書き込みアドレスを発生させ、そのパケットをバッファメモリ1001のチャネル5出力用記憶領域に書き込ませる。更に同時に、読み出し記憶領域決定部1005に対して、チャネル5出力用記憶領域に書き込んだパケットの数(1)を伝える。
【0058】
12.スイッチ制御部542は、図4に示すテーブルのように制御アドレスをA1,A2,A3,A4,A5,A6,A7,A8と順次供給してスイッチ541の接続関係を変更させ、かつ制御アドレスを例えば1パケット時間周期に供給することで、8パケット時間周期で同じパターンを繰り返すように制御している。従って、バッファ511に通知される読み出し記憶領域候補情報として、チャネル1出力用記憶領域、チャネル2出力用記憶領域、…、チャネル7出力用記憶領域、チャネル8出力用記憶領域と順次繰り返し指定される。
【0059】
13.バッファ511の読み出し記憶領域決定部1005では、スイッチ制御部542からの読み出し記憶領域候補情報で指定された領域に対応する書き込みパケット数と読み出しパケット数の差から、その領域に読み出すべきパケットが存在するか否かを判断する。スイッチ制御部542から読み出し記憶領域候補情報として、チャネル5出力用記憶領域が指定された時(つまり、図4の制御アドレスA5の時。そのときスイッチ541の接続は、IN1とOUT5が接続される)には、その記憶領域にパケットが存在するので、読み出し制御部1004に読み出し記憶領域としてチャネル5出力用記憶領域を通知する(図11参照)。
【0060】
14.読み出し制御部1004はその情報を受けて、上記で選択したチャネル5出力用記憶領域に対する読み出しアドレスを発生させ、チャネル5出力用記憶領域からパケットを読み出す。更に同時に、読み出し記憶領域決定部1005に対して、チャネル5出力用記憶領域から読み出したパケットの数(1)を伝える。
【0061】
15.バッファ511のチャネル5出力用記憶領域から読み出されたパケットは、スイッチ541を通って伝送路535へ出力される。
【0062】
16.伝送路を通ってノード装置603の端末信号分離部565に入力したパケットは、ヘッダ検出部801でヘッダが検出される。検出した宛先ノード番号(N=3)は記憶している自ノード番号(3)と一致するので、ゲート803を開き、かつ、ゲート802を閉じて端末インタフェース575にそのパケットを出力する。
【0063】
17.端末信号分離部565から端末インタフェース575へ出力されたパケットは、コネクション制御部1403に入力される。コネクション制御部1403では、入力されたパケットのコネクション識別子(0)を抽出し、そのコネクション識別子に応じた並べ替え部1402にパケットを出力する。
【0064】
18.並べ替え部1402では、ランダムに到着したパケットデータをシーケンス番号順に並び替えると同時に、ヘッダを除去し、元の信号に戻して端末635に送り出す。
【0065】
以上のようにして、ネットワークシステムにおけるノード装置を経由して端末間での通信が行われる。
【0066】
【発明が解決しようとする課題】
ここで課題を説明する前に、説明を簡易にするため使用する用語を定義する。ある通信を考えたときに、その通信の送信端末が繋がるノード装置を「送信端末接続ノード装置」と呼び、その通信の受信端末が繋がるノード装置を「受信端末接続ノード装置」と呼ぶことにする。また、送信端末接続ノード装置から受信端末接続ノード装置へパケットが送られるために経由していくノード装置を「経由ノード装置」と呼ぶことにする。そして、経由ノード装置のうち、受信端末接続ノード装置の1つ上流のノード装置を「最終経由ノード装置」と呼ぶことにし、更に経由ノード装置のうち、最終経由ノード装置以外のノード装置を「途中経由ノード装置」と呼ぶことにする。
【0067】
つまり、参考例のネットワークを用いた端末616から端末635へ通信する場合の動作例において、ノード装置601は送信端末接続ノード装置、ノード装置603は受信端末接続ノード装置、ノード装置602は最終経由ノード装置となる。尚、参考例の場合、途中経由ノード装置はない。
【0068】
上述の参考例で示したパケットの交換方法を上記の用語を用いて説明すると、次のように言える。送信端末接続ノード装置からは任意のチャネルでパケットが出力され、途中経由ノード装置からも任意のチャネルでパケットが出力される。最終経由ノード装置からは宛先端末が繋がったチャネルでパケットが出力される。
【0069】
参考例に示す方式の1つの特徴として、送信端末接続ノード装置及び途中経由ノード装置において、任意のチャネルでパケットを出力することにより多重伝送チャネルへのパケットの分散を促し、多重伝送チャネル全体で回線容量を効率的に使用できることが挙げられる。
【0070】
しかしながら、複数の通信路を用いて各通信路に均等にパケットが流れるように分散させながらパケットを送信するという参考例に示した通信システムでは、送信端末接続ノード装置から受信端末接続ノード装置へのパケットの伝送途中において、複数の送信路にパケットがランダムに送出され、かつ、経由ノード装置のバッファの混み具合に従ってパケットが停滞するため、パケットの到着順序がばらばらになり、受信側ノードに到着するパケットの順番が保証されない(パケットの順序が入れ替わるメカニズムは後述する)。
【0071】
そのために、参考例では、端末インタフェース部571〜578にシーケンス番号付加部1401及び並び換え部1402を設けることにより端末装置551〜558に届くパケットの順番を元に(送信端末から出力されたパケットの順番)戻している。
【0072】
よって、参考例には、パケット伝送途中での順序入れ替わりに関して、以下のような問題が発生する。
「問題点1」:順序が入れ替わって到着するパケットの順序を元に戻すために、宛先端末が繋がった端末インタフェース部にパケットを並び替える手段(並び替え手段)が必要となる。
「問題点2」:並び替え手段において、パケットの並び替えを行うために、送信端末が繋がった端末インタフェース部にパケットのヘッダにシーケンス番号を付加する手段(シーケンス番号付加手段)が必要となる。
「問題点3」:上記並び替え手段及びシーケンス番号付加手段は、1つの端末が同時に使用できるコネクションの数だけ必要となるので、ハード的な制限によりコネクション数が限定される可能性が有る。
「問題点4」:パケットのヘッダにシーケンス番号を付加するための領域が必要となる。
【0073】
続いて、パケットの順序が伝送途中で入れ替わるメカニズムについて、図4、図5、図6、図15を用いて説明する。例とする通信は、参考例と同様に、端末616から端末635への通信を考える。
【0074】
説明の簡単のため、端末とノード装置までの伝送容量と、ノード装置間の伝送容量(1チャネル当たり)は同じとする。また、前述のように1つのパケットがある地点を通過するのにかかる時間を1パケット時間と呼ぶことにする。図15においてT0,T1,T2,T3,T4…はそれぞれ1パケット時間で、A4,A5,A6,A7,A8…はそれぞれのパケット時間における図4の制御アドレスを示している。
【0075】
更に、1つのパケットに対するバッファへの書き込み、読み出しにはそれぞれ1パケット時間かかるとする。また、あるノード装置から出力されて次のノード装置に入力され、端末信号分離部及び端末信号挿入部を通過する時間もまとめて1パケット時間とする。また、各ノード装置のスイッチ541の動作は完全に同期しているものとする。
【0076】
参考例では、1個のパケットが端末616から端末635に送られた場合を詳細に述べたが、「パケットの順序が伝送途中で入れ替わる現象」を述べるためには、複数のパケットの振る舞いを述べる必要がある。従って、端末616からの情報を複数(以下の例では4つ)のパケット二分割して送る場合を考える。シーケンス番号を付加された後の連続した複数のパケットを先頭から順にP1,P2,P3,P4と呼ぶことにする。
【0077】
1.端末616からの送信データはサブ伝送路を通ってノード装置601へ入力し、端末インタフェース部576のヘッダ変換部1404において、固定長のパケットに分割される。さらに分割された各パケットのヘッダに宛先端末のノード番号(N=3)と宛先チャネル番号(T=5)とコネクション識別子(C=0)が記載され、コネクション識別子0に対応したシーケンス番号付加部1401に出力される。シーケンス番号付加部1401は、入力してきた順序にしたがってパケットにシーケンス番号1,2,3,4、をそれぞれ記載したパケットP1,P2,P3,P4を順次出力する。
【0078】
2.端末インタフェース部576から送られた連続したパケットP1,P2,P3,P4は、端末信号挿入部506を経由してバッファ516のチャネル無指定記憶領域に一時的に書き込まれる。
【0079】
3.書きこまれたパケットはスイッチ541の入力端IN6(バッファ516と接続している)がどの出力端と接続している時にでも、チャネル無指定記憶領域からそのパケットの読み出しをすることができるが、ここではたまたまスイッチ541の入力端IN6が出力端OUT1に接続されたとき(つまり、図4の制御アドレスA4のときスイッチ541のIN6とOUT1が接続される。その接続状態が維持されている間をT0パケット時間と呼ぶことにする)に、バッファ516の無指定記憶領域から先頭パケットP1を読み出すものとする(図15参照)。
【0080】
4.パケットは連続しているので、次のパケットP2はT1パケット時間(制御アドレスA5)の時に読み出され、更に次のパケットP3はT2パケット時間(制御アドレスA6)の時に読み出される。同様にパケットP4はT3パケット時間(制御アドレスA7)のときに読み出される(図15参照)。
【0081】
5.従って、ノード装置601から出力されるパケットは、P1が531から出力され、その1パケット時間後にP2が532から出力され、更にその1パケット時間後にP3が533から出力される。同様にパケットP4は更に1パケット時間後に534から出力される。
【0082】
6.ノード装置601から出力されたパケットはそれぞれの伝送チャネルを通り、ノード装置602に入力される。更に、それぞれの伝送チャネルにある端末信号分離部と端末信号挿入部を通過して(その間に1パケット時間かかるとしている)、それぞれの伝送チャネルにあるバッファのチャネル5出力用記憶領域に一時的に書き込まれる。つまり、P1はバッファ511のチャネル5出力用記憶領域にT2パケット時間に書きこまれ、P2はバッファ512のチャネル5出力用記憶領域にT3パケット時間に書きこまれ、P3はバッファ513のチャネル5出力用記憶領域にT4パケット時間に書き込まれ、P4はバッファ514のチャネル5出力用記憶領域にT5パケット時間に書き込まれる(図15参照)。
【0083】
7.この場合、読み出しが可能(書き込み終了直後から読み出し可能)になるのは、パケットP1ではT3パケット時間(制御アドレスA7)のとき、パケットP2ではT4パケット時間(制御アドレスA8)のとき、パケットP3ではT5パケット時間(制御アドレスA1)のとき、パケットP4ではT6パケット時間(制御アドレスA2)のときとなる。
【0084】
8.しかしながら、T3パケット時間(制御アドレスA7:スイッチ541の接続は、IN1とOUT7、IN7とOUT5が接続される)の時にはパケットP1はチャネル5出力用記憶領域に記憶されているので読み出すことはできない。
【0085】
9.同様に、T4パケット時間(制御アドレスA8:スイッチ541の接続は、IN2とOUT1、IN6とOUT5が接続される)の時にはパケットP2はチャネル5出力用記憶領域に記憶されているので読み出すことはできない。
【0086】
10.また同様に、T5パケット時間(制御アドレスA1:スイッチ541の接続は、IN3とOUT3、IN5とOUT5が接続される)の時にはパケットP3はチャネル5出力用記憶領域に記憶されているので読み出すことはできない。
【0087】
11.T6パケット時間(制御アドレスA2:スイッチ541の接続は、IN4とOUT5が接続される)の時にはパケットP4はチャネル5出力用記憶領域に記憶されているので読み出される(図15参照)。
【0088】
12.T7パケット時間(制御アドレスA3:スイッチ541の接続は、IN3とOUT5が接続される)の時にはパケットP3はチャネル5出力用記憶領域に記憶されているので読み出される(図15参照)。
【0089】
13.T8パケット時間(制御アドレスA4:スイッチ541の接続は、IN2とOUT5が接続される)の時にはパケットP2はチャネル5出力用記憶領域に記憶されているので読み出される(図15参照)。
【0090】
14.T9パケット時間(制御アドレスA5:スイッチ541の接続は、IN1とOUT5が接続される)の時にはパケットP1はチャネル5出力用記憶領域に記憶されているので読み出される(図15参照)。
【0091】
15.従って、ノード装置602から出力されるパケットは、T7パケット時間にP4が、T8パケット時間にP3が、T9パケット時間にP2が、T10パケット時間にP1が、それぞれ535から出力されることになる(図15参照)。
【0092】
16.つまり、ノード装置602において、パケットの順序の入れ替わりが起き、入れ替わった順序の状態(P4,P3,P2,P1)でノード装置603に入力され、端末信号分離部565で分離され、端末インタフェース部575に入力される。
【0093】
17.端末インタフェース部575に入力されたパケットは、そのヘッダに記されたシーケンス番号に従って順序を元に戻され(P1,P2,P3,P4)、ヘッダを除去して元の信号に組立られて、端末635に送られる。
【0094】
本発明は、上記課題を解決するためになされたもので、パケット伝送途中での順序入れ替わりを防止することを目的とする。
【0095】
また、パケットの並び替えに伴うコネクション数のハード的な制限をなくすることを目的とする。
【0096】
【課題を解決するための手段】
上記目的を達成するために、本発明は、複数の端末装置を接続するための複数のノード装置を並列な複数のチャネルでリング状に接続した通信ネットワークであって、伝送するパケットの宛先端末に応じて分類されたパケットを所定の記憶領域に書き込み、当該書き込み順序を示す情報を管理する管理手段と、前記書き込み順序を示す情報に従って前記所定の記憶領域から前記パケットを読み出すように制御する読み出し制御手段とを有し、前記分類されたパケットを所定の記憶領域に書き込む順序と読み出す順序とを一致させることを特徴とする。
【0097】
また、上記目的を達成するために、本発明は、並列な複数のチャネルを有するリング状の通信ネットワークに接続され、複数の端末装置を該通信ネットワークに接続するためのノード装置であって、伝送するパケットの宛先端末に応じて分類されたパケットを所定の記憶領域に書き込み、当該書き込み順序を示す情報を管理する管理手段と、前記書き込み順序を示す情報に従って前記所定の記憶領域から前記パケットを読み出すように制御する読み出し制御手段と、読み出したパケットを前記並列な複数のチャネル間で伝送するチャネルを切り替えて出力する切替手段と、前記宛先端末に出力すべきパケットを前記複数のチャネルの何れかに接続された前記宛先端末としての端末装置へ分離する分離手段と、前記複数の端末装置から伝送されてくるパケットを前記複数のチャネルの何れかに挿入する挿入手段とを有することを特徴とする。
【0098】
また、上記目的を達成するために、本発明は、複数の端末装置を接続するための複数のノード装置を並列な複数のチャネルでリング状に接続した通信ネットワークの制御方法であって、伝送するパケットの宛先端末に応じて分類されたパケットを所定の記憶領域に書き込み、当該書き込み順序を示す情報を管理する管理工程と、前記書き込み順序を示す情報に従って前記所定の記憶領域から前記パケットを読み出すように制御する読み出し制御工程とを有し、前記分類されたパケットを所定の記憶領域に書き込む順序と読み出す順序とを一致させることを特徴とする。
【0099】
また、上記目的を達成するために、本発明は、並列な複数のチャネルを有するリング状の通信ネットワークに接続され、複数の端末装置を該通信ネットワークに接続するためのノード装置の制御方法であって、伝送するパケットの宛先端末に応じて分類されたパケットを所定の記憶領域に書き込み、当該書き込み順序を示す情報を管理する管理工程と、前記書き込み順序を示す情報に従って前記所定の記憶領域から前記パケットを読み出すように制御する読み出し制御工程と、読み出したパケットを前記並列な複数のチャネル間で伝送するチャネルを切り替えて出力する切替工程と、前記宛先端末に出力すべきパケットを前記複数のチャネルの何れかに接続された前記宛先端末としての端末装置へ分離する分離工程と、前記複数の端末装置から伝送されてくるパケットを前記複数のチャネルの何れかに挿入する挿入工程とを有することを特徴とする。
【0100】
【発明の実施の形態】
以下、図面を参照しながら本発明に係る実施の形態を詳細に説明する。
【0101】
本実施形態では、図16に示すパケットと図2に示すノード装置を用いた通信を行う場合について説明する。
【0102】
図16は、本実施形態におけるネットワークに用いるパケットの構成を示す図である。パケットはヘッダとデータとから構成される。ヘッダには送信データの宛先情報が格納され、データには送信データが格納される。また、図16に示されている通り、ヘッダは以下のように構成される。
【0103】
まず、Nは宛先ノード番号であり、例えば本実施形態のネットワークにノード装置が32台接続するならばノード番号1〜32を示す5ビットで構成される。また、それぞれのノード装置には1〜32のうち異なる番号がノード番号として与えられる。Nには宛先端末が接続されたノード装置のノード番号(宛先ノード番号)が格納される。
【0104】
次に、Tは伝送チャネル番号であり、例えば本実施形態のネットワークで並列多重伝送路の伝送チャネル数(多重数)を8個とするならば1〜8を示す3ビットで構成される。それぞれの伝送チャネルには1〜8のうち異なる番号が伝送チャネル番号として与えられる。Tには宛先端末が接続された伝送チャネル番号(宛先チャネル番号)が格納される。
【0105】
その他には、同期信号、誤り訂正符号、コネクションを識別するコネクション識別子などが、必要に応じて挿入される。ネットワーク内の各端末は、その端末が接続しているノード装置のノード番号と、その端末が接続している伝送チャネル番号とにより個々に識別される。
【0106】
図2は、本実施形態におけるネットワークに用いるノード装置200の構成を示す図である。但し、参考例で示した図5のノード装置と、本実施形態の図2のノード装置において、端末信号挿入部501〜508、端末信号分離部561〜568、並列多重伝送路521〜528、531〜538、端末装置551〜558、スイッチ541は、同じ動作を行うので同じ番号で示し、ここではそれらの説明を割愛する。
【0107】
図3は、本実施形態におけるバッファ手段211〜218の内部構成を示す図である。301は入力してくるパケットを一時記憶するためのバッファメモリである。その内部は、参考例の1001と同じようにスイッチ541の8つの出力端それぞれに対応したチャネル1出力用記憶領域〜チャネル8出力用記憶領域の8つの記憶領域、及びスイッチ541の特定の出力端を指定しない(任意の出力端を指定する)チャネル無指定記憶領域とから構成される。
【0108】
参考例と同様に、このようにバッファメモリ301を構成する目的は、ノード装置200からパケットを出力する際、チャネル1(531)へ出力したい場合はそのパケットをチャネル1出力用記憶領域に記憶し、チャネル2(532)へ出力したい場合はそのパケットをチャネル2出力用記憶領域に記憶し、…、チャネル8(538)へ出力したい場合はそのパケットをチャネル8出力用記憶領域に記憶し、任意のチャネルへ出力したい場合はそのパケットをチャネル無指定記憶領域に記憶するようにするためである。また、これらの記憶領域の区別を「記憶領域の種類」と呼ぶ。
【0109】
従って、9つそれぞれの記憶領域に記憶されるパケットの種類は、次のようになる。チャネル1出力用記憶領域には、スイッチ541によって531に出力されるべきパケット(チャネル1指定パケットと呼ぶ)が一時記憶される。同じく、チャネル2出力用記憶領域には、スイッチ541によって532に出力されるべきパケット(チャネル2指定パケットと呼ぶ)が一時記憶される。以下同様に、チャネル8出力用記憶領域には、スイッチ541によって538に出力されるべきパケット(チャネル8指定パケットと呼ぶ)が一時記憶される。また、スイッチ541によって任意のチャネルに出力してよいパケットを「チャネル無指定パケット」と呼び、このチャネル無指定パケットは、チャネル無指定記憶領域に一時記憶される。またこれらのパケットの区別を「パケット宛先分類」と呼ぶ。
【0110】
但し、本実施形態では、チャネル無指定記憶領域に書き込まれるチャネル無指定パケットは、バッファメモリ301において滞留することなく、バッファメモリ301に書きこまれた次の読み出しタイミング情報の時に直ちに読み出される(詳細は後述)ので、チャネル無指定記憶領域の大きさは、他の記憶領域に比べて小さく割り当てることが可能である。例えば、1パケット分の領域を割り当てれば十分である。更に、パケットがバッファメモリ301に書き込まれるタイミングに、スイッチ制御部242から送られる読み出しタイミング情報を合わせるならば、チャネル無指定記憶領域を割り当てる必要もなくなる。その場合には、ヘッダ検出されたチャネル無指定パケットは、そのままスイッチ541に出力される。
【0111】
バッファ211〜218において、端末信号挿入部501〜508より入力したパケットはヘッダ検出部302においてヘッダが検出され、ヘッダの内容によりそのパケット宛先分類(チャネル1指定パケット、チャネル2指定パケット、…、チャネル8指定パケット、チャネル無指定パケット)が決定される。
【0112】
302は入力されたパケットのヘッダを検出するヘッダ検出部である。ヘッダ検出部302には、予め隣接する下流ノード装置のノード番号(下流ノード番号と呼ぶ)と、自バッファが繋がっている伝送チャネル番号(自チャネル番号と呼ぶ)とが記憶されている。ヘッダ検出部302は次のように、パケットのヘッダから検出した宛先ノード番号(N)及び伝送チャネル番号(T)と、記憶している下流ノード番号及び自チャネル番号とから、そのパケットがスイッチ541によって531〜538のどのチャネルに出力されるべきパケットかを判断(パケット宛先分類を判断)し、それを書き込み制御部303、及びスイッチ制御部242に伝える。
【0113】
まず、ヘッダ検出部302は、パケットのヘッダから検出(S2001)した宛先ノード番号(N)が記憶している下流ノード番号と一致すれば(S2002のYES)、スイッチ541から出力されるチャネルとして、検出した伝送チャネル番号(T)と同じ番号のチャネルから出力されるパケット(つまり、チャネルT指定パケット)であると判断し、そのパケット記憶する記憶領域としてチャネルT出力用記憶領域を選択し(但し、本実施形態ではTは1〜8までの何れかである)、書き込み制御部303に伝える(S2003)。更に、スイッチ制御部242に対して、パケット宛先分類情報としてチャネルT指定パケット、チャネル情報として自チャネル番号を伝える(S2004)。
【0114】
また、パケットのヘッダから検出した宛先ノード番号(N)が記憶している下流ノード番号とは一致しない場合には(S2002のNO)、このパケットが、スイッチ541から出力されるチャネルを指定しないパケットであると判断する。つまり、チャネル無指定パケットと判断し、そのパケット記憶する記憶領域としてチャネル無指定記憶領域を選択し、書き込み制御部303に伝える(S2005)。スイッチ制御部242に対しては何も行わない。
【0115】
このように、パケット宛先分類及びそのパケットを書き込む記憶領域の種類を判断し、その情報を書き込み制御部303及びスイッチ制御部242に伝える。
【0116】
303はバッファメモリ301にパケットを書き込むための書き込みアドレスを供給する書き込み制御部である。書き込み制御部303は、ヘッダ検出部302から送られる記憶領域の種類に基づいてその記憶領域に対してパケットを一時記憶するための書き込みアドレスをバッファメモリ301に出力し、パケットをその記憶領域に書き込む。更に、ヘッダ検出部302から送られてくる記憶領域の種類がチャネル無指定記憶領域である場合には、上記に加えて、読み出し記憶領域決定部305にある無指定パケット有無管理ビットを1にセットする。
【0117】
このようにして、ヘッダ検出部302でパケット宛先分類を特定されたパケットは、書き込み制御部303が出力するアドレスに従って9つの記憶領域のうちから、自身のパケットの種類に応じた記憶領域に書きこまれる。
【0118】
304はバッファメモリ301からパケットを読み出すための読み出しアドレスを供給する読み出し制御部である。読み出し制御部304は、読み出し記憶領域決定部305から送られる読み出し記憶領域の種類に基づいて、その記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ301に出力し、その記憶領域からパケットを読み出す。更に、読み出し記憶領域決定部305から送られてくる記憶領域の種類がチャネル無指定記憶領域である場合には、上記に加えて、読み出し記憶領域決定部305にある無指定パケット有無管理ビットを0にクリアする。
【0119】
305は、読み出し記憶領域決定部である。読み出し記憶領域決定部305は、以下に示すように、スイッチ制御部242から読み出しタイミング情報が送られてくる毎に、スイッチ制御部242から送られる読み出し記憶領域指示情報(後述)と、無指定パケット有無管理ビットとにより、読み出し領域の種類を決定し、それを読み出し制御部304に伝える。
【0120】
図21において、スイッチ制御部242から読み出しタイミング情報が送られてきたとき(S2101)、無指定パケット有無管理ビットが1になっていれば(S2102のYES)、読み出し記憶領域の種類として、チャネル無指定記憶領域を通知する(S2103)。更に、キュー順送り指示情報として状態維持指示をスイッチ制御部242へ出す(S2104)。
【0121】
また、スイッチ制御部242から読み出しタイミング情報が送られてきたとき(S2101)、無指定パケット有無管理ビットが0で(S2102のNO)、スイッチ制御部242から出力された読み出し記憶領域指示情報に読み出し禁止が示されていれば(S2105のYES)、読み出し制御部304に対し、読み出しを通知することなく、キュー順送り指示情報として状態維持指示をスイッチ制御部242へ出す(S2106)。
【0122】
また、スイッチ制御部242から読み出しタイミング情報が送られてきたとき(S2101)、無指定パケット有無管理ビットが0で(S2102のNO)、スイッチ制御部242から出力された読み出し記憶領域指示情報に読み出し禁止が示されていなければ(S2105のNO)、読み出し制御部304に対し、読み出し記憶領域の種類として、スイッチ制御部242から出力された読み出し記憶領域指示情報に示された記憶領域を通知する(S2107)。更に、キュー順送り指示情報として順送り指示をスイッチ制御部242へ出す(S2108)。
【0123】
上述したように、読み出し領域の種類を決定し、読み出し制御部304に出力し、またキュー順送り指示情報をスイッチ制御部242へ出力する。尚、無指定パケット有無管理ビットの初期値は0である。従って、バッファ211〜218にチャネル無指定パケットが入力された場合には、スイッチ541の接続状態に関わらず、チャネル1〜8指定パケットに優先して出力されることになる。
【0124】
このように、読み出し領域の種類を決定することで、読み出し記憶領域決定部305は、読み出しタイミング情報が送られてきたなら、そのときのスイッチ541の接続状態に関わらず、かつチャネル指定パケットがチャネル1〜8出力用記憶領域に存在か否かに関わらず、読み出し記憶領域としてチャネル無指定記憶領域を指定できる。従って、チャネル無指定記憶領域に書き込まれるチャネル無指定パケットはバッファメモリ301において滞留することなく、書き込み制御部303によってバッファメモリ301に書き込まれた次の読み出しタイミング情報の時に読み出される。
【0125】
符号242はスイッチ制御部であり、例えば図4に示すテーブルの制御パターンに従ってスイッチを制御する。スイッチ制御部242はスイッチ541に対し、図4に示すテーブルのように制御アドレスをA1,A2,A3,A4,A5,A6,A7,A8,A1,A2…と順次供給してスイッチ541の入力と出力との接続関係を変更させる。制御アドレスを変更する周期は1パケット時間(1つのパケットがある地点を通過するのにかかる時間を1パケット時間と呼ぶ)の倍数であれば特に規定されない。ここでは制御アドレスを、例えば1パケット時間周期に供給することで、8パケット時間周期で同じパターンを繰り返すように制御しているものとする。
【0126】
更に、スイッチ制御部242は、スイッチの接続状態並びスイッチ制御部242内部で管理している情報に基づいて各バッファ211〜218内に一時記憶されているパケットのうちどのパケットを読み出すべきなのか、という読み出し記憶領域指示情報を各バッファ211〜218に伝える(詳細は後述する)。
【0127】
図1は、本実施形態におけるスイッチ制御部242の内部構成を示す図である。図1に示すように、スイッチ制御部242は、パケット読み出し候補チャネル設定部141、読み出しキュー管理部142、読み出し指示情報セレクタ143、パケット宛先情報セレクタ144、制御アドレス生成部145、及びチャネル1〜8指定パケット順序維持部から構成される。また、チャネル1〜8指定パケット順序維持部は、読み出し順序キュー101〜108と比較器131〜138から構成される。
【0128】
符号145は制御アドレス生成部である。この制御アドレス生成部145は、スイッチ541、パケット読み出し候補チャネル設定部141、読み出しキュー管理部142、読み出し指示情報セレクタ143に対し、図4に示すテーブルのように制御アドレスをA1,A2,…と1パケット時間毎に順次供給する。また、その変更のタイミングに応じて読み出しタイミング情報を1パケット時間毎にバッファ211〜218へ出力する。スイッチ541は、送られてくる制御アドレスに従って入力と出力との接続関係を変更する。
【0129】
符号141はパケット読み出し候補チャネル設定部である。このパケット読み出し候補チャネル設定部141は、制御アドレス生成部145から送られる制御アドレスに従って図19に示す表のように動作する。
【0130】
図19に示す表は、図4に示した表を書き換えたものである。図4に示した表はスイッチ541の入力側のチャネルを中心に、制御アドレスに応じてそれぞれの入力チャネルがどの出力チャネルと接続するかを示したものであるが、図19に示す表では逆に出力側のチャネルを中心に、制御アドレスに応じてそれぞれの出力チャネルがどの入力チャネルと接続するかを示したものである。
【0131】
前述したように、チャネル1指定パケットとは、スイッチ541を通過した後チャネル1(531)に出力されるべきパケットのことである。従って、ある制御アドレスのときに、出力チャネル1(531)と接続している入力チャネルに繋がったバッファが、そのときのチャネル1指定パケットを読み出す候補のチャネルになる。チャネル2〜8指定パケットに関しても同様である。
【0132】
パケット読み出し候補チャネル設定部141は、図19に示す表に従って次のように動作する。
【0133】
1.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT1がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル1指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル1指定パケット順序維持部にチャネル1を出力する(制御アドレスA1のときには、スイッチ541のOUT1とIN1が繋がっているため。図19参照)。
【0134】
2.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT2がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル2指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル2指定パケット順序維持部にチャネル2を出力する。
【0135】
3.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT3がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル3指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル3指定パケット順序維持部にチャネル3を出力する。
【0136】
4.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT4がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル4指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル4指定パケット順序維持部にチャネル4を出力する。
【0137】
5.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT5がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル5指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル5指定パケット順序維持部にチャネル5を出力する。
【0138】
6.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT6がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル6指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル6指定パケット順序維持部にチャネル6を出力する。
【0139】
7.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT7がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル7指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル7指定パケット順序維持部にチャネル7を出力する。
【0140】
8.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT8がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル8指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル8指定パケット順序維持部にチャネル8を出力する。
【0141】
符号142は読み出しキュー管理部である。この読み出しキュー管理部142は、制御アドレス生成部145から送られる制御アドレスに従って図4のように動作する。
【0142】
前述したように、チャネル1指定パケットとは、スイッチ541を通過した後、チャネル1(531)に出力されるべきパケットのことである。従って、ある制御アドレスのときに出力チャネル1(531)からチャネル1指定パケットが出力されたとすると、そのチャネル1指定パケットは、そのときの制御アドレスによって出力チャネル1と接続されている入力チャネルにあるバッファから読み出されたものである。チャネル2〜8指定パケットに関しても同様である。
【0143】
読み出しキュー管理部142は、図4の表に従って次のように動作する。
【0144】
1.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ211がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ211から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル1指定パケット順序維持部にバッファ211からのキュー順送り指示情報を出力する(制御アドレスA1の時には、スイッチ541のOUT1とIN1が繋がっているため。図4参照)。
【0145】
2.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ212がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ212から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル2指定パケット順序維持部にバッファ212からのキュー順送り指示情報を出力する。
【0146】
3.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ213がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ213から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル3指定パケット順序維持部にバッファ213からのキュー順送り指示情報を出力する。
【0147】
4.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ214がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ214から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル4指定パケット順序維持部にバッファ214からのキュー順送り指示情報を出力する。
【0148】
5.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ215がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ215から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル5指定パケット順序維持部にバッファ215からのキュー順送り指示情報を出力する。
【0149】
6.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ216がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ216から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル6指定パケット順序維持部にバッファ216からのキュー順送り指示情報を出力する。
【0150】
7.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ217がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ217から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル7指定パケット順序維持部にバッファ217からのキュー順送り指示情報を出力する。
【0151】
8.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ218がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ218から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル8指定パケット順序維持部にバッファ218からのキュー順送り指示情報を出力する。
【0152】
符号143は読み出し指示情報セレクタである。読み出し指示情報セレクタ143は、制御アドレス生成部145から送られる制御アドレスに従って図19のように動作する。
【0153】
前述したように、チャネル1指定パケットとは、スイッチ541を通過した後、チャネル1(531)に出力されるべきパケットのことである。従って、ある制御アドレスの時に出力チャネル1(531)が繋がっている入力チャネルにあるバッファが、そのときのチャネル1指定パケットを読み出す候補のチャネルになる。チャネル2〜8指定パケットに関しても同様である。
【0154】
読み出し指示情報セレクタ143は、図19の表に従って次のように動作する。
【0155】
1.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT1がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル1指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル1指定パケット順序維持部はバッファ211に読み出し記憶領域指示情報を出力する(制御アドレスA1のときには、スイッチ541のOUT1とIN1が繋がっているため。図19参照)。
【0156】
2.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT2がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル2指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル2指定パケット順序維持部はバッファ212に読み出し記憶領域指示情報を出力する。
【0157】
3.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT3がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル3指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル3指定パケット順序維持部はバッファ213に読み出し記憶領域指示情報を出力する。
【0158】
4.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT4がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル4指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル4指定パケット順序維持部はバッファ214に読み出し記憶領域指示情報を出力する。
【0159】
5.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT5がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル5指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル5指定パケット順序維持部はバッファ215に読み出し記憶領域指示情報を出力する。
【0160】
6.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT6がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル6指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル6指定パケット順序維持部はバッファ216に読み出し記憶領域指示情報を出力する。
【0161】
7.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT7がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル7指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル7指定パケット順序維持部はバッファ217に読み出し記憶領域指示情報を出力する。
【0162】
8.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT8がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル8指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル8指定パケット順序維持部はバッファ218に読み出し記憶領域指示情報を出力する。
【0163】
符号144はパケット宛先情報セレクタである。パケット宛先情報セレクタ144は、バッファ211〜218から送られてくるパケット宛先分類情報とチャネル情報を次のように処理する。
【0164】
パケット宛先情報セレクタ144は、送られてきたパケット宛先分類情報に対応したチャネル指定パケット順序維持部に、そのパケット宛先分類情報と一緒に送られてきたチャネル情報を出力する。つまり、パケット宛先分類情報として、チャネル1指定パケットが送られてきた場合に、その情報と一緒に送られてきたチャネル情報は、チャネル1指定パケット順序維持部に出力する。パケット宛先分類情報として、チャネル2〜8指定パケットが送られてきた場合には、その情報と一緒に送られてきたチャネル情報は、それぞれチャネル2〜8指定パケット順序維持部に出力される。
【0165】
この場合、複数のバッファから同時に同一のパケット宛先分類情報が送られてくる場合(つまり、複数のバッファに同時に同一のパケット宛先分類に属するパケットが入力された場合)があり、その場合には、同一のチャネル指定パケット順序維持部に同時に複数のチャネル情報が出力されることになる。
【0166】
続いて、チャネル1〜8指定パケット順序維持部について説明する。チャネル1〜8指定パケット順序維持部の内部構成は、全て同じであるので、その動作はチャネル1指定パケット順序維持部を代表として用いて説明する。
【0167】
符号101は読み出し順序キューである。この読み出し順序キュー101は、パケット宛先情報セレクタ144から送られてきたチャネル情報を送られてきた順に記憶し、送られてきた順に出力する機能(FIFOとしての機能)を持つ。最初に入力されたチャネル情報は、先頭出力として比較器131に出力される。読み出し順序キュー101の初期状態は空である。
【0168】
パケット宛先情報セレクタ144の説明で述べたように、パケット宛先情報セレクタ144から同一のチャネル指定パケット順序維持部に同時に複数のチャネル情報が出力される場合がある。その場合には、その複数のチャネル情報を、読み出し順序キューで保持する順序は問わない。例えば、同時に複数のチャネル情報が入力された場合には、チャネル情報の小さいものを先に記憶するという制御でも良い。
【0169】
また、読み出しキュー管理部142からキュー順送り指示情報として、順送り指示が送られてきた場合には、そのとき先頭出力となっているチャネル情報を廃棄して、次のチャネル情報を先頭出力とし、送られてきた順に保持しているチャネル情報を1つ順送りする。また、読み出しキュー管理部142からキュー順送り指示情報として、状態維持指示が送られてきた場合には、先頭出力は変化させず、順送りは行わない。
【0170】
符号131は比較器である。比較器131は、パケット読み出し候補チャネル設定部141から出力されているチャネル番号と、読み出し順序キュー101の先頭出力として出力されているチャネル番号とを比較し、その結果に応じて読み出し指示情報セレクタ143へ読み出し記憶領域指示情報を出力する。比較器131は、その両チャネル番号が一致した場合には、読み出し記憶領域指示情報として、チャネル1出力用記憶領域を出力し、その両チャネル番号が一致しない場合には、読み出し記憶領域指示情報として、読み出し禁止を出力する。
【0171】
チャネル2〜8指定パケット順序維持部の内部構成は、チャネル1指定パケット順序維持部と同様であるので、その動作は省略する。但し、比較器132〜138において、それぞれに入力している両チャネル番号が一致した場合には、読み出し記憶領域指示情報として、それぞれチャネル2〜8出力用記憶領域を出力する。
【0172】
本実施形態は、複数の通信路を用い各通信路に均等にパケットが流れるように分散させながらパケットを送信する通信システムである。しかしながら、従来の参考例とは異なり、送信側ノード装置から受信側ノード装置へのパケットの伝送途中において、パケットの到着順序は維持される。
【0173】
従って、本実施形態では、参考例のようなパケットの並び替えを主目的とした端末インタフェース部は必要ない。
【0174】
次に、本実施形態における通信の手順を、図1、図2、図3、図6を用いて詳細に説明する。図6は、図2に示したノード装置を用いたネットワークシステムの構成例である。この例では、4つのノード装置601〜604を並列多重伝送路605〜608によってリング型に接続し、各ノード装置にはそれぞれ8本のサブ伝送路を介して8台の端末装置が接続されている。端末装置611〜618は端末551〜558に対応し、同様に621〜628、631〜638、641〜648も端末551〜558に対応している。例えば、端末616から端末635へ通信する場合の動作例について説明する。
【0175】
1.端末616からの送信データは固定長のパケットに分割され、各パケットのヘッダに宛先ノード番号(N=3)と宛先チャネル番号(T=5)を記載して出力される。出力されたパケットはサブ伝送路を通ってノード装置601へ入力する。
【0176】
2.ノード装置601に入力したパケットは、端末信号挿入部506のFIFO905に一時記憶される。記憶されたパケットは、端末信号分離部566からセレクタ904に入力したパケット流にすき間があるときにFIFO905から読み出され、セレクタ904を通ってバッファ216へ送られる。
【0177】
3.バッファ216のヘッダ検出部302は、入力してきたパケットのヘッダから検出した宛先ノード番号(N=3)が記憶している下流ノード番号(2)と一致しないので、このパケットが特定のチャネルを指定しないパケット(チャネル無指定パケット)であることがわかる。従って、書き込み制御部303に通知する書き込み記憶領域の種類として、チャネル無指定記憶領域を選択する。ヘッダ検出部302は、書き込み記憶領域としてチャネル無指定記憶領域を書き込み制御部303に通知する(図20参照)。スイッチ制御部242へのパケット宛先分類情報等の伝達は行わない。
【0178】
4.書き込み制御部303はその情報を受けて、上記で選択したチャネル無指定記憶領域に対する書き込みアドレスを発生させ、そのパケットをバッファメモリ301のチャネル無指定記憶領域に書き込ませる。更に同時に、読み出し記憶領域決定部305の無指定パケット有無管理ビットを1にセットする。
【0179】
5.スイッチ制御部242の制御アドレス生成部145は、図4に示すテーブルのように制御アドレスをA1,A2,A3,A4,A5,A6,A7,A8と順次供給してスイッチ541の接続関係を変更させ、かつ制御アドレスを、例えば1パケット時間周期に供給することで、8パケット時間周期で同じパターンを繰り返すように制御している。
【0180】
6.スイッチ制御部242のパケット読み出し候補チャネル設定部141は、制御アドレス生成部145が生成する制御アドレスA1,A2,A3,…並びに図19に従って、チャネル1指定パケット順序維持部にはスイッチ541のOUT1と接続しているスイッチ入力チャネルを出力し、チャネル2指定パケット順序維持部にはスイッチ541のOUT2と接続しているスイッチ入力チャネルを出力し、…、チャネル8指定パケット順序維持部にはスイッチ541のOUT8と接続しているスイッチ入力チャネルを出力する。
【0181】
7.スイッチ制御部242のパケット宛先情報セレクタ144は、バッファ211〜218から送られてくるパケット宛先分類情報に従って、一緒に送られてくるチャネル情報を、チャネル1〜8指定パケット順序維持部に振り分ける。しかしながら、現在バッファ216で処理されているパケットは、チャネル無指定パケットであるので、パケット宛先分類情報は送られて来ない。従って、読み出し順序キュー101〜108には何も保持されていない(初期状態のまま)。
【0182】
8.読み出し順序キュー101〜108には何も保持されていないので、比較器131〜138は読み出し記憶領域指示情報として、読み出し禁止を出力する。
【0183】
9.読み出し指示情報セレクタ143は、制御アドレス生成部145が生成する制御アドレスA1,A2,A3,…並びに図19に従って、チャネル1指定パケット順序維持部からの読み出し記憶領域指示情報をスイッチ541のOUT1と接続しているバッファに出力し、チャネル2指定パケット順序維持部からの読み出し記憶領域指示情報をスイッチ541のOUT2と接続しているバッファに出力し、…、チャネル8指定パケット順序維持部からの読み出し記憶領域指示情報をスイッチ541のOUT8と接続しているバッファに出力する。チャネル1〜8指定パケット順序維持部からの読み出し記憶領域指示情報は全て読み出し禁止であるので、バッファ211〜218に出力される読み出し記憶領域指示情報も全て読み出し禁止となる。
【0184】
10.バッファ216の読み出し記憶領域決定部305では、スイッチ制御部242から読み出しタイミング情報が来たときに、スイッチ制御部242からの読み出し記憶領域指示情報と、無指定パケット有無管理ビットとから、次にパケットを読み出す領域を判断する。今の場合、無指定パケット有無管理ビットが1なので、読み出し制御部304に対し、読み出し領域の種類として、チャネル無指定記憶領域を通知する。さらに、読み出しキュー管理部142にキュー順送り指示情報として状態維持指示を出力する(図21参照)。
【0185】
11.読み出し制御部304は、読み出し領域の種類として、チャネル無指定記憶領域を受け取ると、そのチャネル無指定記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ301に出力し、そのチャネル無指定記憶領域からチャネル無指定パケットを読み出す。チャネル無指定パケットの場合、制御アドレス、つまりスイッチ541の接続状態に関わらず読み出せ、かつチャネル指定パケットに優先して読み出されるので、書き込み制御部303によってバッファメモリ301に書きこまれた次の読み出しタイミング情報の時に読み出される。ここではたまたまスイッチ541の入力端IN6が出力端OUT1に接続されたとき(つまり、図4の制御アドレスA4の時。そのときスイッチ541の接続は、IN6とOUT1が接続される)に、バッファ216の無指定記憶領域からこのパケットを読み出すものとする。さらに同時に読み出し制御部304は、読み出し記憶領域決定部305の無指定パケット有無管理ビットを0にクリアする。
【0186】
12.バッファ216のチャネル無指定記憶領域から読み出されたパケットは、スイッチ541を通って伝送路531へ出力される。
【0187】
13.伝送路531を通ってノード装置602の端末信号分離部561に入力したパケットは、ヘッダ検出部801でヘッダが検出される。検出した宛先ノード番号(N=3)は記憶している自ノード番号(2)と一致しないので、ゲート802を開きゲート803を閉じて端末信号挿入部501へそのパケットを出力する。端末信号挿入部501のセレクタ904へ出力されたパケットは、セレクタ904を通りバッファ211へ入力する。
【0188】
14.バッファ211のヘッダ検出部302は、入力してきたパケットのヘッダから検出した宛先ノード番号(N=3)が記憶している下流ノード番号(3)と一致したことと、検出したチャネル番号(T=5)とから、このパケットがチャネル5指定パケットであることがわかる。従って、書き込み制御部303に通知する書き込み記憶領域の種類としてチャネル5出力用記憶領域を選択し、それを通知する。更に、スイッチ制御部242に対してパケット宛先分類情報(チャネル5指定パケット)とチャネル情報(チャネル1:自チャネル番号)を伝える(図20参照)。
【0189】
15.書き込み制御部303はその情報を受けて、上記で選択したチャネル5出力用記憶領域に対する書き込みアドレスを発生させ、そのパケットをバッファメモリ301のチャネル5指定記憶領域に書き込ませる。また、このパケットはチャネル無指定パケットではないので、無指定パケット有無管理ビットはセットしない(初期状態:0のまま)。
【0190】
16.スイッチ制御部242の制御アドレス生成部145は、図4に示すテーブルのように制御アドレスをA1,A2,A3,A4,A5,A6,A7,A8と順次供給してスイッチ541の接続関係を変更させ、かつ制御アドレスを例えば1パケット時間周期に供給することで、8パケット時間周期で同じパターンを繰り返すように制御している。
【0191】
17.スイッチ制御部242のパケット宛先情報セレクタ144は、バッファ211から送られてきたパケット宛先分類情報(チャネル5指定パケット)に従って、一緒に送られてくるチャネル情報(チャネル1)を、チャネル5指定パケット順序維持部に出力する。
【0192】
18.読み出し順序キュー105には最初何も保持されていないので、パケット宛先情報セレクタ144から送られて来たチャネル情報(チャネル1)を先頭出力として比較器135に出力する。
【0193】
19.パケット読み出し候補チャネル設定部141が、比較器135に対してチャネル1を出力するのは、制御アドレスがA5のときである(図19参照)。従って、比較器135は、制御アドレスがA5のときにだけ、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を、読み出し指示情報セレクタ143に出力する。制御アドレスがA5のときには、読み出し指示情報セレクタ143は、上述の読み出し記憶領域指示情報(チャネル5出力用記憶領域)をバッファ211に出力する(図19参照)。
【0194】
20.バッファ211の読み出し記憶領域決定部305では、制御アドレスがA5のときに、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を受け取るので(無指定パケット有無管理ビットが0)、読み出し領域の種類としてチャネル5出力用記憶領域を、読み出し制御部304に通知する。更に、読み出しキュー管理部142にキュー順送り指示情報として順送り指示を出力する(図21参照)。
【0195】
21.読み出し制御部304は、制御アドレスがA5のときに読み出し領域の種類としてチャネル5出力用記憶領域を受け取ると、そのチャネル5出力用記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ301に出力し、そのチャネル5出力用記憶領域からチャネル5指定パケットを読み出す。
【0196】
22.また同時に、読み出しキュー管理部142は、制御アドレスがA5のときには、バッファ211から出力されるキュー順送り指示情報(順送り指示)を、チャネル5指定パケット順序維持部に出力する(図4参照)。読み出し順序キュー105では、順送り指示を受け取ると、先頭出力(チャネル1)を破棄し、記憶しているチャネル情報を1つ順送りする。この場合は、先頭出力(チャネル1)以外に記憶しているチャネル情報がないので、読み出し順序キュー105は空(初期状態)に戻る。
【0197】
23.バッファ211のチャネル5出力用記憶領域から読み出されたパケットは、スイッチ541を通って伝送路535へ出力される。
【0198】
24.伝送路を通ってノード装置603の端末信号分離部565に入力したパケットは、ヘッダ検出部801でヘッダが検出される。検出した宛先ノード番号(N=3)は記憶している自ノード番号(3)と一致するので、ゲート803を開き、且つゲート802を閉じて端末方向のみにそのパケットを出力する。
【0199】
25.端末信号分離部565から端末方向へ出力されたパケットは、サブ伝送路を通って端末635へ送られ受信される。
【0200】
以上のようにして、本実施形態におけるネットワークシステムのノード装置間での通信が行われる。
【0201】
次に、パケットの順序が伝送途中で入れ替わらないことを明示的に示すために、図1、図2、図3、図6、図22、図23を用いて説明する。例とする通信は、参考例の問題点を示した場合と同じく端末616から端末635への通信を考える。また、参考例の問題点での説明と同じように、説明の簡単のため、端末とノード装置までの伝送容量と、ノード装置間の伝送容量(1チャネル当たり)は同じとする。また、前述したように、1つのパケットがある地点を通過するのにかかる時間を1パケット時間と呼ぶことにする。
【0202】
図22、図23において、T0,T1,T2,T3,T4…はそれぞれ1パケット時間で、A4,A5,A6,A7,A8…はそれぞれのパケット時間における図4、図19の制御アドレスを示している。図22、図23は一連の時間経過を示す図で、T10パケット時間は重複して示されている。また、図23では、同じ状態が維持されている時間は一部省略されている。
【0203】
更に、1つのパケットに対するバッファへの書き込み、読み出しにはそれぞれ1パケット時間かかるとする。また、あるノード装置から出力されて次のノード装置に入力され、端末信号分離部及び端末信号挿入部を通過する時間もまとめて1パケット時間とする。また、各ノード装置のスイッチ541の動作は完全に同期しているものとする。
【0204】
また、参考例の問題点について説明したのと同じように、端末616から複数(以下の例では4つ)のパケットが連続して送られている場合を考える。ここで連続した複数のパケットを先頭から順に「P1,P2,P3,P4」と呼ぶことにする。
【0205】
1.端末616からの送信データは固定長のパケットに分割され、各パケットのヘッダに宛先ノード番号(N=3)と宛先チャネル番号(T=5)を記載して出力される。出力されたパケットは、出力された順にP1,P2,P3,P4とし、それらはサブ伝送路を通ってノード装置601へ入力する。
【0206】
2.ノード装置601に入力したパケットP1,P2,P3,P4は、端末信号挿入部506を経由してバッファ216でチャネル無指定パケットと判定され、バッファメモリ301のチャネル無指定記憶領域に一時的に書き込まれる。
【0207】
3.チャネル無指定パケットの場合、制御アドレス、つまりスイッチ541の接続状態にかかわらず読み出せ、かつチャネル指定パケットに優先して読み出されるので、書き込み制御部303によってバッファメモリ301に書きこまれた次の読み出しタイミング情報のときに読み出される。ここではたまたまスイッチ541の入力端IN6が出力端OUT1に接続されたとき(つまり、図4の制御アドレスがA4のときスイッチ541でIN6とOUT1が接続され、その接続状態が維持されている間をT0パケット時間と呼ぶことにする)に、バッファ216の無指定記憶領域から先頭パケットP1を読み出すものとする(図22参照)。
【0208】
4.パケットは連続しているので、次のパケットP2はT1パケット時間(制御アドレスがA5)のときに読み出され、更に次のパケットP3はT2パケット時間(制御アドレスがA6)のときに読み出される。また同様に、パケットP4はT3パケット時間(制御アドレスがA7)のときに読み出される(図22参照)。
【0209】
5.従って、ノード装置601から出力されるパケットは、P1が531から出力され、その1パケット時間後にP2が532から出力され、その1パケット時間後にP3が533から出力される。また同様に、パケットP4は1パケット時間後に534から出力される。
【0210】
6.ノード装置601から出力されたパケットはそれぞれの伝送チャネルを通り、ノード装置602に入力される。更に、それぞれの伝送チャネルにある端末信号分離部と端末信号挿入部を通過して(その間に1パケット時間かかるとしている)、それぞれの伝送チャネルにあるバッファのチャネル5出力用記憶領域に一時的に書き込まれる。つまり、P1はバッファ211のチャネル5出力用記憶領域にT2パケット時間に書きこまれ、P2はバッファ212のチャネル5出力用記憶領域にT3パケット時間に書きこまれ、P3はバッファ213のチャネル5出力用記憶領域にT4パケット時間に書き込まれ、P4はバッファ214のチャネル5出力用記憶領域にT5パケット時間に書き込まれる(図22参照)。
【0211】
7.この際、スイッチ制御部242のパケット宛先セレクタ144に対して、バッファ211からパケット宛先分類情報(チャネル5指定パケット)とチャネル情報(チャネル1)、バッファ212からパケット宛先分類情報(チャネル5指定パケット)とチャネル情報(チャネル2)、バッファ213からパケット宛先分類情報(チャネル5指定パケット)とチャネル情報(チャネル3)、バッファ214からパケット宛先分類情報(チャネル5指定パケット)とチャネル情報(チャネル4)が順番に送られる。
【0212】
8.スイッチ制御部242のパケット宛先情報セレクタ144は、上述のようにバッファ211〜214から送られてくるパケット宛先分類情報(すべてチャネル5指定パケット)に従って、一緒に送られてくるチャネル情報(チャネル1、チャネル2、チャネル3、チャネル4)を、入力してきた順序(チャネル1、チャネル2、チャネル3、チャネル4の順序)で、チャネル5指定パケット順序維持部に出力する。
【0213】
9.読み出し順序キュー105は、パケット宛先情報セレクタ144から送られてきたチャネル情報を、それらが送られてきた順番(チャネル1、チャネル2、チャネル3、チャネル4の順序)に記憶する。読み出し順序キュー105には、最初何も保持されていないので、チャネル1を先頭出力として比較器135に出力する。
【0214】
10.パケット読み出し候補チャネル設定部141が、比較器135に対してチャネル1を出力するのは、制御アドレスがA5のときである(図19参照)。従って、比較器135は制御アドレスがA5(T9パケット時間)のときにだけ、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を、読み出し指示情報セレクタ143に出力する。制御アドレスA5(T9パケット時間)のときには、読み出し指示情報セレクタ143は、上述した読み出し記憶領域指示情報(チャネル5出力用記憶領域)をバッファ211に出力する(図19参照)。
【0215】
11.バッファ211の読み出し記憶領域決定部305では、制御アドレスがA5(T9パケット時間)のときに、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を受け取るので(無指定パケット有無管理ビットは0)、その読み出し領域の種類としてチャネル5出力用記憶領域を、読み出し制御部304に通知する。更に、読み出しキュー管理部142にキュー順送り指示情報として順送り指示を出力する(図21参照)。
【0216】
12.読み出し制御部304は、制御アドレスがA5(T9パケット時間)のときに読み出し領域の種類としてチャネル5出力用記憶領域を受け取ると、そのチャネル5出力用記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ301に出力し、そのチャネル5出力用記憶領域からチャネル5指定パケットP1を読み出す(図22参照)。
【0217】
13.同時に、読み出しキュー管理部142は、上述の制御アドレスがA5(T9パケット時間)のときに、バッファ211から出力されるキュー順送り指示情報(順送り指示)を、チャネル5指定パケット順序維持部に出力する(図4参照)。読み出し順序キュー105では、順送り指示を受け取ると、先頭出力(チャネル1)を破棄し、記憶しているチャネル情報を1つ順送りする。従って、次はチャネル2を先頭出力として比較器135に出力する。
【0218】
14.制御アドレスがA5(T9パケット時間)のときに、バッファ211のチャネル5出力用記憶領域から読み出されたパケットP1は、スイッチ541を通って伝送路535へ出力される。
【0219】
15.続いてパケット読み出し候補チャネル設定部141が、比較器135に対してチャネル2を出力するのは、制御アドレスがA4のときである(図19参照)。従って、比較器135は制御アドレスがA4(T16パケット時間)のときにだけ、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を、読み出し指示情報セレクタ143に出力する。制御アドレスA4(T16パケット時間)のときには、読み出し指示情報セレクタ143は、上述した読み出し記憶領域指示情報(チャネル5出力用記憶領域)をバッファ212に出力する(図19参照)。
【0220】
16.バッファ212の読み出し記憶領域決定部305では、制御アドレスがA4(T16パケット時間)のときに、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を受け取るので(無指定パケット有無管理ビットは0)、読み出し領域の種類としてチャネル5出力用記憶領域を読み出し制御部304に通知する。更に、読み出しキュー管理部142にキュー順送り指示情報として順送り指示を出力する(図21参照)。
【0221】
17.読み出し制御部304は、制御アドレスがA4(T16パケット時間)のときに、読み出し領域の種類としてチャネル5出力用記憶領域を受け取ると、そのチャネル5出力用記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ301に出力し、そのチャネル5出力用記憶領域からチャネル5指定パケットP2を読み出す(図22参照)。
【0222】
18.同時に、読み出しキュー管理部142は、上述の制御アドレスがA4(T16パケット時間)のときには、バッファ212から出力されるキュー順送り指示情報(順送り指示)を、チャネル5指定パケット順序維持部に出力する(図4参照)。読み出し順序キュー105では、順送り指示を受け取ると、先頭出力(チャネル2)を破棄し、記憶しているチャネル情報を1つ順送りする。従って、次はチャネル3を先頭出力として比較器135に出力する。
【0223】
19.制御アドレスがA4(T16パケット時間)のときにバッファ212のチャネル5出力用記憶領域から読み出されたパケットP2は、スイッチ541を通って伝送路535へ出力される。
【0224】
20.続いてパケット読み出し候補チャネル設定部141が、比較器135に対してチャネル3を出力するのは、制御アドレスがA3のときである(図19参照)。従って、比較器135は制御アドレスがA3(T23パケット時間)のときにだけ、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を、読み出し指示情報セレクタ143に出力する。制御アドレスがA3(T23パケット時間)のときには、読み出し指示情報セレクタ143は、上述の読み出し記憶領域指示情報(チャネル5出力用記憶領域)をバッファ213に出力する(図19参照)。
【0225】
21.バッファ213の読み出し記憶領域決定部305では、制御アドレスがA3(T23パケット時間)のときに読み出し記憶領域指示情報としてチャネル5出力用記憶領域を受け取るので(無指定パケット有無管理ビットは0)、読み出し領域の種類としてチャネル5出力用記憶領域を読み出し制御部304に通知する。更に、読み出しキュー管理部142にキュー順送り指示情報として順送り指示を出力する(図21参照)。
【0226】
22.読み出し制御部304は、制御アドレスがA3(T23パケット時間)のときに読み出し領域の種類としてチャネル5出力用記憶領域を受け取ると、そのチャネル5出力用記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ301に出力し、そのチャネル5出力用記憶領域からチャネル5指定パケットP3を読み出す(図22参照)。
【0227】
23.同時に、読み出しキュー管理部142は、上述の制御アドレスがA3(T23パケット時間)のときには、バッファ213から出力されるキュー順送り指示情報(順送り指示)を、チャネル5指定パケット順序維持部に出力する(図4参照)。読み出し順序キュー105では、順送り指示を受け取ると、先頭出力(チャネル3)を破棄し、記憶しているチャネル情報を1つ順送りする。従って、次はチャネル4を先頭出力として比較器135に出力する。
【0228】
24.制御アドレスがA3(T23パケット時間)のときにバッファ213のチャネル5出力用記憶領域から読み出されたパケットP3は、スイッチ541を通って伝送路535へ出力される。
【0229】
25.続いて、パケット読み出し候補チャネル設定部141が、比較器135に対してチャネル4を出力するのは、制御アドレスがA2のときである(図19参照)。従って、比較器135は制御アドレスがA2(T30パケット時間)のときにだけ、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を、読み出し指示情報セレクタ143に出力する。制御アドレスがA2(T30パケット時間)のときには、読み出し指示情報セレクタ143は、上述の読み出し記憶領域指示情報(チャネル5出力用記憶領域)をバッファ214に出力する(図19参照)。
【0230】
26.バッファ214の読み出し記憶領域決定部305では、制御アドレスがA2(T30パケット時間)のときに読み出し記憶領域指示情報としてチャネル5出力用記憶領域を受け取るので(無指定パケット有無管理ビットは0)、読み出し領域の種類としてチャネル5出力用記憶領域を読み出し制御部304に通知する。更に、読み出しキュー管理部142にキュー順送り指示情報として順送り指示を出力する(図21参照)。
【0231】
27.読み出し制御部304は、制御アドレスがA2(T30パケット時間)のときに読み出し領域の種類としてチャネル5出力用記憶領域を受け取ると、そのチャネル5出力用記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ301に出力し、そのチャネル5出力用記憶領域からチャネル5指定パケットP4を読み出す(図22参照)。
【0232】
28.同時に、読み出しキュー管理部142は、上述の制御アドレスがA2(T30パケット時間)のときには、バッファ214から出力されるキュー順送り指示情報(順送り指示)を、チャネル5指定パケット順序維持部に出力する(図4参照)。読み出し順序キュー105では、順送り指示を受け取ると、先頭出力(チャネル4)を破棄し、記憶しているチャネル情報を1つ順送りする。この場合は、先頭出力以外に記憶しているチャネル情報がないので、読み出し順序キュー105は空(初期状態)に戻る。
【0233】
29.制御アドレスがA2(T30パケット時間)のときにバッファ214のチャネル5出力用記憶領域から読み出されたパケットP4は、スイッチ541を通って伝送路535へ出力される。
【0234】
30.従って、ノード装置602から出力されるパケットは、T10パケット時間にP1が、T17パケット時間にP2が、T24パケット時間にP3が、T31パケット時間にP4が、それぞれ535から出力されることになる。
【0235】
31.つまり、本実施形態では、ノード装置602においてパケットの順序の入れ替わりが起こらず、元の状態(P1,P2,P3,P4)でノード装置603に入力され、端末信号分離部565で分離されて端末635に送られる。
【0236】
この場合、送信端末616から宛先端末635へ送られるパケットの流れは、以下のようになる。
【0237】
[送信端末接続ノード装置(601)]:
・送信端末616から送られたパケットは、端末信号挿入部506を経由してリング伝送路に挿入されるが、その過程ではパケットの順序入れ替えは起こらない。
・バッファ216に入力されたパケットは、チャネル無指定パケットと分類され、バッファメモリ301に書きこまれた次の読み出しタイミング情報の時に次々に読み出されるので、パケットの順序入れ替えは起こらない。
・バッファ212から出力されたパケットは、スイッチ541によってバラバラのチャネルに振り分けられるが、その過程ではパケットの順序入れ替えは起こらない。
【0238】
[最終経由ノード装置(602)]:
・バラバラのチャネルから入力されたパケットは、それぞれのチャネルの端末信号分離部、端末信号挿入部を経由して、それぞれのチャネルにあるバッファ部に入力されるが、その過程ではパケットの順序入れ替えは起こらない。
・それぞれのチャネルにあるバッファ部に入力されたパケットは、チャネル5指定パケットと分類され、それぞれのバッファ部のチャネル5出力用記憶領域に書き込まれるが、その過程ではパケットの順序入れ替えは起こらない。
・スイッチ制御部242のチャネル5指定パケット順序維持部の読み出し順序キュー105には、パケットがそれぞれのバッファ部に書きこまれた順にそのバッファのチャネル情報が入力される。更に、読み出し順序キュー105から出力される(出力される順序は入力された順序と同じ)チャネル情報に従ってバッファが選択され、そのバッファからパケットが読み出されて行くので、その過程ではパケットの順序入れ替えは起こらない。
・それぞれのバッファから出力されたパケットは、スイッチ541によってチャネル5(535)に出力されるが、その過程ではパケットの順序入れ替えは起こらない。
【0239】
[受信端末接続ノード装置(603)]:
・チャネル5(525)からに入力されたパケットは、端末信号分離部565で分離され、宛先端末635に送られるが、その過程ではパケットの順序入れ替えは起こらない。
・また、上で示した通信例には、途中経由ノード装置が含まれていなかったが、以下に示すように、途中経由ノード装置でもパケットの順序の入れかえは起こらない。
【0240】
[途中経由ノード装置]:
・バラバラのチャネルから入力されたパケットは、それぞれのチャネルの端末信号分離部、端末信号挿入部を経由して、それぞれのチャネルにあるバッファ部に入力されるが、その過程ではパケットの順序入れ替えは起こらない。
・それぞれのチャネルにあるバッファ部に入力されたパケットは、チャネル無指定パケットと分類され、バッファメモリ301に書きこまれた次の読み出しタイミング情報の時に次々に読み出されるので、パケットの順序入れ替えは起こらない。
・それぞれのバッファから出力されたパケットは、スイッチ541によって、バラバラのチャネルに振り分けられるが、その過程ではパケットの順序入れ替えは起こらない。
【0241】
以上まとめると、本実施形態では、各ノード装置においてパケット宛先分類毎にパケットの順序を維持することで、同一のパケット宛先分類の中でのパケットの順序入れ替わりを防いでいる。つまり、
・チャネル無指定パケットに対して、バッファメモリ301に書きこまれた次の読み出しタイミング情報の時に読み出すようにする(チャネル指定パケットより優先して読み出す)ことで、チャネル無指定パケットの順序入れ替えを防いでいる。
・チャネル1指定パケットに対して、チャネル1指定パケットが、各チャネルのバッファ211〜218にどのような順序で書き込まれていったのか(書き込みチャネル順序情報と呼ぶ)を読み出し順序キュー101が管理し、読み出し順序キュー101が管理している書き込みチャネル順序情報に従って、各チャネルのバッファ211〜218に書きこまれているチャネル1指定パケットを読み出していくことで、チャネル1指定パケットの順序入れ替えを防いでいる。
・チャネル2〜8指定パケットに対してもチャネル1指定パケットと同様の制御により、チャネル2〜8指定パケットの順序入れ替わりを防いでいる。
【0242】
従って、本実施形態によれば、参考例で問題になっていた、パケットの順序が伝送途中で入れ替わる、という現象が発生することはなくなり、参考例で述べた「問題点1、2、3,4」も解決される。
【0243】
[他の実施形態]
次に、図面を参照しながら本発明に係る他の実施形態を詳細に説明する。
【0244】
図17は、他の実施形態におけるノード装置の構成図である。上述の実施形態でスイッチ541に空間分割型のスイッチを用い、伝送路としてリボンファイバなどの空間分割並列多重伝送路を用いたのに対し、他の実施形態では波長多重を用いて1本の光ファイバに信号を多重し、対向する2つのノード装置間で交換を行うものである。
【0245】
図17において、1701〜1708は波長可変送信部であり、レーザダイオードの注入電流を制御することにより入力信号を任意の波長の光信号に変換して出力する光送信器である。1720は波長制御部であり、スイッチ制御部242と基本的に同じものである。尚、スイッチ制御部242は、スイッチ541に対してその入力チャネルと出力チャネルの接続状態の切り替えを指示したが、波長制御部1720は、波長可変送信部1701〜1708を図4に示した波長制御パターンに従ってそれぞれの送信波長を任意の波長に設定するものである。
【0246】
例えば、制御アドレスA1〜A8を順次周期的に変更することで、波長可変送信部1701の入力端IN1に入力した信号を最初の周期で波長λ1の光信号に変換し、次の周期で波長λ2の光信号に変換し、更に波長λ3,λ4,λ5…と順次変更する。波長可変送信部1702も同様に入力端IN2に入力した信号を波長λ2,λ3,λ4,λ5,λ6…の順番で繰り返し上記波長の光信号に変換する。他の波長可変送信部1703〜1708も同様である。
【0247】
波長変更の周期は、例えばパケット長の整数倍に設定される。つまり、数パケット単位に送信波長が繰り返し変更されることになる。また、使用する波長制御パターンは図4に限ったものではないが、複数の波長可変送信部が同時に同じ波長で送信しない波長制御パターンを用いる。
【0248】
1721は合波器であり、各波長可変送信部から出力された光信号を1本の光ファイバに集光し、外部光ファイバ伝送路へ出力する。1722は分波器であり、外部光ファイバ伝送路から送られてきた波長λ1〜λ8の光信号をそれぞれの波長に分離する。1711〜1718は光受信部であり、分波器1722で分離された波長λ1〜λ8の光信号を電気信号に変換するものである。ノード装置の他の部分は、前述した実施形態或いは参考例と同様であり、同じ部分は同一番号で記してある。
【0249】
尚、前述した実施形態における通信の手順は、スイッチ541に空間分割型のスイッチを用い、伝送路としてリボンファイバなどの空間分割並列多重伝送路を用いたのに対し、他の実施形態では波長多重を用いて1本の光ファイバに信号を多重した部分を除いて同じであり、その異なる部分の動作については既に詳述したので省略する。
【0250】
尚、本発明は複数の機器(例えば、ホストコンピュータ,インタフェース機器,リーダ,プリンタなど)から構成されるシステムに適用しても、1つの機器からなる装置(例えば、複写機,ファクシミリ装置など)に適用しても良い。
【0251】
また、本発明の目的は前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPU若しくはMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【0252】
この場合、記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【0253】
このプログラムコードを供給するための記録媒体としては、例えばフロッピー(登録商標)ディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
【0254】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0255】
更に、記録媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0256】
【発明の効果】
以上説明したように、本発明によれば、各ノード装置において、パケット宛先分類毎にパケットの順序を維持することにより、同一のパケット宛先分類の中でパケットの順序入れ替わりを防ぐことができる。即ち、
・チャネル無指定パケットに対しては、バッファメモリに書きこまれた次の読み出しタイミング情報のときに読み出すようにすることで(チャネル指定パケットより優先して読み出すことで)、チャネル無指定パケットの順序入れ替えを防ぐことができる。
・チャネル1指定パケットに対しては、チャネル1指定パケットが、各チャネルのバッファにどのような順序で書き込まれていったのか(書き込みチャネル順序情報と呼ぶ)を読み出し順序キューが管理し、読み出し順序キューが管理している書き込みチャネル順序情報に従って、各チャネルのバッファに書きこまれているチャネル1指定パケットを読み出していくことで、チャネル1指定パケットの順序入れ替えを防ぐことができる。
・チャネル2〜8指定パケットに対してもチャネル1指定パケットと同様の制御により、チャネル2〜8指定パケットの順序入れ替わりを防ぐことができる。
【0257】
従って、本発明によれば、問題になっていたパケットの順序が伝送途中で入れ替わるという現象が発生することはなくなり、従来必要であった、順序が入れ替わって到着するパケットの順序を元に戻すために、宛先端末が繋がった端末インタフェース部にパケットを並び替える手段(並び替え手段)と、並び替え手段において、パケットの並び替えを行うために、送信端末が繋がった端末インタフェース部にパケットのヘッダにシーケンス番号を付加する手段(シーケンス番号付加手段)と、パケットのヘッダにシーケンス番号を付加するための領域とが必要なくなる。
【0258】
また、上記の並び替え手段及びシーケンス番号付加手段に付随するハード的な制限により、コネクション数が限定されることもなくなる。
【0259】
そして、チャネル無指定記憶領域に書き込まれるチャネル無指定パケットは、バッファメモリ301において滞留することなく、バッファメモリ301に書きこまれた次の読み出しタイミング情報の時に直ちに読み出されるので、チャネル無指定記憶領域の大きさは、他の記憶領域に比べて小さく割り当てることが可能である。例えば1パケット分の領域を割り当てれば十分である。更に、パケットがバッファメモリ301に書き込まれるタイミングに、スイッチ制御部242から送られる読み出しタイミング情報を合わせるなら、チャネル無指定記憶領域を割り当てる必要もなくなる。
【図面の簡単な説明】
【図1】本実施形態におけるスイッチ制御部242の内部構成を示す図である。
【図2】本実施形態におけるネットワークに用いるノード装置200の構成を示す図である。
【図3】本実施形態におけるバッファ手段211〜218の内部構成を示す図である。
【図4】スイッチ制御部の制御パターンを示す図である。
【図5】参考例のネットワークにおけるノード装置の構成例を示す図である。
【図6】図5に示すノード装置を用いたネットワークシステムの構成例を示す図である。
【図7】図6に示すネットワークの通信原理を説明するための図である。
【図8】端末信号分離部561〜568の内部構成を示す図である。
【図9】端末信号挿入部501〜508の内部構成を示す図である。
【図10】バッファ部511〜518の内部構成を示す図である。
【図11】読み出し記憶領域決定部1005における読み出し領域の種類を決定する処理手順を示すフローチャートである。
【図12】ヘッダ検出部801におけるパケット経路の制御手順を示すフローチャートである。
【図13】ヘッダ検出部1002におけるパケット経路の制御手順を示すフローチャートである。
【図14】端末インタフェース部571〜578の内部構成を示す図である。
【図15】パケットの順序が伝送途中で入れ替わる現象を説明するための図である。
【図16】本実施形態におけるネットワークに用いるパケットの構成を示す図である。
【図17】他の実施形態におけるノード装置の構成を示す図である。
【図18】参考例のネットワークに用いられるパケット構成を示す図である。
【図19】制御アドレスに応じてそれぞれの出力チャネルがどの入力チャネルと接続するかを示す図である。
【図20】書き込みアドレスを決定する処理手順を示すフローチャートである。
【図21】読み出し領域の種類を決定する処理手順を示すフローチャートである。
【図22】パケットの順序が伝送途中で入れ替わらないこと説明するための図である。
【図23】パケットの順序が伝送途中で入れ替わらないこと説明するための図である。
【発明の属する技術分野】
本発明は、複数の端末装置を接続するための複数のノード装置を並列な複数のチャネルでリング状に接続した通信ネットワーク、ノード装置及びそれらの制御方法に関する。
【0002】
【従来の技術】
近年、情報量の増大に伴い、複数の端末装置を接続するネットワークの高速化大容量化に対応すべく、ノード装置を並列多重伝送路で接続し、各々の通信路に均等にパケットが流れるように分散させながらパケットを送信する通信システムが提案されている。例えば、特開平8−172394号及び特開平8−237306号にその構成例が示されている。以下、これら提案された構成例を参考例として紹介する。
【0003】
参考例では、図5に示すノード装置が図18に示すパケットを用いて通信するものである。図18は、参考例のネットワークに用いられるパケット構成を示す図である。図示するように、パケットはヘッダとデータとから構成される。このヘッダには送信データの宛先情報が格納され、またデータには送信データが格納される。更に、ヘッダは図18に示すように、以下のように構成されている。
【0004】
Nは宛先ノード番号であり、仮に本参考例のネットワークにノード装置が32台接続できるならばノード番号1〜32を示す5ビットで構成される。それぞれのノード装置には1〜32のうち、異なる番号がノード番号として与えられる。Nには宛先端末が接続されたノード装置のノード番号(宛先ノード番号と呼ぶ)が格納される。
【0005】
Tは伝送チャネル番号であり、仮に本参考例のネットワークで並列多重伝送路の伝送チャネル数(多重数)が8個ならば1〜8を示す3ビットで構成される。それぞれの伝送チャネルには1〜8のうち異なる番号が伝送チャネル番号として与えられる。Tには宛先端末が接続された伝送チャネル番号(宛先チャネル番号と呼ぶ)が格納される。
【0006】
Sはシーケンス番号であり、パケットの送信順番に対応して付加される。Cは各コネクションを識別するためのコネクション識別子である。その他には、同期信号、誤り訂正符号などが、必要に応じて挿入される。
【0007】
ネットワーク内の各端末は、ノード番号と伝送チャネル番号により個々に識別される。また、本ネットワークで行われる一連の通信はパケットのヘッダの宛先ノード番号、宛先チャネル番号、コネクション識別子により、区別される。更に、その区別された通信毎に、端末インタフェース部によりシーケンス番号が付加される。
【0008】
図5は、参考例のネットワークにおけるノード装置の構成例を示す図である。図5に示すように、ノード装置500にはサブ伝送路を介して端末装置551〜558が接続されている。符号501〜508は、挿入手段であるところの端末信号挿入部であり、端末装置551〜558から出力され、端末インタフェース(I/F)部571〜578を経由して入力されるパケットを並列多重伝送路521〜528から入力されるパケット流に挿入する機能を有している。
【0009】
符号561〜568は、分離手段であるところの端末信号分離部であり、並列多重伝送路521〜528から入力されるパケット流のヘッダに格納された宛先情報を検出し、サブ伝送路及び端末インタフェース部571〜578を経由して端末装置551〜558へ伝送させるパケットと、端末信号挿入部501〜508を経由してバッファ511〜518へ入力させるパケットとに分離する機能を有している。
【0010】
符号511〜518は,バッファ手段であるところのバッファであり、端末信号挿入部501〜508から出力されるパケットをスイッチ541の8つの出力端OUT1〜OUT8それぞれに対応した記憶領域、及び任意の出力端に対応した記憶領域に一時記憶する機能を有している。
【0011】
符号571〜578は、端末インタフェース部である。端末インタフェース部571〜578は、端末装置551〜558から出力された信号をネットワークで規定されたパケットのデータサイズに分割し、分割したデータそれぞれに対し宛先ノード番号、宛先チャネル番号、シーケンス番号、コネクション番号を含むヘッダを付加して、端末信号挿入部501〜508へ送る。シーケンス番号は、パケットの順番に応じて付加される。また、端末インタフェース部571〜578は、端末信号分離部561〜568から出力されたパケットを、そのコネクション番号毎にシーケンス番号の順番に並び替えて端末装置551〜558に送る。
【0012】
符号521〜528、531〜538はノード間を接続するための複数のチャネルを並列に設けた並列多重伝送路であり、例えば空間的に分離された複数の光ファイバ伝送路、或いは1本の光ファイバ上に波長分割されて多重化された波長多重伝送路である。この例では、8本の並列多重伝送チャネルを想定しており、521と531をチャネル1、522と532をチャネル2、…、528と538をチャネル8と呼ぶ。
【0013】
符号541はスイッチであり、スイッチ制御部542に制御され、入力端IN1〜IN8に入力したパケットを任意の出力端OUT1〜OUT8へ接続するものである。スイッチ541は、並列多重伝送路に複数の光ファイバ伝送を用いるときには、空間スイッチ等を用いて交換を行う。また、波長多重伝送路を用いる場合には、図とは若干構成が異なるが、複数の可変波長レーザダイオードと合波器からなる送信部を波長多重伝送路へ接続し、波長多重伝送路の受信部で分波器により各波長を分離することで、ノード間でスイッチを構成し、可変波長レーザダイオードの送信波長を波長λ1〜λ8の任意の波長に設定することで、交換を行う。
【0014】
符号542はスイッチ制御部であり、例えば図4に示すようなテーブルの制御パターンに従ってスイッチを制御する。スイッチ制御部542はスイッチ541に対し、図4に示すテーブルのように制御アドレスをA1,A2,A3,A4,A5,A6,A7,A8,A1,A2…と順次供給してスイッチ541の入力と出力との接続関係を変更させる。制御アドレスを変更する周期は1パケット時間(1つのパケットがある地点を通過するのにかかる時間を1パケット時間と呼ぶ)の倍数であれば特に規定されない。尚、この例では、制御アドレスを、例えば1パケット時間周期毎に供給することで、8パケット時間周期で同じパターンを繰り返すように制御しているものとする。
【0015】
更に、スイッチ制御部542は、スイッチの接続状態に応じて、各バッファ511〜518内に一時記憶されているパケットのうち、どのパケットを読み出すべきなのか、という読み出し記憶領域候補情報を各バッファ511〜518に伝える(詳細は後述する)。
【0016】
図8は、端末信号分離部561〜568の内部構成を示す図である。801はパケットのヘッダから宛先ノード(N)を検出するヘッダ検出部、802、803は入力信号を出力、又は遮断するためのゲートである。端末信号分離部561〜568において、並列多重伝送路より入力したパケットはヘッダ検出部801においてヘッダが検出され、そのヘッダの内容によりゲート802と803の開閉の処理を行う。ヘッダ検出部801には予め自ノード装置の番号(自ノード番号と呼ぶ)が記憶されている。
【0017】
ここで、図12を参照しながらヘッダ検出部801におけるパケットの経路を制御する処理について説明する。ヘッダ検出部801は、入力パケットのヘッダを検出し(S1201)、検出したノード番号(N)が記憶している自ノード番号と一致するか否かを判定する(S1202)。ここで、一致した場合はゲート803を開き、且つ、ゲート802を閉じて端末インタフェース部に対してそのパケットを出力する(S1203)。また、入力パケットのヘッダから検出したノード番号(N)が記憶している自ノード番号と一致しない場合は、ゲート802を開き、且つ、ゲート803を閉じて端末信号挿入部501〜508に対してそのパケットを出力する(S1204)。そして、端末信号挿入部501〜508に出力されたパケットは、端末信号挿入部を経由してバッファ511〜518へ送られる。
【0018】
図9は、端末信号挿入部501〜508の内部構成を示す図である。901はパケットのヘッダを検出するヘッダ検出部、904は2つの入力信号のどちらか一方を出力するセレクタ、905はパケットを一時記憶するためのFIFO(First In First Out)である。端末信号挿入部501〜508では、端末装置551〜558から端末インタフェース部571〜578を経由して伝送されてきたパケットをFIFO905に一時記憶する。また同時に、端末信号分離部561〜568からセレクタ904に入力されたパケット流のヘッダをヘッダ検出部901によって検出しており、パケット流にすき間があるときにFIFO905から読み出し、セレクタ904を通ってバッファへ送るように動作する。尚、端末信号挿入部のヘッダ検出部901と端末信号分離部のヘッダ検出部801は兼用することができる。
【0019】
図10は、バッファ部511〜518の内部構成を示す図である。1001は入力されたパケットを一時記憶するためのバッファメモリであり、その内部は、スイッチ541の8つの出力端それぞれに対応したチャネル1出力用記憶領域〜チャネル8出力用記憶領域の8つの記憶領域、及びスイッチ541の特定の出力端を指定しない(任意の出力端を指定する)チャネル無指定記憶領域とから構成される。
【0020】
このようにバッファメモリ1001を構成する目的は、ノード装置500からパケットを出力する際、そのパケットをチャネル1(531)へ出力したい場合はチャネル1出力用記憶領域に記憶し、チャネル2(532)へ出力したい場合はチャネル2出力用記憶領域に記憶し、…、チャネル8(538)へ出力したい場合はチャネル8出力用記憶領域に記憶し、任意のチャネルへ出力したい場合はチャネル無指定記憶領域に記憶するようにするためである。また、これらの記憶領域の区別を「記憶領域の種類」と呼ぶ。
【0021】
従って、9つそれぞれの記憶領域に記憶されるパケットの種類は以下のようになる。まず、チャネル1出力用記憶領域には、スイッチ541によって531に出力されるべきパケット(チャネル1指定パケットと呼ぶ)が一時記憶される。同じく、チャネル2出力用記憶領域には、スイッチ541によって532に出力されるべきパケット(チャネル2指定パケットと呼ぶ)が一時記憶される。以下同様に、チャネル8出力用記憶領域には、スイッチ541によって538に出力されるべきパケット(チャネル8指定パケットと呼ぶ)が一時記憶される。また、スイッチ541によって任意のチャネルに出力してよいパケットをチャネル無指定パケットと呼び、このチャネル無指定パケットは、チャネル無指定記憶領域に一時記憶される。またこれらのパケットの区別を「パケット宛先分類」と呼ぶ。
【0022】
図10に示す1002はパケットのヘッダを検出するヘッダ検出部、1003はバッファメモリ1001にパケットを書き込むための書き込みアドレスを供給する書き込み制御部である。図5に示すバッファ511〜518において、端末信号挿入部501〜508より入力したパケットはヘッダ検出部1002によりヘッダが検出され、ヘッダの内容によりそのパケット宛先分類(チャネル1指定パケット、チャネル2指定パケット、…、チャネル8指定パケット、チャネル無指定パケット)が決定される。
【0023】
ヘッダ検出部1002には、予め隣接する下流ノード装置のノード番号(下流ノード番号と呼ぶ)が記憶されている。ヘッダ検出部1002は以下のように、パケットのヘッダから検出した宛先ノード番号(N)と宛先チャネル番号(T)と、記憶している下流ノード番号とから、そのパケットがスイッチ541によって531〜538のどのチャネルに出力されるべきパケットかを判断(つまり、パケット宛先分類を判断)する。更に、そのパケット宛先分類からそのパケットを一時記憶する記憶領域の種類を決定し、それを書き込み制御部1003に伝える。
【0024】
ここで、図13を参照しながらヘッダ検出部1002におけるパケットの経路を制御する処理について説明する。ヘッダ検出部1002は、入力されたパケットのヘッダを検出し(S1301)、検出した宛先ノード番号(N)が記憶している下流ノード番号と一致するか否かを判断する(S1302)。ここで、一致すれば、スイッチ541から出力されるチャネルとして、検出した宛先チャネル番号(T)と同じ番号のチャネルから出力されるパケット(つまり、チャネルT指定パケット)であると判断し、そのパケットを記憶する記憶領域としてチャネルT出力用記憶領域を選択する(S1303)。但し、本参考例では、Tは1〜8までの何れかである。
【0025】
また、パケットのヘッダから検出した宛先ノード番号(N)が記憶している下流ノード番号と一致しなければ、このパケットがスイッチ541から出力されるチャネルを指定しないパケットであると判定する。つまり、チャネル無指定パケットと判断し、そのパケット記憶する記憶領域としてチャネル無指定記憶領域を選択する(S1304)。
【0026】
このように、パケット宛先分類及びそのパケットを書き込む記憶領域の種類を判断し、その情報を書き込み制御部1003に伝える。この書き込み制御部1003はバッファメモリ1001にパケットを書き込むための書き込みアドレスを供給する書き込み制御部である。また、書きこみ制御部1003はヘッダ検出部1002から送られる記憶領域の種類に基づいてその記憶領域に対してパケットを一時記憶するための書き込みアドレスをバッファメモリ1001に出力し、パケットをその記憶領域に書き込む。また同時に、読み出し記憶領域決定部1005に対して記憶領域毎に書き込んだパケットの数を伝える。
【0027】
このようにして、ヘッダ検出部1002でパケット宛先分類を特定されたパケットは、書き込み制御部1003が出力するアドレスに従って9つの記憶領域のうちから自身のパケット宛先分類に応じた記憶領域に書き込まれる。
【0028】
1005は読み出し記憶領域決定部である。読み出し記憶領域決定部1005は、スイッチ制御部542から送られる読み出し記憶領域候補情報(後述)と、書き込み制御部1003から出力されている記憶領域毎のパケット書き込み数と、読み出し制御部1004から出力されている記憶領域毎のパケット読み出し数とに基づいて、読み出し領域の種類を決定し、それを読み出し制御部1004に伝える。
【0029】
スイッチ制御部542は、その時のスイッチの接続状態に応じて、各バッファ511〜518内に存在する読み出し記憶領域決定部1005に対し、バッファメモリ1001に一時記憶されているパケットのうちどの種類のパケットを読み出すべきなのか、即ち、どの記憶領域からパケットを読み出すべきなのかという読み出し記憶領域候補情報を以下のように伝える。
【0030】
スイッチ制御部542は、各バッファ511〜518内に存在する読み出し記憶領域決定部1005に対し、スイッチ541の接続状態により、そのバッファから出力されるパケットが531に出力できるような場合には、読み出し記憶領域候補情報としてチャネル1出力用記憶領域を指定し、532に出力できるような場合には、読み出し記憶領域候補情報としてチャネル2出力用記憶領域を指定し、…、538に出力できるような場合には、読み出し記憶領域候補情報としてチャネル8出力用記憶領域を指定する。
【0031】
ここで、図11を参照しながら読み出し記憶領域決定部1005における処理について説明する。読み出し記憶領域決定部1005では、スイッチ制御部542から、読み出し記憶領域候補情報を入力し(S1101)、その読み出し記憶領域候補情報で指定された領域に対応する書き込みパケット数と、読み出しパケット数との差からその領域に読み出すべきパケットが存在するか否かを判断する(S1102)。その結果、
1.あるスイッチ接続状態に対し、スイッチ制御部542が指定する読み出し記憶領域候補情報に示された記憶領域に読み出すべきパケットが存在する場合は(S1102のYES)、読み出し制御部1004に対し、読み出し記憶領域の種類として、スイッチ制御部542で指定された記憶領域を通知し(S1103)、
2.あるスイッチ接続状態に対し、スイッチ制御部542が指定する読み出し記憶領域候補情報に示された記憶領域に読み出すべきパケットが存在しないが(S1102のNO)、チャネル無指定記憶領域には読み出すべきパケットが存在する場合には(S1104のYES)、読み出し制御部1004に対し、読み出し領域の種類として、チャネル無指定記憶領域を通知し(S1105)、
3.あるスイッチ接続状態に対し、スイッチ制御部542が指定する読み出し記憶領域候補情報に示された記憶領域に読み出すべきパケットが存在せず(S1102のNO)、チャネル無指定記憶領域にも読み出すべきパケットが存在しない場合には(S1104のNO)、読み出し制御部1004に対し、読み出し記憶領域の種類を通知しない。
【0032】
このように、読み出し領域の種類を決定し、それを読み出し制御部1004に伝える。
【0033】
1004はバッファメモリ1001からパケットを読み出すための読み出しアドレスを供給する読み出し制御部である。読み出し制御部1004は、読み出し記憶領域決定部1005から送られる読み出し記憶領域の種類に基づいて以下の何れかの動作を行う:
a.読み出し記憶領域決定部1005から読み出し記憶領域の種類が通知された場合は(上記1.,2.)、通知された記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ1001に出力し、その記憶領域からパケットを読み出す。また同時に、読み出し記憶領域決定部1005に対して、記憶領域毎に読み出したパケットの数を伝え、
b.読み出し記憶領域決定部1005から読み出し記憶領域が通知されなければ(上記3.)、特に何も行わない。
【0034】
このように、バッファメモリ1001の9つの記憶領域の何れかに一時記憶されたパケットは、スイッチ制御部542からの指示に基づいてスイッチ541の接続状態に応じた記憶領域から読み出される。
【0035】
上述したように、複数の通信路を用いて各通信路に均等にパケットが流れるように分散させながらパケットを送信する通信システムでは、送信側ノード装置から受信側ノード装置へのパケットの伝送途中において、複数の送信路にパケットがランダムに送出され、かつ、途中経由していくノードのバッファの混み具合に従ってパケットが停滞するため、パケットの到着順序がばらばらになり、受信側ノードに到着するパケットの順番は保証されない。
【0036】
このような問題を解決するために、特開2000−151687では、並列多重伝送路と端末装置との間に、571〜578に示される端末インタフェース部を設けている。
【0037】
図14は、端末インタフェース部571〜578の内部構成を示す図である。符号1404はヘッダ変換部であり、端末551〜558から送られた信号を固定長のパケットに分割する。さらに、その分割したパケットに対し、各パケットのヘッダに宛先端末の宛先ノード番号と宛先端末の宛先チャネル番号とその通信を識別するコネクション識別子を記載し、そのコネクション識別子に応じてパケットを振り分け、シーケンス番号付加部1401に出力する。
【0038】
符号1401は、シーケンス番号をパケットの送信順番に対応してパケットのヘッダに付加するシーケンス番号付加部である。シーケンス番号付加部1401は1つの端末が同時に送信できるコネクションの数だけ必要となる。
【0039】
符号1403は到着したパケットからコネクション識別子を分離し、コネクション毎にパケットの出力先を制御するコネクション制御部である。
【0040】
符号1402はコネクション制御部から出力されたある特定のコネクションのパケットをシーケンス番号順に並べ替える機能を持つ並べ替え部である。そして、並べ替え部1402は、1つの端末が同時に使用できるコネクションの数だけ必要となる。ここではパケットの並べ替えの具体的な手順は、本発明と直接関係がないので、その説明は省略する。さらにパケットの順序を並び替えると同時に、ヘッダを除去し、元の信号に戻して端末装置に送り出す。
【0041】
図6は、図5に示すノード装置を用いたネットワークシステムの構成例を示す図である。ここで、4つのノード装置601〜604を並列多重伝送路605〜608によってリング型に接続し、各ノード装置にはそれぞれ8本のサブ伝送路を介して8台の端末装置が接続されている。ここで、端末装置611〜618は端末551〜558に対応し、同様に621〜628、631〜638、641〜648も端末551〜558に対応している。
【0042】
図7は、図6に示すネットワークの通信原理を説明するための図である。図7において、701〜704はノード装置、705〜708はスイッチ541に対応した交換スイッチ、709〜712はバッファ511〜518に対応したバッファ、721〜736は端末、A,B,C,Dはリングを成す並列伝送路である。
【0043】
以下、図7を参照してネットワークの通信原理について説明する。このネットワークは複数のリングA,B,C,Dを有し、各リング間は交換スイッチ705〜708によって相互に接続されている。各端末は並列伝送路A,B,C,Dの中の1つのリング伝送路に接続されており、他のリングに接続された端末と通信を行う場合は、少なくとも1回、任意の交換スイッチで他のリングに交換されることで通信が行われる。尚、交換が行われる位置は特定されないが、宛先ノードの1つ手前のノードで宛先の伝送路へ乗り換え、他のノードでは任意の伝送路へ乗り換えるようにすると通信制御が容易になる。このネットワークはノード装置を簡略化するため、交換スイッチ705〜708は入力信号とは無関係に入出力の接続関係を所定のパターンに従って、かつそのパターンを繰り返して変更し、バッファ709〜712で入力信号を一時蓄積して、交換スイッチの入出力接続関係が所望の関係になったときに、バッファからパケットを読み出すようにして交換が行われる。
【0044】
例えば、端末722から端末732へ通信する場合、端末722から出力されたパケットはノード装置701のバッファ709に蓄積され、スイッチ705の入力端IN2が、例えば出力端OUT2に接続されたときにバッファから読み出されて伝送路Bに出力され、ノード装置702のバッファ710へ入力してスイッチ706のIN2とOUT4が接続されたときにバッファから読み出されることにより、伝送路Dへ出力されて端末732へパケットが送られる。
【0045】
このように、宛先ノード装置の1つ手前のノード装置で宛先の伝送路へ乗り換えて他のノード装置では任意の伝送路へ乗り換えることにより通信が行われる。
【0046】
次に、図5、6を用いて端末616から端末635へコネクション識別子0を用いて通信する場合の動作例について説明する。説明において、並列多重伝送路は空間的に分離された複数の光ファイバ伝送路、スイッチは空間スイッチとして説明するが、波長多重伝送路を用いる場合も上記原理に基づいており、ほぼ同様の動作が行われる。
【0047】
1.端末616からの送信データはサブ伝送路を通ってノード装置601へ入力し、端末インタフェース部576のヘッダ変換部1404において、固定長のパケットに分割される。さらに分割された各パケットのヘッダに宛先ノード番号(N=3)と宛先チャネル番号(T=5)とコネクション識別子(C=0)が記載され、コネクション識別子0に対応したシーケンス番号付加部1401に出力される。シーケンス番号付加部1401では、入力してきた順序に従ってパケットにシーケンス番号を記載し出力する。
【0048】
2.端末インタフェース部576から出力されたパケットは、端末信号挿入部506のFIFO905に一時記憶される。記憶されたパケットは、端末信号分離部566からセレクタ904に入力したパケット流にすき間があるときにFIFO905から読み出され、セレクタ904を通ってバッファ516へ送られる。
【0049】
3.バッファ516のヘッダ検出部1002は、入力されたパケットのヘッダから検出した宛先ノード番号(N=3)が記憶している下流ノード番号(2)と一致しないので、このパケットが特定のチャネルを指定しないパケット(チャネル無指定パケット)であることがわかる。従って書き込み制御部1003に通知する書き込み記憶領域の種類として、チャネル無指定記憶領域を選択する。ヘッダ検出部1002は、書き込み記憶領域としてチャネル無指定記憶領域を書き込み制御部1003に通知する(図13参照)。
【0050】
4.書き込み制御部1003はその情報を受けて、上記で選択したチャネル無指定記憶領域に対する書き込みアドレスを発生させ、そのパケットをバッファメモリ1001のチャネル無指定記憶領域に書き込ませる。同時に、読み出し記憶領域決定部1005に対して、チャネル無指定記憶領域に書き込んだパケットの数(1)を伝える。
【0051】
5.スイッチ制御部542は、図4に示すテーブルのように制御アドレスをA1,A2,A3,A4,A5,A6,A7,A8と順次繰り返し供給することでスイッチ541の接続関係を変更させ、かつ制御アドレスを、例えば1パケット時間周期に供給することで、8パケット時間周期で同じパターンを繰り返すように制御している。従って、バッファ516に通知される読み出し記憶領域候補情報として、1パケット時間毎に、チャネル6出力用記憶領域、チャネル7出力用記憶領域、…、チャネル4出力用記憶領域、チャネル5出力用記憶領域と順次繰り返し指定される。
【0052】
6.バッファ516の読み出し記憶領域決定部1005では、スイッチ制御部542からの読み出し記憶領域候補情報で指定された領域に対応する書き込みパケット数と読み出しパケット数の差から、その領域に読み出すべきパケットが存在するか否かを判断する。今の場合、チャネル1出力用記憶領域〜チャネル8出力用記憶領域の何れの領域でもパケットは存在せず、チャネル無指定記憶領域には読み出すべきパケットが存在するので、読み出し制御部1004に対し、読み出し領域の種類として、チャネル無指定記憶領域を通知する(図11参照)。
【0053】
7.読み出し制御部1004はスイッチ541の入力端IN6(バッファ516と接続している)がどの出力端と接続している時にでも、チャネル無指定記憶領域からそのパケットの読み出しをすることができるが、ここではたまたまスイッチ541の入力端IN6が出力端OUT1に接続されたとき(つまり、図4の制御アドレスA4の時。そのときスイッチ541の接続は、IN6とOUT1が接続される)に、バッファ516の無指定記憶領域からこのパケットを読み出すものとする。更に同時に、読み出し制御部1004は、読み出し記憶領域決定部1005に対し、チャネル無指定記憶領域から読み出したパケットの数(1)を伝える。
【0054】
8.バッファ516のチャネル無指定記憶領域から読み出されたパケットは、スイッチ541を通って伝送路531へ出力される。
【0055】
9.伝送路531を通ってノード装置602の端末信号分離部561に入力したパケットは、ヘッダ検出部801でヘッダが検出される。検出した宛先ノード番号(N=3)は記憶している自ノード番号(2)と一致しないので、ゲート802を開きゲート803を閉じて端末信号挿入部501へそのパケットを出力する。端末信号挿入部501のセレクタ904へ出力されたパケットは、セレクタ904を通りバッファ511へ入力する。
【0056】
10.バッファ511のヘッダ検出部1002は、入力してきたパケットのヘッダから検出した宛先ノード番号(N=3)が記憶している下流ノード番号(3)と一致することと、検出したチャネル番号(T=5)とから、このパケットがチャネル5指定パケットであることがわかる。従って、書き込み制御部1003に通知する書き込み記憶領域の種類としてチャネル5出力用記憶領域を選択し、それを通知する(図13参照)。
【0057】
11.書き込み制御部1003はその情報を受けて、上記で選択したチャネル5出力用記憶領域に対する書き込みアドレスを発生させ、そのパケットをバッファメモリ1001のチャネル5出力用記憶領域に書き込ませる。更に同時に、読み出し記憶領域決定部1005に対して、チャネル5出力用記憶領域に書き込んだパケットの数(1)を伝える。
【0058】
12.スイッチ制御部542は、図4に示すテーブルのように制御アドレスをA1,A2,A3,A4,A5,A6,A7,A8と順次供給してスイッチ541の接続関係を変更させ、かつ制御アドレスを例えば1パケット時間周期に供給することで、8パケット時間周期で同じパターンを繰り返すように制御している。従って、バッファ511に通知される読み出し記憶領域候補情報として、チャネル1出力用記憶領域、チャネル2出力用記憶領域、…、チャネル7出力用記憶領域、チャネル8出力用記憶領域と順次繰り返し指定される。
【0059】
13.バッファ511の読み出し記憶領域決定部1005では、スイッチ制御部542からの読み出し記憶領域候補情報で指定された領域に対応する書き込みパケット数と読み出しパケット数の差から、その領域に読み出すべきパケットが存在するか否かを判断する。スイッチ制御部542から読み出し記憶領域候補情報として、チャネル5出力用記憶領域が指定された時(つまり、図4の制御アドレスA5の時。そのときスイッチ541の接続は、IN1とOUT5が接続される)には、その記憶領域にパケットが存在するので、読み出し制御部1004に読み出し記憶領域としてチャネル5出力用記憶領域を通知する(図11参照)。
【0060】
14.読み出し制御部1004はその情報を受けて、上記で選択したチャネル5出力用記憶領域に対する読み出しアドレスを発生させ、チャネル5出力用記憶領域からパケットを読み出す。更に同時に、読み出し記憶領域決定部1005に対して、チャネル5出力用記憶領域から読み出したパケットの数(1)を伝える。
【0061】
15.バッファ511のチャネル5出力用記憶領域から読み出されたパケットは、スイッチ541を通って伝送路535へ出力される。
【0062】
16.伝送路を通ってノード装置603の端末信号分離部565に入力したパケットは、ヘッダ検出部801でヘッダが検出される。検出した宛先ノード番号(N=3)は記憶している自ノード番号(3)と一致するので、ゲート803を開き、かつ、ゲート802を閉じて端末インタフェース575にそのパケットを出力する。
【0063】
17.端末信号分離部565から端末インタフェース575へ出力されたパケットは、コネクション制御部1403に入力される。コネクション制御部1403では、入力されたパケットのコネクション識別子(0)を抽出し、そのコネクション識別子に応じた並べ替え部1402にパケットを出力する。
【0064】
18.並べ替え部1402では、ランダムに到着したパケットデータをシーケンス番号順に並び替えると同時に、ヘッダを除去し、元の信号に戻して端末635に送り出す。
【0065】
以上のようにして、ネットワークシステムにおけるノード装置を経由して端末間での通信が行われる。
【0066】
【発明が解決しようとする課題】
ここで課題を説明する前に、説明を簡易にするため使用する用語を定義する。ある通信を考えたときに、その通信の送信端末が繋がるノード装置を「送信端末接続ノード装置」と呼び、その通信の受信端末が繋がるノード装置を「受信端末接続ノード装置」と呼ぶことにする。また、送信端末接続ノード装置から受信端末接続ノード装置へパケットが送られるために経由していくノード装置を「経由ノード装置」と呼ぶことにする。そして、経由ノード装置のうち、受信端末接続ノード装置の1つ上流のノード装置を「最終経由ノード装置」と呼ぶことにし、更に経由ノード装置のうち、最終経由ノード装置以外のノード装置を「途中経由ノード装置」と呼ぶことにする。
【0067】
つまり、参考例のネットワークを用いた端末616から端末635へ通信する場合の動作例において、ノード装置601は送信端末接続ノード装置、ノード装置603は受信端末接続ノード装置、ノード装置602は最終経由ノード装置となる。尚、参考例の場合、途中経由ノード装置はない。
【0068】
上述の参考例で示したパケットの交換方法を上記の用語を用いて説明すると、次のように言える。送信端末接続ノード装置からは任意のチャネルでパケットが出力され、途中経由ノード装置からも任意のチャネルでパケットが出力される。最終経由ノード装置からは宛先端末が繋がったチャネルでパケットが出力される。
【0069】
参考例に示す方式の1つの特徴として、送信端末接続ノード装置及び途中経由ノード装置において、任意のチャネルでパケットを出力することにより多重伝送チャネルへのパケットの分散を促し、多重伝送チャネル全体で回線容量を効率的に使用できることが挙げられる。
【0070】
しかしながら、複数の通信路を用いて各通信路に均等にパケットが流れるように分散させながらパケットを送信するという参考例に示した通信システムでは、送信端末接続ノード装置から受信端末接続ノード装置へのパケットの伝送途中において、複数の送信路にパケットがランダムに送出され、かつ、経由ノード装置のバッファの混み具合に従ってパケットが停滞するため、パケットの到着順序がばらばらになり、受信側ノードに到着するパケットの順番が保証されない(パケットの順序が入れ替わるメカニズムは後述する)。
【0071】
そのために、参考例では、端末インタフェース部571〜578にシーケンス番号付加部1401及び並び換え部1402を設けることにより端末装置551〜558に届くパケットの順番を元に(送信端末から出力されたパケットの順番)戻している。
【0072】
よって、参考例には、パケット伝送途中での順序入れ替わりに関して、以下のような問題が発生する。
「問題点1」:順序が入れ替わって到着するパケットの順序を元に戻すために、宛先端末が繋がった端末インタフェース部にパケットを並び替える手段(並び替え手段)が必要となる。
「問題点2」:並び替え手段において、パケットの並び替えを行うために、送信端末が繋がった端末インタフェース部にパケットのヘッダにシーケンス番号を付加する手段(シーケンス番号付加手段)が必要となる。
「問題点3」:上記並び替え手段及びシーケンス番号付加手段は、1つの端末が同時に使用できるコネクションの数だけ必要となるので、ハード的な制限によりコネクション数が限定される可能性が有る。
「問題点4」:パケットのヘッダにシーケンス番号を付加するための領域が必要となる。
【0073】
続いて、パケットの順序が伝送途中で入れ替わるメカニズムについて、図4、図5、図6、図15を用いて説明する。例とする通信は、参考例と同様に、端末616から端末635への通信を考える。
【0074】
説明の簡単のため、端末とノード装置までの伝送容量と、ノード装置間の伝送容量(1チャネル当たり)は同じとする。また、前述のように1つのパケットがある地点を通過するのにかかる時間を1パケット時間と呼ぶことにする。図15においてT0,T1,T2,T3,T4…はそれぞれ1パケット時間で、A4,A5,A6,A7,A8…はそれぞれのパケット時間における図4の制御アドレスを示している。
【0075】
更に、1つのパケットに対するバッファへの書き込み、読み出しにはそれぞれ1パケット時間かかるとする。また、あるノード装置から出力されて次のノード装置に入力され、端末信号分離部及び端末信号挿入部を通過する時間もまとめて1パケット時間とする。また、各ノード装置のスイッチ541の動作は完全に同期しているものとする。
【0076】
参考例では、1個のパケットが端末616から端末635に送られた場合を詳細に述べたが、「パケットの順序が伝送途中で入れ替わる現象」を述べるためには、複数のパケットの振る舞いを述べる必要がある。従って、端末616からの情報を複数(以下の例では4つ)のパケット二分割して送る場合を考える。シーケンス番号を付加された後の連続した複数のパケットを先頭から順にP1,P2,P3,P4と呼ぶことにする。
【0077】
1.端末616からの送信データはサブ伝送路を通ってノード装置601へ入力し、端末インタフェース部576のヘッダ変換部1404において、固定長のパケットに分割される。さらに分割された各パケットのヘッダに宛先端末のノード番号(N=3)と宛先チャネル番号(T=5)とコネクション識別子(C=0)が記載され、コネクション識別子0に対応したシーケンス番号付加部1401に出力される。シーケンス番号付加部1401は、入力してきた順序にしたがってパケットにシーケンス番号1,2,3,4、をそれぞれ記載したパケットP1,P2,P3,P4を順次出力する。
【0078】
2.端末インタフェース部576から送られた連続したパケットP1,P2,P3,P4は、端末信号挿入部506を経由してバッファ516のチャネル無指定記憶領域に一時的に書き込まれる。
【0079】
3.書きこまれたパケットはスイッチ541の入力端IN6(バッファ516と接続している)がどの出力端と接続している時にでも、チャネル無指定記憶領域からそのパケットの読み出しをすることができるが、ここではたまたまスイッチ541の入力端IN6が出力端OUT1に接続されたとき(つまり、図4の制御アドレスA4のときスイッチ541のIN6とOUT1が接続される。その接続状態が維持されている間をT0パケット時間と呼ぶことにする)に、バッファ516の無指定記憶領域から先頭パケットP1を読み出すものとする(図15参照)。
【0080】
4.パケットは連続しているので、次のパケットP2はT1パケット時間(制御アドレスA5)の時に読み出され、更に次のパケットP3はT2パケット時間(制御アドレスA6)の時に読み出される。同様にパケットP4はT3パケット時間(制御アドレスA7)のときに読み出される(図15参照)。
【0081】
5.従って、ノード装置601から出力されるパケットは、P1が531から出力され、その1パケット時間後にP2が532から出力され、更にその1パケット時間後にP3が533から出力される。同様にパケットP4は更に1パケット時間後に534から出力される。
【0082】
6.ノード装置601から出力されたパケットはそれぞれの伝送チャネルを通り、ノード装置602に入力される。更に、それぞれの伝送チャネルにある端末信号分離部と端末信号挿入部を通過して(その間に1パケット時間かかるとしている)、それぞれの伝送チャネルにあるバッファのチャネル5出力用記憶領域に一時的に書き込まれる。つまり、P1はバッファ511のチャネル5出力用記憶領域にT2パケット時間に書きこまれ、P2はバッファ512のチャネル5出力用記憶領域にT3パケット時間に書きこまれ、P3はバッファ513のチャネル5出力用記憶領域にT4パケット時間に書き込まれ、P4はバッファ514のチャネル5出力用記憶領域にT5パケット時間に書き込まれる(図15参照)。
【0083】
7.この場合、読み出しが可能(書き込み終了直後から読み出し可能)になるのは、パケットP1ではT3パケット時間(制御アドレスA7)のとき、パケットP2ではT4パケット時間(制御アドレスA8)のとき、パケットP3ではT5パケット時間(制御アドレスA1)のとき、パケットP4ではT6パケット時間(制御アドレスA2)のときとなる。
【0084】
8.しかしながら、T3パケット時間(制御アドレスA7:スイッチ541の接続は、IN1とOUT7、IN7とOUT5が接続される)の時にはパケットP1はチャネル5出力用記憶領域に記憶されているので読み出すことはできない。
【0085】
9.同様に、T4パケット時間(制御アドレスA8:スイッチ541の接続は、IN2とOUT1、IN6とOUT5が接続される)の時にはパケットP2はチャネル5出力用記憶領域に記憶されているので読み出すことはできない。
【0086】
10.また同様に、T5パケット時間(制御アドレスA1:スイッチ541の接続は、IN3とOUT3、IN5とOUT5が接続される)の時にはパケットP3はチャネル5出力用記憶領域に記憶されているので読み出すことはできない。
【0087】
11.T6パケット時間(制御アドレスA2:スイッチ541の接続は、IN4とOUT5が接続される)の時にはパケットP4はチャネル5出力用記憶領域に記憶されているので読み出される(図15参照)。
【0088】
12.T7パケット時間(制御アドレスA3:スイッチ541の接続は、IN3とOUT5が接続される)の時にはパケットP3はチャネル5出力用記憶領域に記憶されているので読み出される(図15参照)。
【0089】
13.T8パケット時間(制御アドレスA4:スイッチ541の接続は、IN2とOUT5が接続される)の時にはパケットP2はチャネル5出力用記憶領域に記憶されているので読み出される(図15参照)。
【0090】
14.T9パケット時間(制御アドレスA5:スイッチ541の接続は、IN1とOUT5が接続される)の時にはパケットP1はチャネル5出力用記憶領域に記憶されているので読み出される(図15参照)。
【0091】
15.従って、ノード装置602から出力されるパケットは、T7パケット時間にP4が、T8パケット時間にP3が、T9パケット時間にP2が、T10パケット時間にP1が、それぞれ535から出力されることになる(図15参照)。
【0092】
16.つまり、ノード装置602において、パケットの順序の入れ替わりが起き、入れ替わった順序の状態(P4,P3,P2,P1)でノード装置603に入力され、端末信号分離部565で分離され、端末インタフェース部575に入力される。
【0093】
17.端末インタフェース部575に入力されたパケットは、そのヘッダに記されたシーケンス番号に従って順序を元に戻され(P1,P2,P3,P4)、ヘッダを除去して元の信号に組立られて、端末635に送られる。
【0094】
本発明は、上記課題を解決するためになされたもので、パケット伝送途中での順序入れ替わりを防止することを目的とする。
【0095】
また、パケットの並び替えに伴うコネクション数のハード的な制限をなくすることを目的とする。
【0096】
【課題を解決するための手段】
上記目的を達成するために、本発明は、複数の端末装置を接続するための複数のノード装置を並列な複数のチャネルでリング状に接続した通信ネットワークであって、伝送するパケットの宛先端末に応じて分類されたパケットを所定の記憶領域に書き込み、当該書き込み順序を示す情報を管理する管理手段と、前記書き込み順序を示す情報に従って前記所定の記憶領域から前記パケットを読み出すように制御する読み出し制御手段とを有し、前記分類されたパケットを所定の記憶領域に書き込む順序と読み出す順序とを一致させることを特徴とする。
【0097】
また、上記目的を達成するために、本発明は、並列な複数のチャネルを有するリング状の通信ネットワークに接続され、複数の端末装置を該通信ネットワークに接続するためのノード装置であって、伝送するパケットの宛先端末に応じて分類されたパケットを所定の記憶領域に書き込み、当該書き込み順序を示す情報を管理する管理手段と、前記書き込み順序を示す情報に従って前記所定の記憶領域から前記パケットを読み出すように制御する読み出し制御手段と、読み出したパケットを前記並列な複数のチャネル間で伝送するチャネルを切り替えて出力する切替手段と、前記宛先端末に出力すべきパケットを前記複数のチャネルの何れかに接続された前記宛先端末としての端末装置へ分離する分離手段と、前記複数の端末装置から伝送されてくるパケットを前記複数のチャネルの何れかに挿入する挿入手段とを有することを特徴とする。
【0098】
また、上記目的を達成するために、本発明は、複数の端末装置を接続するための複数のノード装置を並列な複数のチャネルでリング状に接続した通信ネットワークの制御方法であって、伝送するパケットの宛先端末に応じて分類されたパケットを所定の記憶領域に書き込み、当該書き込み順序を示す情報を管理する管理工程と、前記書き込み順序を示す情報に従って前記所定の記憶領域から前記パケットを読み出すように制御する読み出し制御工程とを有し、前記分類されたパケットを所定の記憶領域に書き込む順序と読み出す順序とを一致させることを特徴とする。
【0099】
また、上記目的を達成するために、本発明は、並列な複数のチャネルを有するリング状の通信ネットワークに接続され、複数の端末装置を該通信ネットワークに接続するためのノード装置の制御方法であって、伝送するパケットの宛先端末に応じて分類されたパケットを所定の記憶領域に書き込み、当該書き込み順序を示す情報を管理する管理工程と、前記書き込み順序を示す情報に従って前記所定の記憶領域から前記パケットを読み出すように制御する読み出し制御工程と、読み出したパケットを前記並列な複数のチャネル間で伝送するチャネルを切り替えて出力する切替工程と、前記宛先端末に出力すべきパケットを前記複数のチャネルの何れかに接続された前記宛先端末としての端末装置へ分離する分離工程と、前記複数の端末装置から伝送されてくるパケットを前記複数のチャネルの何れかに挿入する挿入工程とを有することを特徴とする。
【0100】
【発明の実施の形態】
以下、図面を参照しながら本発明に係る実施の形態を詳細に説明する。
【0101】
本実施形態では、図16に示すパケットと図2に示すノード装置を用いた通信を行う場合について説明する。
【0102】
図16は、本実施形態におけるネットワークに用いるパケットの構成を示す図である。パケットはヘッダとデータとから構成される。ヘッダには送信データの宛先情報が格納され、データには送信データが格納される。また、図16に示されている通り、ヘッダは以下のように構成される。
【0103】
まず、Nは宛先ノード番号であり、例えば本実施形態のネットワークにノード装置が32台接続するならばノード番号1〜32を示す5ビットで構成される。また、それぞれのノード装置には1〜32のうち異なる番号がノード番号として与えられる。Nには宛先端末が接続されたノード装置のノード番号(宛先ノード番号)が格納される。
【0104】
次に、Tは伝送チャネル番号であり、例えば本実施形態のネットワークで並列多重伝送路の伝送チャネル数(多重数)を8個とするならば1〜8を示す3ビットで構成される。それぞれの伝送チャネルには1〜8のうち異なる番号が伝送チャネル番号として与えられる。Tには宛先端末が接続された伝送チャネル番号(宛先チャネル番号)が格納される。
【0105】
その他には、同期信号、誤り訂正符号、コネクションを識別するコネクション識別子などが、必要に応じて挿入される。ネットワーク内の各端末は、その端末が接続しているノード装置のノード番号と、その端末が接続している伝送チャネル番号とにより個々に識別される。
【0106】
図2は、本実施形態におけるネットワークに用いるノード装置200の構成を示す図である。但し、参考例で示した図5のノード装置と、本実施形態の図2のノード装置において、端末信号挿入部501〜508、端末信号分離部561〜568、並列多重伝送路521〜528、531〜538、端末装置551〜558、スイッチ541は、同じ動作を行うので同じ番号で示し、ここではそれらの説明を割愛する。
【0107】
図3は、本実施形態におけるバッファ手段211〜218の内部構成を示す図である。301は入力してくるパケットを一時記憶するためのバッファメモリである。その内部は、参考例の1001と同じようにスイッチ541の8つの出力端それぞれに対応したチャネル1出力用記憶領域〜チャネル8出力用記憶領域の8つの記憶領域、及びスイッチ541の特定の出力端を指定しない(任意の出力端を指定する)チャネル無指定記憶領域とから構成される。
【0108】
参考例と同様に、このようにバッファメモリ301を構成する目的は、ノード装置200からパケットを出力する際、チャネル1(531)へ出力したい場合はそのパケットをチャネル1出力用記憶領域に記憶し、チャネル2(532)へ出力したい場合はそのパケットをチャネル2出力用記憶領域に記憶し、…、チャネル8(538)へ出力したい場合はそのパケットをチャネル8出力用記憶領域に記憶し、任意のチャネルへ出力したい場合はそのパケットをチャネル無指定記憶領域に記憶するようにするためである。また、これらの記憶領域の区別を「記憶領域の種類」と呼ぶ。
【0109】
従って、9つそれぞれの記憶領域に記憶されるパケットの種類は、次のようになる。チャネル1出力用記憶領域には、スイッチ541によって531に出力されるべきパケット(チャネル1指定パケットと呼ぶ)が一時記憶される。同じく、チャネル2出力用記憶領域には、スイッチ541によって532に出力されるべきパケット(チャネル2指定パケットと呼ぶ)が一時記憶される。以下同様に、チャネル8出力用記憶領域には、スイッチ541によって538に出力されるべきパケット(チャネル8指定パケットと呼ぶ)が一時記憶される。また、スイッチ541によって任意のチャネルに出力してよいパケットを「チャネル無指定パケット」と呼び、このチャネル無指定パケットは、チャネル無指定記憶領域に一時記憶される。またこれらのパケットの区別を「パケット宛先分類」と呼ぶ。
【0110】
但し、本実施形態では、チャネル無指定記憶領域に書き込まれるチャネル無指定パケットは、バッファメモリ301において滞留することなく、バッファメモリ301に書きこまれた次の読み出しタイミング情報の時に直ちに読み出される(詳細は後述)ので、チャネル無指定記憶領域の大きさは、他の記憶領域に比べて小さく割り当てることが可能である。例えば、1パケット分の領域を割り当てれば十分である。更に、パケットがバッファメモリ301に書き込まれるタイミングに、スイッチ制御部242から送られる読み出しタイミング情報を合わせるならば、チャネル無指定記憶領域を割り当てる必要もなくなる。その場合には、ヘッダ検出されたチャネル無指定パケットは、そのままスイッチ541に出力される。
【0111】
バッファ211〜218において、端末信号挿入部501〜508より入力したパケットはヘッダ検出部302においてヘッダが検出され、ヘッダの内容によりそのパケット宛先分類(チャネル1指定パケット、チャネル2指定パケット、…、チャネル8指定パケット、チャネル無指定パケット)が決定される。
【0112】
302は入力されたパケットのヘッダを検出するヘッダ検出部である。ヘッダ検出部302には、予め隣接する下流ノード装置のノード番号(下流ノード番号と呼ぶ)と、自バッファが繋がっている伝送チャネル番号(自チャネル番号と呼ぶ)とが記憶されている。ヘッダ検出部302は次のように、パケットのヘッダから検出した宛先ノード番号(N)及び伝送チャネル番号(T)と、記憶している下流ノード番号及び自チャネル番号とから、そのパケットがスイッチ541によって531〜538のどのチャネルに出力されるべきパケットかを判断(パケット宛先分類を判断)し、それを書き込み制御部303、及びスイッチ制御部242に伝える。
【0113】
まず、ヘッダ検出部302は、パケットのヘッダから検出(S2001)した宛先ノード番号(N)が記憶している下流ノード番号と一致すれば(S2002のYES)、スイッチ541から出力されるチャネルとして、検出した伝送チャネル番号(T)と同じ番号のチャネルから出力されるパケット(つまり、チャネルT指定パケット)であると判断し、そのパケット記憶する記憶領域としてチャネルT出力用記憶領域を選択し(但し、本実施形態ではTは1〜8までの何れかである)、書き込み制御部303に伝える(S2003)。更に、スイッチ制御部242に対して、パケット宛先分類情報としてチャネルT指定パケット、チャネル情報として自チャネル番号を伝える(S2004)。
【0114】
また、パケットのヘッダから検出した宛先ノード番号(N)が記憶している下流ノード番号とは一致しない場合には(S2002のNO)、このパケットが、スイッチ541から出力されるチャネルを指定しないパケットであると判断する。つまり、チャネル無指定パケットと判断し、そのパケット記憶する記憶領域としてチャネル無指定記憶領域を選択し、書き込み制御部303に伝える(S2005)。スイッチ制御部242に対しては何も行わない。
【0115】
このように、パケット宛先分類及びそのパケットを書き込む記憶領域の種類を判断し、その情報を書き込み制御部303及びスイッチ制御部242に伝える。
【0116】
303はバッファメモリ301にパケットを書き込むための書き込みアドレスを供給する書き込み制御部である。書き込み制御部303は、ヘッダ検出部302から送られる記憶領域の種類に基づいてその記憶領域に対してパケットを一時記憶するための書き込みアドレスをバッファメモリ301に出力し、パケットをその記憶領域に書き込む。更に、ヘッダ検出部302から送られてくる記憶領域の種類がチャネル無指定記憶領域である場合には、上記に加えて、読み出し記憶領域決定部305にある無指定パケット有無管理ビットを1にセットする。
【0117】
このようにして、ヘッダ検出部302でパケット宛先分類を特定されたパケットは、書き込み制御部303が出力するアドレスに従って9つの記憶領域のうちから、自身のパケットの種類に応じた記憶領域に書きこまれる。
【0118】
304はバッファメモリ301からパケットを読み出すための読み出しアドレスを供給する読み出し制御部である。読み出し制御部304は、読み出し記憶領域決定部305から送られる読み出し記憶領域の種類に基づいて、その記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ301に出力し、その記憶領域からパケットを読み出す。更に、読み出し記憶領域決定部305から送られてくる記憶領域の種類がチャネル無指定記憶領域である場合には、上記に加えて、読み出し記憶領域決定部305にある無指定パケット有無管理ビットを0にクリアする。
【0119】
305は、読み出し記憶領域決定部である。読み出し記憶領域決定部305は、以下に示すように、スイッチ制御部242から読み出しタイミング情報が送られてくる毎に、スイッチ制御部242から送られる読み出し記憶領域指示情報(後述)と、無指定パケット有無管理ビットとにより、読み出し領域の種類を決定し、それを読み出し制御部304に伝える。
【0120】
図21において、スイッチ制御部242から読み出しタイミング情報が送られてきたとき(S2101)、無指定パケット有無管理ビットが1になっていれば(S2102のYES)、読み出し記憶領域の種類として、チャネル無指定記憶領域を通知する(S2103)。更に、キュー順送り指示情報として状態維持指示をスイッチ制御部242へ出す(S2104)。
【0121】
また、スイッチ制御部242から読み出しタイミング情報が送られてきたとき(S2101)、無指定パケット有無管理ビットが0で(S2102のNO)、スイッチ制御部242から出力された読み出し記憶領域指示情報に読み出し禁止が示されていれば(S2105のYES)、読み出し制御部304に対し、読み出しを通知することなく、キュー順送り指示情報として状態維持指示をスイッチ制御部242へ出す(S2106)。
【0122】
また、スイッチ制御部242から読み出しタイミング情報が送られてきたとき(S2101)、無指定パケット有無管理ビットが0で(S2102のNO)、スイッチ制御部242から出力された読み出し記憶領域指示情報に読み出し禁止が示されていなければ(S2105のNO)、読み出し制御部304に対し、読み出し記憶領域の種類として、スイッチ制御部242から出力された読み出し記憶領域指示情報に示された記憶領域を通知する(S2107)。更に、キュー順送り指示情報として順送り指示をスイッチ制御部242へ出す(S2108)。
【0123】
上述したように、読み出し領域の種類を決定し、読み出し制御部304に出力し、またキュー順送り指示情報をスイッチ制御部242へ出力する。尚、無指定パケット有無管理ビットの初期値は0である。従って、バッファ211〜218にチャネル無指定パケットが入力された場合には、スイッチ541の接続状態に関わらず、チャネル1〜8指定パケットに優先して出力されることになる。
【0124】
このように、読み出し領域の種類を決定することで、読み出し記憶領域決定部305は、読み出しタイミング情報が送られてきたなら、そのときのスイッチ541の接続状態に関わらず、かつチャネル指定パケットがチャネル1〜8出力用記憶領域に存在か否かに関わらず、読み出し記憶領域としてチャネル無指定記憶領域を指定できる。従って、チャネル無指定記憶領域に書き込まれるチャネル無指定パケットはバッファメモリ301において滞留することなく、書き込み制御部303によってバッファメモリ301に書き込まれた次の読み出しタイミング情報の時に読み出される。
【0125】
符号242はスイッチ制御部であり、例えば図4に示すテーブルの制御パターンに従ってスイッチを制御する。スイッチ制御部242はスイッチ541に対し、図4に示すテーブルのように制御アドレスをA1,A2,A3,A4,A5,A6,A7,A8,A1,A2…と順次供給してスイッチ541の入力と出力との接続関係を変更させる。制御アドレスを変更する周期は1パケット時間(1つのパケットがある地点を通過するのにかかる時間を1パケット時間と呼ぶ)の倍数であれば特に規定されない。ここでは制御アドレスを、例えば1パケット時間周期に供給することで、8パケット時間周期で同じパターンを繰り返すように制御しているものとする。
【0126】
更に、スイッチ制御部242は、スイッチの接続状態並びスイッチ制御部242内部で管理している情報に基づいて各バッファ211〜218内に一時記憶されているパケットのうちどのパケットを読み出すべきなのか、という読み出し記憶領域指示情報を各バッファ211〜218に伝える(詳細は後述する)。
【0127】
図1は、本実施形態におけるスイッチ制御部242の内部構成を示す図である。図1に示すように、スイッチ制御部242は、パケット読み出し候補チャネル設定部141、読み出しキュー管理部142、読み出し指示情報セレクタ143、パケット宛先情報セレクタ144、制御アドレス生成部145、及びチャネル1〜8指定パケット順序維持部から構成される。また、チャネル1〜8指定パケット順序維持部は、読み出し順序キュー101〜108と比較器131〜138から構成される。
【0128】
符号145は制御アドレス生成部である。この制御アドレス生成部145は、スイッチ541、パケット読み出し候補チャネル設定部141、読み出しキュー管理部142、読み出し指示情報セレクタ143に対し、図4に示すテーブルのように制御アドレスをA1,A2,…と1パケット時間毎に順次供給する。また、その変更のタイミングに応じて読み出しタイミング情報を1パケット時間毎にバッファ211〜218へ出力する。スイッチ541は、送られてくる制御アドレスに従って入力と出力との接続関係を変更する。
【0129】
符号141はパケット読み出し候補チャネル設定部である。このパケット読み出し候補チャネル設定部141は、制御アドレス生成部145から送られる制御アドレスに従って図19に示す表のように動作する。
【0130】
図19に示す表は、図4に示した表を書き換えたものである。図4に示した表はスイッチ541の入力側のチャネルを中心に、制御アドレスに応じてそれぞれの入力チャネルがどの出力チャネルと接続するかを示したものであるが、図19に示す表では逆に出力側のチャネルを中心に、制御アドレスに応じてそれぞれの出力チャネルがどの入力チャネルと接続するかを示したものである。
【0131】
前述したように、チャネル1指定パケットとは、スイッチ541を通過した後チャネル1(531)に出力されるべきパケットのことである。従って、ある制御アドレスのときに、出力チャネル1(531)と接続している入力チャネルに繋がったバッファが、そのときのチャネル1指定パケットを読み出す候補のチャネルになる。チャネル2〜8指定パケットに関しても同様である。
【0132】
パケット読み出し候補チャネル設定部141は、図19に示す表に従って次のように動作する。
【0133】
1.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT1がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル1指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル1指定パケット順序維持部にチャネル1を出力する(制御アドレスA1のときには、スイッチ541のOUT1とIN1が繋がっているため。図19参照)。
【0134】
2.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT2がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル2指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル2指定パケット順序維持部にチャネル2を出力する。
【0135】
3.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT3がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル3指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル3指定パケット順序維持部にチャネル3を出力する。
【0136】
4.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT4がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル4指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル4指定パケット順序維持部にチャネル4を出力する。
【0137】
5.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT5がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル5指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル5指定パケット順序維持部にチャネル5を出力する。
【0138】
6.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT6がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル6指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル6指定パケット順序維持部にチャネル6を出力する。
【0139】
7.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT7がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル7指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル7指定パケット順序維持部にチャネル7を出力する。
【0140】
8.パケット読み出し候補チャネル設定部141は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT8がどの入力チャネルと繋がっているのかを知り、その入力チャネルをチャネル8指定パケット順序維持部に出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル8指定パケット順序維持部にチャネル8を出力する。
【0141】
符号142は読み出しキュー管理部である。この読み出しキュー管理部142は、制御アドレス生成部145から送られる制御アドレスに従って図4のように動作する。
【0142】
前述したように、チャネル1指定パケットとは、スイッチ541を通過した後、チャネル1(531)に出力されるべきパケットのことである。従って、ある制御アドレスのときに出力チャネル1(531)からチャネル1指定パケットが出力されたとすると、そのチャネル1指定パケットは、そのときの制御アドレスによって出力チャネル1と接続されている入力チャネルにあるバッファから読み出されたものである。チャネル2〜8指定パケットに関しても同様である。
【0143】
読み出しキュー管理部142は、図4の表に従って次のように動作する。
【0144】
1.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ211がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ211から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル1指定パケット順序維持部にバッファ211からのキュー順送り指示情報を出力する(制御アドレスA1の時には、スイッチ541のOUT1とIN1が繋がっているため。図4参照)。
【0145】
2.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ212がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ212から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル2指定パケット順序維持部にバッファ212からのキュー順送り指示情報を出力する。
【0146】
3.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ213がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ213から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル3指定パケット順序維持部にバッファ213からのキュー順送り指示情報を出力する。
【0147】
4.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ214がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ214から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル4指定パケット順序維持部にバッファ214からのキュー順送り指示情報を出力する。
【0148】
5.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ215がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ215から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル5指定パケット順序維持部にバッファ215からのキュー順送り指示情報を出力する。
【0149】
6.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ216がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ216から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル6指定パケット順序維持部にバッファ216からのキュー順送り指示情報を出力する。
【0150】
7.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ217がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ217から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル7指定パケット順序維持部にバッファ217からのキュー順送り指示情報を出力する。
【0151】
8.読み出しキュー管理部142は、図4を参照し、入力された制御アドレスで、バッファ218がスイッチ541のどの出力チャネルと繋がっているのかを知り、その出力チャネルに応じたチャネル指定パケット順序維持部に、バッファ218から送られてきたキュー順送り指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル8指定パケット順序維持部にバッファ218からのキュー順送り指示情報を出力する。
【0152】
符号143は読み出し指示情報セレクタである。読み出し指示情報セレクタ143は、制御アドレス生成部145から送られる制御アドレスに従って図19のように動作する。
【0153】
前述したように、チャネル1指定パケットとは、スイッチ541を通過した後、チャネル1(531)に出力されるべきパケットのことである。従って、ある制御アドレスの時に出力チャネル1(531)が繋がっている入力チャネルにあるバッファが、そのときのチャネル1指定パケットを読み出す候補のチャネルになる。チャネル2〜8指定パケットに関しても同様である。
【0154】
読み出し指示情報セレクタ143は、図19の表に従って次のように動作する。
【0155】
1.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT1がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル1指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル1指定パケット順序維持部はバッファ211に読み出し記憶領域指示情報を出力する(制御アドレスA1のときには、スイッチ541のOUT1とIN1が繋がっているため。図19参照)。
【0156】
2.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT2がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル2指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル2指定パケット順序維持部はバッファ212に読み出し記憶領域指示情報を出力する。
【0157】
3.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT3がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル3指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル3指定パケット順序維持部はバッファ213に読み出し記憶領域指示情報を出力する。
【0158】
4.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT4がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル4指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル4指定パケット順序維持部はバッファ214に読み出し記憶領域指示情報を出力する。
【0159】
5.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT5がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル5指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル5指定パケット順序維持部はバッファ215に読み出し記憶領域指示情報を出力する。
【0160】
6.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT6がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル6指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル6指定パケット順序維持部はバッファ216に読み出し記憶領域指示情報を出力する。
【0161】
7.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT7がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル7指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル7指定パケット順序維持部はバッファ217に読み出し記憶領域指示情報を出力する。
【0162】
8.読み出し指示情報セレクタ143は、図19を参照し、入力された制御アドレスで、スイッチ541のOUT8がどの入力チャネルと繋がっているのかを知り、その入力チャネルに繋がっているバッファに、チャネル8指定パケット順序維持部から送られてきた読み出し記憶領域指示情報を出力する。例えば、制御アドレス生成部145が制御アドレスA1を出力しているときには、チャネル8指定パケット順序維持部はバッファ218に読み出し記憶領域指示情報を出力する。
【0163】
符号144はパケット宛先情報セレクタである。パケット宛先情報セレクタ144は、バッファ211〜218から送られてくるパケット宛先分類情報とチャネル情報を次のように処理する。
【0164】
パケット宛先情報セレクタ144は、送られてきたパケット宛先分類情報に対応したチャネル指定パケット順序維持部に、そのパケット宛先分類情報と一緒に送られてきたチャネル情報を出力する。つまり、パケット宛先分類情報として、チャネル1指定パケットが送られてきた場合に、その情報と一緒に送られてきたチャネル情報は、チャネル1指定パケット順序維持部に出力する。パケット宛先分類情報として、チャネル2〜8指定パケットが送られてきた場合には、その情報と一緒に送られてきたチャネル情報は、それぞれチャネル2〜8指定パケット順序維持部に出力される。
【0165】
この場合、複数のバッファから同時に同一のパケット宛先分類情報が送られてくる場合(つまり、複数のバッファに同時に同一のパケット宛先分類に属するパケットが入力された場合)があり、その場合には、同一のチャネル指定パケット順序維持部に同時に複数のチャネル情報が出力されることになる。
【0166】
続いて、チャネル1〜8指定パケット順序維持部について説明する。チャネル1〜8指定パケット順序維持部の内部構成は、全て同じであるので、その動作はチャネル1指定パケット順序維持部を代表として用いて説明する。
【0167】
符号101は読み出し順序キューである。この読み出し順序キュー101は、パケット宛先情報セレクタ144から送られてきたチャネル情報を送られてきた順に記憶し、送られてきた順に出力する機能(FIFOとしての機能)を持つ。最初に入力されたチャネル情報は、先頭出力として比較器131に出力される。読み出し順序キュー101の初期状態は空である。
【0168】
パケット宛先情報セレクタ144の説明で述べたように、パケット宛先情報セレクタ144から同一のチャネル指定パケット順序維持部に同時に複数のチャネル情報が出力される場合がある。その場合には、その複数のチャネル情報を、読み出し順序キューで保持する順序は問わない。例えば、同時に複数のチャネル情報が入力された場合には、チャネル情報の小さいものを先に記憶するという制御でも良い。
【0169】
また、読み出しキュー管理部142からキュー順送り指示情報として、順送り指示が送られてきた場合には、そのとき先頭出力となっているチャネル情報を廃棄して、次のチャネル情報を先頭出力とし、送られてきた順に保持しているチャネル情報を1つ順送りする。また、読み出しキュー管理部142からキュー順送り指示情報として、状態維持指示が送られてきた場合には、先頭出力は変化させず、順送りは行わない。
【0170】
符号131は比較器である。比較器131は、パケット読み出し候補チャネル設定部141から出力されているチャネル番号と、読み出し順序キュー101の先頭出力として出力されているチャネル番号とを比較し、その結果に応じて読み出し指示情報セレクタ143へ読み出し記憶領域指示情報を出力する。比較器131は、その両チャネル番号が一致した場合には、読み出し記憶領域指示情報として、チャネル1出力用記憶領域を出力し、その両チャネル番号が一致しない場合には、読み出し記憶領域指示情報として、読み出し禁止を出力する。
【0171】
チャネル2〜8指定パケット順序維持部の内部構成は、チャネル1指定パケット順序維持部と同様であるので、その動作は省略する。但し、比較器132〜138において、それぞれに入力している両チャネル番号が一致した場合には、読み出し記憶領域指示情報として、それぞれチャネル2〜8出力用記憶領域を出力する。
【0172】
本実施形態は、複数の通信路を用い各通信路に均等にパケットが流れるように分散させながらパケットを送信する通信システムである。しかしながら、従来の参考例とは異なり、送信側ノード装置から受信側ノード装置へのパケットの伝送途中において、パケットの到着順序は維持される。
【0173】
従って、本実施形態では、参考例のようなパケットの並び替えを主目的とした端末インタフェース部は必要ない。
【0174】
次に、本実施形態における通信の手順を、図1、図2、図3、図6を用いて詳細に説明する。図6は、図2に示したノード装置を用いたネットワークシステムの構成例である。この例では、4つのノード装置601〜604を並列多重伝送路605〜608によってリング型に接続し、各ノード装置にはそれぞれ8本のサブ伝送路を介して8台の端末装置が接続されている。端末装置611〜618は端末551〜558に対応し、同様に621〜628、631〜638、641〜648も端末551〜558に対応している。例えば、端末616から端末635へ通信する場合の動作例について説明する。
【0175】
1.端末616からの送信データは固定長のパケットに分割され、各パケットのヘッダに宛先ノード番号(N=3)と宛先チャネル番号(T=5)を記載して出力される。出力されたパケットはサブ伝送路を通ってノード装置601へ入力する。
【0176】
2.ノード装置601に入力したパケットは、端末信号挿入部506のFIFO905に一時記憶される。記憶されたパケットは、端末信号分離部566からセレクタ904に入力したパケット流にすき間があるときにFIFO905から読み出され、セレクタ904を通ってバッファ216へ送られる。
【0177】
3.バッファ216のヘッダ検出部302は、入力してきたパケットのヘッダから検出した宛先ノード番号(N=3)が記憶している下流ノード番号(2)と一致しないので、このパケットが特定のチャネルを指定しないパケット(チャネル無指定パケット)であることがわかる。従って、書き込み制御部303に通知する書き込み記憶領域の種類として、チャネル無指定記憶領域を選択する。ヘッダ検出部302は、書き込み記憶領域としてチャネル無指定記憶領域を書き込み制御部303に通知する(図20参照)。スイッチ制御部242へのパケット宛先分類情報等の伝達は行わない。
【0178】
4.書き込み制御部303はその情報を受けて、上記で選択したチャネル無指定記憶領域に対する書き込みアドレスを発生させ、そのパケットをバッファメモリ301のチャネル無指定記憶領域に書き込ませる。更に同時に、読み出し記憶領域決定部305の無指定パケット有無管理ビットを1にセットする。
【0179】
5.スイッチ制御部242の制御アドレス生成部145は、図4に示すテーブルのように制御アドレスをA1,A2,A3,A4,A5,A6,A7,A8と順次供給してスイッチ541の接続関係を変更させ、かつ制御アドレスを、例えば1パケット時間周期に供給することで、8パケット時間周期で同じパターンを繰り返すように制御している。
【0180】
6.スイッチ制御部242のパケット読み出し候補チャネル設定部141は、制御アドレス生成部145が生成する制御アドレスA1,A2,A3,…並びに図19に従って、チャネル1指定パケット順序維持部にはスイッチ541のOUT1と接続しているスイッチ入力チャネルを出力し、チャネル2指定パケット順序維持部にはスイッチ541のOUT2と接続しているスイッチ入力チャネルを出力し、…、チャネル8指定パケット順序維持部にはスイッチ541のOUT8と接続しているスイッチ入力チャネルを出力する。
【0181】
7.スイッチ制御部242のパケット宛先情報セレクタ144は、バッファ211〜218から送られてくるパケット宛先分類情報に従って、一緒に送られてくるチャネル情報を、チャネル1〜8指定パケット順序維持部に振り分ける。しかしながら、現在バッファ216で処理されているパケットは、チャネル無指定パケットであるので、パケット宛先分類情報は送られて来ない。従って、読み出し順序キュー101〜108には何も保持されていない(初期状態のまま)。
【0182】
8.読み出し順序キュー101〜108には何も保持されていないので、比較器131〜138は読み出し記憶領域指示情報として、読み出し禁止を出力する。
【0183】
9.読み出し指示情報セレクタ143は、制御アドレス生成部145が生成する制御アドレスA1,A2,A3,…並びに図19に従って、チャネル1指定パケット順序維持部からの読み出し記憶領域指示情報をスイッチ541のOUT1と接続しているバッファに出力し、チャネル2指定パケット順序維持部からの読み出し記憶領域指示情報をスイッチ541のOUT2と接続しているバッファに出力し、…、チャネル8指定パケット順序維持部からの読み出し記憶領域指示情報をスイッチ541のOUT8と接続しているバッファに出力する。チャネル1〜8指定パケット順序維持部からの読み出し記憶領域指示情報は全て読み出し禁止であるので、バッファ211〜218に出力される読み出し記憶領域指示情報も全て読み出し禁止となる。
【0184】
10.バッファ216の読み出し記憶領域決定部305では、スイッチ制御部242から読み出しタイミング情報が来たときに、スイッチ制御部242からの読み出し記憶領域指示情報と、無指定パケット有無管理ビットとから、次にパケットを読み出す領域を判断する。今の場合、無指定パケット有無管理ビットが1なので、読み出し制御部304に対し、読み出し領域の種類として、チャネル無指定記憶領域を通知する。さらに、読み出しキュー管理部142にキュー順送り指示情報として状態維持指示を出力する(図21参照)。
【0185】
11.読み出し制御部304は、読み出し領域の種類として、チャネル無指定記憶領域を受け取ると、そのチャネル無指定記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ301に出力し、そのチャネル無指定記憶領域からチャネル無指定パケットを読み出す。チャネル無指定パケットの場合、制御アドレス、つまりスイッチ541の接続状態に関わらず読み出せ、かつチャネル指定パケットに優先して読み出されるので、書き込み制御部303によってバッファメモリ301に書きこまれた次の読み出しタイミング情報の時に読み出される。ここではたまたまスイッチ541の入力端IN6が出力端OUT1に接続されたとき(つまり、図4の制御アドレスA4の時。そのときスイッチ541の接続は、IN6とOUT1が接続される)に、バッファ216の無指定記憶領域からこのパケットを読み出すものとする。さらに同時に読み出し制御部304は、読み出し記憶領域決定部305の無指定パケット有無管理ビットを0にクリアする。
【0186】
12.バッファ216のチャネル無指定記憶領域から読み出されたパケットは、スイッチ541を通って伝送路531へ出力される。
【0187】
13.伝送路531を通ってノード装置602の端末信号分離部561に入力したパケットは、ヘッダ検出部801でヘッダが検出される。検出した宛先ノード番号(N=3)は記憶している自ノード番号(2)と一致しないので、ゲート802を開きゲート803を閉じて端末信号挿入部501へそのパケットを出力する。端末信号挿入部501のセレクタ904へ出力されたパケットは、セレクタ904を通りバッファ211へ入力する。
【0188】
14.バッファ211のヘッダ検出部302は、入力してきたパケットのヘッダから検出した宛先ノード番号(N=3)が記憶している下流ノード番号(3)と一致したことと、検出したチャネル番号(T=5)とから、このパケットがチャネル5指定パケットであることがわかる。従って、書き込み制御部303に通知する書き込み記憶領域の種類としてチャネル5出力用記憶領域を選択し、それを通知する。更に、スイッチ制御部242に対してパケット宛先分類情報(チャネル5指定パケット)とチャネル情報(チャネル1:自チャネル番号)を伝える(図20参照)。
【0189】
15.書き込み制御部303はその情報を受けて、上記で選択したチャネル5出力用記憶領域に対する書き込みアドレスを発生させ、そのパケットをバッファメモリ301のチャネル5指定記憶領域に書き込ませる。また、このパケットはチャネル無指定パケットではないので、無指定パケット有無管理ビットはセットしない(初期状態:0のまま)。
【0190】
16.スイッチ制御部242の制御アドレス生成部145は、図4に示すテーブルのように制御アドレスをA1,A2,A3,A4,A5,A6,A7,A8と順次供給してスイッチ541の接続関係を変更させ、かつ制御アドレスを例えば1パケット時間周期に供給することで、8パケット時間周期で同じパターンを繰り返すように制御している。
【0191】
17.スイッチ制御部242のパケット宛先情報セレクタ144は、バッファ211から送られてきたパケット宛先分類情報(チャネル5指定パケット)に従って、一緒に送られてくるチャネル情報(チャネル1)を、チャネル5指定パケット順序維持部に出力する。
【0192】
18.読み出し順序キュー105には最初何も保持されていないので、パケット宛先情報セレクタ144から送られて来たチャネル情報(チャネル1)を先頭出力として比較器135に出力する。
【0193】
19.パケット読み出し候補チャネル設定部141が、比較器135に対してチャネル1を出力するのは、制御アドレスがA5のときである(図19参照)。従って、比較器135は、制御アドレスがA5のときにだけ、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を、読み出し指示情報セレクタ143に出力する。制御アドレスがA5のときには、読み出し指示情報セレクタ143は、上述の読み出し記憶領域指示情報(チャネル5出力用記憶領域)をバッファ211に出力する(図19参照)。
【0194】
20.バッファ211の読み出し記憶領域決定部305では、制御アドレスがA5のときに、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を受け取るので(無指定パケット有無管理ビットが0)、読み出し領域の種類としてチャネル5出力用記憶領域を、読み出し制御部304に通知する。更に、読み出しキュー管理部142にキュー順送り指示情報として順送り指示を出力する(図21参照)。
【0195】
21.読み出し制御部304は、制御アドレスがA5のときに読み出し領域の種類としてチャネル5出力用記憶領域を受け取ると、そのチャネル5出力用記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ301に出力し、そのチャネル5出力用記憶領域からチャネル5指定パケットを読み出す。
【0196】
22.また同時に、読み出しキュー管理部142は、制御アドレスがA5のときには、バッファ211から出力されるキュー順送り指示情報(順送り指示)を、チャネル5指定パケット順序維持部に出力する(図4参照)。読み出し順序キュー105では、順送り指示を受け取ると、先頭出力(チャネル1)を破棄し、記憶しているチャネル情報を1つ順送りする。この場合は、先頭出力(チャネル1)以外に記憶しているチャネル情報がないので、読み出し順序キュー105は空(初期状態)に戻る。
【0197】
23.バッファ211のチャネル5出力用記憶領域から読み出されたパケットは、スイッチ541を通って伝送路535へ出力される。
【0198】
24.伝送路を通ってノード装置603の端末信号分離部565に入力したパケットは、ヘッダ検出部801でヘッダが検出される。検出した宛先ノード番号(N=3)は記憶している自ノード番号(3)と一致するので、ゲート803を開き、且つゲート802を閉じて端末方向のみにそのパケットを出力する。
【0199】
25.端末信号分離部565から端末方向へ出力されたパケットは、サブ伝送路を通って端末635へ送られ受信される。
【0200】
以上のようにして、本実施形態におけるネットワークシステムのノード装置間での通信が行われる。
【0201】
次に、パケットの順序が伝送途中で入れ替わらないことを明示的に示すために、図1、図2、図3、図6、図22、図23を用いて説明する。例とする通信は、参考例の問題点を示した場合と同じく端末616から端末635への通信を考える。また、参考例の問題点での説明と同じように、説明の簡単のため、端末とノード装置までの伝送容量と、ノード装置間の伝送容量(1チャネル当たり)は同じとする。また、前述したように、1つのパケットがある地点を通過するのにかかる時間を1パケット時間と呼ぶことにする。
【0202】
図22、図23において、T0,T1,T2,T3,T4…はそれぞれ1パケット時間で、A4,A5,A6,A7,A8…はそれぞれのパケット時間における図4、図19の制御アドレスを示している。図22、図23は一連の時間経過を示す図で、T10パケット時間は重複して示されている。また、図23では、同じ状態が維持されている時間は一部省略されている。
【0203】
更に、1つのパケットに対するバッファへの書き込み、読み出しにはそれぞれ1パケット時間かかるとする。また、あるノード装置から出力されて次のノード装置に入力され、端末信号分離部及び端末信号挿入部を通過する時間もまとめて1パケット時間とする。また、各ノード装置のスイッチ541の動作は完全に同期しているものとする。
【0204】
また、参考例の問題点について説明したのと同じように、端末616から複数(以下の例では4つ)のパケットが連続して送られている場合を考える。ここで連続した複数のパケットを先頭から順に「P1,P2,P3,P4」と呼ぶことにする。
【0205】
1.端末616からの送信データは固定長のパケットに分割され、各パケットのヘッダに宛先ノード番号(N=3)と宛先チャネル番号(T=5)を記載して出力される。出力されたパケットは、出力された順にP1,P2,P3,P4とし、それらはサブ伝送路を通ってノード装置601へ入力する。
【0206】
2.ノード装置601に入力したパケットP1,P2,P3,P4は、端末信号挿入部506を経由してバッファ216でチャネル無指定パケットと判定され、バッファメモリ301のチャネル無指定記憶領域に一時的に書き込まれる。
【0207】
3.チャネル無指定パケットの場合、制御アドレス、つまりスイッチ541の接続状態にかかわらず読み出せ、かつチャネル指定パケットに優先して読み出されるので、書き込み制御部303によってバッファメモリ301に書きこまれた次の読み出しタイミング情報のときに読み出される。ここではたまたまスイッチ541の入力端IN6が出力端OUT1に接続されたとき(つまり、図4の制御アドレスがA4のときスイッチ541でIN6とOUT1が接続され、その接続状態が維持されている間をT0パケット時間と呼ぶことにする)に、バッファ216の無指定記憶領域から先頭パケットP1を読み出すものとする(図22参照)。
【0208】
4.パケットは連続しているので、次のパケットP2はT1パケット時間(制御アドレスがA5)のときに読み出され、更に次のパケットP3はT2パケット時間(制御アドレスがA6)のときに読み出される。また同様に、パケットP4はT3パケット時間(制御アドレスがA7)のときに読み出される(図22参照)。
【0209】
5.従って、ノード装置601から出力されるパケットは、P1が531から出力され、その1パケット時間後にP2が532から出力され、その1パケット時間後にP3が533から出力される。また同様に、パケットP4は1パケット時間後に534から出力される。
【0210】
6.ノード装置601から出力されたパケットはそれぞれの伝送チャネルを通り、ノード装置602に入力される。更に、それぞれの伝送チャネルにある端末信号分離部と端末信号挿入部を通過して(その間に1パケット時間かかるとしている)、それぞれの伝送チャネルにあるバッファのチャネル5出力用記憶領域に一時的に書き込まれる。つまり、P1はバッファ211のチャネル5出力用記憶領域にT2パケット時間に書きこまれ、P2はバッファ212のチャネル5出力用記憶領域にT3パケット時間に書きこまれ、P3はバッファ213のチャネル5出力用記憶領域にT4パケット時間に書き込まれ、P4はバッファ214のチャネル5出力用記憶領域にT5パケット時間に書き込まれる(図22参照)。
【0211】
7.この際、スイッチ制御部242のパケット宛先セレクタ144に対して、バッファ211からパケット宛先分類情報(チャネル5指定パケット)とチャネル情報(チャネル1)、バッファ212からパケット宛先分類情報(チャネル5指定パケット)とチャネル情報(チャネル2)、バッファ213からパケット宛先分類情報(チャネル5指定パケット)とチャネル情報(チャネル3)、バッファ214からパケット宛先分類情報(チャネル5指定パケット)とチャネル情報(チャネル4)が順番に送られる。
【0212】
8.スイッチ制御部242のパケット宛先情報セレクタ144は、上述のようにバッファ211〜214から送られてくるパケット宛先分類情報(すべてチャネル5指定パケット)に従って、一緒に送られてくるチャネル情報(チャネル1、チャネル2、チャネル3、チャネル4)を、入力してきた順序(チャネル1、チャネル2、チャネル3、チャネル4の順序)で、チャネル5指定パケット順序維持部に出力する。
【0213】
9.読み出し順序キュー105は、パケット宛先情報セレクタ144から送られてきたチャネル情報を、それらが送られてきた順番(チャネル1、チャネル2、チャネル3、チャネル4の順序)に記憶する。読み出し順序キュー105には、最初何も保持されていないので、チャネル1を先頭出力として比較器135に出力する。
【0214】
10.パケット読み出し候補チャネル設定部141が、比較器135に対してチャネル1を出力するのは、制御アドレスがA5のときである(図19参照)。従って、比較器135は制御アドレスがA5(T9パケット時間)のときにだけ、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を、読み出し指示情報セレクタ143に出力する。制御アドレスA5(T9パケット時間)のときには、読み出し指示情報セレクタ143は、上述した読み出し記憶領域指示情報(チャネル5出力用記憶領域)をバッファ211に出力する(図19参照)。
【0215】
11.バッファ211の読み出し記憶領域決定部305では、制御アドレスがA5(T9パケット時間)のときに、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を受け取るので(無指定パケット有無管理ビットは0)、その読み出し領域の種類としてチャネル5出力用記憶領域を、読み出し制御部304に通知する。更に、読み出しキュー管理部142にキュー順送り指示情報として順送り指示を出力する(図21参照)。
【0216】
12.読み出し制御部304は、制御アドレスがA5(T9パケット時間)のときに読み出し領域の種類としてチャネル5出力用記憶領域を受け取ると、そのチャネル5出力用記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ301に出力し、そのチャネル5出力用記憶領域からチャネル5指定パケットP1を読み出す(図22参照)。
【0217】
13.同時に、読み出しキュー管理部142は、上述の制御アドレスがA5(T9パケット時間)のときに、バッファ211から出力されるキュー順送り指示情報(順送り指示)を、チャネル5指定パケット順序維持部に出力する(図4参照)。読み出し順序キュー105では、順送り指示を受け取ると、先頭出力(チャネル1)を破棄し、記憶しているチャネル情報を1つ順送りする。従って、次はチャネル2を先頭出力として比較器135に出力する。
【0218】
14.制御アドレスがA5(T9パケット時間)のときに、バッファ211のチャネル5出力用記憶領域から読み出されたパケットP1は、スイッチ541を通って伝送路535へ出力される。
【0219】
15.続いてパケット読み出し候補チャネル設定部141が、比較器135に対してチャネル2を出力するのは、制御アドレスがA4のときである(図19参照)。従って、比較器135は制御アドレスがA4(T16パケット時間)のときにだけ、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を、読み出し指示情報セレクタ143に出力する。制御アドレスA4(T16パケット時間)のときには、読み出し指示情報セレクタ143は、上述した読み出し記憶領域指示情報(チャネル5出力用記憶領域)をバッファ212に出力する(図19参照)。
【0220】
16.バッファ212の読み出し記憶領域決定部305では、制御アドレスがA4(T16パケット時間)のときに、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を受け取るので(無指定パケット有無管理ビットは0)、読み出し領域の種類としてチャネル5出力用記憶領域を読み出し制御部304に通知する。更に、読み出しキュー管理部142にキュー順送り指示情報として順送り指示を出力する(図21参照)。
【0221】
17.読み出し制御部304は、制御アドレスがA4(T16パケット時間)のときに、読み出し領域の種類としてチャネル5出力用記憶領域を受け取ると、そのチャネル5出力用記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ301に出力し、そのチャネル5出力用記憶領域からチャネル5指定パケットP2を読み出す(図22参照)。
【0222】
18.同時に、読み出しキュー管理部142は、上述の制御アドレスがA4(T16パケット時間)のときには、バッファ212から出力されるキュー順送り指示情報(順送り指示)を、チャネル5指定パケット順序維持部に出力する(図4参照)。読み出し順序キュー105では、順送り指示を受け取ると、先頭出力(チャネル2)を破棄し、記憶しているチャネル情報を1つ順送りする。従って、次はチャネル3を先頭出力として比較器135に出力する。
【0223】
19.制御アドレスがA4(T16パケット時間)のときにバッファ212のチャネル5出力用記憶領域から読み出されたパケットP2は、スイッチ541を通って伝送路535へ出力される。
【0224】
20.続いてパケット読み出し候補チャネル設定部141が、比較器135に対してチャネル3を出力するのは、制御アドレスがA3のときである(図19参照)。従って、比較器135は制御アドレスがA3(T23パケット時間)のときにだけ、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を、読み出し指示情報セレクタ143に出力する。制御アドレスがA3(T23パケット時間)のときには、読み出し指示情報セレクタ143は、上述の読み出し記憶領域指示情報(チャネル5出力用記憶領域)をバッファ213に出力する(図19参照)。
【0225】
21.バッファ213の読み出し記憶領域決定部305では、制御アドレスがA3(T23パケット時間)のときに読み出し記憶領域指示情報としてチャネル5出力用記憶領域を受け取るので(無指定パケット有無管理ビットは0)、読み出し領域の種類としてチャネル5出力用記憶領域を読み出し制御部304に通知する。更に、読み出しキュー管理部142にキュー順送り指示情報として順送り指示を出力する(図21参照)。
【0226】
22.読み出し制御部304は、制御アドレスがA3(T23パケット時間)のときに読み出し領域の種類としてチャネル5出力用記憶領域を受け取ると、そのチャネル5出力用記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ301に出力し、そのチャネル5出力用記憶領域からチャネル5指定パケットP3を読み出す(図22参照)。
【0227】
23.同時に、読み出しキュー管理部142は、上述の制御アドレスがA3(T23パケット時間)のときには、バッファ213から出力されるキュー順送り指示情報(順送り指示)を、チャネル5指定パケット順序維持部に出力する(図4参照)。読み出し順序キュー105では、順送り指示を受け取ると、先頭出力(チャネル3)を破棄し、記憶しているチャネル情報を1つ順送りする。従って、次はチャネル4を先頭出力として比較器135に出力する。
【0228】
24.制御アドレスがA3(T23パケット時間)のときにバッファ213のチャネル5出力用記憶領域から読み出されたパケットP3は、スイッチ541を通って伝送路535へ出力される。
【0229】
25.続いて、パケット読み出し候補チャネル設定部141が、比較器135に対してチャネル4を出力するのは、制御アドレスがA2のときである(図19参照)。従って、比較器135は制御アドレスがA2(T30パケット時間)のときにだけ、読み出し記憶領域指示情報としてチャネル5出力用記憶領域を、読み出し指示情報セレクタ143に出力する。制御アドレスがA2(T30パケット時間)のときには、読み出し指示情報セレクタ143は、上述の読み出し記憶領域指示情報(チャネル5出力用記憶領域)をバッファ214に出力する(図19参照)。
【0230】
26.バッファ214の読み出し記憶領域決定部305では、制御アドレスがA2(T30パケット時間)のときに読み出し記憶領域指示情報としてチャネル5出力用記憶領域を受け取るので(無指定パケット有無管理ビットは0)、読み出し領域の種類としてチャネル5出力用記憶領域を読み出し制御部304に通知する。更に、読み出しキュー管理部142にキュー順送り指示情報として順送り指示を出力する(図21参照)。
【0231】
27.読み出し制御部304は、制御アドレスがA2(T30パケット時間)のときに読み出し領域の種類としてチャネル5出力用記憶領域を受け取ると、そのチャネル5出力用記憶領域に対してパケットを読み出すための読み出しアドレスをバッファメモリ301に出力し、そのチャネル5出力用記憶領域からチャネル5指定パケットP4を読み出す(図22参照)。
【0232】
28.同時に、読み出しキュー管理部142は、上述の制御アドレスがA2(T30パケット時間)のときには、バッファ214から出力されるキュー順送り指示情報(順送り指示)を、チャネル5指定パケット順序維持部に出力する(図4参照)。読み出し順序キュー105では、順送り指示を受け取ると、先頭出力(チャネル4)を破棄し、記憶しているチャネル情報を1つ順送りする。この場合は、先頭出力以外に記憶しているチャネル情報がないので、読み出し順序キュー105は空(初期状態)に戻る。
【0233】
29.制御アドレスがA2(T30パケット時間)のときにバッファ214のチャネル5出力用記憶領域から読み出されたパケットP4は、スイッチ541を通って伝送路535へ出力される。
【0234】
30.従って、ノード装置602から出力されるパケットは、T10パケット時間にP1が、T17パケット時間にP2が、T24パケット時間にP3が、T31パケット時間にP4が、それぞれ535から出力されることになる。
【0235】
31.つまり、本実施形態では、ノード装置602においてパケットの順序の入れ替わりが起こらず、元の状態(P1,P2,P3,P4)でノード装置603に入力され、端末信号分離部565で分離されて端末635に送られる。
【0236】
この場合、送信端末616から宛先端末635へ送られるパケットの流れは、以下のようになる。
【0237】
[送信端末接続ノード装置(601)]:
・送信端末616から送られたパケットは、端末信号挿入部506を経由してリング伝送路に挿入されるが、その過程ではパケットの順序入れ替えは起こらない。
・バッファ216に入力されたパケットは、チャネル無指定パケットと分類され、バッファメモリ301に書きこまれた次の読み出しタイミング情報の時に次々に読み出されるので、パケットの順序入れ替えは起こらない。
・バッファ212から出力されたパケットは、スイッチ541によってバラバラのチャネルに振り分けられるが、その過程ではパケットの順序入れ替えは起こらない。
【0238】
[最終経由ノード装置(602)]:
・バラバラのチャネルから入力されたパケットは、それぞれのチャネルの端末信号分離部、端末信号挿入部を経由して、それぞれのチャネルにあるバッファ部に入力されるが、その過程ではパケットの順序入れ替えは起こらない。
・それぞれのチャネルにあるバッファ部に入力されたパケットは、チャネル5指定パケットと分類され、それぞれのバッファ部のチャネル5出力用記憶領域に書き込まれるが、その過程ではパケットの順序入れ替えは起こらない。
・スイッチ制御部242のチャネル5指定パケット順序維持部の読み出し順序キュー105には、パケットがそれぞれのバッファ部に書きこまれた順にそのバッファのチャネル情報が入力される。更に、読み出し順序キュー105から出力される(出力される順序は入力された順序と同じ)チャネル情報に従ってバッファが選択され、そのバッファからパケットが読み出されて行くので、その過程ではパケットの順序入れ替えは起こらない。
・それぞれのバッファから出力されたパケットは、スイッチ541によってチャネル5(535)に出力されるが、その過程ではパケットの順序入れ替えは起こらない。
【0239】
[受信端末接続ノード装置(603)]:
・チャネル5(525)からに入力されたパケットは、端末信号分離部565で分離され、宛先端末635に送られるが、その過程ではパケットの順序入れ替えは起こらない。
・また、上で示した通信例には、途中経由ノード装置が含まれていなかったが、以下に示すように、途中経由ノード装置でもパケットの順序の入れかえは起こらない。
【0240】
[途中経由ノード装置]:
・バラバラのチャネルから入力されたパケットは、それぞれのチャネルの端末信号分離部、端末信号挿入部を経由して、それぞれのチャネルにあるバッファ部に入力されるが、その過程ではパケットの順序入れ替えは起こらない。
・それぞれのチャネルにあるバッファ部に入力されたパケットは、チャネル無指定パケットと分類され、バッファメモリ301に書きこまれた次の読み出しタイミング情報の時に次々に読み出されるので、パケットの順序入れ替えは起こらない。
・それぞれのバッファから出力されたパケットは、スイッチ541によって、バラバラのチャネルに振り分けられるが、その過程ではパケットの順序入れ替えは起こらない。
【0241】
以上まとめると、本実施形態では、各ノード装置においてパケット宛先分類毎にパケットの順序を維持することで、同一のパケット宛先分類の中でのパケットの順序入れ替わりを防いでいる。つまり、
・チャネル無指定パケットに対して、バッファメモリ301に書きこまれた次の読み出しタイミング情報の時に読み出すようにする(チャネル指定パケットより優先して読み出す)ことで、チャネル無指定パケットの順序入れ替えを防いでいる。
・チャネル1指定パケットに対して、チャネル1指定パケットが、各チャネルのバッファ211〜218にどのような順序で書き込まれていったのか(書き込みチャネル順序情報と呼ぶ)を読み出し順序キュー101が管理し、読み出し順序キュー101が管理している書き込みチャネル順序情報に従って、各チャネルのバッファ211〜218に書きこまれているチャネル1指定パケットを読み出していくことで、チャネル1指定パケットの順序入れ替えを防いでいる。
・チャネル2〜8指定パケットに対してもチャネル1指定パケットと同様の制御により、チャネル2〜8指定パケットの順序入れ替わりを防いでいる。
【0242】
従って、本実施形態によれば、参考例で問題になっていた、パケットの順序が伝送途中で入れ替わる、という現象が発生することはなくなり、参考例で述べた「問題点1、2、3,4」も解決される。
【0243】
[他の実施形態]
次に、図面を参照しながら本発明に係る他の実施形態を詳細に説明する。
【0244】
図17は、他の実施形態におけるノード装置の構成図である。上述の実施形態でスイッチ541に空間分割型のスイッチを用い、伝送路としてリボンファイバなどの空間分割並列多重伝送路を用いたのに対し、他の実施形態では波長多重を用いて1本の光ファイバに信号を多重し、対向する2つのノード装置間で交換を行うものである。
【0245】
図17において、1701〜1708は波長可変送信部であり、レーザダイオードの注入電流を制御することにより入力信号を任意の波長の光信号に変換して出力する光送信器である。1720は波長制御部であり、スイッチ制御部242と基本的に同じものである。尚、スイッチ制御部242は、スイッチ541に対してその入力チャネルと出力チャネルの接続状態の切り替えを指示したが、波長制御部1720は、波長可変送信部1701〜1708を図4に示した波長制御パターンに従ってそれぞれの送信波長を任意の波長に設定するものである。
【0246】
例えば、制御アドレスA1〜A8を順次周期的に変更することで、波長可変送信部1701の入力端IN1に入力した信号を最初の周期で波長λ1の光信号に変換し、次の周期で波長λ2の光信号に変換し、更に波長λ3,λ4,λ5…と順次変更する。波長可変送信部1702も同様に入力端IN2に入力した信号を波長λ2,λ3,λ4,λ5,λ6…の順番で繰り返し上記波長の光信号に変換する。他の波長可変送信部1703〜1708も同様である。
【0247】
波長変更の周期は、例えばパケット長の整数倍に設定される。つまり、数パケット単位に送信波長が繰り返し変更されることになる。また、使用する波長制御パターンは図4に限ったものではないが、複数の波長可変送信部が同時に同じ波長で送信しない波長制御パターンを用いる。
【0248】
1721は合波器であり、各波長可変送信部から出力された光信号を1本の光ファイバに集光し、外部光ファイバ伝送路へ出力する。1722は分波器であり、外部光ファイバ伝送路から送られてきた波長λ1〜λ8の光信号をそれぞれの波長に分離する。1711〜1718は光受信部であり、分波器1722で分離された波長λ1〜λ8の光信号を電気信号に変換するものである。ノード装置の他の部分は、前述した実施形態或いは参考例と同様であり、同じ部分は同一番号で記してある。
【0249】
尚、前述した実施形態における通信の手順は、スイッチ541に空間分割型のスイッチを用い、伝送路としてリボンファイバなどの空間分割並列多重伝送路を用いたのに対し、他の実施形態では波長多重を用いて1本の光ファイバに信号を多重した部分を除いて同じであり、その異なる部分の動作については既に詳述したので省略する。
【0250】
尚、本発明は複数の機器(例えば、ホストコンピュータ,インタフェース機器,リーダ,プリンタなど)から構成されるシステムに適用しても、1つの機器からなる装置(例えば、複写機,ファクシミリ装置など)に適用しても良い。
【0251】
また、本発明の目的は前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPU若しくはMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【0252】
この場合、記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【0253】
このプログラムコードを供給するための記録媒体としては、例えばフロッピー(登録商標)ディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
【0254】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0255】
更に、記録媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0256】
【発明の効果】
以上説明したように、本発明によれば、各ノード装置において、パケット宛先分類毎にパケットの順序を維持することにより、同一のパケット宛先分類の中でパケットの順序入れ替わりを防ぐことができる。即ち、
・チャネル無指定パケットに対しては、バッファメモリに書きこまれた次の読み出しタイミング情報のときに読み出すようにすることで(チャネル指定パケットより優先して読み出すことで)、チャネル無指定パケットの順序入れ替えを防ぐことができる。
・チャネル1指定パケットに対しては、チャネル1指定パケットが、各チャネルのバッファにどのような順序で書き込まれていったのか(書き込みチャネル順序情報と呼ぶ)を読み出し順序キューが管理し、読み出し順序キューが管理している書き込みチャネル順序情報に従って、各チャネルのバッファに書きこまれているチャネル1指定パケットを読み出していくことで、チャネル1指定パケットの順序入れ替えを防ぐことができる。
・チャネル2〜8指定パケットに対してもチャネル1指定パケットと同様の制御により、チャネル2〜8指定パケットの順序入れ替わりを防ぐことができる。
【0257】
従って、本発明によれば、問題になっていたパケットの順序が伝送途中で入れ替わるという現象が発生することはなくなり、従来必要であった、順序が入れ替わって到着するパケットの順序を元に戻すために、宛先端末が繋がった端末インタフェース部にパケットを並び替える手段(並び替え手段)と、並び替え手段において、パケットの並び替えを行うために、送信端末が繋がった端末インタフェース部にパケットのヘッダにシーケンス番号を付加する手段(シーケンス番号付加手段)と、パケットのヘッダにシーケンス番号を付加するための領域とが必要なくなる。
【0258】
また、上記の並び替え手段及びシーケンス番号付加手段に付随するハード的な制限により、コネクション数が限定されることもなくなる。
【0259】
そして、チャネル無指定記憶領域に書き込まれるチャネル無指定パケットは、バッファメモリ301において滞留することなく、バッファメモリ301に書きこまれた次の読み出しタイミング情報の時に直ちに読み出されるので、チャネル無指定記憶領域の大きさは、他の記憶領域に比べて小さく割り当てることが可能である。例えば1パケット分の領域を割り当てれば十分である。更に、パケットがバッファメモリ301に書き込まれるタイミングに、スイッチ制御部242から送られる読み出しタイミング情報を合わせるなら、チャネル無指定記憶領域を割り当てる必要もなくなる。
【図面の簡単な説明】
【図1】本実施形態におけるスイッチ制御部242の内部構成を示す図である。
【図2】本実施形態におけるネットワークに用いるノード装置200の構成を示す図である。
【図3】本実施形態におけるバッファ手段211〜218の内部構成を示す図である。
【図4】スイッチ制御部の制御パターンを示す図である。
【図5】参考例のネットワークにおけるノード装置の構成例を示す図である。
【図6】図5に示すノード装置を用いたネットワークシステムの構成例を示す図である。
【図7】図6に示すネットワークの通信原理を説明するための図である。
【図8】端末信号分離部561〜568の内部構成を示す図である。
【図9】端末信号挿入部501〜508の内部構成を示す図である。
【図10】バッファ部511〜518の内部構成を示す図である。
【図11】読み出し記憶領域決定部1005における読み出し領域の種類を決定する処理手順を示すフローチャートである。
【図12】ヘッダ検出部801におけるパケット経路の制御手順を示すフローチャートである。
【図13】ヘッダ検出部1002におけるパケット経路の制御手順を示すフローチャートである。
【図14】端末インタフェース部571〜578の内部構成を示す図である。
【図15】パケットの順序が伝送途中で入れ替わる現象を説明するための図である。
【図16】本実施形態におけるネットワークに用いるパケットの構成を示す図である。
【図17】他の実施形態におけるノード装置の構成を示す図である。
【図18】参考例のネットワークに用いられるパケット構成を示す図である。
【図19】制御アドレスに応じてそれぞれの出力チャネルがどの入力チャネルと接続するかを示す図である。
【図20】書き込みアドレスを決定する処理手順を示すフローチャートである。
【図21】読み出し領域の種類を決定する処理手順を示すフローチャートである。
【図22】パケットの順序が伝送途中で入れ替わらないこと説明するための図である。
【図23】パケットの順序が伝送途中で入れ替わらないこと説明するための図である。
Claims (12)
- 複数の端末装置を接続するための複数のノード装置を並列な複数のチャネルでリング状に接続した通信ネットワークであって、
伝送するパケットの宛先端末に応じて分類されたパケットを所定の記憶領域に書き込み、当該書き込み順序を示す情報を管理する管理手段と、
前記書き込み順序を示す情報に従って前記所定の記憶領域から前記パケットを読み出すように制御する読み出し制御手段とを有し、
前記分類されたパケットを所定の記憶領域に書き込む順序と読み出す順序とを一致させることを特徴とする通信ネットワーク。 - 前記並列な複数のチャネル間で伝送するチャネルを切り替えて前記所定の記憶領域から読み出したパケットを出力する切替手段を更に有することを特徴とする請求項1記載の通信ネットワーク。
- 前記パケットの宛先分類として、自ノード装置の下流に隣接するノード装置に接続された宛先端末に宛てられた隣接下流ノード宛てパケットに対しては、宛先端末毎に分類し、自ノード装置の下流に隣接するノード装置に接続された宛先端末以外に宛てられた非隣接下流ノード宛てパケットに対しては、全て同一の分類とすることを特徴とする請求項1記載の通信ネットワーク。
- 前記読み出し制御手段は、非隣接下流ノード宛てパケットと分類されたパケットを隣接下流ノード宛てパケットと分類されたパケットに優先して読み出すことを特徴とする請求項3記載の通信ネットワーク。
- 前記端末装置は、前記複数のチャネルの何れかに分離手段を介して接続され、前記分離手段は接続されているチャネルにより伝送されてきたパケットのうち、前記端末装置に出力すべきパケットを分離して前記端末装置に出力することを特徴とする請求項1記載の通信ネットワーク。
- 前記端末装置は、前記複数のチャネルの何れかに挿入手段を介して接続され、前記挿入手段は前記端末装置から出力されたパケットを前記接続されたチャネルに挿入することを特徴とする請求項1記載の通信ネットワーク。
- 並列な複数のチャネルを有するリング状の通信ネットワークに接続され、複数の端末装置を該通信ネットワークに接続するためのノード装置であって、
伝送するパケットの宛先端末に応じて分類されたパケットを所定の記憶領域に書き込み、当該書き込み順序を示す情報を管理する管理手段と、
前記書き込み順序を示す情報に従って前記所定の記憶領域から前記パケットを読み出すように制御する読み出し制御手段と、
読み出したパケットを前記並列な複数のチャネル間で伝送するチャネルを切り替えて出力する切替手段と、
前記宛先端末に出力すべきパケットを前記複数のチャネルの何れかに接続された前記宛先端末としての端末装置へ分離する分離手段と、
前記複数の端末装置から伝送されてくるパケットを前記複数のチャネルの何れかに挿入する挿入手段とを有することを特徴とするノード装置。 - 複数の端末装置を接続するための複数のノード装置を並列な複数のチャネルでリング状に接続した通信ネットワークの制御方法であって、
伝送するパケットの宛先端末に応じて分類されたパケットを所定の記憶領域に書き込み、当該書き込み順序を示す情報を管理する管理工程と、
前記書き込み順序を示す情報に従って前記所定の記憶領域から前記パケットを読み出すように制御する読み出し制御工程とを有し、
前記分類されたパケットを所定の記憶領域に書き込む順序と読み出す順序とを一致させることを特徴とする通信ネットワークの制御方法。 - 並列な複数のチャネルを有するリング状の通信ネットワークに接続され、複数の端末装置を該通信ネットワークに接続するためのノード装置の制御方法であって、
伝送するパケットの宛先端末に応じて分類されたパケットを所定の記憶領域に書き込み、当該書き込み順序を示す情報を管理する管理工程と、
前記書き込み順序を示す情報に従って前記所定の記憶領域から前記パケットを読み出すように制御する読み出し制御工程と、
読み出したパケットを前記並列な複数のチャネル間で伝送するチャネルを切り替えて出力する切替工程と、
前記宛先端末に出力すべきパケットを前記複数のチャネルの何れかに接続された前記宛先端末としての端末装置へ分離する分離工程と、
前記複数の端末装置から伝送されてくるパケットを前記複数のチャネルの何れかに挿入する挿入工程とを有することを特徴とするノード装置の制御方法。 - コンピュータを請求項1乃至請求項6の何れか一項記載の通信ネットワークとして機能させるためのプログラム。
- コンピュータを請求項7記載のノード装置として機能させるためのプログラム。
- 請求項10又は請求項11に記載のプログラムが記録されたコンピュータ読み取り可能な記録媒体。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002233844A JP2004080098A (ja) | 2002-08-09 | 2002-08-09 | 通信ネットワーク、ノード装置及びそれらの制御方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002233844A JP2004080098A (ja) | 2002-08-09 | 2002-08-09 | 通信ネットワーク、ノード装置及びそれらの制御方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2004080098A true JP2004080098A (ja) | 2004-03-11 |
Family
ID=32018871
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002233844A Withdrawn JP2004080098A (ja) | 2002-08-09 | 2002-08-09 | 通信ネットワーク、ノード装置及びそれらの制御方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2004080098A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2020150300A (ja) * | 2019-03-11 | 2020-09-17 | 富士通株式会社 | 通信装置、通信制御方法およびプログラム |
-
2002
- 2002-08-09 JP JP2002233844A patent/JP2004080098A/ja not_active Withdrawn
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2020150300A (ja) * | 2019-03-11 | 2020-09-17 | 富士通株式会社 | 通信装置、通信制御方法およびプログラム |
| JP7174248B2 (ja) | 2019-03-11 | 2022-11-17 | 富士通株式会社 | 通信装置、通信制御方法およびプログラム |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0119105B1 (en) | Integrated circuit/packet switching system | |
| US7965732B2 (en) | Scheduling token-controlled data transmissions in communication networks | |
| US7623543B2 (en) | Token-controlled data transmissions in communication networks | |
| JP2004248174A (ja) | 通信ネットワーク及びそこで用いるノード装置及びそこで用いる伝送制御方法 | |
| US5946315A (en) | Method and device for synchronizing dynamic synchronous transfer mode in a ring topology | |
| US7376138B1 (en) | Optical communications network | |
| US20050207440A1 (en) | Data transmissions in communication networks using multiple tokens | |
| JP2008136206A (ja) | データパス制御の予測的スケジューリング方法 | |
| JP2007028642A (ja) | 光ネットワークで光トレイルを割り当てるための方法及びソフトウエア | |
| US7826747B2 (en) | Optical burst transport using an electro-optic switch | |
| JPH11145996A (ja) | 通信ネットワーク及びそこで用いる伝送制御方法 | |
| EP0891056A2 (en) | Communication network, node apparatus and method for controlling the same | |
| CA2210816C (en) | Network system and communication method | |
| JP2004080098A (ja) | 通信ネットワーク、ノード装置及びそれらの制御方法 | |
| US20080124080A1 (en) | Multicast transmissions in optical burst transport | |
| JP2003333073A (ja) | 通信ネットワーク及びそこで用いるノード装置及びそこで用いる伝送制御方法 | |
| JP2009218778A (ja) | パケット伝送システム | |
| JP2003283539A (ja) | 通信ネットワーク、端末インタフェース装置、ノード装置、伝送制御方法、記憶媒体、及びプログラム | |
| JP2004166125A (ja) | 通信ネットワーク、ノード装置及び伝送制御方法 | |
| JP2003333056A (ja) | 通信ネットワーク及びそこで用いるノード装置及びそこで用いる伝送制御方法 | |
| US6714550B1 (en) | Communication system, communication apparatus which can be connected to communication system, control method for control system, and control method for communication apparatus which can be connected to communication system | |
| JP2001333085A (ja) | バッファ装置、進路変更装置およびノード装置並びにネットワーク | |
| JP2004214739A (ja) | パケット交換方法 | |
| JP2004248176A (ja) | ノード装置および伝送制御方法 | |
| JP2001156819A (ja) | 通信ネットワーク並びにノード装置並びに伝送制御方法及び装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20051101 |