(57)【要約】【課題】本発明の実施形態は、ネットワーク・トラフィックを共有する方法、装置およびシステムを提供する。【解決手段】方法は：上位ノードによって送られたメッセージにおいてフロー・ラベルを受け取り、隣り合う中間ノードのフロー・ラベルが異なるよう、該フロー・ラベルを調整し；調整されたフロー・ラベルに従って等コスト経路ルーティングを実行することを含む。本発明の実施形態において記載される技術的解決策では、受領されたメッセージにおけるフロー・ラベルが中間ノードにおいて調整され、それにより、隣り合う中間ノードによって獲得されるフロー・ラベルが互いに異なるようにされ、それにより各ノードのトラフィック共有が有効になり、各ノードのトラフィック共有の柔軟性が改善される。【選択図】図２
2014220837.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク・トラフィックを共有する方法であって、当該方法は、二つ以上の中間ノードが存在し、各中間ノードが同じ仕方でフロー・ラベルに従って等コスト・ルーティングを実行する場合に適用可能であり、当該方法は：
中間ノードが上位中間ノードによって送られたメッセージ中のフロー・ラベルを受け取る段階と；
前記中間ノードが、隣り合う中間ノードのフロー・ラベルが異なるよう、前記メッセージ中の前記フロー・ラベルを調整する段階と；
前記中間ノードが、調整されたフロー・ラベルに従って等コスト経路ルーティングを実行する段階とを含む、
方法。
【請求項２】
前記フロー・ラベルを調整する前記段階が、あらかじめ設定された規則に従って前記フロー・ラベルを調整する、請求項１記載の方法。
【請求項３】
前記上位ノードによって送られたメッセージ中のフロー・ラベルが、ラベル値フィールド、エクスペリメンタル・フィールド、スタック・ボトム同定フィールドおよび残存寿命フィールドを含む、請求項１または２記載の方法。
【請求項４】
前記上位ノードによって送られたメッセージ中のフロー・ラベルが、ラベル値フィールド、エクスペリメンタル・フィールド、スタック・ボトム同定フィールドおよび残存寿命フィールドを含む、請求項１ないし３のうちいずれか一項記載の方法。
【請求項５】
請求項２ないし４のうちいずれか一項記載の方法であって、前記あらかじめ設定された規則が、実際のネットワーク・トラフィック条件またはオペレーターの特定の設定に従って決定され：
前記フロー・ラベルの値または前記フロー・ラベル中のラベル値フィールドの値を等コスト・ルートの総数を法として表す演算を実行する；または
前記フロー・ラベル中のラベル値フィールドの20ビット・データの奇数の位置と偶数の位置を入れ替える；または
前記フロー・ラベル中のラベル値フィールドの20ビット・データにおける2ビットまたはより多くのビットの異なる値を入れ替える；または
前記フロー・ラベル中のエクスペリメンタル・フィールドの3ビット・データの奇数の位置と偶数の位置を入れ替える；または
前記フロー・ラベル中のエクスペリメンタル・フィールドの3ビット・データにおける2ビットまたはより多くのビットの異なる値を入れ替える；または
前記フロー・ラベル中の残存寿命フィールドの8ビット・データにおける奇数の位置と偶数の位置を入れ替える；または
前記フロー・ラベル中の残存寿命フィールドの8ビット・データにおける2ビットまたはより多くのビットの異なる値を入れ替えることを含む、
方法。
【請求項６】
前記等コスト経路ルーティングが、同じルーティング・コストをもつ経路のうちから対応する経路を、前記フロー・ラベルに従って選択することを指す、請求項１ないし５のうちいずれか一項記載の方法。
【請求項７】
ネットワーク・トラフィックを共有する装置であって、当該装置は中間ノードに配置され、当該装置は、二つ以上の中間ノードが存在し、各中間ノードが同じ仕方でフロー・ラベルに従って等コスト・ルーティングを実行する場合に適用可能であり、当該装置は：
上位ノードによって送られたメッセージ中のフロー・ラベルを受け取るよう構成された受領モジュールと；
隣り合う中間ノードのフロー・ラベルが異なるよう、前記受領モジュールによって受領されたフロー・ラベルを、あらかじめ設定された規則に従って調整するよう構成された調整モジュールと；
前記調整モジュールによって調整されたフロー・ラベルに従って等コスト経路ルーティングを実行するよう構成されたルーティング・モジュールとを有する、
装置。
【請求項８】
前記受領モジュールによって受領されるフロー・ラベルが、ラベル値フィールド、エクスペリメンタル・フィールド、スタック・ボトム同定フィールドおよび残存寿命フィールドを含む、請求項７記載の装置。
【請求項９】
請求項７または８記載の方法であって、前記調整モジュールにおける前記あらかじめ設定された規則が、実際のネットワーク・トラフィック条件またはオペレーターの特定の設定に従って決定され：
前記フロー・ラベルの値または前記フロー・ラベル中のラベル値フィールドの値を等コスト・ルートの総数を法として表す演算を実行する；または
前記フロー・ラベル中のラベル値フィールドの20ビット・データの奇数の位置と偶数の位置を入れ替える；または
前記フロー・ラベル中のラベル値フィールドの20ビット・データにおける2ビットまたはより多くのビットの異なる値を入れ替える；または
前記フロー・ラベル中のエクスペリメンタル・フィールドの3ビット・データの奇数の位置と偶数の位置を入れ替える；または
前記フロー・ラベル中のエクスペリメンタル・フィールドの3ビット・データにおける2ビットまたはより多くのビットの異なる値を入れ替える；または
前記フロー・ラベル中の残存寿命フィールドの8ビット・データにおける奇数の位置と偶数の位置を入れ替える；または
前記フロー・ラベル中の残存寿命フィールドの8ビット・データにおける2ビットまたはより多くのビットの異なる値を入れ替えることを含む、
装置。
【請求項１０】
前記ルーティング・モジュールが、同じルーティング・コストをもつ経路のうちから対応する経路を、前記フロー・ラベルに従って選択するよう具体的に構成されている、請求項７ないし９のうちいずれか一項記載の装置。
【請求項１１】
請求項７ないし１０のうちいずれか一項記載の装置および上位ノードを含有する、ネットワーク・トラフィックを共有するシステムであって、前記上位ノードは進入端装置または上位中間ノードを含み、前記進入端装置はユーザー側から送られたメッセージを受領し、受領されたメッセージの情報をパースすることによってフロー・ラベルをハッシュHASHアウトし、前記フロー・ラベルを前記メッセージ中に挿入し、前記メッセージを下位の中間ノードに送るよう構成されている、システム。
【請求項１２】
受領されたメッセージの情報をパースすることによってフロー・ラベルをハッシュHASHアウトすることが：
ソースIPアドレス、宛先IPアドレス、ソース媒体アクセス制御（MAC）アドレス、宛先媒体アクセス制御（MAC）アドレスおよびポート番号のうちの、前記メッセージの二つ以上のパラメータに対してハッシュHASHを実行することによって前記フロー・ラベルをパースして出すことを含む、
請求項１１記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、2010年7月2日に中国特許庁に出願された、「ネットワーク・トラフィックを共有する方法、装置およびシステム」という名称の中国特許出願CN201010223998.3の優先権を主張する。この出願の内容はここに参照によってその全体において組み込まれる。
【０００２】
発明の分野
本発明は、ネットワーク通信技術に、詳細にはネットワーク・トラフィックを共有する方法、装置およびシステムに関する。
【背景技術】
【０００３】
図１は、従来技術におけるネットワーク・トラフィックを共有する方法を示している。フローはソース・ノードR0から到来し、中間ノードPを通り、宛先ノードR1、R2およびR3によって共有される。ここで、従来技術における中間ノードPは、メッセージ中のパース（parse）されたフロー・ラベルに従って、続く等コスト・ルーティングを実行し、ノードR1、R2およびR3に到着したときにフロー・ラベルは削除される。
【０００４】
本発明を実装する過程において、発明者は従来技術が少なくとも次の問題を有することを見出した。
【０００５】
従来技術におけるネットワーク・トラフィックを共有する方法は、一つの中間ノードしか存在しない場合にしか適用可能でない。二つ以上の中間ノードが存在し、各中間ノードが同じ仕方でフロー・ラベルに従って等コスト・ルーティングを実行する場合、第二または下位の中間ノードではシャント（shunting）が実装できず、そのため各ノードでのトラフィック共有の失敗につながる。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の諸実施形態は、複数の中間ノードが存在するときに各ノードのトラフィック共有の柔軟性を改善するようなネットワーク・トラフィックを共有する方法、装置およびシステムを提供する。
【課題を解決するための手段】
【０００７】
本発明のある実施形態は、ネットワーク・トラフィックを共有する方法であって：
上位ノードによって送られたメッセージにおいてフロー・ラベルを受け取り、隣り合う中間ノードのフロー・ラベルが異なるよう、該フロー・ラベルを調整し；
調整されたフロー・ラベルに従って等コスト経路ルーティングを実行することを含む、
方法を提供する。
【０００８】
本発明のある実施形態は、ネットワーク・トラフィックを共有する装置を提供する。該装置は中間ノードに配置され：
上位ノードによって送られたメッセージにおいてフロー・ラベルを受け取るよう構成された受領モジュールと；
隣り合う中間ノードのフロー・ラベルが異なるよう、前記受領モジュールによって受領されたフロー・ラベルを、あらかじめ設定された規則に従って調整するよう構成された調整モジュールと；
前記調整モジュールによって調整されたフロー・ラベルに従って等コスト経路ルーティングを実行するよう構成されたルーティング・モジュールとを含む。
【０００９】
本発明のある実施形態はさらに、ネットワーク・トラフィックを共有するシステムであって、当該システムはネットワーク・トラフィックを共有するための前記装置および上位ノードを含み、前記上位ノードは進入端装置または上位中間ノードを含み、前記進入端装置はユーザー側から送られたメッセージを受領し、受領されたメッセージの情報をパースすることによってフロー・ラベルをハッシュHASHアウトし、フロー・ラベルをメッセージ中に挿入し、該メッセージを下位の中間ノードに送るよう構成されている、システムを提供する。
【００１０】
本発明の実施形態において提供される技術的解決策から、受領されたメッセージにおけるフロー・ラベルが中間ノードにおいて調整され、それにより、隣り合う中間ノードによって獲得されるフロー・ラベルが互いに異なるようにされ、それにより各ノードのトラフィック共有が有効になり、各ノードのトラフィック共有の柔軟性が改善されることが見て取れる。
【図面の簡単な説明】
【００１１】
本発明の実施形態における技術的解決策をより明確に記述するために、それらの実施形態を記述するために必要とされる付属の図面について下記で簡単に紹介しておく。当然ながら、以下の記述における付属の図面は単に本発明のいくつかの実施形態であり、当業者は創造的な努力なしにこれらの付属の図面から他の図面を導出することができる。
【図１】従来技術におけるネットワーク・トラフィックを共有する方法におけるノードどうしの概略的な構造図である。
【図２】本発明のある実施形態に基づくネットワーク・トラフィックを共有する方法の概略的なフローチャートである。
【図３】本発明のある実施形態に基づくフロー・ラベルのカプセル化構造の概略図である。
【図４】本発明のある実施形態に基づく、一つの第一レベル中間ノード、二つの第二レベル中間ノードおよび四つの宛先ノードを例として取っての、ノード間の相互作用を例解する概略的なフローチャートである。
【図５】本発明のある実施形態に基づく、ネットワーク・トラフィックを共有する装置の概略的な構造図である。
【図６】本発明のある実施形態に基づく、ソース・ノード、一つの第一レベル中間ノード、二つの第二レベル中間ノードおよび四つの宛先ノードを例として取っての、ネットワーク・トラフィックを共有するシステムにおけるノード間の相互作用を例解する概略的なフローチャートである。
【発明を実施するための形態】
【００１２】
本発明の実施形態における技術的解決策が下記において、本発明の実施形態における付属の図面を参照しつつ明確かつ十全に記述される。当然ながら、以下の記述における実施形態は単に本発明の実施形態の一部であり、全部ではない。本発明のこれらの実施形態に基づいて、創造的努力なしに当業者によって得られる他のすべての実施形態は本発明の保護範囲内にはいる。
【００１３】
本発明のある実施形態は、ネットワーク・トラフィックを共有する方法を提供する。これは、擾乱因子をもつ負荷分担に適用可能であり、メッセージの転送にも適用可能である。図２に示すように、本方法は下記のステップを含む。
【００１４】
ステップ２１：上位ノードによって送られた、フロー・ラベルを担持するメッセージを受け取る。
【００１５】
具体的には、上位ノードはソース・ノード（進入端装置）または上位中間ノードを含んでいてもよい。該進入端装置はルータであってもよい。進入端装置は、企業またはグループの仮想閉域網（VPN:  Virtual  Private  Network）のためのアクセス・サービスを提供し、都市圏イーサネット（登録商標）へのアクセスを提供する。進入端装置は、ユーザー側から送られたメッセージを受け取り、受け取ったメッセージの情報をパースすることによってフロー・ラベルをハッシュHASHアウトし、メッセージ中にフロー・ラベルを挿入し、メッセージを下位ノードに送るよう構成されていてもよい。受け取ったメッセージの情報をパースすることによってフロー・ラベルをハッシュHASHアウトすることは、これに限られないが、ソースIP（Internet  Protocol［インターネット・プロトコル］）アドレス、宛先IPアドレス、ソース媒体アクセス制御（MAC:  media  access  control）アドレス、宛先媒体アクセス制御（MAC）アドレスおよびポート番号のうちの、当該メッセージの二つ以上のパラメータに対してハッシュHASHを実行することによってフロー・ラベルをパースして出してもよい。たとえば、フロー・ラベルは、メッセージのソースIPアドレスと宛先IPアドレスの間でハッシュHASHを実行することによってパースされて出される。ハッシュHASHは、たとえば非排他的OR演算または排他的OR演算といった多くの形をもちうるが、フロー・ラベルは、ソースIPアドレスおよび宛先IPアドレスに対して排他的OR演算を実行することによって得られる。
【００１６】
さらに、中間ノードは、ネットワークにおけるバックボーン・ルータであってもよく、顧客端（CE:  Customer  Edge）に直接接続されない。中間ノードは、基本的なマルチプロトコル・ラベル・スイッチング（MPLS:  Multi-Protocol  Label  Switching）転送機能をもち、マルチプロトコル・ラベル・スイッチング情報を維持しない。フロー・ラベルの長さは4バイト（32ビット）である。図３は、フロー・ラベルのカプセル化構造を示している。フロー・ラベルは20ビットのラベル値フィールド（Label）、3ビットのエクスペリメンタル・フィールド（Exp）、1ビット・ボトムのラベル・スタック・フィールド（S）および8ビットの残存寿命（time  to  live）フィールド（TTL）を含んでいてもよい。
【００１７】
ステップ２２：隣り合う中間ノードのフロー・ラベルが異なるよう、フロー・ラベルを調整する。
【００１８】
具体的には、各中間ノードによって受領されるメッセージ中のフロー・ラベルは同じである。すなわち、そのすべては、進入端装置によって送られるメッセージにおけるフロー・ラベルである。フロー・ラベルの調整は、中間ノードどうしの間に閉じ込められ、実際のネットワーク・トラフィック条件またはオペレーターの特定の設定に従ってあらかじめ設定された規則が決定されてもよい。中間ノードのフロー・ラベルは、隣り合う中間ノードのフロー・ラベルが異なる限り、前記あらかじめ設定された規則に従って調整される。たとえば、三つの中間ノードがあり、送るのが、第一レベルの中間ノードから第二レベルの中間ノードへ、そして該第二レベルの中間ノードから第三レベルの中間ノードへである。第一レベルの中間ノードは、受領されたフロー・ラベルを調整しなくてもよいが、第二レベルの中間ノードは受領されたフロー・ラベルを調整する。第三レベルの中間ノードも受領されたフロー・ラベルを調整しなくてもよい。あるいは、受領されたフロー・ラベルは、隣り合う中間ノードの間では、異なる規則を使うことによって調整されてもよい。前記あらかじめ設定された規則は、これに限られないが、以下の型のものを含む。
【００１９】
フロー・ラベルの値またはフロー・ラベル中のラベル値フィールドの値を、等コスト・ルートの総数を法とする（modulo）演算が実行される。他のアルゴリズムが使われてもよい。たとえば、フロー・ラベル中の値フィールドの値8を等コスト・ルートの総数5を法として表すと3になる。ここで、法演算結果が選択された経路を示すために使われる。
【００２０】
あるいはまた、フロー・ラベルにおけるラベル値フィールドの20ビット・データの奇数の位置および偶数の位置が入れ替えられる。たとえば、下位10ビット・データにおける奇数の位置および偶数の位置が入れ替えられてもよく、20ビット・データにおける奇数の位置および偶数の位置が入れ替えられてもよい。たとえば、下位10ビットのデータにおける奇数の位置および偶数の位置が入れ替えられ、下位10ビットのデータが0101010110である場合、入れ替えられたデータは1010101001である。この場合、上位の中間ノードは、調整前のフロー・ラベルに従ってルーティングを実行し、現在レベルの中間ノードは調整されたフロー・ラベルに従ってルーティングを実行する。それにより、それらの選択された経路は異なり、それにより、現在レベルの中間ノードの失敗が回避される。
【００２１】
あるいはまた、フロー・ラベルにおけるラベル値フィールドの20ビット・データにおける2ビットまたはより多くのビットの異なる値が入れ替えられる。たとえば、上位10ビットのデータと下位10ビットのデータが入れ替えられてもよいし、下位10ビットのデータにおける上位5ビットのデータと下位5ビットのデータが入れ替えられてもよい。たとえば、下位10ビットのデータにおける上位5ビットのデータと下位5ビットのデータが入れ替えられ、下位10ビットのデータが0101010110である場合、入れ替えられたデータは1011001010である。この場合、上位中間ノードは調整前のフロー・ラベルに従ってルーティングを実行し、現在レベルの中間ノードは調整されたフロー・ラベルに従ってルーティングを実行する。それにより、それらの選択された経路は異なり、それにより、現在レベルの中間ノードの失敗が回避される。
【００２２】
あるいはまた、フロー・ラベルにおけるエクスペリメンタル・フィールドの3ビット・データにおける奇数位置および偶数位置における異なる値が入れ替えられる。たとえば、3ビット・データが101であるとすると、入れ替えられたデータは110または011である。この場合、上位中間ノードは調整前のフロー・ラベルに従ってルーティングを実行し、現在レベルの中間ノードは調整されたフロー・ラベルに従ってルーティングを実行する。それにより、それらの選択された経路は異なり、それにより、現在レベルの中間ノードの失敗が回避される。
【００２３】
あるいはまた、フロー・ラベルにおけるエクスペリメンタル・フィールドの3ビット・データにおける2ビットまたはより多くのビットの異なる値が入れ替えられる。たとえば、3ビット・データが011であるとすると、入れ替えられたデータは101または110である。この場合、上位中間ノードは調整前のフロー・ラベルに従ってルーティングを実行し、現在レベルの中間ノードは調整されたフロー・ラベルに従ってルーティングを実行する。それにより、それらの選択された経路は異なり、それにより、現在レベルの中間ノードの失敗が回避される。
【００２４】
あるいはまた、フロー・ラベルにおける残存寿命フィールドの8ビット・データにおける奇数の位置および偶数の位置が入れ替えられる。たとえば、8ビット・データが10010011であるなら、入れ替えられたデータは01100011である。
【００２５】
あるいはまた、フロー・ラベルにおける残存寿命フィールドにおける2ビットまたはより多くのビットの異なる値が入れ替えられる。たとえば、8ビット・データが10010011であるなら、入れ替えられたデータは01010011または10011100などである。
【００２６】
ステップ２３：調整されたフロー・ラベルに従って等コスト経路ルーティングを実行する。
【００２７】
具体的には、フロー・ラベルに従って、同じルーティング・コストをもつ諸経路から、対応する経路が選択される。たとえば、同じルーティング・コストをもつ経路が全部で6個あり、それぞれL0,L1,L2,L3,L4,L5であり、フロー・ラベル値フィールドの値がそれぞれ8および17であり、法（モジュロ）演算の結果はそれぞれ2および5となり、よってそれらの経路はそれぞれL2およびL5である。あるいはまた、他の仕方により、フロー・ラベルは上位中間ノードのフロー・ラベルとは異なるよう調整され、それにより選択される経路は異なり、現在レベルの中間ノードの失敗が回避される。
【００２８】
図４に示されるように、第一レベルの中間ノードR1、第二レベルの中間ノードR2およびR3および宛先ノードR4、R5、R6およびR7が四つのメッセージを送信することを例にとって説明する。
【００２９】
ステップ４１：受領されたメッセージ中のフロー・ラベルに従って、R1はメッセージf1およびf3をR2に送り、メッセージf2およびf4をR3に送る。
【００３０】
ステップ４２：R2は受領されたメッセージf1およびf3内のフロー・ラベルを調整する。それにより、フロー・ラベルはR1のフロー・ラベルに等しくなくなる。R3は受領されたメッセージf2およびf4内のフロー・ラベルを調整する。それにより、フロー・ラベルはR1のフロー・ラベルに等しくなくなる。
【００３１】
ステップ４３：メッセージf1およびf3の調整されたフロー・ラベルに従って、R2はメッセージf1およびf3をそれぞれR4およびR5に送る。メッセージf2およびf4の調整されたフロー・ラベルに従って、R3はメッセージf2およびf4をそれぞれR6およびR7に送る。
【００３２】
当業者は、以上の実施形態に基づく方法の手順の全部または一部が関連するハードウェアに命令するコンピュータ・プログラムによって実装されてもよいことを理解するであろう。該プログラムはコンピュータ可読記憶媒体に記憶されてもよい。プログラムが実行されるとき、以上の実施形態に基づく方法の手順が実行される。記憶媒体は磁気ディスク、光ディスク、読み出し専用メモリ（ROM:  Read-Only  Memory）またはランダム・アクセス・メモリ（RAM:  Random  Access  Memory）であってもよい。
【００３３】
本発明の諸実施形態におけるネットワーク・トラフィックを共有する方法では、受領されたメッセージからパースされたフロー・ラベルは第二のまたは下位の中間ノードにおいて調整され、それによりフロー・ラベルは、上位の中間ノードにおいて得られたフロー・ラベルとは異なるようになる。したがって、各ノードのトラフィック共有は効果的であり、各ノードのトラフィック共有の柔軟性が改善される。その間、各中間ノードのフロー・ラベルのランダム性および分散性を実現し、それにより確率の面でトラフィック共有の一様な分布を客観的に改善するよう、各中間ノードのフロー・ラベルは、ネットワーク・トラフィックの実際の条件に従って柔軟に調整されてもよい。
【００３４】
本発明のある実施形態におけるネットワーク・トラフィック共有のための装置は、擾乱因子をもつ負荷分担に適用可能であり、メッセージの転送にも適用可能である。図５に示されるように、本装置は、中間ノード内に配置され、受領モジュール５１と、調整モジュール５２と、ルーティング・モジュール５３とを含む。
【００３５】
受領モジュール５１は上位ノードによって送られたメッセージを受領するよう構成される。ここで、メッセージはフロー・ラベルを担持する。
【００３６】
具体的には、上位ノードはソース・ノード（進入端装置）または上位中間ノードを含みうる。フロー・ラベルは4バイト（32ビット）の長さであり、図３に示されるようなカプセル化構造をもち、20ビットのラベル値フィールド（Label）、3ビットのエクスペリメンタル・フィールド（Exp）、1ビット・ボトムのラベル・スタック・フィールド（S）および8ビットの残存寿命（time  to  live）フィールド（TTL）を含んでいてもよい。
【００３７】
調整モジュール５２は、隣り合う中間ノードのフロー・ラベルが異なるよう、受領モジュール５１によって受領されたフロー・ラベルを調整するよう構成されている。
【００３８】
具体的には、各中間ノードによって受領されるメッセージ中のフロー・ラベルは同じである、すなわち、進入端装置によって送られるメッセージにおけるフロー・ラベルである。フロー・ラベルの調整は、中間ノードの間に閉じ込められ、実際のネットワーク・トラフィック条件またはオペレーターの特定の設定に従ってあらかじめ設定された規則が決定されてもよい。中間ノードのフロー・ラベルは、隣り合う中間ノードのフロー・ラベルが異なる限り、前記あらかじめ設定された規則に従って調整される。たとえば、三つの中間ノードがあり、送るのが、第一レベルの中間ノードから第二レベルの中間ノードへ、そして該第二レベルの中間ノードから第三レベルの中間ノードへである。第一レベルの中間ノードは、受領されたフロー・ラベルを調整しなくてもよいが、第二レベルの中間ノードは受領されたフロー・ラベルを調整する。第三レベルの中間ノードも受領されたフロー・ラベルを調整しなくてもよい。あるいは、受領されたフロー・ラベルは、隣り合う中間ノードの間では、異なる規則を使うことによって調整されてもよい。前記あらかじめ設定された規則は、これに限られないが、以下の型のものを含む。
【００３９】
フロー・ラベルの値またはフロー・ラベル中のラベル値フィールドの値を、等コスト・ルートの総数を法とする（modulo）演算が実行される。たとえば、フロー・ラベル中の値フィールドの値8を等コスト・ルートの総数5を法として表すと3になる。ここで、法演算結果が選択された経路を示すために使われる。
【００４０】
あるいはまた、フロー・ラベルにおけるラベル値フィールドの20ビット・データの奇数の位置および偶数の位置が入れ替えられる。たとえば、下位10ビット・データにおける奇数の位置および偶数の位置が入れ替えられてもよく、20ビット・データにおける奇数の位置および偶数の位置が入れ替えられてもよい。たとえば、下位10ビットのデータにおける奇数の位置および偶数の位置が入れ替えられ、下位10ビットのデータが0101010110である場合、入れ替えられたデータは1010101001である。この場合、上位の中間ノードは、調整前のフロー・ラベルに従ってルーティングを実行し、現在レベルの中間ノードは調整されたフロー・ラベルに従ってルーティングを実行する。それにより、それらの選択された経路は異なり、それにより、現在レベルの中間ノードの失敗が回避される。
【００４１】
あるいはまた、フロー・ラベルにおけるラベル値フィールドの20ビット・データにおける2ビットまたはより多くのビットの異なる値が入れ替えられる。たとえば、上位10ビットのデータと下位10ビットのデータが入れ替えられてもよいし、下位10ビットのデータにおける上位5ビットのデータと下位5ビットのデータが入れ替えられてもよい。たとえば、下位10ビットのデータにおける上位5ビットのデータと下位5ビットのデータが入れ替えられ、下位10ビットのデータが0101010110である場合、入れ替えられたデータは1011001010である。この場合、上位中間ノードは調整前のフロー・ラベルに従ってルーティングを実行し、現在レベルの中間ノードは調整されたフロー・ラベルに従ってルーティングを実行する。それにより、それらの選択された経路は異なり、それにより、現在レベルの中間ノードの失敗が回避される。
【００４２】
あるいはまた、フロー・ラベルにおけるエクスペリメンタル・フィールドの3ビット・データにおける奇数位置および偶数位置における異なる値が入れ替えられる。たとえば、3ビット・データが101であるとすると、入れ替えられたデータは110または011である。この場合、上位中間ノードは調整前のフロー・ラベルに従ってルーティングを実行し、現在レベルの中間ノードは調整されたフロー・ラベルに従ってルーティングを実行する。それにより、それらの選択された経路は異なり、それにより、現在レベルの中間ノードの失敗が回避される。
【００４３】
あるいはまた、フロー・ラベルにおけるエクスペリメンタル・フィールドの3ビット・データにおける2ビットまたはより多くのビットの異なる値が入れ替えられる。たとえば、3ビット・データが011であるとすると、入れ替えられたデータは101または110である。この場合、上位中間ノードは調整前のフロー・ラベルに従ってルーティングを実行し、現在レベルの中間ノードは調整されたフロー・ラベルに従ってルーティングを実行する。それにより、それらの選択された経路は異なり、それにより、現在レベルの中間ノードの失敗が回避される。
【００４４】
あるいはまた、フロー・ラベルにおける残存寿命フィールドの8ビット・データにおける奇数の位置および偶数の位置が入れ替えられる。たとえば、8ビット・データが10010011であるなら、入れ替えられたデータは01100011である。
【００４５】
あるいはまた、フロー・ラベルにおける残存寿命フィールドにおける2ビットまたはより多くのビットの異なる値が入れ替えられる。たとえば、8ビット・データが10010011であるなら、入れ替えられたデータは01010011または10011100などである。
【００４６】
ルーティング・モジュール５３は、調整モジュール５２によって調整されたフロー・ラベルに従って等コスト経路ルーティングを実行するよう構成されている。
【００４７】
具体的には、フロー・ラベルに従って、同じルーティング・コストをもつ諸経路から、対応する経路が選択される。たとえば、同じルーティング・コストをもつ経路が全部で6個あり、それぞれL0,L1,L2,L3,L4,L5であり、フロー・ラベル値フィールドの値がそれぞれ8および17であり、法（モジュロ）演算の結果はそれぞれ2および5となり、よってそれらの経路はそれぞれL2およびL5である。あるいはまた、他の仕方により、フロー・ラベルは上位中間ノードのフロー・ラベルとは異なるよう調整され、それにより選択される経路は異なり、現在レベルの中間ノードの失敗が回避される。
【００４８】
上記の装置に含まれる各モジュールの処理機能の具体的な実装の仕方については上記の方法実施形態において述べてあり、ここで繰り返しはしない。
【００４９】
本発明のある実施形態は、ネットワーク・トラフィックを共有するためのシステムであって、ネットワーク・トラフィックを共有するための上記の装置および上位ノードを含むシステムを提供する。上位ノードは進入端装置または上位中間ノードを含んでいてもよい。
【００５０】
さらに、進入端装置は、ユーザー側から送られたメッセージを受け取り、受け取ったメッセージの情報をパースすることによってフロー・ラベルをハッシュHASHアウトし、メッセージ中にフロー・ラベルを挿入し、メッセージを下位のノードに送るよう構成されていてもよい。受け取ったメッセージの情報をパースすることによってフロー・ラベルをハッシュHASHアウトすることは、これに限られないが、ソースIP（Internet  Protocol［インターネット・プロトコル］）アドレス、宛先IPアドレス、ソース媒体アクセス制御（MAC:  media  access  control）アドレス、宛先媒体アクセス制御（MAC）アドレスおよびポート番号のうちの、当該メッセージの二つ以上のパラメータに対してハッシュHASHを実行することによってフロー・ラベルをパースして出してもよい。たとえば、フロー・ラベルは、メッセージのソースIPアドレスと宛先IPアドレスの間でハッシュHASHを実行することによってパースされて出される。ハッシュHASHは、たとえば非排他的OR演算または排他的OR演算といった多くの形をもちうるが、フロー・ラベルは、ソースIPアドレスおよび宛先IPアドレスに対して排他的OR演算を実行することによって得られる。
【００５１】
図６に示されるように、ソース・ノード、すなわち進入端装置R0、第一レベルの中間ノードR1、第二レベルの中間ノードR2およびR3および宛先ノードR4、R5、R6およびR7が四つのメッセージを送信することを例にとって説明する。
【００５２】
ステップ６１：R0がユーザー側から送られたメッセージf1,f2,f3,f4を受領し、受領されたメッセージの情報をそれぞれパースすることによってフロー・ラベルをハッシュHASHして出し、フロー・ラベルを対応するメッセージ中にそれぞれ挿入し、メッセージを第一レベルの中間ノードR1に送る。
【００５３】
ステップ６２：受領されたメッセージ中のフロー・ラベルに従って、R1はメッセージf1およびf3をR2に送り、メッセージf2およびf4をR3に送る。
【００５４】
ステップ６３：R2は受領されたメッセージf1およびf3内のフロー・ラベルを調整する。それにより、フロー・ラベルはR1のフロー・ラベルに等しくなくなる。R3は受領されたメッセージf2およびf4内のフロー・ラベルを調整する。それにより、フロー・ラベルはR1のフロー・ラベルに等しくなくなる。
【００５５】
ステップ６４：メッセージf1およびf3の調整されたフロー・ラベルに従って、R2はメッセージf1およびf3をそれぞれR4およびR5に送る。メッセージf2およびf4の調整されたフロー・ラベルに従って、R3はメッセージf2およびf4をそれぞれR6およびR7に送る。
【００５６】
本発明の諸実施形態において提供されるネットワーク・トラフィックを共有する方法、装置およびシステムを用いれば、受領されたメッセージ中のフロー・ラベルが中間ノードにおいて調整され、それによりフロー・ラベルは、上位の中間ノードにおいて得られたフロー・ラベルとは異なるようになる。したがって、二レベルまたはマルチレベルの負荷分担シナリオでは負荷分担が弱められ、非効率的でさえあるという従来技術における問題が解決され、各ノードのトラフィック共有は効果的になり、各ノードのトラフィック共有の柔軟性が改善される。その間、各中間ノードのフロー・ラベルのランダム性および分散性を実現し、それにより確率の面でトラフィック共有の一様な分布を客観的に改善するよう、各中間ノードのフロー・ラベルは、ネットワーク・トラフィックの実際の条件に従って柔軟に調整されてもよい。
【００５７】
上記の記述は、単に本発明の例示的な実施形態であり、本発明の保護範囲を限定することは意図されていない。本発明において開示される技術的範囲内で当業者によって容易に考えられるいかなる修正または置換もすべて本発明の保護範囲内にはいる。したがって、本発明の保護範囲は付属の請求項の保護範囲に従う。
【００５８】
いくつかの態様を記載しておく。
〔態様１〕
ネットワーク・トラフィックを共有する方法であって：
上位ノードによって送られたメッセージ中のフロー・ラベルを受け取る段階と；
隣り合う中間ノードのフロー・ラベルが異なるよう、前記フロー・ラベルを調整する段階と；
調整されたフロー・ラベルに従って等コスト経路ルーティングを実行する段階とを含む、
方法。
〔態様２〕
前記フロー・ラベルを調整する前記段階が、あらかじめ設定された規則に従って前記フロー・ラベルを調整する、態様１記載の方法。
〔態様３〕
前記上位ノードによって送られたメッセージ中のフロー・ラベルが、ラベル値フィールド、エクスペリメンタル・フィールド、スタック・ボトム同定フィールドおよび残存寿命フィールドを含む、態様１または２記載の方法。
〔態様４〕
前記上位ノードによって送られたメッセージ中のフロー・ラベルが、ラベル値フィールド、エクスペリメンタル・フィールド、スタック・ボトム同定フィールドおよび残存寿命フィールドを含む、態様１ないし３のうちいずれか一項記載の方法。
〔態様５〕
態様２ないし４のうちいずれか一項記載の方法であって、前記あらかじめ設定された規則が、実際のネットワーク・トラフィック条件またはオペレーターの特定の設定に従って決定され：
前記フロー・ラベルの値または前記フロー・ラベル中のラベル値フィールドの値を等コスト・ルートの総数を法として表す演算を実行する；または
前記フロー・ラベル中のラベル値フィールドの20ビット・データの奇数の位置と偶数の位置を入れ替える；または
前記フロー・ラベル中のラベル値フィールドの20ビット・データにおける2ビットまたはより多くのビットの異なる値を入れ替える；または
前記フロー・ラベル中のエクスペリメンタル・フィールドの3ビット・データの奇数の位置と偶数の位置を入れ替える；または
前記フロー・ラベル中のエクスペリメンタル・フィールドの3ビット・データにおける2ビットまたはより多くのビットの異なる値を入れ替える；または
前記フロー・ラベル中の残存寿命フィールドの8ビット・データにおける奇数の位置と偶数の位置を入れ替える；または
前記フロー・ラベル中の残存寿命フィールドの8ビット・データにおける2ビットまたはより多くのビットの異なる値を入れ替えることを含む、
方法。
〔態様６〕
前記等コスト経路ルーティングが、同じルーティング・コストをもつ経路のうちから対応する経路を、前記フロー・ラベルに従って選択することを指す、態様１ないし５のうちいずれか一項記載の方法。
〔態様７〕
ネットワーク・トラフィックを共有する装置であって、当該装置は中間ノードに配置され：
上位ノードによって送られたメッセージ中のフロー・ラベルを受け取るよう構成された受領モジュールと；
隣り合う中間ノードのフロー・ラベルが異なるよう、前記受領モジュールによって受領されたフロー・ラベルを、あらかじめ設定された規則に従って調整するよう構成された調整モジュールと；
前記調整モジュールによって調整されたフロー・ラベルに従って等コスト経路ルーティングを実行するよう構成されたルーティング・モジュールとを有する、
装置。
〔態様８〕
前記受領モジュールによって受領されるフロー・ラベルが、ラベル値フィールド、エクスペリメンタル・フィールド、スタック・ボトム同定フィールドおよび残存寿命フィールドを含む、態様７記載の装置。
〔態様９〕
態様７または８記載の方法であって、前記調整モジュールにおける前記あらかじめ設定された規則が、実際のネットワーク・トラフィック条件またはオペレーターの特定の設定に従って決定され：
前記フロー・ラベルの値または前記フロー・ラベル中のラベル値フィールドの値を等コスト・ルートの総数を法として表す演算を実行する；または
前記フロー・ラベル中のラベル値フィールドの20ビット・データの奇数の位置と偶数の位置を入れ替える；または
前記フロー・ラベル中のラベル値フィールドの20ビット・データにおける2ビットまたはより多くのビットの異なる値を入れ替える；または
前記フロー・ラベル中のエクスペリメンタル・フィールドの3ビット・データの奇数の位置と偶数の位置を入れ替える；または
前記フロー・ラベル中のエクスペリメンタル・フィールドの3ビット・データにおける2ビットまたはより多くのビットの異なる値を入れ替える；または
前記フロー・ラベル中の残存寿命フィールドの8ビット・データにおける奇数の位置と偶数の位置を入れ替える；または
前記フロー・ラベル中の残存寿命フィールドの8ビット・データにおける2ビットまたはより多くのビットの異なる値を入れ替えることを含む、
装置。
〔態様１０〕
前記ルーティング・モジュールが、同じルーティング・コストをもつ経路のうちから対応する経路を、前記フロー・ラベルに従って選択するよう具体的に構成されている、態様７ないし９のうちいずれか一項記載の装置。
〔態様１１〕
態様７ないし１０のうちいずれか一項記載の装置および上位ノードを含有する、ネットワーク・トラフィックを共有するシステムであって、前記上位ノードは進入端装置または上位中間ノードを含み、前記進入端装置はユーザー側から送られたメッセージを受領し、受領されたメッセージの情報をパースすることによってフロー・ラベルをハッシュHASHアウトし、前記フロー・ラベルを前記メッセージ中に挿入し、前記メッセージを下位の中間ノードに送るよう構成されている、システム。
〔態様１２〕
受領されたメッセージの情報をパースすることによってフロー・ラベルをハッシュHASHアウトすることが：
ソースIPアドレス、宛先IPアドレス、ソース媒体アクセス制御（MAC）アドレス、宛先媒体アクセス制御（MAC）アドレスおよびポート番号のうちの、前記メッセージの二つ以上のパラメータに対してハッシュHASHを実行することによって前記フロー・ラベルをパースして出すことを含む、
態様１１記載のシステム。
【図１】
2014220837.tif 000003
【図２】
2014220837.tif 000004
【図３】
2014220837.tif 000005
【図４】
2014220837.tif 000006
【図５】
2014220837.tif 000007
【図６】
2014220837.tif 000008