(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-05
(45)【発行日】2024-07-16
(54)【発明の名称】SD-WANハブおよびスポークの自動プロビジョニング
(51)【国際特許分類】
H04L 41/0803 20220101AFI20240708BHJP
H04L 41/122 20220101ALI20240708BHJP
H04L 45/76 20220101ALI20240708BHJP
【FI】
H04L41/0803
H04L41/122
H04L45/76
(21)【出願番号】P 2022553019
(86)(22)【出願日】2021-05-18
(86)【国際出願番号】 US2021032849
(87)【国際公開番号】W WO2021242562
(87)【国際公開日】2021-12-02
【審査請求日】2022-11-07
(32)【優先日】2020-05-26
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】508041127
【氏名又は名称】シスコ テクノロジー,インコーポレイテッド
(74)【代理人】
【識別番号】100079108
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100140431
【氏名又は名称】大石 幸雄
(72)【発明者】
【氏名】シュリヴァスタヴァ,ガウラブ
(72)【発明者】
【氏名】リンデム,アルフレッド,シー.
(72)【発明者】
【氏名】チンタラプディ,ラヴィ,キラン
(72)【発明者】
【氏名】ダス,トーシャ,バナジー
【審査官】速水 雄太
(56)【参考文献】
【文献】特開2006-261880(JP,A)
【文献】米国特許出願公開第2019/0036813(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/00-12/66
41/00-101/695
(57)【特許請求の範囲】
【請求項1】
システムであって、
1つ以上のプロセッサと、
前記1つ以上のプロセッサによって実行されると、前記システムの1つ以上の構成要素に、
複数のネットワークハブのうちの1つである第1のネットワークハブから第1の情報を受信することであって、前記第1の情報が、前記第1のネットワークハブに関連付けられた第1のセットのプロパティを示すことと、
前記第1の情報を複数のネットワークスポークに公開することであって、前記複数のネットワークスポークが、前記第1の情報に基づいて前記第1のネットワークハブに加入するかどうかを決定することと、
前記複数のネットワークスポークのうちの第1のネットワークスポークから加入情報を受信することであって、前記加入情報が
、前記第1のネットワークスポーク
が前記第1のネットワークハブに加入することを決定したことを示すことと、
少なくとも1つの動的制御ポリシーを作成し、前記第1のネットワークハブを介して前記第1のネットワークスポークについての転送パスを確立することと、を含む動作を実行させる命令を含む1つ以上のコンピュータ可読非一時的記憶媒体と、を備える、システム。
【請求項2】
前記プロパティの第1のセットが、前記第1のネットワークハブに関連付けられたGPS位置、負荷係数、プラットフォーム、および少なくとも1つのクラウド特性のうちの1つ以上を含む、請求項1に記載のシステム。
【請求項3】
前記少なくとも1つの動的制御ポリシーが、前記複数のネットワークハブのうちの前記第1のネットワークハブと少なくとも1つの他のネットワークハブとの間に第2の転送パスをさらに確立する、請求項1または2に記載のシステム。
【請求項4】
前記少なくとも1つの動的制御ポリシーが、前記少なくとも1つの他のネットワークハブと、前記少なくとも1つの他のネットワークハブに関連付けられた第2のネットワークスポークとの間に第3の転送パスをさらに確立する、請求項3に記載のシステム。
【請求項5】
前記作成された少なくとも1つの動的制御ポリシーに基づいて、前記複数のネットワークハブおよび前記複数のネットワークスポークを介してトラフィックが設計される、請求項1から4のいずれか一項に記載のシステム。
【請求項6】
前記動作が、
前記第1の情報を少なくとも1つの新たなネットワークスポークに公開することであって、前記少なくとも1つの新たなネットワークスポークが、前記複数のネットワークハブのうちの前記第1のネットワークハブに地理的に近接していることと、
前記少なくとも1つの新たなネットワークスポークから新たな加入情報を受信することであって、前記新たな加入情報が、前記少なくとも1つの新たなネットワークスポークが前記第1の情報に基づいて前記第1のネットワークハブに加入
することを決定したことを示すことと、
新たな動的制御ポリシーを作成して、前記第1のネットワークハブを介して前記少なくとも1つの新たなネットワークスポークについての新たな転送パスを確立することと、をさらに含む、請求項1から5のいずれか一項に記載のシステム。
【請求項7】
前記動作が、
新たなネットワークハブから第2の情報を受信することであって、前記第2の情報が、前記新たなネットワークハブに関連付けられたプロパティの第2のセットを示すことと、
前記第2の情報を前記複数のネットワークスポークに公開することであって、前記複数のネットワークスポークが、前記第2の情報に基づいて前記新たなネットワークハブに加入するかどうかを決定することと、
前記複数のネットワークスポークのうちの少なくとも1つのネットワークスポークから更新された加入情報を受信することであって、前記更新された加入情報が、前記複数のネットワークスポークのうちの前記少なくとも1つのネットワークスポークが前記新たなネットワークハブに加入
することを示すことと、
前記更新された加入情報に基づいて前記動的制御ポリシーを更新し、前記新たなネットワークハブを介して前記少なくとも1つのネットワークスポークについての更新された転送パスを確立することと、をさらに含む、請求項1から6のいずれか一項に記載のシステム。
【請求項8】
方法であって、
複数のネットワークハブのうちの1つである第1のネットワークハブから第1の情報を受信することであって、前記第1の情報が、前記第1のネットワークハブに関連付けられた第1のセットのプロパティを示すことと、
前記第1の情報を複数のネットワークスポークに公開することであって、前記複数のネットワークスポークが、前記第1の情報に基づいて前記第1のネットワークハブに加入するかどうかを決定することと、
前記複数のネットワークスポークのうちの第1のネットワークスポークから加入情報を受信することであって、前記加入情報が、前記第1のネットワークハブ
が前記第1のネットワークスポーク
に加入することを決定したことを示すことと、
少なくとも1つの動的制御ポリシーを作成し、前記第1のネットワークハブを介して前記第1のネットワークスポークについての転送パスを確立することと、を含む、方法。
【請求項9】
前記プロパティの第1のセットが、前記第1のネットワークハブに関連付けられたGPS位置、負荷係数、プラットフォーム、および少なくとも1つのクラウド特性のうちの1つ以上を含む、請求項8に記載の方法。
【請求項10】
前記少なくとも1つの動的制御ポリシーが、前記複数のネットワークハブのうちの前記第1のネットワークハブと少なくとも1つの他のネットワークハブとの間に第2の転送パスをさらに確立する、請求項8または9に記載の方法。
【請求項11】
前記少なくとも1つの動的制御ポリシーが、前記少なくとも1つの他のネットワークハブと、前記少なくとも1つの他のネットワークハブに関連付けられた第2のネットワークスポークとの間に第3の転送パスをさらに確立する、請求項10に記載の方法。
【請求項12】
前記作成された少なくとも1つの動的制御ポリシーに基づいて、前記複数のネットワークハブおよび前記複数のネットワークスポークを介してトラフィックが設計される、請求項8から11のいずれか一項に記載の方法。
【請求項13】
前記第1の情報を少なくとも1つの新たなネットワークスポークに公開することであって、前記少なくとも1つの新たなネットワークスポークが、前記複数のネットワークハブのうちの前記第1のネットワークハブに地理的に近接していることと、
前記少なくとも1つの新たなネットワークスポークから新たな加入情報を受信することであって、前記新たな加入情報が、前記少なくとも1つの新たなネットワークスポークが前記第1の情報に基づいて前記第1のネットワークハブに加入
することを決定したことを示すことと、
新たな動的制御ポリシーを作成して、前記第1のネットワークハブを介して前記少なくとも1つの新たなネットワークスポークについての新たな転送パスを確立することと、をさらに含む、請求項8から12のいずれか一項に記載の方法。
【請求項14】
新たなネットワークハブから第2の情報を受信することであって、前記第2の情報が、前記新たなネットワークハブに関連付けられたプロパティの第2のセットを示すことと、
前記第2の情報を前記複数のネットワークスポークに公開することであって、前記複数のネットワークスポークが、前記第2の情報に基づいて前記新たなネットワークハブに加入するかどうかを決定することと、
前記複数のネットワークスポークのうちの少なくとも1つのネットワークスポークから更新された加入情報を受信することであって、前記更新された加入情報が、前記複数のネットワークスポークのうちの前記少なくとも1つのネットワークスポークが前記新たなネットワークハブに加入
することを決定したことを示すことと、
前記更新された加入情報に基づいて前記動的制御ポリシーを更新し、前記新たなネットワークハブを介して前記少なくとも1つのネットワークスポークについての更新された転送パスを確立することと、をさらに含む、請求項8から13のいずれか一項に記載の方法。
【請求項15】
プロセッサによって実行されると、
複数のネットワークハブのうちの1つである第1のネットワークハブから第1の情報を受信することであって、前記第1の情報が、前記第1のネットワークハブに関連付けられた第1のセットのプロパティを示すことと、
前記第1の情報を複数のネットワークスポークに公開することであって、前記複数のネットワークスポークが、前記第1の情報に基づいて前記第1のネットワークハブに加入するかどうかを決定することと、
前記複数のネットワークスポークのうちの第1のネットワークスポークから加入情報を受信することであって、前記加入情報が
、前記第1のネットワークスポーク
が前記第1のネットワークハブに加入することを決定したことを示すことと、
少なくとも1つの動的制御ポリシーを作成し、前記第1のネットワークハブを介して前記第1のネットワークスポークについての転送パスを確立することと、を含む動作の実行を引き起こす命令を具現化する1つ以上のコンピュータ可読非一時的記憶媒体。
【請求項16】
前記プロパティの第1のセットが、前記第1のネットワークハブに関連付けられたGPS位置、負荷係数、プラットフォーム、および少なくとも1つのクラウド特性のうちの1つ以上を含む、請求項15に記載の1つ以上のコンピュータ可読非一時的記憶媒体。
【請求項17】
前記少なくとも1つの動的制御ポリシーは、前記第1のネットワークハブと前記複数のネットワークハブのうちの少なくとも1つの他のネットワークハブとの間に第2の転送パスをさらに確立する、請求項15または16に記載の1つ以上のコンピュータ可読非一時的記憶媒体。
【請求項18】
前記少なくとも1つの動的制御ポリシーが、前記少なくとも1つの他のネットワークハブと、前記少なくとも1つの他のネットワークハブに関連付けられた第2のネットワークスポークとの間に第3の転送パスをさらに確立する、請求項17に記載の1つ以上のコンピュータ可読非一時的記憶媒体。
【請求項19】
前記動作が、
前記第1の情報を少なくとも1つの新たなネットワークスポークに公開することであって、前記少なくとも1つの新たなネットワークスポークが、前記複数のネットワークハブのうちの前記第1のネットワークハブに地理的に近接していることと、
前記少なくとも1つの新たなネットワークスポークから新たな加入情報を受信することであって、前記新たな加入情報が、前記少なくとも1つの新たなネットワークスポークが前記第1の情報に基づいて前記第1のネットワークハブに加入
することを決定したことを示すことと、
新たな動的制御ポリシーを作成して、前記第1のネットワークハブを介して前記少なくとも1つの新たなネットワークスポークについての新たな転送パスを確立することと、をさらに含む、請求項15から18のいずれか一項に記載の1つ以上のコンピュータ可読非一時的記憶媒体。
【請求項20】
前記動作が、
新たなネットワークハブから第2の情報を受信することであって、前記第2の情報が、前記新たなネットワークハブに関連付けられたプロパティの第2のセットを示すことと、
前記第2の情報を前記複数のネットワークスポークに公開することであって、前記複数のネットワークスポークが、前記第2の情報に基づいて前記新たなネットワークハブに加入するかどうかを決定することと、
前記複数のネットワークスポークのうちの少なくとも1つのネットワークスポークから更新された加入情報を受信することであって、前記更新された加入情報が、前記複数のネットワークスポークのうちの前記少なくとも1つのネットワークスポークが前記新たなネットワークハブに加入
することを決定したことを示すことと、
前記更新された加入情報に基づいて前記動的制御ポリシーを更新し、前記新たなネットワークハブを介して前記少なくとも1つのネットワークスポークについての更新された転送パスを確立することと、をさらに含む、請求項15から19のいずれか一項に記載の1つ以上のコンピュータ可読非一時的記憶媒体。
【請求項21】
装置であって、
複数のネットワークハブのうちの1つである第1のネットワークハブから第1の情報を受信する手段であって、前記第1の情報が、前記第1のネットワークハブに関連付けられた第1のセットのプロパティを示す、受信する手段と、
前記第1の情報を複数のネットワークスポークに公開する手段であって、前記複数のネットワークスポークが、前記第1の情報に基づいて前記第1のネットワークハブに加入するかどうかを決定する、公開する手段と、
前記複数のネットワークスポークのうちの第1のネットワークスポークから加入情報を受信する手段であって、前記加入情報が、前記第1のネットワークハブに加入
することを決定した前記第1のネットワークスポークを示す、受信する手段と、
少なくとも1つの動的制御ポリシーを作成し、前記第1のネットワークハブを介して前記第1のネットワークスポークについての転送パスを確立する手段と、を備える、装置。
【請求項22】
請求項9から14のいずれか一項に記載の方法を実装する手段をさらに備える、請求項21に記載の装置。
【請求項23】
コンピュータによって実行されると、前記コンピュータに、請求項8から14のいずれか一項に記載の方法のステップを実行させる命令を含む、コンピュータプログラム
、またはコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に、ソフトウェア定義ワイドエリアネットワーク(SD-WAN)に関し、より具体的には、SD-WANの自動プロビジョニングのためのシステムおよび方法に関する。
【背景技術】
【0002】
大企業は、地理的に異なる場所、またはパブリッククラウドもしくはプライベートクラウドに配置されている複数の物理サイトまたは仮想サイトを有する場合がある。メッシュトポロジでは、ワイドエリアネットワーク(WAN)リンクを使用して、全ての物理サイトが他の全ての物理サイトに接続される。数百または数千の物理サイトを有する企業の場合、フルメッシュトポロジは、冗長性が高い場合があり、保守が難しい場合がある。ハブおよびスポークトポロジでは、少なくとも1つの物理サイトがハブとして機能する場合があり、他の物理サイトがスポークとして機能する場合がある。スポークツースポークトラフィックは、指定されたハブを介してプロビジョニングされる場合がある。
【図面の簡単な説明】
【0003】
【
図1】
図1は、特定の実施形態にかかる、SD-WANハブおよびスポークを自動プロビジョニングするためのシステムを示している。
【
図2】
図2は、特定の実施形態にかかる、SD-WANハブおよびスポークを自動プロビジョニングするための方法のフロー図を示している。
【
図3A】
図3Aは、特定の実施形態にかかる、新たなスポークの自動プロビジョニングのための方法のフロー図を示している。
【
図3B】
図3Bは、特定の実施形態にかかる、新たなハブの自動プロビジョニングのための方法のフロー図を示している。
【
図4】
図4は、特定の実施形態にかかる、コンピュータシステムを示している。
【発明の概要】
【0004】
本発明の態様は、独立請求項に記載され、好ましい特徴は、従属請求項に記載される。一態様の特徴は、単独で、または他の態様と組み合わせて、任意の態様に適用されることができる。
【0005】
一実施形態によれば、システムは、1つ以上のプロセッサと、1つ以上のプロセッサによって実行されると、システムの1つ以上の構成要素に、複数のネットワークハブのうちの1つである第1のネットワークハブから第1の情報を受信することであって、第1の情報が、第1のネットワークハブに関連付けられたプロパティの第1のセットを示すことと、第1の情報を複数のネットワークスポークに公開することであって、複数のネットワークスポークが、第1の情報に基づいて第1のネットワークハブに加入するかどうかを決定することと、複数のネットワークスポークの第1のネットワークスポークから加入情報を受信することであって、加入情報が、第1のネットワークスポークが第1のネットワークハブに加入していることを示すことと、少なくとも1つの動的制御ポリシーを作成して、第1のネットワークハブを介して第1のネットワークスポークについての転送パスを確立することと、を含む動作を実行させる命令を含む1つ以上のコンピュータ可読非一時的記憶媒体と、を含むことができる。
【0006】
さらに、プロパティの第1のセットは、第1のネットワークハブに関連付けられたGPS位置、負荷係数、プラットフォーム、および少なくとも1つのクラウド特性のうちの1つ以上を含む。
【0007】
さらに、少なくとも1つの動的制御ポリシーは、複数のネットワークハブのうちの第1のネットワークハブと少なくとも1つの他のネットワークハブとの間に第2の転送パスをさらに確立する。少なくとも1つの動的制御ポリシーは、少なくとも1つの他のネットワークハブと、少なくとも1つの他のネットワークハブに関連付けられた第2のネットワークスポークとの間に第3の転送パスをさらに確立する。さらに、トラフィックは、作成された少なくとも1つの動的制御ポリシーに基づいて、複数のネットワークハブおよび複数のネットワークスポークを介して設計される。
【0008】
さらに、動作は、第1の情報を少なくとも1つの新たなネットワークスポークに公開することであって、少なくとも1つの新たなネットワークスポークが複数のネットワークハブのうちの第1のネットワークハブに地理的に近接することと、少なくとも1つの新たなネットワークスポークから新たな加入情報を受信することであって、新たな加入情報が、少なくとも1つの新たなネットワークスポークが第1の情報に基づいて第1のネットワークハブに加入していることを示すことと、新たな動的制御ポリシーを作成して、第1のネットワークハブを介して少なくとも1つの新たなネットワークスポークの新たな転送パスを確立することと、を含むことができる。
【0009】
さらに、動作は、新たなネットワークハブから第2の情報を受信することであって、第2の情報が、新たなネットワークハブに関連付けられたプロパティの第2のセットを示すことと、第2の情報を複数のネットワークスポークに公開することであって、複数のネットワークスポークが、第2の情報に基づいて新たなネットワークハブに加入するかどうかを決定することと、複数のネットワークスポークのうちの少なくとも1つのネットワークスポークから更新された加入情報を受信することであって、更新された加入情報が、複数のネットワークスポークのうちの少なくとも1つのネットワークスポークが新たなネットワークハブに加入していることを示すことと、更新された加入情報に基づいて動的制御ポリシーを更新し、新たなネットワークハブを介して少なくとも1つのネットワークスポークについての更新された転送パスを確立することと、を含むことができる。
【0010】
別の実施形態によれば、方法は、複数のネットワークのうちの1つである第1のネットワークハブから第1の情報を受信するステップであって、第1の情報が、第1のネットワークハブに関連付けられたプロパティの第1のセットを示す、受信するステップと、第1の情報を複数のネットワークスポークに公開するステップであって、複数のネットワークスポークが、第1の情報に基づいて第1のネットワークハブに加入するかどうかを決定する、公開するステップと、複数のネットワークスポークのうちの第1のネットワークスポークから加入情報を受信するステップであって、加入情報が、第1のネットワークハブに加入している第1のネットワークスポークを示す、受信するステップと、少なくとも1つの動的制御ポリシーを作成し、第1のネットワークハブを介して第1のネットワークスポークの転送パスを確立するステップと、を含むことができる。
【0011】
さらに別の実施形態によれば、1つ以上のコンピュータ可読非一時的記憶媒体は、プロセッサによって実行されると、複数のネットワークハブのうちの1つである第1のネットワークハブから第1の情報を受信することであって、第1の情報が、第1のネットワークハブに関連付けられたプロパティの第1のセットを示すことと、第1の情報を複数のネットワークスポークに公開することであって、複数のネットワークスポークが、第1の情報に基づいて第1のネットワークハブに加入するかどうかを決定することと、複数のネットワークスポークのうちの第1のネットワークスポークから加入情報を受信することであって、加入情報が、第1のネットワークハブに加入している第1のネットワークスポークを示すことと、少なくとも1つの動的制御ポリシーを作成し、第1のネットワークハブを介して第1のネットワークスポークの転送パスを確立することと、を含む、動作の実行を引き起こす命令を具現化することができる。
【0012】
本開示のある特定の実施形態の技術的利点は、以下のうちの1つ以上を含むことができる。本明細書で説明するシステムおよび方法は、ハブ/スポークトポロジにおいて構成されたネットワーク内のハブおよびスポークの自動プロビジョニングを可能にすることができる。本開示によれば、ハブ機能がアドバタイズされることができ、スポークがハブを発見して加入することができ、動的制御ポリシーがハブからスポークへの各接続について生成されることができる。本開示は、ネットワークオペレータによる介入および管理をほとんど必要とせずに、ネットワークのスケーラビリティを可能にすることができる。
【0013】
他の技術的利点は、以下の図面、説明、および特許請求の範囲から、当業者にとって容易に明らかになるであろう。さらに、特定の利点が上記列挙されているが、様々な実施形態は、列挙された利点の全て、一部を含むか、または全く含まない場合がある。
【発明を実施するための形態】
【0014】
地球規模の労働力がますますモバイル化するにつれて、リモートユーザは、ソフトウェア定義のワイドエリアネットワーク(SD-WAN)を介してインターネットベースおよびイントラネットベースの企業リソースにアクセスする。SD-WANは、既存のネットワークトポロジに仮想オーバーレイとして展開され、ソフトウェア定義の概念を使用して、ワイドエリアネットワーク全体にトラフィックを分散する。SD-WANネットワークは、急速に成長しており、新たなブランチサイトが絶えずネットワークに追加されている。従来、各エンジニアリングポリシーは、コントローラ上のブランチサイトに関連付けられていた。フルメッシュトポロジでは、数百または数千の接続が設計される必要があるため、これはますます面倒になる可能性がある。ハブおよびスポークトポロジは、多少管理しやすいが、従来のシステムは、それにもかかわらずネットワーク管理者によって各ハブおよびスポーク接続の手動設定を必要とする。本開示は、アドバタイジングハブ機能によるものを含め、SD-WANネットワークのハブ/スポークトポロジにおけるハブおよびスポークの動的自動プロビジョニングを可能にし、スポークによるハブの発見および選択を可能にし、集中制御ポリシーを自動的に生成することを可能にする。
【0015】
図1は、本開示にかかる、SD-WANハブおよびスポークを自動プロビジョニングするためのシステム100を示している。システム100は、複数のネットワークハブ120、122、124を含むことができる。実施形態では、複数のネットワークハブ120、122、124は、企業の支社に配置されたルータに対応することができる。複数のネットワークハブ120、122、124の各ネットワークハブは、特定の地理的領域に関連付けられることができる。例として、第1のネットワークハブ120は、カリフォルニア州に物理的に配置されることができるかまたは仮想的に(パブリッククラウドまたはプライベートクラウド内に)配置されることができる。第2のネットワークハブ122は、テキサス州に物理的に配置されることができるかまたは仮想的にパブリッククラウドもしくはプライベートクラウド内に配置されることができる。第3のネットワークハブ124は、ニューヨーク州に物理的に配置されるかまたは仮想的に(パブリッククラウドまたはプライベートクラウド内に)配置されることができる。複数のネットワークハブ120、122、124のそれぞれは、プロパティのセットに関連付けられることができる。複数のネットワークハブ120、122、124のうちの所与のネットワークハブについて、プロパティのセットは、以下のうちの1つ以上を含むことができる:所与のネットワークハブのグローバルポジショニングシステム(GPS)の位置、その負荷係数、そのプラットフォーム、そのクラウド特性(クラウドの親和性など)など。負荷係数は、ネットワークハブの帯域幅負荷の現在または平均の計算である。プラットフォームとは、一連のキャパシティパラメータに関連付けられるネットワークラッシュの特定の物理または仮想プラットフォームを指し、これは、最大転送キャパシティ、中央処理装置(CPU)の数、およびネットワークハブのメモリ量を含むことができる。クラウド特性とは、一連のクラウドアプリケーションとのネットワークハブの近接性または親和性を指す。例えば、ネットワークハブは、Office 360またはSalesforceアプリケーションと同じ場所に配置されることができる。
【0016】
システム100は、複数のネットワークスポーク130、132、134をさらに含むことができる。実施形態では、複数のネットワークスポーク130、132、134は、企業の支社のルータに対応することができる。各ネットワークスポーク130、132、134は、特定のネットワークハブに物理的または仮想的に地理的に近接していてもよい。例として、第1のネットワークスポーク130は、サンフランシスコの支社に配置されることができ、カリフォルニア州の第1のネットワークハブ120に地理的に近接して配置されることができる。第2のネットワークスポーク132は、ダラスの支社とすることができ、テキサス州の第2のネットワークハブ122に地理的に近接して配置されることができる。第3のネットワークスポーク134は、ニューヨーク市の支社とすることができ、ニューヨーク州の第3のネットワークハブ124に地理的に近接して配置されることができる。
【0017】
複数のネットワークハブ120、122、124および複数のネットワークスポーク130、132、134は、コントローラ110と通信し、ネットワーク140を介して、複数のネットワークハブ120、122、124のうちの1つ以上および複数のネットワークスポーク130、132、134のうちの1つ以上と通信するように構成されることができる。
【0018】
動作中、複数のネットワークハブ120、122、124の各ネットワークハブは、ハブとして動作するその能力、ならびにそのプロパティをコントローラ110にアドバタイズすることができる。具体的には、コントローラ110は、複数のネットワークハブ120、122、124のうちの少なくとも1つのネットワークハブから「第1の情報」を受信することができる。第1の情報は、第1のネットワークハブ120の1つ以上のプロパティ(GPS位置、負荷係数、ハブプラットフォーム、少なくとも1つのクラウド特性など)に対応することができる。例示の目的で、本開示は、第1のネットワークハブ120から第1の情報を受信するコントローラを説明するが、コントローラ110は、複数のネットワークハブ120、122、124からのネットワークハブのいずれかから説明された情報を受信することができることを理解されたい。次に、コントローラ110は、第1の情報を複数のネットワークスポーク130、132、134に公開することができる。複数のネットワークスポーク130、132、134のそれぞれは、それ自体のローカルポリシーを適用して、第1の情報に基づいて第1のネットワークハブ120に加入するかどうかを決定することができる。例えば、第1のネットワークスポーク130は、ローカルポリシーを適用して、第1のネットワークハブ120のGPS位置および負荷係数に基づいて、それが第1のネットワークハブ120に加入することを望むと決定することができる。第1のネットワークスポーク130は、第1のネットワークハブ120をその一次ハブとして指定することができ、別のネットワークハブ(第2のネットワークハブ122など)をその二次またはバックアップハブとして指定することができる。第1のネットワークスポーク130は、その加入情報(すなわち、第1のネットワークスポーク130による第1のネットワークハブ120および/または第2のネットワークハブ122への加入を示す情報)をコントローラ110に送信することができる。
【0019】
コントローラ110は、第1のネットワークスポーク130から加入情報を受信することができ、動的制御ポリシーを作成し、それを第1のネットワークスポーク130に適用することができる。動的制御ポリシーは、第1のネットワークスポーク130と第1のネットワークハブ120との間の通信リンク、第1のネットワークハブ120を介した第1のネットワークスポーク130についての転送パスを確立することができる。本開示は、第1のネットワークハブ120および第1のネットワークスポーク130に関してシステム100の動作を説明するが、本明細書において説明する概念は、システム100の複数のネットワークハブ120、122、124およびネットワークスポーク130、132、134のいずれにも適用されることができることを理解されたい。
【0020】
実施形態では、コントローラ110は、別の動的制御ポリシーを作成し、第1のネットワークハブ120と、複数のネットワークハブ120、122、124のうちの少なくとも1つの他のネットワークハブ(第2のネットワークハブ122など)との間に第2の転送パスを確立することができる。さらに、コントローラ110は、別の動的制御ポリシーを確立し、少なくとも1つの他のネットワークハブ(例えば、第2のネットワークハブ122など)と、少なくとも1つの他のネットワークハブ(第2のネットワークハブ122)に関連付けられた少なくとも1つの他のネットワークスポーク(第2のネットワークスポーク132など)との間に第3の転送パスを確立することができる。1つ以上のそのような転送パスは、複数のネットワークスポーク130、132、134が互いに通信することを可能にすることができる。したがって、上記の例では、コントローラ110によって確立された動的制御ポリシーは、第1のネットワークスポーク130が、第1のネットワークスポーク130から第1のネットワークハブ120に、次に第1のネットワークハブ120から第2のネットワークハブ122に、そして最後に第2のネットワークハブ122から第2のネットワークスポーク132に至るパスを介して第2のネットワークスポーク132と通信することを可能にすることができる。
【0021】
上述した自動プロビジョニングステップは、ハブおよびスポークトポロジを動的に作成することができ、コントローラ110によって作成された動的制御ポリシーのうちの1つ以上に基づいて、複数のネットワークハブ120、122、124および複数のネットワークスポーク130、132、134を介してトラフィックが設計されることができる。
【0022】
実施形態では、1つ以上の新たなネットワークスポークが追加され、システム100に自動プロビジョニングされてもよい。例えば、企業が成長するにつれて、システム100のネットワーク140に新たなブランチサイト(少なくとも1つの新たなネットワークスポーク130aなど)を追加することが望ましい場合がある。少なくとも1つの新たなネットワークスポーク130aは、複数のネットワークハブ120、122、124のうちの少なくとも1つのネットワークハブに物理的または仮想的に地理的に近接していてもよい。
図1では、新たなネットワークスポーク130aが、第1のネットワークハブ120に地理的に近接して示されている。
【0023】
新たなネットワークスポーク130aは、コントローラ110に接続し、ネットワーク内の複数のネットワークハブ120、122、124に関する情報を受信することができる。具体的には、コントローラ110は、複数のネットワークハブ120、122、124のそれぞれに関連付けられた1つ以上のプロパティ(GPS位置、負荷係数、ハブプラットフォーム、少なくとも1つのクラウド特性など)を新たなネットワークスポーク130aに公開することができる。新たなネットワークスポーク130aは、そのローカルポリシーを適用して、複数のネットワークハブ120、122、124のうちの少なくとも1つに加入するかどうかを決定することができる。例えば、新たなネットワークスポーク130aは、ローカルポリシーを適用し、例えばそのGPS位置に基づいて第1のネットワークハブ120に加入すると決定することができる。新たなネットワークスポーク130aは、新たな加入情報(すなわち、第1のネットワークハブ120に加入している新たなネットワークスポーク130aを示す情報)をコントローラ110に送信することができる。コントローラ110は、少なくとも1つの新たなネットワークスポーク130aから新たな加入情報(第1の情報に基づいて第1のネットワークハブ120に加入している新たなネットワークスポーク130aを示す新たな加入情報)を受信することができる。次に、コントローラ110は、新たな動的制御ポリシーを作成し、第1のネットワークハブ120を介して新たなネットワークスポーク130aについての新たな転送パスを確立することができる。
【0024】
別の実施形態では、1つ以上の新たなネットワークハブが追加され、システム100に自動プロビジョニングされてもよい。例えば、ネットワーク140に接続するブランチサイトまたはネットワークスポークが増えるにつれて、所与のネットワークハブの容量が減少し始める場合がある。例として、
図1では、新たなブランチサイト(新たなネットワークスポーク130aなど)がネットワークに追加され、第1のネットワークハブ120に接続しており、第1のネットワークハブ120は、閾値容量に到達する場合があり、それによって新たなカリフォルニア州における新たなネットワークハブを必要とする。その結果、企業は、新たなネットワークハブ120aをネットワーク140に追加することができる。新たなネットワークハブ120aは、物理サイトであってもよく、またはクラウドもしくはネットワーク140においてホストされる仮想ハブであってもよい。新たなネットワークハブ120aは、ハブとして動作するその機能、およびそのプロパティをコントローラ110にアドバタイズすることができる。具体的には、コントローラ110は、新たなネットワークハブ120aから「第2の情報」を受信することができる。第2の情報は、新たなネットワークハブ120aに関連付けられた第2のプロパティのセット(GPS位置、負荷係数、ハブプラットフォーム、少なくとも1つのクラウド特性、および/または他のプロパティのうちの1つ以上を含むことができる)に対応することができる。次に、コントローラ110は、新たなネットワークハブ120aの第2の情報を複数のネットワークスポーク130、130a、132、134に公開することができる。複数のネットワークスポーク130、130a、132、134のローカルポリシーに応じて、複数のネットワークスポーク130、130a、132、134からの少なくとも1つのネットワークスポークは、第2の情報に基づいて新たなネットワークハブ120aに加入すると決定することができる。少なくとも1つのネットワークスポークは、複数のネットワークスポーク130、130a、132、134のいずれであってもよいが、説明のために、少なくとも1つのネットワークスポークは、ネットワークスポーク130aとすることができる。少なくとも1つのネットワークスポーク130a(現在、第1のネットワークハブ120に関連付けられている)は、その更新された加入情報(すなわち、少なくとも1つのネットワークスポーク130aが新たなネットワークハブ120aに加入していることを示す情報)をコントローラ110に送信することができる。コントローラ110は、少なくとも1つのネットワークスポーク130aから更新された加入情報を受信し、更新された加入情報に基づいて動的制御ポリシーを更新して、新たなネットワークハブ120aを介して少なくとも1つのネットワークスポーク130aについての更新された転送パスを確立することができる。実施形態では、少なくとも1つのネットワークスポーク130aは、既存の/現在のネットワークハブ120への接続を切断する前に、新たなネットワークハブ120aへの接続を確立することによって、中断することなく再調整されることができる。
【0025】
要するに、上述した
図1のシステム100によれば、ネットワークハブ120、120a、122、124は、それらのハブ機能およびプロパティをコントローラ110にアドバタイズすることができる。コントローラ110は、プロパティをネットワークスポーク130、130a、132、134に公開することができ、ネットワークスポーク130、130a、132、134のそれぞれは、ローカルポリシーを適用して、一次および/または二次ネットワークハブに加入すると決定し、その加入をコントローラ110に送信することができ、次に、コントローラ110は、動的制御ポリシーを作成して、加入したネットワークハブを介して各ネットワークスポークについての転送パスを確立することができる。別の実施形態では、コントローラ110は、(ネットワークスポークではなく)どのネットワークハブに所与のネットワークスポークが加入および/または関連付けられるかを決定することができる。コントローラ110は、GPS位置、負荷係数、および複数のネットワークハブ120、120a、122、124および/またはネットワークスポーク130に関連付けられた他のパラメータを含む、ネットワーク140のそのグローバルビューに基づいてこの決定を行うことができる。
【0026】
ここで
図2を参照すると、本開示にかかる、SD-WANハブおよびスポークを自動プロビジョニングするための方法200のフロー図が示されている。方法200は、ステップ210において開始することができる。ステップ220において、第1の情報が第1のネットワークハブからコントローラによって受信されることができる。第1のネットワークハブは、複数のネットワークハブのうちの1つを備えることができる。複数のネットワークハブは、企業の支社に対応することができる。各ネットワークハブは、特定の物理的または仮想的な地理的領域に関連付けられることができる。第1のネットワークハブから受信した第1の情報は、第1のネットワークハブに関連付けられたプロパティの第1のセットを示すことができる。プロパティの第1のセットは、例として、
図1と合わせて上述したように、GPS位置、負荷係数、プラットフォーム、少なくとも1つのクラウド特性、および/または第1のネットワークハブの他のそのようなプロパティのうちの1つ以上を含むことができる。例示の目的で、方法200は、コントローラが第1のネットワークハブから第1の情報を受信することを説明しているが、コントローラは、ネットワーク内の複数のネットワークハブのうちのいずれかまたは全てから同様の情報を受信することができることを理解されたい。
【0027】
ステップ230において、第1の情報は、コントローラによって複数のネットワークスポークに公開され、複数のネットワークスポークは、第1の情報に基づいて第1のネットワークハブに加入するかどうかを決定することができる。実施形態では、複数のネットワークスポークのそれぞれは、それ自体のローカルポリシーを適用することによって、第1の情報に基づいて第1のネットワークハブに加入するかどうかを決定することができる。例えば、第1のネットワークスポークは、ローカルポリシーを適用して、GPS位置、負荷係数、および/または第1のネットワークハブの他の任意のプロパティに基づいて、第1のネットワークハブに加入したいと決定することができる。実施形態では、複数のネットワークスポークは、企業の支社に対応することができる。複数のネットワークスポークのうちの各ネットワークスポークは、複数のネットワークハブのうちの少なくとも1つのネットワークハブに物理的または仮想的に地理的に近接していてもよい。さらに、ステップ230は、コントローラが第1のネットワークハブの第1の情報を複数のネットワークスポークに公開することを説明しているが、コントローラは、複数のネットワークハブのうちのいずれかまたは全てから受信した情報を複数のネットワークスポークに公開することができることを理解されたい。
【0028】
ステップ240において、加入情報が第1のネットワークスポークから受信されたかどうかに関して、コントローラによって決定が行われることができる。加入情報は、第1のネットワークスポークが第1のネットワークハブに加入していることを示すことができる。第1のネットワークスポークは、上述したようにローカルポリシーが適用されて、第1の情報に基づいて第1のネットワークハブに加入するかどうかを決定することができる。次いで、第1のネットワークスポークは、第1の情報に基づいて第1のネットワークハブに加入する第1のネットワークスポークを示す加入情報を送信することができる(コントローラは受信することができる)。実施形態では、第1のネットワークスポークの加入情報は、第1のネットワークハブをその一次ハブとして指定することができ、複数のネットワークハブからの別のネットワークハブをその二次またはバックアップハブとして指定することができる。目的または例示のために、方法200は、コントローラが第1のネットワークスポークから加入情報を受信することを説明しているが、コントローラは、ネットワーク内の複数のネットワークスポークのいずれからも同様の加入情報を受信することができることを理解されたい。
【0029】
ステップ240において、加入情報が第1のネットワークスポークから受信されていないと決定された場合、本方法は、ステップ260において終了することができる。しかしながら、ステップ240において、第1のネットワークスポークによる第1のネットワークハブへの加入を示す加入情報が第1のネットワークスポークから受信されたと決定された場合、本方法は、ステップ230に進むことができ、第1のネットワークハブを介して第1のネットワークスポークについての転送パスを確立するために、動的制御ポリシーがコントローラによって作成されることができる。実施形態では、動的制御ポリシーは、複数のネットワークハブのうちの第1のネットワークハブと少なくとも1つの他のネットワークハブとの間に第2の転送パスを確立することをさらに含むことができる。別の実施形態では、動的制御ポリシーは、複数のネットワークハブのうちの少なくとも1つの他のネットワークハブと複数のネットワークスポークのうちのネットワークスポークとの間に第3の転送パスを確立することができる。したがって、例として、コントローラによって確立された動的制御ポリシーは、第1のネットワークスポークが、第1のネットワークスポークから第1のネットワークハブ、次に第1のネットワークハブから少なくとも1つの他のネットワークハブ、そして最後に少なくとも1つの他のネットワークハブから少なくとも1つの他のネットワークスポークへのパスを介して、少なくとも1つの他のネットワークストロークと通信することを可能にすることができる。ステップ260において、本方法は、終了することができる。
【0030】
ここで
図3Aを参照すると、
図2の方法200のフロー図の続きである方法300aが示されている。方法300aは、ネットワークに追加された少なくとも1つの新たなネットワークスポークの自動プロビジョニングのフロー図を示している。方法300aは、方法200の続きであるため、方法300aにおいて使用される用語は、方法200において使用される同様の用語に対応することができる。方法300aは、ネットワーク内に少なくとも1つの新たなブランチサイト(または少なくとも1つの新たなネットワークスポーク)が既に追加またはスピンアップされていると仮定することができる。少なくとも1つの新たなネットワークスポークは、コントローラに接続し、
図2のステップ220において識別された第1のネットワークハブを含む、ネットワーク内の複数のネットワークハブに関する情報を要求することができる。例示の目的で、以下の方法300aは、第1のネットワークハブに関連して説明される(すなわち、例として、方法300aは、ネットワークに追加された少なくとも1つの新たなネットワークスポークが第1のネットワークハブに加入すると仮定する)が、方法300aが適用されることができ、少なくとも1つの新たなネットワークスポークがネットワーク内の複数のネットワークハブのうちの任意のネットワークハブに加入することができることを理解されたい。
【0031】
本方法は、ステップ305において開始することができる。ステップ310において、(
図2のステップ220において説明したように、第1のネットワークハブから受信した)第1の情報は、少なくとも1つの新たなネットワークスポークに公開されることができ、少なくとも1つの新たなネットワークスポークは、複数のネットワークハブのうちの第1のネットワークハブに物理的または仮想的に地理的に近接している。第1の情報は、例として、GPS位置、負荷係数、プラットフォーム、少なくとも1つのクラウド特性、および/または第1のネットワークハブの他のそのようなプロパティのうちの1つ以上を含む、第1のネットワークハブに関連付けられたプロパティの第1のセットを示すことができる。ステップ310は、第1のネットワークハブの第1の情報が少なくとも1つの新たなネットワークスポークに公開されることを説明しているが、コントローラは、複数のネットワークハブのうちのいずれかまたは全てから受信した情報を少なくとも1つの新たなネットワークスポークに公開することができることを理解されたい。
【0032】
ステップ315において、新たな加入情報が少なくとも1つの新たなネットワークスポークから受信されたかどうかに関して、コントローラによって決定が行われる。新たな加入情報は、少なくとも1つの新たなネットワークスポークが第1のネットワークハブに加入していることを示すことができる。具体的には、少なくとも1つの新たなネットワークスポークは、ローカルポリシーを適用して、第1の情報に基づいて第1のネットワークハブに加入するかどうかを決定することができる。例えば、少なくとも1つの新たなネットワークスポークは、ローカルポリシーを適用し、そのGPS位置、その負荷係数、および/またはその他のプロパティに基づいて、第1のネットワークハブに加入することを決定することができる。少なくとも1つの新たなネットワークスポークが第1のネットワークハブに加入すると決定した場合、少なくとも1つの新たなネットワークスポークは、新たな加入情報(すなわち、少なくとも1つの新たなネットワークスポークが第1のネットワークハブに加入していることを示す情報)をコントローラに送信することができる。
【0033】
ステップ315において、それが第1のネットワークハブに加入したことを示す新たな加入情報が少なくとも1つの新たなネットワークスポークから受信されていないと決定された場合、本方法は、ステップ325において終了することができる。しかしながら、少なくとも1つの新たなネットワークスポークによる第1のネットワークハブへの加入を示す新たな加入情報が少なくとも1つの新たなネットワークスポークから受信されたと決定された場合、本方法は、ステップ320に進むことができ、第1のネットワークハブを介して少なくとも1つの新たなネットワークスポークについての新たな転送パスを確立するために新たな動的制御ポリシーが作成されることができる。ステップ325において、本方法は、終了することができる。
【0034】
ここで
図3Bを参照すると、
図2の方法200のフロー図の続きである方法300bが示されている。方法300bは、ネットワークに追加された新たなネットワークハブの自動プロビジョニングのフロー図を示している。方法300bは、新たなネットワークハブが、例えば追加の容量が必要な物理的または仮想的な地理的領域に追加されていることを仮定している。新たなネットワークハブは、ハブとして動作する機能およびそのプロパティをコントローラにアドバタイズすることができる。
【0035】
本方法は、ステップ330において開始することができる。ステップ335において、コントローラによって新たなネットワークハブから第2の情報が受信されることができる。第2の情報は、新たなネットワークハブに関連付けられたプロパティの第2のセットを示すことができる。具体的には、プロパティの第2のセットは、GPS位置、負荷係数、ハブプラットフォーム、少なくとも1つのクラウド特性、および/または新たなネットワークハブに関連付けられた他のそのようなプロパティのうちの1つ以上を含むことができる。ステップ340において、第2の情報は、コントローラによって複数のネットワークスポークに公開されることができ、複数のネットワークスポークは、第2の情報に基づいて新たなネットワークハブに加入するかどうかを決定することができる。複数のネットワークスポークのそれぞれのローカルポリシーに応じて、複数のネットワークスポークからの少なくとも1つのネットワークスポークは、第2の情報に基づいて新たなネットワークハブに加入すると決定することができる。少なくとも1つのネットワークスポークが新たなネットワークハブに加入すると決定した場合、少なくとも1つのネットワークスポークは、更新された加入情報をコントローラに送信することができる。
【0036】
ステップ345において、少なくとも1つのネットワークスポークが新たなネットワークハブに加入していることを示す、更新された加入情報が少なくとも1つのネットワークスポークから受信されたかどうかに関して、コントローラによって決定が行われることができる。ステップ345において、更新された加入情報が少なくとも1つのネットワークスポークから受信されていないと決定された場合、本方法は、ステップ355において終了することができる。しかしながら、ステップ345において、更新された加入情報が少なくとも1つのネットワークスポークから受信されたと決定された場合、本方法は、ステップ350に進むことができ、動的制御ポリシーは、更新された加入情報に基づいて更新され、新たなネットワークハブを介して少なくとも1つのネットワークスポークについての更新された転送パスを確立することができる。実施形態では、少なくとも1つのネットワークスポークは、既存の/現在のネットワークハブへの接続を切断する前に、新たなネットワークハブへの接続を確立することにより、中断することなく再調整されることができる。本方法は、ステップ355において終了することができる。
【0037】
上述したように、
図2、
図3A、および
図3Bの方法200、300a、および300bによれば、本開示のステップは、一般に、以下のように説明されることができる:ネットワークハブは、それらのハブ機能およびプロパティをコントローラにアドバタイズすることができ、コントローラは、プロパティをネットワークスポークに公開することができ、ネットワークスポークのそれぞれは、ローカルポリシーを適用して、一次および/または二次ネットワークハブに加入すると決定し、その加入をコントローラに送信することができ、次に、コントローラは、動的制御ポリシーを作成して、加入されたネットワークハブを介して各ネットワークスポークについての転送パスを確立することができる。別の実施形態では、コントローラは、(ネットワークスポークではなく)所与のネットワークスポークがどのネットワークハブに加入および/または関連付けられることができるかを決定することができる。コントローラは、GPS位置、負荷係数、および複数のネットワークハブおよび/またはネットワークスポークに関連付けられた他のパラメータを含む、ネットワークのそのグローバルビューに基づいてこの決定を行うことができる。
【0038】
要するに、本開示のシステムおよび方法は、SD-WANハブおよびスポークトポロジネットワークにおけるハブおよびスポークの自動プロビジョニングを可能にすることができる。本開示の概念は、ネットワークオペレータからの介入がほとんどまたは全くないハブおよびスポークを動的且つ弾性的にプロビジョニングする機構および手順を定義し、それによってネットワークシステムの効率を高める。換言すれば、ネットワークハブ対応デバイスが追加されることができ、ネットワークスポークが選択されてゼロタッチ構成によって接続することができる。さらに、ハブおよびスポークトンネルの自動プロビジョニングならびに集中制御ポリシーは、新たなスポークサイトの追加または新たなハブが追加されたときのスポークサイトの再分配の運用コストを削減することができる。さらに、ネットワークスポークは、ネットワークハブの追加または削除を反映するように、またはネットワーク内の要件の変化に基づいて、定期的にバランスを取ることができる。
【0039】
ここで、例示的なコンピュータシステム400が示されている
図4を参照する。特定の実施形態では、1つ以上のコンピュータシステム400は、本明細書において説明または図示される1つ以上の方法の1つ以上のステップを実行する。特定の実施形態では、1つ以上のコンピュータシステム400は、本明細書において説明または図示される機能を提供する。特定の実施形態では、1つ以上のコンピュータシステム400上で実行されるソフトウェアは、本明細書において説明もしくは図示される1つ以上の方法の1つ以上のステップを実行するか、または本明細書において説明もしくは図示される機能を提供する。特定の実施形態は、1つ以上のコンピュータシステム400の1つ以上の部分を含む。本明細書では、コンピュータシステムへの言及は、必要に応じて、コンピューティングデバイスを包含することができ、逆もまた同様である。さらに、コンピュータシステムへの言及は、必要に応じて、1つ以上のコンピュータシステムを包含することができる。
【0040】
本開示は、任意の好適な数のコンピュータシステム400を企図している。本開示は、任意の好適な物理形態をとるコンピュータシステム400を企図している。限定としてではなく例として、コンピュータシステム400は、組み込みコンピュータシステム、システムオンチップ(SOC)、シングルボードコンピュータシステム(SBC)(例えば、コンピュータオンモジュール(COM)またはシステムオンモジュール(SOM)など)、デスクトップコンピュータシステム、ラップトップもしくはノートブックコンピュータシステム、インタラクティブキオスク、メインフレーム、コンピュータシステムのメッシュ、携帯電話、携帯情報端末(PDA)、サーバ、タブレットコンピュータシステム、拡張/仮想現実デバイス、またはこれらのうちの2つ以上の組み合わせとすることができる。必要に応じて、コンピュータシステム400は、1つ以上のコンピュータシステム400を含んでもよく、一体型または分散型であってもよく、複数の位置にまたがってもよく、複数のマシンにまたがってもよく、複数のデータセンターにまたがってもよく、または1つ以上のネットワークに1つ以上のクラウド構成要素を含むことができるクラウドに常駐してもよい。必要に応じて、1つ以上のコンピュータシステム400は、実質的な空間的または時間的制限なしに、本明細書において説明または図示される1つ以上の方法の1つ以上のステップを実行することができる。限定ではなく例として、1つ以上のコンピュータシステム400は、リアルタイムまたはバッチモードで、本明細書において説明または図示される1つ以上の方法の1つ以上のステップを実行することができる。1つ以上のコンピュータシステム400は、必要に応じて、本明細書において説明または図示される1つ以上の方法の1つ以上のステップを、異なる時間または異なる位置で実行することができる。
【0041】
特定の実施形態では、コンピュータシステム400は、プロセッサ402、メモリ404、ストレージ406、入力/出力(I/O)インターフェース408、通信インターフェース410、およびバス412を含む。本開示は、特定の配置における特定の数の特定の構成要素を有する特定のコンピュータシステムを説明および図示するが、本開示は、任意の好適な配置における任意の好適な数の任意の好適な構成要素を有する任意の好適なコンピュータシステムを企図する。
【0042】
特定の実施形態では、プロセッサ402は、コンピュータプログラムを構成するものなど、命令を実行するためのハードウェアを含む。限定としてではなく例として、命令を実行するために、プロセッサ402は、内部レジスタ、内部キャッシュ、メモリ404、またはストレージ406から命令を取り出し(またはフェッチし)、それらをデコードして実行し、次に、1つ以上の結果を、内部レジスタ、内部キャッシュ、メモリ404、またはストレージ406に書き込むことができる。特定の実施形態では、プロセッサ402は、データ、命令、またはアドレスについての1つ以上の内部キャッシュを含むことができる。本開示は、必要に応じて、任意の好適な数の任意の好適な内部キャッシュを含むプロセッサ402を企図している。限定としてではなく例として、プロセッサ402は、1つ以上の命令キャッシュ、1つ以上のデータキャッシュ、および1つ以上のトランスレーションルックアサイドバッファ(TLB)を含むことができる。命令キャッシュ内の命令は、メモリ404もしくはストレージ406内の命令のコピーとすることができ、命令キャッシュは、プロセッサ402において実行される命令が、プロセッサ402において実行される後続の命令によるアクセスのために、もしくはメモリ404もしくはストレージ406への書き込みのためにプロセッサ402において実行される前の命令の結果、または他の適切なデータについて動作するようにメモリ404またはストレージ406を高速化することができる。データキャッシュは、プロセッサ402による読み取りまたは書き込み動作を高速化することができる。TLBは、プロセッサ402についての仮想アドレス変換を高速化することができ、特定の実施形態では、プロセッサ402は、データ、命令、またはアドレスについての1つ以上の内部レジスタを含むことができる。本開示は、必要に応じて、任意の好適な数の任意の好適な内部レジスタを含むプロセッサ402を企図している。必要に応じて、プロセッサ402は、1つ以上の算術論理ユニット(ALU)を含むことができるか、マルチコアプロセッサとすることができるか、または1つ以上のプロセッサ402を含むことができる。本開示は、特定のプロセッサを説明および図示するが、本開示は、任意の好適なプロセッサを企図している。
【0043】
特定の実施形態では、メモリ404は、プロセッサ402が実行するための命令またはプロセッサ402が動作するためのデータを記憶するためのメインメモリを含む。限定ではなく例として、コンピュータシステム400は、ストレージ406または別のソース(例えば、別のコンピュータシステム400など)からメモリ404に命令をロードすることができる。次に、プロセッサ402は、メモリ404から内部レジスタまたは内部キャッシュに命令をロードすることができる。命令を実行するために、プロセッサ402は、内部レジスタまたは内部キャッシュから命令を取り出し、それらをデコードすることができる。命令の実行中または実行後に、プロセッサ402は、(中間または最終結果とすることができる)1つ以上の結果を内部レジスタまたは内部キャッシュに書き込むことができる。次に、プロセッサ402は、それらの結果のうちの1つ以上をメモリ404に書き込むことができる。特定の実施形態では、プロセッサ402は、(ストレージ406または他の場所とは対照的に)1つ以上の内部レジスタもしくは内部キャッシュまたはメモリ404内の命令のみを実行し、(ストレージ406または他の場所とは対照的に)1つ以上の内部レジスタもしくは内部キャッシュまたはメモリ404内のデータのみについて動作する。(それぞれがアドレスバスおよびデータバスを含むことができる)1つ以上のメモリバスは、プロセッサ402をメモリ404に結合することができる。バス412は、以下に説明するように、1つ以上のメモリバスを含むことができる。特定の実施形態では、1つ以上のメモリ管理ユニット(MMU)は、プロセッサ402とメモリ404との間に常駐し、プロセッサ402によって要求されるメモリ404へのアクセスを容易にする。特定の実施形態では、メモリ404は、ランダムアクセスメモリ(RAM)を含む。このRAMは、必要に応じて、揮発性メモリとすることができる。必要に応じて、このRAMは、ダイナミックRAM(DRAM)またはスタティックRAM(SRAM)とすることができる。さらに、必要に応じて、このRAMは、シングルポートまたはマルチポートRAMとすることができる。本開示は、任意の好適なRAMを企図している。メモリ404は、必要に応じて、1つ以上のメモリ404を含むことができる。本開示は、特定のメモリを説明および図示するが、本開示は、任意の好適なメモリを企図している。
【0044】
特定の実施形態では、ストレージ406は、データまたは命令のための大容量ストレージを含む。限定としてではなく例として、ストレージ406は、ハードディスクドライブ(HDD)、フロッピーディスクドライブ、フラッシュメモリ、光ディスク、磁気光学ディスク、磁気テープ、もしくはユニバーサルシリアルバス(USB)ドライブ、またはこれらのうちの2つ以上の組み合わせを含むことができる。ストレージ406は、必要に応じて、取り外し可能または取り外し不可能な(または固定された)媒体を含むことができる。ストレージ406は、必要に応じて、コンピュータシステム400の内部または外部とすることができる。特定の実施形態では、ストレージ406は、不揮発性のソリッドステートメモリである。特定の実施形態では、ストレージ406は、読み取り専用メモリ(ROM)を含む。必要に応じて、このROMは、マスクプログラムROM、プログラマブルROM(FROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、電気的変更可能ROM(EAROM)、もしくはフラッシュメモリ、またはこれらの2つ以上の組み合わせとすることができる。本開示は、任意の好適な物理形態をとる大容量ストレージ406を企図している。ストレージ406は、必要に応じて、プロセッサ402とストレージ406との間の通信を容易にする1つ以上のストレージ制御ユニットを含むことができる。必要に応じて、ストレージ406は、1つ以上のストレージ406を含むことができる。本開示は、特定のストレージを説明および図示するが、本開示は、任意の好適なストレージを企図している。
【0045】
特定の実施形態では、I/Oインターフェース408は、ハードウェア、ソフトウェア、またはその双方を含み、コンピュータシステム400と1つ以上のI/Oデバイスとの間の通信のための1つ以上のインターフェースを提供する。コンピュータシステム400は、必要に応じて、これらのI/Oデバイスのうちの1つ以上を含むことができる。これらのI/Oデバイスのうちの1つ以上は、人とコンピュータシステム400との間の通信を可能にすることができる。限定ではなく例として、I/Oデバイスは、キーボード、キーパッド、マイク、モニタ、マウス、プリンタ、スキャナ、スピーカー、スチルカメラ、スタイラス、タブレット、タッチスクリーン、トラックボール、ビデオカメラ、別の好適なI/Oデバイス、またはこれらのうちの2つ以上の組み合わせを含むことができる。I/Oデバイスは、1つ以上のセンサを含んでもよい。本開示は、任意の好適なI/Oデバイスおよびそれらに適した任意のI/Oインターフェース408を企図している。必要に応じて、I/Oインターフェース408は、プロセッサ402がこれらのI/Oデバイスのうちの1つ以上を駆動することを可能にする1つ以上のデバイスまたはソフトウェアドライバを含むことができる。I/Oインターフェース408は、必要に応じて、1つ以上のI/Oインターフェース408を含むことができる。本開示は、特定のI/Oインターフェースを説明および図示するが、本開示は、任意の好適なI/Oインターフェースを企図している。
【0046】
特定の実施形態では、通信インターフェース410は、コンピュータシステム400と1つ以上の他のコンピュータシステム400もしくは1つ以上のネットワークとの間の通信(例えば、パケットベースの通信など)のための1つ以上のインターフェースを提供する、ハードウェア、ソフトウェア、またはその双方を含む。限定としてではなく例として、通信インターフェース410は、イーサネットもしくは他の有線ベースのネットワークと通信するためのネットワークインターフェースコントローラ(NIC)もしくはネットワークアダプタ、またはWI-FIネットワークなどの無線ネットワークと通信するための無線NIC(WNIC)もしくは無線アダプタを含むことができる。本開示は、任意の好適なネットワークおよびそれに適した任意の通信インターフェース410を企図している。限定としてではなく例として、コンピュータシステム400は、アドホックネットワーク、パーソナルエリアネットワーク(PAN)、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、メトロポリタンエリアネットワーク(MAN)、もしくはインターネットの1つ以上の部分、またはこれらのうちの2つ以上の組み合わせと通信することができる。これらのネットワークのうちの1つ以上の1つ以上の部分は、有線または無線とすることができる。例として、コンピュータシステム400は、無線PAN(WPAN)(例えば、BLUETOOTH WPANなど)、WI-FIネットワーク、WI-MAXネットワーク、携帯電話ネットワーク(例えば、グローバルシステムフォーモバイルコミュニケーションズ(GSM)ネットワーク、ロングタームエボリューション(LTE)ネットワーク、または5Gネットワークなど)、もしくはその他の好適な無線ネットワーク、またはこれらのうちの2つ以上の組み合わせと通信することができる。コンピュータシステム400は、必要に応じて、これらのネットワークのいずれかに適した通信インターフェース410を含むことができる。通信インターフェース410は、必要に応じて、1つ以上の通信インターフェース410を含むことができる。本開示は、特定の通信インターフェースを説明および図示するが、本開示は、任意の好適な通信インターフェースを企図している。
【0047】
特定の実施形態では、バス412は、コンピュータシステム400のハードウェア、ソフトウェア、またはその双方の互いに結合する構成要素を含む。限定としてではなく例として、バス412は、アクセラレーテッドグラフィックスポート(AGP)もしくは他のグラフィックスバス、拡張業界標準アーキテクチャ(EISA)バス、フロントサイドバス(FSB)、HYPERTRANSPORT(HT)相互接続、業界標準アーキテクチャ(ISA)バス、INFINIBAND相互接続、低ピンカウント(LPC)バス、メモリバス、マイクロチャネルアーキテクチャ(MCA)バス、周辺構成要素相互接続(PCI)バス、PCI-Express(PCIe)バス、シリアルアドバンストテクノロジーアタッチメント(SATA)バス、ビデオ電子装置標準化協会ローカル(VLB)バス、もしくは別の好適なバス、またはこれらのうちの2つ以上の組み合わせを含むことができる。バス412は、必要に応じて、1つ以上のバス412を含むことができる。本開示は、特定のバスを説明および図示するが、本開示は、任意の好適なバスまたは相互接続を企図している。
【0048】
本明細書では、1つ以上のコンピュータ可読非一時的記憶媒体は、必要に応じて、1つ以上の半導体ベースもしくは他の集積回路(IC)(例えば、フィールドプログラマブルゲートアレイ(FPGA)または特定用途向けIC(ASIC)など)、ハードディスクドライブ(HDD)、ハイブリッドハードドライブ(HHD)、光ディスク、光ディスクドライブ(ODD)、磁気光学ディスク、磁気光学ドライブ、フロッピーディスケット、フロッピーディスクドライブ(FDD)、磁気テープ、ソリッドステートドライブ(SSD)、RAMドライブ、SECURE DIGITALカードもしくはドライブ、任意の他の好適なコンピュータ可読非一時的記憶媒体、またはこれらのうちの2つ以上の任意の好適な組み合わせを含むことができる。コンピュータ可読非一時的記憶媒体は、必要に応じて、揮発性、不揮発性、または揮発性と不揮発性の組み合わせとすることができる。
【0049】
要約すると、本開示は、SD-WANネットワーク内のハブおよびスポークを自動プロビジョニングするためのシステムおよび方法を対象とし、複数のネットワークハブのうちの1つである第1のネットワークハブから第1の情報を受信することであって、第1の情報が、第1のネットワークハブに関連付けられたプロパティの第1のセットを示すことと、第1の情報を複数のネットワークスポークに公開することであって、複数のネットワークスポークが、第1の情報に基づいて第1のネットワークハブに加入するかどうかを決定することと、複数のネットワークスポークのうちの第1のネットワークスポークから加入情報を受信することであって、加入情報が、第1のネットワークハブに加入している第1のネットワークスポークを示すことと、少なくとも1つの動的制御通知を作成し、第1のネットワークハブを介してネットワークスポークについての転送パスを確立することと、の動作および/またはステップの実行を含む。
【0050】
本明細書では、「または」は、明示的に別段の指示がない限り、または文脈によって別段の指示がない限り、包括的であり、排他的ではない。したがって、本明細書において、「AまたはB」は、明示的に別段の指示がない限り、または文脈によって別段の指示がない限り、「A、B、またはその双方」を意味する。さらに、「および」は、明示的に別段の指示がない限り、または文脈によって別段の指示がない限り、連帯および個別の双方である。したがって、本明細書において、「AおよびB」は、明示的に別段の指示がない限り、または文脈によって別段の指示がない限り、「連帯的または個別的に、AおよびB」を意味する。
【0051】
本開示の範囲は、当業者が理解するであろう、本明細書において説明または図示された例示的な実施形態に対する全ての変更、置換、変形、改変、および修正を包含する。本開示の範囲は、本明細書において説明または図示された例示的な実施形態に限定されない。さらに、本開示は、本明細書のそれぞれの実施形態が特定の構成要素、要素、特徴、機能、動作、またはステップを含むものとして説明および図示するが、これらの実施形態のいずれも、当業者であれば理解するであろう、本明細書のどこかで説明または図示される構成要素、要素、特徴、機能、動作、またはステップのいずれかの任意の組み合わせまたは置換を含むことができる。さらにまた、特定の機能を実行するように適合される、配置される、構成されることができる、可能にされる、動作可能である、または動作する装置またはシステムまたはシステムの構成要素もしくは装置に対する特許請求の範囲における言及は、その装置、システム、または構成要素がそのように適合される、配置される、可能にする、構成されている、可能にされる、動作可能である、または動作する限り、その特定の機能が起動する、作動する、または解除されているかどうかにかかわらず、その装置、システム、構成要素を包含する。追加的に、本開示は、特定の実施形態を、特定の利点を提供するものとして説明または図示するが、特定の実施形態は、これらの利点を全く提供しないか、またはそれらの一部、もしくは全てを提供する場合がある。
【0052】
本明細書において開示される実施形態、および本明細書において開示される実施形態のこの構成要素、要素、特徴、機能、動作、またはステップの範囲は単なる例である。本開示にかかる実施形態は、特に、方法、記憶媒体、システム、およびコンピュータプログラム製品を対象とする添付の特許請求の範囲に開示されており、ある請求項カテゴリ、例えば、方法において言及される任意の特徴は、別の請求項カテゴリ、例えば、システム、においても特許請求されることができる。添付の特許請求の範囲に戻る従属性または参照は、正式な理由でのみ選択されている。しかしながら、任意の先行する特許請求の範囲(特に複数の従属性)への意図的な参照から生じる任意の主題も同様に特許請求されることができるため、特許請求の範囲およびその特徴の任意の組み合わせが開示され、添付の特許請求の範囲において選択される従属性に関係なく特許請求されることができる。特許請求可能な主題は、添付の特許請求の範囲に記載された特徴の組み合わせのみならず、特許請求の範囲内の任意の他の特徴の組み合わせも含み、特許請求の範囲において言及される各特徴は、特許請求の範囲における任意の他の特徴または他の特徴の組み合わせと組み合わせることができる。さらにまた、本明細書に記載または図示される実施形態および特徴のいずれも、別個の特許請求の範囲において、および/または本明細書に説明または図示される任意の実施形態もしくは特徴、または添付の特許請求の範囲のいずれかの特徴との任意の組み合わせで特許請求されることができる。