IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ シスコ テクノロジー,インコーポレイテッドの特許一覧

特許7482121複数の管理ドメインをまたぐエンドツーエンドID認識ルーティング
<>
  • 特許-複数の管理ドメインをまたぐエンドツーエンドID認識ルーティング 図1
  • 特許-複数の管理ドメインをまたぐエンドツーエンドID認識ルーティング 図2
  • 特許-複数の管理ドメインをまたぐエンドツーエンドID認識ルーティング 図3
  • 特許-複数の管理ドメインをまたぐエンドツーエンドID認識ルーティング 図4
  • 特許-複数の管理ドメインをまたぐエンドツーエンドID認識ルーティング 図5
  • 特許-複数の管理ドメインをまたぐエンドツーエンドID認識ルーティング 図6
  • 特許-複数の管理ドメインをまたぐエンドツーエンドID認識ルーティング 図7
  • 特許-複数の管理ドメインをまたぐエンドツーエンドID認識ルーティング 図8
  • 特許-複数の管理ドメインをまたぐエンドツーエンドID認識ルーティング 図9A
  • 特許-複数の管理ドメインをまたぐエンドツーエンドID認識ルーティング 図9B
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-01
(45)【発行日】2024-05-13
(54)【発明の名称】複数の管理ドメインをまたぐエンドツーエンドID認識ルーティング
(51)【国際特許分類】
   H04L 45/74 20220101AFI20240502BHJP
【FI】
H04L45/74
【請求項の数】 23
(21)【出願番号】P 2021521331
(86)(22)【出願日】2019-11-19
(65)【公表番号】
(43)【公表日】2022-01-27
(86)【国際出願番号】 US2019062292
(87)【国際公開番号】W WO2020112448
(87)【国際公開日】2020-06-04
【審査請求日】2022-04-26
(31)【優先権主張番号】62/774,067
(32)【優先日】2018-11-30
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/535,519
(32)【優先日】2019-08-08
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】508041127
【氏名又は名称】シスコ テクノロジー,インコーポレイテッド
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100140431
【弁理士】
【氏名又は名称】大石 幸雄
(72)【発明者】
【氏名】フーダ,サンジェイ クマール
(72)【発明者】
【氏名】オズワル,アナンド
(72)【発明者】
【氏名】バーウ,ネハル
(72)【発明者】
【氏名】エダットハラ,アニル
(72)【発明者】
【氏名】メータ,ミューニッシュ
【審査官】羽岡 さやか
(56)【参考文献】
【文献】特表2016-500937(JP,A)
【文献】特表2016-540446(JP,A)
【文献】米国特許出願公開第2012/0182997(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 45/74
(57)【特許請求の範囲】
【請求項1】
第1のネットワークコントローラの管理制御下にある第1のオーバーレイネットワークの出力エッジデバイスから、第2のネットワークコントローラの管理制御下にある第2のオーバーレイネットワークの入力エッジデバイスによって、元のパケットを含む第1のカプセル化されたパケットを受信することと、
前記入力エッジデバイスによって、前記第1のカプセル化されたパケットを非カプセル化して、前記元のパケットとユーザーまたはグループの識別子を取得することと、
前記入力エッジデバイスによって、前記ユーザーまたはグループの識別子に合致するユーザーまたはグループのポリシーを前記元のパケットに適用して、適用された前記ポリシーに従って前記元のパケットのネクストホップを決定することと、
前記入力エッジデバイスによって、前記元のパケットと前記ユーザーまたはグループの識別子をカプセル化して、第2のカプセル化されたパケットを生成することと、
前記入力エッジデバイスによって、前記第2のカプセル化されたパケットを前記ネクストホップに転送することと、を含む、コンピュータ実装方法。
【請求項2】
前記第1のカプセル化されたパケットまたは前記第2のカプセル化されたパケットのうちの少なくとも一方が、仮想拡張ローカルエリアネットワーク(VXLAN)-グループポリシーオプション(GPO)カプセル化によってカプセル化されている、請求項1に記載のコンピュータ実装方法。
【請求項3】
前記ユーザーまたはグループのポリシーが、前記第1のオーバーレイネットワークおよび前記第2のオーバーレイネットワークで実施されるエンドツーエンドのユーザーまたはグループのポリシーである、請求項1または2に記載のコンピュータ実装方法。
【請求項4】
前記ユーザーまたはグループの識別子が、VXLANヘッダ、メタデータヘッダ、またはマルチプロトコルラベルスイッチング(MPLS)ラベルのうちの少なくとも1つに含まれる、請求項1~3のいずれかに記載のコンピュータ実装方法。
【請求項5】
前記第1のカプセル化されたパケットまたは前記第2のカプセル化されたパケットのうちの少なくとも一方が、仮想ネットワーク識別子(VNID)、仮想ルーティング/転送(VRF)識別子、または仮想プライベートネットワーク(VPN)識別子を含む、請求項1~4のいずれかに記載のコンピュータ実装方法。
【請求項6】
前記入力エッジデバイスによって、前記第2のオーバーレイネットワークの前記入力エッジデバイスと出力エッジデバイスとの間にトンネルを確立することをさらに含み、
前記第2のカプセル化されたパケットが前記トンネルを介して前記ネクストホップに転送される、請求項1~5のいずれかに記載のコンピュータ実装方法。
【請求項7】
前記第2のオーバーレイネットワークの出力エッジデバイスによって、前記第2のカプセル化されたパケットを受信することと、
前記第2のカプセル化されたパケットを非カプセル化して、前記元のパケットと前記ユーザーまたはグループの識別子を取得することと、
前記ユーザーまたはグループの識別子に合致する第2のユーザーまたはグループのポリシーを前記元のパケットに適用して、前記元のパケットの第2のネクストホップを決定することと、
前記元のパケットと前記ユーザーまたはグループの識別子をカプセル化して、第3のカプセル化されたパケットを生成することと、
前記第3のカプセル化されたパケットを前記第2のネクストホップに転送することと、をさらに含む、請求項1~6のいずれかに記載のコンピュータ実装方法。
【請求項8】
前記第1のオーバーレイネットワークまたは第3のオーバーレイネットワークの管理制御下にある第2の入力エッジデバイスによって、前記出力エッジデバイスから、前記第3のカプセル化されたパケットを受信することと、
前記第3のカプセル化されたパケットを非カプセル化して、前記元のパケットと前記ユーザーまたはグループの識別子を取得することと、
前記ユーザーまたはグループの識別子に合致する第3のユーザーまたはグループのポリシーを前記元のパケットに適用して、前記元のパケットの第3のネクストホップを決定することと、
前記元のパケットを前記第3のネクストホップに転送することと、をさらに含む、請求項7に記載のコンピュータ実装方法。
【請求項9】
前記ユーザーまたはグループの識別子をセキュリティグループタグ(SGT)からエンドポイントグループ(EPG)にマッピングすることをさらに含む、請求項1~8のいずれかに記載のコンピュータ実装方法。
【請求項10】
前記ユーザーまたはグループのポリシーが、前記元のパケットを生成したアプリケーションにさらに合致する、請求項1~9のいずれかに記載のコンピュータ実装方法。
【請求項11】
前記第1のカプセル化されたパケットを、アンダーレイネットワークの1つ以上の中間ノードを介して前記第1のオーバーレイネットワークにルーティングすることをさらに含む、請求項1~10のいずれかに記載のコンピュータ実装方法。
【請求項12】
前記第2のカプセル化されたパケットを、アンダーレイネットワークの1つ以上のノードを介して前記第2のオーバーレイネットワークにルーティングすることをさらに含む、請求項1~11のいずれかに記載のコンピュータ実装方法。
【請求項13】
システムであって、
1つ以上のプロセッサと、
命令を含むメモリであって、前記命令が、前記1つ以上のプロセッサによって実行されると、前記システムを、
第1のネットワークコントローラの管理制御下にある第1のオーバーレイネットワークの出力エッジデバイスから、元のパケットを含む第1のカプセル化されたパケットを受信する手段であって、前記システムが第2のネットワークコントローラの管理制御下にある第2のオーバーレイネットワークの入力エッジデバイスである、受信する手段と、
前記第1のカプセル化されたパケットを非カプセル化して、前記元のパケットとユーザーまたはグループの識別子を取得する手段と、
前記ユーザーまたはグループの識別子に合致するユーザーまたはグループのポリシーを前記元のパケットに適用して、適用された前記ポリシーに従って前記元のパケットのネクストホップを決定する手段と、
前記元のパケットと前記ユーザーまたはグループの識別子をカプセル化して、第2のカプセル化されたパケットを生成する手段と、
前記第2のカプセル化されたパケットを前記ネクストホップに転送する手段と、として機能させる、メモリと、を備える、システム。
【請求項14】
前記1つ以上のプロセッサによって実行されると、前記システムに、
前記第2のネットワークコントローラの管理制御下にある出力エッジデバイスとのトンネルを確立することをさらに行わせる、さらなる命令をさらに備え、
前記第2のカプセル化されたパケットが前記トンネルを介して前記ネクストホップに転送される、請求項13に記載のシステム。
【請求項15】
前記1つ以上のプロセッサによって実行されると、前記システムに、
前記ユーザーまたはグループの識別子をセキュリティグループタグ(SGT)からエンドポイントグループ(EPG)にマッピングすることをさらに行わせる、さらなる命令をさらに備える、請求項13または14に記載のシステム。
【請求項16】
前記ユーザーまたはグループのポリシーが、前記元のパケットを生成したアプリケーションにさらに合致する、請求項13~15のいずれかに記載のシステム。
【請求項17】
命令を含む非一時的なコンピュータ可読記憶媒体であって、前記命令は、システムの1つ以上のプロセッサによって実行されると、前記システムに、
第1のネットワークコントローラの管理制御下にある第1のオーバーレイネットワークの出力エッジデバイスから、元のパケットを含む第1のカプセル化されたパケットを受信することであって、前記システムが第2のネットワークコントローラの管理制御下にある第2のオーバーレイネットワークの入力エッジデバイスである、受信することと、
前記第1のカプセル化されたパケットを非カプセル化して、前記元のパケットとユーザーまたはグループの識別子を取得することと、
前記ユーザーまたはグループの識別子に合致するユーザーまたはグループのポリシーを前記元のパケットに適用して、適用された前記ポリシーに従って前記元のパケットのネクストホップを決定することと、
前記元のパケットと前記ユーザーまたはグループの識別子をカプセル化して、第2のカプセル化されたパケットを生成することと、
前記第2のカプセル化されたパケットを前記ネクストホップに転送することと、を行わせる、非一時的なコンピュータ可読記憶媒体。
【請求項18】
前記第1のカプセル化されたパケットまたは前記第2のカプセル化されたパケットのうちの少なくとも一方が、仮想拡張ローカルエリアネットワーク(VXLAN)-グループポリシーオプション(GPO)カプセル化によってカプセル化されている、請求項17に記載の非一時的なコンピュータ可読記憶媒体。
【請求項19】
前記ユーザーまたはグループの識別子が、VXLANヘッダ、メタデータヘッダ、またはマルチプロトコルラベルスイッチング(MPLS)ラベルのうちの少なくとも1つに含まれる、請求項17または18に記載の非一時的なコンピュータ可読記憶媒体。
【請求項20】
第2のネットワークコントローラの管理制御下にある第2のオーバーレイネットワークの入力エッジデバイスである装置であって、
第1のネットワークコントローラの管理制御下にある第1のオーバーレイネットワークの出力エッジデバイスから、元のパケットを含む第1のカプセル化されたパケットを受信するための手段と、
前記第1のカプセル化されたパケットを非カプセル化して、前記元のパケットとユーザーまたはグループの識別子を取得するための手段と、
前記ユーザーまたはグループの識別子に合致するユーザーまたはグループのポリシーを前記元のパケットに適用して、適用された前記ポリシーに従って前記元のパケットのネクストホップを決定するための手段と、
前記元のパケットと前記ユーザーまたはグループの識別子をカプセル化して、第2のカプセル化されたパケットを生成するための手段と、
前記第2のカプセル化されたパケットを前記ネクストホップに転送するための手段と、を備える、装置。
【請求項21】
請求項2~12のいずれかに記載の方法を実装するための手段をさらに備える、請求項20に記載の装置。
【請求項22】
コンピュータによって実行されると、前記コンピュータに、請求項1~12のいずれかに記載の方法を実行させる命令を含む、コンピュータプログラム。
【請求項23】
コンピュータによって実行されると、前記コンピュータに、請求項1~12のいずれかに記載の方法を実行させる命令を含む、コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2018年11月30日に出願された「APPLICATION-AWARE ROUTING WITH USER AND APPLICATION CONTEXT」と題された米国仮特許出願第62/774,067号の利益を主張する、2019年8月8日に出願された「END-END IDENTITY-AWARE ROUTING ACROSS MULTIPLE ADMINISTRATIVE DOMAINS」と題された米国非仮特許出願第16/535,519号の利益および優先権を主張するものであり、これらの内容全体は、参照により本明細書に組み込まれる。
【0002】
本開示の主題は、概して、コンピュータネットワーキングの分野に関し、より詳細には、ID認識ルーティングのためのシステムおよび方法に関する。
【背景技術】
【0003】
企業ネットワークの状況は、絶えず進化している。モバイルデバイスおよびモノのインターネット(IoT)デバイスのトラフィック、サービスとしてのソフトウェア(SaaS)のアプリケーション、ならびにクラウドの採用に対する需要が高まっている。加えて、セキュリティのニーズが高まっており、特定のアプリケーションは、適切な操作のために優先順位付けおよび最適化を必要とすることがある。この複雑さが増すにつれて、高可用性および拡張性を提供しながら、コストおよび運用費を削減することが求められている。
【0004】
従来のWANアーキテクチャは、この進化する状況下で大きな課題に直面している。従来のWANアーキテクチャは通常、複数のマルチプロトコルラベルスイッチング(MPLS)トランスポート、またはアクティブ/バックアップ方式で使用されるインターネットまたはロングタームエボリューション(LTE)リンクと組み合わせたMPLSからなり、ほとんどの場合、インターネットまたはSaaSのトラフィックが、インターネットアクセスのために、中央データセンターまたは地域ハブにバックホールされる。これらのアーキテクチャに関する問題は、不十分な帯域幅、高い帯域幅コスト、アプリケーションのダウンタイム、低いSaaS性能、複雑な操作、クラウド接続のための複雑なワークフロー、長い展開時間およびポリシーの変更、アプリケーションの可視性の制限、ネットワークの保護の難しさを含み得る。
【0005】
近年、これらの課題に対処するために、ソフトウェアディファインドワイドエリアネットワーク(SD-WAN)ソリューションが開発された。SD-WANは、ソフトウェアデファインドネットワーキング(SDN)の広範な技術の一部分である。SDNは、基盤をなすネットワークインフラストラクチャをアプリケーションから抜き取り得る、ネットワーク管理の一元化手法である。このデータプレーン転送と制御プレーンの分離により、ネットワークオペレータはネットワークのインテリジェンスを一元化し、さらなるネットワークの自動化、運用の簡素化、ならびにプロビジョニング、監視、およびトラブルシューティングの一元化を提供することを可能にすることができる。SD-WANは、SDNのこれらの原理をWANに適用することができる。
【図面の簡単な説明】
【0006】
本開示ならびにその特徴および利点のより完全な理解を提供するために、添付の図面と併せて以下の説明を参照する。
【0007】
図1】一実施形態によるネットワークの一実施例のブロック図を示す。
図2】一実施形態によるネットワークの一実施例のブロック図を示す。
図3】一実施形態によるオーバーレイネットワークを管理するための手法の一実施例のブロック図を示す。
図4】一実施形態によるネットワークをセグメント化するための手法の一実施例のブロック図を示す。
図5】一実施形態によるネットワークの一実施例のブロック図を示す。
図6】一実施形態による、複数の管理ドメインをまたぐID認識ルーティングを可能にするためのプロセスの一実施例を示す。
図7】一実施形態による、複数の管理ドメインをまたいでエンドツーエンドでユーザーまたはグループの識別子を伝達するために使用され得るネットワークパケットフォーマットの実施例を示す。
図8】一実施形態によるネットワークデバイスの一実施例のブロック図を示す。
図9A】いくつかの実施形態によるコンピューティングシステムの実施例のブロック図を示す。
図9B】いくつかの実施形態によるコンピューティングシステムの実施例のブロック図を示す。
【発明を実施するための形態】
【0008】
以下に記載される詳細な説明は、実施形態の様々な構成を説明することを意図しており、本開示の主題が実施され得る唯一の構成を表すことを意図するものではない。添付の図面は本明細書に組み込まれ、詳細な説明の一部を構成する。詳細な説明は、本開示の主題のより完全な理解を提供することを目的とした特定の詳細を含む。しかしながら、本開示の主題は、本明細書に記載される特定の詳細に限定されず、これらの詳細なしで実施され得ることは明らかであり、かつ明白であろう。いくつかの例では、本開示の主題の概念を曖昧にすることを回避するために、構造および構成要素がブロック図の形で示されている。
【0009】
概要
本発明の態様は独立請求項に記載されており、好ましい特徴は従属請求項に記載されている。一態様の特徴は、単独で、または他の態様と組み合わせて、各態様に適用され得る。
【0010】
システムおよび方法により、複数の管理ドメインをまたぐエンドツーエンドID認識ルーティングを提供する。第2のオーバーレイネットワークの第1の入力エッジデバイスは、第1のオーバーレイネットワークの第1の出力エッジデバイスから第1のカプセル化されたパケットを受信することができる。第1の入力エッジデバイスは、第1のカプセル化されたパケットを非カプセル化して、元のパケットとユーザーまたはグループの識別子を取得することができる。第1の入力エッジデバイスは、ユーザーまたはグループの識別子に合致するユーザーまたはグループのポリシーを適用して、元のパケットのネクストホップを決定することができる。第1の入力エッジデバイスは、元のパケットとユーザーまたはグループの識別子をカプセル化して、第2のカプセル化されたパケットを生成することができる。第1の入力エッジデバイスは、第2のカプセル化されたパケットをネクストホップに転送することができる。
【0011】
また、ネットワークノード、コンピュータプログラム、コンピュータプログラム製品、コンピュータ可読媒体、および方法を実装するための有形媒体上に符号化された論理を含む、本明細書に記載の方法を実装するための装置も記載される。
【0012】
実施例
いくつかの実施形態では、コンピュータ実装方法は、第1のネットワークコントローラの管理制御下にある第1のオーバーレイネットワークの出力エッジデバイスから、第2のネットワークコントローラの管理制御下にある第2のオーバーレイネットワークの入力エッジデバイスによって、元のパケットを含む第1のカプセル化されたパケットを受信することと、第1のカプセル化されたパケットを非カプセル化して、元のパケットとユーザーまたはグループの識別子を取得することと、ユーザーまたはグループの識別子に合致するユーザーまたはグループのポリシーを元のパケットに適用して、元のパケットのネクストホップを決定することと、元のパケットとユーザーまたはグループの識別子をカプセル化して、第2のカプセル化されたパケットを生成することと、カプセル化された第2のパケットをネクストホップに転送することとを含む。
【0013】
いくつかの実施形態では、第1のカプセル化されたパケットまたは第2のカプセル化されたパケットの少なくとも一方は、仮想拡張ローカルエリアネットワーク(VXLAN)-グループポリシーオプション(GPO)カプセル化によってカプセル化されている。いくつかの実施形態では、ユーザーまたはグループのポリシーは、第1のオーバーレイネットワークおよび第2のオーバーレイネットワークで実施されるエンドツーエンドのユーザーまたはグループのポリシーである。いくつかの実施形態では、ユーザーまたはグループの識別子は、VXLANヘッダ、メタデータヘッダ、またはマルチプロトコルラベルスイッチング(MPLS)ラベルのうちの少なくとも1つに含まれる。いくつかの実施形態では、第1のカプセル化パケットまたは第2のカプセル化パケットの少なくとも一方は、バーチャルネットワーク識別子(VNID)、仮想ルーティング/転送(VRF)識別子、またはバーチャルプライベートネットワーク(VPN)識別子を含む。
【0014】
いくつかの実施形態では、コンピュータ実装方法は、第2のオーバーレイネットワークの入力エッジデバイスと出力エッジデバイスとの間にトンネルを確立することであって、第2のカプセル化パケットがトンネルを介してネクストホップに転送される、確立されることと、第2のオーバーレイネットワークの出力エッジデバイスによって、第2のカプセル化されたパケットを受信することと、第2のカプセル化されたパケットを非カプセル化して、元のパケットとユーザーまたはグループの識別子を取得することと、ユーザーまたはグループの識別子に合致する第2のユーザーまたはグループのポリシーを元のパケットに適用して、元のパケットの第2のネクストホップを決定することと、元のパケットとユーザーまたはグループの識別子をカプセル化して、第3のカプセル化されたパケットを生成することと、第3のカプセル化されたパケットを第2のネクストホップに転送することとをさらに含むことができる。いくつかの実施形態では、コンピュータ実装方法は、出力エッジデバイスから、第1のオーバーレイネットワークまたは第3のオーバーレイネットワークの管理制御下にある第2の入力エッジデバイスによって、第3のカプセル化されたパケットを受信することと、第3のカプセル化されたパケットを非カプセル化して、元のパケットとユーザーまたはグループの識別子を取得することと、ユーザーまたはグループの識別子に合致する第3のユーザーまたはグループのポリシーを元のパケットに適用して、元のパケットの第3のネクストホップを決定することと、元のパケットを第3のネクストホップに転送することとをさらに含むことができる。
【0015】
いくつかの実施形態では、コンピュータ実装方法は、ユーザーまたはグループの識別子をセキュリティグループタグ(SGT)からエンドポイントグループ(EPG)にマッピングすることをさらに含むことができる。いくつかの実施形態では、ユーザーまたはグループのポリシーは、元のパケットを生成したアプリケーションにさらに合致する。
【0016】
いくつかの実施形態では、コンピュータ実装方法は、第1のカプセル化されたパケットを、アンダーレイネットワークの1つ以上の中間ノードを介して第1のオーバーレイネットワークにルーティングすることをさらに含むことができる。
【0017】
いくつかの実施形態では、コンピュータ実装方法は、第2のカプセル化されたパケットを、アンダーレイネットワークの1つ以上のノードを介して第2のオーバーレイネットワークにルーティングすることをさらに含むことができる。
【0018】
いくつかの実施形態では、システムは、1つ以上のプロセッサと、命令を含むメモリであって、その命令が、1つ以上のプロセッサによって実行されると、システムに、第1のネットワークコントローラの管理制御下にある第1のオーバーレイネットワークの出力エッジデバイスから、元のパケットを含む第1のカプセル化されたパケットを受信することであって、システムが第2のネットワークコントローラの管理下にある、受信することと、第1のカプセル化されたパケットを非カプセル化して、元のパケットとユーザーまたはグループの識別子を取得することと、ユーザーまたはグループの識別子に合致するユーザーまたはグループのポリシーを元のパケットに適用して、元のパケットのネクストホップを決定することと、元のパケットとユーザーまたはグループの識別子をカプセル化して、第2のカプセル化されたパケットを生成することと、第2のカプセル化されたパケットをネクストホップに転送することとを行わせる、メモリとを備える。
【0019】
いくつかの実施形態では、非一時的なコンピュータ可読記憶媒体は命令を含み、その命令は、システムの1つ以上のプロセッサによって実行されると、システムに、第1のネットワークコントローラの管理制御下にある第1のオーバーレイネットワークの出力エッジデバイスから、元のパケットを含む第1のカプセル化されたパケットを受信することであって、システムが第2のネットワークコントローラの管理制御下にある、受信することと、第1のカプセル化されたパケットを非カプセル化して、元のパケットとユーザーまたはグループの識別子を取得することと、ユーザーまたはグループの識別子に合致するユーザーまたはグループのポリシーを元のパケットに適用して、元のパケットのネクストホップを決定することと、元のパケットとユーザーまたはグループの識別子をカプセル化して、第2のカプセル化されたパケットを生成することと、第2のカプセル化されたパケットをネクストホップに転送することを行わせる。様々な実施形態により提供され得る多数の他の機能および利点が、以下で説明および示唆される。
【0020】
従来のネットワークで使用されるプロトコルは、特定のドメインまたは特定のタイプのネットワーク(例えば、データセンター(DC)、および企業またはキャンパス、ワイドエリアネットワーク(WAN)、ブランチネットワークなど)に合わせて設計および最適化されるが、ドメイン間(例えば、DC-キャンパス間、アクセス-WAN間、DC-WAN間など)を流れるトラフィックにはあまり効果的でない場合がある。例えば、(開放型システム間相互接続(OSI)モデルの)レイヤ2(L2)ネットワークは、より広いエリアにわたって有効化されると、規模、ブロードキャスト伝搬、および脆弱性によって制約することができる。レイヤ3(L3)ネットワークは、バーチャルローカルエリアネットワーク(VLAN)およびサブネットの急増、複雑なルーティングプロトコル設計、およびトラフィックフローの理解とトラブルシューティングをより困難にし得るL2トポロジーとL3トポロジーとの間の潜在的な不同性によって管理不能になり得る。ネットワークのセグメント化は、他の仮想ネットワーク技術の中でもとりわけ、VRF、マルチプロトコルラベルおよびスイッチング(MPLS)VPN、セキュリティグループタグ(SGT)、およびEPGの展開によってさらに複雑さを高め得る。
【0021】
ネットワークのカプセル化は、これらの課題のいくつかに対処するための手法の1つである。バーチャルエクステンシブルLAN(VXLAN)などのいくつかのタイプのカプセル化には、単一のカプセル化タイプ内でL2パケットとL3パケットの両方を処理することができるという追加の利点を有する。これにより、VXLANカプセル化または同様の技術がL2ネットワークとL3ネットワークの両方をまたいでパケットを転送することを可能にすることができる。これにより、例えば、L3パケット(例えば、MPLS VPN)とL2パケット(例えば、バーチャルプライベートLANサービス(VPLS)またはイーサネットオーバーMPLS(EoMPLS))を転送するために異なる方法を使用するMPLSとは区別することができる。一般に、カプセル化の利点は、ネットワーク内にオーバーレイを構築する能力である。オーバーレイネットワーク(ネットワークファブリックまたはファブリックとも称されることもある)は、基盤となる物理ネットワーク(すなわち、アンダーレイネットワーク)の上に構築された仮想ネットワークトポロジーである。オーバーレイネットワークは、任意の物理ネットワークトポロジーの上に構築された、仮想的にデバイスを接続するために使用される論理トポロジーを作成することができる。オーバーレイネットワークを実装するためのいくつかの例示的手法には、中でもとりわけ、ジェネリックルーティングエンキャプシュレーション(GRE)またはマルチポイントGRE(mGRE)、MPLS VPNまたはVPLS、インターネットプロトコルセキュリティ(IPsec)またはダイナミックマルチポイントバーチャルプライベートネットワーク(DMVPN)、CAPWAP(コントロールアンドプロビジョニングオブワイヤレスアクセスポイント)、VXLAN、ロケーション/アイデンティファイヤセパレーションプロトコル(LISP)、Cisco(登録商標)Overlay Transport Virtualization(OTV)、Cisco(登録商標)Application Centric Infrastructure(Cisco ACI(商標))が挙げられる。
【0022】
オーバーレイネットワークでは、オーバーレイの論理トポロジーは、基盤となるネットワークインフラストラクチャから切り離すことができる。これにより、オーバーレイネットワークをアンダーレイネットワークとは別個に設計し、アンダーレイネットワーク自体では対応できない機能を提供することを可能にすることができる。例えば、アンダーレイネットワークは、完全にルーティングされたトポロジー(例えば、構内配線分配(PWD)室または配線クローゼットまでルーティングする)として設計することができる。完全にルーティングされたトポロジー(ルーテッドアクセスとしても知られる)には、中でもとりわけ、安定性、スケーラビリティ、ネットワーク停止時の迅速な再収束、効果的なトラフィック負荷分散(例えば、等化コストマルチパス(ECMP)を経由して)などのいくつかの利点を有し得る。しかしながら、完全にルーティングされたトポロジーは、特定の欠点も有し得る。例えば、2つ以上のPWD間でVLANを拡張することができない場合があり、これにより、ネットワーク内の2つ以上の場所にサブネットを表示することを必要とし得るいくつかのアプリケーションの柔軟性が制限され得る。完全にルーティングされたトポロジーでは、多数のサブネット(例えば、PWDごとに1つ以上)の生成、使用、および継続的なサポートも必要とし得る。大規模な展開では、これは、大量のインターネットプロトコル(IP)アドレス空間を管理し、消費することを支え切れなくなり得る(例えば、各サブネットは、サポートする必要のあるホストの数に関して増大する可能性のある最大値を満たさなければならず、展開および使用中にIPアドレス空間が無駄にすることになり得る)。
【0023】
いくつかの実施形態では、ネットワークは、完全にルーティングされたアンダーレイトランスポートネットワークの利点(例えば、安定性、スケーラビリティ、高速ネットワーク再収束、効果的なトラフィック負荷分散など)、および(例えば、スパニングツリーや大規模ループL2設計の広範囲での使用に関連する従来の問題を発生させることなく、より広いエリアにわたってオーバーレイIPサブネットを「拡張する」ことなどによって)柔軟なサービスを提供するより広いエリアネットワークを提供するように構成することができる。ネットワークデバイス(例えば、スイッチ、ルータ、ワイヤレスローカルエリアネットワーク(WLAN)コントローラ、アクセスポイント、ネットワークアプライアンス、ネットワークサービスなど)は、アンダーレイネットワーク、およびホスト(例えば、エンドユーザー、デバイスなど)に接続することができ、またはシステムの実際のユーザーがオーバーレイネットワークに接続することができる。これにより、アンダーレイネットワークを静的かつ安定に保つことを可能にして、可用性および継続性をより高めることができるが、ユーザー、デバイス、およびサービスは、オーバーレイネットワークを経由していつでもネットワークに接続したり、ネットワークから切断したりすることを可能にし、ネットワークを危険にさらすことなく、ネットワークオペレータのための新しいネットワーク機能の迅速な展開と運用を可能にする。
【0024】
少なくともVXLANカプセル化または同様の技術を使用したオーバーレイネットワークの追加の利点には、下位互換性、およびネットワーク機能を拡張するための追加のパケットヘッダスペースを挙げることができる。この追加のスペースは、カプセル化されたパケットの適切な処理に関するさらなるコンテキストを提供するための情報(例えば、データに関するメタデータまたはデータ)を搬送することができる。VXLANまたは同様の技術は、外部カプセル化のためにユーザーデータグラムプロトコル(UDP)を利用して、SGTおよび/またはVNID(例えば、インターネット技術特別調査委員会(IETF)VXLANグループポリシーオプション(GPO)で定義されるような)などのパケットメタデータを転送するが、これらの特性から様々な利点が生じ得る。UDPカプセル化は、IPノードがVXLAN処理用の新しいハードウェアまたはソフトウェアでノードを明示的に構成することなく、VXLANカプセル化されたパケットをルーティングすることを可能にすることができる。VXLANカプセル化パケットの外部VXLANヘッダに送信元IPアドレスを持つノード(すなわち、送信元VXLANトンネルエンドポイント(VTEP)または送信元ルーティングロケーター(RLOC))が、パケットをカプセル化するためにVXLAN対応にすることができ、外部UDPヘッダに宛先IPアドレスを持つノード(すなわち、宛先VTEP/RLOC)が、外部VXLANヘッダを非カプセル化するために、にVXLAN対応にすることができる一方、中間ネットワークノード(すなわち、送信元および宛先のVTEP/RLOC)は、内部VXLANパケットヘッダについて知ったり、理解したり、解釈したりする必要はない。これにより、VXLANまたは同様の技術が、基盤となるIPベースのネットワークインフラストラクチャ上にオーバーレイネットワークを提供することを可能にすることができる。加えて、外部UDPパケットヘッダは、内部ディファレンシエイテッドサービシーズコードポイント(DSCP)値からコピーされ得るDSCP値を含むことができ、これにより、中間ノードはVXLANを理解する、または内部カプセル化パケットを検査する必要もなく、QoSを適切に処理することができる。
【0025】
VXLANまたは同様の技術は、VNIDをエンドツーエンドで転送するためのメカニズムをオーバーレイネットワーク内に提供することができる。VNIDはVRFに対応することができ、オーバーレイネットワークはエンドツーエンドVRFトランスポートをサポートして、オーバーレイネットワークの一方の端に入るパケットがカプセル化されるときに正しいVRFでタグ付けされ、VRFが非カプセル化するVXLANノードにおいて決定されて、オーバーレイネットワークからの出力時に内部パケットを転送するためのコンテキストを取得することを可能にするができる。したがって、VNIDをサポートするオーバーレイネットワークは、ネットワークのセグメント化を認識して、より優れたネットワークセキュリティを提供することができる。これにより、アンダーレイ内のすべての中間ネットワークノードに触れる必要もなく、エンドツーエンドのネットワークセグメント化スキームを容易にすることもできる。
【0026】
SGTは、ポリシーを適用する目的で、ネットワーク内の類似のユーザーおよびデバイスをグループ化することができる。類似のユーザーおよびデバイスをそれらの認証またはデバイスプロファイルに基づいて関連付けることによって、ネットワークポリシーは、それらのユーザーおよびデバイスに割り当てられたIPアドレスまたはサブネットから分離することができる。このレベルの抜き取りは、グループベースのポリシーをユーザーにとって理解しやすくし、展開および維持を容易にし、これによってグループベースのポリシーを改善することができる。従来のネットワークでは、ポリシーは厳密にIPアドレスにバインドされている。これは、IPヘッダ内に、ユーザーIDもしくはデバイスID、またはグループ情報、ロケーション、およびその他のコンテキストを直接提供するフィールドがなく、代わりにコンテキストのためのプロキシとしてIPアドレスを使用しなければならないためである。この方法でIPアドレスをオーバーロードすると、ポリシーの実装に必要なサブネット、サービスセット識別子(SSID)、およびアクセス制御リスト(ACL)が大量に発生する。
【0027】
従来のネットワークは、通常、SGT(または同様の技術)をサポートできないが、これは、新旧のハードウェアおよびソフトウェアが混在し得る異種ネットワークをまたぐデータプレーン内でSGTをエンドツーエンドで搬送することが難しいためである(例えば、いくつかの古いハードウェアおよびソフトウェアはSGTを処理することができない)。SGTがネットワークをまたいで移動するときに、データパケットを使用してインラインまたはインバンドでSGTを転送できることが理想的であるが、従来のネットワークでは、すべてのネットワークデバイスおよびすべてのネットワークリンクがSGTを挿入し、転送し、および/または削除することが可能でなければならない。しかしながら、VXLAN-GPOカプセル化または同様の技術をサポートするオーバーレイネットワークは、SGTまたは同等のコンテキスト情報をVXLANパケットヘッダ内でエンドツーエンドで搬送することができる。例えば、中間ノードではなく、入力ノードおよび出力ノードのみが、SGTを処理する必要があり得る。この下位互換性は、VXLANを処理することができない多数のノードを有する大規模なネットワーク展開でも、グループベースのポリシーを実行可能にする。したがって、パケットがWANを通じて転送するためにエッジネットワークデバイスに到着したときに、有用なコンテキスト情報(例えば、ユーザーIDまたはグループID)をパケットから除去する代わりに、この情報を使用して、ルーティングを改善し(例えば、トラフィックをエンドツーエンドでシェーピングしてサービスレベルアグリーメント(SLA)に準拠する)、トランスポートリソースの効率的な利用を保証し、アプリケーション/ネットワークの応答性を改善することができる。従来のネットワークは、この追加のコンテキスト情報を取り込むことができず、および/またはWANルーティングのためにそのような情報に依拠しない。本開示の様々な実施形態は、複数の管理ドメインをまたぐエンドツーエンドID認識ルーティングのこれらおよび他の課題を克服することができる。
【0028】
図1は、本技術の態様を実装するためのネットワーク100の一実施例を示している。ネットワーク100の実装の一実施例は、Cisco(登録商標)Software Defined Wide Area Network(SD-WAN)アーキテクチャである。しかしながら、当業者であれば、本開示で論じられるネットワーク100および任意の他のシステムについて、同様のまたは代替の構成において追加またはより少ない構成要素が存在し得ることを理解するであろう。本開示で提供される図および実施例は、簡潔さと明快さのためのものである。他の実施形態は、異なる数の要素および/または異なるタイプの要素を含み得るが、当業者は、このような変形形態が本開示の範囲から逸脱しないことを理解するであろう。
【0029】
本実施例では、ネットワーク100は、オーケストレーションプレーン102、管理プレーン120、制御プレーン130、およびデータプレーン140を備えることができる。オーケストレーションプレーン102は、オーバーレイネットワークにおけるWANエッジデバイス142(例えば、スイッチ、ルータなど)の自動的な組み込みを支援することができる。オーケストレーションプレーン102は、1つ以上の物理的または仮想的ネットワークオーケストレータアプライアンス104を含むことができる。ネットワークオーケストレータアプライアンス104は、WANエッジデバイス142の初期認証を実行し、制御プレーン130とデータプレーン140のデバイスとの間の接続を組織化することができる。いくつかの実施形態では、ネットワークオーケストレータアプライアンス104は、ネットワークアドレス変換(NAT)の背後に位置するデバイスの通信を可能にすることもできる。いくつかの実施形態では、物理的または仮想的なCisco(登録商標)SD-WAN vBondアプライアンスは、ネットワークオーケストレーターアプライアンス104として機能することができる。
【0030】
管理プレーン120は、ネットワークの中央構成および監視の役割を担うことができる。管理プレーン120は、1つ以上の物理的または仮想的ネットワーク管理アプライアンス122を含むことができる。ネットワーク管理アプライアンス122は、グラフィカルユーザーインターフェースを経由してネットワークの一元管理を提供し、ユーザーが、アンダーレイネットワークおよびオーバーレイネットワーク内のWANエッジデバイス142およびリンク(例えば、インターネットトランスポートネットワーク160、マルチプロトコルラベルスイッチング(MPLS)ネットワーク162、LTEネットワーク164など)を監視し、構成し、および維持することを可能にすることができる。ネットワーク管理アプライアンス122は、マルチテナンシーをサポートし、異なるエンティティ(例えば、企業、企業内の部門、部門内のグループなど)に関連付けられた論理的に分離されたネットワークの一元管理を可能にすることができる。代替的に、または追加的に、ネットワーク管理アプライアンス122は、単一のエンティティのための専用ネットワーク管理システムであり得る。いくつかの実施形態では、物理的または仮想的なCisco(登録商標)SD-WAN vManageアプライアンスは、ネットワーク管理アプライアンス122として機能することができる。
【0031】
管理プレーン120はまた、最高および最低の性能のアプリケーション、最も帯域幅を消費するアプリケーション、異常なアプリケーションファミリ(例えば、帯域幅消費が一定期間にわたって変化するアプリケーション)、ネットワークの可用性および回路の可用性、キャリアの健全性、最高および最低の性能のトンネルなど、アプリケーションおよびネットワークの性能を経時的に可視化するための分析エンジン124を含むことができる。分析エンジン124は、オーバーレイネットワークのグラフィカル表現を生成し、ユーザーが特定の時間に単一のキャリア、トンネル、またはアプリケーションの特性を表示するためにドリルダウンすることを可能にすることができるユーザーインターフェースを含み得る。ユーザーインターフェースは、ネットワークのインタラクティブな概要およびより詳細への入口点として機能することができる。いくつかの実施形態では、ユーザーインターフェースは、過去24時間の情報を表示し、ユーザーがドリルダウンして、異なるデータセットについて異なる期間を選択し表示することを可能にすることができる。ユーザーインターフェースは、ネットワーク分析の中でもとりわけ、ネットワークの可用性、キャリアごとのWAN性能、およびアプリケーションに関するデータを表示することもできる。
【0032】
いくつかの実施形態では、分析エンジン124は、個々のアプリケーション用にカスタマイズすることができる仮想体感品質(vQoE)値をアプリケーション性能に提供することができる。この値は0~10の範囲であり、0が最低の性能、10が最高の性能とすることができる。分析エンジンは、遅延、損失、およびジッタに基づいてvQoEを計算し、アプリケーションごとに計算をカスタマイズすることができる。
【0033】
分析エンジン124は、過去の実績から予測まで、WANを最適化するための推奨事項の提供まで、WANの計画、およびその運用面の態様への洞察を提供することができる。分析エンジン124は、数ヶ月のデータを格納し、機械学習アルゴリズムを適用し、一意の洞察および推奨を提供することができる。例えば、分析エンジン124は、今後3~6ヶ月において追加の帯域幅を必要とし得るWANサイトについて計画するための予測推奨、ネットワークおよびアプリケーションのコスト、性能、および可用性を均衡させるための機会を特定するのに役立つwhat-ifシナリオ、WANを微調整するための履歴情報に基づくアプリケーション認識ルーティングポリシー、特定のロケーションのために推奨されるネットワークサービスプロバイダ、などを提供することができる。
【0034】
制御プレーン130は、ネットワークトポロジーを構築し維持し、トラフィックがどこを流れるかを決定することができる。制御プレーン130は、1つ以上の物理的または仮想的ネットワークコントローラアプライアンス132を含むことができる。ネットワークコントローラアプライアンス132は、各WANエッジデバイス142への安全な接続を確立し、制御プレーンプロトコル(例えば、オーバーレイ管理プロトコル(OMP)(以下でさらに詳細に説明)、オープンショートパスファースト(OSPF))、中間システム間連係(IS-IS)、ボーダーゲートウェイプロトコル(BGP)、プロトコル-インディペンデントマルチキャスト(PIM)、インターネットグループマネージメントプロトコル(IGMP)、インターネットコントロールメッセージプロトコル(ICMP)、アドレス解決プロトコル(ARP)、双方向フォワーディング検出(BFD)、リンクアグリゲーションコントロールプロトコル(LACP)など)を経由して、ルートおよびポリシーの情報を配信することができる。いくつかの実施形態では、ネットワークコントローラアプライアンス132は、ルートリフレクターとして機能することができる。ネットワークコントローラアプライアンス132は、WANエッジデバイス142間およびWANエッジデバイス142内のデータプレーン140内の安全な接続を組織化することもできる。例えば、いくつかの実施形態では、ネットワークコントローラアプライアンス132は、WANエッジデバイス142内で暗号鍵情報を配信することができる。これにより、ネットワークが、インターネットキーエクスチェンジ(IKE)なしに安全なネットワークプロトコルまたはアプリケーション(例えば、IPSec、トランスポートレイヤセキュリティ(TLS)、セキュアシェル(SSH)など)をサポートすることを可能にし、ネットワークのスケーラビリティを可能にすることができる。いくつかの実施形態では、物理的または仮想的なCisco(登録商標)SD-WAN vSmartコントローラは、ネットワークコントローラアプライアンス132として機能することができる。
【0035】
データプレーン140は、制御プレーン130からの決定に基づいてパケットを転送する役割を担うことができる。データプレーン140は、物理的または仮想的ネットワークデバイスであり得るWANエッジデバイス142を含むことができる。WANエッジデバイス142は、1つ以上のデータセンター150、キャンパスネットワーク152、ブランチオフィス154、ホームオフィス156などの中、またはクラウド(例えば、インフラストラクチャアズアサービス(IaaS)、プラットフォームアズアサービス(PaaS)、SaaS、およびその他のクラウドサービスプロバイダーネットワーク)の中など、の組織に関連付けられた様々なWANサイトのエッジで機能することができる。WANエッジデバイス142は、1つ以上のインターネットトランスポートネットワーク160(例えば、デジタル加入者回線(DSL)、ケーブルなど)、MPLSネットワーク162(または他のプライベートパケット交換ネットワーク(例えば、メトロイーサネット、フレームリレー、非同期転送モード(ATM)など)、LTEネットワーク164または他のモバイルネットワーク(例えば、3G、4G、5Gなど)、または他のWAN技術(例えば、同期光ネットワーク(SONET)、同期デジタルハイアラーキ(SDH)、高密度波長分割多重(DWDM)、または他の光ファイバー技術、専用回線(例えば、T1/E1、T3/E3など)、公衆電話交換網(PSTN)、統合デジタル通信サービス(ISDN)または他のプライベート回線交換ネットワーク、小型地球局(VSAT)または他の衛星ネットワークなど)を介するなど、1つ以上のWANトランスポートネットワークを経由してWANサイト間に安全なデータプレーン接続を提供することができる。WANエッジデバイス142は、他のタスクの中でもとりわけ、トラフィック転送、セキュリティ、暗号化、サービス品質(QoS)、およびルーティング(例えば、BGP、OSPFなど)の役割を担うことができる。いくつかの実施形態では、物理的または仮想的なCisco(登録商標)SD-WAN vEdgeルータは、WANエッジデバイス142として機能することができる。
【0036】
図2は、ネットワーク100の様々な態様を示すためのネットワーク環境200の一実施例を示している。ネットワーク環境200は、管理ネットワーク202、一対のWANサイト204Aおよび204B(集合的に、204)(例えば、データセンター150、キャンパスネットワーク152、ブランチオフィス154、ホームオフィス156、クラウドサービスプロバイダネットワークなど)、および一対のインターネットトランスポートネットワーク160Aおよび160B(まとめて160)を含むことができる。管理ネットワーク202は、1つ以上のネットワークオーケストレータアプライアンス104、1つ以上のネットワーク管理アプライアンス122、および1つ以上のネットワークコントローラアプライアンス132を含むことができる。本実施例では、管理ネットワーク202は単一のネットワークとして示されているが、管理ネットワーク202の各オブジェクトが任意の数のネットワークをまたいで分散され、および/またはWANサイト204と同一場所に配置され得ることを、当業者は理解されよう。本実施例では、管理ネットワーク202の各オブジェクトは、インターネットトランスポートネットワーク160Aまたは160Bのいずれかを介して到達することができる。
【0037】
各WANサイト204は、1つ以上のWANアグリゲーションデバイス208(アクセス、エッジ、または境界のデバイス、ノード、またはリーフなどとも呼ばれる)に接続された1つ以上のホスト206(エンドポイント、コンピューティングデバイス、コンピューティングシステムなどとも称される)を含むことができる。ホスト206は、汎用コンピューティングデバイス(例えば、サーバ、ワークステーション、デスクトップコンピュータなど)、モバイルコンピューティングデバイス(例えば、ラップトップ、タブレット、携帯電話など)、ウェアラブルデバイス(例えば、時計、眼鏡または他のヘッドマウントディスプレイ(HMD)、イヤーデバイスなど)を含むことができる。ホスト206は、農業機械(例えば、家畜追跡および管理システム、給水デバイス、無人航空機(UAV)など)、コネクテッドカーおよび他の車両、スマートホームセンサーおよびデバイス(例えば、警報システム、セキュリティカメラ、照明、電化製品、メディアプレーヤー、暖房、換気、および空調(HVAC)機器、需給計器、窓、自動ドア、ドアベル、錠前など)、オフィス機器(例えば、デスクトップ電話、コピー機、ファックス機など)、ヘルスケアデバイス(例えば、ペースメーカー、生体認証センサー、医療機器など)、産業用機器(例えば、ロボット、工場機械、建設機器、産業用センサーなど)、小売機器(例えば、自動販売機、店頭(POS)デバイス、無線ID(RFID)タグなど)、スマートシティデバイス(例えば、街灯、パーキングメーター、廃棄物管理センサーなど)、輸送およびロジスティック機器(例えば、回転式改札口、レンタカートラッカー、ナビゲーションデバイス、在庫モニターなど)など、のモノのインターネット(IoT)デバイスまたは機器も含むことができる。
【0038】
WANアグリゲーションデバイス208は、物理的または仮想的スイッチ、ルータ、および他のネットワークデバイスを含むことができる。本実施例では、WANサイト204Aは一対のWANアグリゲーションデバイスを含み、WANサイト204Bは単一のWANアグリゲーションデバイスを含むように示されているが、WANサイト204は、多層(コア層、ディストリビューション層、およびアクセス層など)、スパインアンドリーフ、メッシュ、ツリー、バス、ハブアンドスポークなどを含む、任意のネットワークトポロジー内に任意の数のネットワークデバイスを含むことができる。例えば、いくつかの実施形態では、1つ以上のデータセンターは、Cisco(登録商標)ACI(商標)アーキテクチャを実装し得、および/または、1つ以上のキャンパスネットワークはCisco(登録商標)Software Defined Access(SD-AccessまたはSDA)アーキテクチャを実装し得る。WANアグリゲーションデバイス208は、ホスト206、他のネットワークデバイス(図示せず)、または他のネットワーク(図示せず)などのWANサイト204のノードを、1つ以上のWANエッジデバイス142に直接または間接的に接続することができ、WANエッジデバイス142は、WANアグリゲーションデバイス208をトランスポートネットワーク160に接続することができる。
【0039】
いくつかの実施形態では、「カラー」を使用して個々のWANトランスポートネットワークを識別することができ、異なるWANトランスポートネットワークに異なるカラーを割り当てることができる(例えば、mpls、private1、biz-internet、metro-ethernet、lteなど)。本実施例では、ネットワーク環境200は、インターネットトランスポートネットワーク160A用に「biz-internet」と呼ばれるカラーと、インターネットトランスポートネットワーク160B用に「public-internet」と呼ばれるカラーを利用してもよい。
【0040】
いくつかの実施形態では、各WANエッジデバイス142は、ネットワークコントローラアプライアンス132の少なくとも1つを用いて、データグラムトランスポートレイヤセキュリティ(DTLS)またはトランスポートレイヤセキュリティ(TLS)制御接続を形成し、各トランスポートネットワーク160を通じて任意のネットワークコントローラアプライアンス132に接続することができる。いくつかの実施形態では、WANエッジデバイス142はまた、IPSecトンネルを経由して他のWANサイト内のWANエッジデバイスに安全に接続することもできる。いくつかの実施形態では、BFDプロトコルが、損失、待ち時間、ジッタ、および経路障害を検出するために、これらのトンネルの各々において使用され得る。
【0041】
WANエッジデバイス142では、カラーを使用して、個々のWANトランスポートトンネルを識別または区別するのに役立てることができる(例えば、単一のエッジネットワークデバイスに同じカラーが2回使用され得ない)。カラー自体も有意性を有し得る。例えば、metro-ethernet、mpls、private1、private2、private3、private4、private5、private6のカラーは、プライベートカラーと見なされ得、プライベートネットワークのために、またはトランスポートIPホストのNATアドレス指定がない場所で使用され得る(例えば、同じカラーの2つのホスト間にNATが存在し得ないために)。WANエッジデバイス142がプライベートカラーを使用するときに、それらは、ネイティブIPアドレス、プライベートIPアドレス、アンダーレイIPアドレスを使用して、他のエッジネットワークデバイスへのIPSecトンネルを構築しようと試み得る。パブリックカラーは、3g、biz、internet、blue、bronze、custom1、custom2、custom3、default、gold、green、lte、public-internet、red、silverを含み得る。パブリックカラーは、post-NAT IPアドレスへのトンネルを構築するために、WANエッジデバイス142によって使用され得る(NATが関与している場合)。WANエッジデバイス142がプライベートカラーを使用し、他のプライベートカラーと通信するためにNATを必要とする場合、構成におけるキャリア設定は、WANエッジデバイス142がプライベートIPアドレスまたはパブリックIPアドレスを使用するかどうかを指示することができる。この設定を使用すると、一方または両方がNATを使用しているときに、2つのプライベートカラーがセッションを確立することができる。
【0042】
図3は、OMPなどを経由して、オーバーレイネットワークを管理するための例示的な手法のブロック図300示している。本実施例では、OMPメッセージ302Aおよび302B(総称して、302)は、ネットワークコントローラアプライアンス132とWANエッジデバイス142Aと142Bとの間でそれぞれ前後に送信され得、ルートプレフィックス、ネクストホップルート、暗号鍵、ポリシー情報などの制御プレーン情報が、それぞれの安全なDTLSまたはTLS接続304Aおよび304Bを通じて交換され得る。ネットワークコントローラアプライアンス132は、ルートリフレクターと同様に機能することができる。例えば、ネットワークコントローラアプライアンス132は、WANエッジデバイス142からルートを受信し、それらにポリシーを処理し、適用して、オーバーレイネットワーク内の他のWANエッジデバイス142にルートを通知することができる。ポリシーが定義されていない場合は、WANエッジデバイス142がフルメッシュトポロジーと同様に機能し得、各WANエッジデバイス142は、別のWANサイトにおいて別のWANエッジデバイス142に直接接続し、各サイトから完全なルーティング情報を受信することができる。
【0043】
OMPは、次の3つのタイプのルートを通知することができる。
【0044】
・WANエッジデバイス142のローカルWANサイト(例えば、WANエッジデバイス142に対してローカル)またはサービス側から学習されるプレフィックスに対応し得る、OMPルート。プレフィックスは、静的ルートもしくは接続ルートとして発信され、またはルーティングプロトコル(例えば、BGP、OSPFなど)内から発信され、オーバーレイ全体にわたって搬送され得るようにOMPに再配布され得る。OMPルートは、トランスポートロケーション(TLOC)情報(この情報は、BGPネクストホップIPアドレスに類似し得る)などの属性、および発信元、発信者、プリファレンス、サイト識別子、タグ、VPN識別子などの他の属性を通知することができる。OMPルートは、それが指すTLOCがアクティブな場合、転送テーブル内にインストールされ得る。
【0045】
・トランスポートネットワーク160に接続するWANエッジデバイス142上の論理トンネル終端点に対応し得る、TLOCルート。いくつかの実施形態では、TLOCルートは、一意的に識別され、IPアドレス、リンクカラー、およびカプセル化(例えば、ジェネリックルーティングカプセル化(GRE)、IPSecなど)を含む3タプルによって表され得る。システムIPアドレス、カラー、およびカプセル化に加えて、TLOCルートは、TLOCプライベートIPアドレスおよびパブリックIPアドレス、キャリア、プリファレンス、サイトID、タグ、および重みなどの属性も搬送し得る。いくつかの実施形態では、TLOCは、アクティブなBFDセッションがそのTLOCに関連付けられている場合、特定のWANエッジデバイス142上でアクティブ状態であり得る。
【0046】
・WANエッジデバイス142のローカルWANサイトに接続され、サービス挿入で使用するために他のWANサイトにアクセス可能である得るサービス(例えば、ファイアウォール、分散型サービス停止(DDoS)緩和策、ロードバランサ、侵入防止システム(IPS)、侵入検知システム(IDS)、WANオプティマイザなど)を表し得る、サービスルート。加えて、これらのルートはVPNを含めることもでき、VPNラベルを更新タイプで送信して、リモートWANサイトにおいてサービスされているVPNをネットワークコントローラアプライアンス132に通知され得る。
【0047】
図3の実施例では、OMPは、WANエッジデバイス142とネットワークコントローラアプライアンス132の間に確立されたDTLS/TLSトンネル304を通じて実行されていることが示されている。加えて、ブロック図300は、インターネットトランスポートネットワーク160Aを通じてTLOC 308Aおよび308Cとの間に確立されたIPSecトンネル306A、およびインターネットトランスポートネットワーク160Bを通じてTLOC 308BとTLOC 308Dとの間に確立されたIPSecトンネル306Bを示している。IPSecトンネル306Aおよび306Bが確立されると、各々にわたってBFDが有効にされ得る。
【0048】
いくつかの実施形態では、ネットワーク全体のセグメント化は、ネットワークのエッジ(例えば、WANエッジデバイス142)においてネットワークオブジェクト(例えば、サブネット、VLAN、VNID、VRF、VPN、EPGなど)のグループ化を定義し、中間ノードが処理するパケット内のセグメント化情報を搬送することによって実装することができる。例えば、WANエッジデバイス142Aは、プレフィックス10.1.1.0/24に対応する「red」VPN、およびプレフィックス10.2.2.0/24に対応する「blue」VPNの2つのVPNに加入することができる(例えば、接続されたインターフェースを介して直接か、またはインターネットゲートウェイプロトコル(IGP)もしくはBGPを経由して学習されて)。WANエッジデバイス142Bも同様に、プレフィックス192.168.1.0/24に対応するred VPN、およびプレフィックス192.168.2.0/24に対応するblue VPNの2つのVPNに加入することができる(接続されたインターフェースを介して直接か、またはIGPもしくはBGPを経由して学習されて)。
【0049】
WANエッジデバイス142は、DTLS/TLSトンネル304を通じてネットワークコントローラアプライアンス132へのOMP接続を有するため、WANエッジデバイス142は、それらのルーティング情報をネットワークコントローラアプライアンス132に伝達することができる。ネットワークコントローラアプライアンス132において、ネットワーク管理者は、ポリシーを実施して、ルートを破棄したり、トラフィックエンジニアリングまたはサービスチェーンのためにTLOC(ネクストホップをオーバーレイすることができる)を変更したり、またはVPN識別子を変更したりすることができる。ネットワーク管理者は、これらのポリシーをネットワークコントローラアプライアンス132上のインバウンドポリシーまたはアウトバウンドポリシーとして適用することができる。
【0050】
単一のVPNに属するプレフィックスは、個別のルートテーブルに保持することができる。これにより、ネットワーク内の様々なセグメントに対してL3分離を提供することができる。したがって、WANエッジデバイス142は、各2つのVPNルートテーブルを有することができる。加えて、ネットワークコントローラアプライアンス132は、各プレフィックスのVPNコンテキストを維持することができる。個別のルートテーブルは、単一のノードにおいて分離を提供することができる。いくつかの実施形態では、VPN識別子を使用して、ネットワーク全体にわたってルーティング情報を伝達することができる。パケット内で搬送されるVPN識別子は、リンク上の各VPNを識別することできる。VPNが特定のエッジネットワークデバイス上で構成されていると、VPNは、それに関連付けられたリンクのカラーまたはラベルを有することができる。エッジネットワークデバイスは、そのリンクのカラーまたはラベルを、VPN識別子とともに、ネットワークコントローラアプライアンス132に送信することができる。ネットワークコントローラアプライアンス132は、エッジネットワークデバイスをVPN識別子にマッピングする情報を、ネットワーク内の他のエッジネットワークデバイスに伝達することができる。次に、リモートエッジネットワークデバイスは、リンクのカラーまたはラベルを使用して、トラフィックを適切なVPNに送信することができる。ローカルエッジネットワークデバイスは、VPN識別子のリンクのカラーまたはラベルを有するデータを受信すると、リンクのカラーまたはラベルを使用してデータトラフィックを逆多重化することができる。本実施例では、WANエッジデバイス142を接続するトランスポートネットワーク160は、VPNを認識し得えないが、WANエッジデバイス142は、VPNについて知り得、ネットワークの残りの部分は、標準ルーティングに従うことができる。
【0051】
いくつかの実施形態では、ポリシーを使用して、WANエッジデバイス142間のトラフィックのフローに影響を及ぼし得る。ポリシーは、一元型またはローカル型として特徴付けられ得る。一元化されたポリシーは、ネットワークコントローラアプライアンス132上に提供され得、ローカライズされたポリシーは、WANサイトと、インターネットトランスポートネットワーク160、MPLSネットワーク162、LTEネットワーク164などのトランスポートネットワークとの間のネットワークエッジに位置し得るWANエッジデバイス142上に提供することができる。
【0052】
ポリシーは、ネットワークの制御プレーン内のルーティング情報のフローに影響を及ぼし得る制御ポリシーもしくはルーティングポリシーとして、またはネットワークのデータプレーン内のデータトラフィックのフローに影響を及ぼし得るデータポリシーとしても特徴づけることができる。一元化された制御ポリシーは、ネットワークコントローラアプライアンス132のマスタールートテーブルに格納され、WANエッジデバイス142に通知される情報に影響を及ぼすことによって、トラフィックのネットワーク全体のルーティングに適用することができる。一元化された制御ポリシーの効果は、WANエッジデバイス142がトラフィックをその宛先にどのように方向づけるかに見ることができる。一元化された制御ポリシーの構成自体は、ネットワークコントローラアプライアンス132上に留まることができ、WANエッジデバイス142に送出されない。
【0053】
一元化された制御ポリシーが提供されていないときに、すべてのOMPルートをネットワークコントローラアプライアンス132のマスタールートテーブルに配置することができ、ネットワークコントローラアプライアンス132は、同一セグメント内のすべてのWANエッジデバイス142にすべてのOMPルートを通知することができる(例えば、サブネット、VLAN、VNID、VRF、VPN、EPG、または他のホストの収集情報)。一元化された制御ポリシーを提供することにより、管理者または他のユーザーは、ネットワークコントローラアプライアンス132のマスタールートテーブルに配置されるOMPルート、WANエッジデバイス142に通知されるルート情報、およびOMPルートがマスタールートテーブルに配置される前に変更されるか、または通知される前に変更されるのかどうかに影響を及ぼし得る。
【0054】
一元化された制御ポリシーが提供されると、ネットワークコントローラアプライアンス132は、ルート情報をWANエッジデバイス142に再配布するか、またはネットワークコントローラアプライアンス132のマスタールートテーブルに格納されるか、もしくはネットワークコントローラアプライアンス132によって通知される、ルート情報を変更することができる。ネットワークコントローラアプライアンス132は、(ネットワークコントローラアプライアンス132に関して)インバウンドまたはアウトバウンド方向のいずれかでWAN内の特定のサイトに制御ポリシーを適用することによって、その制御ポリシーをアクティブ化することができる。一元化された制御ポリシーをインバウンド方向に適用することにより、WANエッジデバイス142によって通知されるルートをフィルタリングまたは変更した後に、それらのルートがネットワークコントローラアプライアンス132上のマスタールートテーブルに配置することができる。プロセスの第1のステップとして、ルートが受理または拒否され得る。受理されたルートは、受信されたとき、または制御ポリシーによって変更されたときに、ネットワークコントローラアプライアンス132のマスタールートテーブルにインストールすることができる。制御ポリシーによって拒否されたルートは、暗黙裡に破棄され得る。
【0055】
制御ポリシーをアウトバウンド方向に適用することにより、ネットワークコントローラアプライアンス132は、WANエッジデバイス142に再配布するルートをフィルタリングまたは変更することができる。アウトバウンドポリシーの第1のステップとして、ルートが受理されるか、または拒否され得る。受理されたルートについて、一元化された制御ポリシーによりルートを変更した後に、ネットワークコントローラアプライアンス132によってそれらのルートは配布することができる。アウトバウンドポリシーによって拒否されたルートは、通知されない。
【0056】
WANエッジデバイス142は、データトラフィックを転送するときに使用するために、ネットワークコントローラアプライアンス132から学習したルート情報を、それらのローカルルートテーブルに配置することができる。ネットワークコントローラアプライアンス132は、ネットワーク内の一元化ルーティングシステムとして機能することができるため、WANエッジデバイス142は、ネットワークコントローラアプライアンス132から学習するOMPルート情報を変更しない。ネットワークコントローラアプライアンス132は、WANエッジデバイス142からOMPルート通知を定期的に受信することができ、ネットワークコントローラアプライアンス132は、ネットワークを介したルーティング経路を再計算し更新した後に、WANエッジデバイス142に新しいルーティング情報を通知することができる。
【0057】
ネットワークコントローラアプライアンス132上に提供された一元化された制御ポリシーは、ネットワークコントローラアプライアンス上に留まることができ、WANエッジデバイス142にダウンロードされない。しかしながら、一元化された制御ポリシーに起因するルーティング決定は、ルート通知の形式でWANエッジデバイス142に受け渡され得るため、制御ポリシーの効果は、WANエッジデバイス142がデータトラフィックをその宛先にどのように方向付けるかに反映され得る。
【0058】
ローカライズされた制御ポリシーは、WANエッジデバイス142上でローカルに提供され得る。ローカライズされた制御ポリシーは、BGPおよびOSPFルーティング(または他のルーティングプロトコル)の動作をローカルWANサイト内で変更する方法など、従来のルータ上で構成されたルーティングポリシーと同様であり得る。ローカライズされたデータポリシーは、WANエッジデバイス142上の特定のインターフェースまたはインターフェースへのアクセスリストの提供および適用を可能にすることができる。単純なアクセスリストは、一元化されたデータポリシーの場合と同じように、6タプルの合致(例えば、送信元と宛先のIPアドレスおよびポート、DSCPフィールド、ならびにプロトコルなど)に基づいてアクセスを許可および制限することができる。アクセスリストは、サービスクラス(CoS)、ポリシング、およびミラーリングの提供を可能にすることができ、これにより、データトラフィックがWANエッジデバイス142のインターフェースおよびインターフェースキューからどのように流出し、それらにどのように流入するかを制御することもできる。
【0059】
一元化されたデータポリシーは、ネットワーク全体のデータトラフィックのフローに適用することができる。一元化されたデータポリシーが提供されていないと、特定のネットワークセグメント(例えば、サブネット、VLAN、VNID、VRF、VPN、EPG、または他のネットワークセグメント化技術など)内のすべてのプレフィックスが、そのセグメントから到達可能であり得る。一元化されたデータポリシーを提供することにより、送信元と宛先との間のアクセスを制御する6タプルフィルターを適用することができる。一元化された制御ポリシーと同様に、一元化されたデータポリシーは、ネットワークコントローラアプライアンス132上に提供することができ、その構成はネットワークコントローラアプライアンス132上に留まることができる。データポリシーの効果は、WANエッジデバイス142がデータトラフィックをその宛先にどのように方向づけるかに反映され得る。しかしながら、制御ポリシーとは異なり、一元化されたデータポリシーは、読み取り専用の形態でWANエッジデバイス142に送出され得る。
【0060】
いくつかの実施形態では、一元化されたデータポリシーは、リスト、ポリシー定義(または複数のポリシー)、およびポリシーアプリケーションを使用して、ネットワークコントローラアプライアンス132上で構成され得る。リストは、ポリシーアプリケーションまたはポリシーマッチングのターゲットを定義することができる。リストのいくつかの実施例には、プレフィックスリスト(例えば、ポリシーで使用するプレフィックスのリスト)、サイトリスト(例えば、ポリシー定義およびポリシーアプリケーションで使用するサイト識別子のリスト)、TLOCリスト(例えば、ポリシー定義で使用するTLOCのリスト)、およびVPNリスト(例えば、ポリシーで使用するVPNのリスト)、または他のネットワークセグメントのリスト(例えば、サブネット、VLAN、VNID、VRF、EPG、または他のネットワークセグメント化技術)が含まれ得る。ポリシー定義(または複数のポリシー)は、制御および転送の態様を制御することができる。ポリシー定義(または複数のポリシー)には、制御ポリシー、データポリシー、ゾーンベースドファイアウォール(ZFW)ポリシー(例えば、ゾーンを定義し、ゾーン間のトラフィックを制御するポリシー)などの、異なるタイプのポリシーが含まれ得る。ポリシーアプリケーションは、ポリシーを適用する対象を制御することができる。ポリシーアプリケーションは、サイト指向であり、サイトリストによって定義され得る。
【0061】
図4は、VPNを使用してネットワークをセグメント化するための手法の一実施例のブロック図400示している。VPNは互いに分離することができ、それら自体の転送テーブルを有することができる。インターフェースまたはサブインターフェースは、単一のVPNの下で明示的に構成することができ、2つ以上のVPNの一部分でなくてもよい。ラベルは、OMPルート属性において、およびパケットカプセル化において使用され得、これにより、パケットが属するVPNを識別することができる。VPN番号は、0~65530の値を有する4バイト整数とすることができる。いくつかの実施形態では、各WANエッジデバイス142は、トランスポートVPN 402(例えば、VPN番号0)および管理VPN 404(例えば、VPN番号512)を含むことができる。トランスポートVPN 402は、WANトランスポートネットワーク(例えば、インターネットトランスポートネットワーク160およびMPLSネットワーク162)にそれぞれ接続する1つ以上の物理的または仮想的ネットワークインターフェース(例えば、ギガビットイーサネットネットワークインターフェース408Aおよび408B)を含むことができる。ネットワークコントローラアプライアンス132への、またはネットワークコントローラアプライアンス132とネットワークオーケストレータアプライアンス104との間の、安全なDTLS/TLS接続は、トランスポートVPN 402から開始することができる。加えて、静的またはデフォルトルートまたは動的ルーティングプロトコルをトランスポートVPN 402内に構成して、適切なネクストホップ情報を取得し、これによって、制御プレーン130が確立され得、IPSecトンネル306(図示せず)がリモートWANサイトに接続できる。
【0062】
管理VPN 404は、管理ネットワークインターフェース410を通じて、ネットワークオーケストレータアプライアンス104、ネットワーク管理アプライアンス122、ネットワークコントローラアプライアンス132、および/またはWANエッジデバイス142との間で帯域外管理トラフィックを搬送することができる。いくつかの実施形態では、管理VPN 404は、オーバーレイネットワークをまたいで搬送されなくてもよい。
【0063】
トランスポートVPN 402および管理VPN 404に加えて、各WANエッジデバイス142は、1つ以上の他のサービスVPN 406も含むことができる。サービスVPN 406は、1つ以上のローカルWANサイト204(すなわち、WANエッジデバイス142に対してローカル)に接続し、データトラフィックを搬送する1つ以上の物理的または仮想的ネットワークインターフェース(例えば、ギガビットイーサネットネットワークインターフェース408Cおよび408D)を含むことができる。サービスVPN 406は、OSPFまたはBGP、仮想ルータ冗長プロトコル(VRRP)、QoS、トラフィックシェーピング、ポリシングなどの機能を提供するように構成することができる。いくつかの実施形態では、データトラフィックは、WANサイト204においてネットワークコントローラアプライアンス132から受信したOMPルートをサービスVPN 406のために構成されたルーティングプロトコルに再配布することによって、IPSecトンネルを通じて他のWANサイトに向けることができる。次に、ローカルWANサイト204からのルートは、サービスVPNルートをOMPルーティングプロトコルに通知することによって他のWANサイトに通知され得、OMPルーティングプロトコルは、ネットワークコントローラアプライアンス132に送信され、ネットワーク内の他のWANエッジデバイス142に再配布され得る。
【0064】
図5は、ID認識ルーティングが可能なマルチドメインネットワーク500の一実施例のブロック図示している。マルチドメインネットワーク500は、キャンパス管理ドメイン502A、WAN管理ドメイン502B、およびデータセンター管理ドメイン502C(総称して、502)を含む。キャンパス管理ドメイン502Aは、キャンパスネットワークコントローラ504(例えば、Cisco DNA(商標)Center)を経由してキャンパスネットワーク152およびブランチオフィス154を通じて管理制御することができ、WAN管理ドメイン502Bは、WANコントローラ132を経由してWAN(例えば、キャンパスネットワーク152とデータセンター150との間のネットワーク(明示的には示されていない)を通じて管理制御することができ、さらに、データセンター管理ドメイン502Cは、データセンターネットワークコントローラ506(例えば、Cisco(登録商標)Application Policy Infrastructure Controller(Cisco APIC(商標))を経由してデータセンター150全体を管理制御することができる。すなわち、キャンパス管理ドメイン502Aは、キャンパスネットワーク152またはブランチオフィス内のWANアグリゲーションデバイス208Aおよび他のネットワークデバイス512(例えば、物理的または仮想的スイッチ、ルータ、ネットワークアプライアンス、ネットワークサービスなど)を通じて管理制御を行うことができる。図154に示されるように、WAN管理ドメイン502Bは、WANエッジデバイス142を通じて管理制御を行うことができ、データセンター管理ドメイン502Cは、WANアグリゲーションデバイス208Bを通じて管理制御を行うことができる。本明細書で使用されるように、データセンター150およびキャンパスネットワーク152は、WAN管理ドメイン502BまたはWANコントローラ132のWANサイトと称され得るが、これは、WANコントローラ132が、WANを通じてこれらのサイト間の相互接続性を提供することができるためである。キャンパスネットワーク152およびブランチオフィス154は、キャンパス管理ドメイン502Aまたはキャンパスネットワークコントローラ504のファブリックサイトと称され得るが、これは、キャンパスネットワークコントローラが、キャンパス管理ドメイン内でこれらのサイトに相互接続性を提供することができるからである。
【0065】
本実施例では、WANアグリゲーションデバイス208Aは、キャンパス管理ドメイン502Aの外部のノード(例えば、ホスト、ネットワークデバイスなど)からキャンパス管理ドメイン内のノード(すなわち、キャンパスネットワーク152およびブランチオフィス154)へのトラフィックを受信するための入力エッジデバイスとして、および、キャンパス管理ドメイン502A内のノードからキャンパス管理ドメイン外のノードにトラフィックを転送するための出力エッジネットワークデバイスとして、機能することができる。同様に、WANアグリゲーションデバイス208Bは、データセンター管理ドメイン502Cの外部のノードからデータセンター管理ドメイン(すなわち、データセンター150)内のノードへのトラフィックを受信するための入力エッジデバイスとして、および、データセンター管理ドメイン502C内のノードからデータセンター管理ドメイン外のノードへのトラフィックを転送するための出力エッジデバイスとして、機能することができる。WANエッジデバイス142は、WAN管理ドメイン502Bの外部のノードからWAN管理ドメイン内のノード(例えば、WANエッジデバイス142およびそれらの間の中間ノード)へのトラフィックを受信するための入力エッジデバイスとして、および、WAN管理ドメイン502B内のノードからWAN管理ドメイン外のノードへのトラフィックを受信するための出力エッジデバイスとして機能することもできる。これは、WANアグリゲーションデバイス208Aを経由してのみWANに接続することができる得るネットワークデバイス516とは区別することができる。
【0066】
キャンパスネットワーク152は、認証、許可、および監査(AAA)サービス508、ならびに制御ノード510を含むこともできる。AAAサービス508は、コンピューティングリソースへのアクセスを制御し、ネットワークポリシーの実施を容易にし、使用を監査し、サービスへの請求に必要な情報を提供することができる。AAAサービス508は、キャンパスネットワークコントローラ504、WANコントローラ132、データセンターネットワークコントローラ506、ならびに認証、許可、および会計サービスを提供するためのユーザー、デバイス、モノ、ポリシー、請求、および同様の情報に関する情報を含むデータベースとディレクトリと連係し得る。本実施例では、AAAサービス508は、キャンパス管理ドメイン502A、WAN管理ドメイン502B、およびデータセンター管理ドメイン502CへのIDおよびアクセスの一元化された認証局として機能することができる。しかしながら、AAAサービス508は、他の実施形態において、ブランチオフィス154、データセンター150、または他のネットワーク(例えば、コロケーションセンター)、クラウドサービスプロバイダネットワーク(例えば、IaaS、PaaS、SaaSなど)と同一場所に配置することもできることが理解されよう。さらに他の実施形態では、AAAサービス508は、複数の管理ドメイン502をまたいで分散され得る。AAAサービス508は、リモート認証ダイヤルインユーザーサービス(RADIUS)、Diameterなどの様々な技術を利用して、ホスト、ネットワークデバイス、アプリケーションなどと通信することができる。AAAサービス508の実装の一実施例は、Cisco(登録商標)Identity Service Engine(ISE)である。他の実施例には、GOOGLE ACCOUNTもしくはGOOGLE CLOUD IDENTITY、AMAZON WEB SERVICES(AWS)ID AND ACCESS MANAGEMENT(IAM)、FACEBOOK LOGIN、MICROSOFT ACTIVE DIRECTORYもしくはAZURE ACTIVE DIRECTORY、ARUBA CLEARPASS ACCESS MANAGEMENT SYSTEM、HUAWEI CLOUD IAMなどが含まれる。
【0067】
ユーザーID、グループIDもしくは組織ID、ユーザーロケーション、クライアントデバイスタイプ、およびユーザーに関する他のコンテキスト情報は、AAAサービス508を経由して管理ドメイン502をまたいで共有することができる。例えば、AAAサービス508および/または管理ドメイン502は、この情報を、アプリケーションプログラミングインターフェース(API)(例えば、レストフルステートトランスファー(REST)API、C++、GO、JAVA、JAVASCRIPT、NODE JS、PHP、PYTHON、RUBYなどのプログラミング言語用のソフトウェア開発キット(SDK)、コマンドラインインターフェース(CLI)、Webアプリケーション(例えば、Webブラウザを経由してアクセス可能なアプリケーション)、デスクトップアプリケーション、モバイルアプリケーションまたは「apps」、および他の適切なインターフェースを経由して共有することができる。いくつかの実施形態では、AAAサービス508は、SGTなどの1つの表現の中のユーザーまたはグループの識別子を、EPGなどの別の表現にマッピングする、またはその逆にマッピングすることができる。
【0068】
制御ノード510は、すべてのユーザー、デバイス、およびモノがキャンパス管理ドメイン502Aに接続し、キャンパス内を歩き回るときに、それらを追跡するための中央データベースとして機能することができる。制御ノード110は、ネットワークインフラストラクチャ(例えば、スイッチ、ルータ、無線LANコントローラ(WLC)など)が、フラッドおよび学習メカニズムを使用する代わりに、データベースを照会して、キャンパス管理ドメイン502Aに接続されたユーザー、デバイス、およびモノのロケーションを決定することを可能にすることができる。このようにして、制御ノード510は、キャンパス管理ドメイン502Aに接続されたすべてのホストが任意の時点でどこに配置されているかについての信頼できる唯一の情報源として機能することができる。特定のエンドポイント(例えば、IPv4の場合は/32アドレス、IPv6の場合は/128アドレスなど)を追跡することに加えて、制御ノード510は、より大きな集約ルータ(例えば、IP/マスク)を追跡することもできる。この柔軟性は、ファブリックサイト全体を集約するのに役立ち、全体的なスケーラビリティを向上させることができる。この機能の実装の一実施例は、LISPである。
【0069】
マルチドメインネットワーク500に示され、当業者によって理解されるように、各管理ドメイン502は、トポロジー、ノードのタイプ、主要な機能および能力、プロトコル、セキュリティの脆弱性、性能要件などの点で、互いに大きく異なり得る。例えば、マルチドメインネットワーク500内の各管理ドメイン502は、ポリシープレーン520、データプレーン522、および制御プレーン524の各々において別個のプロトコルを使用する。キャンパス管理ドメイン502Aは、ポリシープレーン520のためのVXLANカプセル化、データプレーン522のためのVXLANカプセル化、および制御プレーン524のためのLISPカプセル化を備えたSGTを実装し得る。WAN管理ドメイン502Bは、ポリシープレーン520のためにCisco(登録商標)Meta Data(CMD)ヘッダまたはMPLSラベル内に、データプレーン522のためにVRF認識IPsec(VRF-Liteとも称される)、MPLS VPN、または同様のカプセル化技術に、および制御プレーン524のためにOMPカプセル化に、SGTを実装することができる。データセンター管理ドメイン502Cは、ポリシープレーン520のために内部VXLAN(iVXLAN)カプセル化を備える、データプレーン522のためにiVXLANカプセル化を備える、および制御プレーン524のためにカウンシルオブオラクルプロトコル(COOP)カプセル化を備える、EPGを実装することができる。これらのドメイン間の実質的な相違にもかかわらず、マルチドメインネットワーク500におけるユーザーIDまたはグループIDの認識に基づいてエンドツーエンドポリシーを定義、展開、および維持することが依然として可能である。
【0070】
図6は、複数の管理ドメインをまたぐID認識ルーティングを可能にするためのプロセス600の一実施例示している。当業者であれば、本明細書で論じられる任意のプロセスに関して、別段の記載がない限り、様々な実施形態の範囲内で、同様のもしくは代替的な順序で、または並行して実行される追加の、より少ない、または代替的なステップが存在し得ることを理解するであろう。プロセス600は、本開示を通して議論される他の要素の中でもとりわけ、1つ以上のネットワークコントローラ(例えば、キャンパスネットワークコントローラ504、WANコントローラ132、データセンターネットワークコントローラ506など)、1つ以上のネットワークデバイス(例えば、WANアグリゲーションデバイス208、WANエッジデバイス142、他のエッジまたは境界デバイスなど)、AAAサービス(例えば、AAAサービス508)、およびホスト(例えば、ホスト206)、によって少なくとも部分的に実行され得る。
【0071】
プロセス600は、送信元ホスト(例えば、ホスト206)が、第1の管理ドメイン(例えば、キャンパス管理ドメイン502A)内のマルチドメインネットワーク(例えば、マルチドメインネットワーク500)の一端からトラフィックを開始するから開始することができ、トラフィックは、第2の管理ドメイン(例えば、WAN管理ドメイン502B)を介してルーティングされ得、最終的には、第3の管理ドメイン(例えば、データセンター管理ドメイン502C)のマルチドメインネットワークの他端内にある宛先ホストに向けられる。複数の管理ドメインをまたいで流れるトラフィックがプロセス600によって影響され得ることを示す目的で、図7は、複数の管理ドメインをまたいでエンドツーエンドでユーザーまたはグループの識別子を伝達するために使用され得るネットワークパケットフォーマット700の実施例を示している。送信元ホストは、宛先ホストに送信するための元のパケット702を生成することができる。元のパケット702は、メディアアクセス制御(MAC)ヘッダ710、IPヘッダ712、およびペイロード714を含む伝送制御プロトコル(TCP)/IPパケットであり得る。他のL2/L3プロトコルが、他の実施形態において使用され得る。
【0072】
元のパケット702は、キャンパス管理ドメイン502Aまたはキャンパスネットワーク152内でたどることができる経路は、ネットワークトポロジー、ネットワークまたはノード構成(例えば、デフォルトルート)、ドメイン内ポリシー(例えば、第1の管理ドメイン内のルーティングおよびスイッチングに影響を及ぼすポリシー)、ドメイン間ポリシー(例えば、異なる管理ドメイン間のルーティングおよびスイッチングに影響を及ぼすポリシー)などを含む、多くの要因に依存し得る。したがって、元のパケット702は、第1のオーバーレイエッジデバイス(例えば、WANアグリゲーションデバイス208A)に到達する前に、キャンパスネットワーク152の0個以上のノードを横断することができる。いくつかの実施形態では、送信元ホストのネクストホップまたはデフォルトルートは、キャンパスネットワーク152の第1のオーバーレイネットワークデバイスであり得る。第1のオーバーレイエッジデバイスは、元のパケット702のカプセル化を実行し、カプセル化されたパケットを、第1のオーバーレイネットワークおよび第1のオーバーレイエッジデバイスに対応するアンダーレイネットワークの0個以上のノード(例えば、ネットワークデバイス512)を含み得る、1つ以上のネクストホップにルーティングすることができる。第1のオーバーレイネットワークデバイス(存在する場合)と第1のオーバーレイエッジデバイスとの間にあるノードは、カプセル化されたパケットを必ずしも非カプセル化できるとは限らないが、従来のL2/L3ルーティングが可能であるため、アンダーレイ(または中間)ノードまたはデバイスと称され得る。他の実施形態では、ホストのためのデフォルトルートまたはネクストホップは、第1のオーバーレイエッジデバイスであり得る。
【0073】
ドメイン内ポリシーは、送信元ホストから第1のオーバーレイエッジデバイスへの元のパケットの経路にも影響を及ぼし得るが、例えば、特定のユーザーまたはグループのモバイルデバイスを第1の管理ドメインに許可または拒否するアクセスポリシー、IDベースのサービス品質(QoS)またはアプリケーションポリシー(例えば、開発チームからのトラフィックよりも本番ロールアウト中に品質保証(QA)チームからアプリケーションへのトラフィックを優先する)などがある。ホストから第1のオーバーレイエッジデバイスへの経路も、ドメイン間ポリシーに依存し得る。例えば、第1の管理ドメインは、出力前にトラフィックに対して特定のネットワークサービス(例えば、負荷分散、ファイアウォール、WAN最適化など)を実行することを必要とし得る。
【0074】
回り道して到着するか(例えば、まず非カプセル化を必要とする)、または直接到着するかにかかわらず、第1のオーバーレイエッジデバイスは、ユーザーまたはグループの識別子を調査し、ドメイン間ポリシーが元のパケット702に関連付けられたユーザーまたはグループに適用可能かどうかを判定すし、ドメイン間ポリシー(もしあれば)を適用してドメイン間ネクストホップを決定し、元のパケット702に対してドメイン間カプセル化を実行して、第1のカプセル化されたパケット704を生成することができる。例えば、第1のオーバーレイエッジデバイスは、AAAサービス(例えば、AAAサービス508)から、および/または第1のネットワークコントローラからのルートを経由して、ユーザーまたはグループの識別子およびドメイン間ポリシーを受信して、ドメイン間ネクストホップを決定することができる。L2/L3両方のネットワークを横断する機能をサポートするカプセル化の1つのタイプがVXLAN-GPOであり、ユーザーまたはグループの識別子の1つのタイプがSGTである。したがって、第1のカプセル化されたパケット704は、元のパケット702を外部MACヘッダ716A、外部IPヘッダ718A、UDPヘッダ720A、およびVXLANヘッダ722を用いてカプセル化するVXLAN-GPOカプセル化を含むことができる。VXLANヘッダ722は、ユーザーIDまたはグループID認識ルーティングを可能にするためのSGT724、およびさらなるネットワークセグメント化を可能にするためのVNID726を含むことができる。他のタイプのカプセル化およびユーザーまたはグループの識別子も、他の実施形態で使用され得る。
【0075】
SGTは、ホストのユーザー、グループ、デバイス、ロケーション、およびその他のIDベースの属性に基づいて、ホストに割り当てることができる。SGTはユーザーのアクセス資格を示すことができ、ホストからのトラフィックはSGT情報を搬送することができる。スイッチ、ルータ、ファイアウォール、およびその他のネットワークデバイスは、SGTを使用して、分類、伝送、および実施を経由したアクセスポリシーまたはセキュリティポリシーに基づいて転送決定を行うことができる。分類は、SGTをホストにマッピングすることができ、これは、動的または静的に実行され得る。動的分類は、アクセスレイヤにおいて実行でき、ネットワークアクセス制御ソリューション(例えば、電気電子技術者協会(IEEE)802.1X標準)を使用して実行され得る。SGTは、ホストの許可を経て割り当てることができる。静的分類は通常、データセンターサーバが接続されているネットワークデバイスの構成によってデータセンターで実行される。静的分類の例示的なオプションには、IPアドレス、VLAN、またはポートのSGTまたは同等のユーザーまたはグループの識別子(例えば、EPG)へのマッピングが含まれる。SGTは、ネットワークを介してトラフィックを追跡することができ、これは、インラインタグ付けまたはSGT交換プロトコル(SXP)のいずれかを介して達成され得る。インラインタグ付けを使用すると、SGTをパケットに埋め込むことができる。すべてのネットワークデバイスがインラインタグ付けをサポートしているわけではないため、SXPを使用してそのようなデバイス間でSGTマッピングを転送することができる。実施は、送信元と宛先のSGTに基づいて許可または拒否のポリシー決定を実装することができる(例えば、ネットワークデバイス上でセキュリティグループACL(SGACL)を使用し、ファイアウォール上でセキュリティグループファイアウォール(SGFW)を使用する)。
【0076】
出力エッジデバイスとして機能する第1のオーバーレイエッジデバイスは、第2の管理ドメインまたは第2のネットワークコントローラ(例えば、WANコントローラ132)の管理制御下にある第2のオーバーレイネットワーク(例えば、WAN)の1つ以上のエッジ入力デバイス(例えば、WANエッジデバイス142)にトラフィックを転送することによって、WANをまたいでトラフィックをルーティングするように構成され得る。ステップ602において、第2のオーバーレイネットワークのエッジ出力デバイスは、元のパケット702を含む第1のカプセル化されたパケット704を受信することができる。
【0077】
ステップ604において、エッジ出力デバイスは、第1のカプセル化されたパケットを非カプセル化して、非カプセル化されたパケット(すなわち、元のパケット702)とユーザーまたはグループの識別子を取得することができる。例えば、第1のエッジ出力デバイスは、VXLAN-GPOでカプセル化されたパケットを処理することが可能であり得、第1のカプセル化されたパケット704からの外部MACヘッダ716A、外部IPヘッダ718A、UDPヘッダ720A、およびVXLANヘッダ722を解析することができる。第1のエッジ出力デバイスは、VXLANヘッダ722をさらに処理して、SGT724およびVNID726を抽出することができる。次いで、エッジ出力デバイスは、ユーザーまたはグループの識別子に基づいて、ドメイン内またはドメイン間のポリシーが元のパケットに適用可能かどうかを判断することができる。場合によっては、これには、第1の管理ドメイン内のユーザーまたはグループの識別子を第2の管理ドメイン内のユーザーまたはグループの識別子にマッピングすることが含まれ得る。他の場合には、1つ以上のAAAサービス、第1のネットワークコントローラ、または第2のネットワークコントローラは、第1の管理ドメインから第2の管理ドメインにID認識を拡張するためのインターフェースを開示することができる。本実施例では、ユーザーまたはグループの識別子は直接マッピングすることができ(例えば、SGTからSGTに)、出力エッジデバイスは、ユーザーまたはグループの識別子に基づいて元のパケット702に適用可能なポリシーを取得することができる。
【0078】
ステップ606では、エッジ出力デバイスは、ユーザーまたはグループの識別子に基づいてポリシー(例えば、ドメイン内ポリシーまたはドメイン間ポリシー)を適用して、非カプセル化されたパケットのネクストホップを決定することができる。例えば、元のパケット702のネクストホップを決定することができる正規の従業員よりも幹部のビデオ会議トラフィックを優先するドメイン内ポリシーがあり得る。別の例として、トラフィックがキャンパスネットワーク152のユーザーから発信されたものでない限り、トラフィックをWANからデータセンター150に堅牢なIDSまたはIPSサービスを介してルーティングするドメイン間ポリシーがあり得、この場合、トラフィックは、堅牢性の低いIDSまたはIPSを介してルーティングされ得る。
【0079】
第1の管理ドメイン内の元のパケット702の経路と同様に、第2の管理ドメイン内の経路もまた、WANのトポロジー、WANエッジデバイス142の構成、ドメイン内ポリシー、ドメイン間ポリシーなどに依存することができる。例えば、第2の管理ドメインを介した経路は、入力WANエッジデバイスおよび出力WANエッジデバイスを含む、少なくとも1対のWANエッジデバイス142を含むことができる。他の場合には、経路は1つ以上の中間WANエッジデバイスをさらに含み得る。いずれの場合も、ステップ608において、入力WANエッジデバイスは、第1の非カプセル化されたパケットをカプセル化して、ネクストホップに対応する第2のヘッダを含み、かつ、ユーザーまたはグループの識別子を含む、第2のカプセル化パケット706を取得することができる。本実施例では、WANエッジデバイス142は、VRF認識IPsecまたはMPLS VPNを利用して、第2のカプセル化されたパケット706を取得することができる。
【0080】
VRF認識IPsecは、単一の公開アドレスを使用するVRFまたはMPLS VPN間のIPsecトンネリングに使用することができる。VRFは、WANエッジデバイス(例えば、WANエッジデバイス142)に接続されたWANサイト(例えば、WANサイト204)のVPNメンバーシップを定義するVPNごとのルーティング情報リポジトリを表すことができる。VRFには、IPルーティングテーブル、転送テーブル(例えば、Cisco(登録商標)Express Forwarding(CEF)から導出される)、転送テーブルを使用する一組のインターフェース、およびルーティングテーブルに含まれている情報を制御する一組のルールおよびルーティングプロトコルパラメータが含まれ得る。VPNごとに個別に、一組のルーティングテーブルおよびCEFテーブルが維持され得る。VRF認識IPsecは、2つのVRF(またはMPLS VPN)ドメイン、すなわち、外部のカプセル化パケットで表されるフロントドアVRF(FVRF)、および内部の保護されたIPパケットで表される内部VRF(IVRF)に対して、IPsecトンネルを定義する。すなわち、IPsecトンネルのローカルノードはFVRFに属することができ、内部パケットの送信元アドレスおよび宛先アドレスはIVRFに属することができる。FVRFの観点からは、VPNパケットは、サービスプロバイダーMPLSバックボーンネットワークからプロバイダーエッジ(PE)デバイス(例えば、第2の管理ドメインの1つ以上の中間ノード)に到着し、インターネットに面しているインターフェースを介してルーティングされ得る。パケットは、セキュリティポリシーデータベース(SPD)と照合でき、パケットはIPsecカプセル化される。SPDは、IVRFおよびACLを含むことができる。次いで、IPsecカプセル化されたパケットは、FVRFルーティングテーブルを使用して転送することができる。IVRFの観点からは、IPsecカプセル化されたパケットは、リモートのIPsecエンドポイントからPEデバイスに到着することができる。IPsecは、セキュリティパラメータインデックス(SPI)、宛先、およびプロトコルのセキュリティアソシエーション(SA)検索を実行することができる。パケットは、SAを使用して非カプセル化し、IVRFに関連付けることができる。パケットは、IVRFルーティングテーブルを使用して転送することができる。IPsecは、セキュリティパラメータインデックス(SPI)、宛先、およびプロトコルのセキュリティアソシエーション(SA)検索を実行することができる。
【0081】
WANエッジデバイス142の対は、データトラフィックを交換する前に、それらの間にIPsecトンネルを確立することができる。しかしながら、インターネットキーエクスチェンジ(IKE)を利用する代わりに、WANエッジデバイス142は、DTLS/TLSトンネル304を経由してデータプレーンキーを交換することができる。各WANエッジデバイス142は、そのデータ経路のための高度暗号化標準(AES)キー(例えば、TLOCごとに1つのキー)を定期的に生成し、OMPルート内でそのキーをWANコントローラ132に送信することができる。これらのパケットは、WANコントローラ132がネットワークトポロジーを決定するために使用する情報を含むことができ、これには各WANエッジデバイスのTLOCおよびAESキーが含まれる。WANコントローラ132は、OMPルートを到達可能範囲の通知として他のWANエッジネットワークデバイスに送信することができる。このようにして、WANコントローラ132は、WANをまたいでWANエッジデバイス142のAESキーを配布することができる。鍵交換は対称的であるが、WANコントローラ132は、鍵交換プロセスのスケーラビリティを単純化および改善し、対ごとの鍵の使用を回避するために、非対称的に鍵交換することができる。
【0082】
いくつかの実施形態では、WANエッジデバイス142の対は、VPN識別子738、メタデータヘッダ(例えば、CMD)732、内部MACヘッダ710、内部IPヘッダ712、ペイロード714、およびIPSecトレーラ734の一部分を含むMPLSヘッダ730を暗号化して、IPSecヘッダ728、MPLSヘッダ730、メタデータヘッダ732、内部MACヘッダ710、内部IPヘッダ712、ペイロード714、およびIPSecトレーラ734の一部を認証することができる。例えば、WANエッジデバイス142(例えば、入力WANエッジデバイスまたは最後から2番目のWANエッジデバイス)の第1の対は、IPSecを使用して、MPLSヘッダ730、メタデータヘッダ732、内部ヘッダ710と712、およびペイロード714を暗号化し、計算された暗号化ハッシュまたはダイジェストをペイロード714の末尾に配置して、IPSecトレーラ734に挿入することができる。WANエッジデバイス142の第1の対は、IPSecヘッダ728、MPLSヘッダ730(VPN識別子736を含む)、メタデータヘッダ732(SGT724を含む)、内部MACヘッダ710、内部IPヘッダ712、ペイロード714、および暗号化ハッシュまたはダイジェストデータを含むIPSecトレーラ734の一部分に認証プロセスを適用して、認証ハッシュまたはダイジェストデータを生成し、パケットの末尾に追加することもできる。WANエッジデバイス142(例えば、出力または最後のWANエッジデバイス)の第2の対は、同一のチェックサムを実行し、チェックサムが合致するパケットを受け入れ、合致しないパケットを破棄することができる。
【0083】
本実施例では、VPN識別子736は、MPLSヘッダ730内のMPLSラベルとしてカプセル化され、SGT724は、メタデータヘッダ732内のメタデータフィールドとしてカプセル化することができる。他の実施形態では、VPN識別子738およびSGT724の両方が、MPLSラベルとしてカプセル化され得る。他の実施形態では、他の様々な組み合わせも使用することができる。
【0084】
プロセス600は、第2のカプセル化されたパケットがそのネクストホップに転送され得るステップ610に進み得る。上述のように、ネクストホップは中間WANエッジデバイスにし得る。この場合、各WANエッジデバイスは、暗号化を行い、元のパケットが最後のWANエッジデバイスまたは出力WANエッジデバイスに到着するまで、経路の各ノードにおいて認証を要求することができる。
【0085】
ステップ612では、出力WANエッジデバイスは、最後から2番目のWANエッジデバイスから受信されたIPsecカプセル化パケットを処理して、(少なくとも)第2の非カプセル化されたパケットを取得することができる。これは、元のパケット702、SGT724、およびVPN識別子738を取得するための、IPsecカプセル化パケットの非カプセル化、復号化、および認証を含むことができる。これは、SGTをEPG742または同等のユーザーまたはグループの識別子にマッピングし、VPN識別子738をVNID744にマッピングし、適用可能なポリシーを適用して、ユーザーまたはグループの識別子に基づいて第2のドメイン間ネクストホップを決定し、元のパケット702、EPG742、およびVNID744をカプセル化することも含むことができる。いくつかの実施形態では、出力WANエッジデバイスは、第2の非カプセル化されたパケットにiVXLANカプセル化を適用して、(少なくとも)第3のカプセル化されたパケット708を取得することができる。例えば、第3のカプセル化されたパケットは、(少なくとも)第3の外部MACヘッダ716C、第3の外部IPヘッダ718C、第3のUDPヘッダ720C、iVXLANヘッダ746、内部MACヘッダ710、内部IPヘッダ712、およびペイロード714を含むことができる。iVXLANヘッダ746は、EPG742およびVNID744を含むことができる。
【0086】
プロセス600は、ステップ614で終了することができる。ステップ614では、出力WANエッジデバイスが第3のカプセル化されたパケットを第3の管理ドメイン(例えば、データセンター管理ドメイン502C)の入力エッジデバイス(例えば、WANアグリゲーションデバイス208B)に転送することができる。入力エッジデバイスは、第3のカプセル化されたパケットを受信し、第3のカプセル化されたパケットを非カプセル化して、(少なくとも)第4の非カプセル化されたパケット(例えば、元のパケット702)、ユーザーまたはグループの識別子(例えば、EPG742、および仮想ネットワーク識別子(VNID744など)を取得し、ユーザーまたはグループの識別子に基づいて元のパケットに適用可能なポリシーを適用し、元のパケットを宛先ホストに転送し得る。リターントラフィックをルーティングする場合も、同様のプロセスを逆に実行することができる。他の実施形態は、異なるトポロジー(例えば、キャンパス-WAN-ブランチ、DC-WAN-DC、キャンパス-DC、DC-WAN-ブランチなど)を有する管理ドメインまたはネットワーク、追加の管理ドメイン(外部ドメインまたは単一のネットワークオペレータの管理制御下にはないドメインを含む)、より少ない管理ドメインなどを含み得るが、当業者は、本開示の教示をこれらの他の実施形態に適用する方法を理解するであろう。
【0087】
いくつかの実施形態では、ネットワークは、複数の管理ドメインをまたいで適用され得るポリシーを定義するためのインターフェース(例えば、REST API、SDK、CLI、ウェブアプリケーション、デスクトップアプリケーションなど)を含むことができる。例えば、管理者は、インターフェースを利用して、各管理ドメインをまたいでエンドツーエンドで適用可能である単一のポリシー、2つ以上の管理ドメインをまたいで適用可能である単一のポリシー、および、追加の管理ドメインに適用可能である1つ以上の追加のポリシー、ドメインごとの個別のポリシー、複数のIDベースの属性(例えば、アプリケーションとID、QoSとグループID、ユーザーIDとロケーションなど)を組み合わせることができるポリシー、およびその他の様々な組み合わせ、を定義することができる。インターフェースは、ポリシーを解析し、互いに競合し得るポリシーに関する分析、ポリシーの優先順位付け方法の提案、ポリシーの組み合わせに関する提案、セキュリティギャップがあり得るポリシーの改善に関する提案などを提示することができる。
【0088】
上述のように、従来のアプリケーション認識ルーティングは、パケットヘッダ情報(例えば、宛先アドレス、ポート)および/またはディープパケットインスペクションに基づく粗いトラフィック分類に制限され得る。すなわち、従来のアプリケーション認識ルーティングは、特定のアプリケーションのすべてのトラフィックを特定の経路を通じてルーティングするべきであるというポリシーをサポートし得る。しかし、本開示で論じられる技術を使用することにより、ネットワークオペレータは、1つ以上の管理ドメインをまたいで最適な経路を選択するためのアプリケーションとともにユーザー/グループも考慮することによって、よりきめ細かいアプリケーション認識ポリシーを定義することができる。例えば、ネットワークオペレータは、ゲストユーザーと特定のSaaSネットワークの間のトラフィックをインターネット経路を通じてルーティングし、エンジニアとSaaSネットワークの間でMPLSを通じてトラフィックをルーティングし、IoTデバイスとSaaSネットワークプロバイダーの間でLTE経路を通じてトラフィックをルーティングするポリシーを定義することができる。
【0089】
図8は、ネットワークデバイス800(例えば、スイッチ、ルータ、ネットワークアプライアンスなど)の一実施例を示している。ネットワークデバイス800は、中央処理装置(CPU)802、インターフェース804、およびバス806(例えば、ペリフェラルコンポーネントインターコネクト(PCI)バス)を含むことができる。適切なソフトウェアまたはファームウェアの制御下で動作するときに、CPU802は、パケット管理、エラー検出、および/またはルーティング機能を実行する役割を担うことができる。CPU802は、好ましくは、オペレーティングシステムおよび任意の適切なアプリケーションソフトウェアを含むソフトウェアの制御下でこれらすべての機能を達成する。CPU802は、モトローラファミリーのマイクロプロセッサ、またはマイクロプロセッサインターロック無しパイプラインステージ(MIPS)ファミリーのマイクロプロセッサの中のプロセッサなど、1つ以上のプロセッサ808を含み得る。代替的な実施形態では、プロセッサ808は、ネットワークデバイス800の操作を制御するために特別に設計されたハードウェアであり得る。一実施形態では、メモリ810(不揮発性ランダムアクセスメモリ(RAM)および/または読み出し専用メモリ(ROM)など)は、CPU802の一部分を形成することもできる。しかしながら、メモリをシステムに結合することができる多くの異なる方式がある。
【0090】
インターフェース804は、インターフェースカード(ラインカードと称されることもある)として提供され得る。インターフェース804は、ネットワークを通じたデータパケットの送受信を制御することができ、ネットワークデバイス800で使用される他の周辺機器をサポートする場合がある。提供され得るインターフェースの中には、イーサネットインターフェース、フレームリレーインターフェース、ケーブルインターフェース、DSLインターフェース、トークンリングインターフェースなどがある。加えて、高速トークンリングインターフェース、ワイヤレスインターフェース、イーサネットインターフェース、ギガビットイーサネットインターフェース、非同期転送モード(ATM)インターフェース、高速シリアルインターフェース(HSSI)、パケットオーバーSONET(POS)インターフェース、光ファイバー分散データインターフェース(FDDI)など、様々な非常に高速なインターフェースが提供され得る。インターフェース804は、適切な媒体との通信に適したポートを含み得る。場合によっては、インターフェース804は、独立したプロセッサと、一部の例では、揮発性RAMも含み得る。独立したプロセッサは、パケット交換、媒体制御、管理などの通信集約型タスクを制御し得る。通信集約型タスクのために別個のプロセッサを提供することにより、インターフェース804は、CPU802がルーティング計算、ネットワーク診断、セキュリティ機能などを効率的に実行することを可能にし得る。
【0091】
図8に示されるシステムは、一実施形態のネットワークデバイスの一実施例であるが、本技術が実装され得る唯一のネットワークデバイスアーキテクチャであることを意味するものではない。例えば、通信およびルーティング計算や他のネットワーク機能を処理する単一のプロセッサを有するアーキテクチャを使用することができる。さらに、他のタイプのインターフェースおよび媒体もまた、ネットワークデバイス800とともに使用され得る。
【0092】
ネットワークデバイスの構成に関係なく、本明細書で説明するローミング、ルート最適化、およびルーティング機能のための汎用ネットワーク操作およびメカニズムのためのプログラム命令を格納するように構成された1つ以上のメモリまたはメモリモジュール(メモリ810を含む)を使用し得る。プログラム命令は、例えば、オペレーティングシステムおよび/または1つ以上のアプリケーションの操作を制御し得る。1つのメモリまたは複数のメモリは、モビリティバインディング、登録、および関連付けテーブルなどのテーブルを格納するように構成され得る。
【0093】
図9Aおよび図9Bは、様々な実施形態によるシステムを示している。様々な実施形態を実施するとき、より適切なシステムが当業者には明らかであろう。当業者は、他のシステムが可能であることも容易に理解するであろう。
【0094】
図9Aは、システムの構成要素がバス905を使用して互いに電気的に通信しているバスコンピューティングシステム900の一実施例を示している。コンピューティングシステム900は、処理部(CPUまたはプロセッサ)910、およびプロセッサ910に、読み出し専用メモリ(ROM)920およびランダムアクセスメモリ(RAM)925などのシステムメモリ915を含む様々なシステム構成要素を結合し得るシステムバス905を含むことができる。システム900は、プロセッサ910に直接接続されているか、近接しているか、またはそれの一部分として統合されている、高速メモリのキャッシュ912を含むことができる。システム900は、プロセッサ910による高速アクセスのために、メモリ915、ROM920、RAM925および/またはストレージデバイス930からキャッシュ912にデータをコピーすることができる。このようにして、キャッシュ912は、データを待機している間のプロセッサの遅延を回避するという性能向上を提供することができる。これらおよび他のモジュールは、プロセッサ910を制御して、様々な動作を実行することができる。他のシステムメモリ915も同様に利用可能であり得る。メモリ915は、異なるパフォーマンス特性を有する複数の異なるタイプのメモリを含むことができる。プロセッサ910は、任意の汎用プロセッサと、プロセッサ910を制御するように構成されたストレージデバイス930に格納されたモジュール1 932、モジュール2 934、およびモジュール3 936などのハードウェアモジュールまたはソフトウェアモジュール、ならびに、ソフトウェア命令が実際のプロセッサ設計に組み込まれている特別目的プロセッサを含むことができる。プロセッサ910は、本質的に、複数のコアまたはプロセッサ、バス、メモリコントローラ、キャッシュなどを含む、完全に自己完結型のコンピューティングシステムであり得る。マルチコアプロセッサは、対称または非対称であり得る。
【0095】
コンピューティングシステム900とのユーザーインタラクションを可能にするために、入力デバイス945は、音声用マイク、ジェスチャまたはグラフィック入力用のタッチスクリーン、キーボード、マウス、モーション入力、音声などの任意の数の入力メカニズムを表すことができる。出力デバイス935はまた、当業者に既知の一部の出力メカニズムのうちの1つ以上であり得る。場合によっては、マルチモーダルシステムは、ユーザーがコンピューティングデバイス900と通信するために複数のタイプの入力を提供することを可能にし得る。通信インターフェース940は、ユーザー入力およびシステム出力を統御および管理することができる。特定のハードウェア構成での操作に制限はないため、ここでの基本機能は、開発時に改善されたハードウェアまたはファームウェア構成に簡単に置き換え得る。
【0096】
ストレージデバイス930は、不揮発性メモリであり、磁気カセット、フラッシュメモリカード、ソリッドステートメモリデバイス、デジタル多用途ディスク、カートリッジ、ランダムアクセスメモリ、読み出し専用メモリ、およびそれらのハイブリッドなど、コンピュータがアクセス可能なデータを格納することができるハードディスクまたは他のタイプのコンピュータ可読媒体とすることができる。
【0097】
ストレージデバイス930は、プロセッサ910を制御するためのソフトウェアモジュール932、934、936を含むことができる。他のハードウェアまたはソフトウェアモジュールが企図される。ストレージデバイス930は、システムバス905に接続することができる。一態様では、特定の機能を実行するハードウェアモジュールは、その機能を実行するために、プロセッサ910、バス905、出力デバイス935などの必要なハードウェア構成要素に関連して、コンピュータ可読媒体に格納されたソフトウェア構成要素を含むことができる。
【0098】
図9Bは、一実施形態により使用され得るチップセットコンピューティングシステム950の例示的アーキテクチャを示している。コンピューティングシステム950は、特定された計算を実行するように構成されたソフトウェア、ファームウェア、およびハードウェアを実行することができる任意の数の物理的および/または論理的に異なるリソースを表すプロセッサ955を含むことができる。プロセッサ955は、プロセッサ955への入力およびプロセッサ955からの出力を制御することができるチップセット960と通信することができる。本実施例では、チップセット960は、ディスプレイなどの出力デバイス965に情報を出力することができ、磁気媒体、固体媒体、および他の適切な記憶媒体を含み得るストレージデバイス970に情報を読み書きすることができる。チップセット960は、RAM975からデータを読み出し、それにデータを書き込むことができる。様々なユーザーインターフェース構成要素985とインターフェースするためのブリッジ980が、チップセット960とインターフェースするために提供され得る。ユーザーインターフェース構成要素985は、キーボード、マイクロフォン、タッチ検出および処理回路、マウスなどのポインティングデバイスなどを含むことができる。コンピューティングシステム950への入力は、機械生成および/または人間生成の様々なソースのいずれかから来ることができる。
【0099】
チップセット960は、様々な物理的インターフェースを有することができる1つ以上の通信インターフェース990ともインターフェースすることもできる。通信インターフェース990は、有線および無線ローカルエリアネットワーク(LAN)、ブロードバンド無線ネットワーク、ならびにパーソナルエリアネットワークのためのインターフェースを含むことができる。本明細書に開示される技術を生成、表示、および使用するための方法のいくつかのアプリケーションは、物理的インターフェースを通じて順序付けられたデータセットを受信することを含み得、またはストレージデバイス970またはRAM975に格納されたデータを分析するプロセッサ955によってマシン自体によって生成され得る。さらに、コンピューティングシステム950は、ユーザーインターフェース構成要素985を経由してユーザーから入力を受け取り、プロセッサ955を使用してこれらの入力を解釈することによってブラウジング機能などの適切な機能を実行することができる。
【0100】
コンピューティングシステム900および950は、それぞれ2つ以上のプロセッサ910および955を有することができ、またはより大きな処理能力を提供するために一緒にネットワーク化されたコンピューティングデバイスのグループまたはクラスタの一部分であり得ることが理解されよう。
【0101】
説明を明確にするために、場合によっては、様々な実施形態は、ソフトウェアで具体化される方法におけるデバイス、デバイスコンポーネント、ステップもしくはルーチン、またはハードウェアとソフトウェアの組み合わせを備える機能ブロックを含む個々の機能ブロックを含むものとして提示され得る。
【0102】
いくつかの実施形態では、コンピュータ可読ストレージデバイス、媒体、およびメモリは、ビットストリームなどを含むケーブルまたは無線信号を含むことができる。しかしながら、言及される場合、非一時的コンピュータ可読記憶媒体は、エネルギー、搬送波信号、電磁波、および信号自体などの媒体を明示的に除外する。
【0103】
上記の例による方法は、コンピュータ可読媒体に格納されているか、他の場合にはそれから利用可能であるコンピュータ実行可能命令を使用して実装することができる。そのような命令は、例えば、特定の機能または機能のグループを実行するために、汎用コンピュータ、専用コンピュータ、または専用処理デバイスを引き起こすか、あるいは構成する命令およびデータを含むことができる。使用されるコンピュータリソースの部分は、ネットワーク経由でアクセス可能であり得る。コンピュータの実行可能命令は、例えば、バイナリ、アセンブリ言語、ファームウェア、またはソースコードなどの中間フォーマット命令であり得る。命令、使用される情報、および/または説明された実施例による方法中に作成された情報を格納するために使用され得るコンピュータ可読媒体の実施例は、磁気ディスクまたは光ディスク、フラッシュメモリ、不揮発性メモリを備えたユニバーサルシリアルバス(USB)デバイス、ネットワークストレージデバイスなどを含む。
【0104】
これらの開示による方法を実装するデバイスは、ハードウェア、ファームウェア、および/またはソフトウェアを含むことができ、様々なフォームファクタのいずれかを取ることができる。このようなフォームファクタの実施例としては、サーバ、ラックマウントデバイス、デスクトップコンピュータ、ラップトップコンピュータなどの汎用コンピューティングデバイス、またはタブレットコンピュータ、スマートフォン、携帯情報端末、ウェアラブルデバイスなどの汎用モバイルコンピューティングデバイスが含まれる。本明細書で説明される機能はまた、周辺機器またはアドインカードで具体化され得る。このような機能は、さらなる例として、単一のデバイスで実行される異なるチップまたは異なるプロセスの間の回路基板上に実装することもできる。
【0105】
命令、そのような命令を伝達するための媒体、それらを実行するためのコンピューティングリソース、およびそのようなコンピューティングリソースをサポートするための他の構造は、これらの開示に記載された機能を提供するための手段である。
【0106】
添付の特許請求の範囲の範疇の態様を説明するために、様々な例および他の情報を使用したが、当業者であれば、多種多様な実装形態を導出するために、これらの例を使用することができるように、かかる例における特定の特徴または構成に基づいて、特許請求の範囲のいかなる制限も示唆されるべきではない。さらに、一部の主題は、構造的特徴および/または方法ステップの例に固有の言語で説明されている場合があるが、添付の特許請求の範囲で定義される主題は、必ずしもこれらの説明された特徴または行為に限定されないことを理解されたい。例えば、かかる機能は、ここで特定されている構成要素以外の構成要素で、異なって配布し、または実行することができる。むしろ、説明された特徴およびステップは、添付の特許請求の範囲の範疇のシステムおよび方法の構成要素の例として開示される。
図1
図2
図3
図4
図5
図6
図7
図8
図9A
図9B