(57)【要約】【課題】ネットワーク内でパケットの紛失が生じた際にも、そのパケット紛失を検出し、パケットの並べ替え及び読み出し送信の停止を防ぐ。また、パケットの紛失が後続のパケットに及ぼす影響を最小限にとどめる。【解決手段】受信パケットを一時記憶するとともに、パケット中に付加されているパケットの順序情報にパケットを送出する機能を設ける。また、一時記憶中のパケット数および次に読み出すべき順序情報を持つパケットの受信待ちに要する時間をもとに、パケットの紛失を検出する機能を設ける。パケットの紛失が検出されたさいには、その代わりに所望のダミーパケットを送出する機能を設ける。【選択図】        図１
2004248028.tif 000002
【特許請求の範囲】
【請求項１】
受信パケットを記憶する第１の記憶手段と、
受信パケット内部に記録される順序情報をもとに第１の記憶手段中に受信パケットを記憶させるパケット書き込み手段と、
前記第１の記憶手段に記憶されたパケットの持つ順序情報に対応するフラグを記憶する第２の記憶手段と、前記第１の記憶手段から次に読み出すパケットの順序情報を保持する読み出し順序保持手段と、
該読み出し順序保持手段に保持されている順序情報に対応する第２の記憶手段に記憶されるフラグにより、第１の記憶手段から読み出し順序順にパケットを読み出し送信するパケット読み出し手段と、
パケットの読み出しに応じ、前記読み出し順序保持手段に保持されている読み出し順序情報を更新する読み出し順序情報更新手段と、
前記読み出し順序保持手段により示される順序情報が更新されずに留まっている時間、および第１の記憶手段に記憶されているパケットの有無をもとに、パケットの紛失を判定するパケット紛失判定手段と、
該パケット紛失判定手段によりパケットの紛失が判定された場合には、該紛失パケットの代わりに所望のダミーパケットを送出するパケット置換手段とを有することを特徴とした、パケット並べ替え手段。
【請求項２】
パケット紛失判定手段として、
一定周期毎にインクリメントされる第１のカウンタと、
前記第１の記憶手段に記憶されているパケット数を記憶する第２のカウンタと、
前記第１の記憶手段からパケットが読み出されるたびに、前記第１のカウンタ値を記憶しておく第３の記憶手段とを有し、
一定周期毎に、前記第１のカウンタ値と第３の記憶手段に記憶されているカウンタ値を比較し、該値が一致せず、かつ前記第２のカウンタ値が０でない場合には、前記読み出し順序保持手段により示される順序情報を持つパケットは紛失したものと判定するパケット紛失判定手段を有することを特徴とした、請求項１記載のパケット並べ替え手段。
【請求項３】
パケットとして、可変長ユーザデータパケットを分割して生成されるＡＴＭセルに順序情報を付加した固定長パケット、
順序情報として、可変長ユーザデータパケットの順序を表すパケット順序情報と該ユーザデータパケット中の何番目のＡＴＭセルかを表すセル順序情報とで構成される順序情報、
読み出し順序情報更新手段として、ＡＴＭセルを読み出した後にセル順序情報をインクリメントし、ユーザデータパケットの最後尾を示すＡＴＭヘッダ情報を持つＡＴＭセルを読み出した後には、セル順序情報を０にリセットし、パケット順序情報をインクリメントするような読みだし順序情報更新手段、
パケット置換手段として、紛失したと判定された固定長パケットを、可変長ユーザデータパケットの最後ｌ尾を示すＡＴＭヘッダ情報を持つＡＴＭセルに置き換え、以降の同一パケット順序情報を持つ固定長パケットについては全て廃棄するようなパケット置換手段を有することを特徴とした、請求項１記載のパケット並べ替え手段。
【請求項４】
最大可変長ユーザデータパケット長をもとに、パケット順序情報長とセル順序情報長を決定することを特徴とした、請求項３記載の並べ替え手段。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は通信ネットワークに関し、更に詳しくは、受信側における受信パケットの順序が送信側における送信パケットの順序と一致することが保証されないネットワークにおけるパケットの並べ替え手段に関する。
【０００２】
【従来の技術】
近年、簡易な構成の大容量ネットワークシステムとして、ノード装置を並列多重伝送路でリング状に接続したネットワークシステムが検討されている。該ネットワークシステムの詳細は、特開平８−１７２３９４号公報「ネットワークシステム及びノード装置及びコンセントレ一夕及びネットワークシステムにおける伝送制御方法」、特開平８−２３７３０６号公報「ネットワークシステム及びノード装置及び伝送制御方法」において述べられている。以下に、特開平８−２３７３０６号公報「ネットワークシステム及びノード装置及び伝送制御方法」で述べられているネットワークシステムを例として挙げる。
【０００３】
図６は従来のネットワークにおけるノード装置の構成図であり、ノード装置６００にサブ伝送路を介して端末６５１〜６５８を接続している例を示している。符号６０１〜６０８は、分離挿入手段であるところの分離挿入部であり、並列多重伝送路から入力されるセルのアドレスを検出し、サブ伝送路を介して端末へ伝送させるセルとバッファへ入力させるセルに分離すると共に、端末から伝送されてくるセルを、並列多重伝送路から入力されるセル流に挿入する機能を有している。符号６１１〜６１８は、バッファ手段であるところのバッファであり、分離挿入部から出力されるセルをスイッチ６４１の出力端に対応した記憶領域に一時記憶する機能を有している。符号６２１〜６２８、符号６３１〜６３８はノード間を接続するための並列多重伝送路であり、例えば空間的に分離された複数の光ファイバ伝送路であったり、あるいは１本の光ファイバ上に波長分割されて多重化された波長多重伝送路であったりする。符号６４１はスイッチであり、スイッチ制御部６４２に制御されて、入力端ＩＮｌ〜ＩＮ８に入力したセルを任意の出力端ＯＵＴｌ〜ＯＵＴ８へ接続するものである。スイッチ６４１は、並列多重伝送路に複数の光ファイバ伝送路を用いるときには、空間スイッチ等を用いて交換を行う。また、波長多重伝送路を用いる場合には、図６とは若干構成が異なるが、複数の可変波長レーザダイオードと合波器からなる送信部を波長多重伝送路へ接続し、波長多重伝送路の受信部で分波器により各波長を分離することでノード間でスイッチを構成し、可変波長レーザダイオードの送信波長を波長λ１〜λ８の任意の波長に設定することで交換を行う。符号６４２はスイッチ制御部であり、例えば図９の制御パターンに従ってスイッチを制御する。符号６４３はバッファ制御部であり、各バッファに接続されたスイッチの入力端が所望の出力端に接続されたときに、バッファから記憶されているセルを読み出すように制御するものである。
【０００４】
図７は分離挿入部６０１〜６０８の内部構成を示す図であり、７０１はセルのヘッダから宛先アドレスを検出するヘッダ検出部、７０２、７０３は入力信号を出力または遮断するためのゲート、７０４は２つの入力信号のどちらか一方を出力するセレクタ、７０５はセルを一時記憶するためのＦＩＦＯ（ＦＩｒｓｔ  Ｉｎ  ＦＩｒｓｔ  Ｏｕｔ）である。分離挿入部６０１〜６０８において、並列多重伝送路より入力したセルはヘッダ検出部７０１においてヘッダが検出され、ヘッダの内容によりゲート７０２と７０３の開閉の処理を行う。ヘッダ検出部７０１にはあらかじめその分離挿入部に接続されている端末のアドレスが記憶されており、検出した宛先アドレスが記憶しているアドレスと一致したときには、ゲート７０３を開き且つゲート７０２を閉じて端末方向のみにそのセルを出力する。また、検出した宛先アドレスが記憶しているアドレスと一致しない場合は、ゲート７０２を開き且つゲート７０３を閉じて、セレクタ７０４のみにそのセルを出力してセレクタ７０４を通ってバッファへ送られる。一方端末から伝送されてきたセルはＦＩＦＯ７０５に一時記憶し、ゲート７０２からセレクタ７０４に入力したセル流にすき間があるときにＦＩＦＯ７０５から読み出され、セレクタ７０４を通ってバッファへ送られるように動作する。
【０００５】
図８はバッファ６１１〜６１８の内部構成であり、８０１はスイッチ６４１の出力端に対応した記憶領域１〜記憶領域８からなるバッファメモリ、８０２はセルのヘッダから宛先アドレスを検出するヘッダ検出部、８０３はバッファメモリ８０１に書き込みアドレスを供給するためのアドレスカウンタである。バッファ６１１〜６１８において、分離挿入部より入力したセルはヘッダ検出部８０２においてヘッダが検出され、ヘッダの内容によりそのセルを記憶する記憶領域が決定される。ヘッダ検出部８０２にはあらかじめ隣接する下流ノードに接続される端末のアドレスが記憶されており、検出した宛先が記憶しているアドレスと一致したときには、その端末が接続されている伝送路つまりスイッチ６４１の出力端に対応した記憶錦城を指定し、アドレスカウンタ８０３より書き込みアドレスを発生させてバッファメモリ８０１に記憶させる。また、検出した宛先アドレスが記憶しているアドレスと一致しないときには、任意の記憶領域にそのセルを記憶させるごとく制御する。
【０００６】
図９はスイッチ６４１の入出力の接続関係を示す制御パターンであり、制御アドレスＡｌ〜Ａ８によりスイッチの入出力接続関係が変更される。入力端ＩＮｌ〜ＩＮ８はバッファ６１１〜６１８に対応しており、出力端ＯＵＴｌ〜ＯＵＴ８（または送信波長λ１〜λ８）は各バッファの記憶領域１〜記憶領域８に対応している。
【０００７】
図１０は、図６に示したノード装置を用いたネットワークシステムの構成例であり、４つのノード装置１００１〜１００４を並列多重伝送路１００５〜１００８によってリング型に接続し、各ノード装置にはそれぞれ８本のサブ伝送路を介して８台の端末が接続されている。端末１０１１〜１０１８は端末６５１〜６５８に対応し、同様に１０２１〜１０２８、１０３１〜１０３８、１０４１〜１０４８も端末６５１〜６５８に対応している。
【０００８】
図１１はこのネットワークの通信原理を説明するための図であり、１１０１〜１１０４はノード装置、１１０５〜１１０８はスイッチ６４１に対応した交換スイッチ、１１０９〜１１１２はバッファ６１１〜６１８に対応したバッファ、１１２１〜１１３６は端末、Ａ，Ｂ，Ｃ，Ｄはリングを成す並列伝送路である。
【０００９】
まず、図１１を用いてこのネットワークの通信原理について説明する。このネットワークは複数のリングＡ，Ｂ，Ｃ，Ｄを有し、各リング間は交換スイッチ１１０５〜１１０８によって相互に接続されている。各端末は並列伝送路Ａ，Ｂ，Ｃ，Ｄの中の１つのリング伝送路に接続されており、他のリングに接続された端末と通信を行う場合は、少なくとも１回、任意の交換スイッチで他のリングに交換されることで通信が行われる。交換が行われる位置は特定されないが、宛先ノードの１つ手前のノードで宛先の伝送路へ乗り換えて、他のノードでは任意の伝送路へ乗り換えるようにすると通信制御が容易になる。このネットワークはノード装置を簡略化するため、交換スイッチ１１０５〜１１０８は入力信号とは無関係に入出力の接続関係を特定の巡回パターンにしたがって一定周期に変更し、バッファ１１０９〜１１１２で入力信号を一時蓄積して、交換スイッチの入出力接続関係が所望の関係になったときにバッファからセルを読み出すようにして交換が行われる。
【００１０】
例えば、端末１１２２から端末１１３２へ通信する場合は、端末１１２２から出力されたセルはノード１１０１のバッファ１１０９に蓄積され、スイッチ１１０５の入力端ＩＮ２が例えば出力端ＯＵＴ２に接続されたときにバッファから読み出されて伝送路Ｂに出力され、ノード１１０２のバッファ１１１０へ入力してスイッチ１１０６のＩＮ２とＯＵＴ４が接続されたときにバッファから読み出されることにより、伝送路Ｄへ出力されて端末１１３２へセルが送られる。
【００１１】
このように、それぞれのノード装置で任意のリング伝送路に乗り換えることにより通信が行われる。次に、図６、図１０を用いて詳細を説明する。説明においては並列多重伝送路は空間的に分離された複数の光ファイバ伝送路、スイッチは空間スイッチとして説明するが、波長多重伝送路を用いる場合も上記原理に基づいており、ほぼ同様の動作が行われる。仮に、端末１０１２から端末１０３５へ通信する場合の動作例について説明する。
【００１２】
端末１０１２からの送信データは固定長のセルに分割され、各セルのヘッダに宛先アドレスが記載されて出力される。出力されたセルはサブ伝送路を通ってノード装置１００１へ入力し、分離挿入部６０２のＦＩＦＯ７０５に一時記憶される。記憶されたセルは、ゲート７０２からセレクタ７０４に入力したセル流にすき間があるときにＦＩＦＯ７０５から読み出され、セレクタ７０４を通ってバッファへ送られる。バッファ６１２のヘッダ検出部８０２は、入力したセルのヘッダを検出すると検出した宛先アドレスが記憶しているアドレスと一致しないので、任意の記憶領域を指定する。書き込みアドレスカウンタ８０３はその情報を受けて書き込みアドレスを発生させ、そのセルをバッファメモリ８０１の記憶領域に書き込ませる。ここでは仮に記憶領域１に記憶されるとする。
【００１３】
バッファ制御部６４３はスイッチ６４１の入力端ＩＮ２が出力端ＯＵＴｌに接続されるまでそのセルの読み出しを待機させ、接続された時にセルを読み出す。
【００１４】
スイッチ制御部６４２は、図９に示すテーブルのように制御アドレスをＡｌ，Ａ２，Ａ３，Ａ４，Ａ５，Ａ６，Ａ７，Ａ８と順次供給してスイッチ６４１の接続関係を変更させ、かつ制御アドレスを例えば１セル長周期に供給することで、８セル周期で同じパターンを繰り返すように制御している。その情報をバッファ制御部６４３へ通知することでバッファからの読み出しタイミングが制御される。ここではスイッチ６４１の入力端ＩＮ２が出力端ＯＵＴｌに接続されたときにバッファ６１２の記憶領域１からセルが読み出されることにより、そのセルはスイッチ６４１を通って伝送路６３１へ出力される。
【００１５】
伝送路６３１を伝送されたセルは、ノード装置１００２の分離挿入部６０１に入力し、ヘッダ検出部７０１においてセルのヘッダが検出される。検出した宛先アドレスは記憶しているアドレスと一致しないので、ゲート７０２を開きゲート７０３を閉じてセレクタ７０４へそのセルを出力する。分離挿入部６０１のセレクタ７０４へ出力されたセルは、セレクタ７０４を通りバッファ６１１へ入力する。
【００１６】
ヘッダ検出率８０２はヘッダを検出すると検出した宛先アドレスが記憶しているアドレスと一致しているので、宛先アドレスの端末が接続される伝送路に対応する記憶領域を指定する。ここでは宛先の端末が伝送路６３５に接続されているので記憶領域５に記憶させる。バッファ制御部６４３はスイッチ６４１のＩＮ１がＯＵＴ５に接続されたときにバッファ６１１の記憶領域５からセルを読み出すことで、セルはスイッチ６４１を通って伝送路６３５へ出力される。伝送路を通ってノード装置１００３の分離挿入部６０５に入力したセルは、ヘッダ検出部７０１でヘッダが検出され、検出した宛先アドレスが記憶しているアドレスと一致したので、ゲート７０３を開き且つゲート７０２を閉じて端末方向のみにそのセルを出力する。分離挿入部６０５から端末方向へ出力されたセルは、サブ伝送路を通って端末１０３５へ送られ受信される。
【００１７】
このようにして通信が行われる。
【００１８】
しかしながら、図１１を用いて説明したようなネットワークシステムにおいてセルの送受信を行う場合、送信側におけるセルの送出順序と受信側におけるセルの受信順序とが必ずしも一致しないという問題がある。そこで、「ノード装置及び複数のノード装置を有する通信ネットワーク及びそれらの制御方法」ＦＩｌｅＮｏ．１７７１８８において図１２に示すように分離挿入部と端末との間に並べ替え処理部１２０１〜１２０８を設けたノード装置１２００が提案されている。ノード装置１２００の内部では、セル送信時にはヘッダ変換部１２１１〜１２１８において送出セルのヘッダにモジュロｎ（ｎ＝１，２，…）のシーケンシャル番号を付与し、受信時には並べ替え処理部１２０１〜１２０８において分離挿入部から受信したセル列を一時蓄積し該シーケンシャル番号順に並べ替えて端末へ送出することにより、送受信間でのセルの順序を一致させている。
【００１９】
【発明が解決しようとする課題】
しかしながら、従来例ではネットワーク内でのセルロスについては考慮されておらず、並べ替えバッファ部の処理が停止してしまう（ロスしたセルを永遠に待ちつづける）という問題があった。
【００２０】
【課題を解決するための手段】
本発明は、上述の従来例の問題点を鑑みなされたものであり、ネットワーク内でセルロスが生じても、そのセルロスを感知し、並べ替え処理を再開できるようにするための手段を提供する。
【００２１】
本発明の並べ替え手段においては、受信パケットを記憶する第１の記憶手段と、受信パケット内部に記録される順序情報をもとに第１の記憶手段中に受信パケットを記憶させるパケット書き込み手段と、前記第１の記憶手段に記憶されたバケットの持つ順序情報に対応するフラグを記憶する第２の記憶手段と、前記第１の記憶手段から次に読み出すパケットの順序情報を保持する読み出し順序保持手段と、該読み出し順序保持手段に保持されている順序情報に対応する第２の記憶手段に記憶されるフラグにより、第１の記憶手段から読み出し順序順にパケットを読み出し送信するパケット読み出し手段と、パケットの読み出しに応じ、前記読み出し順序保持手段に保持されている読み出し順序情報を更新する読み出し順序情報更新手段と、前記読み出し順序保持手段により示される順序情報が更新されずに留まっている時間、および第１の記憶手段に記憶されているパケットの有無をもとに、パケットの紛失を判定するパケット紛失判定手段と、該パケット紛失判定手段によりパケットの紛失が判定された場合には、該紛失パケットの代わりに所望のダミーパケットを送出するパケット置換手段とを有するように構成される。
【００２２】
更にパケット紛失判定手段とし声声周期毎にインクリメントされる第１のカウンタと、前記第１の記憶手段に記憶されているパケット数を記憶する第２のカウンタと、前記第１の記憶手段からパケットが読み出されるたびに、前記第１のカウンタ値を記憶しておく第３の記憶手段とを有し、一定周期毎に、前記第１のカウンタ値と第３の記憶手段に記憶されているカウンタ値を比較し、該値が一致せず、かつ前記第２のカウンタ値が０でない場合には、前記読み出し順序保持手段により示される順序情報を持つパケットは紛失したものと判定するパケット紛失判定手段を有するように構成される。
【００２３】
またパケットとして、可変長ユーザデータパケットを分割して生成されるＡＴＭセルに順序情報を付加した固定長パケット、順序情報として、可変長ユーザデータパケットの順序を表すパケット順序情報と該ユーザデータパケット中の何番目のＡＴＭセルかを表すセル順序情報とで構成される順序情報、読み出し順序情報更新手段として、ＡＴＭセルを読み出した後にセル順序情報をインクリメントし、ユーザデータパケットを構成する最終ＡＴＭセルであることを示すヘッダ情報を持つＡＴＭセルを読み出した後には、セル順序情報を０にリセットし、パケット順序情報をインクリメントするような読みだし順序情報更新手段、パケット置換手段として、紛失したと判定された固定長パケットを、可変長ユーザデータパケットの最後尾を示すＡＴＭヘッダを持つＡＴＭセルに置き換え、以降の同一パケット順序情報を持つ固定長パケットについては全て廃棄するようなパケット置換手段を有するように構成される。
【００２４】
更に最大可変長ユーザデータパケット長をもとに、パケット順序情報長とセル順序情報長を決定するように構成する。
【００２５】
【発明の実施の形態】
ネットワーク装置の構成は、従来例と同様に図１２で表す。
【００２６】
端末により送受信される伝送単位としてＡＴＭセル（ヘッダ５バイト、ペイロード４８バイト）、端末内のネットワークソフトウェアでは、ＡＡＬ５パケット（パケット末に、ＣＲＣ３２情報等をもつ）を使用する。
【００２７】
また、ネットワークの内部の伝送単位（以降セルと呼ぶ）は、ＡＴＭセルヘッダに２バイトのシーケンシャル番号フィールドを付加し、合計５５バイトとする。該シーケンシャル番号フィールドには、セル伝送順序を表すためのシーケンシャル番号が格納される。該シーケンシャル番号として本実施例では、６５，５３６（２の１６乗）のモジュロ（０〜６，５５３５）を使用する。
【００２８】
図１は本実施例の並べ替え処理部の構成図である。
【００２９】
符号１２０は並べ替え処理部であり、ネットワーク内で伝送順序が保証されずに入力されたセルを伝送順序どおりに並べ替えて出力するためのものである。
【００３０】
符号１０１は書き込み・読み出し制御部であり、後述する制御方法に従って、後述のセルメモリへの入力セルの書き込み及びセルメモリからのセルの読み出しを行い、端末へ出力する機能を有する。
【００３１】
符号１０２はセルメモリであり、入力セルを一時的に記憶するために使用される。
【００３２】
符号１０３はストアフラグメモリであり、どのシーケンシャル番号のセルがセルメモリ１０２に保留されているかを示すフラグ（以降ストアフラグと呼ぶ）が保持されている。
【００３３】
符号１０４は読み出しカウンタであり、セルメモリ１０２から次に読み出すべきセルのシーケンシャル番号を保持している。
【００３４】
符号１０５は到着セルカウンタであり、セルメモリ１０２に保留されている出力すべきセル数を保持している。
【００３５】
符号１０６は読み出しタイマカウントレジスタであり、セルメモリ１０２からセルが読み出されるたびに、後述するタイマカウンタ値が記録される。
【００３６】
符号１０７はタイマカウンタであり、図１２には記されていないが、ノード装置１２００内にあり、後述するセルロス監視部が起動し処理が終了する度にインクリメントされる。
【００３７】
符号１０８は第１のＶＰＩ／ＶＣＩ変換表であり、入力セルのＶＰＩ／ＶＣＩの値と、出力時のＶＰＩ／ＶＣＩの値、後述する並べ替えブロックのブロック番号の対応を保持している。
【００３８】
符号１０９は並べ替えブロツクであり、上記符号１０２〜１０６により構成されており、ＡＴＭコネクション毎に必要となるため、開設を認めるコネクション数分用意されている。
【００３９】
符号１１０はコネクション管理部であり、図１２には記されていないが、ノード装置１２００内のＣＰＵにおいて実行されるソフトウェアである。その機能については、適宜後述する。
【００４０】
符号１１１はセルロス監視部であり、上記ＣＰＵ上で実行されるソフトウェアであり、その機能は適宜後述する。
【００４１】
図２は本実施例のヘッダ変換部の構成図である。
【００４２】
符号２０１はヘッダ変換部であり、入力ＡＴＭセルをセルに変換し出力する機能を有する。
【００４３】
符号２０２はシーケンシャル番号付加部であり、入力ＡＴＭセルに、２バイトのシーケンシャル番号フィールドを付加し、セルへと変換して出力する機能を有する。さらに後述のシーケンシャル番号レジスタに保持されるシーケンシャル番号を管理する機能も有する。
【００４４】
符号２０３は第２のＶＰＩ／ＶＣＩ変換表であり、入力ＡＴＭセルのＶＰＩ／ＶＣＩの値と、出力時のＶＰＩ／ＶＣＩの値、後述するヘッダ変換ブロックの番号の対応を保持している。
【００４５】
符号２０４はセル番号ビット幅レジスタであり、特定コネクションに割り当てられたセル番号のビット幅を保持する。
【００４６】
符号２０５はシーケンシャル番号レジスタであり、次入力ＡＴＭセルに付加すべきシーケンシャル番号を保持する。
【００４７】
符号２０６はヘッダ変換ブロックであり、上記符号２０４、２０５で構成される。本ブロックは、ＡＴＭコネクション毎に必要となるため、開設を認めるコネクション数分用意されている。
【００４８】
図３は上述のＶＰＩ／ＶＣＩ変換表の内容を示す図である。
【００４９】
符号３０１はブロック番号であり、並べ替えブロックあるいはヘッダ変換ブロックのブロック番号を表す。
【００５０】
符号３０２は使用中フラグであり、ブロック番号で示されるブロックが開設中のコネクションに割り当てられているか（フラグ１）否か（フラグ０）を示す。
【００５１】
符号３０３、符号３０４は入力ＶＰＩ／ＶＣＩ値、出力ＶＰＩ／ＶＣＩ値であり、ブロック番号で示されるブロックを使用しているコネクションの入力時のＶＰＩ／ＶＣＩ値、出力時のＶＰＩ／ＶＣＩ値を表す。
【００５２】
以下に、本実施例における並べ替え処理部、ヘッダ変換部の処理内容について詳しく述べる。
【００５３】
初めにコネクション管理部１１０の処理について説明する。
【００５４】
本実施例では、シーケンシャル番号をパケット番号とセル番号に分けて取り扱う。
【００５５】
ＡＴＭコネクション上で取り扱われる最大パケットサイズを１，５１６バイトとすると（ＬＡＮ−ＥｍｕｌａｔＩｏｎフレームを想定）、最大サイズのパケットについては、３２のセルに分割されることになる。したがって、シーケンシャル番号に割り当てられた１６ビットのうちの下位５ビットをセル番号（０〜３１）、残り上位１１ビット（０〜２，０４７）をパケット番号として割り当てる。つまり、セル番号は３２のモジュロ、パケット番号は２，０４８のモジュロとなる。上記最大パケットサイズは、シグナリング時の情報として取得できるため、コネクション開設時に、セル番号、パケット番号に割り当てるビット幅を最大パケットサイズに合わせて動的に割り当てることができる。また、上記パケット番号の最大数を超えるようなセルの順序入れ替えは、ネットワーク内部で起こらないものとする。
【００５６】
まず、コネクション開設時の処理について図４（ａ）を用いて説明する。説明を簡単にするため、片方向通信用のコネクションとする。両方向通信用のコネクションの場合には、同様の処理を双方向について行えば良い。
【００５７】
コネクションの開設時には、コネクション管理部１１０により、送信側端末６５ｎ（ｎ：１〜８任意、以降も同様）が接続されているヘッダ変換部１２１ｎの第２のＶＰＩ／ＶＣＩ変換表２０３およびヘッダ変換ブロック２０６、受信側端末が接続されている並べ替え処理部１２０ｎの第１のＶＰＩ／ＶＣＩ変換表１０８および並べ替えブロック１０９の設定が行われる。
【００５８】
まず、上述の該当する第１、第２のＶＰＩ／ＶＣＩ変換表の使用中フラグ３０２を参照し、未使用のブロックから今回のコネクションに使用するブロックをそれぞれ選択し、使用中フラグをＯＮに変更する（Ｓ４０２）。また、第２のＶＰＩ／ＶＣＩ変換表の入力ＶＰＩ／ＶＣＩ３０３の値は、高速に交換表内のエントリを検索できるように、ＶＣＩ＝ブロック番号となるように設定し、ＶＰＩは任意とする。同様に第１のＶＰＩ／ＶＣＩ交換表の入力ＶＣＩ＝ブロック番号、ＶＰＩについては該第１のＶＰＩ／ＶＣＩ交換表の属するノード装置および並べ替え処理部を識別するための適当な値を選択する。当然ながら、第２のＶＰＩ／ＶＣＩ交換表における出力ＶＰＩ／ＶＣＩ３０４の値は、第１のＶＰＩ／ＶＣＩ交換表の入力ＶＰＩ／ＶＣＩの値と一致させる必要がある。第１のＶＰＩ／ＶＣＩ交換表の出力ＶＰＩ／ＶＣＩの値は任意に選択される。上述のとおり決定した出力ＶＰＩ／ＶＣＩの値を、それぞれのブロック番号（入力ＶＣＩ）に対応させて、第１と第２のＶＰＩ／ＶＣＩ変換表１０８、２０３のそれぞれに記録する（Ｓ４０３）。図３からわかるように、ブロック番号３０１と入力ＶＰＩ／ＶＣＩ３０３のＶＣＩの値は同じであり、使用中フラグ３０２の立っているものについては、出力ＶＰＩ／ＶＣＩ３０４が記録されている。
【００５９】
さらに、選択した並べ替えブロックのストアフラグメモリ１０３内の全フラグをＯＦＦにし、読み出しカウンタ１０４および到着セルカウンタ１０５を０で、読み出しタイマカウントレジスタ１０６をタイマカウンタ１０７の値でで初期化する。さらに、選択したヘッダ変換ブロック内のセル番号ビット幅レジスタ２０４に、前述のとおりセル番号ビット幅５を記録し、シーケンシャル番号レジスタ２０５を０で初期化する（Ｓ４０４）。
【００６０】
コネクションの解放時の処理は、第１、第２のＶＰＩ／ＶＣＩ変換表から、解放コネクションに関連のあるそれぞれのエントリの使用中フラグ３０２をＯＦＦにし（Ｓ４１１）、並べ替えブロック１０９、ヘッダ変換ブロック２０６を解放する（Ｓ４１２）。
【００６１】
次にシーケンシャル番号付加部２０２の処理について、図５を用いて説明する。
【００６２】
端末６５ｎにおいてＡＡＬ５パケットはＡＴＭセルに分割され送出される。該ＡＴＭセルは、ヘッダ変換部１２１ｎへと入力される。
【００６３】
ヘッダ変換部２０１では、シーケンシャル番号付加部２０２において、入力ＡＴＭセルのＡＴＭヘッダ内のＶＰＩ／ＶＣＩをもとに第２のＶＰＩ／ＶＣＩ変換表２０３を参照し、出力ＶＩＶＩ／ＶＣＩ値を割り出し（Ｓ５０２）、ＡＴＭセルヘッダ内のＶＰＩ／ＶＣＩの値を該出力値に書き換えるとともに（Ｓ５０３）、該ＶＰＩ／ＶＣＩ変換表により割り出されるヘッダ変換ブロックのブロック番号より、該当するブロック２０６内のシーケンシャル番号レジスタ２０５に保持されている２バイトのシーケンシャル番号をＡＴＭヘッダと、ＡＴＭペイロードの間に挿入し（Ｓ５０４）、セルとして出力する（Ｓ５０５）。同時に、シーケンシャル番号レジスタ値の更新を行う（Ｓ５０６〜Ｓ５０７）。
【００６４】
ここでシーケンシャル番号の更新方法について説明する。シーケンシャル番号内の、セル番号は、１セル出力毎に１ずつインクリメントされ（０〜３１）（Ｓ５０８）、パケットの末尾のセル（ＡＴＭセルヘッダのＰＴフィールドを監視することで判別する、以下最終セルと略す）の出力後に０にリセットされる。同様にパケット番号は最終セル出力後にインクリメントされる（０〜２，０４７、２，０４７の後は０にリセットされる）（Ｓ５０７）。
【００６５】
次に書き込み・読み出し制御部１０１の書き込み処理について、図１３を用いて説明する。
【００６６】
分離挿入部６２ｎより入力されたセルは、書き込み・読み出し制御部において、入力セルのヘッダ内のＶＰＩ／ＶＣＩをもとに第１のＶＰＩ／ＶＣＩ変換表１０８を参照し、出力ＶＰＩ／ＶＣＩ値を割り出し（Ｓ１３０２）、ヘッダ内のＶＰＩ／ＶＣＩの値を該出力値に書き換えるとともに（Ｓ１３０３）、該ＶＰＩ／ＶＣＩ変換表により割り出される並べ替えブロックのブロック番号より、該当するブロック１０９内のセルメモリ１０２に、セルヘッダ内のシーケンシャル番号備により割り出される鎖域へ（Ｓ１３０４）、セルよりシーケンシャル番号フィールドを削除したＡＴＭセルの形態で（Ｓ１３０５）、一時蓄積される（Ｓ１３０６）。それと同時に、ストアフラグメモリ１０３内の前記シーケンシャル番号に該当するところのストアフラグをＯＮにし、（Ｓ１３０７）、到着セルカウンタ値をインクリメントし（Ｓ１３０８）、読み出しタイマカウントレジスタ１０６にタイマカウンタ１０７の値をセットする（Ｓ１３０９）。
【００６７】
次に書き込み・読み出し制御部１０１の読み込み処理について、図１４を用いて説明する。
【００６８】
書き込み・読み出し制御部は常時、読み出しカウンタ１０４の値で示されるところのストアフラグメモリ１０３中のストアフラグを監視している（Ｓ１４０１）。該フラグが１にセットされると、セルメモリ１０２より該当する領域のＡＴＭセルを読み出し、端末へと出力する（Ｓ１４０２、Ｓ１４０３）。それと同時に、上記ストアフラグを０にセットし（Ｓ１４０４）、到着セルカウンタ１０５の値をデクリメントし（Ｓ１４０５）、読み出しカウンタ１０４の値を更新する。該読み出しカウンタの更新は、通常は１ずつインクリメントされるが（セル番号のインクリメントに相当、Ｓ１４０８）、最終セル出力時には、シーケンシャル番号の上位１１ビットに相当するパケット番号インクリメントし、下位５ビットに相当するセル番号は０にリセットされるように進められる（Ｓ１４０７）。
【００６９】
次にセルロス監視部１１１の処理について、図１５を用いて説明する。
【００７０】
セルロス監視部の処理は、一定周期毎に起動される周期ルーチンであり、該周期はセルのネットワーク内での並べ替わりにより生じると予想される遅延時間よりも大きく、セルメモリ１０２を全て一時保存のＡＴＭセルで一杯にするのに要する時間よりは短く設定されてる。
【００７１】
上記周期ルーチンが起動されると、第１のＶＰＩ／ＶＣＩ交換表の使用中フラグ３０２をチェックし、使用中の並べ替えブロック１０９を割り出し、該並べ替えブロックの到着セルカウンタ１０５を順次チェックする（Ｓ１５０３）。セル到着カウンタの値が０ではない並べ替えブロックについては、ネットワーク内でのセルロスが発生したことによる、セル読み出しの中断が起こっている可能性がある。該セルロス判定には、読み出しタイマカウントレジスタ１０６の値とタイマカウンタ１０７の値の比較を行う（Ｓ１５０４）。これらの値が異なる場合には、読み出しカウンタ１０４で示されるシーケンシャル番号を持つセルがネットワーク内でロスしたものと判定する。つまり、ネットワーク内で生じ得ると考えられる以上の遅延時間が過ぎても読み出しカウンタの更新がなかったことになり、セルロスしたものと判定し、下記に述べるセルロス後処理を実行する（Ｓ１５０５〜Ｓ１５０８）。
【００７２】
該セルロス後処理では、ダミーの最終ＡＴＭセル（ペイロードの中身は問わない）を出力した後に、読み出しカウンタによって示されるストアフラグメモリ１０３のストアフラグがＯＮの場合には該フラグをＯＦＦにし、かつ到着セルカウンタをデクリメントしながら、読み出しカウンタをインクリメントし続ける（ストアフラグがＯＦＦの場合には、到着セルデクリメントは行われない）。該読み出しカウンタのインクリメントは、パケット番号が更新されるまで続けられる。該処理により、セルロスの生じたパケットについては、ロスしたセル以降はすべて廃棄され、ダミーの最終セル１つに置き換えられることになる（Ｓ１５０５）。１つでもセルロスが生じたパケットは、端末において正しいＡＡＬ５パケットに組み立てられる事はない（つまり該パケットを構成するＡＴＭセルは全て廃棄される）ので、この置き換え自体に問題はない。さらに、ロスしたセルが最終セルであった場合でも、ダミーの最終セルが必ず出力されるため、後続のパケットに影響が及ばない。
【００７３】
上記処理の後、もう一度到着セルカウンタ１０５の値をチェックし（Ｓ１５０６）、値が依然として０でない場合には、複数のパケットにまたがってセルがロスしている可能性が生じる。そこで、読み出しカウンタに示されるシーケンシャル番号のパケット番号において、セル番号０〜３１に対するストアフラグのうち少なくとも１つのフラグがＯＮとなっていることが確認されるまで、読み出しカウンタのパケット番号をインクリメントする（セルＮｏ．は０）（Ｓ１５０７、Ｓ１５０８）。該処理により、少なくとも１つ以上のセルが到着しているパケットの先頭セルまで、読み出しカウンタの値を更新することができる。
【００７４】
前記セルロス後処理により、セルロスが生じたと思われる少なくとも１つ以上のパケットを飛び越すことができ、読み出し処理が停止してしまうことなない。
【００７５】
全使用中の並べ替えてバッファについてセルロスのチェックが終了すると、タイマカウンタ１０７のタイマカウンタ値をインクリメントし、セルロス監視ルーチンを終了する（Ｓ１５１０）。
【００７６】
このように、通常はネットワーク内でセルの並べ替えが生じても、端末へ出力される際には、正しい順序で出力される。また、ネットワーク内でセルのロスが生じても、セルロス監視ルーチンにより、パケット単位での廃棄および読み出しカウンタが更新されるため、セルの読み出しが長時間にわたって中断されることはない。
【００７７】
なお、本実施例ではパケット番号に割り当てるビット幅を最大パケットサイズに応じて決定しているが、必ずしも確実にパケット単位での廃棄が必要ない場合には、該ビット幅よりも小さな値を選択しても構わない。
【００７８】
【発明の効果】
ネットワーク内でセルロスが生じても、そのセルが関与するパケット以外には影響を及ぼすことなく、バケットを伝送する手段を提供する。
【００７９】
さらに従来の方法では、パケットの最終セルがロスしてしまった場合には、そのセルが関与するパケットとその次のパケットが、１つのパケットとして組み立てられてしまうため、事実上連続する２パケットがロスしたことになってしまっていた。しかし、本手法ではダミーの最終セルを送出することで、上記問題を解決した。
【００８０】
また、従来の手法では、コネクション開設後の最初のセルはシーケンシャル番号を０から始める必要があったが、本手法によりこの制限は不要となった。この制限がなくなった事により、マルチキャスト伝送を簡易に行えるようになった。つまり従来の手法では、既に設定されているマルチキャストコネクションに対し、新たにリーフ（伝送先）が途中で常時（シーケンシャル番号が０でない時でも）加わることができるようにするために、１リーフにつき１シーケンシャル番号付与用のカウンタを用意する必要があった。しかし本実施例では、１マルチキャストコネクションにつき１つでよく、セルのペイロードおよびシーケンシャル番号をリーフ数分コピーして伝送すればよい。
【図面の簡単な説明】
【図１】実施例の並べ替え処理部。
【図２】実施例のヘッダ変換部。
【図３】ＶＰＩ／ＶＣＩ変換表の例。
【図４】コネクション管理部の処理。
【図５】シーケンシャル番号付加部の処理。
【図６】従来例のネットワークにおけるノード装置の構成図。
【図７】図６のノード装置内の分離挿入部の内部構成図。
【図８】図６のノード装置内のバッファ部の内部構成図。
【図９】従来例のノード装置のスイッチの入出力の接続関係を示す制御パターン。
【図１０】従来例のネットワークシステムの構成図。
【図１１】従来例のネットワークの通信原理を説明するための図。
【図１２】並べ替え処理を有する従来例のノード装置の構成図。
【図１３】書き込み・読み出し制御部の書き込み処理。
【図１４】書き込み・読み出し制御部の書き込み処理。
【図１５】セルロス監視部の処理。
【図１】
2004248028.tif 000003
【図２】
2004248028.tif 000004
【図３】
2004248028.tif 000005
【図４】
2004248028.tif 000006
【図５】
2004248028.tif 000007
【図６】
2004248028.tif 000008
【図７】
2004248028.tif 000009
【図８】
2004248028.tif 000010
【図９】
2004248028.tif 000011
【図１０】
2004248028.tif 000012
【図１１】
2004248028.tif 000013
【図１２】
2004248028.tif 000014
【図１３】
2004248028.tif 000015
【図１４】
2004248028.tif 000016
【図１５】
2004248028.tif 000017