(57)【要約】【課題】入力側回線、出力側回線の回線速度が高速な場合にも、高速化が困難なパケット処理を低速に抑えながら大容量のパケットをスイッチング可能なスイッチング・システムを提供する。【解決手段】入力側回線から到着したパケットを、該パケットに付加されている情報に基づく演算値と出力側回線毎に設定したパケット・フローの振り分け区分に従って複数のパケット・スイッチに振り分けてパケット・スイッチングし、出力側回線毎にパケットを多重化して送出するパケット・スイッチング・システムであって、該入力側回線から到着したパケットの、パケット・スイッチ及び出力側回線毎の負荷状態を観測した結果に応じて、該パケット・フローの振り分け区分を更新する。【選択図】　　　図１
2004064619.tif 000002
【特許請求の範囲】
【請求項１】
入力側回線から到着したパケットを、該パケットに付加されている情報に基づく演算値と出力側回線毎に設定したパケット・フローの振り分け区分に従って複数のパケット・スイッチに振り分けてパケット・スイッチングし、出力側回線毎にパケットを多重化して送出するパケット・スイッチング・システムであって、
同一の付加情報を持つパケット・フローを同一のパケット・スイッチに振り分け、
該入力側回線から到着したパケットの、パケット・スイッチ及び出力側回線毎の負荷状態を観測した結果に応じて、該パケット・フローの振り分け区分を更新する
ことを特徴とするスイッチング・システム。
【請求項２】
入力側回線から到着したパケットを、該パケットに付加されている情報に基づく演算値と出力側回線毎に設定したパケット・フローの振り分け区分に従って複数のパケット・スイッチに振り分けてパケット・スイッチングし、出力側回線毎にパケットを多重化して送出するスイッチング・システムであって、
該パケット・スイッチから到着したパケットの、パケット・スイッチ及び入力側回線毎の負荷状態を観測した結果に応じて該パケット・フローの振り分け区分を更新すると共に、該パケット・スイッチに対して該負荷状態を観測した結果を挿入したパケット・フローを送出する
ことを特徴とするスイッチング・システム。
【請求項３】
請求項１又は請求項２のいずれかに記載のスイッチング・システムであって、
パケット・スイッチに対して、該パケット・スイッチの状態を監視するための監視パケットを挿入したパケット・フローを送出し、該パケット・スイッチから到着したパケット・フローに挿入されている該監視パケットの有無による該パケット・スイッチの障害・未実装情報によって該パケット・フローの振り分け比を更新する
ことを特徴とするスイッチング・システム。
【請求項４】
請求項１乃至請求項３のいずれかに記載のスイッチング・システムのいずれかにおいて、
入力側回線から到着したパケットに付加されている情報に基づく演算値を２つ求め、
一方の演算値によって当該パケットを出力するパケット・スイッチのポートを指定し、
もう一方の演算値によって当該パケットを出力する出力側ポートを指定する
ことを特徴とするスイッチング・システム。
【請求項５】
入力側回線から到着した同期システムのデータを、同期システムにおけるタイム・スロット毎にパケット化し、
同期システムの同一タイム・スロットに対応するパケットを同一のパケット・スイッチに対して送出してパケット・スイッチングし、
出力回線毎にパケット化したデータから同期システムのデータに変換して送出する
構成を備える
ことを特徴とするスイッチング・システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、スイッチング・システムに係り、特に、入力側回線、出力側回線の回線速度が高速な場合にも、高速化が困難なパケット処理を低速に抑えながら大容量のパケットをスイッチング可能なスイッチング・システムに関する。
インタネット・ユーザの急激な増加並びにＣＡＴＶ（Ｃｏｍｍｕｎｉｔｙ　Ａｎｔｅｎｎａ　Ｔｅｌｅ−　ｖｉｓｉｏｎ）やＤＳＬ（Ｄｉｇｉｔａｌ　Ｓｕｂｓｃｒｉｂｅｒ　Ｌｉｎｅ）等の広帯域アクセス回線の普及に伴って、急増するパケット・トラフィック及びＳＴＭ（Ｓｙｎｃｈｒｏｎｏｕｓ　ＴｒａｎｓｆｅｒＭｏｄｅ）　トラフィックを効率的に処理する大容量バックボーン・ネットワークの構築が急務となっている。該バックボーン・ネットワークは、ルータ、クロス・コネクト、ＡＤＭ（Ａｄｄ　Ｄｒｏｐ　Ｍｕｌｔｉｐｌｅｘｅｒ）に代表される様々なネットワーク機器によって構成されているが、トラフィックの増加に備えてネットワーク機器の大容量化が進められている。
【０００２】
特に、急激な伸長を見せているインタネット・トラフィックに対応するために、ＩＰ／ＭＰＬＳ（ＩＰ：Ｉｎｔｅｒｎｅｔ　Ｐｒｏｔｏｃｏｌ　、ＭＰＬＳ：Ｍｕｌｔｉ−Ｐｒｏｔｏｃｏｌ
Ｌａｖｅｌ　Ｓｗｉｔｃｈｎｇ）ルータの大容量化が必須である。そして、インタネットにおいては伝送情報はパケット化されている。
このようなルータにおいて大容量化を図るひとつの方法として、データ伝送速度の高速化があげられるが、高速データ伝送をサポートするには高速な信号終端処理と高速なパケット処理が必要になる。このうち、信号終端処理の高速化は比較的容易に実現可能であるが、パケット処理自体の高速化は後述する如く非常に困難である。
【０００３】
従って、回線速度が高速な場合にも、高速化が困難なパケット処理を低速に抑えながら大容量のスイッチングが可能なスイッチング・システムの実現が強く望まれている。
更に、情報をパケット化せずに同期システムによって伝送する技術も既に普及している。従って、同期システムで伝送される情報とパケット化された情報とを共通のスイッチング・システムによってスイッチングすることも望まれている。
【０００４】
【従来の技術】
図１６は、従来の一般的なパケット・スイッチング・システムである。
図１６において、１−３、１−３ｃは入力側回線インタフェースで、それぞれ、物理層終端部１１及びパケット処理部１４を備えている。
２−３はパケット・スイッチである。
【０００５】
３−３、３−３ｃは出力側回線インタフェースで、それぞれ、物理層終端部３１を備えている。
物理層終端部１１において物理層を終端し、パケット処理部１４においてパケットが到着する度に到着したパケットのＩＰアドレス或いはＭＰＬＳラベルを元に出力先の回線インタフェースを導き、その結果に従ってパケット・スイッチ２−３において所望の出力側回線インタフェースにパケットを送出する。
【０００６】
ここで、回線のデータ伝送速度が高速な場合には、１パケット当たりの処理時間が短いために、高速なパケット処理機能が必要である。先にも記載した如く、パケット処理の高速化は困難であるので、様々なアーキテクチャのパケット・スイッチング・システムが検討されている。
図１７は、従来のビット・スライス方式のパケット・スイッチング・システムである。
【０００７】
図１７において、１−４、１−４ｃは入力側回線インタフェースで、それぞれ、物理層終端部１１及びビット・スライス部１５を備えている。尚、ビット・スライス部１５における並列数をαとする。
２−４は並列データのビット＃０をスイッチングするパケット・スイッチ、２−４（α−１）は並列データのビット＃（α−１）をスイッチングするパケット・スイッチである。
【０００８】
３−４、３−４ｃは出力側回線インタフェースで、それぞれ、ビット・マージ部３４及び物理層終端部３２を備えている。
ビット・スライス方式のパケット・スイッチング・システムでは、パケットを並列に伝送されるビット毎に分け、それぞれのビットに出方路の番号を付加してビット毎にスイッチングするアーキテクチャである。
【０００９】
このアーキテクチャは、各々のビット・スライス部の各々の出力が直列信号であるためにパケット・スイッチの小型化に適しているが、各ビット毎に出方路番号というオーバ・ヘッド情報を付加する必要があるために、高いスループットを確保するためにはパケット・スイッチの高速化が必須となる。又、各々の出力側回線インタフェースで分割した各ビット毎に同期をとり、元のパケットに戻す制御が必要になるので、制御が複雑になるという欠点をがある。
【００１０】
又、パケット・データをビットに分割するのではなく、各パケットを直列に転送してスイッチングするパケット・スライス方式のパケット・スイッチング・システムがある。
図１８は、従来のパケット・スライス方式のパケット・スイッチング・システム（その１）である。
【００１１】
図１８において、１−５、１−５ｃは入力側回線インタフェースで、それぞれ、物理層終端部１１、パケット・スライス部１６及びパケットをスライスするためのスケジューリングを行なうスケジューラ１７を備えている。尚、パケット・スライス部１６の入力側に入力バッファが備えられている。
２−５、２−５ｃは、パケット・バッファを持たないクロスバー・スイッチである。
【００１２】
３−５及び３−５ｃは出力側回線インタフェースで、それぞれ、パケット多重部３１ａ及び物理層終端部３２を備えている。
この方式のパケット・スイッチング・システムでは、パケット・バッファを持たないクロスバー・スイッチによってスイッチングを行なうので、パケットを複数のスイッチに振り分けても各スイッチの出側においてパケットの順序が入れ替わることはないが、クロスバー・スイッチにおいてパケットの待ち合わせが不可能なために、複数のパケット・スライス部から同一のスイッチに同時にパケットが転送されないように、スケジューラ１７において高度なスケジューリング処理を行なう必要があり、高速化が困難である。
【００１３】
図１９は、従来のパケット・スライス方式のパケット・スイッチング・システム（その２）である。
図１９において、１−６、１−６ｃは入力側回線インタフェースで、それぞれ、物理層終端部１１及びパケット・スライス部１６ａを備えている。
２−６、２−６ｃはパケット・スイッチである。
【００１４】
３−６、３−６ｃは出力側回線インタフェースで、それぞれ、パケットの順序を入れ替えるパケット順序入れ替え部３５及び物理層終端部３２を備えている。
この方式のパケット・スイッチング・システムでは、パケット・バッファがパケット・スイッチ２−６及び２−６ｃに配置されているために生ずる、パケット・スイッチ２−６及び２−６ｃにおけるパケット待ち合わせにより、パケット・スイッチ間でパケットの順序入れ替えが発生するため、出力側回線インタフェース３−６及び３−６ｃにおけるパケット順序入れ替え部３５においてパケットの順序保証を行なう必要があり、やはり高速処理が困難である。
【００１５】
【発明が解決しようとする課題】
即ち、図１６の一般的なパケット・スイッチング・システム、図１７のビット・スライス方式のパケット・スイッチング・システム、図１８及び図１９のパケット・スライス方式のパケット・スイッチング・システムのいずれにおいても、入力側回線と出力側回線におけるデータ伝送速度が高速になる程、物理層での高速な信号伝送と高速なパケット処理が必要になる。
【００１６】
さて、近年の光デバイスの高速化や大規模集積回路を構成する能動デバイスの高速化により、物理層における伝送処理については高速化が比較的順調に進んでいる。
しかし、パケット処理については、上記のビット同期、スケジューリング、パケット順序保証等の複雑な処理が必要なために高速化が困難であり、高速なパケット・データ伝送の実現にはパケット処理を低速化しつつスループットを確保することが鍵となる。
【００１７】
又、データ伝送には同期システムとパケット伝送システムとがあるが、同期システムのデータのスイッチングとパケット伝送システムのデータを共通にスイッチングできることも重要である。
本発明は、高速回線を収容するパケット・スイッチング・システムを実現する際に問題になっていた高速パケット処理を緩和し、比較的低速なパケット・スイッチを用いて高速回線を収容して大容量のパケット・スイッチングが可能なスイッチング・システム、及び、同期システムのデータとパケット・データとを共通にスイッチング可能なスイッチング・システムを提供することを目的とする。
【００１８】
【課題を解決するための手段】
第一の発明は、入力側回線から到着したパケットを、該パケットに付加されている情報に基づく演算値と出力側回線毎に設定したパケット・フローの振り分け区分に従って複数のパケット・スイッチに振り分けてパケット・スイッチングし、出力側回線毎にパケットを多重化して送出するパケット・スイッチング・システムであって、同一の付加情報を持つパケット・フローを同一のパケット・スイッチに振り分け、該入力側回線から到着したパケットの、パケット・スイッチ及び出力側回線毎の負荷状態を観測した結果に応じて、該パケット・フローの振り分け区分を更新することを特徴とするスイッチング・システムである。
【００１９】
第一の発明のスイッチング・システムは、同一の付加情報を持つパケット・フローを同一のパケット・スイッチに振り分け、該入力側回線から到着したパケットの、パケット・スイッチ及び出力側回線毎の負荷状態を観測した結果に応じて、該パケット・フローの振り分け区分を更新するので、該パケット・フローの振り分け区分は変化する負荷状態に対応するものとなり、該パケット・スイッチの負荷を平準化することが可能になり、スイッチング・システムにおけるパケット処理の低速化が可能になる。又、同一の付加情報を持つパケット・フローが同一のパケット・スイッチを経由するため、出力側回線においてパケットの順序を入れ替える必要がない。
【００２０】
第二の発明は、入力側回線から到着したパケットを、該パケットに付加されている情報に基づく演算値と出力側回線毎に設定したパケット・フローの振り分け区分に従って複数のパケット・スイッチに振り分けてパケット・スイッチングし、出力側回線毎にパケットを多重化して送出するスイッチング・システムであって、該パケット・スイッチから到着したパケットの、パケット・スイッチ及び入力側回線毎の負荷状態を観測した結果に応じて該パケット・フローの振り分け区分を更新すると共に、該パケット・スイッチに対して該負荷状態を観測した結果を挿入したパケット・フローを送出することを特徴とするスイッチング・システムである。
【００２１】
第二の発明のスイッチング・システムは、該パケット・スイッチから到着したパケットの、パケット・スイッチ及び入力側回線毎の負荷状態を観測した結果に応じて該パケット・フローの振り分け区分を更新すると共に、該パケット・スイッチに対して該負荷状態を観測した結果を挿入したパケット・フローを送出するので、該パケット・フローの振り分け区分は変化する負荷状態に対応するものとなり、該パケット・スイッチの負荷を平準化することが可能になり、スイッチング・システムにおけるパケット処理の低速化が可能になる。
【００２２】
第三の発明は、第一の発明又は第二の発明のいずれかのスイッチング・システムであって、パケット・スイッチに対して、該パケット・スイッチの状態を監視するための監視パケットを挿入したパケット・フローを送出し、該パケット・スイッチから到着したパケット・フローに挿入されている該監視パケットの有無による該パケット・スイッチの障害・未実装情報によって該パケット・フローの振り分け比を更新することを特徴とするスイッチング・システムである。
【００２３】
第三の発明のスイッチング・システムは、該パケット・スイッチに対して、該パケット・スイッチの状態を監視するための監視パケットを挿入したパケット・フローを送出し、該パケット・スイッチから到着したパケット・フローに挿入されている該監視パケットの有無による該パケット・スイッチの障害・未実装情報によって該パケット・フローの振り分け比を更新するので、該パケット・フローの振り分け区分は変化する負荷状態に対応するものとなり、該パケット・スイッチの負荷を平準化することが可能になり、スイッチング・システムにおけるパケット処理の低速化が可能になる。
【００２４】
第四の発明は、第一乃至第三のスイッチング・システムのいずれかにおいて、入力側回線から到着したパケットに付加されている情報に基づく演算値を２つ　求め、一方の演算値によって当該パケットを出力するパケット・スイッチのポートを指定し、もう一方の演算値によって当該パケットを出力する出力側回線又は出力側論理ポートを指定することを特徴とするスイッチング・システムである。
【００２５】
第四の発明のスイッチング・システムは、入力側回線から到着したパケットに付加されている情報に基づく演算値を２つ求め、一方の演算値によって当該パケットを出力するパケット・スイッチのポートを指定し、もう一方の演算値によって当該パケットを出力する出力側回線又は出力側論理ポートを指定するので、出力側の回線容量を任意に設定することができる。
【００２６】
第五の発明は、入力側回線から到着した同期システムのデータを、同期システムにおけるタイム・スロット毎にパケット化し、同期システムの同一タイム・スロットに対応するパケットを同一のパケット・スイッチに対して送出してパケット・スイッチングし、出力回線毎にパケット化したデータから同期システムのデータに変換して送出する構成を備えることを特徴とするスイッチング・システムである。
【００２７】
第五の発明のスイッチング・システムは、入力側回線から到着した同期システムのデータを、同期システムにおけるタイム・スロット毎にパケット化し、同期システムの同一タイム・スロットに対応するパケットを同一のパケット・スイッチに対して送出してパケット・スイッチングし、出力回線毎にパケット化したデータから同期システムのデータに変換して送出するので、同期システムのデータのスイッチングをパケット・スイッチングの技術によって行なうことができる。従って、この発明の技術と第一乃至第四の発明のいずれかの技術を組み合わせることによって、同期データとパケット・データを共通のスイッチング技術によってスイッチングすることが可能になる。
【００２８】
【発明の実施の形態】
図１は、本発明のスイッチング・システムの第一の実施の形態である。
図１において、１−１、１−１ｃは入力側回線インタフェース、２−１乃至２−１ｃはパケット・スイッチ、３−１、３−１ｃは出力側回線インタフェースである。
【００２９】
ここで、入力側回線インタフェースの数と出力側回線インタフェースの数が４で、各々のパケット・スイッチのスイッチ・サイズが４×４である例を示している。しかし、本発明の技術は入力側回線インタフェース及び出力側回線インタフェースの数４及びスイッチ・サイズ４×４には限定されない。又、図１においては、図の簡略化のために、入力側回線インタフェースと出力側回線インタフェースは、それぞれ、４つの内２つだけを図示している。
【００３０】
尚、図１では、パケット・スイッチを中心に、一方の側（左側）に入力側回線インタフェースを図示し、もう一方の側（右側）に出力側回線インタフェースを図示しているが、所謂４線でのパケット伝送を行なうので、全ての入力側回線インタフェースと全ての出力側回線インタフェースが独立な訳ではなく、１つの方路について１つの入力側回線インタフェースと１つの出力側回線インタフェースが対になっていることに注意されたい。
【００３１】
そして、入力側回線インタフェース１−１、１−１ｃは、それぞれ、下位レイヤ・プロトコルの信号を終端する物理層終端部１１及び同一出力側回線宛のパケットを複数のパケット・スイッチ２−１乃至２−１ｃに分散させるパケット・フロー振り分け部パケット・フロー振り分け部１２を備えている。
又、出力側回線インタフェース３−１、３−１ｃは、それぞれ、各々のパケット・スイッチから入力されるパケットを多重化するパケット多重部３１及びパケット多重部３１の出力を受けて下位レイヤ・プロトコルの信号を形成して出力側回線に送出する物理層終端部３２を備えている。
【００３２】
更に、複数あるパケット・スイッチは互いに独立である。
図１の構成の特徴は、処理の高速化が比較的容易な物理層では高速処理をさせると共に、入力側回線インタフェースに設けたパケット・フロー振り分け部によって同一出力側回線宛のパケットを複数のパケット・スイッチ２−１乃至２−１ｃに分散させて比較的高速化が困難なパケット処理の速度を低下させる点にある。これによって、パケット処理は低速でも、高速な回線インタフェースを収容できることになり、大容量のパケット・スイッチング・システムを構成することができる。
【００３３】
以降、パケット・フロー振り分け部の構成及びパケット・フロー振り分け処理について説明する。
図２は、図１の構成における入力側回線インタフェースに配置されるパケット・フロー振り分け部の基本構成である。
図２において、１２−１は、到着したパケットを発信した装置のＩＰソース・アドレス（Ｓｏｕｒｃｅ　Ａｄｄｒｅｓｓ）　、当該パケットを受信すべき装置のＩＰデスティネーション・アドレス（Ｄｅｓｔｉｎａｔｉｏｎ　Ａｄｄｒｅｓｓ）及びポート番号を用いてハッシュ演算（Ｈａｓｈ）　を行なってハッシュ演算値を求めると共に、ＩＰソース・アドレスとＩＰデスティネーション・アドレスの組み合わせ又はＭＰＬＳラベルから出力側回線の番号を求めるハッシュ演算部である。
【００３４】
１２−２は、該ハッシュ演算値と出力側回線番号によって振り分けテーブルを参照して当該パケットを出力すべきパケット・スイッチ番号を決定すると共に、負荷分布に対応して振り分けテーブルを更新する振り分け判定・調整部である。尚、振り分け判定・調整部１２−２のブロックの中に記載しているテーブルが、出力側回線毎に各々のパケット・スイッチへの振り分け配分を保存している振り分けテーブルである。
【００３５】
１２−３は、負荷分布を測定して振り分け判定・調整部に通知する負荷観測部である。尚、負荷観測部１２−３のブロックの中に記載しているテーブルが、パケット・スイッチ毎、出力側回線毎に測定した負荷分布を保存している負荷分布テーブルである。
１２−４は、振り分け判定・調整部１２−２が出力するパケット・スイッチ番号に従って、到着してハッシュ演算１２−１を通過してくるパケットを複数のパケット・スイッチに分配する分配部、１２−５は、各々のパケット・スイッチ毎に設けられているパケット・バッファである。そして、パケット・バッファの各々の出力が各々のパケット・スイッチに導かれる。
【００３６】
振り分け判定・調整部１２−２が保存している振り分けテーブルは、図２の如く、出力側回線毎にハッシュ演算値の範囲によって経由するパケット・スイッチの番号を指定できるようになっている。従って、振り分け判定・調整部１２−２は、ハッシュ演算部１２−１が出力する出力側回線番号によって出力側回線を選択し、選択した出力側回線についてハッシュ演算部１２−１が出力するハッシュ演算値がどの範囲に入っているかを検索してパケットを出力するパケット・スイッチを決定する。
【００３７】
今、出力側回線＃３が選択され、ハッシュ演算値が６５０００であった場合、出力側回線＃３においてハッシュ演算値６５０００がどのパケット・スイッチを指定する範囲にあるかを判定し、例えばハッシュ演算値６５０００がパケット・スイッチ＃３の範囲の値であった場合、パケット・スイッチ＃３へ出力するために、パケット・スイッチへのスイッチ・ポート＃３を指定する出力スイッチ番号を分配部１２−４へ出力する。
【００３８】
これに従って、分配部１２−４は当該パケットをパケット・バッファ１２−５のうちスイッチ・ポート＃３につながるバッファに向けて転送する。
尚、振り分け判定・調整部１２−２が保存している出力側回線毎に設定されている各々のパケット・スイッチへの振り分け区分を全ての出力側回線について加算した値は、各々のパケット・スイッチに対する全負荷を示す値であるから、各々のパケット・スイッチに対する該全負荷のバランスが大幅に崩れないように設定する必要がある。そして、各々のパケット・スイッチに対する該全負荷が均等になるように設定するのが好ましい。
【００３９】
しかし、最初に各々のパケット・スイッチに対する該全負荷が均等になるように設定してあっても、到着する実パケットによる負荷分布は各々のパケット・スイッチに対してバランスしないものに変化することがある。これに対処すべく配置してあるのが負荷観測部１２−３である。
負荷観測部１２−３は、分配部１２−４の出力を観測して、各々のパケット・スイッチ毎に各々の出力側回線宛のパケットの量を例えばバイト長を観測することによって測定し、図２の負荷観測部１２−３のブロックの中に記載している如き負荷分散テーブルに保存している。そして、負荷観測のための所定時間が経過した時に負荷分布テーブルの格納内容を振り分け判定・調整部１２−２に供給する。
【００４０】
振り分け判定・調整部１２−２は、負荷観測部１２−３から供給された負荷分布テーブルの格納内容によって全てのパケット・スイッチの平均負荷を算出し、該平均負荷と各パケット・スイッチごとの実負荷との差を補正して各パケット・スイッチの負荷の平準化を図る。
例えば、入力側回線＃０に於ける負荷観測の結果、図１に記載してある如く、出力側回線＃０宛の負荷が、パケット・スイッチ＃０経由が０．２、パケット・スイッチ＃１経由が０．２、パケット・スイッチ＃２経由が０．３、パケット・スイッチ＃３経由が０．２であり、出力側回線＃０の各パケット・スイッチへの振り分け比が、パケット・スイッチ＃０からパケット・スイッチ＃３についてそれぞれ０．２５であったとする。
【００４１】
今の場合、各パケット・スイッチの負荷の平均は０．２２５であるから、パケット・スイッチ＃０への振り分け比を０．０２５（平均負荷０．２２５−実負荷０．２）増加させ、パケット・スイッチ＃１への振り分け比も０．０２５増加させ、パケット・スイッチへの振り分け比は０．０７５（実負荷０．３−平均負荷０．２２５）減少させ、パケット・スイッチ＃３への振り分け比を０．０２５増加させる。これにより、出力側回線＃０へのパケットの各々のパケット・スイッチにおける負荷が平準化されるので、スイッチング・システム全体のスループットが改善される。極端な場合、パケット・フローが１つのパケット・スイッチに集中すると、図１の構成の場合スループットは最大スループットの１／４にまで低下するが、これを回避することができる。
【００４２】
次いで、本発明のスイッチング・システムにおけるパケット・スイッチの障害に対する保証技術を説明する。
図３は、監視パケットによりパケット・フロー制御を行なう場合のパケット・フロー振り分け部及びパケット多重部の構成である。
図３において、１２−１は、到着したパケットを発信した装置のＩＰソース・アドレス、当該パケットを受信すべき装置のＩＰデスティネーション・アドレス及びポート番号を用いてハッシュ演算を行なってハッシュ演算値を求めると共に、ＩＰソース・アドレスとＩＰデスティネーション・アドレスの組み合わせ又はＭＰＬＳラベルから出力側回線の番号を求めるハッシュ演算部である。
【００４３】
１２−２は、該ハッシュ演算値と出力側回線番号によって振り分けテーブルを参照して当該パケットを出力すべきパケット・スイッチ番号を決定すると共に、負荷分布に対応して振り分けテーブルを更新する振り分け判定・調整部である。尚、図３においては振り分けテーブルを図示していない。
１２−３は、負荷分布を測定して振り分け判定・調整部に通知する負荷観測部である。尚、図３においては、負荷観測部１２−３が保有する負荷分布テーブルの図示を省略している。
【００４４】
１２−４は、振り分け判定・調整部１２−２が出力するパケット・スイッチ番号に従って、到着してハッシュ演算部１２−１を通過してくるパケットを複数のパケット・スイッチに分配する分配部、１２−５は、各々のパケット・スイッチ毎に設けられているパケット・バッファである。
１２−６は、パケット・スイッチの正常性を確認するための監視パケットを挿入する監視パケット挿入部である。該監視パケットはパケット・スイッチ毎に挿入するので、監視パケット挿入部１２−６はパケット・スイッチ毎に独立したセクションを有している。
【００４５】
そして、ハッシュ演算部１２−１、振り分け判定・調整部１２−２、負荷観測部１２−３、分配部１２−４、パケット・バッファ１２−５及び監視パケット挿入部によって図１のパケット・フロー・振り分け部１２が構成される。
又、３１−１は、パケット・スイッチから到着したパケット・フローから監視パケットを抽出する監視パケット抽出部である。
【００４６】
３１−２は、監視パケット抽出部３１−１において監視パケットを除去されたパケット・フローを一時格納するパケット・バッファである。
３１−３は、パケット・バッファ３１−２から読み出されたパケットを多重化して、図１の物理層終端部３２に対して出力する多重部である。
ここで、図３の如く、パケット・フロー振り分け部とパケット多重部を対にして図示しているのは、既に説明したように、特定の入力側回線インタフェースは特定の出力側回線インタフェースと対になっているからである。更に詳しく説明すると、特定の入力側回線インタフェースに接続されている上り回線によって上りのパケットが伝送されるものとすれば、該上り回線に１対１に対応する下り回線によって下りのパケットが伝送されて、４線のデータ伝送回線が構成されるのである。従って、実際のルータ等においては、入力側回線インタフェースとそれと対をなす出力側回線インタフェースが同一パッケージに実装されるのが通常である。
【００４７】
図３において、ハッシュ演算部１２−１、振り分け判定・調整部１２−２、負荷観測部１２−３、分配部１２−４及びパケット・バッファ１２−５によって構成されるパケット・フロー振り分け部の基本構成は、図２を用いて説明したのと同様にパケット・フローを各々のパケット・スイッチに振り分けている。
ここで、監視パケット挿入部１２−６では、パケット・バッファ１２−５から読み出されたパケット・フローにパケット・スイッチを監視するための監視パケットを挿入して各々のパケット・スイッチ宛に送出する。該監視パケットは、所定時間に１回挿入されるが、データ・パケットとの区別を明確にするために、データ・パケットには出現しえないパターンにしておくのが好ましい。
【００４８】
図３では図示を省略しているパケット・スイッチは、監視パケットを含むパケット・フローをスイッチングして出力側回線インタフェースを構成するパケット多重部に向けて送出する。従って、図３の監視パケット抽出部３１−１には監視パケットを含むパケット・フローが到着する。
監視パケット抽出部３１−１は、到着したパケット・フローから特定のパターンを有する監視パケットを抽出する。特定のパターンの信号を抽出する技術は同期装置などにおいて公用されている技術であるので、これ以上詳しくは説明しない。尚、特定パターンを用いずに、監視パケットであることを示す情報をパケットのヘッダに付加してもよい。
【００４９】
そして、監視パケット抽出部３１−１は、監視パケットの抽出状況、即ち、パケット・スイッチ毎に監視パケットの抽出の有無を振り分け判定・調整部１２−２に転送し、振り分け判定・調整部１２−２は該監視パケットの抽出状況を参照してパケット・スイッチへのパケットの振り分けを行なう。
即ち、全てのパケット・スイッチに対応するポートで監視パケットを抽出できた場合には、既に設定してある振り分け比に従って、既に説明した通りにパケットの振り分けを行なう。一方、特定のパケット・スイッチが障害であるか実装されていないために、該特定のパケット・スイッチに対応するポートで監視パケットを所定時間継続して抽出できなかった場合には、当該パケット・スイッチに振り分けるべきパケットを監視パケットを抽出できたポートに対応するパケット・スイッチに分割するように、振り分け比を更新してパケット・フローの振り分けを行なう。
【００５０】
図４は、パケット・スイッチ障害時のパケット・フロー振り分け処理の概要を説明する図である。尚、パケット・スイッチが障害の時もパケット・スイッチが実装されていない時もパケット・フローの振り分けを変更する必要があるが、ここでは、この２つのケースを単に「パケット・スイッチ障害時」と記載している。
【００５１】
図４（イ）は障害発生以前の振り分け状況で、パケット・スイッチ＃０乃至パケット・スイッチ＃３への振り分けが、ハッシュ演算値ＴＨ＃０、ＴＨ＃１、ＴＨ＃２を境界として行なわれていることを示している。
図４（ロ）は、障害時の振り訳状況で、ここでは、パケット・スイッチ＃１に障害が生じて、パケット・スイッチ＃１に振り分けるべきパケットをパケット・スイッチ＃０、パケット・スイッチ＃２及びパケット・スイッチ＃３に振り分ける例を図示している。従って、パケット・スイッチ＃０、パケット・スイッチ＃２及びパケット・スイッチ＃３への振り分けが、ハッシュ演算値ＴＨ＃０’、ＴＨ＃２’を境界として行なわれるようになる。
【００５２】
図４（ハ）は、障害復旧時の振り分け状況で、パケット・スイッチ＃１の障害が復旧した時に、元の図４（イ）の振り分け状況に復帰させる例を示している。尚、障害復旧時に実負荷の偏りによって振り分け比を更新する必要が生じている場合には、障害復旧時の振り分け状況は元の振り分け状況とは異なるものになる。
【００５３】
ここで、障害となるパケット・スイッチは固定ではないので、障害状況に応じて障害となったパケット・スイッチの負荷を動的に正常なパケット・スイッチに振り分ける必要がある。このためには、例えば、ハッシュ演算値の特定のビットで形成される２進値のパターンによって振り替え先のパケット・スイッチを決定すればよい。
【００５４】
今、パケット・スイッチが４つあって、その内１つのパケット・スイッチ（これをパケット・スイッチ＃１とする。）に障害が生じたためにパケット・スイッチ＃０、パケット・スイッチ＃２及びパケット・スイッチ＃３に振り替える場合、例えば、ハッシュ演算値のＬＳＢ（Ｌｅａｓｔ　Ｓｉｇｎｉｆｉｃａｎｔ　Ｂｉｔ）３ビットのパターンが“０００”、“００１”、“０１０”の場合にパケット・スイッチ＃０とし、ハッシュ演算のＬＳＢ３ビットのパターンが“０１１”、“１００”、“１０１”の場合にパケット・スイッチ＃２とし、ハッシュ演算のＬＳＢ３ビットのパターンが“１１０”、“１１１”の場合にパケット・スイッチ＃３とすればよい。この例の場合、パケット・スイッチの数が少なく、又、ハッシュ演算のＬＳＢ３ビットのパターンによって３つのパケット・スイッチに振り替えるという例であるために、障害となったパケット・スイッチ＃１の負荷を正常なパケット・スイッチに均等に振り替えることができていないが、パケット・スイッチの数が多くなるか、又は、振り替え先のパケット・スイッチを指定するために使用するビット数を適宜選択すれば、ほぼ均等に振り替えることは容易である。尚、他のパケット・スイッチが障害になった場合にもハッシュ演算値のＬＳＢ３ビットのパターンによって振り替え先のパケット・スイッチを決定することができるし、他のパケット・スイッチが障害になった場合にはハッシュ演算値の他の３ビットのパターンによって振り替え先のパケット・スイッチを決定してもよい。
【００５５】
又、パケット・スイッチが４つあって、その内２つのパケット・スイッチ（これをパケット・スイッチ＃０とパケット・スイッチ＃１とする。）に障害が生じたためにパケット・スイッチ＃２及びパケット・スイッチ＃３に振り替える場合、例えば、ハッシュ演算値のＬＳＢ１ビットのパターンが“０”の場合にパケット・スイッチ＃２とし、ハッシュ演算値のＬＳＢ１ビットのパターンが“１”の場合にパケット・スイッチ＃３とすればよい。
【００５６】
尚、振り替え先のパケット・スイッチを決定するために使用するビット数は、そのビット数で形成される２進数がとりうるパターンの数が振り替え先のパケット・スイッチの数をカバーできるように選定すればよい。
上記の如くして、パケット・スイッチが障害か未実装の時にもパケット・フローを正常に実装されているパケット・スイッチに振り分けることができるので、障害又は未実装のパケット・スイッチがあってもスイッチング・システムのスループットを確保することができ、スイッチング・システムの信頼度を向上させることができる。又、予めパケット・スイッチを冗長に備えることでも、障害時のスループット低下を回避することができる。
【００５７】
さて、図２は、入力側で負荷観測する場合のパケット・フロー振り分け部の基本構成で、図３は、入力側で負荷観測しながら監視パケットを挿入してパケット・スイッチの障害又は未実装を判定して振り分け先のパケット・スイッチを変更するためのパケット・フロー振り分け部及びパケット多重部の構成であったが、出力側で負荷観測した結果に対応してパケットの振り分け比を更新すると共に、監視パケットを挿入してパケット・スイッチの障害又は未実装を判定して振り分け先のパケット・スイッチを変更するためのパケット・フロー振り分け部及びパケット多重部の構成も可能である。
【００５８】
図５は、出力側での負荷観測によりパケット・フロー制御を行なうパケット・フロー振り分け部及びパケット多重部の構成である。
図５において、１２−１は、到着したパケットを発信した装置のＩＰソース・アドレス、当該パケットを受信すべき装置のＩＰデスティネーション・アドレス及びポート番号を用いてハッシュ演算を行なってハッシュ演算値を求めると共に、ＩＰソース・アドレスとＩＰデスティネーション・アドレスの組み合わせ又はＭＰＬＳラベルから出力側回線の番号を求めるハッシュ演算部である。
【００５９】
１２−２は、該ハッシュ演算値と出力側回線番号によって振り分けテーブルを参照して当該パケットを出力すべきパケット・スイッチ番号を決定すると共に、負荷分布に対応して振り分けテーブルを更新する振り分け判定・調整部である。尚、図３においては振り分けテーブルを図示していない。
１２−４は、振り分け判定・調整部１２−２が出力するパケット・スイッチ番号に従って、到着してハッシュ演算１２−１を通過してくるパケットを複数のパケット・スイッチに分配する分配部、１２−５は、各々のパケット・スイッチ毎に設けられているパケット・バッファである。
【００６０】
１２−６ａは、パケット・スイッチの正常性を確認するための監視パケットと、出力側で負荷分布を測定する負荷観測部（後述）が出力する負荷分布パケットを挿入する監視パケット挿入部である。該監視パケット及び負荷分布パケットはパケット・スイッチ毎に挿入するので、監視パケット挿入部１２−６ａはパケット・スイッチ毎に独立したセクションを有している。
【００６１】
そして、ハッシュ演算部１２−１、振り分け判定・調整部１２−２、分配部１２−４、パケット・バッファ１２−５及び監視パケット挿入部１２−６ａによって図１のパケット・フロー・振り分け部１２が構成される。
又、３１−１は、パケット・スイッチから到着したパケット・フローから監視パケットと負荷分布パケットを抽出する監視パケット抽出部で、監視パケット抽出部３１−１が出力する監視パケットの抽出状況が振り分け判定・調整部１２−２に供給されて、パケット・スイッチに障害がある時の振り替え先のパケット・スイッチの決定に使用され、負荷分布パケットが後述する負荷観測部に供給されて、スイッチング・システム全体の負荷分布を求めるのに使用される。
【００６２】
３１−２は、監視パケット抽出部３１−１において監視パケットを除去されたパケット・フローを一時格納するパケット・バッファである。
３１−３は、パケット・バッファ３１−２から読み出されたパケットを多重化して、図１の物理層終端部３２に対して出力する多重部である。
３１−４は、監視パケット抽出部３１−１において監視パケットを除去されたパケット・フローについて負荷観測を行なうと共に、他の入力側回線インタフェースから送信された負荷分布を受信してスイッチング・システム全体での負荷分布を求める負荷観測部で、負荷観測部３１−４が求めた負荷分布が振り分け判定・調整部１２−２に供給されて、負荷分布に変化があった場合の振り分け比の更新に使用されると共に、測定した負荷分布を示す負荷分布パケットが監視パケット挿入部１２−６ａにて挿入される。
【００６３】
ここで、図５の如く、パケット・フロー振り分け部とパケット多重部を対にして図示しているのは、先に説明した理由と同じである。
ここで、
（１）監視パケット抽出部３１−１において監視パケットを除去されたパケット・フローについて負荷観測部３１−４が負荷観測を行なうこと、
（２）負荷観測部３１−４が測定した負荷分布に従って振り分け判定・調整部１２−２が振り分け比を更新すること、
（３）監視パケット抽出部３１−１が出力する監視パケットの抽出状況に応じてパケット・スイッチの障害又は未実装を判定して、障害又は未実装のパケット・スイッチ宛のパケットを正常に実装されているパケット・スイッチに振り替えること
は、既に詳細に説明してあるので、重複説明を省略する。
【００６４】
図５の構成における特徴は、負荷観測部３１−４が測定した負荷分布を示す負荷分布パケットを監視パケット挿入部１２−６ａから挿入して各々のパケット・スイッチに向けて送出する点にあるので、ここでは、この点に絞って説明する。
図５は、特定の入力側回線インタフェースを構成するパケット・フロー振り分け部と、該特定の入力側回線インタフェースと対をなす出力側回線インタフェースを構成するパケット多重部である。即ち、図５の負荷観測部３１−４は、特定の出力側回線インタフェースを構成するパケット多重部におけるパケット・スイッチ毎の負荷分布を測定している。
【００６５】
ところで、負荷分布の変化に伴って振り分け比を更新するためには、既に図２に関して説明した如く、全ての出力側回線毎にパケット・スイッチ毎に測定した負荷分布が必要である。従って、スイッチング・システムを構成するいずれのパケット・フロー振り分け部においても振り分け比を更新できるためには、スイッチング・システムを構成する全てのパケット多重部において測定した全ての出力側回線毎、パケット・スイッチ毎の負荷分布が必要である。
【００６６】
即ち、図５の負荷観測部３１−４が負荷分布パケットを監視パケット挿入部１２−６ａを介して送出するのは、パケット多重部において測定した負荷分布を全てのパケット多重部の監視パケット抽出部で受信して、全ての出力側回線毎、パケット・スイッチ毎の負荷分布を求めることができるようにするためである。
さて、図２の構成は、入力側回線における負荷分布によって振り分け比を更新するものであり、図３の構成は、図２の構成に対して監視パケットを挿入して送出するようにして受信したパケット・フローから該監視パケットを抽出し、監視パケットの抽出状況に応じて障害又は未実装のパケット・スイッチを避けてパケット・フローを振り分けるもので、入力側回線における負荷分布によって振り分け比を更新するものが基本構成である。
【００６７】
これに対して、図５の構成は、出力側回線における負荷分布によって振り分け比を更新すると共に、監視パケットの抽出状況に応じて障害又は未実装のパケット・スイッチを避けてパケット・フローを振り分けるもので、出力側回線における負荷分布によって振り分け比を更新する構成と、監視パケットの抽出状況に応じて障害又は未実装のパケット・スイッチを避けてパケット・フローを振り分ける構成とを組み合わせたものである。
【００６８】
従って、図５の構成の内、出力側回線における負荷分布によって振り分け比を更新する構成が、入力側回線における負荷分布によって振り分け比を更新する基本構成に対応する基本構成であるといえる。
以上のスイッチング・システムは、各々の出力側回線を単位にパケットをスイッチングするものであるが、複数の出力側回線を束ねて論理マルチ・リンクを構成したり、出力側回線の一部を形成する論理リンクを束ねて論理マルチ・リンクを構成し、出力側回線の容量に柔軟性を持たせることが必要になる場合がある。
【００６９】
図６は、論理マルチ・リンク振り分けの概要を説明する図である。
図６において、１−１は入力側回線インタフェース、２−１乃至２−１ｃはパケット・スイッチ、３−１乃至３−１ｃは出力側回線インタフェース、各々の出力側回線インタフェースの右側に図示しているのは、それぞれ、出力側回線である。図６の構成も、４つの入力側回線インタフェース、４×４の４つのパケット・スイッチ、４つの出力側回線インタフェースを備えるものであるが、図示を簡略化するために入力側回線インタフェースの３つは図示を省略している。
【００７０】
図６には、出力側回線＃０と出力側回線＃１とを束ねて論理マルチ・リンク＃０を構成し、出力側回線＃２と出力側回線＃３の一部である論理ポート＃３を束ねて論理マルチ・リンク＃１を構成する例を図示している。このような論理マルチ・リンク構成において、入力側回線からのパケットを、例えば、論理マルチ・リンク＃０に振り分けるためには、論理マルチ・リンク＃０が出力側回線＃０と出力側回線＃１とで構成されているので、論理マルチ・リンク内の複数の物理／論理ポートにパケットを振り分ける必要がある。基本的には、ハッシュ演算を元にする振り分け情報によって論理マルチ・リンク内の物理／論理ポートを決定するが、パケット・フロー振り分け部には、パケット・スイッチ振り分け用の振り分け情報と論理マルチ・リンク制御用の振り分け情報とが必要になる。
【００７１】
図７は、論理マルチ・リンクへのパケット・フロー振り分け処理を説明する図である。
振り分け判定・調整部は、図７の如く、論理マルチ・リンク毎にハッシュ演算値の範囲を設定するマルチ・リンク振り分け情報テーブルと、マルチ・リンク振り分け情報テーブルから得た範囲から出力側回線と論理ポートを決定するマルチ・リンク情報格納テーブルとを備えている。
【００７２】
そして、まず、マルチ・リンク番号と到着パケットのハッシュ演算値からハッシュ演算値が当該論理マルチ・リンクのどの範囲に位置するかをマルチ・リンク振り分け情報テーブルから求める。次いで、求めた範囲が当該論理マルチ・リンクを構成するどの物理ポート、論理ポートであるかをマルチ・リンク情報格納テーブルから求める。
【００７３】
例えば、論理マルチ・リンク＃０宛のパケットで、マルチ・リンク振り分け情報テーブル上でハッシュ演算値が論理マルチ・リンク＃０の範囲Ｃに位置する時、マルチ・リンク情報格納テーブルから論理マルチ・リンク＃０の範囲Ｃに対応する情報を取得し、出力側回線＃２の論理ポート＃２を出力ポートであると決定する。
【００７４】
尚、マルチ・リンク振り分け情報テーブルにおける振り分け範囲は、論理マルチ・リンク内の各物理ポート及び論理ポートの帯域に応じて設定する。
上記マルチ・リンク用のハッシュ演算値は、パケット・スイッチへの出力ポートを決定するためのハッシュ演算値とは異なるハッシュ演算値とする。何故なら、パケット・スイッチの出力ポート決定用のハッシュ演算値と同一のハッシュ演算値を用いると、論理マルチ・リンク内の振り分け先の物理／論理ポートと振り分け先のパケット・スイッチが一義的に決まってしまい、論理マルチ・リンク宛のパケット・フローを複数のパケット・スイッチに分散させることができなくなるからである。
【００７５】
このために、全く異なるハッシュ関数で論理マルチ・リンク用のハッシュ演算値を求めてもよいし、制御を簡単にするには、図８に示すように片方のハッシュ演算値をもう一方のハッシュ演算値のＬＳＢからＭＳＢを順にＭＳＢからＬＳＢに並べ替えたものにしてもよい。いずれにしても、選択されるパケット・スイッチと選択される論理マルチ・リンクとを独立にすることができる。
【００７６】
上記は、全て、パケットが入力される場合のスイッチング・システムに関するものであるが、ＳＴＭ（Ｓｙｎｃｈｒｏｎｏｕｓ　Ｔｒａｎｓｆｅｒ　Ｍｏｄｅ）システムのデータをパケット化してスイッチングすることも可能である。
図９は、本発明のスイッチング・システムの第二の実施の形態で、ＳＴＭシステムのデータをパケット化したＳＴＭパケットの振り分けを行なうスイッチング・システムの構成である。
【００７７】
図９（イ）において、１−２、１−２ｃは入力側回線インタフェース、２−２乃至２−２ｃはパケット・スイッチ、３−２、３−２ｃは出力側回線インタフェースである。
ここで、入力側回線インタフェースの数と出力側回線インタフェースの数が４で、各々のパケット・スイッチのスイッチ・サイズが４×４である例を示している。又、図９においては、図の簡略化のために、入力側回線インタフェースと出力側回線インタフェースは、それぞれ、４つの内２つだけを図示している。
【００７８】
そして、入力側回線インタフェース１−２、１−２ｃは、それぞれ、下位レイヤ・プロトコルの信号を終端する物理層終端部１１、ＳＴＭデータからＳＴＭパケットを生成するＳＴＭパケット生成部１３及び同一出力側回線宛のパケットを複数のパケット・スイッチ２−２乃至２−２ｃに分散させるパケット・フロー振り分け部パケット・フロー振り分け部１２ａを備えている。
【００７９】
又、出力側回線インタフェース３−２、３−２ｃは、それぞれ、各々のパケット・スイッチから入力されるパケットを多重化するパケット多重部３１ａ及びパケット多重部３１ａの出力を受けて下位レイヤ・プロトコルの信号を形成して出力側回線に送出する物理層終端部３２を備えている。
更に、複数あるパケット・スイッチは互いに独立である。
【００８０】
図９の構成の特徴は、ＳＴＭデータとＳＴＭパケットの変換をすることと処理の高速化が比較的容易な物理層では高速処理をさせると共に、入力側回線インタフェースに設けたパケット・フロー振り分け部によって同一出力側回線宛のパケットを複数のパケット・スイッチ２−２乃至２−２ｃに分散させて比較的高速化が困難なパケット処理の速度を低下させる点にある。これによって、パケット処理は低速でも、高速な回線インタフェースを収容できることになり、大容量のパケット・スイッチング・システムを構成することができる。
【００８１】
図９（ロ）は、ＳＴＭフレームの例で、回線インタフェースがＯＣ４８の場合を示している。
ＳＴＭ方式においては、パケット通信とは異なり、各チャネルのデータが時分割で固定長のタイム・スロットに多重化されている。そこで、ＳＴＭデータをチャネル毎に固定長パケットに変換する。そして、既に説明したパケットのスイッチング・システムにおいて同一パケット・フローのパケットを同一パケット・スイッチを経由するようにパケットの振り分けを行なっていたのと同じように、ＳＴＭデータを変換したＳＴＭパケットを同一パケット・スイッチを経由させるように制御する。
【００８２】
しかし、上記ＳＴＭパケットはＳＴＭデータを固定長に分割して得られたデータの固まりであるため、ＩＰパケットのようにフローを示すアドレスがない。そこで、元のＳＴＭデータのタイム・スロット番号を用いて、同一タイム・スロットから生成したＳＴＭパケットを同一パケット・スイッチに振り分けるようにする。
【００８３】
回線インタフェースがＯＣ４８の場合には、＃０から＃４７の４８のタイム・スロットに対応して４８の固定的なパケット・スロットでＳＴＭパケットを生成するので、＃０から＃４７のタイム・スロット番号に応じてパケット・スイッチを選択する。
図９（ハ）は、パケット・フロー振り分け部が持つ振り分け情報の例で、回線インタフェースがＯＣ４８である場合の振り分け情報の例を示している。例えば、ＳＴＭパケットを生成したパケット・スロットが＃１３である場合には、パケット・スイッチ＃１に当該ＳＴＭパケットを振り分ける。
【００８４】
上記の如く、ＳＴＭパケットの生成をＳＴＭチャネル毎に固定的なタイム・スロットで行ない、そのタイム・スロットのＳＴＭパケットを同一パケット・スイッチに振り分けることで、ＳＴＭシステムで同一チャネルのデータから生成したＳＴＭパケットの順序保証をすることができる。
さて、上記説明では、説明を簡単にするために、図９の構成はＳＴＭデータをパケット化してスイッチングするスイッチング・システムに限定して説明したが、パケット・データとＳＴＭデータのいずれにも対応させることができる。
【００８５】
即ち、入力データが非同期のパケットであるか、同期のＳＴＭデータであるかは予め判定できるので、パケット・データである場合には、ＳＴＭパケット生成部１３を迂回するように設定し、パケット・フロー振り分け部１２ａにおいてはハッシュ演算値によってパケット・スイッチを選択するように設定し、ＳＴＭデータである場合には、ＳＴＭパケット生成部１３においてＳＴＭデータをパケット化するように設定し、パケット・フロー振り分け部１２ａにおいてはＳＴＭのタイム・スロットに応じてパケット・スイッチを選択するように設定すればよい。
【００８６】
上記のように、パケット・データとパケット化されたＳＴＭデータが混在する場合、パケット化されたＳＴＭデータの遅延時間及び遅延時間のゆらぎを軽減するために、入力側回線インタフェース、出力側回線インタフェースのパケット・バッファ及びパケット・スイッチのパケット・バッファにＱｏＳ（Ｑｕａｌｉｔｙ　ｏｆ
Ｓｅｒｖｉｃｅ）クラスが複数のパケット・バッファ部を備え、ＱｏＳクラスに従って読み出し制御することで、ＳＴＭパケットを最優先にスイッチングすることができる。
【００８７】
図１０は、Ｑｏｓクラスが複数の場合のパケット・バッファの構成で、入力側回線インタフェースに備えることを想定し、分配部も併せて図示している。
図１０において、１２−４ａは分配部、１２−５ａはパケット・バッファである。そして、パケット・バッファ１２−５ａ−１は、複数のＱｏＳクラスに対応するパケット・バッファ、１２−５ａ−２はパケット・バッファ１２−５ａ−１からのパケットの読み出しをＱｏＳクラスに従って行なう読み出し制御部である。
【００８８】
以上の説明では、パケット・フローがパケット・スイッチのポートに許容される転送レートを越えることを想定していないが、バースト的なパケット・フローの到着によってパケット・スイッチのポートに許容される転送レートを越えるケースもありうる。以降に説明するのは、オーバー・レート対策をしたパケット・バッファの構成である。
【００８９】
図１１は、オーバー・レート対策をしたパケット・バッファの構成（その１）で、入力側回線インタフェースに備えることを想定して分配部も併せて図示している。
図１１において、１２−４ａは分配部、１２−５ｂはパケット・バッファである。そして、パケット・バッファ１２−５ｂは、通常のパケット・フローに対応するパケット・バッファ部１２−５ｂ−１、パケット・バッファ部１２−５ｂ−１からの読み出しを制御する読み出し制御部１２−５ｂ−２、オーバー・フロー・パケットを一旦格納するパケット・バッファ部１２−５ｂ−３及びパケット・バッファ部１２−５ｂ−３からの読み出しを制御する読み出し制御部１２−５ｂ−４を備えている。尚、パケット・バッファ部１２−５ｂ−１及び１２−５ｂ−３は複数のＱｏＳに対応したバッファを備えており、読み出し制御部１２−５ｂの２及び１２−５ｂ−４は複数のＱｏＳに対応した読み出し制御機能を備えていることを想定している。
【００９０】
図１１の構成は次のように動作する。
即ち、パケット・スイッチに許容される転送レートを越える同一フローのパケットが到着してパケット・バッファ１２−５ｂ−１で輻輳が発生した場合には、当該フローのパケットをパケット・バッファ部１２−５ｂ−３に一旦格納して待ち合わせを行なわせる。そして、パケット・バッファ１２−５ｂ−１における輻輳が解消した時に待ち合わせのためのパケット・バッファ１２−５ｂ−３からパケットを読み出して、パケット・バッファ１２−５ｂ−１のうち先程輻輳が生じたパケット・バッファに待ち併せていたパケットを転送する。これによって、一時的に生じたオーバー・レートを回避することができる。
【００９１】
図１２は、オーバー・レート対策をしたパケット・バッファの構成（その１）で、図１２（イ）は、入力側回線インタフェースにおけるパケット・バッファの構成、図１２（ロ）は、出力側回線インタフェースにおけるパケット・バッファの構成である。
図１２（イ）において、１２−７はパケットにシーケンス番号（ＳＮ）を付与するＳＮ付与部、１２−４ａは分配部、１２−５ａはパケット・バッファである。そして、パケット・バッファ１２−５ａは、パケット・バッファ１２−５ａ−１及び読み出し制御部１２−５ａ−２を備えている。
【００９２】
又、図１２（ロ）において、３１−２ｂはパケット・バッファで、通常のパケット・フローを格納するパケット・バッファ３１−２ｂ−１、パケット・バッファ３１−２ｂ−１の読み出し制御をする読み出し制御部３１−２ｂ−２、シーケンス番号を付与されたパケットを格納するパケット・バッファ３１−２ｂ−３、パケット・バッファ３１−２ｂ−３の読み出し制御を行なう読み出し制御部３１−２ｂ−５を備えている。
【００９３】
図１２の構成は次のように動作する。
即ち、１つのパケット・フローのレートがパケット・スイッチに許容される転送レートを越える場合に、当該フローのパケットにＳＮ付与部１２−７においてシーケンス番号を付加して、シーケンス番号を付加されたパケットは分配部１２−４ａにおいて強制的に例えばラウンド・ロビン制御によって４つのパケット・スイッチに均等に分散させる。そして、出力側回線インタフェースにおいて、シーケンス番号付きのパケットをパケット・バッファ３１−２ｂ−３に格納して、読み出し制御部３１−２ｂ−５の制御によってシーケンス番号の順にパケットを読み出す。
【００９４】
これにより、一時的なオーバー・レートだけではなく、長期的なオーバー・レートにも対応することができ、スループットの低下を回避することができる。
以上で、本発明の技術の説明を終えたが、フローチャートによって処理を手順を明確にしておいた方がよい事項があるので、以降、フローチャートを用いた説明を補充する。
【００９５】
図１３は、パケット・フロー振り分け処理のフローチャートで、図２、図６、図９に関係する処理を併せて図示したものである。以降、図１３の符号に沿って説明する。
Ｓ１．到着したパケットはＳＴＭパケットであるか否か判定する。
Ｓ２．ステップＳ１で、到着したパケットがＳＴＭパケットではないと判定した場合（Ｎｏ）は、到着したパケットはＩＰパケットなどであるので、ソース・アドレス、デスティネーション・アドレスなどを用いてハッシュ演算を行なう。
【００９６】
Ｓ３．論理マルチ・リンクを組む必要があるか否か判定する。
論理マルチ・リンクを組む必要がない場合（Ｎｏ）には、ステップＳ８にジャンプする。
Ｓ４．ステップＳ３で、論理マルチ・リンクを組む必要があると判定した場合（Ｙｅｓ）には、ステップＳ２で求めたハッシュ演算値のＬＳＢからＭＳＢを順にＭＳＢからＬＳＢに入れ替える。
【００９７】
Ｓ５．ステップＳ４でＬＳＢとＭＳＢを入れ替えたハッシュ演算値を用いてマルチ・リンク振り分け情報テーブルの指定された論理マルチ・リンク・グループを参照する。
Ｓ６．マルチ・リンク振り分け情報テーブルの指定された論理マルチ・リンク・グループ内の範囲情報を取得する。
【００９８】
Ｓ７．ステップＳ６で取得した範囲情報を用いて、マルチ・リンク情報格納テーブルから出力回線、論理ポートを取得する。
Ｓ８．パケット・スイッチの番号をハッシュ演算値から取得する。
Ｓ９．一方、ステップＳ１で、到着したパケットがＳＴＭパケットであると判定した場合（Ｙｅｓ）には、ＳＴＭパケットを生成したタイム・スロットによって出力回線、パケット・スイッチ番号を固定的に取得する。
【００９９】
Ｓ１０．ステップＳ８及びステップＳ９の処理の後、指定されたパケット・スイッチは障害又は未実装であるか否か判定する。これは、パケット・スイッチの状態を監視するための監視パケットを確認することで判定することができる。
指定パケット・スイッチが障害又は未実装でない場合（Ｎｏ）には、一連の振り分け処理を終了する。
【０１００】
Ｓ１１．ステップＳ１０で、指定パケット・スイッチが障害又は未実装であると判定した場合（Ｙｅｓ）には、障害又は未実装のパケット・スイッチに振り分けられたパケットを他のパケット・スイッチに振り分けることで、障害又は未実装のパケット・スイッチを回避して振り分けを行ない、一連の処理を終了する。
図１４は、入力側で付加観測する時の振り分け情報更新のフローチャートで、図２に関係する処理を示したものである。以降、図１４の符号に沿って説明する。
【０１０１】
Ｓ２１．パケットを受信する。
Ｓ２２．出力側回線、パケット・スイッチ毎にパケットの流量を測定する。
Ｓ２３．負荷観測をするために設定されている所内時間が経過したか否か判定する。
所定時間が経過していないと判定した場合（Ｎｏ）には、ステップＳ２１にジャンプして、以降の処理を継続する。
【０１０２】
Ｓ２４．ステップＳ２３で、所内時間が経過したと判定した場合（Ｙｅｓ）には、パケット・スイッチ毎の平均負荷を算出する。
Ｓ２５．ステップＳ２４で算出した平均負荷とパケット・スイッチにおける実負荷とを比較する。
Ｓ２６．平均負荷と実負荷の差分に応じて振り分けテーブルに設定されている振り分け比更新して、一連の処理を終了する。
【０１０３】
図１５は、出力側で負荷観測する時の振り分け情報更新のフローチャートで、図５に関係する処理を示したものである。以降、図１５の符号に沿って説明する。
Ｓ３１．パケットを受信する。
Ｓ３２．受信したパケットは、負荷分布パケットか否か判定する。
【０１０４】
受信したパケットが負荷分布パケットではなかった場合（Ｙｅｓ）には、ステップＳ３６にジャンプする。
Ｓ３３．ステップＳ３２で、受信したパケットが負荷分布パケットではなく、通常の通信を行なうパケットであった場合（Ｎｏ）には、回線毎、負荷分布テーブルのパケット・スイッチ毎のパケット量の観測値を更新する。
【０１０５】
Ｓ３４．パケット量の観測を行なう時間である所定時間が経過したか否か判定する。
所定時間が経過していない場合（Ｎｏ）には、負荷観測の結果をまとめる必要がないので、ステップＳ３１にジャンプして、以降の処理を継続する。
Ｓ３５．ステップＳ３５で、所定時間が経過していた場合（Ｙｅｓ）には、観測した負荷情報を負荷分布パケットに挿入して送出する。
【０１０６】
Ｓ３６．ステップＳ３２で、受信したパケットが負荷分布パケットであった場合（Ｙｅｓ）と、ステップＳ３５の処理が終了した後、パケット・スイッチごとの平均負荷を算出する。
Ｓ３７．ステップＳ２４で算出した平均負荷とパケット・スイッチにおける実負荷とを比較する。
【０１０７】
Ｓ３８．平均負荷と実負荷の差分に応じて振り分けテーブルに設定されている振り分け比更新して、一連の処理を終了する。
（付記１）　入力側回線から到着したパケットを、該パケットに付加されている情報に基づく演算値と出力側回線毎に設定したパケット・フローの振り分け区分に従って複数のパケット・スイッチに振り分けてパケット・スイッチングし、出力側回線毎にパケットを多重化して送出するパケット・スイッチング・システムであって、
同一の付加情報を持つパケット・フローを同一のパケット・スイッチに振り分け、
該入力側回線から到着したパケットの、パケット・スイッチ及び出力側回線毎の負荷状態を観測した結果に応じて、該パケット・フローの振り分け区分を更新する
ことを特徴とするスイッチング・システム。
【０１０８】
（付記２）　入力側回線から到着したパケットを、該パケットに付加されている情報に基づく演算値と出力側回線毎に設定したパケット・フローの振り分け区分に従って複数のパケット・スイッチに振り分けてパケット・スイッチングし、出力側回線毎にパケットを多重化して送出するスイッチング・システムであって、
該パケット・スイッチから到着したパケットの、パケット・スイッチ及び入力側回線毎の負荷状態を観測した結果に応じて該パケット・フローの振り分け区分を更新すると共に、該パケット・スイッチに対して該負荷状態を観測した結果を挿入したパケット・フローを送出する
ことを特徴とするスイッチング・システム。
【０１０９】
（付記３）　付記１又は付記２のいずれかに記載のスイッチング・システムであって、
パケット・スイッチに対して、該パケット・スイッチの状態を監視するための監視パケットを挿入したパケット・フローを送出し、該パケット・スイッチから到着したパケット・フローに挿入されている該監視パケットの有無による該パケット・スイッチの障害・未実装情報によって該パケット・フローの振り分け比を更新する
ことを特徴とするスイッチング・システム。
【０１１０】
（付記４）　付記１乃至付記３のいずれかに記載のスイッチング・システムのいずれかにおいて、
入力側回線から到着したパケットに付加されている情報に基づく演算値を２つ求め、
一方の演算値によって当該パケットを出力するパケット・スイッチのポートを指定し、
もう一方の演算値によって当該パケットを出力する出力側ポートを指定する
ことを特徴とするスイッチング・システム。
【０１１１】
（付記５）　入力側回線から到着した同期システムのデータを、同期システムにおけるタイム・スロット毎にパケット化し、
同期システムの同一タイム・スロットに対応するパケットを同一のパケット・スイッチに対して送出してパケット・スイッチングし、
出力回線毎にパケット化したデータから同期システムのデータに変換して送出する
構成を備える
ことを特徴とするスイッチング・システム。
【０１１２】
（付記６）　付記１乃至付記４のいずれかに記載のスイッチング・システムにおいて、
上記複数のパケット・スイッチを経由するパケットの負荷が均等になるようにパケット・フローの振り分け区分を設定する
ことを特徴とするスイッチング・システム。
【０１１３】
（付記７）　付記１乃至付記４のいずれかに記載のスイッチング・システムにおいて、
パケット・スイッチに振り分けられるパケットが当該パケット・スイッチの処理量を越えて輻輳が発生した場合には、該パケットを予備のパケット・バッファに退避させ、
該輻輳が解除された後に、該予備のパケット・バッファに退避した該パケットを、該パケットを本来処理すべきパケット・スイッチに接続されているパケット・バッファに転送する
ことを特徴とするスイッチング・システム。
【０１１４】
（付記８）　付記１乃至付記４のいずれかに記載のスイッチング・システムにおいて、
パケット・スイッチに振り分けられるパケットが当該パケット・スイッチの処理量を越えて輻輳が発生した場合には、該パケットにシーケンス番号を付加して各パケット・スイッチに均等に振り分けて、
各パケット・スイッチの出力側においてシーケンス番号順に読み出す
ことを特徴とするスイッチング・システム。
【０１１５】
【発明の効果】
以上詳述した如く、本発明により、入力側回線、出力側回線の回線速度が高速な場合にも、高速化が困難なパケット処理を低速に抑えながら大容量のパケットをスイッチング可能なスイッチング・システムを実現することができる。
即ち、第一の発明のスイッチング・システムは、同一の付加情報を持つパケット・フローを同一のパケット・スイッチに振り分け、該入力側回線から到着したパケットの、パケット・スイッチ及び出力側回線毎の負荷状態を観測した結果に応じて、該パケット・フローの振り分け区分を更新するので、該パケット・フローの振り分け区分は変化する負荷状態に対応するものとなり、該パケット・スイッチの負荷を平準化することが可能になり、スイッチング・システムにおけるパケット処理の低速化が可能になる。又、同一の付加情報を持つパケット・フローが同一のパケット・スイッチを経由するため、出力側回線においてパケットの順序を入れ替える必要がない。
【０１１６】
又、第二の発明のスイッチング・システムは、該パケット・スイッチに対して、該パケット・スイッチの状態を監視するための監視パケットを挿入したパケット・フローを送出し、該パケット・スイッチから到着したパケット・フローに挿入されている該監視パケットの有無による該パケット・スイッチの障害・未実装情報によって該パケット・フローの振り分け比を更新するので、該パケット・フローの振り分け区分は変化する負荷状態に対応するものとなり、該パケット・スイッチの負荷を平準化することが可能になり、スイッチング・システムにおけるパケット処理の低速化が可能になる。
【０１１７】
又、第三の発明のスイッチング・システムは、該パケット・スイッチから到着したパケットの、パケット・スイッチ及び入力側回線毎の負荷状態を観測した結果に応じて該パケット・フローの振り分け区分を更新すると共に、該パケット・スイッチに対して該負荷状態を観測した結果を挿入したパケット・フローを送出するので、該パケット・フローの振り分け区分は変化する負荷状態に対応するものとなり、該パケット・スイッチの負荷を平準化することが可能になり、スイッチング・システムにおけるパケット処理の低速化が可能になる。
【０１１８】
又、第四の発明のスイッチング・システムは、入力側回線から到着したパケットに付加されている情報に基づく演算値を２つ求め、一方の演算値によって当該パケットを出力するパケット・スイッチのポートを指定し、もう一方の演算値によって当該パケットを出力する出力側回線又は出力側論理ポートを指定するので、出力側の回線容量を任意に設定することができる。
【０１１９】
更に、第五の発明のスイッチング・システムは、入力側回線から到着した同期システムのデータを、同期システムにおけるタイム・スロット毎にパケット化し、同期システムの同一タイム・スロットに対応するパケットを同一のパケット・スイッチに対して送出してパケット・スイッチングし、出力回線毎にパケット化したデータから同期システムのデータに変換して送出するので、同期システムのデータのスイッチングをパケット・スイッチングの技術によって行なうことができる。従って、この発明の技術と第一乃至第四の発明のいずれかの技術を組み合わせることによって、同期データとパケット・データを共通のスイッチング技術によってスイッチングすることが可能になる。
【図面の簡単な説明】
【図１】本発明のパケット・スイッチング・システムの第一の実施の形態。
【図２】図１の構成におけるパケット・フロー振り分け部の基本構成。
【図３】監視パケットによりパケット・フロー制御を行なう場合のパケット・フロー振り分け部及びパケット多重部の構成。
【図４】パケット・スイッチ障害時のパケット・フロー振り分け処理の概要を説明する図。
【図５】出力側での負荷観測によりパケット・フロー制御を行なうパケット・フロー振り分け部及びパケット多重部の構成。
【図６】論理マルチ・リンク振り分けの概要を説明する図。
【図７】論理マルチ・リンクへのパケット・フロー振り分け処理を説明する図。
【図８】ハッシュ値と論理マルチ・リンク振り分けの関係を説明する図。
【図９】本発明のパケット・スイッチング・システムの第二の実施の形態。
【図１０】図９の構成におけるパケット・バッファ部の構成。
【図１１】オーバー・レート対策をしたパケット・バッファ部の構成（その１）。
【図１２】オーバー・レート対策をしたパケット・バッファ部の構成（その２）。
【図１３】パケット・フロー振り分け処理のフローチャート。
【図１４】入力側で負荷観測する時の振り分け情報更新のフローチャート。
【図１５】出力側で負荷観測する時の振り分け情報更新のフローチャート。
【図１６】従来の一般的なパケット・スイッチング・システム。
【図１７】従来のビット・スライス方式のパケット・スイッチング・システム。
【図１８】従来のパケット・スライス方式のパケット・スイッチング・システム（その１）。
【図１９】従来のパケット・スライス方式のパケット・スイッチング・システム（その２）。
【符号の説明】
１−１、１−１ｃ　入力側回線インタフェース
１−２、１−２ｃ　入力側回線インタフェース
１−３、１−３ｃ　入力側回線インタフェース
１−４、１−４ｃ　入力側回線インタフェース
１−５、１−５ｃ　入力側回線インタフェース
１−６、１−６ｃ　入力側回線インタフェース
２−１、２−１ａ、２−１ｂ、２−１ｃ　パケット・スイッチ
２−２、２−２ａ、２−２ｂ、２−２ｃ　パケット・スイッチ
２−３、２−４、２−４（α−１）パケット・スイッチ
２−５、２−５（α−１）　クロスバー・スイッチ
３−１、３−１ａ、３−１ｂ、３−１ｃ　出力側回線インタフェース
３−２、３−２ｃ　出力側回線インタフェース
３−３、３−３ｃ　出力側回線インタフェース
３−４、３−４ｃ　出力側回線インタフェース
３−５、３−５ｃ　出力側回線インタフェース
１１　物理層終端部
１２　パケット・フロー振り分け部
１２ａ　パケット・フロー振り分け部
１２−１　ハッシュ演算部
１２−２　振り分け判定・調整部
１２−３　負荷観測部
１２−４　分配部
１２−４ａ　分配部
１２−４ｂ　分配部
１２−５　パケット・バッファ
１２−５ａ　パケット・バッファ
１２−５ａ−１　パケット・バッファ部
１２−５ａ−２　読み出し制御部
１２−５ｂ　パケット・バッファ
１２−５ｂ−１　パケット・バッファ部
１２−５ｂ−２　読み出し制御部
１２−６　監視パケット挿入部
１２−６ａ　監視パケット挿入部
１２−７　ＳＮ付与部
１３　ＳＴＭパケット生成部
１４　パケット処理部
１５　ビット・スライス部
１６　パケット・スライス部
１６ａ　パケット・スライス部
１７　スケジューラ
３１　パケット多重部
３１ａ　パケット多重部
３１−１　監視パケット抽出部
３１−２　パケット・バッファ
３１−２ａ　パケット・バッファ
３１−２ａ−１　パケット・バッファ部
３１−２ａ−２　読み出し制御部
３１−２ｂ　パケット・バッファ
３１−２ｂ−１　パケット・バッファ部
３１−２ｂ−２　読み出し制御部
３１−２ｂ−３　パケット・バッファ部
３１−２ｂ−４　セレクタ
３１−２ｂ−５　読み出し制御部
３１−３　多重部
３１−３ａ　多重部
３１−４　負荷観測部
３２　物理層終端部
３３　ＳＴＭパケット分解部
３４　ビット・マージ部
３５　パケット順序入れ替え部
【図１】
2004064619.tif 000003
【図２】
2004064619.tif 000004
【図３】
2004064619.tif 000005
【図４】
2004064619.tif 000006
【図５】
2004064619.tif 000007
【図６】
2004064619.tif 000008
【図７】
2004064619.tif 000009
【図８】
2004064619.tif 000010
【図９】
2004064619.tif 000011
【図１０】
2004064619.tif 000012
【図１１】
2004064619.tif 000013
【図１２】
2004064619.tif 000014
【図１３】
2004064619.tif 000015
【図１４】
2004064619.tif 000016
【図１５】
2004064619.tif 000017
【図１６】
2004064619.tif 000018
【図１７】
2004064619.tif 000019
【図１８】
2004064619.tif 000020
【図１９】
2004064619.tif 000021