(57)【要約】【課題】パケットの再組立を従来よりも高速に行うことができるようにする。【解決手段】リングバッファを複数のセクションに区切っておき、連続する２つ以上のセクションを監視区間Ｔａとして定め、送られてきたセグメントＳＭを所定のセクションに格納し、パケットＰＴの再組立に必要なセグメントＳＭが監視区間Ｔａに格納されているか否かを監視し、パケットＰＴの再組立に必要なセグメントＳＭが監視区間Ｔａに揃ったらそれらを呼び出してパケットＰＴの再組立を行い、セグメントＳＭを格納したセクションが監視区間Ｔａよりも後ろである場合に、監視区間Ｔａの最後尾がこのセクションになるように監視区間Ｔａを移動させる。【選択図】図１０
2009171157.tif 000002
【特許請求の範囲】
【請求項１】
複数の分割データに分割されたデータの組立を行う際に使用するバッファを、複数のセクションに区切っておき、
前記セクションのうちの連続する２つ以上を監視区間として定め、
送られてきた前記分割データを前記セクションのうちの所定のセクションに格納し、
前記分割データを格納した前記所定のセクションが前記監視区間よりも後ろである場合に、当該監視区間の最後尾が当該所定のセクションになるように当該監視区間を移動させ、
前記データの組立に必要な複数の分割データが前記監視区間に格納されているか否かを監視し、
前記データの組立に必要な前記複数の分割データが前記監視区間に揃ったら、当該データの組立を行うために前記バッファから当該複数の分割データを呼び出す、
ことを特徴とするバッファの使用方法。
【請求項２】
複数の分割データに分割されたデータの組立を行う際に使用するバッファを、複数のセクションに区切っておき、
前記セクションのうちの２つ以上を監視区間として定め、
前記セクションのうちの２つ以上を含みかつ前記監視区間の所定の部分を含む区間を受入区間として定め、
送られてきた前記分割データを格納すべき前記セクションを決定し、
決定した前記セクションが前記受入区間に該当する場合は送られてきた前記分割データを当該セクションに格納し、該当しない場合は当該分割データを破棄し、
前記分割データを格納した前記所定のセクションが前記監視区間よりも後ろである場合に、当該監視区間の最後尾が当該所定のセクションになるように当該監視区間を移動させ、
前記監視区間の移動に合わせて前記受入区間を移動させ、
前記データの組立に必要な前記分割データが前記監視区間に格納されているか否かを監視し、
前記データの組立に必要な前記分割データが前記監視区間に揃ったら、当該データの組立を行うために当該分割データを呼び出す、
ことを特徴とするバッファの使用方法。
【請求項３】
前記監視区間の先頭および前記受入区間の先頭を同一の前記セクションに定め、かつ、前記受入区間のほうを前記監視区間よりも長く定める、
請求項２記載のバッファの使用方法。
【請求項４】
前記データはパケットであり、
前記分割データの長さは所定の長さ以下である、
請求項２または請求項３記載のバッファの使用方法。
【請求項５】
複数のパケット受信手段と、複数のパケット分割手段と、複数の分割データ中継手段と、バッファを有する複数のパケット転送手段と、を有するスイッチング装置であって、
前記パケット受信手段は、スイッチングの対象のパケットを受信し、
前記パケット分割手段は、前記パケット受信手段によって受信された前記パケットを複数の分割データに分割し、当該各パケットを複数の前記分割データ中継手段に振り分け、
前記分割データ中継手段は、前記パケット分割手段から振り分けられた前記分割データを、当該分割データの基の前記パケットの次の送り先のノードと通信を行う前記パケット転送手段に中継し、
前記パケット転送手段は、
前記バッファを、複数のセクションに区切り、
前記セクションのうちの連続する２つ以上を監視区間として定め、
前記分割データ中継手段から中継されてきた前記分割データを前記セクションのうちの所定のセクションに格納し、
前記パケットの組立に必要な前記分割データが前記監視区間に格納されているか否かを監視し、
前記パケットの組立に必要な前記分割データが前記監視区間に揃ったら、当該分割データを呼び出して当該パケットの組立を行い、組立がなされた当該パケットを前記ノードに転送し、
前記分割データを格納した前記所定のセクションが前記監視区間よりも後ろである場合は、当該監視区間の最後尾が当該所定のセクションになるように当該監視区間を移動させる、
ことを特徴とするスイッチング装置。
【請求項６】
複数のパケット受信手段と、複数のパケット分割手段と、複数の分割データ中継手段と、バッファを有する複数のパケット転送手段と、を有するスイッチング装置であって、
前記パケット受信手段は、スイッチングの対象のパケットを受信し、
前記パケット分割手段は、前記パケット受信手段によって受信された前記パケットを複数の分割データに分割し、当該各パケットを複数の前記分割データ中継手段に振り分け、
前記分割データ中継手段は、前記パケット分割手段から振り分けられた前記分割データを、当該分割データの基の前記パケットの次の送り先であるノードと通信を行う前記パケット転送手段に中継し、
前記パケット転送手段は、
前記バッファを、複数のセクションに区切っておき、
前記セクションのうちの２つ以上を監視区間として定め、
前記セクションのうちの２つ以上を含みかつ前記監視区間の所定の部分を含む区間を受入区間として定め、
前記分割データ中継手段から中継されてきた前記分割データを格納すべき前記セクションを決定し、
決定した前記セクションが前記受入区間に該当する場合は前記分割データ中継手段から中継されてきた前記分割データを当該セクションに格納し、該当しない場合は当該分割データを破棄し、
前記分割データを格納した前記所定のセクションが前記監視区間よりも後ろである場合は、当該監視区間の最後尾が当該所定のセクションになるように当該監視区間を移動させ、
前記監視区間の移動に合わせて前記受入区間を移動させ、
前記パケットの組立に必要な前記分割データが前記監視区間に格納されているか否かを監視し、
前記パケットの組立に必要な前記分割データが前記監視区間に揃ったら、当該パケットの組立を行うために当該分割データを呼び出して当該パケットの組立を行い、組立がなされた当該パケットを前記ノードに転送する、
ことを特徴とするスイッチング装置。
【請求項７】
前記パケット転送手段は、前記監視区間の先頭および前記受入区間の先頭を同一の前記セクションに定め、かつ、前記受入区間のほうを前記監視区間よりも長く定める、
請求項５記載のスイッチング装置。
【請求項８】
前記パケット分割手段は、前記パケットを所定値以下の長さの前記分割データに分割する、
請求項６または請求項７記載のスイッチング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リングバッファの使用方法およびこれを適用したスイッチング装置に関する。
【背景技術】
【０００２】
図１１は従来のスイッチングノードの機能の例を説明するための図、図１２は従来のスイッチングノード９の構成およびパケットの取扱いの例を示す図である。
【０００３】
従来、パケット交換網において、通信の対象のデータは、次のようにしてやりとりされている。
【０００４】
送信側の装置は、データを複数のパケットに分割し、受信側の装置を宛先として指定してパケット交換網に送出する。すると、各パケットは、様々なスイッチングノードによって中継され、受信側の装置に届けられる。受信側の装置は、各パケットを組み立てて元のデータに戻す。
【０００５】
スイッチングノードは、上記の１組の装置同士やり取りされるパケットだけでなく、それ以外の組の装置間でやり取りされるパケットをも中継する。したがって、スイッチングノードは、図１１に示すように、様々なサイズのパケットを中継する。
【０００６】
パケットの中継をより高速に行うために、図１２に示すようなスイッチングノード９が提案されている。
【０００７】
スイッチングノード９には、複数のスイッチファブリック（Switch Fabric）９２が設けられている。入力トラフィック制御部（Ingress TM）９１は、入力されたパケットＰＴを、サイズがほぼ均一な複数のセグメントＳＭに分割し、これらのセグメントＳＭを複数のスイッチファブリック９２にほぼ均一に振り分ける。各スイッチファブリック９２は、自らに振り分けられたセグメントＳＭを、中継先のノードに接続されている出力トラフィック制御部（Egress TM）９３にスイッチングする。そして、出力トラフィック制御部９３は、スイッチファブリック９２から送られてきたセグメントＳＭを組み立てることによってパケットＰＴを再生成し、中継先のノードに送信する。
【０００８】
このように様々なサイズのパケットＰＴをほぼ均一なセグメントＳＭに分割し複数のスイッチファブリック９２にほぼ均一に振り分けてスイッチングすれば、パケットＰＴをセグメントＳＭに分割せずにスイッチングする場合よりも、アイドリングの時間を少なくしてスイッチファブリック９２を稼動させることができる。よって、パケットＰＴの中継を高速に行うことができる。
【０００９】
そのほか、特許文献１には、交換装置におけるバッファの管理の方法が開示されている。特許文献２には、セルが通信帯域の申告値通りに送られてきているか否かを監視する方法が開示されている。
【特許文献１】特開平１０−９８４７５号公報
【特許文献２】特開平７−２７３７７１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
図１２で説明した、パケットＰＴをほぼ均一なセグメントＳＭに分割し複数のスイッチファブリック９２にほぼ均一に振り分ける方法を適用しつつ、さらに高速にスイッチングを行うためには、パケットＰＴの再組立を高速に行えばよい。
【００１１】
本発明は、このような課題に鑑み、パケットの再組立を従来よりも高速に行うことができるようにすることを、目的とする。
【課題を解決するための手段】
【００１２】
本発明の一実施形態に係るバッファの使用方法は、複数の分割データに分割されたデータの組立を行う際に使用するバッファを、複数のセクションに区切っておき、前記セクションのうちの連続する２つ以上を監視区間として定める。送られてきた前記分割データを前記セクションのうちの所定のセクションに格納する。前記分割データを格納した前記所定のセクションが前記監視区間よりも後ろである場合に、当該監視区間の最後尾が当該所定のセクションになるように当該監視区間を移動させる。格納および移動の処理と並行してまたは前後して、前記データの組立に必要な複数の分割データが前記監視区間に格納されているか否かを監視し、前記データの組立に必要な前記複数の分割データが前記監視区間に揃ったら、当該データの組立を行うために前記バッファから当該複数の分割データを呼び出す。
【００１３】
本発明の他の実施形態に係るバッファの使用方法は、複数の分割データに分割されたデータの組立を行う際に使用するバッファを、複数のセクションに区切っておき、前記セクションのうちの２つ以上を監視区間として定める。前記セクションのうちの２つ以上を含みかつ前記監視区間の所定の部分を含む区間を受入区間として定め、送られてきた前記分割データを格納すべき前記セクションを決定し、決定した前記セクションが前記受入区間に該当する場合は送られてきた前記分割データを当該セクションに格納し、該当しない場合は当該分割データを破棄し、前記分割データを格納した前記所定のセクションが前記監視区間よりも後ろである場合に、当該監視区間の最後尾が当該所定のセクションになるように当該監視区間を移動させ、前記監視区間の移動に合わせて前記受入区間を移動させる。これらの処理と並行してまたは前後して、前記データの組立に必要な前記分割データが前記監視区間に格納されているか否かを監視し、前記データの組立に必要な前記分割データが前記監視区間に揃ったら、当該データの組立を行うために当該分割データを呼び出す。
【００１４】
本発明の一実施形態に係るスイッチング装置は、複数のパケット受信手段と、複数のパケット分割手段と、複数の分割データ中継手段と、バッファを有する複数のパケット転送手段と、を有するスイッチング装置であって、前記パケット受信手段は、スイッチングの対象のパケットを受信し、前記パケット分割手段は、前記パケット受信手段によって受信された前記パケットを複数の分割データに分割し、当該各パケットを複数の前記分割データ中継手段に振り分け、前記分割データ中継手段は、前記パケット分割手段から振り分けられた前記分割データを、当該分割データの基の前記パケットの次の送り先のノードと通信を行う前記パケット転送手段に中継し、前記パケット転送手段は、前記バッファを、複数のセクションに区切り、前記セクションのうちの連続する２つ以上を監視区間として定め、前記分割データ中継手段から中継されてきた前記分割データを前記セクションのうちの所定のセクションに格納し、前記パケットの組立に必要な前記分割データが前記監視区間に格納されているか否かを監視し、前記パケットの組立に必要な前記分割データが前記監視区間に揃ったら、当該分割データを呼び出して当該パケットの組立を行い、組立がなされた当該パケットを前記ノードに転送し、前記分割データを格納した前記所定のセクションが前記監視区間よりも後ろである場合は、当該監視区間の最後尾が当該所定のセクションになるように当該監視区間を移動させる。
【００１５】
本発明の他の実施形態に係るスイッチング装置は、複数のパケット受信手段と、複数のパケット分割手段と、複数の分割データ中継手段と、バッファを有する複数のパケット転送手段と、を有するスイッチング装置であって、前記パケット受信手段は、スイッチングの対象のパケットを受信し、前記パケット分割手段は、前記パケット受信手段によって受信された前記パケットを複数の分割データに分割し、当該各パケットを複数の前記分割データ中継手段に振り分け、前記分割データ中継手段は、前記パケット分割手段から振り分けられた前記分割データを、当該分割データの基の前記パケットの次の送り先であるノードと通信を行う前記パケット転送手段に中継し、前記パケット転送手段は、前記バッファを、複数のセクションに区切っておき、前記セクションのうちの２つ以上を監視区間として定め、前記セクションのうちの２つ以上を含みかつ前記監視区間の所定の部分を含む区間を受入区間として定め、前記分割データ中継手段から中継されてきた前記分割データを格納すべき前記セクションを決定し、決定した前記セクションが前記受入区間に該当する場合は前記分割データ中継手段から中継されてきた前記分割データを当該セクションに格納し、該当しない場合は当該分割データを破棄し、前記分割データを格納した前記所定のセクションが前記監視区間よりも後ろである場合は、当該監視区間の最後尾が当該所定のセクションになるように当該監視区間を移動させ、前記監視区間の移動に合わせて前記受入区間を移動させ、前記パケットの組立に必要な前記分割データが前記監視区間に格納されているか否かを監視し、前記パケットの組立に必要な前記分割データが前記監視区間に揃ったら、当該パケットの組立を行うために当該分割データを呼び出して当該パケットの組立を行い、組立がなされた当該パケットを前記ノードに転送する。
【発明の効果】
【００１６】
本発明によると、パケットの再組立を従来よりも高速に行うことができる。
【発明を実施するための最良の形態】
【００１７】
図１はスイッチングノード５の全体的な構成の例を示す図、図２はパケットＰＴおよびセグメントＳＭの構成の例を示す図、図３は出力トラフィック制御部５３の構成の例を示す図、図４は第一回路グループ１の構成の例を示す図、図５はセグメントＳＭの構成の例を示す図、図６は８ｎバイト並替部１Ｃの例を示す図、図７はセグメントＳＵｋからセグメントＳＶｋへの変換の手順を説明するための図である。
【００１８】
本発明の一実施形態に係るスイッチングノード５は、パケットをスイッチングする装置である。スイッチングノード５の全体的な構成は、前に図１２で説明した従来のスイッチングノード９の全体的な構成と同じであり、図１に示すように、複数の入力トラフィック制御部５１、複数のスイッチファブリック５２、および複数の出力トラフィック制御部５３などからなる。
【００１９】
入力トラフィック制御部５１は、入力トラフィック制御部９１と同様に機能する。つまり、他のノードから送信されてきたパケットＰＴを、図２（ａ）に示すように、所定のサイズの複数のセグメントＳＭに分割する。また、各セグメントＳＭには、セグメントヘッダＳｈが付される。
【００２０】
分割された各セグメントＳＭには、パケットＰＴのペイロードＰｄの一部分が含まれる。以下、この一部分を「ペイロードＳｄ」と記載する。さらに、先頭のセグメントＳＭには、パケットＰＴのパケットヘッダＰｈが含まれる。
【００２１】
ただし、パケットＰＴが所定のサイズ以内である場合は、図２（ｂ）に示すように、そのパケットＰＴが分割されずに１つのセグメントＳＭになることがある。
【００２２】
なお、ネットワーク技術の分野においては、「セグメント」は、ＬＡＮ（Local Area Network）つまりリピータで区切られた範囲のネットワークを意味することがあるが、本実施形態では、パケットＰＴが適宜分割された個々のデータを意味する。
【００２３】
セグメントＳＭのセグメントヘッダＳｈには、少なくとも次の（Ａ−１）〜（Ａ−４）のような属性の情報が含まれている。
（Ａ−１）  セグメントタイプ（Segment Type）：そのセグメントＳＭの種類を示す情報であり、具体的には、図２（ａ）のセグメントＳＭａのような先頭のセグメントであるか、セグメントＳＭｂのような中間のセグメントであるか、セグメントＳＭｃのような末尾のセグメントであるか、または図２（ｂ）のセグメントＳＭのような分割されなかったセグメントであるか、を示す。
（Ａ−２）  セグメントシーケンシャルナンバ（Sequential Number of Segment）：そのセグメントＳＭが先頭から何番目のセグメントであるかを示す。
（Ａ−３）  セグメント長（Segment Length）：そのセグメントＳＭのビット長（サイズ）を示す。
（Ａ−４）  インバウンドカードナンバ（Inbound Card Number）およびポートナンバ（10G Port Number）：そのセグメントＳＭが入力されたインバウンドカードの番号およびポートの番号を示す。これらの番号は、出力トラフィック制御部５３において、２つのセグメントＳＭの元のパケットＰＴが同一か否かを判別するために用いられる。
【００２４】
セグメントＳＭは、入力トラフィック制御部５１によっていずれかのスイッチファブリック５２に振り分けられる。
【００２５】
スイッチファブリック５２も、従来のスイッチファブリック９２と同様に機能する。つまり、入力トラフィック制御部５１から送られてきたセグメントＳＭを、その基であるパケットＰＴの次の送り先であるノードと通信を行う出力トラフィック制御部５３に転送する。
【００２６】
出力トラフィック制御部５３も、従来の出力トラフィック制御部９３と基本的に同様に機能する。ただし、出力トラフィック制御部５３と出力トラフィック制御部９３とは、次の点で相違する。
（Ｂ−１）  従来のスイッチングノード９の出力トラフィック制御部９３はソフトウェア制御によってセグメントＳＭからパケットＰＴへの再組立てを行っているが、スイッチングノード５の出力トラフィック制御部５３はソフトウェア制御によらずハードウェアのみによって再組立てを行う。
（Ｂ−２）  出力トラフィック制御部５３はリングバッファの新たな使用方法を採用している。
【００２７】
出力トラフィック制御部５３を構成する回路のモジュールは、図３に示すように、主に第一回路グループ１、第二回路グループ２、および第三回路グループ３にグループ化される。さらに、出力トラフィック制御部５３には、ＤＲＡＭ４１、リオーダバッファ４２Ａ、トップシーケンシャルナンバ管理メモリ４２Ｂ、タイマ縮退値管理メモリ４２Ｃ、および未送信シーケンシャルナンバ管理メモリ４２Ｄなどの記憶手段が設けられている。
【００２８】
第一回路グループ１は、図４に示すように、セグメントパケットヘッダ抽出部１Ａ、セグメントヘッダ削除部１Ｂ、８ｎバイト並替部１Ｃ、セグメントＣＲＣ生成部１Ｄ、ＤＲＡＭ−ＲＥＱ生成部１Ｅ、ＡＣＫ受信ＦｉＦｏバッファ１Ｆ、ヘッダ情報変換部１Ｇ、待合せＦｉＦｏバッファ１Ｈ、および待合せ処理部１Ｊなどの回路のモジュールによって構成される。
【００２９】
以下、ある１つのセグメントＳＭｋが第一回路グループ１に入力された場合を例に、第一回路グループ１の各部の動作を説明する。
【００３０】
セグメントパケットヘッダ抽出部１Ａは、セグメントＳＭｋの中からセグメントヘッダＳｈを抽出する。セグメントＳＭｋが先頭のセグメントまたは非分割のセグメントである場合は、パケットヘッダＰｈをも抽出する。
【００３１】
セグメントパケットヘッダ抽出部１Ａには、セグメントＳＭｋのほか、セグメントの先頭（ＳｏＳ：Start Of Segment））のタイミングを示す信号、セグメントの末尾（ＥｏＳ：End Of Segment）のタイミングを示す信号、およびエラー（ＥＲＲ）を示す信号が入力される。セグメントパケットヘッダ抽出部１Ａは、これらの信号に基づいてセグメントヘッダＳｈのみを抽出しまたはセグメントヘッダＳｈおよびパケットヘッダＰｈの両方を抽出する。
【００３２】
セグメントヘッダ削除部１Ｂは、セグメントＳＭｋからセグメントヘッダＳｈを削除する処理を行う。セグメントヘッダＳｈを削除することによって、セグメントＳＭｋの一部が欠落する。例えば、第一回路グループ１の基本処理単位が１６ビットであり、セグメントヘッダＳｈのサイズ（ビット長）が１５バイト以下である場合は、図５に示すように、セグメントＳＭｋの先頭の１６ビットデータのうちの数ビットが欠落する。以下、セグメントヘッダＳｈが削除されたセグメントＳＭｋを「セグメントＳＵｋ」と記載する。
【００３３】
８ｎバイト並替部１Ｃは、図６のように多数のフリップフロップによって構成されている。８ｎバイト並替部１Ｃによると、図７に示すように、セグメントＳＵｋの中のＮ番目のバイトデータ（１６ビットデータ）のうちの１３〜１６番目のビットデータを、（Ｎ＋１）番目の１〜１２番目のビットデータと組み合わせ（図７（ｂ））、前者と後者との位置を入れ替えることによって（図７（ｃ））、セグメントＳＵｋを整える。以下、８ｎバイト並替部１Ｃによって整えられたセグメントＳＵｋを「セグメントＳＶｋ」と記載する。
【００３４】
セグメントＣＲＣ生成部１Ｄは、セグメントＳＶｋのＣＲＣ（Cyclic Redundancy Check）用のデータ（以下、「検査用データＫＤ」と記載する。）を生成する。ＤＲＡＭ−ＲＥＱ生成部１Ｅは、セグメントＳＶｋの書込みの要求および書込みの番地を示すデータＫＹを生成する。
【００３５】
そして、セグメントＳＶｋ、検査用データＫＤ、および書込要求データＫＹがＤＲＡＭ４１のコントローラに出力され、セグメントＳＶおよび検査用データＫＤが書込要求データＫＹに基づいてＤＲＡＭ４１に書き込まれる。
【００３６】
ＡＣＫ受信ＦｉＦｏバッファ１Ｆは、ＤＲＡＭ４１へのセグメントＳＶｋの書込みの完了を示すデータ（以下、「ＡＣＫデータＡＤ」と記載する。）をＤＲＡＭ４１のコントローラから取得し、これを一時的に記憶する。ＡＣＫ受信ＦｉＦｏバッファ１Ｆは、ＦｉＦｏ（First-in First-out）の方式を採用している。
【００３７】
ヘッダ情報変換部１Ｇは、後に順次説明する第二回路グループ２における処理のために必要な情報のみが示されるように、セグメントＳＭｋのセグメントヘッダＳｈの変換を行う。セグメントＳＭｋにパケットヘッダＰｈが含まれる場合は、これについても同様に、必要な情報のみが示されるように変換の処理を行う。つまり、セグメントヘッダＳｈおよびパケットヘッダＰｈに含まれる情報の選別を行う。以下、変換の処理がなされたセグメントヘッダＳｈおよびパケットヘッダＰｈをそれぞれ「セグメントヘッダＳｊ」および「パケットヘッダＰｊ」と記載する。
【００３８】
さらに、ヘッダ情報変換部１Ｇは、ＤＲＡＭ−ＲＥＱ生成部１ＥがＤＲＡＭ４１のコントローラに対して指定した番地つまりセグメントＳＵｋが書き込まれた番地（以下、「ライトポインタＷＰ」と記載する。）を取得する。
【００３９】
そして、ヘッダ情報変換部１Ｇは、セグメントＳＭｋ（ＳＵｋ）のセグメントヘッダＳｊ、パケットヘッダＰｊ、およびライトポインタＷＰを待合せＦｉＦｏバッファ１Ｈに一時的に記憶させる。待合せＦｉＦｏバッファ１Ｈは、ＦｉＦｏの方式を採用している。
【００４０】
待合せ処理部１Ｊは、ＡＣＫ受信ＦｉＦｏバッファ１ＦからＡＣＫデータＡＤがＦｉＦｏ方式で出力されるごとに、待合せＦｉＦｏバッファ１Ｈに記憶されているセグメントヘッダＳｊ、パケットヘッダＰｊ、およびライトポインタＷＰをＦｉＦｏ方式で第二回路グループ２に対して出力する。これにより、セグメントＳＵｋがＤＲＡＭ４１に書き込まれた後のタイミングで、セグメントヘッダＳｊ、パケットヘッダＰｊ、およびライトポインタＷＰを第二回路グループ２に対して出力することができる。以下、これらのセグメントヘッダＳｊ、パケットヘッダＰｊ、およびライトポインタＷＰによって構成されるデータを「セグメント属性データＳＺ」と記載する。
【００４１】
セグメントＳＭｋ以外のセグメントＳＭも、同様に、第一回路グループ１によって処理される。そして、各セグメントＳＭのセグメント属性データＳＺが生成される。
【００４２】
図８は第二回路グループ２の構成の例を示す図、図９はリオーダ処理部２Ａの構成の例を示す図、図１０はリオーダバッファ４２Ａの構成および監視区間Ｔａおよび受入区間Ｔｂの移動を説明するための図である。
【００４３】
図８に示すように、図３の第二回路グループ２は、リオーダ処理部２Ａ、巡回処理部２Ｂ、リアセンブル処理部２Ｃ、および転送処理部２Ｄなどによって構成される。
【００４４】
リオーダ処理部２Ａは、図９に示すように、タイマＴＧ部２Ａ１、管理テーブル読出演算部２Ａ２、受入可否判定部２Ａ３、リオーダバッファ書込部２Ａ４、および管理テーブル更新部２Ａ５などによって構成される。
【００４５】
タイマＴＧ部２Ａ１は、各部位から条件信号を取得し、それに基づいて各部位に対して処理のタイミングの信号を送出する。例えば、第一回路グループ１の待合せ処理部１Ｊから待合せ処理の完了の信号を取得すると、セグメント属性データＳＺの読出しの要求の信号を第一回路グループ１の読出し待合せ処理部１Ｊに対して送出する。
【００４６】
管理テーブル読出演算部２Ａ２は、リオーダ処理部２Ａの各部における処理に必要なデータを各バッファまたは各メモリから読み出す。
【００４７】
受入可否判定部２Ａ３は、第一回路グループ１から送出されてきたセグメント属性データＳＺを受け入れることが可能であるか否かを判定する。例えば、そのセグメント属性データＳＺの元のセグメントＳＭにエラーが含まれる旨の信号が入力された場合は、受け入れないと判定する。そのような信号が入力されていない場合は、受け入れると判定する。
【００４８】
リオーダバッファ書込部２Ａ４は、第一回路グループ１から送出されてきたセグメント属性データＳＺを受入可能であると受入可否判定部２Ａ３によって判別された場合に、そのセグメント属性データＳＺをリオーダバッファ４２Ａに書き込む。リオーダバッファ４２Ａは、図１０に示すようなリングバッファである。
【００４９】
セグメント属性データＳＺがリオーダバッファ４２Ａのどの位置に書き込まれるかは、そのセグメント属性データＳＺを構成するセグメントヘッダＳｊに示されるセグメントシーケンシャルナンバおよびポート番号などによって一意に決まる。
【００５０】
具体的には、リオーダバッファ書込部２Ａ４は、同一のパケットＰＴから分割された各セグメントＳＭのセグメント属性データＳＺ同士が隣り合い、かつ、セグメントシーケンシャルナンバの順に並ぶように、セグメント属性データＳＺをリオーダバッファ４２Ａに書き込む。どのセグメント属性データＳＺ同士が同一のパケットＰＴから分割されたセグメントＳＭに対応するものであるかは、それぞれのセグメント属性データＳＺのポート番号によって検知することができる。
【００５１】
リオーダバッファ４２Ａは、複数のセクションに分かれている。１つのセクションに１つのセグメント属性データＳＺが記憶される。また、リオーダバッファ４２Ａには、連続する複数のセクションからなる２つの区間、監視区間Ｔａおよび受入区間Ｔｂが定義されている。
【００５２】
監視区間Ｔａは、後述する組立の処理の際に使用するセグメント属性データＳＺの書込みを監視する区間である。
【００５３】
受入区間Ｔｂは、第一回路グループ１から送られてきたセグメント属性データＳＺを受け入れる区間を示す。つまり、リオーダバッファ書込部２Ａ４は、送られてきたセグメント属性データＳＺを書き込むべき位置が受入区間Ｔｂの外である場合は、そのセグメント属性データＳＺを、リオーダバッファ４２Ａに書き込むことなく廃棄する。
【００５４】
監視区間Ｔａおよび受入区間Ｔｂは、長さは不変であるが位置が可変である。監視区間Ｔａおよび受入区間Ｔｂの先頭の位置は同じであるが、監視区間Ｔａのほうが受入区間Ｔｂよりも長い。ここで、監視区間Ｔａおよび受入区間Ｔｂの位置の変更について説明する。
【００５５】
図１０（ａ）において、監視区間Ｔａの最後尾のセクションには、「＃１−２」のセグメント属性データＳＺが格納されている。
【００５６】
次に、例えば、図１０（ｂ）に示すように、このセグメント属性データＳＺよりも前のセクションに別のセグメント属性データＳＺ（「＃１−１」のセグメント属性データＳＺ）が格納された場合は、監視区間Ｔａおよび受入区間Ｔｂの位置の変更は行わない。
【００５７】
一方、例えば、図１０（ｃ）に示すように、このセグメント属性データＳＺよりも後ろのセクションに別のセグメント属性データＳＺ（「＃１−３」のセグメント属性データＳＺ）が格納された場合は、監視区間Ｔａの最後尾が当該別のセグメント属性データＳＺのセクションになるように、監視区間Ｔａの位置を変更する。これに合わせて、受入区間Ｔｂも変更する。
【００５８】
なお、図３のトップシーケンシャルナンバ管理メモリ４２Ｂには、先頭のセグメントＳＭのセグメントシーケンシャルナンバが記憶される。したがって、セグメントＳＭが先頭のセグメントまたは非分割のセグメントであれば、セグメントＳＭのセグメントヘッダＳｈに示されるセグメントシーケンシャルナンバが記憶される。先頭のセグメントでも非分割のセグメントでもなければ、同じパケットＰＴから分割された他のセグメントＳＭのうちの先頭のセグメントＳＭのセグメントヘッダＳｈに示されるセグメントシーケンシャルナンバが記憶される。
【００５９】
タイマ縮退値管理メモリ４２Ｃは、セグメントＳＭが第一回路グループ１から第二回路グループ２に入力された時刻を記憶する。
【００６０】
未送信シーケンシャルナンバ管理メモリ４２Ｄは、次のノードに未だ送信（中継）していないパケットＰＴのセグメントＳＭのセグメントシーケンシャルナンバを記憶する。
【００６１】
トップシーケンシャルナンバ管理メモリ４２Ｂ、タイマ縮退値管理メモリ４２Ｃ、および未送信シーケンシャルナンバ管理メモリ４２Ｄに記憶されたデータは、後述する各部の処理において適宜参照される。
【００６２】
図９に戻って、管理テーブル更新部２Ａ５は、セグメント属性データＳＺの受入が可能であるか否かが受入可否判定部２Ａ３によって判定されるごとに、適宜、各バッファまたは各メモリに設けられているテーブルの更新を行う。
【００６３】
巡回処理部２Ｂは、同一のパケットＰＴから分割されたすべてのセグメントＳＭのセグメント属性データＳＺがリオーダバッファ４２Ａの監視区間Ｔａに書き込まれたか否かを、監視区間Ｔａを巡回的に監視する。
【００６４】
リアセンブル処理部２Ｃは、同一のパケットＰＴから分割されたすべてのセグメントＳＭのセグメント属性データＳＺをリオーダバッファ４２Ａから呼び出し、セグメントシーケンシャルナンバ順に並べることによって、パケットの再組立を行う。ただし、セグメント属性データＳＺにはペイロードが含まれていないので、この段階では、このパケットには、ペイロードが含まれない。以下、リアセンブル処理部２Ｃによって組み立てられたパケットをパケットＰＳと記載する。
【００６５】
転送処理部２Ｄは、リアセンブル処理部２Ｃによって組み立てられたパケットＰＳを第三回路グループ３に転送（送出）する。
【００６６】
第三回路グループ３は、パケットＰＳに、ＤＲＡＭ４１に記憶されているペイロードＰｄを加えることによって、パケットＰＴを再生成する。ペイロードＰｄがＤＲＡＭ４１のどの番地に記憶されているのかは、セグメント属性データＳＺのライトポインタＷＰに示されている。そして、このパケットＰＴは、次のスイッチングノードなどに送信される。
【００６７】
本実施形態によると、リングバッファであるリオーダバッファ４２Ａに監視区間Ｔａを定め、パケットＰＴの再組立に必要なデータ（セグメント属性データＳＺ）が揃ったか否かの監視を監視区間Ｔａに対して行った。よって、監視に係る時間を短縮し再組立を高速に行うことができる。
【００６８】
しかも、新たなセグメント属性データＳＺが監視区間Ｔａの最後尾よりも前に格納されたときには監視区間Ｔａを移動させず、最後尾よりも後ろに格納されたときに、最後尾がその格納場所（セクション）になるように監視区間Ｔａを移動させた。これにより、監視を一層効率的に行うことができる。
【００６９】
さらに、受入区間Ｔｂを定め、受入区間Ｔｂ外のセグメント属性データＳＺを破棄した。これにより、遅延して届いたセグメント属性データＳＺを上手く破棄することができる。
【００７０】
本実施形態では、図１０で説明した通り、受入区間Ｔｂには監視区間Ｔａの全部分が含まれていたが一部分のみが含まれるようにしてもよい。例えば、監視区間Ｔａの先頭から所定の個数のセクションは、受入区間Ｔｂに含めないようにしてもよい。この場合は、受入区間Ｔｂよりも監視区間Ｔａのほうが長くてもよい。ただし、受入区間Ｔｂの最後尾は監視区間Ｔａの最後尾よりも後ろであることが望ましい。
【００７１】
その他、スイッチングノード５の全体または各部の構成、処理内容、処理順序、データベースの構成などは、本発明の趣旨に沿って適宜変更することができる。
【図面の簡単な説明】
【００７２】
【図１】スイッチングノードの全体的な構成の例を示す図である。
【図２】パケットおよびセグメントの構成の例を示す図である。
【図３】出力トラフィック制御部の構成の例を示す図である。
【図４】第一回路グループの構成の例を示す図である。
【図５】セグメントの構成の例を示す図である。
【図６】８ｎバイト並替部の例を示す図である。
【図７】セグメントＳＵｋからセグメントＳＶｋへの変換の手順を説明するための図である。
【図８】第二回路グループの構成の例を示す図である。
【図９】リオーダ処理部の構成の例を示す図である。
【図１０】リオーダバッファの構成および監視区間および受入区間の移動を説明するための図である。
【図１１】従来のスイッチングノードの機能の例を説明するための図である。
【図１２】従来のスイッチングノードの構成およびパケットの取扱いの例を示す図である。
【符号の説明】
【００７３】
５  スイッチングノード
５１  入力トラフィック制御部
５２  スイッチファブリック
５３  出力トラフィック制御部
２Ａ３  受入可否判定部
２Ａ４  リオーダバッファ書込部
４２Ａ  リオーダバッファ
【図１】
2009171157.tif 000003
【図２】
2009171157.tif 000004
【図３】
2009171157.tif 000005
【図４】
2009171157.tif 000006
【図５】
2009171157.tif 000007
【図６】
2009171157.tif 000008
【図７】
2009171157.tif 000009
【図８】
2009171157.tif 000010
【図９】
2009171157.tif 000011
【図１０】
2009171157.tif 000012
【図１１】
2009171157.tif 000013
【図１２】
2009171157.tif 000014