JP2015518345A - 802.1aqのための3段折り返しclosの最適化 - Google Patents

802.1aqのための3段折り返しclosの最適化 Download PDF

Info

Publication number
JP2015518345A
JP2015518345A JP2015507625A JP2015507625A JP2015518345A JP 2015518345 A JP2015518345 A JP 2015518345A JP 2015507625 A JP2015507625 A JP 2015507625A JP 2015507625 A JP2015507625 A JP 2015507625A JP 2015518345 A JP2015518345 A JP 2015518345A
Authority
JP
Japan
Prior art keywords
node
network
edge
root
nodes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2015507625A
Other languages
English (en)
Other versions
JP6117911B2 (ja
Inventor
イアン アラン、デイビッド
イアン アラン、デイビッド
Original Assignee
テレフオンアクチーボラゲット エル エム エリクソン(パブル)
テレフオンアクチーボラゲット エル エム エリクソン(パブル)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by テレフオンアクチーボラゲット エル エム エリクソン(パブル), テレフオンアクチーボラゲット エル エム エリクソン(パブル) filed Critical テレフオンアクチーボラゲット エル エム エリクソン(パブル)
Publication of JP2015518345A publication Critical patent/JP2015518345A/ja
Application granted granted Critical
Publication of JP6117911B2 publication Critical patent/JP6117911B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/48Routing tree calculation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/48Routing tree calculation
    • H04L45/484Routing tree calculation using multiple routing trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

計算上の複雑さ、ネットワーク運営、マルチキャストアドレッシング、及び障害時の負荷再分配、についての改善された効率性と共に、3段折り返しCLOSネットワークがイーサネットルーティングのために使用される。当該ネットワークは、エッジノードの配列へ連結されるルートノードの配列を含む。ルートノードから発するスパニングツリーについて、転送ステートが計算され及びインストールされる。ルートノードへの障害を起こした接続を有するものとしてエッジノードが識別されると、当該エッジノードから発する最短パス優先(SPF)ツリーが、当該ルートノードから発するスパニングツリーのための障害を起こした接続を使用する各B−VID(Backbone Virtual Local Area Network identifiers)について構築される。各ノード内のフィルタリングデータベースには、共通のサービス識別子を有する各ノードペアについてデータが投入され、ハイブリッドマルチキャストアドレッシングを用いて、SPFツリーを介して、上記フィルタリングデータベースに従ってエッジノードペアの間でユニキャスト及びマルチキャストデータが転送される。【選択図】図1

Description

本発明の実施形態は、コンピュータネットワーキングの分野に関し、より具体的には、3段折り返し(three stage folded)CLOSネットワークにおけるイーサネットルーティングの最適化に関する。
IEEE802.1aq標準(これ以降、802.1aqともいう)は、2012年に公開され、イーサネットのためのルーティングソリューションを定義している。802.1aqは、最短パスブリッジングあるいはSPBとしても知られている。802.1aqは、ネイティブなイーサネット基盤上での論理的なイーサネットネットワークの生成を可能とする。802.1aqは、トポロジー及びネットワーク内のノードの論理的なネットワークメンバシップの双方を広告するために、リンクステートプロトコルを採用する。データパケットは、802.1aqを実装するネットワークのエッジノードにおいて、mac−in−macの802.1ahフレーム又はタグ付き802.1Q/p802.1adフレームのいずれかでカプセル化され、論理ネットワークの他のメンバにのみ移送される。ユニキャスト及びマルチキャストもまた、802.1aqによりサポートされる。全てのそうしたルーティングは、対称的な最短パスを介して行われる。多くの等コストな最短パスがサポートされる。ネットワークにおける802.1aqの実装は、プロバイダネットワーク、企業ネットワーク及びクラウドネットワークを含む多様なタイプのネットワークの生成及び構成を簡素化する。構成は比較的簡素化され、エラーの可能性、特に人為的な構成エラーの可能性が減少する。
方法の一実施形態が、計算上の複雑さ、ネットワーク運営、マルチキャストアドレッシング、及び障害時の負荷再分配、についての改善された効率性を伴うイーサネットルーティングのために使用される3段折り返しCLOSネットワークにおいて実装される。上記ネットワークは、ユーザに面する(user-facing)入力及び出力ポートを有するエッジノードの配列に連結されるルートノードの配列を含む。上記ネットワーク内の各ノードは、上記ルートノードから発するスパニングツリーについての転送ステートを計算し及びインストールする。上記スパニングツリーにおけるデータ転送は、上記ネットワークに障害が無い場合には任意ソース(any source)のマルチキャストパスアドレスをマルチキャストパスのために利用する。これは、サービスに参加するノードの数とマルチキャストグループの数との積という組合せ積(combinatorial product)ではなく、マルチキャストグループの数に線型的に比例してスケーリングするためである。所与のルートノードへの障害を起こした接続を有するものとして所与のエッジノードが識別されると、上記ネットワーク内の各ノードは、上記所与のルートノードから発し上記障害を起こした接続を使用するスパニングツリーのための各B−VIDについての、上記所与のエッジノードから発する最短パス優先(SPF)ツリーを計算し、上記SPFツリーは、上記B−VIDについての上記所与のエッジノードへのユニキャスト及びマルチキャストの接続性のためのプロトタイプとして供される。上記所与のエッジノードと他のエッジノードとの間のペアごとの接続性のために、各ノード内のフィルタリングデータベースへデータが投入され(populated)、それらは移動される(displaced)B−VIDに関連付けられるサービスを共通して有する。そして、ノードは、上記フィルタリングデータベース内にユニキャストステートをインストールし、トラフィックが上記所与のエッジノードへと向かうのか上記所与のエッジノードから来るのかに依存して選択されるマルチキャストアドレッシングのハイブリッドを用いて、上記フィルタリングデータベース内にマルチキャストステートをもインストールする。そして、各ノードは、自身の転送データベースを用いて、上記ネットワークにおいてユニキャスト及びマルチキャストデータを転送する。
上述した実施形態は、分散型のルーティングシステムであり、各ノードがフィルタリングデータベース内の自身の転送テーブルを計算する。代替的な実施形態において、転送テーブルを計算するシステム管理機能を、集中型のコントローラが実行する。そして、転送テーブルは、各ノードへ、当該ノードがデータ転送を実行するためにダウンロードされる。
エッジノードとして機能するネットワークエレメントの一実施形態が、マルチキャストアドレッシング及び障害時の負荷再分配、についての改善された効率性を伴うイーサネットルーティングのために使用される3段折り返しCLOSネットワークにおいて実装される。上記エッジノードは、ユーザに面する入力及び出力ポートの第1のセットと、複数のルートノードへ連結される入力及び出力ポートの第2のセットと、フィルタリングデータベースを記憶するメモリと、ネットワークプロセッサと、を備える。上記ネットワークプロセッサは、上記ルートノードから発するスパニングツリーについての転送ステートを計算し及びインストールするように構成され、上記スパニングツリーにおけるデータ転送は、上記ネットワークに障害が無い場合には任意ソースのマルチキャストパスアドレスをマルチキャストパスのために利用し、上記ネットワークプロセッサは、所与のルートノードへの障害を起こした接続を有するものとして所与のエッジノードを識別し、上記所与のエッジノードから発するSPFツリーを、上記所与のルートノードから発し上記障害を起こした接続を使用するスパニングツリーのための各B−VIDについて構築するように構成され、上記SPFツリーは、上記所与のエッジノードへのユニキャスト及びマルチキャストの接続性のためのプロトタイプとして供されるものであり、上記ネットワークプロセッサは、移動される上記B−VIDに関連付けられるサービスを共通して有する上記所与のエッジノードと他のエッジノードとの間のペアごとの接続性のために、フィルタリングデータベースへデータ投入し、上記フィルタリングデータベース内にユニキャストステートをインストールし、トラフィックが上記所与のエッジノードへと向かうのか上記所与のエッジノードから来るのかに依存して選択されるマルチキャストアドレッシングのハイブリッドを用いて、上記フィルタリングデータベース内にマルチキャストステートをインストールする、ように構成される。そして、ネットワーク内のユニキャスト及びマルチキャストデータを転送するために、転送データベースが使用される。
システムの一実施形態が、マルチキャストアドレッシング及び障害時の負荷再分配、についての改善された効率性を伴うイーサネットルーティングのために使用される3段折り返しCLOSネットワークにおいて実装される。上記システムは、ユーザに面する入力及び出力ポートのセットを有するエッジノード群へ連結されるルートノード群を含む。上記ルートノード及び上記エッジノードの各々は、フィルタリングデータベースを記憶するメモリと、ネットワークプロセッサと、を備える。上記ネットワークプロセッサは、上記ネットワークプロセッサは、上記ルートノードから発するスパニングツリーについての転送ステートを計算し及びインストールするように構成され、上記スパニングツリーにおけるデータ転送は、上記ネットワークに障害が無い場合には任意ソースのマルチキャストパスアドレスをマルチキャストパスのために利用し、上記ネットワークプロセッサは、所与のルートノードへの障害を起こした接続を有するものとして所与のエッジノードを識別し、上記所与のエッジノードから発するSPFツリーを、上記所与のルートノードから発し上記障害を起こした接続を使用するスパニングツリーのための各B−VIDについて構築するように構成され、上記SPFツリーは、上記B−VIDについての上記所与のエッジノードへのユニキャスト及びマルチキャストの接続性のためのプロトタイプとして供されるものであり、上記ネットワークプロセッサは、移動される上記B−VIDに関連付けられるサービスを共通して有する上記所与のエッジノードと他のエッジノードとの間のペアごとの接続性のために、フィルタリングデータベースへデータ投入し、上記フィルタリングデータベース内にユニキャストステートをインストールし、トラフィックが上記所与のエッジノードへと向かうのか上記所与のエッジノードから来るのかに依存して選択されるマルチキャストアドレッシングのハイブリッドを用いて、上記フィルタリングデータベース内にマルチキャストステートをインストールする、ように構成される。そして、ネットワーク内のユニキャスト及びマルチキャストデータを転送するために、転送データベースが使用される。
本発明は、限定ではなく例示の手法で添付図面の図において示され、図中で類似の参照符号は同様のエレメントを指し示す。なお、本開示における「一」実施形態又は「1つの」実施形態についての異なる言及は、必ずしも同じ実施形態を指すものではなく、それらの言及は、少なくとも1つの実施形態を意味することに留意すべきである。さらに、一実施形態に関連して特定の特徴、構造、又は特性が説明される場合、他の実施形態に関連してそのような特徴、構造、又は特性を作用させることは、明示されているか否かに係わらず、当業者の知識の範囲内であることを提示しておく。
3段折り返しCLOSネットワークの一例を示している。 ルートノードに割り当てられるシステムIDセットの一例を示している。 スパニングツリールート選択のために使用されるスプリットタイブレーキングの仕組みの一例を示している。 3段折り返しCLOSネットワークにおいてスパニングツリーのための転送ステージを計算し及びインストールする方法の一例を示している。 一実施形態に係るルートノードに障害が起きるシナリオを示している。 一実施形態に係るリンクに障害が起きるシナリオを示している。 一実施形態に係る2つのリンクに障害が起きる第1のシナリオを示している。 一実施形態に係る2つのリンクに障害が起きる第2のシナリオを示している。 一実施形態に係る2つのリンクに障害が起きる第3のシナリオを示している。 一実施形態に係る3つのリンクに障害が起きる第1のシナリオを示している。 一実施形態に係る3つのリンクに障害が起きる第2のシナリオを示している。 3段折り返しCLOSネットワークにおいて障害が発生した場合のデータフレーム転送のための方法の一実施形態を示している。 一実施形態に係る管理システムに連結されるネットワークエレメントを示すブロック図である。
以下の説明において、多くの具体的な詳細が説明される。しかしながら、本発明の実施形態が、それらの具体的な詳細がなくとも実践され得ることが理解されるべきである。他の例では、本説明の理解を曖昧にすることのないように、周知の回路、構造、及び技法については詳細を示していない。しかしながら、そのような具体的な詳細がなくとも本発明が実践され得ることが、当業者によって理解されるであろう。ここに含まれる説明によって、当業者は、過度の実験をすることなく、適切な機能性を実装することができるであろう。
IEEE802.1aq標準では、ネットワーク上のイーサネットフレームの転送を制御するために、リンクステートプロトコルが利用される。1つのリンクステートプロトコルであるIS−IS(Intermediate System to Intermediate System)が、ネットワークのトポロジー及び論理的なネットワークメンバシップの双方を広告するために、802.1aqネットワークにおいて使用される。
802.1aqは、2つの動作モードを有する。VLAN(Virtual Local Area Network)ベースのネットワークのための第1のモードを、最短パスブリッジングVID(SPBV)という。MACベースのネットワークのための第2のモードを、最短パスブリッジングMAC(SPBM)という。SPBVネットワーク及びSPBMネットワークの双方は、データプレーンにおいて同時に等コスト転送ツリーのセット(ECTセット)を1つよりも多くサポートすることができる。ECTセットは、通常、複数の最短パスVLAN識別子(SPVID)に関連付けられ、SPBVのためにSPVIDセットを形成し、及び、SPBMのためにバックボーンVLAN ID(B−VID)と1対1で関連付けられる。
802.1aqのMACモードによれば、プロバイダネットワーク内のネットワークエレメントは、同じ宛て先アドレスを宛て先としつつも異なるB−VIDにマッピングされた異なるフレームがネットワークを通じて異なるパス(“マルチパスインスタンス”という)上で転送され得るように、B−VIDによって分離されるマルチパス転送トラフィックを実行するように構成される。サービスに関連付けられる顧客のデータフレームは、802.1aqに従い、別個のサービス識別子(I−SID)及びB−VIDを有するヘッダと共にカプセル化される。この分離は、ネットワークトポロジーから独立してサービスがスケーリングされることを可能とする。よって、B−VIDは、専らマルチパスインスタンスの識別子として使用されることができる。I−SIDは、B−VIDにより識別されるマルチパスインスタンスによって提供されるべき特定のサービスを識別する。802.1aqにおけるマルチパスインスタンスの実際のルーティングは、各ノードのシステムIDに基づくタイブレーキングによって決定される。
WAN(Wide Area Network)又はクラウドコンピューティングデータセンタといったデータセンタ内で、802.1aqをイーサネットルーティングのために使用することができる。データセンタ内のネットワークは、典型的には、CLOSネットワークのトポロジーのように、非常に整然とした構造を有する。CLOSネットワークは、スイッチングノードの配列を含む。CLOSネットワークの一例は、入口ステージ、中間ステージ及び出口ステージを有する3段折り返しCLOSであり、当該ネットワークは、入口ステージが出口ステージにマージされるように、ノードの中間ステージをまたいで途中で折り返される。入口ステージ内のノードに入る各データフレームは、宛て先の出口ステージのノードへ到達するための中間ステージの利用可能なノードのいずれかを通じてルーティングされ得る。
障害の起きたノード又はリンクを有するCLOSネットワークにおける接続性を維持するために、いくつかの技法が開発されてきた。802.1aqによれば、ノード又はリンクの障害は、1つ以上の周囲ノードにより観測され、ルーティングシステムによってネットワークにわたって広告される。ネットワーク内の各ノードは、障害により影響を受けるトラフィックについて新たなパスを再計算し、新たなパスを用いて転送が自動的に継続されるであろう。
任意のトポロジーへの、非最適な転送パスをもたらすスパニングツリーの適用とは異なり、障害の無いCLOSネットワークでは、第2のティアノード群(即ち、中間ステージ内のノード群)から発する(rooted)複数のスパニングツリーにより提供される接続性が、最短パスツリーに基づくものと同一である。これは、ルーティング問題の計算上の複雑さの観点において簡易的であるだけでなく、よりスケーラブルなマルチキャストアドレッシングフォーマットを使用することをも可能とする。しかしながら、第2のティアノードが不完全な接続性を有するようにリンクに障害が起きた場合のトラフィックの分散は、課題(problematic)であり、最短パスツリーの動作への立ち戻りをもたらし、あまりスケーラブルでないマルチキャストアドレッシングの使用を要し得る。
さらに、802.1aqによれば、障害が存在する場合、移動を強いられるトラフィックはまとまってフェイルオーバパスへとシフトされる。フェイルオーバパスが今やトラフィックの大幅な増加を処理することから、トラフィックのまとまった再分配がネットワークの安定性を減少させるかもしれず、それにより性能が大幅に劣化し得る。さらに、フェイルオーバパスへのこのまとまったトラフィックのシフトは、フェイルオーバパス内のリンク及びノードを、それらエレメントを実質的に障害に陥らせるほど圧倒し得る。基本的な仕様802.1aqの振る舞いを修正して、障害シナリオにおけるマルチパス選択との共通性のある仕組みであって、障害シナリオでのネットワークキャパシティの劣化の公平な分配のために提供される分散的なスパニングツリーのルート選択(root election)の仕組みを提供することにより、マルチキャストアドレスのスケーラビリティを最大化し、計算上の複雑さを最小化し、及びネットワーク内のマルチパス化設計を簡易にするマルチパス化技法を適用することが望ましいであろう。
ここで説明される実施形態は、3段折り返しCLOSネットワークといった、フラット化されたスイッチング階層を有するネットワークトポロジーを利用する。3段折り返しCLOSネットワークは、入口ステージが出口ステージにマージされるように、ノードの中間ステージをまたいで途中で折り返される3ステージ型のCLOSネットワークである。マージされる入口/出口ステージはエッジノード(第1ティアノードともいう)の配列を含み、中間ステージはルートノード(第2ティアノードともいう)の配列を含む。ルートノードへ接続される1つ以上のリンクに障害が起きた場合、不必要に長い転送パスを生じさせてまで全ての接続性のためにそのルート(root)を使用し続けたり、又は“全てのペア”の計算に立ち返ったりする代わりに、特別なソリューションを前提とすることが可能であり、B−VIDについての障害の起きたリンク上で上記ルートと通常直接的な隣接関係を有する各エッジノードについて、最短パス優先(SPF)ツリーが生成され、当該SPFツリーはエッジノードから発する。障害の起きたルートノード以外の全てのルートノードについてスパニングツリーが生成されるといった“全てのペア”の計算は存在せず、代わりに、ルートノード又はルートノードへ接続する1つ以上のリンクの障害について、B−VIDごとに1つのSPFツリーのみが生成される。よって、ルートノードに関わる障害のケースでの計算上の負荷が、大幅に削減される。
ここで開示される実施形態は、各ETCセットについてデータフレームが横断するスパニングツリーのルートを選択するように、スプリットタイブレーキングの仕組みと共に増強される、802.1aqのタイブレーキングパス選択技法の組合せのバリエーションを利用する。1つの実施形態において、スパニングツリーのためのルートは、B−VIDに関連付けられるXORマスク値でのマスキング後の最小のシステムIDを伴うルートノードである。ネットワークは、CLOS内の第2のティアノードが一貫して、エッジノードに割り当てられるシステムIDと比較した場合にタイブレーキングにおける最小のシステムIDを有することを保証するように運営されてきた。CLOSネットワーク内の各ノードは、タイブレーキングのために使用される複数のシステムIDセット内の複数のシステムIDを有する。それらシステムIDセット及びマスク値は、スパニングツリーの複数のルートの分散的かつ独立的な選択を可能とし、データセンタ内の負荷分散への単純なアプローチを提供する。スパニングツリーのルートの次善(second best)の選択(例えば、XORマスキング後の2番目に小さいシステムIDを伴うルートノード)は、各システムIDセットにおける異なる第2のティアノードとなる。よって、第2のティアノードについて障害が起きた場合、当該ノードから発するスパニングツリーのセットを、1つよりも多くの他の第2のティアノードにわたって分配することができる。
折り返しCLOSネットワークについて、ルートノードから発するスパニングツリーは、エッジノードから発する等コストツリーと同じ接続性を提供する。しかしながら、等コストツリーに対して、スパニングツリーを使用するいくつかの利点が存在する。スパニングツリーの使用は、“任意ソース(any source)”というマルチキャストアドレッシングの使用を許容し、それによりネットワーク内のマルチキャストステートが大幅に削減される。対比において、“ソース固有(source specific)”マルチキャストアドレッシングを使用する等コストツリーは、所与のマルチキャストグループについてのマルチキャストソースノードの数をSとすると、オーダ(S)だけ多くのマルチキャストアドレスをスイッチフィルタリングデータベース内にもたらす。
さらに、ここで開示される実施形態は、マルチキャストの接続性を構築する中で、3つの形式のバックボーン宛て先MACアドレスを利用し、その3つは、802.1aqマルチキャストMACアドレッシング(“ソース固有”マルチキャストアドレッシングあるいは(S,G)アドレッシングともいう)、802.1ahMACアドレッシング(“任意ソース”マルチキャストアドレッシングあるいは(*,G)アドレッシングともいう)、及び既存のバックボーンユニキャストトンネリングの再利用、を含む。本実施形態では、ルートノードの部分的な断絶(partial severing)を扱うために、“スプリットホライズン”ツリーアプローチが採られる。障害を起こした隣接関係(failed adjacency)にアタッチしているノードは、そうではないノードとは異なる形式のアドレッシングを使用する。障害を起こした隣接関係にアタッチしているノードは、(*,G)アドレッシングを使用し得る一方、ECTセット内の障害を起こした隣接関係に直接的にはアタッチしていないノードは、BUM(broadcast/unknown/multicast)データフレームを、(*,G)アドレッシング及び(S,G)(あるいはユニキャスト)アドレッシングのハイブリッドを用いてバイキャスト(bi-cast)する。
ここで説明されるハイブリッドアドレッシングのスタイルは、ノード内に維持されるマルチキャストステートを削減することにより、ネットワークのスケーラビリティを改善する。802.1ahによれば、(*,G)マルチキャストのためのバックボーン宛て先MACアドレスは、固定的なOUI(Organizationally Unique Identifier)(I−SIDについての全てのソースのセットである*を表す)と、I−SIDなどのサービス識別子(Gを表す)との連接(concatenation)として符号化される。802.1aqによれば、(S,G)マルチキャストのためのバックボーン宛て先MACアドレスは、マルチキャストツリールート(Sを表す)とI−SIDなどのサービス識別子(Gを表す)との連接として符号化される。単一の受信機が存在するユニキャストについて、バックボーン宛て先MACアドレスは、例えば46ビットの値などの、固定長のビット値である。いかなる個別のソースも自身のトラフィックに行き当たらないというスプリットホライズンに依存して、(*,G)マルチキャストツリーは、任意のソースノードにより、G内の全ての受信機へ到達するために使用されることができる。(S,G)マルチキャストツリーは、ツリーが全ての“S”について同じようにルーティングされる(co-routed)わけではないことによるFDBコンフリクトに起因してスプリットホライズンが不可能な最短パスツリーのために必要とされる。(S,G)マルチキャストツリーは、ツリーが各“S”について個別化(personalize)されることから、単一のソースによってG内の受信機のセット又はサブセットへ到達するために使用されることができる。従って、(*,G)ツリーと等価なものを構築するために複数の(S,G)ツリーを要し、結果として、それら複数の(S,G)ツリーは、1つの(*,G)マルチキャストツリーと同じことを実質的に行うために、ルートノード内でより多くのステート(state)を要する。ユニキャストは、ノードグループ(G)内に単一の受信機が存在する場合に使用される。ユニキャストの転送パスはサービス固有のマルチキャストツリーからは独立して存在するため、ユニキャストは、ステートを追加しない。従って、(*,G)が使用されず又は使用不能である場合、(S,G)に対しユニキャストを使用することが有益である。
ここでは特定のバージョンの標準が説明されるが、本発明の実施形態は現時点のバージョンの標準に基づく実装には限定されず、将来のバージョンの標準が開発されればそれらと共に作動するように適合され得る。同様に、本発明の実施形態は、ここで説明される特定のプロトコルの1つとの関係で動作する実装には限定されず、イーサネットマルチエリアルーティングネットワークにおいて他のプロトコルもまた使用され得る。
図1は、3段折り返しClosネットワーク10の一例としてのネットワークトポロジーの図である。折り返される入口/出口ステージ(図示した下のステージ)内のノードをエッジノード12といい、中間ステージ(図示した上のステージ)内のノードをルートノード11という。ルートノード11及びエッジノード12を、総称として“ノード”という。各ノード11、12は、自身の入力ポートの全てを自身の出力ポートへと相互接続するスイッチングエレメントである。当該ネットワークは、フレームにより横断されるノードの最大の数が3つ(即ち、エッジからルート、そしてエッジへ)であることから3段(three stage)である。各ルートノード11は、エッジノード12の全てへ接続される。各ルートノード11は、エッジノード12との間の送受信のための複数の入力/出力ポートを含み、各エッジノード12もまた、ルートノード11との間の送受信のための複数の入力/出力ポートを含む。追加的に、各エッジノード12は、ネットワーク10の外部との間でトラフィックを送受信するための、複数のユーザに面する(user-facing)入力/出力ポート13をも含む。
図1の例としてのネットワークは、キャパシティが同一であるノードから作られ、8つのエッジノード12を相互接続する4つのルートノード11を含む。別の実施形態では、異なる数のルートノード11及びエッジノード12が含まれてもよい。1つの実施形態において、ネットワーク10は、データセンタ内にある。1つの実施形態において、各ルートノード11は、バックボーンコアブリッジ(BCB)であり、各エッジノード12は、バックボーンエッジブリッジ(BEB)である。
一般には、3段折り返しCLOSネットワークのノンブロッキング特性は、そのルートノード及びエッジノード内のポートの数により左右され得る。例えば、ノンブロッキングなCLOSネットワークにおけるルートノード11の最大数は、ノード別ポート数を2で割った商であり、エッジノード12内のユーザに面するポート13の数は、ルートノードの数とノード別ポート数との積である。
簡明さのために、以下の説明は、基礎となるネットワークとして、破線のボックス15内に示したようなネットワーク10の一部を使用する。理解されることとして、本技術は、様々な数のルートノード及びエッジノードを伴う3段折り返しCLOSネットワークに適用可能である。図2の実施形態に示したように、ルートノード21がラベルA、B、C及びDを付与されており、エッジノード22がラベルw、x、y及びzを付与されている。1つの実施形態において、ルートノード21には、複数のシステムIDセット(例えば、セット1、セット2及びセット3)が割り当てられ、各システムIDセットはルートノード21ごとに区別される(distinct)システムIDを含む。異なるシステムIDセット内の同じルートノード21についてのシステムIDは、同じであっても異なってもよく、例えば、ノードAは3つのシステムIDセットの中でそれぞれシステムID00、00、00を有し、ノードBは3つのシステムIDセットの中でそれぞれ01、02、02を有する。
複数のシステムIDセットの使用は、B−VIDについてスパニングツリーのルートノードを選択する際のスプリットタイブレーキングを可能とする。図3を参照しながら詳細に説明されるスプリットタイブレーキングの仕組みによれば、B−VID1、5、9(v1/5/9として示されている)についてのスパニングツリーは、ノードAから発する(rooted)。図2には示していないが、ルートノードBはB−VID2、6、10についてのスパニングツリーのルートであり、ルートノードCはB−VID3、7、11についてのスパニングツリーのルートであり、ルートノードDはB−VID4、8、12についてのスパニングツリーのルートである。よって、ヘッダ内でB−VID1、5又は9を搬送するデータフレームは、エッジノードのいずれからもネットワークへ進入することができ、ルートノードAを通過して、他のエッジノードのいずれかを通じて退出する。ノードAに障害が起き又はラベリングされたリンクのいずれかに障害が起きた場合、影響を受けるトラフィックを、他のルートノードを介する他のリンクへと再分配することができる。障害の無い(fault free)シナリオでは、エッジノードw、x、y及びzの各々が、他のエッジノードへと到達するために、802.1ahの“任意ソース”マルチキャストMAC(*,G)アドレッシングを用いて、データフレームを転送する。なお、顧客レイヤのトラフィックは、それがバックボーンレイヤでどのように転送されたかとは別に、顧客レイヤではブロードキャスト、ユニキャスト又はマルチキャストのいずれかである。
図3は、スパニングツリールート選択のために使用されるスプリットタイブレーキングの仕組みの一実施形態を示している。スプリットタイブレーキングの仕組みを説明する前に、802.1aqにおいて定義されているタイブレーキングの仕組みを説明することが有益である。802.1aqは、通常、ネットワーク内のトラフィックの各送信元(source)から発する、対称合同的(symmetrically congruent)な最短パスツリーのフルメッシュを生成する。1つのそうしたフルメッシュは、等コストツリー(ECT)セットとして知られている。ECTセットは、通常、B−VIDに関連付けられる。ECTセットの生成の一部としてのパス計算が1つよりも多くの等コストパスからの選択の必要性に至った場合、802.1aqは、ノードIDの辞書順の並び替えを用いて各等コストパスについての一意なパスIDを構築し、パスIDのセットをソートし、最も小さい値を選択する。追加的に、802.1aqは、各ECTセットに関連付けられるセットの値のノードIDとのXOR演算を介して複数のECTセットを生成し、各パスIDにおけるノードIDの辞書順の並び替えを改訂し、パスIDのランク付けを再度行い、最も小さい値を再選択するための手段を仕様化している。
ここで説明されるスプリットタイブレーキングの仕組みは、802.1aqに対する改善である。スプリットタイブレーキングの仕組みは、障害の無いシナリオのみならず1つ以上のルートノードに障害が起きた場合における、CLOSネットワーク内のルートノードのセットにわたるトラフィックのより均等な分配を可能とする。スプリットタイブレーキングの仕組みは、次のように、いくつかの設計エレメントを使用する。(1)インスタンス化されるスパニングツリーの数は、ルートノードの数の何らかの倍数となるように選択される。その倍率は、障害の期間中にスプリットタイブレーカの性質を活用する(leverage)ことが望ましい場合、1よりも大きい。(2)ルートノードID(即ち、システムID)は、障害の無いCLOSネットワークにおいて各ルートノードから等しい数のスパニングツリーが発するように設計される。(3)エッジノードIDは、各エッジノードが決してスパニングツリーのルートにならないように設計される。これは、単純に、エッジノードIDの上位ビットに非ゼロの値を使用し、一方でルートノードは上位ビットにゼロを有し、それによりエッジノードIDのセットの最小値がルートノードIDのセットの最大値よりも大きくなるようにすることで、達成され得る。(4)(1)において倍率が1よりも大きい場合、スプリットタイブレーカ値は、障害の起きたルートノードのスパニングツリーのルート(root)が1つよりも多くの他のルートノードにわたって分配されるように設計される。
図3の実施形態において、システムIDセット23内のシステムIDは、バイナリで示されている。加えて、ネットワーク内の各B−VIDには、例えばマスクセット33に示した例のように、マスク値及びシステムIDセット番号が割当てられている。システムIDセット1に属するB−VID1〜4の各々についてルートノードを決定するために、B−VID1〜4という対応するマスク値を用いて、システムIDセット1について変換が行われる。1つの実施形態において、(所与のマスクを用いた)変換後の最小のシステムIDを有するルートノードが、当該所与のマスクに関連付けられるB−VIDについてのスパニングツリーのルートである。1つの実施形態において、上記変換はXOR演算である。例えば、マスク値0000を伴うB−VID1に関し、マスク値0000及びセット1:0000、0001、0010、0011内のシステムIDについてXORが実行される。(変換されたシステムIDである)XORの結果は、0000、0001、0010、0011である。1つの実施形態において、最小のXOR値をもたらしたルートノードが、対応するB−VIDについてのスパニングツリーのルートとして選択される。よって、B−VID1について、4つの中でXORの結果として0000が最小であるため、ルートノードはノードAである。
ノードAの障害のケースでは、ノードAを通過するトラフィックは、上で計算されたXORの結果に従って、他のルートノードへとリルートされ得る。例えば、次に小さいXOR値をもたらすルートノードを新たな通過ルートノードとして選択することができ、即ちノードBである。従って、上で計算したXORの結果がB−VID1についてのフェイルオーバ順序を左右する。
同様に、B−VID5〜8及びB−VID9〜12についてのルート選択を、同じスプリットタイブレーキングの仕組みで実行することができる。B−VID1〜4、B−VID5〜8及びB−VID9〜12は異なるセット内にあるため、各セット内のマスク値及びシステムIDは、他のセットには非依存で構成され得る。1つの実施形態において、管理システムは、各ルートノードをシステムID及びその対応するシステムIDセットと共に構成し得る。管理システムは、ネットワーク内で使用されるB−VIDにマスク値をも割り当て得る。システムセットID番号(例えば、セット1、セット2又はセット3)及び各B−VIDについてのマスク値は、拡張IS−IS(augmented Intermediate System to Intermediate System)hello手続を介してノード間で交換され、又は管理システムにより構成データとして各ノードへロードされ得る。
図4は、3段折り返しCLOSネットワーク内でスパニングツリーのための転送ステートを計算し及びインストールするための方法400の一実施形態を示すフロー図である。1つの実施形態において、拡張IS−ISのhello手続を用いて、ノード間でタイブレーキング情報が交換される(ブロック410)。拡張IS−IS手続を用いて、例えば各B−VIDについて、パス生成アルゴリズム(例えば、スパニングツリー又は等コストツリー)、ルート選択のためのシステムIDセット、及び当該B−VIDについてのマスク値を交換することができる。例えば、ノードに関連付けられるIS−ISスピーカは、以下を広告し得る:B−VID1について、スパニングツリーを使用し、ルート選択のためにシステムIDセット1を使用し、マスク値=00である;B−VID2について、スパニングツリーを使用し、ルート選択のためにシステムIDセット1を使用し、マスク値=01である、など。代替的な実施形態において、タイブレーキング情報は、管理システムにより各ノードへ構成され得る。タイブレーキング情報を取得した後、スパニングツリーのルートノードが、当該タイブレーキング情報に基づいて各B−VIDについて選択される(ブロック420)。図3において説明した通り、所与のB−VIDにより識別されるスパニングツリーについてのルートとして、全てのルートノードの中で最小のシステムIDを有するルートノードが選択されるように、システムIDの変換によってルート選択が行われる。ルート選択の後、各ルートノードについて、エッジノード群までのそのパスが識別される(ブロック430)。1つの実施形態において、ダイクストラのアルゴリズムを用いてネットワーク内の各ノードによりパスが計算される。その代わりに、異なるアルゴリズムが使用されてもよい。
ダイクストラのアルゴリズムが使用される実施形態において、計算の結果を用いて、リンク障害の影響を迂回するように転送を修正することができる。計算はネットワーク内の各ノードにより分散的なやり方で行われ、計算の結果は、ノードにより、ネットワーク内のそれらの位置に依存することなく使用され得る。よって、この情報を使用するためにノードは障害の起きたリンクに隣接していなくてよく、なぜならノードはグローバルのトポロジーの知識を取得し、その情報のローカルな個別化を計算するためである。ダイクストラのアルゴリズムは、プロトタイプツリーを生成し、プロトタイプツリーにおいて、1ホップの各パスはルートノードからエッジノードへのパスであり、それらはツリー内で維持され得る。1つより多くのホップを有するパスは、ツリーから除外(pruned)され得る(ブロック440)。例えば、ルートからエッジへ、さらにルートへ、という2ホップのパスが存在するかもしれない。それらパスは、プロトタイプツリーから除外され得る。リンク障害の標識として、3ホップパスが識別される(ブロック450)。3ホップパスの始点はスパニングツリーのルートであり、終点は当該ルートにより直接的に到達可能でないエッジノードである。よって、3ホップパスは、エッジから出発するトラフィックがスパニングツリーのルートを通過できず当該エッジノードへ至るために他のルート(root)を通過しなければならないことを示す。よって、それら3ホップパスをも検討から除外することができ、そのB−VID及び障害の起きたリンクに連結しているエッジノードについて、新たなルートが必要である。3ホップパスによって到達されるノードのリストは、ルートにもはや直接的にアタッチしていないエッジノードのセットとして、将来の計算のために別個に維持される。さらに、4ホップ以上のパスは、ネットワークに病的に(pathologically)障害が起きていることを意味する。なお、上述したパスの除外及び障害検出は、例に過ぎず、最適化が存在してもよい。
スパニングツリーの生成の後、B−VIDに関連付けられる共通のサービス識別子を有する当該B−VIDについてのエッジノードの各ペアが識別される(ブロック460)。エッジ−エッジノードペアが識別されると、そのそれぞれのフィルタリングデータベース(FDB)が、当該ノードペアの間でユニキャスト及びマルチキャストのデータフレームを転送するための転送エントリ(転送ステートともいう)を含むように構築される(ブロック470)。それらデータフレームは、ネットワークにより提供される対応するサービスを識別するために、ヘッダ内にI−SIDを含むことになる。エッジノードについては、スパニングツリーのルートへのI−SIDマルチキャストアドレスと共に、当該エッジノードのノードとしての(nodal)ユニキャストB−MAC(Backbone MAC)アドレスへのI−SIDマルチキャストアドレスをポインティングすることにより、FDBエントリを生成することができる。ルートノードについては、エッジノードのペアへのマルチキャストエントリに加えて当該ルートノードのノードとしてのユニキャストB−MACへのマルチキャストエントリを相互接続することにより、FDBエントリを生成することができる。ブロック430〜ブロック470の動作は、スパニングツリーの各ルートについて繰り返される。
図5は、図2のネットワークの一実施形態を示しており、1つのルートノード(例えば、ノードA)が障害を起こす(“F”により示されている)。図3において説明したスプリットタイブレーキングの仕組みを用いることにより、ノードA上のデータ転送の作業負荷(workload)を、B−VID1、5及び9について2番目に小さいXOR結果(バイナリで0001)を有する他のノードへとシフトすることができる。従って、ノードB、C及びDが、B−VID1、5及び9についてそれぞれスパニングツリーのルートになる。作業負荷のシフトは、エッジノードにより使用されるマルチキャストアドレッシングを変化させない。よって、エッジノードw、x、y及びzは、802.1ahの“任意ソース”マルチキャストMAC(*,G)アドレッシング(簡明さのために(*,G)アドレッシングともいう)を用いて、他のエッジノードへのマルチキャストデータフレームの転送を継続する。
図6〜図11は、1つ以上のリンクに障害が起きる、一例としての3段折り返しCLOSネットワークにおけるいくつかのシナリオを示している。図4のブロック450において説明したように、スパニングツリーのルートからエッジノードへのパスを計算するためにダイクストラのアルゴリズムが使用されるスパニングツリー生成の際に、リンク障害が検出され得る。図4のブロック450に示したように、スパニングツリー内の3ホップパスは、リンク障害及び影響を受けるノードを示している。理解されることとして、3段折り返しCLOSネットワークにおいてノード障害又はリンク障害の帰結を検出するために、他の方法が使用されてもよい。
図6は、ノードAとノードWとの間のリンクに障害が発生するシナリオを示している。ノードAについてスパニングツリーが計算されると、ノードWは、3ホップパスによりサービスされるものとして現れる。リンク障害を識別した後、障害の起きたリンクを使用する各B−VIDについてノードwから発する最短パス優先(SPF)ツリーが構築される。IS−ISなどのリンクステートルーティングプロトコルを介して、各ノードは、ネットワーク内のトポロジー情報を学習し、当該情報をSPFツリーを計算するために使用する。1つの実施形態において、各ノードにより、ダイクストラのアルゴリズムを用いてSPFツリーを計算することができる。これらノードは、トポロジー情報に基づいてネットワークの同じビューを構築する。
1つの実施形態において、SPFツリーの構築は、どのルートノードを通過すべきかを決定するための、前述したスプリットタイブレーキングの仕組みの使用を含む。なお、これらSPFツリーのルートはネットワークのエッジノードであり、ネットワークのルートノードはSPFツリーの通過ノード(transit nodes)になる。SPFツリーが構築された後、エッジノードは、B−VIDについてエッジ−エッジノードペアにより共有される、I−SIDのインターセクション(即ち、共通のI−SID)を識別する。識別されるエッジノードペアに基づいて、各ノードは、後続のデータ転送のために自身のFDBにデータ投入を行う(populate)。
図6の例において、B−VID1、5及び9について作られるSPFが、それぞれv1、v5及びv9でラベリングされたリンクとして示されている。ラベルv1/5/9を伴うノードx、y及びzへ接続するリンクは、障害が無く、従って、ノードx、y及びzにより、それらの間でデータを転送するために、(*,G)アドレッシングを用いて継続的に使用されることができる。一方、ノードwと通信するためには、ノードx、y及びzは、v1、v5及びv9でラベリングされたSPFツリーのリンクを使用する必要がある。よって、1つの実施形態において、エッジノードによりハイブリッドマルチキャストアドレッシングが使用される:ノードx、y及びzは、ノードwへマルチキャストデータを転送するために、ユニキャスト又は802.1aqの“ソース固有”マルチキャストMAC(S,G)アドレッシング(簡明さのために(S,G)アドレッシングともいう)を使用し、x、y及びzの間で使用される接続性が拡張され、一方で、ノードwは、ノードx、y及びzへマルチキャストデータを転送するために、802.1ahマルチキャストMAC(*,G)アドレッシングを使用する。これは、ノードwからのマルチキャストは、全てのピアへ到達する必要があり、x、y及びzからのマルチキャストは、それらが互いへとどのようにマルチキャストを行うかとは別に、ノードwへ到達するために特有の扱いを必要とするからである。。
同じ原理が、図7〜図11に示した以下の例の各々に適用され、即ち、エッジノードが3ホップパスによってのみスパニングツリーから到達可能である場合、そのノードからのSPFツリーが計算され、(*,G)アドレッシングを用いてそのノードからマルチキャストデータが転送され、ユニキャスト又は(S,G)アドレッシングを用いてそのノードへマルチキャストデーが転送される。
図7は、ノードwへ接続している2つのリンクに障害が発生する他のシナリオを示している。このシナリオにおいて、(ノードwから発する)B−VID1についてのSPFツリーはもはやノードA及びBを通過しないため、ノードCが通過ノードとして(例えば、タイブレーキングにより)使用される。B−VID5及びB−VID9についてのSPFツリーは、以前としてノードC及びDをそれぞれ通過することができる。v1/5/9に関するアドレシング方式は以前として(*,G)アドレッシングである。しかしながら、ノードwと通信するために、ノードx、y及びzは、v1/5(v1及びv5を表す)並びにv9でラベリングされたSPFツリーのリンクを使用する必要がある。よって、1つの実施形態において、ノードx、y及びzは、ノードwへマルチキャストデータを転送するためにユニキャスト又は(S,G)アドレッシングを使用し、一方で、ノードwは、ノードx、y及びzへマルチキャストデータを転送するために(*,G)アドレッシングを使用する。
図8は、ノードAへ接続している2つのリンクに障害が発生する他のシナリオを示している。このシナリオにおいて、ノードy及びzは、それらの間で依然として、v1/5/9リンクを介し、802.1ahマルチキャストMAC(*,G)アドレッシングを用いて通信することができる。一方、ノードx及びwと通信するために、ノードy及びzは、v1、v5及びv9でラベリングされたSPFツリーのリンクを使用する必要がある。よって、1つの実施形態において、共通のルートへの障害の起きた隣接関係を有する複数のノードが存在することから、ノードy及びzは、ノードx及びwへマルチキャストデータフレームを転送するために(S,G)アドレッシングを使用し、一方で、ノードw及びxは、互いに並びにノードy及びzへマルチキャストを行うために802.1ahマルチキャストMAC(*,G)アドレッシングを使用する。
図9は、ノードA及びWの間の第1のリンクに障害が起き、並びにノードB及びxの間の第2のリンクにも障害が起きる他のシナリオを示している。ノードAについてスパニングツリーが計算されると、ノードWは、3ホップパスによりサービスされるものとして現れる。B−VID1についてのSPFツリーはノードwがノードxと通信するための(ノードBとノードxとの間の)有効なパスをもはや有しないため、この障害の起きたパスをパスw−C−xによって置換えることができ、これは1つよりも多くのルートを通過するノードwからのSPFツリーの計算の結果として判定される。ラベルv1/5/9を伴うノードx、y及びzへのリンクは、障害が無く、従って、ノードx、y及びzにより、それらの間で(*,G)アドレッシングを用いてデータを転送するために継続的に使用されることができる。一方、ノードwと通信するために、ノードx、y及びzは、v1、v5及びv9でラベリングされたSPFツリーのリンクを使用する必要がある。よって、1つの実施形態において、ノードx、y及びzは、ノードwへマルチキャストデータを転送するためにユニキャスト又は(S,G)アドレッシングを使用し、一方で、ノードwは、ノードx、y及びzへマルチキャストデータを転送するために(*,G)アドレッシングを使用する。
図10は、ノードwへ接続する4つのリンクのうちの3つに障害が起きる他のシナリオを示している。このシナリオにおいて、ラベルv1/5/9を伴うノードx、y及びzへのリンクは、障害が無く、従って、ノードx、y及びzにより、それらの間で802.1ahマルチキャストMAC(*,G)アドレッシングを用いてデータを転送するために継続的に使用されることができる。一方、ノードwとの通信は、ノードwとノードDとの間を接続する唯一の有効なリンクを介する。よって、(v1/5/9でラベリングされた)B−VID1、5及び9についてのノードwから発する3つのSPFツリーは、全てノードDを通過する。ノードwと通信するために、ノードx、y及びzは、v1/5/9でラベリングされたSPFツリーのリンクを使用する必要がある。よって、1つの実施形態において、ノードx、y及びzは、ノードwへマルチキャストデータを転送するためにユニキャスト又は(S,G)アドレッシングを使用し、一方で、ノードwは、ノードx、y及びzへマルチキャストデータを転送するために(*,G)アドレッシングを使用する。
図11は、ノードAへ接続する4つのリンクのうちの3つに障害が起きる他のシナリオを示している。このシナリオにおいて、ノードwとの通信は、ノードwへ接続する唯一の有効なリンク(図中のv1/5/9でラベリングされた左端のリンク)を介する。A−zの間のリンクは、ノードzが他のいずれのエッジノードへ到達するためにもこのリンクを使用できないことから、使用されない。よって、ルートノードAは、有効なデータ転送のためにエッジノードのいずれにもサービスできないことから、ネットワークから“事実上”断絶されている。このシナリオは、4つのマルチキャストアドレスを使用する:ノードw、x及びyは、802.1aqマルチキャストMAC(S,G)アドレッシングを使用し、ノードzは、802.1ahマルチキャストMAC(*,G)アドレッシングを使用する。加えて、ノードAから発する1つのスパニングツリー、並びに、ノードw、x及びyからそれぞれ発する3つのスプリットホライズン計算が存在する。
図12は、3段折り返しCLOSネットワークにおいて障害が発生した場合のデータフレーム転送のための方法1200を示すフロー図である。1つの実施形態において、方法1200は、ルートノードから発するスパニングツリーについての転送ステートを、各ノードが計算し及びインストールすることから開始され(ブロック1210)、ここで、スパニングツリーにおけるデータ転送は、ネットワークに障害が無い場合にはマルチキャストパスについて802.1ahのマルチキャストアドレスを利用する。(例えば、図4にて上述したようにダイクストラのアルゴリズムによって)所与のルートノードへの障害を起こした接続を所与のエッジノードが有することが検出された場合(ブロック1220)、当該所与のエッジノードから発するSPFツリーが、上記所与のエッジノードから発し障害の起きた接続を使用するB−VIDのセットの各々について構築される(ブロック1230)。上記所与のエッジノードと他のエッジノードとにより共有される共通のI−SIDが識別され、この情報を使用して、B−VIDのセットに関連付けられるサービスを共通して有するように識別されるエッジノードペアについて、上記所与のエッジノードと他のエッジノードとの間のペアごとの接続性のために、各ノード内のFDBへデータが投入される(ブロック1240)。FDB内にユニキャストステートがインストールされる(ブロック1250)。トラフィックが所与のエッジノードへと向かうのか所与のエッジノードから来るのかに依存して選択されるマルチキャストアドレッシングのハイブリッドを用いて、FDB内にマルチキャストステートもまたインストールされる(ブロック1260)。そして、ノードは、FDBに従って、ユニキャスト及びマルチキャストデータを転送する(ブロック1270)。データは、ハイブリッドマルチキャストアドレッシングに従って転送され、それと共に、上記所与のエッジノードは802.1ahマルチキャストMACアドレッシングを用いてSPFツリーを介して他のエッジノードへデータフレームを転送し、他のエッジノードはユニキャスト又は802.1aQマルチキャストMACアドレッシングを用いてSPFツリーを介して上記所与のエッジノードへデータフレームを転送する。
図2〜図12を参照しながら上で説明した方法400及び1200は、さらに最適化されてもよい。図2の例において、B−VID1〜12について12個のスパニングツリーが生成される(3つのスパニングツリーのみが示されている)。実際には4つのルートのみが存在するため、4つのスパニングツリーの計算の結果が再利用されてもよい。同様に、2つのリンクに障害が起きる最初のシナリオ(図7)及び3つのリンクに障害が起きる最初のシナリオ(図10)において、ノードwからの計算が再利用されてもよい。
より小規模なネットワークについて、ある程度の事前の計算と、別個のシステムとしての又はノードに統合されるより簡易な内部システム管理機能とのルーティングシステムの置換えと、を計画することも可能であり、例えば、8ポートのスイッチから作られるCLOSネットワークが32個のリンクを有する。全ての単一のリンク及びノードの障害シナリオの疎なテーブルを前もって構築することもでき、当該テーブルは、B−VIDに対し、どのルート及びどのアドレッシングを使用すべきかをマッピングする。例えば、テーブル内には(232のあり得るネットワークステートに対して)約40個のエントリがある。エッジノードについては、正確なルートノードを転送エントリで指し示すことによって、FDBエントリを生成することができる。ルートノードについては、各エッジペアについての対象のI−SIDのインターセクションを判定し、それに応じてルートFDBにデータ投入することにより、FDBエントリを生成することができる。
上の説明は、移される負荷が生き残るノードにわたって可能な限り均等に共有されるように、障害時の負荷を拡散することを扱っている。しかしながら、全ての顧客がノンブロッキングなサービスからブロッキングなサービスを有するように遷移することになるため、均等な負荷の分配が常に望ましいわけではないかもしれない。1つの実施形態において、障害シナリオの下でのノンブロッキング性を保全するために、(スパニングツリーについてのそれぞれのB−VIDにより識別される)VLANのサブセットへプライオリティが付与され得る。プライオリティの与えられたスパニングツリーのセットの外側での障害は、それらセットの内側には拡散されない。それらセットの内側の障害は、それらセットの外側へと拡散される。このようにして、顧客のサブセットに、障害に直接的に影響されない場合にはいつでも、ノンブロッキングな振る舞いを保証することができる。
さらに、その時点の(current)トラフィックパターンの知識もまた活用されてよい。例えば十分に利用されているネットワークのような、データセンタ内では、トラフィックは均等に分散しているものと想定される。アルゴリズムを、利用度の低い(under-utilized)ネットワークを活用するように開発することができる。例えば、利用度の低いツリーは、障害時にシフトされるトラフィックのより大きなシェアを受け取ることができる。従って、ネットワークは、真にノンブロッキングではなく、提供されるその時点の負荷に基づいてノンブロッキングであるだけである。
さらに、バックアップノード/パスの構成の変更を、ヒットレスに(即ち、データのロスなく)提供することができる。所与のシステムIDセット内の障害時の第2の又は第3の候補としてのノードの位置を、当該システムIDセット内でのそのシステムIDの変更を介して修正することができる。管理システムは、どのようにトラフィックがシフトされるかを修正するために、それらシステムIDを構成し及び調整することができる。その時点の転送パターンが最小のXORタイブレーカ値に基づくものと仮定すると、次の最良のものの序列を、転送パターンに影響を与えることなくサービス中に修正することができる。
図13は、本発明の一実施形態を実装するために使用され得る3段折り返しCLOSネットワークエレメントの一例を示している。ネットワークエレメント310は、上述した3段折り返しCLOSネットワーク内の任意のノード(エッジノード又はルートノード)であってよい。
図13に示したように、ネットワークエレメント310は、スイッチングファブリック330、複数のデータカード335、受信(Rx)インタフェース340、送信(Tx)インタフェース350及びI/Oポート355を含むデータプレーンを含む。Rx及びTxインタフェース340及び350は、I/Oポート355を通じて、ネットワーク内のリンクとインタフェースする。ネットワークエレメントがエッジノードである場合、I/Oポート355は、ネットワークの外部との間の通信を提供するための、ユーザに面する複数のポートをも含む。データカード335は、インタフェース340及び350上で受信されるデータについての機能を実行し、スイッチングファブリック330はデータカード及びI/Oカードの間でデータをスイッチングする。
ネットワークエレメント310は、制御プレーンをも含み、制御プレーンは、データトラフィックの経路制御、転送及び処理をハンドリングするように構成される制御ロジックを収容する1つ以上のネットワークプロセッサ315を含む。ネットワークプロセッサ315は、スパニングツリールート選択のためのスプリットタイブレーカを実行し、スパニングツリーについての転送ステートを計算し及びインストールし、リンク障害の発生時にSPFツリーを計算し、並びにデータ転送のためにFDB326にデータ投入を行うようにも構成される。制御ロジック内に、他の処理もまた実装されてよい。
ネットワークエレメント310は、FDB326及びトポロジーデータベース322を記憶するメモリ320をも含む。トポロジーデータベース322は、ネットワークのリンクステートを含む、ネットワークモデル又は類似のネットワークトポロジーの表現を記憶する。FDB326は、1つ以上の転送テーブル内にネットワークエレメント310の転送ステートを記憶させ、それらはネットワークエレメント310へのインカミングのトラフィックをどこへ転送すべきかを示す。
1つの実施形態において、ネットワークエレメント310は、管理システム380へ連結され得る。1つの実施形態において、管理システム380は、メモリ370へ連結される1つ以上のプロセッサ360を含む。プロセッサ360は、システムID及びネットワークエレメント310の動作を構成するためのロジックを含み、当該動作は、システムIDの更新及びそれによるネットワーク内の作業の分散と、スパニングツリーのサブセットへの、ネットワークのノンブロッキング特性を少なくともそれらスパニングツリーについて維持するようなプライオリティの割り当てと、を含む。1つの実施形態において、管理システム380は、各ノードについて転送テーブルを計算し、そして転送テーブルをノードへダウンロードするという、システム管理機能を実行してもよい。システム管理機能は、(破線で示されているように)オプションであり、代替的な実施形態において、分散型のルーティングシステムは、各ノードが自身の転送テーブルを計算するように、上記計算を実行してもよい。
ここで説明した実施形態の利点の1つは、ネットワーク内に合計でN個のノードのあるネットワークについて、スパニングツリーのルート選択に適合されたスプリットタイブレーカの使用が、ルートの障害時に計算の負荷が大幅に削減されることを意味し、それにより、計算の複雑さは、(生き残るルートの数)×O(NlnN)となる。これは、複雑さがO(NlnN)である802.1aqに対して、大幅な改善である。ここで説明した実施形態について、計算上の複雑さは、障害の無いシナリオ及び障害シナリオの双方で削減される。
リンク障害のシナリオを解決するためのスプリットホライズン型のルーテッドツリーの使用もまた、計算上の複雑さを低減し、それにより、複雑さは、(ルートの数)×O(NlnN)+(障害リンクに隣接するエッジの数)×O(NlnN)となる。対比として、802.1aqについての名目上の複雑さは、O(NlnN)である。ここで説明した実施形態についてあらためて言うと、計算上の複雑さは、障害の無いシナリオ及び障害シナリオの双方で削減される。
さらに、スプリットホライズン型のルーテッドツリーの使用は、障害リンクに隣接する他のエッジノード(例えば、図6〜図11の例におけるノードw)への送信を行うエッジノードだけが、それらの通常のスパニングツリー(*,G)と、当該他のエッジノード(例えば、ノードw)へのユニキャストパスと、へバイキャストする必要があることを意味し、一方で、当該他のエッジノード自体(例えば、ノードw)は、(*,G)アドレッシングを使用し続けることができる。
ルート選択のためのノードとしてのタイブレーカ値の使用は、ルートが他の手段で明示的に識別される必要の無いことを意味し、よって構成ミスをすることがより少ない。
上述の機能は、コンピュータ読取可能なメモリに記憶されてネットワークエレメントに関連付けられたコンピュータプラットフォーム上の1つ以上のプロセッサ上で実行される、プログラム命令のセットとして実現されてもよい。しかしながら、ここで説明した全てのロジックを、複数の個別の構成要素、特定用途向け集積回路(ASIC)等の集積回路、フィールドプログラマブルゲートアレイ(FPGA)若しくはマイクロプロセッサ等のプログラマブルロジックデバイスと一緒に使用されるプログラマブルロジック、ステートマシーン、又は、それらのいずれの組み合わせをも含む他のいずれの装置を使用しても具現化することができることは、当業者には明らかであろう。プログラマブルロジックは、読取専用メモリチップ、コンピュータメモリ、ディスク、又は他の記憶媒体等の有形の媒体に、一時的に又は永久的に固定されることができる。また、プログラマブルロジックは、搬送波で具現化されるコンピュータデータ信号内に固定されることもでき、それにより、プログラマブルロジックを、コンピュータバス又は通信ネットワーク等のインターフェイス上で送信することが可能になる。このようなすべての実施形態は、本発明の範囲に含まれることが意図される。
図4及び図12のフロー図の動作を、図1、図2及び図13の例示的な実施形態を参照しながら説明した。しかしながら、図4及び図12のフロー図に示す動作を、図1、図2及び図13を参照して議論した実施形態以外の本発明の実施形態によっても実行することができること、また、図1、図2及び図13を参照して議論した実施形態が、図4及び図12の図を参照して議論した動作とは異なる動作を実行することができること、が理解されるべきである。図4及び図12の図は、本発明の特定の実施形態によって実行される動作の具体的な順序を示しているが、この順序は例示であること(例えば、代替の実施形態では、動作が異なる順序で行われ、何らかの動作が組み合わされ、何らかの動作が重複してもよいこと、など)が理解されるべきである。
本発明の多様な実施形態は、ソフトウェア、ファームウェア、及び/又はハードウェアの多様な組み合わせを使用して実装されてよい。従って、図示した技法は、1つ以上の電子デバイス(例えば、エンドステーション、ネットワークエレメント)に記憶されかつそこで実行されるコード及びデータを使用して実装されることができる。そのような電子デバイスは、非一時的なコンピュータ読取可能な記憶媒体(例えば、磁気ディスク、光ディスク、ランダムアクセスメモリ、読出し専用メモリ、フラッシュメモリデバイス、相変化メモリ)及び一時的なコンピュータ読取可能な伝送媒体(例えば、電気的、光学的、音響的、若しくは他の形式の伝搬信号−搬送波、赤外信号、デジタル信号等)、といったコンピュータ読取可能な媒体を使用して、コード及びデータを記憶し並びに(内部で及び/又はネットワークを通じて他の電子デバイスとの間で)通信する。加えて、そのような電子デバイスは、典型的に、1つ以上の記憶デバイス(非一時的な機械読取可能な記憶媒体)、ユーザ入出力デバイス(例えば、キーボード、タッチスクリーン、及び/又はディスプレイ)、並びにネットワーク接続等の、1つ以上の他のコンポーネントに連結された1つ以上のプロセッサのセットを含む。そのプロセッサのセットと他のコンポーネントとの連結は、典型的に、1つ以上のバス及びブリッジ(バスコントローラとも呼ばれる)を通じて行われる。よって、所与の電子デバイスの記憶デバイスは、典型的に、その電子デバイスの1つ以上のプロセッサのセット上での実行のためのコード及び/又はデータを記憶する。
ここで使用されるところでは、ネットワークエレメント(例えば、ルータ、スイッチ、ブリッジ、コントローラ)とは、ネットワーク上の他の機器(例えば、他のネットワークエレメント、エンドステーション)を通信可能に相互に接続する、ハードウェア及びソフトウェアを含む、1つのネットワーキング機器のことである。いくつかのネットワークエレメントは、“マルチサービスのネットワークエレメント”であり、これらは、複数のネットワーキング機能(例えば、ルーティング、ブリッジング、スイッチング、レイヤ2統合、セッションボーダ制御、サービス品質(Quality of Service)、及び/又は加入者管理)についてのサポートを提供し、及び/又は、複数のアプリケーションサービス(例えば、データ、音声、及びビデオ)についてのサポートを提供する。加入者エンドステーション(例えば、サーバ、ワークステーション、ラップトップ、ネットブック、パームトップ、携帯電話、スマートフォン、マルチメディアフォン、VOIP(Voice Over Internet Protocol)フォン、ユーザ機器、端末、携帯型メディアプレーヤ、GPSユニット、ゲームシステム、セットトップボックス)は、インターネットを通じて提供されるコンテンツ/サービス、及び/又は、インターネットにオーバレイされる(例えば、インターネット経由でトンネリングされる)仮想プライベートネットワーク(VPN)上で提供されるコンテンツ/サービスにアクセスする。それらのコンテンツ及び/又はサービスは、典型的に、サービスプロバイダ又はコンテンツプロバイダに属する1つ以上のエンドステーション(例えば、サーバエンドステーション)により、又はピアツーピアサービスに参加するエンドステーションにより提供され、例えば、パブリックウェブページ(例えば、無料コンテンツ、ストアフロント、検索サービス)、プライベートウェブページ(例えば、eメールサービスを提供する、ユーザ名/パスワードによりアクセスされるウェブページ)、及び/又は、VPN上の企業ネットワークを含み得る。典型的に、加入者エンドステーションは、(例えば、アクセスネットワークに(有線又は無線で)連結された顧客構内機器(customer premise equipment)を通じて)エッジネットワークエレメントに連結され、それらエッジネットワークエレメントは、(例えば、1つ以上のコアネットワークエレメントを通じて)他のエッジネットワークエレメントに連結され、それら他のエッジネットワークエレメントは、他のエンドステーション(例えば、サーバエンドステーション)に連結される。
本発明をいくつかの実施形態に関して説明してきたが、本発明が上述の実施形態に限定されるものではなく、添付の特許請求の範囲の思想および範囲内で修正及び変形と共に実践されることができることを、当業者は認識するであろう。よって、本説明は、限定ではなく例示と捉えられるべきである。

Claims (27)

  1. 3段折り返しCLOSネットワーク内の、計算上の複雑さ、ネットワーク運営、マルチキャストアドレッシング、及び当該ネットワークにおける障害のケースでの負荷再分配、についての改善された効率性を伴うイーサネットルーティングのための方法であって、
    前記ネットワークは、各々がネットワークエレメントを表す複数のノードを含み、前記ノードはルートノードとエッジノードとを含み、各エッジノードは、ユーザに面する入力及び出力ポートのセットを含み、各ルートノードは、エッジノードを相互接続するためのポートのセットを含み、前記方法は、
    前記ネットワーク内の各ノードにより、前記ルートノードから発するスパニングツリーについての転送ステートを計算し及びインストールするステップと、前記スパニングツリーにおけるデータ転送は、前記ネットワークに障害が無い場合にはマルチキャストパスについて任意ソースのアドレスを利用することと、
    前記エッジノードのうちの所与の1つを、前記ルートノードのうちの所与の1つへの障害を起こした接続を有するものとして識別するステップと、
    前記ネットワーク内の各ノード又はシステム管理機能により、前記所与のエッジノードへの接続性のためのプロトタイプとして、前記所与のエッジノードから発する最短パス優先(SPF)ツリーを、前記所与のルートノードから発し前記障害を起こした接続を使用するスパニングツリーについてのB−VID(Backbone Virtual Local Area Network identifiers)のセットの各々について構築するステップと、前記SPFツリーは、前記B−VIDについての前記所与のエッジノードへのユニキャスト及びマルチキャストの接続性のためのプロトタイプとして供されることと、
    前記B−VIDの前記セットに関連付けられるサービスを共通して有するように識別される各ノードペアについての、前記所与のエッジノードと他のエッジノードとの間のペアごとの接続性のために、フィルタリングデータベースへデータ投入するステップと、
    前記フィルタリングデータベース内にユニキャストステートをインストールするステップと、
    トラフィックが前記所与のエッジノードへと向かうのか前記所与のエッジノードから来るのかに依存して選択されるマルチキャストアドレッシングのハイブリッドを用いて、前記フィルタリングデータベース内にマルチキャストステートをインストールするステップと、
    前記フィルタリングデータベースに従って、前記ネットワークにおいてユニキャスト及びマルチキャストデータを転送するステップと、
    を含む方法。
  2. データフレームを転送する前記ステップは、
    前記所与のエッジノードから前記他のエッジノードへ、同じサービス識別子を有するグループ内の前記エッジノードの全てに到達する、802.1ahマルチキャストMAC(Medium Access Control)アドレッシングを用いて、データフレームの第1のセットを転送するステップと、
    前記他のエッジノードの各々から前記所与のエッジノードへ、ユニキャスト又は802.1aqマルチキャストMACアドレッシングを用いて、データフレームの第2のセットを転送するステップと、前記ユニキャスト及び前記802.1aqマルチキャストMACアドレッシングは、前記グループ内の前記エッジノードの全てではなくサブセットへの通信を可能とすることと、
    をさらに含む、請求項1の方法。
  3. 前記スパニングツリーの各々について、当該スパニングツリーに関連付けられるマスク値によって前記ノードのシステムIDが変換された際に、前記ネットワーク内の前記ノードの中から、最小のシステムIDを有するルートノードを選択するステップ、
    をさらに含む、請求項1の方法。
  4. 各ノードにより、障害を起こしたルートノードの作業負荷が他の複数のルートノードにわたって分配されるように、スパニングツリールート選択の期間中のタイブレーキングのための複数のシステムIDを受信すること、
    をさらに含む、請求項3の方法。
  5. 計算し及びインストールする前記ステップは、
    前記ネットワーク内の所与のB−VIDについてスパニングツリーを形成するために、ダイクストラのアルゴリズムを用いて、各ルートノードについて、前記エッジノードへのそのパスを計算するステップと、
    前記スパニングツリーから、前記エッジノードまでに1つよりも多くのホップを有する前記パスを除外するステップと、
    前記スパニングツリー内の3ホップパスを、前記3ホップパスの障害の終点にあたるエッジノードと前記ルートノードとの間のリンク障害を有するものとして識別するステップと、
    をさらに含む、請求項1の方法。
  6. 同じサービス識別子に関連付けられるエッジ−エッジノードペアを識別するステップと、
    識別した前記エッジ−エッジノードペアに基づいて、前記ネットワーク内の各ノードについて前記フィルタリングデータベースを構築するステップと、
    をさらに含む、請求項1の方法。
  7. 前記フィルタリングデータベースを構築する前記ステップは、
    各エッジノードにより、I−SIDマルチキャストアドレスがスパニングツリーのルートと前記エッジノードのノードとしてのユニキャストアドレスとを指し示すように、前記フィルタリングデータベースにデータ投入するステップと、
    各ルートノードにより、前記フィルタリングデータベース内の、識別した前記エッジ−エッジノードペアへのマルチキャストエントリ及び前記ルートノードのノードとしてのユニキャストアドレスへのマルチキャストエントリ、を相互接続するように前記フィルタリングデータベースにデータ投入するステップと、
    をさらに含む、請求項6の方法。
  8. 前記スパニングツリーのサブセットを、前記ネットワーク内の他のスパニングツリーに対してプライオリティを有するものとして識別するステップと、
    前記サブセットの外側での障害を前記サブセットの中へと拡散させることなく、前記サブセットの内側の障害を前記サブセットの外側へと拡散させるステップと、
    をさらに含む、請求項1の方法。
  9. 前記ネットワーク内の前記障害は、障害を起こしたルートノード、自ノードに接続している1つよりも多くのリンクが障害を起こした部分的に断絶されたルートノード、単一のリンクが生き残っている事実上断絶されたルートノード、自ノードに接続している1つよりも多くのリンクが障害を起こした部分的に断絶されたエッジノード、又は、異なるルートノード及び異なるエッジノードへ各々接続している障害を起こした複数のリンク、を含む、請求項1の方法。
  10. 前記3段折り返しCLOSネットワークは、データセンタ内のネットワークを表す、請求項1の方法。
  11. 3段折り返しCLOSネットワークのエッジノードとして機能するネットワークエレメントであって、計算上の複雑さ、ネットワーク運営、マルチキャストアドレッシング、及び当該ネットワークにおける障害のケースでの負荷再分配、についての改善された効率性を伴うイーサネットルーティングを使用し、前記エッジノードは、
    ユーザに面する入力及び出力ポートの第1のセットと、
    複数のルートノードへ連結される入力及び出力ポートの第2のセットと、
    フィルタリングデータベースを記憶するメモリと、
    前記メモリ、ユーザに面する入力及び出力ポートの前記第1のセット、並びに入力及び出力ポートの前記第2のセット、へ連結されるネットワークプロセッサと、
    を備え、
    前記ネットワークプロセッサは、
    前記ルートノードから発するスパニングツリーについての転送ステートを計算し及びインストールし、
    前記所与のエッジノードへの接続性のためのプロトタイプとして、前記所与のエッジノードから発する最短パス優先(SPF)ツリーを、前記所与のルートノードから発し前記障害を起こした接続を使用するスパニングツリーについてのB−VID(Backbone Virtual Local Area Network identifiers)のセットの各々について構築し、前記SPFツリーは、前記B−VIDについての前記所与のエッジノードへのユニキャスト及びマルチキャストの接続性のためのプロトタイプとして供されるものであり、
    前記B−VIDのセットに関連付けられるサービスを共通して有するように識別される各ノードペアについての、前記所与のエッジノードと他のエッジノードとの間のペアごとの接続性のために、フィルタリングデータベースへデータ投入し、
    前記フィルタリングデータベース内にユニキャストステートをインストールし、
    トラフィックが前記所与のエッジノードへと向かうのか前記所与のエッジノードから来るのかに依存して選択されるマルチキャストアドレッシングのハイブリッドを用いて、前記フィルタリングデータベース内にマルチキャストステートをインストールし、
    前記フィルタリングデータベースに従って、前記ネットワークにおいてユニキャスト及びマルチキャストデータを転送する、
    ように構成される、ネットワークエレメント。
  12. 前記ネットワークエレメントは、管理システムへ連結され、前記管理システムが前記ネットワーク内の各ノードの代わりに各B−VIDについて前記SPFを構築する、請求項11のネットワークエレメント。
  13. 前記ネットワークプロセッサは、
    前記所与のエッジノードから前記他のエッジノードへ、同じサービス識別子を有するグループ内の前記エッジノードの全てに到達する、802.1ahマルチキャストMAC(Medium Access Control)アドレッシングを用いて、データフレームの第1のセットを転送し、
    前記他のエッジノードの各々から前記所与のエッジノードへ、ユニキャスト又は802.1aqマルチキャストMACアドレッシングを用いて、データフレームの第2のセットを転送する、
    ようにさらに構成され、
    前記ユニキャスト及び前記802.1aqマルチキャストMACアドレッシングは、前記グループ内の前記エッジノードの全てではなくサブセットへの通信を可能とする、
    請求項11のネットワークエレメント。
  14. 前記ネットワークプロセッサは、前記スパニングツリーの各々について、当該スパニングツリーに関連付けられるマスク値によって前記ルートノードのシステムIDが変換された際に、前記ルートノードの中から、最小のシステムIDを有するルートノードを選択する、
    ようにさらに構成される、請求項11のネットワークエレメント。
  15. 各ノードは、障害を起こしたルートノードの作業負荷が他の複数のルートノードにわたって分配されるように、スパニングツリールート選択の期間中のタイブレーキングのための複数のシステムIDを受信する、請求項14のネットワークエレメント。
  16. 前記ネットワークプロセッサは
    前記ネットワーク内の所与のB−VIDについてスパニングツリーを形成するために、ダイクストラのアルゴリズムを用いて、各ルートノードについて、前記エッジノードへのそのパスを計算し、
    前記スパニングツリーから、前記エッジノードまでに1つよりも多くのホップを有する前記パスを除外し、
    前記スパニングツリー内の3ホップパスを、前記ルートノードとの間の隣接関係の上でリンク障害を有するノードへ到達するものとして識別する、
    ようにさらに構成される、請求項11のネットワークエレメント。
  17. 前記ネットワーク内の前記障害は、障害を起こしたルートノード、自ノードに接続している1つよりも多くのリンクが障害を起こした部分的に断絶されたルートノード、単一のリンクが生き残っている事実上断絶されたルートノード、自ノードに接続している1つよりも多くのリンクが障害を起こした部分的に断絶されたエッジノード、又は、異なるルートノード及び異なるエッジノードへ各々接続している障害を起こした複数のリンク、を含む、請求項11のネットワークエレメント。
  18. 各ルートノードは、バックボーンコアブリッジ(BCB)であり、各エッジノードは、バックボーンエッジブリッジ(BEB)である、請求項11のネットワークエレメント。
  19. 前記3段折り返しCLOSネットワークは、データセンタ内のネットワークを表す、請求項11のネットワークエレメント。
  20. 3段折り返しCLOSネットワークのシステムであって、計算上の複雑さ、ネットワーク運営、マルチキャストアドレッシング、及び当該ネットワークにおける障害のケースでの負荷再分配、についての改善された効率性を伴うイーサネットルーティングを使用し、前記システムは、
    ユーザに面する入力及び出力ポートのセットを各々が含む複数のエッジノードと、
    前記複数のエッジノードを相互接続するためのポートのセットを各々が含む複数のルートノードと、
    を含み、
    前記ルートノード及びエッジノードの各々は、
    フィルタリングデータベースを記憶するメモリと、
    前記メモリへ連結されるネットワークプロセッサと、
    を備え、
    前記ネットワークプロセッサは、
    前記ルートノードから発するスパニングツリーについての転送ステートを計算し及びインストールし、
    前記所与のエッジノードへの接続性のためのプロトタイプとして、前記所与のエッジノードから発する最短パス優先(SPF)ツリーを、前記所与のルートノードから発し前記障害を起こした接続を使用するスパニングツリーについてのB−VID(Backbone Virtual Local Area Network identifiers)のセットの各々について構築し、前記SPFツリーは、前記B−VIDについての前記所与のエッジノードへのユニキャスト及びマルチキャストの接続性のためのプロトタイプとして供されるものであり、
    前記B−VIDのセットに関連付けられるサービスを共通して有するように識別される各ノードペアについての、前記所与のエッジノードと他のエッジノードとの間のペアごとの接続性のために、フィルタリングデータベースへデータ投入し、
    前記フィルタリングデータベース内にユニキャストステートをインストールし、
    トラフィックが前記所与のエッジノードへと向かうのか前記所与のエッジノードから来るのかに依存して選択されるマルチキャストアドレッシングのハイブリッドを用いて、前記フィルタリングデータベース内にマルチキャストステートをインストールし、
    前記フィルタリングデータベースに従って、前記ネットワークにおいてユニキャスト及びマルチキャストデータを転送する、
    ように構成される、システム。
  21. 前記ネットワーク内の各ノードの代わりに各B−VIDについて前記SPFを構築する管理システム、
    をさらに含む、請求項20のシステム。
  22. 前記ネットワークプロセッサは、
    前記所与のエッジノードから前記他のエッジノードへ、同じサービス識別子を有するグループ内の前記エッジノードの全てに到達する、802.1ahマルチキャストMAC(Medium Access Control)アドレッシングを用いて、データフレームの第1のセットを転送し、
    前記他のエッジノードの各々から前記所与のエッジノードへ、ユニキャスト又は802.1aqマルチキャストMACアドレッシングを用いて、データフレームの第2のセットを転送する、
    ようにさらに構成され、
    前記ユニキャスト及び前記802.1aqマルチキャストMACアドレッシングは、前記グループ内の前記エッジノードの全てではなくサブセットへの通信を可能とする、
    請求項20のシステム。
  23. 前記ネットワークプロセッサは、前記スパニングツリーの各々について、当該スパニングツリーに関連付けられるマスク値によって前記ルートノードのシステムIDが変換された際に、前記ルートノードの中から、最小のシステムIDを有するルートノードを選択する、
    ようにさらに構成される、請求項20のシステム。
  24. 障害を起こしたルートノードの作業負荷が他の複数のルートノードにわたって分配されるように、スパニングツリールート選択の期間中のタイブレーキングのために使用される複数のシステムIDで、各ノードを構成する管理システム、
    をさらに含む、請求項23のシステム。
  25. 前記ネットワーク内の前記障害は、障害を起こしたルートノード、自ノードに接続している1つよりも多くのリンクが障害を起こした部分的に断絶されたルートノード、単一のリンクが生き残っている事実上断絶されたルートノード、自ノードに接続している1つよりも多くのリンクが障害を起こした部分的に断絶されたエッジノード、又は、異なるルートノード及び異なるエッジノードへ各々接続している障害を起こした複数のリンク、を含む、請求項20のシステム。
  26. 各ルートノードは、バックボーンコアブリッジ(BCB)であり、各エッジノードは、バックボーンエッジブリッジ(BEB)である、請求項20のシステム。
  27. 前記3段折り返しCLOSネットワークは、データセンタ内のネットワークを表す、請求項20のシステム。
JP2015507625A 2012-04-27 2013-04-11 802.1aqのための3段折り返しclosの最適化 Active JP6117911B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/458,675 US8848509B2 (en) 2012-04-27 2012-04-27 Three stage folded Clos optimization for 802.1aq
US13/458,675 2012-04-27
PCT/IB2013/052862 WO2013160786A1 (en) 2012-04-27 2013-04-11 Three stage folded clos optimization for 802.1aq

Publications (2)

Publication Number Publication Date
JP2015518345A true JP2015518345A (ja) 2015-06-25
JP6117911B2 JP6117911B2 (ja) 2017-04-19

Family

ID=48577166

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015507625A Active JP6117911B2 (ja) 2012-04-27 2013-04-11 802.1aqのための3段折り返しclosの最適化

Country Status (7)

Country Link
US (1) US8848509B2 (ja)
EP (1) EP2842278B1 (ja)
JP (1) JP6117911B2 (ja)
KR (1) KR102123035B1 (ja)
CN (1) CN104380672B (ja)
IN (1) IN2014DN09385A (ja)
WO (1) WO2013160786A1 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102136917B (zh) * 2010-07-14 2013-04-17 华为技术有限公司 以太网组播的方法及装置
TWI474681B (zh) * 2012-05-11 2015-02-21 Hope Bay Technologies Inc 雲端系統中的虛擬機器連線方法
US20140086100A1 (en) * 2012-09-26 2014-03-27 Avaya, Inc. Multi-Chassis Cluster Synchronization Using Shortest Path Bridging (SPB) Service Instance Identifier (I-SID) Trees
US9007892B2 (en) * 2012-10-26 2015-04-14 Futurewei Technologies, Inc. Apparatus and method to find partially disjoint routes for dual fiber-cuts
US9860081B2 (en) * 2013-06-18 2018-01-02 Extreme Networks, Inc. General user network interface (UNI) multi-homing techniques for shortest path bridging (SPB) networks
US9565027B2 (en) * 2013-08-23 2017-02-07 Futurewei Technologies, Inc. Multi-destination traffic control in multi-level networks
US9887914B2 (en) * 2014-02-04 2018-02-06 Fastly, Inc. Communication path selection for content delivery
US9900217B2 (en) * 2014-03-26 2018-02-20 Arista Networks, Inc. Method and system for network topology enforcement
US9654401B2 (en) 2014-03-30 2017-05-16 Juniper Networks, Inc. Systems and methods for multipath load balancing
US9407555B2 (en) 2014-03-31 2016-08-02 Juniper Networks, Inc. Systems and methods for load balancing multicast traffic
RU2580100C2 (ru) * 2014-05-16 2016-04-10 Федеральное государственное бюджетное учреждение науки Институт проблем управления им. В.А. Трапезникова Российской академии наук Обобщенные неблокируемые двухкаскадные сети клоза
US10333725B2 (en) 2016-03-23 2019-06-25 International Business Machines Corporation Overlay network with optimized packet flooding
EP3534571B1 (en) * 2016-11-15 2021-03-03 Huawei Technologies Co., Ltd. Service packet transmission method, and node apparatus
ES2791540T3 (es) * 2017-02-15 2020-11-04 Maven Wireless Sweden Ab Sistema de Antenas Distribuidas que proporciona redundancia
ES2875566T3 (es) 2017-02-23 2021-11-10 Maven Wireless Sweden Ab Procedimiento y sistema de antena distribuido para enrutamiento de portadoras agregadas en el sistema de antena distribuido
CN108833271B (zh) * 2018-05-28 2021-02-09 全球能源互联网研究院有限公司 一种电网广域控制业务通信路径选择方法及服务器
US11050679B1 (en) * 2019-06-28 2021-06-29 Juniper Networks, Inc. Defining non-forwarding adjacencies in bipartite networks, such as Clos newtorks, having a level 2 backbone and level 1 nodes
US11483238B2 (en) * 2019-10-14 2022-10-25 Cisco Technology, Inc. Centralized path computation for information-centric networking
US11770332B2 (en) * 2021-02-05 2023-09-26 Extreme Networks, Inc. MAC-based redistribution policy for multi-area networks
CN114401137B (zh) * 2022-01-14 2023-09-08 中国人民解放军国防科技大学 基于对偶算法的备份网络最短路阻断方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050111356A1 (en) * 2003-11-25 2005-05-26 Whittaker Stewart Mark A. Connection controller
JP2008546332A (ja) * 2005-06-10 2008-12-18 パルテック・クラスター・コンペテンス・センター・ゲゼルシャフト・ミット・ベシュレンクテル・ハフツング データ通信システムおよび方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5684800A (en) 1995-11-15 1997-11-04 Cabletron Systems, Inc. Method for establishing restricted broadcast groups in a switched network
US6084858A (en) 1997-01-29 2000-07-04 Cabletron Systems, Inc. Distribution of communication load over multiple paths based upon link utilization
US20070002770A1 (en) 2005-06-30 2007-01-04 Lucent Technologies Inc. Mechanism to load balance traffic in an ethernet network
WO2007043919A1 (en) 2005-10-11 2007-04-19 Telefonaktiebolaget Lm Ericsson (Publ) Method of generating spanning trees
US7756035B2 (en) 2006-01-31 2010-07-13 Nortel Networks Limited Planning routes and allocating identifiers to routes in a managed frame-forwarding network
US7911944B2 (en) 2007-12-26 2011-03-22 Nortel Networks Limited Tie-breaking in shortest path determination
WO2010104434A1 (en) 2009-03-12 2010-09-16 Telefonaktiebolaget L M Ericsson (Publ) Global provisioning of zero-bandwidth traffic engineering label switched paths
US8509618B2 (en) * 2009-05-06 2013-08-13 Ciena Corporation Photonic routing systems and methods for loop avoidance
US8248925B2 (en) 2009-09-08 2012-08-21 Rockstar Bidco, LP Method and apparatus for selecting between multiple equal cost paths
JP5566463B2 (ja) * 2009-10-02 2014-08-06 テレフオンアクチーボラゲット エル エム エリクソン(パブル) コンピュータネットワークにおけるデータ転送の技術
JP2013524557A (ja) 2010-03-26 2013-06-17 ロックスター ビーアイディーシーオー,エルピー ルーティングされるEthernetネットワークでの分散した障害回復
US9210071B2 (en) 2010-08-16 2015-12-08 Telefonaktiebolaget L M Ericsson (Publ) Automated traffic engineering for fat tree networks
US8553584B2 (en) 2010-09-08 2013-10-08 Telefonaktiebolaget L M Ericsson (Publ) Automated traffic engineering for 802.1AQ based upon the use of link utilization as feedback into the tie breaking mechanism
US9813257B2 (en) * 2010-09-10 2017-11-07 Extreme Networks, Inc. Access network dual path connectivity
US8949385B2 (en) * 2011-09-27 2015-02-03 Avaya, Inc. Method and apparatus for resolving conflicting unicast advertisements in a transport network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050111356A1 (en) * 2003-11-25 2005-05-26 Whittaker Stewart Mark A. Connection controller
JP2008546332A (ja) * 2005-06-10 2008-12-18 パルテック・クラスター・コンペテンス・センター・ゲゼルシャフト・ミット・ベシュレンクテル・ハフツング データ通信システムおよび方法
US20090213866A1 (en) * 2005-06-10 2009-08-27 Partec Cluster Compentence Center Gmbh Data Communication System And Method

Also Published As

Publication number Publication date
KR20150013612A (ko) 2015-02-05
CN104380672A (zh) 2015-02-25
US20130286817A1 (en) 2013-10-31
JP6117911B2 (ja) 2017-04-19
KR102123035B1 (ko) 2020-06-15
EP2842278B1 (en) 2016-03-09
IN2014DN09385A (ja) 2015-07-17
EP2842278A1 (en) 2015-03-04
CN104380672B (zh) 2017-12-15
US8848509B2 (en) 2014-09-30
WO2013160786A1 (en) 2013-10-31

Similar Documents

Publication Publication Date Title
JP6117911B2 (ja) 802.1aqのための3段折り返しclosの最適化
EP2614615B1 (en) Automated traffic engineering for 802.1aq based upon the use of link utilization as feedback into the tie-breaking mechanism
JP6193890B2 (ja) マルチエリアネットワークにおける改善された最短パスブリッジング
TWI493926B (zh) 複雜型樹狀網路之自動化訊務工程
KR102123034B1 (ko) 분할 동점 처리기를 사용한 802.1aq 네트워크에서의 동일 비용 최단 경로들 중의 선택
US8948181B2 (en) System and method for optimizing next-hop table space in a dual-homed network environment
JP5961764B2 (ja) 通信経路選択のための方法および装置
KR20100112144A (ko) 최단 경로 결정시의 타이브레이킹
CN104378297A (zh) 一种报文转发方法及设备
EP2614618A1 (en) Automated traffic engineering for multi-protocol label switching (mpls) with link utilization as feedback into the tie-breaking mechanism
WO2012106930A1 (zh) 一种生成虚拟专用网转发表项的方法和装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160311

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170210

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170221

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170323

R150 Certificate of patent or registration of utility model

Ref document number: 6117911

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250