JP2018191290A - 負荷分散を実現するための方法、装置、およびネットワークシステム - Google Patents

負荷分散を実現するための方法、装置、およびネットワークシステム Download PDF

Info

Publication number
JP2018191290A
JP2018191290A JP2018088752A JP2018088752A JP2018191290A JP 2018191290 A JP2018191290 A JP 2018191290A JP 2018088752 A JP2018088752 A JP 2018088752A JP 2018088752 A JP2018088752 A JP 2018088752A JP 2018191290 A JP2018191290 A JP 2018191290A
Authority
JP
Japan
Prior art keywords
switch
forwarding
port
virtual routing
network segment
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
JP2018088752A
Other languages
English (en)
Other versions
JP6510115B2 (ja
Inventor
ヘヤン・リュウ
Heyang Liu
チンフア・ヤン
Qinghua Yan
リ・シェン
Li Shen
メイリン・スン
Meiling Sun
ジユ・シェ
Zhiyu Xie
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2018191290A publication Critical patent/JP2018191290A/ja
Application granted granted Critical
Publication of JP6510115B2 publication Critical patent/JP6510115B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data 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/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric

Landscapes

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

Abstract

【課題】負荷分散を実現するための方法、装置、およびネットワークシステムを提供する。【解決手段】コントローラは、meshネットワークにおける第1のスイッチの各ポートのポート属性を取得し、第1のスイッチの各ポートのポート属性に従って、第1のスイッチの各ポートに対応する仮想ルーティング・転送インスタンスを決定し、第1のスイッチのすべてのユーザ側ポートが第1の仮想ルーティング・転送インスタンスに対応し、コントローラは、meshネットワークのトポロジおよび第1のスイッチの各ポートに対応する仮想ルーティング・転送インスタンスに従って、第1のスイッチの転送テーブルを生成し、転送テーブルの第1の転送エントリは、第1の仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、および宛先ネットワークセグメントに対応する少なくとも2つの転送経路を含み、コントローラは、転送テーブルを第1のスイッチに送信する。【選択図】図6

Description

この出願は、ネットワーク通信技術、詳細には、負荷分散を実現するための方法、装置、およびネットワークシステムに関する。
クラウドコンピューティング時代には、ネットワーク・データ・トラフィック・モデルが大きく変化する。データトラフィックの16%は電気通信事業者ネットワーク上で搬送され、データトラフィックの14%は企業ネットワーク上で搬送され、データトラフィックの残りの70%はすべてデータ・センタ・ネットワークで流れる。データ・センタ・ネットワークのデータトラフィックと帯域幅の指数関数的な増加は、従来のネットワークの人々の想像力を大きく広げた。高い帯域幅と高いスケーラビリティが、データ・センタ・ネットワークの顧客の第一の要件になっている。データ・センタ・ネットワーク構築のボトルネックが明白になってきている。
前述の課題を克服するために、先行技術は、メッシュ(mesh)ネットワークと呼ばれるスケーラブルなデータ・センタ・ネットワークを提供する。meshネットワークは、すべてのスイッチが相互に接続された完全接続ネットワークである。またmeshネットワークは、レベル1・meshネットワーク、レベル2・meshネットワーク、またはマルチレベル・meshネットワークであり得る。レベル1・meshネットワーク内のあるスイッチとレベル1・meshネットワーク内の任意の他のスイッチとの間には、少なくとも1つの直接経路(すなわち、中間スイッチなしの経路)が存在する。図1は、レベル1・meshネットワークの構造の概略図である。レベル1・meshネットワークは複数のスイッチを含む(図1は合計8個のスイッチS1〜S8を表わす)。各スイッチは任意の他のスイッチと相互接続されている。複数のレベル1・meshネットワークが相互接続されてレベル2・meshネットワークが得られる。図2は、4×4レベル2・meshネットワークである。4×4レベル2・meshネットワークは、4個のレベル1・meshネットワークによって形成されたレベル2・meshネットワークである。レベル2・meshネットワークを形成する各レベル1・meshネットワークは、(黒点で表現された)4個のスイッチを含む。図2は一例として使用されているにすぎない。実際には、レベル2・meshネットワークに含まれる複数のレベル1・meshネットワークは、同数の、または異なる数のスイッチを有し得る。レベル2・meshネットワークのシナリオでは、任意のレベル1・meshネットワークについて、レベル1・meshネットワーク内のスイッチはレベル1・meshネットワークのグループ内デバイスと呼ばれることが可能であり、別のレベル1・meshネットワークに属するスイッチはレベル1・meshネットワークのグループ間デバイスと呼ばれる。
meshネットワークでは、実際、あるスイッチと別のスイッチとの間に複数の経路がある。図1のレベル1・meshネットワークが例として使用される。S1とS5との間の経路は、任意選択で、S1→S5、S1→S2→S5、S1→S3→S5、S1→S2→S3→S5などを含む。経路は、異なるホップ数と異なるオーバヘッドとを有し、したがって、不等コスト経路と呼ばれる。通常、meshネットワーク内の第1のスイッチから第2のスイッチへのパケットは、第1のスイッチと第2のスイッチとの間の最短経路を通してのみ転送される。結果として、第1のスイッチと第2のスイッチとの間の最短経路は比較的高い負荷を有し、第1のスイッチと第2のスイッチとの間の他の経路が十分に利用されることが可能でない。複数の不等コスト経路間で負荷分散を実現するために、最短経路優先規則制限が除去される必要がある。この場合、meshネットワーク内のすべてのスイッチが完全に接続され、先行技術の転送テーブルの各エントリは、宛先ネットワークセグメントと、次のホップと、ポートのみを含むので、meshネットワークでパケットを受信するスイッチは、転送テーブルに従ってパケットの転送経路をランダムに選択する。パケットは、パケットの生存時間(英語:time to live、TTL)が0になり、パケットが廃棄されるまで、パケットの送信元スイッチ(すなわち、パケットを送信するサーバに接続されたスイッチ)によって絶えず転送され得る。最短経路優先規則制限を除去するだけでは、meshネットワークにおいて負荷分散を実現することができないことを理解できる。
この出願の実施形態は、負荷分散を実現するための方法、装置、およびネットワークシステムを提供し、それによってmeshネットワークにおける負荷分散を改善する。
この出願の第1の態様は、負荷分散を実現するための方法を提供する。この方法は、コントローラとmeshネットワークとを含むシステムに適用される。meshネットワークは複数のスイッチを含む。この方法はコントローラによって実行される。コントローラは第1のスイッチの各ポートのポート属性を取得し、第1のスイッチはmeshネットワーク内のいずれかのスイッチであり、ポート属性は、ポートがユーザ側ポートまたはネットワーク側ポートであることを示すために使用される。コントローラは、第1のスイッチの各ポートのポート属性に従って、第1のスイッチの各ポートに対応する仮想ルーティング・転送インスタンスを決定する。ユーザ側ポートとネットワーク側ポートは異なる仮想ルーティング・転送インスタンスに対応し、第1のスイッチのすべてのユーザ側ポートは、第1の仮想ルーティング・転送インスタンスに対応する。コントローラは、meshネットワークのトポロジおよび第1のスイッチの各ポートに対応する仮想ルーティング・転送インスタンスに従って、第1のスイッチの転送テーブルを生成する。転送テーブルの第1の転送エントリは、第1の仮想ルーティング・転送インスタンス、第1の仮想ルーティング・転送インスタンスに対応する第1の宛先ネットワークセグメント、および第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路を含む。コントローラは、転送テーブルを第1のスイッチに送信する。転送テーブルは、第1のスイッチが、負荷分散アルゴリズムおよび第1の転送エントリに従って、第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路の中から、第1の宛先ネットワークセグメントに対応するパケットのターゲット転送経路を選択することを可能にするために使用される。
この出願のスイッチのポートは、スイッチを別のデバイスに接続するためのサービスポートを指す。スイッチをいずれのデバイスにも接続しないサービスポートは考慮されない。meshネットワークは多数の不等コスト経路を含む。したがって、meshネットワークにおいて負荷分散を実現するために、最短経路優先規則制限が除去される必要がある。最短経路優先規則制限を除去することは、第1のスイッチによって、転送テーブルを生成するプロセスにおいて最短経路優先規則に従って、送信元ネットワークセグメントと宛先ネットワークセグメントの対に対して、最短経路の代わりに、複数の不等コスト経路が選択されることを示す。
第1の態様では、コントローラは、第1のスイッチの各ポートのポート属性を取得し、第1のスイッチのすべてのユーザ側ポートが第1の仮想ルーティング・転送インスタンスに対応することを可能にし、meshネットワークのトポロジおよび第1のスイッチの各ポートに対応する仮想ルーティング・転送インスタンスに従って、第1のスイッチの転送テーブルを生成する。転送テーブルの各エントリは仮想ルーティング・転送インスタンスを含む。転送エントリは仮想ルーティング・転送インスタンスを含み、ユーザ側ポートとネットワーク側ポートは異なる仮想ルーティング・転送インスタンスに対応するので、パケットを受信した後、第1のスイッチは、パケットを受信するポートのポート属性に従って転送テーブルを探査する。これは、ユーザ側ポートから受信されたパケットがユーザ側ポートに送り返されることを回避することができ、パケットが正しく転送されることができることを保証することができる。加えて、第1の仮想ルーティング・転送インスタンスに関連した転送エントリ内の宛先ネットワークセグメントは、少なくとも2つの転送経路に対応する。したがって、サーバによって送信されたパケットを受信した後、第1のスイッチは、負荷分散アルゴリズムに従って少なくとも2つの転送経路の中から1つの転送経路を選択し、少なくとも2つの転送経路間で負荷分散を実現し得る。
第1の態様の第1の実施態様では、第1のスイッチの各ポートのポート属性を取得するとき、コントローラは、第1のスイッチに通知メッセージを送信する。通知メッセージは、第1のスイッチに、第1のスイッチのすべてのポートから探索メッセージを送信するように命令するために使用され、探索メッセージは、探索メッセージを受信するデバイスに、コントローラに報告メッセージを送信するように命令するために使用される。コントローラは、第1のスイッチに接続されたデバイスが報告メッセージを送信するかどうかに基づいて第1のスイッチの各ポートのポート属性を判定する。
第1の態様の第1の実施態様を参照して、第1の態様の第2の実施態様において、第1のスイッチの各ポートに接続されたデバイスが報告メッセージを送信するかどうかに基づいて第1のスイッチの各ポートのポート属性を判定するとき、コントローラは、報告メッセージを受信する。報告メッセージは、報告メッセージを送信するデバイスの種類と、第1のスイッチがデバイスに探索メッセージを送信するためのポートの識別子とを含む。コントローラは、デバイスの種類を判定し、デバイスが別のスイッチである場合、第1のスイッチが別のスイッチに探索メッセージを送信するためのポートをネットワーク側ポートと判定し、またはデバイスがサーバである場合、第1のスイッチがサーバに探索メッセージを送信するためのポートをユーザ側ポートと判定する。
第1の態様の第2の実施態様を参照して、第1の態様の第3の実施態様において、第1のスイッチに通知メッセージを送信した後、コントローラは、第1のスイッチ上の、指定された期間内に報告されないポートをユーザ側ポートと判定する。
第1の態様の第3の実施態様を参照して、第1の態様の第4の実施態様において、meshネットワークは、レベル2・meshネットワークであり、第1のスイッチが別のスイッチに探索メッセージを送信するためのポートをネットワーク側ポートと判定するとき、コントローラは、第1のスイッチと別のスイッチとが同じスイッチグループに属する場合、第1のスイッチが別のスイッチに探索メッセージを送信するためのポートをグループ内ポートと判定し、第1のスイッチと別のスイッチとが異なるスイッチグループに属する場合、第1のスイッチが別のスイッチに探索メッセージを送信するためのポートをグループ間ポートと判定する。
第1から第4の実施態様は、コントローラが、meshネットワークに接続されたスイッチの各ポートのポート属性を適時に知ることを可能にする。
第1の態様の第4の実施態様を参照して、第1の態様の第5の実施態様において、第1のスイッチのすべてのグループ内ポートは、第2の仮想ルーティング・転送インスタンスに対応する。第2の仮想ルーティング・転送インスタンスに対応する転送テーブル内の転送エントリは、第2の仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、および宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含む。第1のスイッチのすべてのグループ間ポートは、第3の仮想ルーティング・転送インスタンスに対応する。第3の仮想ルーティング・転送インスタンスに対応する転送テーブル内の転送エントリは、第3の仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、および宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含む。
第5の実施態様によれば、スイッチのポートは(レベル2・meshネットワークのシナリオでは)、ユーザ側ポート、グループ内ポート、およびグループ間ポートの3種類に区分される。すべてのユーザ側ポートは第1の仮想ルーティング・転送インスタンスに対応し、すべてのグループ内ポートは第2の仮想ルーティング・転送インスタンスに対応し、すべてのグループ間ポートは第3の仮想ルーティング・転送インスタンスに対応する。コントローラは、第1の仮想ルーティング・転送インスタンス、第2の仮想ルーティング・転送インスタンス、および第3の仮想ルーティング・転送インスタンスに基づいて第1のスイッチの転送テーブルを生成し、転送テーブルを生成するための送信元ポートとして第1のスイッチの各ポートを使用する必要がない。これは、パケットがパケットを受信するポートに転送されることを防ぎ、転送テーブルのエントリを減らし、したがって、第1のスイッチの記憶リソースを節約することができる。
第1の態様および第1の態様の第1から第5の実施態様のいずれか1つを参照して、第1の態様の第6の実施態様において、meshネットワークのトポロジおよび第1のスイッチの各ポートに対応する仮想ルーティング・転送インスタンスに従って、第1のスイッチの転送テーブルを生成するとき、コントローラは、複数のスイッチの各々について構成されたネットワークセグメントを取得して複数のネットワークセグメントを取得し、複数のネットワークセグメントにおける送信元ネットワークセグメントおよび宛先ネットワークセグメントを決定する。送信元ネットワークセグメントは、複数のネットワークセグメントのうちのいずれか1つであり、宛先ネットワークセグメントは、送信元ネットワークセグメントを除く複数のネットワークセグメントのうちのいずれか1つである。コントローラは、meshネットワークのトポロジに従って、送信元ネットワークセグメントから宛先ネットワークセグメントまでのN個の転送経路を決定し、N個の転送経路内のi番目の転送経路上の宛先スイッチ以外のスイッチごとにi番目の転送経路に対応するルートエントリを生成し、iはN以下の自然数である。各ルートエントリは、仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、次のホップ、および出口ポートを含む。コントローラは、第1のスイッチのすべてのルートエントリに従って、各仮想ルーティング・転送インスタンス内の第1のスイッチの各宛先ネットワークセグメントに対応する転送経路を決定して、第1のスイッチの転送テーブルを生成する。
第6の実施態様によれば、コントローラは、スイッチごとの転送テーブルを動的に生成し得る。これは、手動の転送テーブル構成誤りを回避し、処理効率を改善することができる。
この出願の第2の態様は、負荷分散を実現するための別の方法を提供する。この方法は、コントローラとmeshネットワークとを含むシステムに適用される。meshネットワークは複数のスイッチを含む。この方法は第1のスイッチによって実行される。第1のスイッチは、複数のスイッチのうちのいずれか1つであり、第1のスイッチは複数のポートを含み、複数のポートは、ネットワーク側ポートおよびユーザ側ポートを含む。第1のスイッチは、コントローラによって送信された転送テーブルを受信する。転送テーブルの第1の転送エントリは、第1の仮想ルーティング・転送インスタンス、第1の仮想ルーティング・転送インスタンスに対応する第1の宛先ネットワークセグメント、および第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路を含む。第1の仮想ルーティング・転送インスタンスは、第1のスイッチのすべてのユーザ側ポートに対応する仮想ルーティング・転送インスタンスである。第1のスイッチはパケットを受信する。パケットを受信するポートがユーザ側ポートであり、パケットが第1の宛先ネットワークセグメントに対応するパケットであるとき、第1のスイッチは、負荷分散アルゴリズムおよび第1の転送エントリに従って、第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路の中からパケットのターゲット転送経路を選択し、ターゲット転送経路を使用してパケットを転送する。
この出願の第2の態様の方法によれば、第1のスイッチは、コントローラから、第1のスイッチのために生成された転送テーブルを受信する。従来の転送テーブルとは異なり、転送テーブルの各エントリは、宛先ネットワークセグメント、次のホップ、および出口ポートを含むだけでなく、仮想ルーティング・転送インスタンスも含む。仮想ルーティング・転送インスタンスは、パケットを受信するポートのポート属性を示すために使用される。仮想ルーティング・転送インスタンスが、ユーザ側ポートを示す第1の仮想ルーティング・転送インスタンスであるとき、転送エントリは少なくとも2つの転送経路を含む。ユーザ側ポートからパケットを受信するとき、第1のスイッチは、ユーザ側ポートに対応する第1の仮想ルーティング・転送インスタンスを検証し、第1の仮想ルーティング・転送インスタンスおよびパケットに対応する宛先ネットワークセグメント(すなわち、パケットの宛先IPアドレスが属するネットワークセグメント)に従って転送テーブルを探査し、負荷分散アルゴリズムに従って、見つかった少なくとも2つの転送経路の中から、転送経路を選択してパケットを送信する。転送テーブルを生成するとき、コントローラは、パケットを受信するポートにパケットを送り返すことを回避するために、異なる仮想ルーティング・転送インスタンスを使用して転送エントリを分離する。したがって、この方法は、meshネットワークにおける負荷分散を実現することができる。
第2の態様を参照して、第2の態様の第1の実施態様において、コントローラによって送信された転送テーブルを受信する前に、第1のスイッチは、コントローラによって送信された通知メッセージをさらに受信し、通知メッセージに従って第1のスイッチのすべてのポートから探索メッセージを送信する。探索メッセージは、探索メッセージを受信するデバイスに、コントローラに報告メッセージを送信するように命令するために使用される。
第2の態様の第1の実施態様を参照して、第2の態様の第2の実施態様において、第1のスイッチは、第2のスイッチによって送信された第2の探索メッセージをさらに受信する。第2の探索メッセージは、第2のスイッチの識別子および第2のスイッチが第1のスイッチに第2の探索メッセージを送信するためのポートの識別子を含む。第1のスイッチは、第2の探索メッセージに従ってコントローラに第2の報告メッセージを送信する。第2の報告メッセージは、第2のスイッチが第1のスイッチに第2の探索メッセージを送信するためのポートのポート属性をコントローラが判定するように、第2のスイッチが第1のスイッチに第2の探索メッセージを送信するためのポートの識別子を含む。
第2の態様の第1の実施態様および第2の実施態様は、コントローラが、meshネットワークに接続されたスイッチの各ポートのポート属性を適時に取得し、スイッチの転送テーブルを生成することを可能にする。
第2の態様および第2の態様の第1の実施態様または第2の実施態様のいずれかを参照して、第2の態様の第3の実施態様において、ネットワーク側ポートは、グループ内ポートおよびグループ間ポートを含む。第1のスイッチのすべてのグループ内ポートは、第2の仮想ルーティング・転送インスタンスに対応する。第2の仮想ルーティング・転送インスタンスに対応する転送テーブル内の転送エントリは、第2の仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、および宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含む。第1のスイッチのすべてのグループ間ポートは、第3の仮想ルーティング・転送インスタンスに対応する。第3の仮想ルーティング・転送インスタンスに対応する転送テーブル内の転送エントリは、第3の仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、および宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含む。
第3の実施態様によれば、スイッチのポートは(レベル2・meshネットワークのシナリオでは)、ユーザ側ポート、グループ内ポート、およびグループ間ポートの3種類に区分される。すべてのユーザ側ポートは第1の仮想ルーティング・転送インスタンスに対応し、すべてのグループ内ポートは第2の仮想ルーティング・転送インスタンスに対応し、すべてのグループ間ポートは第3の仮想ルーティング・転送インスタンスに対応する。コントローラは、第1の仮想ルーティング・転送インスタンス、第2の仮想ルーティング・転送インスタンス、および第3の仮想ルーティング・転送インスタンスに基づいて第1のスイッチの転送テーブルを生成し、転送テーブルを生成するための送信元ポートとして第1のスイッチの各ポートを使用する必要がない。これは、パケットがパケットを受信するポートに転送されることを防ぎ、転送テーブルのエントリを減らし、したがって、第1のスイッチの記憶リソースを節約することができる。
この出願の第3の態様はコントローラを提供する。このコントローラは複数の機能ユニットを含み、複数の機能ユニットは、相互に協働して、第1の態様の方法および第1の態様の実施態様を完了する。
この出願の第4の態様はスイッチを提供する。このスイッチは複数の機能ユニットを含み、複数の機能ユニットは、相互に協働して、第2の態様の方法および第2の態様の実施態様を完了する。
この出願の第5の態様はネットワークシステムを提供する。このネットワークシステムは、コントローラと、meshネットワークとを含む。meshネットワークは複数のスイッチを含み、複数のスイッチの各々は複数のポートを含み、複数のポートは、ユーザ側ポートおよびネットワーク側ポートを含む。コントローラは第3の態様によるコントローラであり、複数のスイッチのうちのいずれか1つは第4の態様によるスイッチである。
この出願の第6の態様は記憶媒体を提供する。この記憶媒体はプログラムを格納し、プログラムがコンピューティングデバイスによって実行されるとき、コンピューティングデバイスは、第1の態様または第1の態様のいずれか1つの実施態様で提供される負荷分散を実現するための方法を実行する。記憶媒体は、それだけに限らないが、リード・オンリ・メモリ、ランダム・アクセス・メモリ、フラッシュメモリ、HDD、またはSSDを含む。
この出願の第7の態様は、コンピュータプログラム製品を提供する。このコンピュータプログラム製品はプログラム命令を含む。コンピュータプログラム製品がコントローラによって実行されるとき、コントローラは、第1の態様または第1の態様のいずれか1つの実施態様で提供される負荷分散を実現するための方法を実行する。コンピュータプログラム製品は、ソフトウェア・インストール・パッケージであり得る。第1の態様または第1の態様のいずれか1つの実施態様で提供される負荷分散を実現するための方法が使用される必要があるとき、コンピュータプログラム製品がダウンロードされ、コントローラ上で実行され得る。
この出願の第8の態様は記憶媒体を提供する。この記憶媒体は、プログラムを格納し、プログラムがコンピューティングデバイスによって実行されるとき、コンピューティングデバイスは、第2の態様または第2の態様のいずれか1つの実施態様で提供される負荷分散を実現するための方法を実行する。記憶媒体は、それだけに限らないが、リード・オンリ・メモリ、ランダム・アクセス・メモリ、フラッシュメモリ、HDD、またはSSDを含む。
この出願の第9の態様は、コンピュータプログラム製品を提供する。このコンピュータプログラム製品はプログラム命令を含む。コンピュータプログラム製品がスイッチによって実行されるとき、スイッチは、第2の態様または第2の態様のいずれか1つの実施態様で提供される負荷分散を実現するための方法を実行する。コンピュータプログラム製品は、ソフトウェア・インストール・パッケージであり得る。第2の態様または第2の態様のいずれか1つの実施態様で提供される負荷分散を実現するための方法が使用される必要があるとき、コンピュータプログラム製品がダウンロードされ、スイッチ上で実行され得る。
この出願の第3の態様から第9の態様の解決策の有益な効果については、第1の態様および第2の態様の方法を参照されたい。
この出願の実施形態におけるまたは先行技術における技術解決策をより明確に説明するために、以下は、実施形態または先行技術を説明するために要求される添付図面を簡単に説明する。
先行技術のレベル1・meshネットワークの構造の概略図である。 先行技術のレベル2・meshネットワークの構造の概略図である。 この出願の一実施形態によるネットワークシステムの構造の概略図である。 図3に表わされたネットワークシステムの具体的な実施態様である。 図3に表わされたネットワークシステムの別の具体的な実施態様である。 この出願の一実施形態による転送テーブルを生成するための方法の概略的流れ図である。 図6に表わされたステップS610の具体的な実施態様の流れ図である。 この出願の一実施形態による転送テーブルを取得するための方法の概略的流れ図である。 図4に表わされたシナリオにおいてコントローラによって生成されたすべてのルートエントリを表わす。 図9aに従ってスイッチS1、S2、およびS3についてコントローラによって別々に生成された転送テーブルを表わす。 図9aに従ってスイッチS1、S2、およびS3についてコントローラによって別々に生成された転送テーブルを表わす。 図9aに従ってスイッチS1、S2、およびS3についてコントローラによって別々に生成された転送テーブルを表わす。 図5に表わされたシナリオにおいてスイッチS11、S12、S21、S13、S23、S31、およびS32についてコントローラによって別々に生成された転送エントリを表わす。 図5に表わされたシナリオにおいてスイッチS11、S12、S21、S13、S23、S31、およびS32についてコントローラによって別々に生成された転送エントリを表わす。 図5に表わされたシナリオにおいてスイッチS11、S12、S21、S13、S23、S31、およびS32についてコントローラによって別々に生成された転送エントリを表わす。 図5に表わされたシナリオにおいてスイッチS11、S12、S21、S13、S23、S31、およびS32についてコントローラによって別々に生成された転送エントリを表わす。 図5に表わされたシナリオにおいてスイッチS11、S12、S21、S13、S23、S31、およびS32についてコントローラによって別々に生成された転送エントリを表わす。 図5に表わされたシナリオにおいてスイッチS11、S12、S21、S13、S23、S31、およびS32についてコントローラによって別々に生成された転送エントリを表わす。 図5に表わされたシナリオにおいてスイッチS11、S12、S21、S13、S23、S31、およびS32についてコントローラによって別々に生成された転送エントリを表わす。 この出願の一実施形態によるコントローラの構造の概略図である。 この出願の一実施形態による別のコントローラの構造の概略図である。 この出願の一実施形態によるスイッチの構造の概略図である。 この出願の一実施形態による別のスイッチの構造の概略図である。
以下は、添付図面を参照してこの出願の実施形態の技術的解決策を説明する。
この出願のすべての実施形態およびそれらの具体的な実施態様において、「第1の」、「第2の」、「第3の」などの用語は、同じ種類の異なる対象の間で区別するように意図され、具体的な順番または順序を限定しない。この出願のすべての実施形態およびそれらの具体的な実施態様においては、meshネットワーク内のあるスイッチを別のスイッチに接続するポートはネットワーク側ポートと呼ばれ、スイッチをサーバに接続するポートはユーザ側ポートと呼ばれる。ネットワーク側ポートは、グループ内ポートまたはグループ間ポートであり得る。同じスイッチグループ内の別のスイッチに接続するポートをグループ内ポートは呼ばれる。異なるスイッチグループ内の別のポートに接続するポートはグループ間ポートと呼ばれる。
図3は、この出願の一実施形態によるネットワークシステム300の構造の概略図である。このネットワークシステムは、コントローラ310と、meshネットワーク320とを含む。meshネットワーク320はスイッチS1〜Snを含み、S1〜Snはn個のスイッチがあることを示し、nは3以上である。図3は、4個のスイッチS1、S2、Si、およびSnを表わす。コントローラ310は、複数のスイッチS1〜Snの各々に通信可能に接続されている。複数のスイッチS1〜Snの各々は、少なくとも1つのサーバに通信可能に接続されている。例えば、S1はサーバAに接続されており、S2はサーバBに接続されており、SiはサーバCおよびDに接続されており、SnはサーバEおよびFに接続されている。
各スイッチは、制御ポート(管理ポートとも呼ばれる)を通してコントローラ310に接続されており、異なるサービスポートを通して異なるスイッチまたはサーバに接続されている。この出願は、制御ポートに対する特別な操作を含まず、サービスポートのみに関連した処理を含む。簡潔さのために、この出願は、「サービスポート」を示すために「ポート」を使用する。すなわち、この出願および特許請求の範囲の両方で言及される「ポート」は、スイッチのサービスポートである。さらに、スイッチのポートがいずれのデバイスにも接続されていないとき、そのポートに基づく操作は無意味である。したがって、以下のこの出願の実施形態および特許請求の範囲の両方で言及される「ポート」は、別のデバイスに接続されたポートである。
一実施態様では、meshネットワーク320はレベル1・meshネットワークである。図4は、meshネットワーク320が、3個のスイッチS1、S2、およびS3を含むレベル1・meshネットワーク3201である例を表わす。実際のネットワーキングの間、レベル1・meshネットワーク3201は、3個より多くのスイッチを含み得る。
別の実施態様では、meshネットワーク320は、2個以上のレベル1・meshネットワークを含むレベル2・meshネットワークである。各レベル1・meshネットワークは、少なくとも3個のスイッチを含む。図5は、meshネットワーク320が3個のレベル1・meshネットワークを含むレベル2・meshネットワーク3202である例を表わす。meshネットワーク3202内の各スイッチは番号Sijが割り振られており、iは、スイッチが属するスイッチグループであり、jは、スイッチが属するスイッチグループ内のスイッチの番号である。例えば、S12は、スイッチグループ1内の第2のスイッチである。図5の各レベル1・meshネットワークは3個のスイッチを含み、各レベル1・meshネットワーク内の3個のスイッチは1つのスイッチグループを形成する。各スイッチグループ内のスイッチ間の接続は太い実線で示されている。具体的には、スイッチS11、S12、およびS13は第1のスイッチグループを形成しており、スイッチS21、S22、およびS23は第2のスイッチグループを形成しており、スイッチS31、S32、およびS33は第3のスイッチグループを形成している。各スイッチグループ内のスイッチは別のスイッチグループ内の対応するスイッチに接続されている。あるスイッチが別のスイッチに対応していることは、それら2個のスイッチがそれぞれのスイッチグループにおいて同じ番号を有することを示し、またはそれら2個のスイッチのために対応関係が事前構成される。例えば、図5では、スイッチS11はスイッチS21とS31に接続され、スイッチS12はスイッチS22とS32に接続され、スイッチS13はスイッチS23とS33に接続されて、レベル2・meshネットワーク3202を形成する。各スイッチは、1つまたは複数のサーバに接続され得る。実際のネットワーキングの間、レベル2・meshネットワーク3202は、2つまたは3つより多くのスイッチグループを含み得る。各スイッチグループは、2個または3個より多くのスイッチを含み得る。図5に表わされたネットワークは一例にすぎない。実際の展開の間、meshネットワークが複数のスイッチグループを含み、複数のスイッチグループにおける第1のスイッチグループが第2のスイッチグループより多くのスイッチを含むとき、第1のスイッチグループ内の少なくとも1個のスイッチには第2のスイッチグループ内に対応するスイッチを有さない。第1のスイッチグループ内のスイッチAは第2のスイッチグループ内に対応するスイッチを有さないと仮定する。スイッチAは、第1のスイッチグループ内の、第2のスイッチグループ内に対応するスイッチを有する別のスイッチを使用して第2のスイッチグループ内のスイッチと通信する。
図4または図5に表わされたmeshネットワーク内の各スイッチは、サーバまたは別のスイッチと通信するために使用される複数のポートを含む。加えて、この出願では各スイッチの各ポートに番号が割り振られている。
meshネットワーク320が図4のレベル1・meshネットワーク3201である場合、スイッチのポート番号はSX.Yであり、Sはスイッチを示し、Xはスイッチの番号を示し、Yはスイッチのポートの番号である。一実施態様では、サーバに接続されたポート(すなわち、ユーザ側ポート)の番号は、0(1つのサーバだけに接続されている)に設定され、または0から開始する番号(複数のサーバに接続されている)に設定され、別のスイッチに接続されたポート(すなわち、ネットワーク側ポート)の番号は、別のスイッチの番号に設定される。図4に表わされたように、スイッチS1は、ポートS1.00を通してサーバA1と通信し、ポートS1.01を通してサーバA2と通信し、ポートS1.2を通してスイッチS2と通信し、ポートS1.3を通してスイッチS3と通信する。スイッチS2は、ポートS2.0を通してサーバBと通信し、ポートS2.1を通してスイッチS1と通信し、ポートS2.3を通してスイッチS3と通信する。スイッチS3は、ポートS3.0を通してサーバCと通信し、ポートS3.1を通してスイッチS1と通信し、ポートS3.2を通してスイッチS2と通信する。
meshネットワーク320が図5のレベル2・meshネットワーク3202である場合、スイッチのポート番号はSij.XYであり、Sはスイッチを示し、ijはスイッチの番号を示し、XYはスイッチのポートの番号である。一実施態様では、サーバに接続されたポートの番号は、0(1つのサーバだけに接続されている)に設定され、または0から開始する番号(複数のサーバに接続されている)に設定され、別のスイッチに接続されたポートの番号は、2個のスイッチ間の対応関係を表現するために、別のスイッチの番号に設定される。例えば、図5では各ポートを表現するために小さい黒点が使用されている。多数のポートがあるので、図5は、第1のスイッチグループ内のスイッチS11、S12、およびS13のポートの番号だけを表わす。スイッチS11をスイッチS12に接続するためのポートには番号S11.12が付されており、スイッチS13をスイッチS23に接続するためのポートには番号S13.23が付されており、他のポートにも同様に番号が付されている。図5では、各スイッチはグループ内ポートとグループ間ポートの両方を有する。例えば、スイッチS11のポートS11.12はグループ内ポートであり、ポートS11.21はグループ間ポートであり、ポートS11.0はユーザ側ポートである。
前述の付番方式は、この出願のこの実施形態の説明のためにのみ提供され、この技術分野の当業者は、スイッチおよびスイッチのポートの別の付番方式を設計し得る。例えば、スイッチのすべてのポートが順次に付番される。これは、この出願のこの実施形態では限定されない。
図3から図5のいずれか1つのネットワークシステムに基づき、この出願の一実施形態は、図6に表わされた負荷分散を実現するための方法を提供する。
S610.コントローラは、meshネットワークにおける第1のスイッチの各ポートのポート属性を取得する。
第1のスイッチはmeshネットワーク内のいずれかのスイッチであり、ポート属性は、ポートがユーザ側ポートまたはネットワーク側ポートであることを示すために使用される。
S620.コントローラは、第1のスイッチの各ポートのポート属性に従って、第1のスイッチの各ポートに対応する仮想ルーティング・転送インスタンスを決定し、第1のスイッチのすべてのユーザ側ポートは第1の仮想ルーティング・転送インスタンスに対応する。
この出願では、特定のスイッチについて、同じポート属性を有するそのスイッチのすべてのポートは同じ仮想ルーティング・転送インスタンスに対応する。
S630.コントローラは、meshネットワークのトポロジおよび第1のスイッチの各ポートに対応する仮想ルーティング・転送インスタンスに従って、第1のスイッチの転送テーブルを生成し、転送テーブルの各転送エントリは仮想ルーティング・転送インスタンスを含み、転送テーブルの第1の転送エントリは、第1の仮想ルーティング・転送インスタンス、第1の仮想ルーティング・転送インスタンスに対応する第1の宛先ネットワークセグメント、および第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路を含む。
S640.コントローラは、転送テーブルを第1のスイッチに送信する。
転送テーブルは、第1のスイッチが、負荷分散アルゴリズムおよび第1の転送エントリに従って、第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路の中から、第1の宛先ネットワークセグメントに対応するパケットのターゲット転送経路を選択することを可能にするために使用される。宛先ネットワークセグメントに対応するパケットは、その宛先IPアドレスが宛先ネットワークセグメントに属するパケットである。
S610の一実施態様では、ポート属性は、ポートがユーザ側ポートまたはネットワーク側ポートであることを示すために使用される。別の実施態様では、ネットワーク側ポートは、グループ内ポートまたはグループ間ポートである。
第1のスイッチは、meshネットワーク内のいずれかのスイッチである。
一実施態様では、S610は、具体的には、図7に表わされたステップS6102およびS6104を含み得る。
S6102.コントローラは、第1のスイッチに通知メッセージを送信し、通知メッセージは、第1のスイッチに、第1のスイッチのすべてのポートから探索メッセージを送信するように命令するために使用される。
コントローラが第1のスイッチに通知メッセージを送信することは、具体的には、第1のスイッチとコントローラが接続を確立していることを検出したとき、または第1のスイッチとコントローラが接続を確立したことを検出した後、コントローラが第1のスイッチに通知メッセージを送信することであり得る。
上述したように、すべてのポートは、第1のスイッチのすべてのサービスポートであり、第1のスイッチがコントローラに接続するための管理ポートを含まない。探索メッセージは、探索メッセージを受信するデバイスに、コントローラに報告メッセージを送信するように命令するために使用される。第1のスイッチのサービスポートに通信可能に接続されたデバイスが探索メッセージを受信する。探索メッセージを受信するスイッチはコントローラに報告メッセージを送信する。探索メッセージを受信するサーバはコントローラに報告メッセージを送信しても、しなくてもよい。各報告メッセージは、報告メッセージの送信者が第1のスイッチと通信するためのサービスポートのポート番号を含む。具体的には、探索メッセージは、第1のスイッチの識別子および第1のスイッチが探索メッセージを送信するためのポートの識別子を含む。第1のスイッチの識別子は、第1のスイッチの番号または名前であり得る。第1のスイッチが探索メッセージを送信するためのポートの識別子は、ポートの番号または名前であり得る。
図4が例として使用される。コントローラ310は、第1のスイッチ、例えば、スイッチS1に通知メッセージを送信する。通知メッセージを受信した後、スイッチS1は、スイッチS1のすべてのサービスポートS1.00、S1.01、S1.2、S1.3から探索メッセージD1を送信する。サービスポートS1.00に送信された探索メッセージD1は、スイッチS1の識別子S1と、探索メッセージD1を送信するポート00の識別子とを含む。スイッチS1のポート00に通信可能に接続されたデバイスがサーバA1である場合、サーバA1は、探索メッセージD1を受信し、次いでコントローラ310に報告メッセージR1を送信する。報告メッセージR1は、スイッチS1の識別子S1と、探索メッセージD1を送信するポートの識別子00とを含む。スイッチS1のポートS1.2に通信可能に接続されたサーバA2は、探索メッセージD2を受信する。探索メッセージD2は、スイッチS1の識別子S1と、探索メッセージD2を送信するポートの識別子2とを含む。サーバA2は、探索メッセージD2を受信し、次いでコントローラ310に報告メッセージR2を送信する。報告メッセージR2は、スイッチS1の識別子S1と、スイッチS1が探索メッセージD2を送信するためのポートの識別子2とを含む。探索メッセージは、リンク層探索プロトコル(英語:Link Layer Discovery Protocol、LLDP)メッセージであり得る。LLDPメッセージは、異なるタイプ−長さ−値(type-length-value、TLV)を使用して、スイッチの識別子と、スイッチが探索メッセージを送信するためのポートの識別子とを搬送し得る。
第1のスイッチデバイスが第2のスイッチに接続されている場合、第2のスイッチは、探索メッセージを受信し、次いでコントローラ310に報告メッセージを送信する。報告メッセージは、コントローラ310に、第1のスイッチが第2のスイッチに探索メッセージを送信するためのポートを通知するために使用される。第2のスイッチは、meshネットワーク320内の第1のスイッチ以外のいずれかのスイッチである。第2のスイッチは、通常、報告メッセージをコントローラ310に直接送信する。第1のスイッチデバイスがサーバに接続されている場合、サーバは、探索メッセージを受信し、次いで、コントローラ310に報告メッセージを送信しても、しなくてもよい。サーバがコントローラ310に報告メッセージを送信する場合、報告メッセージは、コントローラ310に、第1のスイッチがサーバに探索メッセージを送信するためのポートを通知するために使用される。サーバは、第1のスイッチを通してコントローラ310に報告メッセージを送信してもよく、コントローラ310に報告メッセージを直接送信してもよい。
S6104.コントローラは、第1のスイッチに接続されたデバイスが報告メッセージを送信するかどうかに基づいて第1のスイッチの各ポートのポート属性を判定する。
一実施態様では、コントローラ310は、第1のスイッチに接続されたデバイスによって送信された報告メッセージを受信する。報告メッセージは、第1のスイッチが探索メッセージをデバイスに送信するためのポートの識別子と、第1のスイッチの識別子と、デバイスの識別子とを含む。
実際の応用の間、コントローラ310は、第1のスイッチに接続された複数のデバイスによって別々に送信された複数の報告メッセージを受信し得る。説明の容易さのために、以下は、1つの報告メッセージの処理手順を例として使用して、この出願の具体的な実施態様を説明する。他の報告メッセージも類似の方式で処理される。
コントローラ310は、報告メッセージ内のデバイスの識別子に従ってデバイスの種類を判定する。デバイスの種類はスイッチまたはサーバであり得る。
デバイスが別のスイッチである場合、コントローラ310は、第1のスイッチが別のスイッチに探索メッセージを送信するためのポートをネットワーク側ポートと判定する。デバイスがサーバである場合、コントローラ310は、第1のスイッチがサーバに探索メッセージを送信するためのポートをユーザ側ポートと判定する。さらに、サーバがコントローラ310に報告メッセージを送信しないシナリオでは、コントローラ310は、第1のスイッチの事前に取得したすべてのポートおよびコントローラ310によって受信された報告メッセージに従って、第1のスイッチの、報告されないポートをさらに決定し、報告されないポートをユーザ側ポートと判定する。報告されないポートは、いずれの報告メッセージにも含まれていないポートである。具体的には、コントローラ310は、タイマを設定し、コントローラ310が第1のスイッチに通知メッセージを送信した後でタイマを始動させ、第1のスイッチの、指定された期間後に依然として報告されないポートをユーザ側ポートと判定し得る。
レベル2・meshネットワークのシナリオでは、ネットワーク側ポートは、グループ内ポートおよびグループ間ポートを含む。第1のスイッチと第2のスイッチとが異なるスイッチグループに属するとき、コントローラ310は、第1のスイッチを第2のスイッチに接続するためのポートをグループ間ポートと判定する。第1のスイッチと第2のスイッチとが同じスイッチグループに属するとき、コントローラ310は、第1のスイッチを第2のスイッチに接続するためのポートをグループ内ポートと判定する。一実施態様では、コントローラ310は、第1のスイッチの識別子および第2のスイッチの識別子に従って、第1のスイッチと第2のスイッチとが同じスイッチグループに属するかどうか判定する。
S620の一実施態様では、ポートは同じポート属性を有し、同じ仮想ルーティング・転送インスタンスに対応する。仮想ルーティング・転送(英語:virtual routing and forwarding)技術は、転送テーブルにおける複数の仮想ルーティング・転送インスタンスを可能にする。複数の仮想ルーティング・転送インスタンスは相互に独立しており、したがって、同じまたは重複する(overlapping)インターネットプロトコル(英語:Internet Protocol、IP)アドレスが、同じ転送テーブルの異なる仮想ルーティング・転送インスタンスで使用されることが可能であり、相互に競合しない。仮想ルーティング・転送インスタンスは、仮想ルーティング・転送技術を使用する転送インスタンスである。この出願では、ポートから受信されるパケットがそのポートに送り返されないことを保証するために、異なる仮想ルーティング・転送インスタンスが使用されて、異なる種類のポートに対応する転送エントリを分離する。meshネットワーク320がレベル1・meshネットワークであるシナリオでは、第1のスイッチのポートは、グループ内ポート(ネットワーク側ポート)およびユーザ側ポートを含む。コントローラ310は、すべてのユーザ側ポートがある仮想ルーティング・転送インスタンスに対応しており、すべてのグループ内ポート(ネットワーク側ポート)が別の仮想ルーティング・転送インスタンスに対応していると判定し得る。例えば、図4に表わされたmeshネットワーク3201に基づき、コントローラは、ポートS1.0およびS2.0はVRF1に対応しており、ポートS1.2、S1.3、S2.1、S2.3、S3.1およびS3.2はVRF2に対応していると判定する。
meshネットワーク320がレベル2・meshネットワークであるシナリオでは、第1のスイッチのポートは、グループ内ポート、グループ間ポート、およびユーザ側ポートを含む。コントローラ310は、すべてのユーザ側ポートは第1の仮想ルーティング・転送インスタンスに対応しており、すべてのグループ内ポートは第2の仮想ルーティング・転送インスタンスに対応しており、すべてのグループ間ポートは第3の仮想ルーティング・転送インスタンスに対応していると判定し得る。例えば、図5に表わされたmeshネットワーク3202に基づき、第1のスイッチグループ内のスイッチS11、S12、およびS13が例として使用される。上述のポート付番規則に基づき、コントローラは、ポートS11.0はVRF3に対応しており、グループ内ポートS11.12、S11.13、S13.11、S13.12、S12.11、およびS12.13はVRF4に対応しており、グループ間ポートS11.21、S11.31、S12.22、S12.32、S13.23、およびS13.33はVRF5に対応していると判定する。
ステップS630の具体的な実施態様において、転送テーブルの各エントリは、仮想ルーティング・転送インスタンス、仮想ルーティング・転送インスタンスに対応する宛先ネットワークセグメント、および宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含む。転送テーブル内の次のホップは、一般に、転送経路を示すために使用される。宛先ネットワークセグメントに対応する少なくとも1つの転送経路は、具体的には、宛先ネットワークセグメントに対応する少なくとも1つの次のホップ、および転送テーブル内の少なくとも1つの次のホップ内の各々の次のホップに対応する出口ポートである。仮想ルーティング・転送インスタンスが、第1の仮想ルーティング・転送インスタンスであるとき、転送エントリは、宛先ネットワークセグメントおよび宛先ネットワークセグメントに対応する少なくとも2つの転送経路を含み、すなわち、第1の仮想転送インスタンスと宛先ネットワークセグメントとの間には少なくとも2つの次のホップがある。少なくとも2つの転送経路は、異なるルーティング規則に従う等コスト経路または不等コスト経路であり得る。この出願では、次のホップのデバイスの識別子が使用されて次のホップが示される。一実施形態では、転送テーブル内の次のホップは、次のホップのデバイスのIPアドレスであり得る。出口ポートは、アウトバウンドインターフェースと呼ばれてもよく、パケットが次のホップのデバイスに転送されるときにパケットを送信するポートである。
S630の一実施態様では、第1のスイッチが図4に表わされたmeshネットワーク3201内のスイッチであるとき、第1のスイッチのすべてのネットワーク側ポートは第2の仮想ルーティング・転送インスタンスに対応する。第2の仮想ルーティング・転送インスタンスに対応する転送エントリは、第2の仮想ルーティング・転送インスタンス、第2の仮想ルーティング・転送インスタンスに対応する宛先ネットワークセグメント、および宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含む。
S630の別の実施態様では、第1のスイッチが図5に表わされたmeshネットワーク3202内のスイッチであるとき、第1のスイッチのネットワーク側ポートは、グループ内ポートとグループ間ポートとにさらに分類される。すべてのグループ内ポートは第2の仮想ルーティング・転送インスタンスに対応し、すべてのグループ間ポートは第3の仮想ルーティング・転送インスタンスに対応する。第2の仮想ルーティング・転送インスタンスに対応する転送エントリは、第2の仮想ルーティング・転送インスタンス、第2の仮想ルーティング・転送インスタンスに対応する宛先ネットワークセグメント、および宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含む。第3の仮想ルーティング・転送インスタンスに対応する転送エントリは、第3の仮想ルーティング・転送インスタンス、第3の仮想ルーティング・転送インスタンスに対応する宛先ネットワークセグメント、および宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含む。
S630のさらに別の実施態様では、コントローラが、meshネットワークのトポロジおよび第1のスイッチの各ポートに対応する仮想ルーティング・転送インスタンスに従って、第1のスイッチの転送テーブルを生成することは、以下のステップを含む。
A.コントローラは、複数のスイッチの各々について構成されたネットワークセグメントを取得して複数のネットワークセグメントを取得する。
スイッチに接続されたサーバがネットワークにアクセスできるように、ネットワークセグメントがスイッチについて構成される必要がある。一般に、異なるネットワークセグメントが異なるスイッチについて構成される。ネットワークセグメントは、ネットワーク管理者またはコントローラによって構成されることが可能である。
この出願では、新しいスイッチがネットワークにアクセスすることを検出するとき、コントローラは、そのスイッチについて構成されたネットワークセグメントを取得する。さらに、コントローラは、新しいスイッチについて構成されたネットワークセグメントおよび取得された他のスイッチのネットワークセグメントに従って新しいスイッチの転送テーブルを生成する。図4が例として使用される。コントローラは、スイッチS1、S2、およびS3に割り振られたネットワークセグメント、segment 1、segment 2、およびsegment 3を別々に取得する。図5が例として使用される。コントローラは、スイッチS11、S12、S13、S21、S22、S23、S31、S32、およびS33に割り振られたネットワークセグメント、segment 11、segment 12、segment 13、segment 21、segment 22、segment 23、segment 31、segment 32、およびsegment 33を別々に取得する。
B.コントローラは、複数のネットワークセグメントにおける送信元ネットワークセグメントおよび宛先ネットワークセグメントを決定する。送信元ネットワークセグメントは、複数のネットワークセグメントのうちのいずれか1つであり、宛先ネットワークセグメントは、送信元ネットワークセグメントを除く複数のネットワークセグメントのうちのいずれか1つである。
コントローラは、全ネットワーク上の各スイッチの転送テーブルを計算する必要がある。したがって、コントローラは、送信元ネットワークセグメントと宛先ネットワークセグメントのすべての可能な対を組み合わせる必要がある。ネットワークがn個のスイッチを含むとき、送信元ネットワークセグメントと宛先ネットワークセグメントの組み合わせ最大数は、n×(n−1)であり得る。図4が例として使用される。決定される送信元ネットワークセグメントと宛先ネットワークセグメントの対は、{segment 1,segment 2}、{segment 1,segment 3}、{segment 2,segment 1}、{segment 2,segment 3}、{segment 3,segment 1}、および{segment 3,segment 2}を含み得る。図5に基づく送信元ネットワークセグメントと宛先ネットワークセグメントの対の最大数は、72であり得る。詳細はここで提供されない。
C.コントローラは、meshネットワークのトポロジに従って、送信元ネットワークセグメントから宛先ネットワークセグメントまでのN個の転送経路を決定し、N個の転送経路内のi番目の転送経路上の宛先スイッチ以外のスイッチごとにi番目の転送経路に対応するルートエントリを生成し、iはN以下の自然数である。各ルートエントリは、仮想ルーティング・転送インスタンス、仮想ルーティング・転送インスタンスに対応する宛先ネットワークセグメント、次のホップ、および出口ポートを含む。
宛先スイッチは、宛先サーバに直接接続されたスイッチであり、宛先サーバのIPアドレスは宛先ネットワークセグメントに属する。スイッチのルートエントリ内の仮想ルーティング・転送インスタンスは、そのルートエントリの送信元ポートに対応する仮想ルーティング・転送インスタンスである。
具体的には、コントローラは、meshネットワークのトポロジに従って、送信元ネットワークセグメントとターゲット・ネットワーク・セグメントとの対ごとにN個の転送経路を決定する。図4が例として使用される。segment 1とsegment 2との間には、S1→S2とS1→S3→S2の2つの転送経路があり、すなわち、N=2である。経路S1→S2では、S2は宛先スイッチであり、コントローラは、スイッチS1のルートエントリを生成し、ルートエントリのVRFはVRF1であり、宛先ネットワークセグメントはsegment 2であり、次のホップはS2であり、出口ポートはS1.2である。簡潔さのために、ルートエントリは、{VRF:1,宛先ネットワークセグメント:segment 2,次のホップ:S2,出口ポート:S1.2}として記録される。経路S1→S3→S2では、コントローラは、スイッチS1のルートエントリ{VRF:1,宛先ネットワークセグメント:segment 3,次のホップ:S3,出口ポート:S1.3}を生成し、スイッチS3のルートエントリ{VRF:2,宛先ネットワークセグメント:segment 2,次のホップ:S2,出口ポート:S3.2}を生成する。コントローラは、同様のプロセスで他の送信元ネットワークセグメントとターゲット・ネットワーク・セグメントに対応する転送経路に従ってスイッチごとのルートエントリを生成する。図9aは、図4に表わされたmeshネットワークに基づいてスイッチごとにコントローラによって生成されたルートエントリを表わす。
D.コントローラは、第1のスイッチのすべてのルートエントリに従って、各仮想ルーティング・転送インスタンス内の第1のスイッチの各宛先ネットワークセグメントに対応する転送経路を決定して、第1のスイッチの転送テーブルを生成する。
具体的には、コントローラは、スイッチごとに生成されたすべてのルートエントリを決定し、次いで、仮想ルーティング・転送インスタンスおよび宛先ネットワークセグメントに従って各スイッチのすべてのルートエントリを組み合わせて、スイッチの転送テーブルを生成し得る。組み合わせることは、具体的には、まず、各仮想ルーティング・転送インスタンスに対応するすべてのルートエントリを決定し、次いで、各仮想ルーティング・転送インスタンスに対応するすべてのルートエントリ内の同じ宛先ネットワークセグメントを有するルートエントリを組み合わせることであり得る。各仮想ルーティング・転送インスタンスに対応するすべてのルートエントリ内の同じ宛先ネットワークセグメントを有するルートエントリを組み合わせることは、宛先アドレスが複数のルートエントリに対応する場合、複数のルートエントリを1つに組み合わせること、宛先アドレスが1つのルートエントリに対応する場合、そのルートエントリを保持すること、を含む。例えば、コントローラは、図9aに従ってスイッチS1、S2、およびS3のために生成されたルートエントリを別々に決定し、次いで、同じVRFに関連した各宛先ネットワークセグメントに対応するルートエントリに従って1つの転送エントリを生成して、最終的に、図9b、図9c、および図9dに表わされた3つの転送テーブルを取得し得る。図9b、図9c、および図9dに表わされた転送テーブルにおいて、VRF1に関連した各宛先ネットワークセグメントは複数の転送経路に対応しているが、VRF2に関連した各宛先ネットワークセグメントは1つの転送経路に対応している。大規模ネットワークのシナリオでは、VRF2に関連した各宛先ネットワークセグメントは、複数の転送経路に対応し得る。
以下は、さらに図5を例として使用して、コントローラが送信元ネットワークセグメントおよび宛先ネットワークセグメントに従って転送エントリを生成するプロセスを説明する。サーバAAのIPアドレスはIPaであり、ネットワークsegment aに属し、サーバBのIPアドレスはIPbであり、ネットワークsegment bに属すると仮定する。segment aおよびsegment bについて、コントローラは、図5のmeshネットワークのトポロジに従ってサーバAAとサーバBBとの間には以下の4つの非交差転送経路が存在すると判定し得る。
経路1:サーバAA→S11→S12→S22→サーバBB
経路2:サーバAA→S11→S21→S22→サーバBB
経路3:サーバAA→S11→S13→S23→S22→サーバBB
経路4:サーバAA→S11→S31→S32→S22→サーバBB
図10aから図10gは、送信元ネットワークsegment aと宛先ネットワークsegment bに従って、かつ前述のステップAからDに従って、スイッチS11、S12、S21、S13、S23、S31、およびS32についてコントローラ310によって別々に生成された転送エントリを表わす。図5に表わされたシナリオでは、ユーザ側ポート(VRF3に対応する)から受信されるパケットについて複数の転送経路があり(図10aは4つの経路が表わし、この数は、そのスイッチを含むスイッチグループに含まれるスイッチの数およびレベル2・meshネットワークに含まれるレベル1・meshネットワークの数と共に変化する)、グループ内ポート(VRF4に対応するネットワーク側ポート)またはグループ間ポート(VRF5に対応するネットワーク側ポート)から受信されるパケットについてただ1つの転送経路があることを理解できる。
前述の説明は、この出願の技術的解決策を説明するために、コントローラが第1のスイッチの転送テーブルを生成し、送信する例を使用している。実際の動作において、コントローラは、meshネットワークのトポロジに従ってmeshネットワーク内のスイッチごとに対応する転送テーブルを生成する必要があり、その転送テーブルを対応するスイッチに送信する。
前述の方式では、コントローラは、スイッチごとに転送テーブルを生成し、送信する。仮想ルーティング・転送インスタンスは、転送テーブルにおけるユーザ側ポートまたはネットワーク側ポートからのパケットを区別するために使用される。ユーザ側ポートに対応する仮想ルーティング・転送インスタンスと各宛先ネットワークセグメントとの間には少なくとも2つの転送経路がある。このようにして、スイッチが、転送テーブルに従って、宛先ネットワークセグメントに向けられたパケットを転送するとき、少なくとも2つの経路間で負荷分散が実現されることが可能である。
図3から図5のいずれか1つのネットワークシステムに基づき、この出願の一実施形態は、図8に表わされた負荷分散を実現するための方法をさらに提供する。この方法は、meshネットワーク320の第1のスイッチ(meshネットワーク内のいずれかのスイッチ)によって実行される。
S810.第1のスイッチは、コントローラによって送信された通知メッセージを受信する。
S820.第1のスイッチは、通知メッセージに従って第1のスイッチのすべてのポートから探索メッセージを送信する。
通知メッセージおよび探索メッセージの詳細については、S6102の関連する説明を参照されたい。
ステップS810およびステップS820は任意選択である。
ステップS810およびS820が要求されない場合、代替の実施態様において、第1のスイッチは、第1のスイッチの各ポートのポート属性を能動的に検出し、検出した各ポートのポート属性をコントローラに送信し得る。例えば、第1のスイッチは、第1のスイッチを別のデバイスに接続するためのポートを決定し、別のデバイスに接続された各ポートによって受信されるLLDPメッセージをモニタし、受信されたLLDPメッセージで搬送されたデバイスの識別子に従ってデバイスの種類を判定する。デバイスの種類がサーバである場合、第1のスイッチは、LLDPメッセージを受信するポートをユーザ側ポートと判定する。デバイスの種類がスイッチであり、そのデバイスと第1のスイッチが同じスイッチグループに属する場合、第1のスイッチは、LLDPメッセージを受信するポートをグループ内ポートと判定する。デバイスの種類がスイッチであり、そのデバイスと第1のスイッチが異なるスイッチグループに属する場合、第1のスイッチは、LLDPメッセージを受信するポートをグループ間ポートと判定する。さらに、第1のスイッチは、別のデバイスに接続されているが、指定された期間後にLLDPメッセージを受信しないポートをユーザ側ポートと判定する。
一実施態様では、第1のスイッチは、第2のスイッチによって送信された第2の探索メッセージをさらに受信し得る。第2の探索メッセージは、第2のスイッチの識別子および第2のスイッチが第1のスイッチに第2の探索メッセージを送信するためのポートの識別子を含む。第1のスイッチは、第2の探索メッセージに従ってコントローラに第2の報告メッセージを送信する。第2の報告メッセージは、第2のスイッチが第1のスイッチに第2の探索メッセージを送信するためのポートのポート属性をコントローラが判定するように、第2のスイッチが第1のスイッチに第2の探索メッセージを送信するためのポートの識別子を含む。
S830.第1のスイッチは、コントローラによって送信された転送テーブルを受信し、転送テーブルの第1の転送エントリは、第1の仮想ルーティング・転送インスタンス、第1の仮想ルーティング・転送インスタンスに対応する第1の宛先ネットワークセグメント、および第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路を含み、第1の仮想ルーティング・転送インスタンスは、第1のスイッチのすべてのユーザ側ポートに対応する仮想ルーティング・転送インスタンスである。第1の宛先ネットワークセグメントは、第1のスイッチについて構成されたネットワークセグメント以外のいずれかのネットワークセグメントである。
上述したように、転送テーブルは、meshネットワークのトポロジおよび第1のスイッチの各ポートに対応する仮想ルーティング・転送インスタンスに従ってコントローラによって生成される。転送テーブルの構造についての詳細については、前述の図9a、図9b、および図9cの説明を参照されたい。
S840.第1のスイッチはパケットを受信する。
S850.パケットを受信するポートがユーザ側ポートであり、パケットが第1の宛先ネットワークセグメントに対応するパケットであるとき、第1のスイッチは、負荷分散アルゴリズムおよび第1の転送エントリに従って、第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路の中からパケットのターゲット転送経路を選択し、ターゲット転送経路を使用してパケットを転送する。
第1の宛先ネットワークセグメントに対応するパケットは、そのIPアドレスが第1の宛先ネットワークセグメントに属するパケットである。
負荷分散アルゴリズムは、コントローラによって、または第1のスイッチ上で管理者によって事前構成され得る。
この出願では、第1のスイッチも、ポート属性と仮想ルーティング・転送インスタンスとの間の対応関係を取得する必要がある。具体的には、第1のスイッチは、コントローラによって送信されるポート属性と仮想ルーティング・転送インスタンスとの間の対応関係を受信し、またはネットワーク管理者によって構成されるポート属性と仮想ルーティング・転送インスタンスとの間の対応関係を受信し得る。
一実施態様では、第1のスイッチは、パケットを受信し、パケットを受信するポートのポート属性を判定して、対応する仮想ルーティング・転送インスタンスを取得する。次いで第1のスイッチは、仮想ルーティング・転送インスタンスとパケットの宛先IPアドレスに従って転送テーブルを探査して、仮想ルーティング・転送インスタンスと、宛先IPアドレスが属する宛先ネットワークセグメントとに対応する転送エントリを取得し、転送エントリに従ってパケットを転送する。具体的には、パケットを受信するポートがユーザ側ポートであるとき、第1のスイッチは、負荷分散アルゴリズムに従って、第1の仮想ルーティング・転送インスタンスに対応する転送エントリと、パケットの宛先IPアドレスが属する宛先ネットワークセグメントとに関連した少なくとも2つの転送経路の中からパケットのターゲット転送経路を選択し、ターゲット転送経路を使用してパケットを転送する。
この出願の実施形態によって提供される方法を使用して、スイッチがパケットを送信するときにmeshネットワークにおいて等コスト経路または不等コスト経路について負荷分散が実現されることが可能であることを理解できる。加えて、各仮想ルーティング・転送インスタンスはパケットの送信元ポートを示している。したがって、コントローラが転送テーブルを生成するとき、パケットを送信する送信元ポートが属するスイッチは転送経路の次のホップとして使用されない。これは、meshネットワーク上のループを回避する。
図6および図7に表わされた負荷分散を実現するための方法を実行するために、この出願の一実施形態はコントローラ1100をさらに提供する。図11に表わされたように、コントローラ1100は、取得ユニット1110と、判定ユニット1120と、生成ユニット1130と、送信ユニット1140とを含む。取得ユニット1110は、S610およびその様々な実施態様を実行するように構成されている。判定ユニット1120は、S620およびその様々な実施態様を実行するように構成されている。生成ユニット1130は、S630およびその様々な実施態様を実行するように構成されている。送信ユニットは、S640およびその様々な実施態様を実行するように構成されている。
この出願では、図11のコントローラ1100の機能ユニットの区分は一例にすぎない。この技術分野の当業者は、図6および図7に表わされた方法の説明に基づき、図11の機能ユニットを組み合わせてより大きな機能ユニットを得ることが可能であり、またはある機能ユニットを区分して複数のより小さい機能ユニットを得ることが可能である。例えば、取得ユニット1110は、コントローラ1100によって実行される必要がある動作に基づいて複数のサブユニットに区分され得る。
一実施態様では、コントローラ1100の機能ユニットは、具体的には、図12に表わされたコントローラ1200上に配置されたソフトウェアモジュールであり得る。図12に表わされたように、コントローラ1200は、バス1202と、プロセッサ1204と、メモリ1208と、通信インターフェース1206とを含む。プロセッサ1204、メモリ1208、および通信インターフェース1206は、バス1202を通して相互に通信する。
プロセッサ1204は中央処理装置(Central Processing Unit、CPU)であり得る。メモリ1208は、揮発性メモリ(英語:volatile memory)、例えば、ランダム・アクセス・メモリ(英語:random access memory、RAM)を含み得る。またメモリ1208は、不揮発性メモリ(英語:non-volatile memory)、例えば、リード・オンリ・メモリ(英語:read-only memory、ROM)、フラッシュメモリ、ハードディスク(英語:hard disk drive、HDD)、ソリッド・ステート・ディスク(英語:solid state drive、SSD)を含み得る。
通信インターフェース1206は、別のデバイスと通信するように構成されている。通信インターフェース1206は、複数のポートを含み得る。各ポートは、コントローラ1200によって制御されるデバイスと通信するように構成され、デバイスはスイッチまたはサーバであり得る。
メモリ1208は、プログラムコードを格納するように構成されている。プログラムコードは、図11に表わされた取得ユニット1110、判定ユニット1120、生成ユニット1130、および送信ユニット1140の機能を実現することができる少なくとも1つのプログラムモジュールまたはコンピュータ命令を含む。
プロセッサ1204は、メモリ1208内のプログラムコードを呼び出して、図6または図7に表わされた方法を実現するように構成されている。
図8に表わされた負荷分散を実現するための方法を実現するために、この出願の一実施形態は、スイッチ1300、すなわち、図8に表わされた第1のスイッチをさらに提供する。図13に表わされたように、スイッチ1300は、
S830およびその様々な実施態様を実行するように構成された、第1の受信ユニット1310と、
S840を実行するように構成された、第2の受信ユニット1330と、
S850を実行するように構成された、転送ユニット1340と
を含む。
一実施態様では、第1の受信ユニット1310は、S810を実行するようにさらに構成されている。この場合、スイッチ1300は、S820を実行するように構成された第1の送信ユニット1350をさらに含む。
別の実施態様では、スイッチ1300は、第3の受信ユニット1360と、第2の送信ユニット1370とをさらに含む。第3の受信ユニット1360は、別のスイッチによって送信された第2の探索メッセージを受信するように構成されている。第2の探索メッセージは、別のスイッチの識別子、および別のスイッチが上記スイッチに第2の探索メッセージを送信するためのポートの識別子を含む。第2の送信ユニット1370は、第2の探索メッセージに従ってコントローラに第2の報告メッセージを送信するように構成されている。第2の報告メッセージは、別のスイッチが上記スイッチに第2の探索メッセージを送信するためのポートの識別子を含み、それによってコントローラは、別のスイッチが上記スイッチに第2の探索メッセージを送信するためのポートのポート属性を判定する。
別の実施態様では、スイッチ1300は、転送テーブルを格納するように構成された格納ユニット1320をさらに含む。これに対応して、転送ユニット1340は、格納ユニット1320に格納された転送テーブルおよび負荷分散アルゴリズムに従ってターゲット転送経路を選択するように構成されている。
ネットワーク側ポートがグループ内ポートおよびグループ間ポートを含むとき、スイッチのすべてのグループ内ポートは第2の仮想ルーティング・転送インスタンスに対応する。第2の仮想ルーティング・転送インスタンスに対応する転送テーブル内の転送エントリは、第2の仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、および宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含む。スイッチのすべてのグループ間ポートは第3の仮想ルーティング・転送インスタンスに対応する。第3の仮想ルーティング・転送インスタンスに対応する転送テーブル内の転送エントリは、第3の仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、および宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含む。
前述の機能ユニットに加えて、スイッチは、複数のポートをさらに含む。複数のポートは、第1の受信ユニット1310、第2の受信ユニット1330、第1の送信ユニット1350、第3の受信ユニット1360、または第2の送信ユニット1370と協働してメッセージを送信または受信するように構成されている。
この出願では、図13のスイッチ1300の機能ユニットの区分は一例にすぎない。この技術分野の当業者は、図8に表わされた方法の説明に基づき、図13の機能ユニットを組み合わせてより大きな機能ユニットを得ることが可能であり、またはある機能ユニットを区分して複数のより小さい機能ユニットを得ることが可能である。例えば、第1の受信ユニット1310と第2の送信ユニット1370が1つのコントローラ通信部に組み合わされ得る。
一実施態様では、スイッチ1300の機能ユニットは、具体的には、図14に表わされたスイッチ1400上に配置されたソフトウェアモジュールであり得る。図14に表わされたように、スイッチ1400は、バス1402と、プロセッサ1404と、メモリ1408と、通信インターフェース1406とを含む。プロセッサ1404、メモリ1408、および通信インターフェース1406は、バス1402を通して相互に通信する。
プロセッサ1404はCPUであり得る。メモリ1408は、揮発性メモリ、例えば、RAMを含み得る。またメモリ1408は、不揮発性メモリ、例えば、ROM、フラッシュメモリ、HDD、SSDを含み得る。
通信インターフェース1406は、別のデバイスと通信するように構成されている。通信インターフェース1406は、実際の配置の間、複数のポートを含み得る。各ポートは、デバイスと通信するように構成され、デバイスはサーバまたは別のスイッチであり得る。ポートが管理ポートであるとき、デバイスはコントローラであり得る。
メモリ1408は、プログラムコードを格納するように構成されている。プログラムコードは、図13に表わされたユニットの機能を実現することができる少なくとも1つのプロセスモジュールまたはコンピュータ命令を含む。
プロセッサ1404は、メモリ1408内のプログラムコードを呼び出して、図8に表わされた方法を実現するように構成されている。
方法の実施形態のステップのすべてまたはいくつかを、関連するハードウェアに命令するコンピュータプログラムによって実現され得ることをこの技術分野の当業者は理解し得る。プログラムはコンピュータ可読記憶媒体に格納され得る。プログラムが実行されるとき、関連するハードウェアは、前述の実施形態において説明された方法のステップを完了する。前述の記憶媒体は、ROM、RAM、磁気ディスク、光ディスクのような、プログラムコードを格納することができるあらゆる媒体を含む。これに対応して、この出願の一実施形態は、コンピュータプログラム製品をさらに提供し、このコンピュータプログラム製品は、前述の方法の実施形態における動作を実行するための命令を含む。
これに対応して、この出願の一実施形態は、記憶媒体をさらに提供し、この記憶媒体は、コンピュータプログラム製品を格納するように構成されている。
以上の説明は、この出願の好ましい実施態様にすぎない。この技術分野の当業者は、この出願の原理から逸脱することなくいくつかの改善または改良を行うことが可能であり、この改善または改良はこの出願の保護範囲内にあるものであることが留意されるべきである。
300 ネットワークシステム
310 コントローラ
320 meshネットワーク
1100 コントローラ
1110 取得ユニット
1120 判定ユニット
1130 生成ユニット
1140 送信ユニット
1200 コントローラ
1202 バス
1204 プロセッサ
1206 通信インターフェース
1208 メモリ
1300 スイッチ
1310 第1の受信ユニット
1320 格納ユニット
1330 第2の受信ユニット
1340 転送ユニット
1350 第1の送信ユニット
1360 第3の受信ユニット
1370 第2の送信ユニット
1400 スイッチ
1402 バス
1404 プロセッサ
1406 通信インターフェース
1408 メモリ
3201 meshネットワーク
3202 レベル2・meshネットワーク

Claims (22)

  1. 負荷分散を実現するための方法であって、前記方法はコントローラとメッシュネットワークとを含むシステムに適用され、前記メッシュネットワークは複数のスイッチを含み、前記方法は前記コントローラによって実行され、
    第1のスイッチの各ポートのポート属性を取得するステップであって、前記第1のスイッチは前記メッシュネットワーク内のいずれかのスイッチであり、前記ポート属性は、前記ポートがユーザ側ポートまたはネットワーク側ポートであることを示すために使用される、ステップと、
    前記第1のスイッチの各ポートのポート属性に従って、前記第1のスイッチの各ポートに対応する仮想ルーティング・転送インスタンスを決定するステップであって、ユーザ側ポートおよびネットワーク側ポートが異なる仮想ルーティング・転送インスタンスに対応し、前記第1のスイッチのすべてのユーザ側ポートが第1の仮想ルーティング・転送インスタンスに対応する、ステップと、
    前記メッシュネットワークのトポロジおよび前記第1のスイッチの各ポートに対応する仮想ルーティング・転送インスタンスに従って、前記第1のスイッチの転送テーブルを生成するステップであって、前記転送テーブルの第1の転送エントリは、前記第1の仮想ルーティング・転送インスタンス、前記第1の仮想ルーティング・転送インスタンスに対応する第1の宛先ネットワークセグメント、および前記第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路を含む、ステップと、
    前記転送テーブルを前記第1のスイッチに送信するステップであって、前記転送テーブルは、前記第1のスイッチが、負荷分散アルゴリズムおよび前記第1の転送エントリに従って、前記第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路の中から、前記第1の宛先ネットワークセグメントに対応するパケットのターゲット転送経路を選択することを可能にするために使用される、ステップと
    を含む、方法。
  2. 第1のスイッチの各ポートのポート属性を取得する前記ステップは、
    前記第1のスイッチに通知メッセージを送信するステップであって、前記通知メッセージは、前記第1のスイッチに、前記第1のスイッチのすべてのポートから探索メッセージを送信するように命令するために使用され、前記探索メッセージは、前記探索メッセージを受信するデバイスに、前記コントローラに報告メッセージを送信するように命令するために使用される、ステップと、
    前記第1のスイッチの各ポートに接続されたデバイスが報告メッセージを送信するかどうかに基づいて前記第1のスイッチの各ポートのポート属性を判定するステップと
    を含む、請求項1に記載の方法。
  3. 前記第1のスイッチの各ポートに接続されたデバイスが報告メッセージを送信するかどうかに基づいて前記第1のスイッチの各ポートのポート属性を判定する前記ステップは、
    前記報告メッセージを受信するステップであって、前記報告メッセージは、前記報告メッセージを送信するデバイスの種類と、前記第1のスイッチが前記デバイスに前記探索メッセージを送信するためのポートの識別子とを含む、ステップと、
    前記報告メッセージを送信するデバイスの種類を判定するステップと、前記報告メッセージを送信するデバイスが別のスイッチである場合、前記第1のスイッチが前記別のスイッチに前記探索メッセージを送信するためのポートをネットワーク側ポートと判定するステップ、または前記報告メッセージを送信するデバイスがサーバである場合、前記第1のスイッチが前記サーバに前記探索メッセージを送信するためのポートをユーザ側ポートと判定するステップと
    を含む、請求項2に記載の方法。
  4. 前記第1のスイッチに前記通知メッセージを送信した後で、前記第1のスイッチ上の、指定された期間内に報告されないポートをユーザ側ポートと判定するステップ
    をさらに含む、請求項3に記載の方法。
  5. 前記メッシュネットワークは、レベル2・メッシュネットワークであり、前記第1のスイッチが前記別のスイッチに前記探索メッセージを送信するためのポートをネットワーク側ポートと判定する前記ステップは、
    前記第1のスイッチと前記別のスイッチとが同じスイッチグループに属する場合、前記第1のスイッチが前記別のスイッチに前記探索メッセージを送信するためのポートをグループ内ポートと判定するステップ、および
    前記第1のスイッチと前記別のスイッチとが異なるスイッチグループに属する場合、前記第1のスイッチが前記別のスイッチに前記探索メッセージを送信するためのポートをグループ間ポートと判定するステップ
    の一方を含む、請求項4に記載の方法。
  6. 前記第1のスイッチのすべてのグループ内ポートは第2の仮想ルーティング・転送インスタンスに対応し、前記第2の仮想ルーティング・転送インスタンスに対応する転送テーブル内の転送エントリは、前記第2の仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、および前記宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含み、
    前記第1のスイッチのすべてのグループ間ポートは第3の仮想ルーティング・転送インスタンスに対応し、前記第3の仮想ルーティング・転送インスタンスに対応する転送テーブル内の転送エントリは、前記第3の仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、および前記宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含む、
    請求項5に記載の方法。
  7. 前記メッシュネットワークのトポロジおよび前記第1のスイッチの各ポートに対応する仮想ルーティング・転送インスタンスに従って、前記第1のスイッチの転送テーブルを生成する前記ステップは、
    前記複数のスイッチの各々について構成されたネットワークセグメントを取得して複数のネットワークセグメントを取得し、前記複数のネットワークセグメントにおける送信元ネットワークセグメントおよび宛先ネットワークセグメントを決定するステップであって、前記送信元ネットワークセグメントは前記複数のネットワークセグメントのうちのいずれか1つであり、前記宛先ネットワークセグメントは、前記送信元ネットワークセグメントを除く前記複数のネットワークセグメントのうちのいずれか1つである、ステップと、
    前記メッシュネットワークのトポロジに従って、前記送信元ネットワークセグメントから前記宛先ネットワークセグメントまでのN個の転送経路を決定し、前記N個の転送経路内のi番目の転送経路上の宛先スイッチ以外のスイッチごとに前記i番目の転送経路に対応するルートエントリを生成するステップであって、各ルートエントリは、仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、次のホップ、および出口ポートを含み、iは、N以下の自然数である、ステップと、
    前記第1のスイッチのすべてのルートエントリに従って、各仮想ルーティング・転送インスタンス内の前記第1のスイッチの各宛先ネットワークセグメントに対応する転送経路を決定して、前記第1のスイッチの転送テーブルを生成するステップと
    を含む、請求項1から6のいずれか一項に記載の方法。
  8. コントローラとメッシュネットワークとを含むシステムに適用される、負荷分散を実現するための方法であって、前記メッシュネットワークは複数のスイッチを含み、前記方法は第1のスイッチによって実行され、前記第1のスイッチは前記複数のスイッチのうちのいずれか1つであり、前記第1のスイッチは複数のポートを含み、前記複数のポートはネットワーク側ポートおよびユーザ側ポートを含み、ユーザ側ポートおよびネットワーク側ポートは異なる仮想ルーティング・転送インスタンスに対応し、前記方法は、
    前記コントローラによって送信された転送テーブルを受信するステップであって、前記転送テーブルの第1の転送エントリは、第1の仮想ルーティング・転送インスタンス、前記第1の仮想ルーティング・転送インスタンスに対応する第1の宛先ネットワークセグメント、および前記第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路を含み、前記第1の仮想ルーティング・転送インスタンスは、前記第1のスイッチのすべてのユーザ側ポートに対応する仮想ルーティング・転送インスタンスである、ステップと、
    パケットを受信するステップと、
    前記パケットを受信するポートがユーザ側ポートであり、前記パケットが前記第1の宛先ネットワークセグメントに対応するパケットであるとき、負荷分散アルゴリズムおよび前記第1の転送エントリに従って、前記第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路の中から前記パケットのターゲット転送経路を選択し、前記ターゲット転送経路を使用して前記パケットを転送するステップと
    を含む、方法。
  9. 前記コントローラによって送信された転送テーブルを受信する前記ステップの前に、前記方法は、
    前記コントローラによって送信された通知メッセージを受信するステップと、
    前記通知メッセージに従って前記第1のスイッチのすべてのポートに探索メッセージを送信するステップであって、前記探索メッセージは、前記探索メッセージを受信するデバイスに、前記コントローラに報告メッセージを送信するように命令するために使用される、ステップと
    をさらに含む、請求項8に記載の方法。
  10. 前記方法は、
    第2のスイッチによって送信された第2の探索メッセージを受信するステップであって、前記第2の探索メッセージは、前記第2のスイッチの識別子および前記第2のスイッチが前記第1のスイッチに前記第2の探索メッセージを送信するためのポートの識別子を含む、ステップと、
    前記第2の探索メッセージに従って前記コントローラに第2の報告メッセージを送信するステップであって、前記第2の報告メッセージは、前記第2のスイッチが前記第1のスイッチに前記第2の探索メッセージを送信するためのポートのポート属性を前記コントローラが判定するように、前記第2のスイッチが前記第1のスイッチに前記第2の探索メッセージを送信するためのポートの識別子を含む、ステップと
    をさらに含む、請求項9に記載の方法。
  11. 前記ネットワーク側ポートは、グループ内ポートおよびグループ間ポートを含み、
    前記第1のスイッチのすべてのグループ内ポートは第2の仮想ルーティング・転送インスタンスに対応し、前記第2の仮想ルーティング・転送インスタンスに対応する転送テーブル内の転送エントリは、前記第2の仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、および前記宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含み、
    前記第1のスイッチのすべてのグループ間ポートは第3の仮想ルーティング・転送インスタンスに対応し、前記第3の仮想ルーティング・転送インスタンスに対応する転送テーブル内の転送エントリは、前記第3の仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、および前記宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含む、
    請求項8から9のいずれか一項に記載の方法。
  12. コントローラであって、前記コントローラは、前記コントローラとメッシュネットワークとを含むシステムに適用され、前記メッシュネットワークは複数のスイッチを含み、前記コントローラは、
    第1のスイッチの各ポートのポート属性を取得するように構成された取得ユニットであって、前記第1のスイッチは前記メッシュネットワーク内のいずれかのスイッチであり、前記ポート属性は、前記ポートがユーザ側ポートまたはネットワーク側ポートであることを示すために使用される、取得ユニットと、
    前記第1のスイッチの各ポートのポート属性に従って、前記第1のスイッチの各ポートに対応する仮想ルーティング・転送インスタンスを決定するように構成された判定ユニットであって、ユーザ側ポートおよびネットワーク側ポートが異なる仮想ルーティング・転送インスタンスに対応し、前記第1のスイッチのすべてのユーザ側ポートが第1の仮想ルーティング・転送インスタンスに対応する、判定ユニットと、
    前記メッシュネットワークのトポロジおよび前記第1のスイッチの各ポートに対応する仮想ルーティング・転送インスタンスに従って、前記第1のスイッチの転送テーブルを生成するように構成された生成ユニットであって、前記転送テーブルの第1の転送エントリは、前記第1の仮想ルーティング・転送インスタンス、前記第1の仮想ルーティング・転送インスタンスに対応する第1の宛先ネットワークセグメント、および前記第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路を含む、生成ユニットと、
    前記転送テーブルを前記第1のスイッチに送信するように構成された送信ユニットであって、前記転送テーブルは、前記第1のスイッチが、負荷分散アルゴリズムおよび前記第1の転送エントリに従って、前記第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路の中から、前記第1の宛先ネットワークセグメントに対応するパケットのターゲット転送経路を選択することを可能にするために使用される、送信ユニットと
    を含む、コントローラ。
  13. 前記取得ユニットは、具体的には、
    前記第1のスイッチに通知メッセージを送信し、前記通知メッセージは、前記第1のスイッチに、前記第1のスイッチのすべてのポートから探索メッセージを送信するように命令するために使用され、前記探索メッセージは、前記探索メッセージを受信するデバイスに、前記コントローラに報告メッセージを送信するように命令するために使用され、
    前記第1のスイッチの各ポートに接続されたデバイスが報告メッセージを送信するかどうかに基づいて前記第1のスイッチの各ポートのポート属性を判定する
    ように構成された、請求項12に記載のコントローラ。
  14. 前記第1のスイッチの各ポートに接続されたデバイスが報告メッセージを送信するかどうかに基づいて前記第1のスイッチの各ポートのポート属性を判定するとき、前記取得ユニットは、
    前記報告メッセージを受信するように構成され、前記報告メッセージは前記報告メッセージを送信するデバイスの種類と、前記第1のスイッチが前記デバイスに前記探索メッセージを送信するためのポートの識別子とを含み、
    前記取得ユニットは、前記デバイスの種類を判定し、前記デバイスが別のスイッチである場合、前記第1のスイッチが前記別のスイッチに前記探索メッセージを送信するためのポートをネットワーク側ポートと判定し、または前記デバイスがサーバである場合、前記第1のスイッチが前記サーバに前記探索メッセージを送信するためのポートをユーザ側ポートと判定するように構成された、請求項13に記載のコントローラ。
  15. 前記取得ユニットは、
    前記第1のスイッチに前記通知メッセージを送信した後、前記第1のスイッチ上の、指定された期間内に報告されないポートをユーザ側ポートと判定する
    ようにさらに構成された、請求項14に記載のコントローラ。
  16. 前記メッシュネットワークは、レベル2・メッシュネットワークであり、前記第1のスイッチが前記別のスイッチに前記探索メッセージを送信するためのポートをネットワーク側ポートと判定するとき、前記取得ユニットは、
    前記第1のスイッチと前記別のスイッチとが同じスイッチグループに属する場合、前記第1のスイッチが前記別のスイッチに前記探索メッセージを送信するためのポートをグループ内ポートと判定し、または前記第1のスイッチと前記別のスイッチとが異なるスイッチグループに属する場合、前記第1のスイッチが前記別のスイッチに前記探索メッセージを送信するためのポートをグループ間ポートと判定する
    ように構成された、請求項15に記載のコントローラ。
  17. 前記第1のスイッチのすべてのグループ内ポートは第2の仮想ルーティング・転送インスタンスに対応し、前記第2の仮想ルーティング・転送インスタンスに対応する転送テーブル内の転送エントリは、前記第2の仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、および前記宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含み、
    前記第1のスイッチのすべてのグループ間ポートは第3の仮想ルーティング・転送インスタンスに対応し、前記第3の仮想ルーティング・転送インスタンスに対応する転送テーブル内の転送エントリは、前記第3の仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、および前記宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含む、
    請求項16に記載のコントローラ。
  18. 前記生成ユニットは、
    前記複数のスイッチの各々について構成されたネットワークセグメントを取得して複数のネットワークセグメントを取得し、前記複数のネットワークセグメントにおける送信元ネットワークセグメントおよび宛先ネットワークセグメントを決定するように構成され、前記送信元ネットワークセグメントは前記複数のネットワークセグメントのうちのいずれか1つであり、前記宛先ネットワークセグメントは、前記送信元ネットワークセグメントを除く前記複数のネットワークセグメントのうちのいずれか1つであり、
    前記生成ユニットは、前記メッシュネットワークのトポロジに従って、前記送信元ネットワークセグメントから前記宛先ネットワークセグメントまでのN個の転送経路を決定し、前記N個の転送経路内のi番目の転送経路上の宛先スイッチ以外のスイッチごとに前記i番目の転送経路に対応するルートエントリを生成するように構成され、各ルートエントリは、仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、次のホップ、および出口ポートを含み、iはN以下の自然数であり、
    前記生成ユニットは、前記第1のスイッチのすべてのルートエントリに従って、各仮想ルーティング・転送インスタンス内の前記第1のスイッチの各宛先ネットワークセグメントに対応する転送経路を決定して、前記第1のスイッチの転送テーブルを生成するように構成された、請求項12から17のいずれか一項に記載のコントローラ。
  19. コントローラとメッシュネットワークとを含むシステムに適用される、スイッチであって、前記メッシュネットワークは複数のスイッチを含み、前記スイッチは前記複数のスイッチのうちのいずれか1つであり、前記スイッチは複数のポートを含み、前記複数のポートはネットワーク側ポートおよびユーザ側ポートを含み、ユーザ側ポートおよびネットワーク側ポートは異なる仮想ルーティング・転送インスタンスに対応し、前記スイッチは、
    前記コントローラによって送信された転送テーブルを受信するように構成された第1の受信ユニットであって、前記転送テーブルの第1の転送エントリは、第1の仮想ルーティング・転送インスタンス、前記第1の仮想ルーティング・転送インスタンスに対応する第1の宛先ネットワークセグメント、および前記第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路を含み、前記第1の仮想ルーティング・転送インスタンスは、前記スイッチのすべてのユーザ側ポートに対応する仮想ルーティング・転送インスタンスである、第1の受信ユニットと、
    パケットを受信するように構成された、第2の受信ユニットと、
    前記パケットを受信するポートがユーザ側ポートであり、前記パケットが前記第1の宛先ネットワークセグメントに対応するパケットであるとき、負荷分散アルゴリズムおよび前記第1の転送エントリに従って、前記第1の宛先ネットワークセグメントに対応する少なくとも2つの転送経路の中から前記パケットのターゲット転送経路を選択し、前記ターゲット転送経路を使用して前記パケットを転送するように構成された、転送ユニットと
    を含む、スイッチ。
  20. 前記第1の受信ユニットは、前記コントローラによって送信された通知メッセージを受信するようにさらに構成され、
    前記スイッチは、前記通知メッセージに従って前記スイッチのすべてのポートに探索メッセージを送信するように構成された、第1の送信ユニットであって、前記探索メッセージは、前記探索メッセージを受信するデバイスに、前記コントローラに報告メッセージを送信するように命令するために使用される、第1の送信ユニットをさらに含む
    請求項19に記載のスイッチ。
  21. 別のスイッチによって送信された第2の探索メッセージを受信するように構成された第3の受信ユニットであって、前記第2の探索メッセージは、前記別のスイッチの識別子および前記別のスイッチが前記スイッチに前記第2の探索メッセージを送信するためのポートの識別子を含む、第3の受信ユニットと、
    前記第2の探索メッセージに従って前記コントローラに第2の報告メッセージを送信するように構成された第2の送信ユニットであって、前記第2の報告メッセージは、前記別のスイッチが前記スイッチに前記第2の探索メッセージを送信するためのポートのポート属性を前記コントローラが判定するように、前記別のスイッチが前記スイッチに前記第2の探索メッセージを送信するためのポートの識別子を含む、第2の送信ユニットと
    をさらに含む、請求項20に記載のスイッチ。
  22. 前記ネットワーク側ポートは、グループ内ポートおよびグループ間ポートを含み、
    前記スイッチのすべてのグループ内ポートは第2の仮想ルーティング・転送インスタンスに対応し、前記第2の仮想ルーティング・転送インスタンスに対応する転送テーブル内の転送エントリは、前記第2の仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、および前記宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含み、
    前記スイッチのすべてのグループ間ポートは第3の仮想ルーティング・転送インスタンスに対応し、前記第3の仮想ルーティング・転送インスタンスに対応する転送テーブル内の転送エントリは、前記第3の仮想ルーティング・転送インスタンス、宛先ネットワークセグメント、および前記宛先ネットワークセグメントに対応する少なくとも1つの転送経路を含む、
    請求項19から21のいずれか一項に記載のスイッチ。
JP2018088752A 2017-05-05 2018-05-02 負荷分散を実現するための方法、装置、およびネットワークシステム Active JP6510115B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710312467.3 2017-05-05
CN201710312467.3A CN108809847B (zh) 2017-05-05 2017-05-05 实现负载均衡的方法、装置和网络系统

Publications (2)

Publication Number Publication Date
JP2018191290A true JP2018191290A (ja) 2018-11-29
JP6510115B2 JP6510115B2 (ja) 2019-05-08

Family

ID=62116726

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018088752A Active JP6510115B2 (ja) 2017-05-05 2018-05-02 負荷分散を実現するための方法、装置、およびネットワークシステム

Country Status (5)

Country Link
US (1) US10924409B2 (ja)
EP (1) EP3399703B1 (ja)
JP (1) JP6510115B2 (ja)
CN (1) CN108809847B (ja)
BR (1) BR102018008997A2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10979351B2 (en) * 2017-05-19 2021-04-13 Cisco Technology, Inc. Managing routing tables
US10630606B1 (en) * 2019-03-18 2020-04-21 Brightways Corporation System, method and architecture for data center network switching
WO2020236277A1 (en) * 2019-05-23 2020-11-26 Cray Inc. System and method for facilitating tracer packets in a data-driven intelligent network
CN113055214B (zh) * 2019-12-27 2023-12-19 华为技术有限公司 端口属性确定方法以及相关设备
US20210266255A1 (en) * 2020-02-24 2021-08-26 Cisco Technology, Inc. Vrf segregation for shared services in multi-fabric cloud networks
CN111355668B (zh) * 2020-03-12 2022-07-22 北京嘀嘀无限科技发展有限公司 转发路径的确定方法、交换机和存储介质
CN113542111B (zh) * 2020-04-20 2024-05-14 华为技术有限公司 一种报文转发方法及网络设备
US11621910B1 (en) * 2020-06-23 2023-04-04 Juniper Networks, Inc. Concurrent routing for network devices
CN114666267A (zh) * 2020-12-07 2022-06-24 中兴通讯股份有限公司 以太虚拟专用网的数据处理方法、设备及存储介质
WO2023204989A1 (en) * 2022-04-20 2023-10-26 Cisco Technology, Inc. Systems and methods for dynamically selecting a load balancing algorithm
CN115883456B (zh) * 2023-01-31 2023-06-23 天翼云科技有限公司 一种上行出口识别方法、装置及设备、介质和产品

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012169733A (ja) * 2011-02-10 2012-09-06 Fujitsu Ltd 通信制御プログラム、情報処理装置およびパケット通信方法
JP2012175198A (ja) * 2011-02-17 2012-09-10 Nippon Telegr & Teleph Corp <Ntt> 流通経路設定システム及び方法
JP2012525017A (ja) * 2009-04-01 2012-10-18 ニシラ ネットワークス, インコーポレイテッド 仮想スイッチを実現し且つ管理する方法及び装置
US20150281073A1 (en) * 2014-03-31 2015-10-01 Dell Products, L.P. System and method for context aware network
US20150349978A1 (en) * 2013-02-06 2015-12-03 Huawei Technologies Co., Ltd. Method, Device, and Routing System for Data Transmission of Network Virtualization
CN105981330A (zh) * 2013-11-06 2016-09-28 瑞典爱立信有限公司 实现网络虚拟化覆盖架构中的负载均衡

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6876656B2 (en) * 2001-06-15 2005-04-05 Broadcom Corporation Switch assisted frame aliasing for storage virtualization
JP3695447B2 (ja) * 2002-02-27 2005-09-14 日立電線株式会社 仮想lan接続機器
US8996683B2 (en) 2008-06-09 2015-03-31 Microsoft Technology Licensing, Llc Data center without structural bottlenecks
WO2012015410A1 (en) * 2010-07-29 2012-02-02 Hewlett-Packard Development Company, L. P. A device and method for egress packet forwarding using mesh tagging
US9100285B1 (en) * 2012-12-18 2015-08-04 Juniper Networks, Inc. Dynamic control channel establishment for software-defined networks having centralized control
US9025459B2 (en) * 2013-04-13 2015-05-05 Hei Tao Fung Network traffic load balancing
US9787546B2 (en) * 2013-08-07 2017-10-10 Harris Corporation Network management system generating virtual network map and related methods

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012525017A (ja) * 2009-04-01 2012-10-18 ニシラ ネットワークス, インコーポレイテッド 仮想スイッチを実現し且つ管理する方法及び装置
JP2012169733A (ja) * 2011-02-10 2012-09-06 Fujitsu Ltd 通信制御プログラム、情報処理装置およびパケット通信方法
JP2012175198A (ja) * 2011-02-17 2012-09-10 Nippon Telegr & Teleph Corp <Ntt> 流通経路設定システム及び方法
US20150349978A1 (en) * 2013-02-06 2015-12-03 Huawei Technologies Co., Ltd. Method, Device, and Routing System for Data Transmission of Network Virtualization
CN105981330A (zh) * 2013-11-06 2016-09-28 瑞典爱立信有限公司 实现网络虚拟化覆盖架构中的负载均衡
US20150281073A1 (en) * 2014-03-31 2015-10-01 Dell Products, L.P. System and method for context aware network

Also Published As

Publication number Publication date
CN108809847A (zh) 2018-11-13
EP3399703A1 (en) 2018-11-07
CN108809847B (zh) 2021-11-19
US20180324097A1 (en) 2018-11-08
BR102018008997A2 (pt) 2018-11-21
JP6510115B2 (ja) 2019-05-08
US10924409B2 (en) 2021-02-16
EP3399703B1 (en) 2021-02-24

Similar Documents

Publication Publication Date Title
JP6510115B2 (ja) 負荷分散を実現するための方法、装置、およびネットワークシステム
US10541905B2 (en) Automatic optimal route reflector root address assignment to route reflector clients and fast failover in a network environment
US20200067812A1 (en) First Hop Gateway Redundancy In A Network Computing Environment
EP2911348B1 (en) Control device discovery in networks having separate control and forwarding devices
JP6129928B2 (ja) アジャイルデータセンタネットワークアーキテクチャ
US11943136B2 (en) Advanced preferred path route graph features in a network
US9065768B2 (en) Apparatus for a high performance and highly available multi-controllers in a single SDN/OpenFlow network
WO2018077238A1 (zh) 一种基于交换机的负载均衡系统及方法
EP2614618B1 (en) Automated traffic engineering for multi-protocol label switching (mpls) with link utilization as feedback into the tie-breaking mechanism
KR101317969B1 (ko) 링크 애그리게이션 방법 및 노드
JP2022532729A (ja) スライスベースルーティング
WO2022166691A1 (zh) 一种业务处理方法、装置、存储介质及电子装置
WO2014116710A2 (en) Optimizing traffic flows when using server virtualization with dynamic routing
US8667174B2 (en) Method and system for survival of data plane through a total control plane failure
AU2011306508A1 (en) Method and apparatus to improve LDP convergence using hierarchical label stacking
WO2021000848A1 (zh) 一种报文转发方法、报文处理方法及装置
US20170111260A1 (en) Trill isis-based route calculation method and device
US10680931B2 (en) Ingress gateway selection for a shortest path bridging network to support inter domain multicast routing
US11936559B2 (en) Fast receive re-convergence of multi-pod multi-destination traffic in response to local disruptions
Masuda et al. Splitable: Toward routing scalability through distributed bgp routing tables
EP2337281B1 (en) Method of exchanging routing information between network nodes in a packet switched network
WO2019161928A1 (en) Methods, nodes and system for a multicast service

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190225

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: 20190304

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190403

R150 Certificate of patent or registration of utility model

Ref document number: 6510115

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