(57)【要約】【課題】  本発明は障害などでパケットの振り分け先として停止する必要のあるポートへの振り分けを防止し、且つ、振り分け先ポートの負荷分散を行うため、一つのパケットの送信先アドレス情報から、２以上複数Ｎの出力ポート番号のうち振り分け停止の一つの非選択ポート番号を除いた複数Ｎの出力ポート番号のいずれかの出力ポートに振り分けることを目的とする。【解決手段】  一つのパケットの送信先アドレス情報とパケット振り分け停止の非選択ポート番号を受信し、アドレス情報から複数Ｎ−１の出力ポート番号のいずれか一つを選択し、選択した番号に非選択ポート番号と、数１を加算した結果にモジュロＮ演算を行う。【選択図】  図４
2005277915.tif 000002
【特許請求の範囲】
【請求項１】
一つのパケットの送信先アドレス情報から、２以上複数Ｎの出力ポート番号のうち振り分け停止の一つの非選択ポート番号を除いた前記複数Ｎの出力ポート番号のいずれか一つをパケット出力ポートとするパケット振り分け方法であって、
前記アドレス情報を受信し、
前記非選択ポート番号を受信し、
前記アドレス情報から複数Ｎ−１の出力ポート番号のいずれか一つを選択し、
前記選択した番号に前記非選択ポート番号と数１を加算し、
前記加算結果にモジュロＮ演算を行い、
前記モジュロＮ演算の値を前記パケット出力ポートとすることを特徴とするパケット振り分け方法。
【請求項２】
一つのパケットの送信先アドレス情報から、２以上複数Ｎの出力ポート番号のいずれか一つを前記パケット出力ポートとするパケット振り分け方法であって、
前記アドレス情報を受信し、
パケット振り分けを停止する非選択ポート番号を受信し、
前記非選択ポート番号がある場合は、前記アドレス情報から複数Ｎ−１の出力ポート番号のいずれか一つを選択し、
前記選択した番号に前記非選択ポート番号と数１を加算し、
前記加算結果にモジュロＮ演算を行い、
前記モジュロＮ演算の値を前記パケット出力ポートとし、
前記非選択ポート番号が無い場合は、前記アドレス情報から複数Ｎの出力ポート番号のいずれか一つを選択し、
前記パケット出力ポートとすることを特徴とするパケット振り分け方法。
【請求項３】
一つのパケットの送信先アドレス情報から、２以上複数Ｎのパケット出力ポート番号のいずれか一つを前記パケット出力ポートとするパケット振り分け装置であって、
前記パケット振り分け装置は
前記送信先アドレス情報を受信する手段と、
前記複数Ｎのパケット出力ポート番号のうち振り分け停止の非選択ポート番号を受信する手段と、
前記受信アドレス情報から前記複数Ｎの出力ポートのいずれか一つを出力ポート番号として出力するＮポート振り分け手段と、
前記受信アドレス情報から前記複数Ｎ−１の出力ポートのいずれか一つを出力ポート番号として出力するＮ−１ポート振り分け手段と、
前記Ｎ−１ポート振り分け手段の出力番号に前記非選択ポート番号と数１を加算してモジュロＮ演算を行うモジュロ演算手段を備えたことを特徴とするパケット振り分け装置。
【請求項４】
請求項１記載のパケット振り分け方法であって、
前記アドレス情報から複数Ｎ−１の出力ポート番号のいずれか一つを選択する方法は、
Ｎ−１のハッシュ演算結果を選択する、あるいは、
Ｎ−１の乱数発生結果を選択する、あるいは、
Ｎ−１進カウンタの出力を選択する、
いずれかの方法を選択することを特徴とする請求項１記載のパケット振り分け方法。
【請求項５】
請求項２記載のパケット振り分け方法であって、
前記アドレス情報から複数Ｎの出力ポート番号のいずれか一つを選択する方法は、
Ｎのハッシュ演算結果を選択する、あるいは、
Ｎの乱数発生結果を選択する、あるいは、
Ｎ進カウンタの出力を選択する、あるいは、
アドレス番号を出力ポート番号に変換するテーブル出力を選択する、
いずれかの方法を選択することを特徴とする請求項２記載のパケット振り分け方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット伝送におけるパケット振り分け方法及びパケット振り分け装置に係わり、特に、障害などにより振り分けを停止する必要のあるポートへの振り分けを防止し、且つ、振り分け先ポートの負荷分散を行うパケット振り分け方法及びパケット振り分け装置に関する。
【背景技術】
【０００２】
通信ネットワークにおいて、パケット伝送はいたるところで行われている。近年のインタネットの進展により、通信ネットワークにおける特定ポートに負荷が集中するという問題が生じてきている。これより、複数ポートへの振り分け可能なパケットを障害などにより、振り分けを停止すべきポートを監視しながら、振り分け先ポートの負荷分散を行う事が必要である。
【０００３】
図１は本発明の対象とするシステム構成図である。通信ネットワーク１を介して通信装置３−ａ、３−ｂ、３−ｃ、４−ａ、４−ｂの間で通信を行う。本発明の対象とする通信処理装置２は本通信ネットワークを構成する装置として伝送路１−１、伝送路１−ｍと、伝送路２−１、伝送路２−ｎの伝送路のパケットの双方向処理を行う。
【０００４】
通信処理装置２は各伝送路とインタフェースし、各伝送路に対応した回線終端部１１−ａ、１１−ｂ、１２−ａ、１２−ｂ、パケット振り分けの制御を行うパケット振り分け制御部１０で構成する。パケット振り分け制御部１０は、パケットの転送処理を行う回線終端部１１−ａ、１１−ｂ、１２−ａ、１２−ｂ、に対応する転送処理部２３−ａ、２３−ｂ、２４−ａ、２４−ｂと、パケット振り分けのスイッチ動作を行うスイッチ部２２と、装置全体の制御及び、障害によりパケット振り分け先として選択停止ポートの制御を行う装置制御部２１で構成する。図１では便宜上、信号の流れは片方向を示し、以下の説明も片方向で行う。
【０００５】
例えば、通信装置３−ａから通信装置４−ａにパケットを送信する場合、以下の処理を行う。通信装置３−ａからのパケットは伝送路１−１を介して、通信処理装置２の回線終端部１１−ａよりパケット振り分け制御部１０の転送処理部２３−ａに入力する。パケット振り分け制御部１０では相手先通信装置４−ａのアドレス番号に対応して定まる例えば、伝送路２−１に送出するためにパケット振り分けを行い、スイッチ部２２の動作により、転送処理部２４−ａに送り、回線終端部１２−ａを介して、伝送路２−１より通信装置４−ａに送信する。パケット振り分けが可能な伝送路としては複数あり、各伝送路の輻輳状態、品質などに対応してパケット振り分け制御部１０で振り分け先を決定する。振り分け先の決定において、振り分け先の伝送路が、例えば障害により使用できない場合があり、各々の回線終端部では各伝送路の状態を監視し、個別伝送路の障害に対し、リンクダウン信号を出力する。
【０００６】
装置制御部２１は振り分け先停止伝送路の情報を各々の転送処理部２３−ａ、２３−ｂに送り、装置制御部２１、スイッチ部２２、各転送処理部２３が連動して、パケット振り分け先を制御する。
【０００７】
図２は本発明の対象とするシステム構成の適用例である。図２において、ルータ６は、インタネット５を介して、クライアント７−ａ、７−ｂ、７−ｃからパケットを受信し、負荷分散装置８−ａ、８−ｂのいずれかを介してパケットを送信先ウエブサーバ９−ａ、９−ｂ、９−ｃ、９−ｄに送信する。この場合、一つの負荷分散装置からのパケット送信先として、複数のウエブサーバがある。ルータ６はネットワークの輻輳状態などによる予め定めた振り分け先のポリシーに従い、受信したパケットをいずれかの負荷分散装置に送信する。
【０００８】
また、イーサネット（登録商標）におけるリンクアグリゲーションにおいても、一つの入力ポートのパケットを複数の出力ポートいずれかに振り分ける機能が必要となる。説明は省略する。
【０００９】
図３は本発明の一実施形態のパケット振り分け制御部の構成を示す図である。図３を使用して従来構成でのパケット振り分けの動作を説明する。
【００１０】
パケット入力ポートより入力したパケットからアドレスを抽出するアドレス抽出部３１、入力パケットを一時的に保持するレジスタ３２、抽出したアドレスより振り分け先ポートを決定するパケット振り分け部３０、入力パケットをパケット振り分け部３０で決定したパケット出力ポートに出力するスイッチ部２２で構成する。
【００１１】
アドレス抽出部３１で入力パケットよりアドレスを抽出し、抽出したアドレスをパケット振り分け部３０に送る。パケット振り分け部３０で決定した振り分け先ポート番号をスイッチ部２２に送る。スイッチ部２２は、入力パケットを時間待ちのためレジスタ３２に保持してある入力パケットを読み出し、パケット送り出し先として決定したパケット出力ポートに送信する。
【００１２】
図８はパケット振り分け部の従来構成を示す図である。一つのアドレス入力に対し、出力ポート数がＮある場合のパケット振り分け方法を述べる。アドレスはＮのハッシュ６１とハッシュ値から出力ポート番号への変換を行うハッシュ値／ポート番号変換テーブル６２で構成する。Ｎのハッシュ６１において、Nの剰余を求めるハッシュ演算により、振り分け先アドレス番号よりハッシュ値を求める。ハッシュ値／ポート番号変換テーブル６２により、該ハッシュ値に対応した出力先ポート番号を決定する。
【００１３】
ハッシュ値を出力ポート番号に変換する方法の公知技術として、例えば、特許文献１がある。特許文献１では、クライアントからの情報をインタネット、ルータ、及び複数の負荷分散装置を介して複数のＷｅｂサ−バに送信する通信ネットワークにおいて、ルータは複数負荷分散装置への中継先決定方法として、宛先ポート番号を検索キーとしたポリシールーティングテーブルの結果よりハッシュ値によるハッシュテーブルより中継先を決めている。
【００１４】
しかしながら、上述した方法では、障害などにより、全てのポートが出力先ポートとして、振り分けられない場合があり、ハッシュ値／ポート番号変換テーブル６２で出力先ポート番号として設定できないポート番号をテーブルから外す必要がある。
【００１５】
対応方法として、NのハッシュをN−1のハッシュに作りなおすとともに、ハッシュ値／ポート番号変換テーブル６２を書き換える方法がある。書き換える簡単な方法としては、N−1のハッシュ出力からNの剰余を求める演算をN−1の剰余を求める演算に変えることで可能であり、除算時の除数ＮをＮ−１に変えることで可能となる。しかしながら、演算結果として得られる値は0からN−2までのN−1種類となり、ポート番号が0からN−2の間のポートに故障があった場合は、N−1のハッシュに変えても出力に故障したポート番号がでてきてしまう可能性があり問題となる。
【００１６】
この対応方法として、ハッシュ値／ポート番号変換テーブル６２から故障したポート番号を取り除いて、0からN−１までの値に変換する。この方法では、NのハッシュをN−1のハッシュに作り直すとともに、ハッシュ値／ポート番号変換テーブル６２を書き換える必要があり、その間はパケットの出力先ポートを決定できないため、パケットの転送そのものを止める問題がある。
【００１７】
このため、対策技術として、Nのハッシュ６１はそのままにしておき、ハッシュ値／ポート番号変換テーブル６２を動的に書き換える方法がある。特許文献２では外部のネットワークと複数の処理ノードを有するクラスタネットワークとを接続するハッシュ計算部を備えた装置におけるパケットを処理ノードへの振り分ける方法として、上記ハッシュ値／ポート番号変換テーブル６２に相当する宛先制御の分配制御表を備え、故障した処理ノードへのハッシュ内容を他の故障していない処理ノードとなるように前記分配制御表を動的に変更する技術である。
【００１８】
本方法では、分配制御表を動的に変更することにより、上述した欠点は避けることが可能であるが、元々故障などで割り当てをしてはならない使えなくなったポートに振り分けるはずだったパケットが、別の特定のポートに全てふり分けられるため、該当するポートの負荷が非常に大きくなってしまう問題がある。また、動的に書き換えることは装置の処理量の増大を招き、装置資源を有効活用できない問題がある。
【特許文献１】特開２００３−２８１１０９号公報
【特許文献２】特開平１１−２７３２０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１９】
解決しようとする課題は、障害などでパケットの振り分け先として停止する必要のあるポートへの振り分けを防止し、且つ、振り分け先ポートの負荷分散を可能にするパケット振り分け方法及びパケット振り分け装置を実現する点である。
【課題を解決するための手段】
【００２０】
第１の発明は、一つのパケットの送信先アドレス情報から、２以上複数Ｎの出力ポート番号のうち振り分け停止の一つの非選択ポート番号を除いた前記複数Ｎの出力ポート番号のいずれか一つをパケット出力ポートとするパケット振り分け方法である。
【００２１】
前記アドレス情報と前記非選択ポート番号を受信する。前記アドレス情報から複数Ｎ−１の出力ポート番号のいずれか一つを選択し、前記選択した番号に前記非選択ポート番号と、数１を加算した結果にモジュロＮ演算を行う。
【００２２】
第２の発明は、一つのパケットの送信先アドレス情報から、２以上複数Ｎの出力ポート番号のいずれか一つを前記パケット出力ポートとするパケット振り分け方法である。
【００２３】
前記アドレス情報とパケット振り分け停止の非選択ポート番号を受信する。前記非選択ポート番号がある場合は、前記アドレス情報から複数Ｎ−１の出力ポート番号のいずれか一つを選択し、前記選択した番号に前記非選択ポート番号と数１を加算した結果にモジュロＮ演算を行い、前記モジュロＮ演算の値を前記パケット出力ポートとする。
【００２４】
前記非選択ポート番号が無い場合は、前記アドレス情報から複数Ｎの出力ポート番号のいずれか一つを選択して前記パケット出力ポートとする。
【００２５】
第３の発明は一つのパケットの送信先アドレス情報から、２以上複数Ｎのパケット出力ポート番号のいずれか一つを前記パケット出力ポートとするパケット振り分け装置である。
【００２６】
前記パケット振り分け装置は前記送信先アドレス情報を受信する手段と、前記複数Ｎのパケット出力ポート番号のうち振り分け停止の非選択ポート番号を受信する手段と、前記受信アドレス情報から前記複数Ｎの出力ポートのいずれか一つを出力ポート番号として出力するＮポート振り分け手段と前記受信アドレス情報から前記複数Ｎ−１Ｎの出力ポートのいずれか一つを出力ポート番号として出力するＮ−１ポート振り分け手段と前記Ｎ−１ポート振り分け手段の出力番号に前記非選択ポート番号と数１を加算してモジュロＮ演算を行うモジュロ演算手段を備える。
【００２７】
第４の発明は請求項１記載のパケット振り分け方法における前記アドレス情報から複数Ｎ−１の出力ポート番号のいずれか一つを選択する方法である。
【００２８】
Ｎ−１のハッシュ演算結果を選択する、あるいは、Ｎ−１の乱数発生結果を選択する、あるいは、Ｎ−１進カウンタの出力を選択する。
【００２９】
第５の発明は請求項２記載のパケット振り分け方法における前記アドレス情報から複数Ｎの出力ポート番号のいずれか一つを選択する方法である。
【００３０】
Ｎのハッシュ演算結果を選択する、あるいは、Ｎの乱数発生結果を選択する、あるいは、Ｎ進カウンタの出力を選択する、あるいは、アドレス番号を出力ポート番号に変換するテーブル出力のいずれかを選択する。
【発明の効果】
【００３１】
本発明の効果は、障害などでパケットの振り分け先として停止する必要のある出力ポートへの振り分けを防止し、且つ、振り分け先ポートの負荷分散を行うことができるパケット振り分けの方法及び振り分け装置を提供できる利点がある。
【発明を実施するための最良の形態】
【００３２】
以下、図面を参照して実施態様について述べる。
【実施例１】
【００３３】
まず、図３で示す本発明の一実施形態のパケット振り分制御部の構成について、従来例でのパケット振り分けの動作について説明した部分と重複する部分も含め、本発明のパケット振り分け方法について述べる。
【００３４】
パケット振り分け制御部は入力パケットからアドレスを抽出するアドレス抽出部３１、抽出したアドレスよりパケットの出力先ポート番号を決定するパケット振り分け部３０、入力パケットを一時的に保持するレジスタ３２、パケット振り分け部３０で決定した出力先ポート番号のポートに入力パケットを出力するスイッチ部２２、図１で示す回線終端部２４−ａ、２４−ｂからのリンクダウン信号よりリンクダウン信号を監視し、パケット振り分け部３０にパケット振り分け停止の非選択ポート番号を出力すると共に、装置全体の制御を行う装置制御部２１で構成する。パケット振り分け部３０は入力ポート数に対応する０からＭの複数で構成する。図３では各々の信号の流れについては方向のみを示し、以下動作を述べる。
【００３５】
入力パケットをアドレス抽出部３１とレジスタ３２に入力する。アドレス抽出部３１は入力パケットより送信先アドレスを抽出し、パケット振り分け部３０に送信する。レジスタ３２はパケットを一時的に保持しておく。装置制御部２１は各回線終端部からのリンクダウン信号を監視し、振り分け停止と判断した非選択ポートを抽出し、パケット振り分け部３０に送信する。複数のリンクダウン信号がある場合、装置制御部２１は一つのパケット振り分け部には一つの非選択ポート番号のみ送信するよう制御する。即ち、装置制御部２１は一つの非選択ポート番号を複数のパケット振り分け部３０に送信するが、一つのパケット振り分け部３０には一つの非選択ポート番号のみ送信する。
【００３６】
パケット振り分け部３０は、振り分け停止の非選択ポート番号を含む全ポート番号を振り分けて出力するＮポート振り分け部４１、全Ｎポートから１ポート除いたＮ−1のポート番号を振り分けて出力するＮ−1ポート振り分け部４２、Ｎ−1ポート振り分け部４２の出力から非選択ポート番号ｋを除く演算を行うモジュロ演算部４３、Ｎポート振り分け部４１の出力とモジュロ演算部４３の出力のいずれか片方を選択制御する選択制御部４４で構成する。
【００３７】
アドレス抽出部３１からのアドレスをＮポート振り分け部４１、Ｎ−1ポート振り分け部４２に入力する。装置制御部２１からの非選択ポート番号をモジュロ演算部４３、選択制御部４４に入力する。この非選択ポート番号は、振り分け停止の出力ポートが無く、全ての出力ポートが振り分け先ポートとして選択できることを示す情報も含んでいる。
【００３８】
Ｎポート振り分け部４１は、入力アドレス番号より後述する振り分け方法により、振り分け停止の非選択ポート番号を含む全出力ポート先番号のいずれか一つを選択し、選択制御部４４に入力する。Ｎ−1ポート振り分け部４２は後述する振り分け方法により、Ｎの出力ポート数から１少ないＮ−1の出力ポート番号のいずれか一つを選択し、モジュロ演算部４３に入力する。Ｎ−1ポート振り分け部４２の出力は非選択ポート番号を含む場合もある。
【００３９】
モジュロ演算部４３はＮ−1ポート振り分け部４２で選択した出力ポート番号から後述する非選択ポート番号を取り除く演算を行い出力先ポート番号として選択制御部４４に入力する。選択制御部４４は非選択ポートの番号の有無を識別し、非選択ポート番号がある場合は、モジュロ演算部４３からの出力先ポート番号を選択し、非選択ポート番号が無い場合は、Ｎポート振り分け部４１からの番号を出力先ポート番号として選択する。選択した出力先ポート番号を入力パケットの出力先ポート番号としてスイッチ部２２に送信する。スイッチ部２２はレジスタ３２に一時保持してある入力パケットを選択制御部４４で選択決定した出力先ポート番号の出力先ポートに出力する。
【００４０】
図４は本発明の一実施形態のパケット振り分け部の構成を示す図である。Ｎポート振り分け部４１はＮのハッシュ５１−1で構成する。Ｎ−1ポート振り分け部４２はＮ−1のハッシュ５２−1で構成する。モジュロ演算部４３は加算器１  ５３、加算器２  ５４、モジュロＮ演算器５５で構成する。
【００４１】
入力パケットから抽出したアドレスをＮのハッシュ５１−1とＮ−1のハッシュ５２−1に入力する。非選択ポート番号ｋを加算器１  ５３に入力する。Ｎのハッシュ５１−1でＮのハッシュ演算を行い、０からＮ−1の値のいずれかを出力先ポート番号として出力する。この出力には非選択ポート番号であるｋを含む、０からＮ−1の全てのポートのいずれか一つを出力する。
【００４２】
一方、N−1のハッシュ５２−1にアドレスを入力することにより、Nのハッシュ演算同様に、出力として0からN−2の値を得、モジュロ演算部４３に入力する。この０からN−2には演算処理から明らかなように非選択ポート番号ｋを含む場合もある。
【００４３】
N−1のハッシュ５２−1と非選択ポート番号と数“１”の加算を行う。図４では以下の説明上、モジュロ演算部４３の加算器１  ５３、加算器２  ５４の2段階の加算例を示す。
【００４４】
非選択ポート番号がある場合、入力した非選択ポート番号に“１”を加える演算を加算器１  ５３で行い、加算結果を加算器２  ５４に入力し、N−1のハッシュ５２−1の出力と加算する。非選択ポート番号が無い場合、加算器２  ５４の出力はN−１のハッシュ出力と同一である。加算器２  ５４の出力をモジュロＮ演算器５５に入力する。モジュロＮ演算器５５はモジュロＮの演算により、非選択ポート番号を除く０からN−１の入力パケットの出力先ポート番号を決定する。モジュロN演算器５５の出力は非選択ポート番号ｋを含んでいないことは以下の計算式より明らかである。
【００４５】
モジュロN演算器の出力がｋとなるN−1のハッシュ出力を（N−ｘ）とすると、以下の計算式が成立つ。
【００４６】
[(N−ｘ)+(k+1)] mod N = (N−ｘ+k+1) mod N =ｋ−ｘ+1＝k
これより、ｘ＝１となる。
【００４７】
即ち、モジュロN演算器５５の出力が非選択ポート番号ｋになるのはハッシュ出力がN−１の場合である。しかしN−1のハッシュの出力は0からN−2であり、N−1の値を出力することは無く、モジュロＮ演算器５５の出力は非選択ポートｋを出力することはない。
【００４８】
図５は本発明の一実施形態のモジュロ演算部の演算例を示す図である。ここではＮ=７、非選択ポート番号k＝３の場合の演算結果を示している。
【００４９】
N=７なので、N−1のハッシュ出力は0から5までの6種類になる。k=3に対しk+1=4を0から5までのそれぞれに加えると、図５の２段目となる。これにN=7の剰余をとった結果が３段目で、３段目を見ると、非選択ポート番号である値3以外の0から５までの値が出力となる。
【００５０】
以上述べたように選択制御部４４の出力は非選択ポート番号kを除くN−1のパケット出力ポート先番号を選択する事が出来る。
【００５１】
ハッシュ演算は一つの入力アドレスに対し決まった値を簡単な演算により出力するので、同一のアドレスを有するパケットを常に同一ポートに振り分けることができパケットの順序を保存することができる。
【実施例２】
【００５２】
次にＮポート振り分け部４１、Ｎ−1ポート振り分け部４２の各々について本発明の他の実施例を述べる。
【００５３】
図６は本発明の一実施形態のＮポート振り分け部の他の構成を示す図である。以下同一の機能は同一の機能名称、番号で表す。図４で示したＮのハッシュ５１−１も併せて示す。
【００５４】
１）はＮの乱数発生による方法である。Ｎのハッシュに替えてＮの乱数発生部５１−２と、アドレス入力を契機としてＮの乱数発生を起動するトリガ発生部５６で構成する。Ｎの乱数発生部５１−２は０からＮ−1までの乱数を発生し、実施例1で示したＮのハッシュの出力と同一の機能を実現する。
【００５５】
本方法は、一つのアドレスに対し出力は乱数であり、また、発生乱数の分布を制御することができるので、パケットの性質に適した乱数の分布で定まる負荷分散を行うことができる。
【００５６】
２）はＮ進カウンタによる方法である。Ｎのハッシュに替えてＮ進カウンタ５１−３と、アドレス入力を契機としてＮ進カウンタを起動するトリガ発生部５６で構成する。Ｎ進カウンタ０からＮ−1までの値を順次発生し、実施例1で示したＮのハッシュの出力と同一の機能を実現する。
【００５７】
本方法は、一つのアドレスに対し、カウンタ出力は入力アドレスの偏りの影響を受けないランダムな値を出力するため、均一な負荷分散を行うことができる。
【００５８】
３）はアドレス／ポート番号変換テーブル５１−４による方法である。実施例1で示したＮのハッシュの出力と同一の機能を動的に書き換えることなく実現する。
【００５９】
本方法は、アドレスの統計的偏りが予め分かっているパケットに対し、偏りを考慮して変換テーブルを作ることにより、適切な負荷分散を行うことができる。
【００６０】
図７は本発明の一実施形態のＮ−1ポート振り分け部の他の構成を示す図である。図４で示したＮ−１のハッシュ５２−１も併せて示す。
【００６１】
１）はＮ−1の乱数発生による方法である。Ｎ−1のハッシュに替えてＮ−1の乱数発生部５２−２と、アドレス入力を契機としてＮ−1の乱数発生を起動するトリガ発生部５６で構成する。Ｎ−1の乱数発生部５２−２は０からＮ−２までの乱数を発生し、実施例1で示したＮの−1ハッシュの出力と同一の機能を実現する。
【００６２】
本方法は、図６の説明における１）のＮの乱数発生による方法と同様に、通信するパケット情報の性質に適した乱数の分布で定まる負荷分散を行うことができる。
【００６３】
２）はＮ−1進カウンタによる方法である。Ｎ−1のハッシュに替えてＮ−1進カウンタ５２−３と、アドレス入力を契機としてＮ−1進カウンタを起動するトリガ発生部５６で構成する。Ｎ−1進カウンタ０からＮ−２までの値を順次発生し、実施例1で示したＮのハッシュの出力と同一の機能を実現する。
【００６４】
本方法は、図６の説明における２）のＮ進カウンタによる方法と同様に、均一な負荷分散を行うことができる。
【００６５】
次ぎに図６、図７で述べたＮポート振り分け部の構成方法、Ｎ−1ポート振り分け部の構成方法の組み合わせについて述べる。
【００６６】
図６で述べたＮポート振り分け部の各々の構成方法、図７で述べたＮ−1ポート振り分け部の各々の構成方法は、個々にその機能を実現できることは上述の説明から明らかである。これより、図６、図７で述べた構成方法を任意の組み合わせで行うことができ、各々異なった性質負荷分散のパケット振り分けを実現する事が出来る。
【００６７】
本パケット振り分け方法を適用する通信ネットワークの構成要素には、通信情報の性質、振り分け先伝送路の容量、振り分け先装置の処理能力など種々差がある。上述の構成方法を組み合わせて対象とする通信ネットワ−クに適切な方法を選択することが出来る。例えば、振り分け先の処理能力が高い装置、低い装置などの差がある場合、あるいは伝送路の容量に差がある場合、その能力に応じて、振り分けの生起確率を制御し、適切な負荷分散のパケット振り分けを実現することができる。
（付記１）
一つのパケットの送信先アドレス情報から、２以上複数Ｎの出力ポート番号のうち振り分け停止の一つの非選択ポート番号を除いた前記複数Ｎの出力ポート番号のいずれか一つをパケット出力ポートとするパケット振り分け方法であって、
前記アドレス情報を受信し、
前記非選択ポート番号を受信し、
前記アドレス情報から複数Ｎ−１の出力ポート番号のいずれか一つを選択し、
前記選択した番号に前記非選択ポート番号と数１を加算し、
前記加算結果にモジュロＮ演算を行い、
前記モジュロＮ演算の値を前記パケット出力ポートとすることを特徴とするパケット振り分け方法。
（付記２）
一つのパケットの送信先アドレス情報から、２以上複数Ｎの出力ポート番号のいずれか一つを前記パケット出力ポートとするパケット振り分け方法であって、
前記アドレス情報を受信し、
パケット振り分けを停止する非選択ポート番号を受信し、
前記非選択ポート番号がある場合は、前記アドレス情報から複数Ｎ−１の出力ポート番号のいずれか一つを選択し、
前記選択した番号に前記非選択ポート番号と数１を加算し、
前記加算結果にモジュロＮ演算を行い、
前記モジュロＮ演算の値を前記パケット出力ポートとし、
前記非選択ポート番号が無い場合は、前記アドレス情報から複数Ｎの出力ポート番号のいずれか一つを選択し、
前記パケット出力ポートとすることを特徴とするパケット振り分け方法。
【００６８】
（付記３）
一つのパケットの送信先アドレス情報から、２以上複数Ｎのパケット出力ポート番号のいずれか一つを前記パケット出力ポートとするパケット振り分け装置であって、
前記パケット振り分け装置は
前記送信先アドレス情報を受信する手段と、
前記複数Ｎのパケット出力ポート番号のうち振り分け停止の非選択ポート番号を受信する手段と、
前記受信アドレス情報から前記複数Ｎの出力ポートのいずれか一つを出力ポート番号として出力するＮポート振り分け手段と、
前記受信アドレス情報から前記複数Ｎ−１の出力ポートのいずれか一つを出力ポート番号として出力するＮ−１ポート振り分け手段と、
前記Ｎ−１ポート振り分け手段の出力番号に前記非選択ポート番号と数１を加算してモジュロＮ演算を行うモジュロ演算手段を備えたことを特徴とするパケット振り分け装置。
【００６９】
（付記４）
付記１記載のパケット振り分け方法であって、
前記アドレス情報から複数Ｎ−１の出力ポート番号のいずれか一つを選択する方法は、
Ｎ−１のハッシュ演算結果を選択する、あるいは、
Ｎ−１の乱数発生結果を選択する、あるいは、
Ｎ−１進カウンタの出力を選択する、
いずれかの方法を選択することを特徴とする付記１記載のパケット振り分け方法。
【００７０】
（付記５）
付記２記載のパケット振り分け方法であって、
前記アドレス情報から複数Ｎの出力ポート番号のいずれか一つを選択する方法は、
Ｎのハッシュ演算結果を選択する、あるいは、
Ｎの乱数発生結果を選択する、あるいは、
Ｎ進カウンタの出力を選択する、あるいは、
アドレス番号を出力ポート番号に変換するテーブル出力を選択する、
いずれかの方法を選択することを特徴とする付記２記載のパケット振り分け方法。
【００７１】
（付記６）
付記３記載のパケット振り分け装置であって、
前記Ｎポート振り分け手段は、
Ｎのハッシュ演算を行うＮのハッシュ手段、あるいは、
Ｎの乱数を発生するＮの乱数発生手段、あるいは、
Ｎ進カウンタ手段、あるいは、
アドレス番号を出力ポート番号に変換するテーブル手段、
のいずれかの手段を備えることを特徴とする付記３記載のパケット振り分け装置。
【図面の簡単な説明】
【００７２】
【図１】本発明の対象とするシステム構成図である。
【図２】本発明の対象とするシステム構成の適用例である。
【図３】本発明の一実施形態のパケット振り分け制御部の構成を示す図である。
【図４】本発明の一実施形態のパケット振り分け部の構成を示す図である。
【図５】本発明の一実施形態のモジュロ演算部の演算例を示す図である。
【図６】本発明の一実施形態のＮポート振り分け部の他の構成を示す図である。
【図７】本発明の一実施形態のＮ−１ポート振り分け部の他の構成を示す図である。
【図８】パケット振り分け部の従来構成を示す図である。
【符号の説明】
【００７３】
１      通信ネットワーク
２      通信処理装置
３-ａ〜３-ｃ  通信装置
４-ａ〜４-ｂ  通信装置
５      インタネット
６      ルータ
７-ａ〜７-ｃ    クライアント
８-ａ〜８-ｂ    負荷分散装置
９-ａ〜９-ｄ    ウエブサーバ
１０    パケット振り分け制御部
１１-ａ〜１１-ｂ    回線終端部
１２-ａ〜１２-ｂ    回線終端部
２１    装置制御部
２２    スイッチ部
２３-ａ〜２３-ｂ    転送処理部
２４-ａ〜２４-ｂ    転送処理部
３０    パケット振り分け部
３１    アドレス抽出部
３２    レジスタ
４１    Ｎポート振り分け部
４２    Ｎ−１ポート振り分け部
４３    モジュロ演算部
４４    選択制御部
５１−１    Ｎのハッシュ
５１−２    Ｎの乱数発生
５１−３    Ｎ進カウンタ
５１−４    アドレス番号／ポート番号変換テーブル
５２−１    Ｎ−１のハッシュ
５２−２    Ｎ−１の乱数発生
５２−３    Ｎ−１進カウンタ
５３    加算器１
５４    加算器２
５５    モジュロＮ演算器
５６    トリガ発生
６１    Ｎのハッシュ
６２    ハッシュ値／ポート番号変換テーブル
【図１】
2005277915.tif 000003
【図２】
2005277915.tif 000004
【図３】
2005277915.tif 000005
【図４】
2005277915.tif 000006
【図５】
2005277915.tif 000007
【図６】
2005277915.tif 000008
【図７】
2005277915.tif 000009
【図８】
2005277915.tif 000010