(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-08-15
(45)【発行日】2023-08-23
(54)【発明の名称】動的なインテントベースのファイアウォール
(51)【国際特許分類】
H04L 41/0806 20220101AFI20230816BHJP
H04L 41/0894 20220101ALI20230816BHJP
H04L 41/0895 20220101ALI20230816BHJP
H04L 45/02 20220101ALI20230816BHJP
H04L 45/745 20220101ALI20230816BHJP
【FI】
H04L41/0806
H04L41/0894
H04L41/0895
H04L45/02
H04L45/745
(21)【出願番号】P 2021521411
(86)(22)【出願日】2019-11-12
(86)【国際出願番号】 US2019060910
(87)【国際公開番号】W WO2020112345
(87)【国際公開日】2020-06-04
【審査請求日】2022-04-28
(32)【優先日】2018-11-30
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2019-06-06
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】508041127
【氏名又は名称】シスコ テクノロジー,インコーポレイテッド
(74)【代理人】
【識別番号】100079108
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100140431
【氏名又は名称】大石 幸雄
(72)【発明者】
【氏名】ヴァルリ,ヴァムシダール
(72)【発明者】
【氏名】ラーダークリシュナン,サラバナン
(72)【発明者】
【氏名】オズワル,アナンド
(72)【発明者】
【氏名】プラブ,ヴィナイ
(72)【発明者】
【氏名】エヴァンズ,サラ アデレード
(72)【発明者】
【氏名】ランガスワーミー,スーラジ
【審査官】安藤 一道
(56)【参考文献】
【文献】米国特許第08316435(US,B1)
【文献】特表2005-505175(JP,A)
【文献】特表2014-503135(JP,A)
【文献】特表2018-506237(JP,A)
【文献】米国特許出願公開第2016/0205071(US,A1)
【文献】米国特許出願公開第2013/0074177(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 41/0806
H04L 41/0894
H04L 41/0895
H04L 45/02
H04L 45/745
(57)【特許請求の範囲】
【請求項1】
コンピュータ実装方法であって、
ネットワークコントローラによって、前記ネットワークコントローラによって管理される複数のエッジネットワークデバイスから到達可能な複数のネットワークセグメントについてのマスタールートテーブルを生成することと、
前記ネットワークコントローラによって
ネットワーク管理システムから、前記複数のネットワークセグメントを1つ以上のゾーンにマッピングするゾーン定義情報と、1つ以上のゾーンベースのファイアウォール(ZFW)ポリシーであって、各ZFWポリシーによって指定された送信元ゾーンと宛先ゾーンとの間のトラフィックに適用するZFWポリシーと、を受信することと、
前記ネットワークコントローラによって、第1のZFWポリシーを評価して、前記第1のZFWポリシーによって指定された第1の送信元ゾーンにマッピングされた1つ以上の第1のネットワークセグメントに到達することができる1つ以上の第1のエッジネットワークデバイスと、前記第1のZFWポリシーによって指定された第1の宛先ゾーンにマッピングされた1つ以上の第2のネットワークセグメン
トに到達することができる1つ以上の第2のエッジネットワークデバイスと、前記マスタールートテーブルからの、前記1つ以上の第1のネットワークセグメント、前記1つ以上の第1のエッジネットワークデバイス、前記1つ以上の第2のエッジネットワークデバイス、および前記1つ以上の第2のネットワークセグメント間の、第1のルーティング情報と、を判定することと、
前記ネットワークコントローラによって、前記第1のルーティング情報を前記1つ以上の第1のエッジネットワークデバイスおよび前記1つ以上の第2のエッジネットワークデバイスに伝送することと、を含む、方法。
【請求項2】
前記第1のZFWポリシーが、検査アクションを含み、前記方法が、
前記マスタールートテーブルからの、前記1つ以上の第2のネットワークセグメント、前記1つ以上の第2のエッジネットワークデバイス、前記1つ以上の第1のエッジネットワークデバイス、および前記1つ以上の第1のネットワークセグメント間の、第2のルーティング情報を判定することと、
送信元が前記1つ以上の第1のネットワークセグメントに対応し、かつ宛先が前記1つ以上の第2のネットワークセグメントに対応するトラフィックを受信することに応答して、前記第2のルーティング情報を前記1つ以上の第2のエッジネットワークデバイスおよび前記1つ以上の第1のエッジネットワークデバイスに伝送することと、をさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項3】
前記複数のネットワークセグメントが、複数の仮想プライベートネットワーク(VPN)を含み、前記ゾーン定義情報が、前記複数のVPNを前記1つ以上のゾーンにマッピングする情報を含み、各ゾーンが、前記複数のエッジネットワークデバイスのインターフェースに対してアンバインドされる、請求項1または2に記載のコンピュータ実装方法。
【請求項4】
前記複数のネットワークセグメントが、ルート属性を共有する複数のネットワークオブジェクト、パケットヘッダ属性を共有する複数のネットワークオブジェクト、パケットペイロード属性を共有する複数のネットワークオブジェクト、アイデンティティ情報を共有する複数のネットワークオブジェクト、複数の仮想ローカルエリアネットワーク(VLAN)、複数の仮想ネットワーク識別子(VNID)、複数の仮想ルーティングおよび転送インスタンス(VRF)、複数のエンドポイントグループ(EPG)、またはロケーションもしくはネットワークサイト識別子を共有する複数のネットワークオブジェクト、のうちの少なくとも1つを含み、
前記ゾーン定義情報が、前記ルート属性を共有する複数のネットワークオブジェクト、前記パケットヘッダ属性を共有する複数のネットワークオブジェクト、前記パケットペイロード属性を共有する複数のネットワークオブジェクト、前記
アイデンティティ情報を共有する複数のネットワークオブジェクト、前記複数のVLAN、前記複数のVNID、前記複数のVRF、前記複数のEPG、または前記ロケーションもしくはネットワークサイト識別子情報を共有する複数のネットワークオブジェクト、のうちの少なくとも1つを前記1つ以上のゾーンにマッピングする情報を含み、
各ゾーンが、前記複数のエッジネットワークデバイスのインターフェースに対してアンバインドされる、請求項1~3のいずれかに記載のコンピュータ実装方法。
【請求項5】
第3のゾーンにマッピングされたネットワークセグメントのいずれも、前記1つ以上の第1のエッジネットワークデバイスから第1の時間に到達可能ではなく、前記1つ以上の第1のエッジネットワークデバイスが、前記第3のゾーンにマッピングされた任意のネットワークセグメントと前記1つ以上の第1のエッジネットワークデバイスとの間の第2のルーティング情報を除外する、請求項1~4のいずれかに記載のコンピュータ実装方法。
【請求項6】
前記第3のゾーンにマッピングされた1つ以上の第3のネットワークセグメントが、第2の時間に前記1つ以上の第1のエッジネットワークデバイスから到達可能であると判定することと、
前記1つ以上の第3のネットワークセグメントと前記1つ以上の第1のエッジネットワークデバイスとの間の第2のルーティング情報で前記マスタールートテーブルを更新することと、
第2のZFWポリシーを評価して、前記1つ以上の第1のエッジネットワークデバイスが前記1つ以上の第3のネットワークセグメントに到達することができ、かつ前記第3のゾーンが、前記第2のZFWポリシーによって指定された第2送信元ゾーンであることと、前記第2のZFWポリシーによって指定された第2の宛先ゾーンにマッピングされた1つ以上の第4のネットワークセグメントに到達することができる1つ以上の第3のエッジネットワークデバイスと、前記マスタールートテーブルからの、前記1つ以上の第3のネットワークセグメント、前記1つ以上の第1のエッジネットワークデバイス、前記1つ以上の第3のエッジネットワークデバイス、および前記1つ以上の第4のネットワークセグメント間の、第3のルーティング情報と、を判定することと、
前記第3のルーティング情報を、前記1つ以上の第1のエッジネットワークデバイスおよび前記1つ以上の第3のエッジネットワークデバイスに伝送することと、をさらに含む、請求項5に記載のコンピュータ実装方法。
【請求項7】
前記1つ以上の第1のネットワークセグメントが、前記1つ以上の第1のエッジネットワークデバイスから到達可能ではなくなったと判定することと、
前記1つ以上の第1のエッジネットワークデバイスから前記第1のルーティング情報を削除することと、をさらに含む、請求項1~6のいずれかに記載のコンピュータ実装方法。
【請求項8】
前記1つ以上の第1のネットワークセグメントが、前記1つ以上の第3のエッジネットワークデバイスから到達可能であると判定することと、
前記1つ以上の第1のネットワークセグメント、前記1つ以上の第3のエッジネットワークデバイス、前記1つ以上の第2のエッジネットワークデバイス、および前記1つ以上の第2のネットワークセグメント間の、第2のルーティング情報で、前記マスタールートテーブルを更新することと、
前記第1のZFWポリシーを評価して、前記1つ以上の第3のエッジネットワークデバイスが、前記1つ以上の第1のネットワークセグメント、前記1つ以上の第2のエッジネットワークデバイス、および前記第2のルーティング情報に到達することができると判定することと、
前記第2のルーティング情報を、前記1つ以上の第3のエッジネットワークデバイスおよび前記1つ以上の第2のエッジネットワークデバイスに伝送することと、をさらに含む、請求項7に記載のコンピュータ実装方法。
【請求項9】
前記ゾーン定義情報または前記1つ以上のZFWポリシーのうちの少なくとも1つの1つ以上の更新を
前記ネットワーク管理システムから受信することと、
前記1つ以上の更新に基づいて、前記第1のルーティング情報の少なくとも1つの第1のルートが利用可能ではなくなったと判定することと、
前記1つ以上の第1のエッジネットワークデバイスから前記第1のルートを削除することと、をさらに含む、請求項1~8のいずれかに記載のコンピュータ実装方法。
【請求項10】
前記第1のZFWポリシーによって指定された1つ以上の送信元適合条件に対応する1つ以上の送信元プレフィックスを判定することと、
前記第1のZFWポリシーによって指定された1つ以上の宛先適合条件に対応する1つ以上の宛先プレフィックスを判定することと、
前記1つ以上の送信元プレフィックスと前記1つ以上の宛先プレフィックスとに基づいて、前記マスタールートテーブルから前記第1のルーティング情報を取り出すことと、をさらに含む、請求項1~9のいずれかに記載のコンピュータ実装方法。
【請求項11】
前記1つ以上の宛先プレフィックスと前記1つ以上の送信元プレフィックスとに基づいて前記マスタールートテーブルから第2のルーティング情報を取り出すことと、
送信元が前記送信元プレフィックスに対応し、かつ宛先が前記1つ以上の宛先プレフィックスに対応するトラフィックを受信することに応答して、前記第2のルーティング情報を前記1つ以上の第2のエッジネットワークデバイスおよび前記1つ以上の第1のエッジネットワークデバイスに伝送することと、をさらに含む、請求項10に記載のコンピュータ実装方法。
【請求項12】
前記第1のZFWポリシーの1つ以上のデフォルトの送信元適合条件に対応する1つ以上の送信元プレフィックスを判定することと、
前記第1のZFWポリシーの1つ以上のデフォルトの宛先適合条件に対応する1つ以上の宛先プレフィックスを判定することと、
前記1つ以上の送信元プレフィックスと前記1つ以上の宛先プレフィックスとに基づいて、前記マスタールートテーブルから前記第1のルーティング情報を取り出すことと、をさらに含む、請求項1~11のいずれかに記載のコンピュータ実装方法。
【請求項13】
システムであって、
1つ以上のプロセッサと、
命令を含むメモリと、を備え、前記命令が、前記1つ以上のプロセッサによって実行されたときに、前記システムに、
前記システムによって管理される複数のエッジネットワークデバイスから到達可能な複数のネットワークセグメントについてのマスタールートテーブルを生成することと、
ネットワーク管理システムから、前記複数のネットワークセグメントを1つ以上のゾーンにマッピングするゾーン定義情報と、1つ以上のゾーンベースのファイアウォール(ZFW)ポリシーであって、各ZFWポリシーによって指定された送信元ゾーンと宛先ゾーンとの間のトラフィックに適用するZFWポリシーと、を受信することと、
第1のZFWポリシーを評価して、前記第1のZFWポリシーによって指定された第1の送信元ゾーンにマッピングされた1つ以上の第1のネットワークセグメントに到達することができる1つ以上の第1のエッジネットワークデバイスと、前記第1のZFWポリシーによって指定された第1の宛先ゾーンにマッピングされた1つ以上の第2のネットワークセグメントに到達することができる1つ以上の第2のエッジネットワークデバイスと、前記マスタールートテーブルからの、前記1つ以上の第1のネットワークセグメント、前記1つ以上の第1のエッジネットワークデバイス、前記1つ以上の第2のエッジネットワークデバイス、および前記1つ以上の第2のネットワークセグメント間の、第1のルーティング情報と、を判定することと、
前記第1のルーティング情報を、前記1つ以上の第1のエッジネットワークデバイスおよび前記1つ以上の第2のエッジネットワークデバイスに伝送することと、を行わせる、システム。
【請求項14】
前記複数のネットワークセグメントが、複数の仮想プライベートネットワーク(VPN)を含み、前記ゾーン定義情報が、前記複数のVPNを前記1つ以上のゾーンにマッピングする情報を含み、各ゾーンが、前記複数のエッジネットワークデバイスのインターフェースに対してアンバインドされる、請求項13に記載のシステム。
【請求項15】
前記命令が、実行されたときに、前記システムに、
第3のゾーンにマッピングされた1つ以上の第3のネットワークセグメントが、前記1つ以上の第1のエッジネットワークデバイスから到達可能であると判定することと、
前記1つ以上の第3のネットワークセグメントと前記1つ以上の第1のエッジネットワークデバイスとの間の第2のルーティング情報で前記マスタールートテーブルを更新することと、
第2のZFWポリシーを評価して、前記1つ以上の第1のエッジネットワークデバイスが前記1つ以上の第3のネットワークセグメントに到達することができ、かつ前記第3のゾーンが、前記第2のZFWポリシーによって指定された第2送信元ゾーンであることと、前記第2のZFWポリシーによって指定された第2の宛先ゾーンにマッピングされた1つ以上の第4のネットワークセグメントに到達することができる1つ以上の第3のエッジネットワークデバイスと、前記マスタールートテーブルからの、前記1つ以上の第3のネットワークセグメント、前記1つ以上の第1のエッジネットワークデバイス、前記1つ以上の第3のエッジネットワークデバイス、および前記1つ以上の第4のネットワークセグメント間の、第3のルーティング情報と、を判定することと、
前記第3のルーティング情報を、前記1つ以上の第1のエッジネットワークデバイスおよび前記1つ以上の第3のエッジネットワークデバイスに伝送することと、をさらに行わせる、請求項13または14に記載のシステム。
【請求項16】
前記命令が、実行されたときに、前記システムに、
前記1つ以上の第1のネットワークセグメントが、前記1つ以上の第1のエッジネットワークデバイスから到達可能ではなくなったと判定することと、
前記1つ以上の第1のエッジネットワークデバイスから前記第1のルーティング情報を削除することと、
前記1つ以上の第1のネットワークセグメントが、前記1つ以上の第3のエッジネットワークデバイスから到達可能であると判定することと、
前記1つ以上の第1のネットワークセグメント、前記1つ以上の第3のエッジネットワークデバイス、前記1つ以上の第2のエッジネットワークデバイス、および前記1つ以上の第2のネットワークセグメント間の、第2のルーティング情報で、前記マスタールートテーブルを更新することと、
前記第1のZFWポリシーを評価して、前記1つ以上の第3のエッジネットワークデバイスが、前記1つ以上の第1のネットワークセグメント、前記1つ以上の第2のエッジネットワークデバイス、および前記第2のルーティング情報に到達することができると判定することと、
前記第2のルーティング情報を、前記1つ以上の第3のエッジネットワークデバイスおよび前記1つ以上の第2のエッジネットワークデバイスに伝送することと、をさらに行わせる、請求項13~15のいずれかに記載のシステム。
【請求項17】
命令を含む非一時的コンピュータ可読記憶媒体であって、前記命令が、システムの1つ以上のプロセッサによって実行されると、前記システムに、
前記システムによって管理される複数のエッジネットワークデバイスから到達可能な複数のネットワークセグメントについてのマスタールートテーブルを生成することと、
ネットワーク管理システムから、前記複数のネットワークセグメントを1つ以上のゾーンにマッピングするゾーン定義情報と、1つ以上のゾーンベースのファイアウォール(ZFW)ポリシーであって、各ZFWポリシーによって指定された送信元ゾーンと宛先ゾーンとの間のトラフィックに適用するZFWポリシーと、を受信することと、
第1のZFWポリシーを評価して、前記第1のZFWポリシーによって指定された第1の送信元ゾーンにマッピングされた1つ以上の第1のネットワークセグメントに到達することができる1つ以上の第1のエッジネットワークデバイスと、前記第1のZFWポリシーによって指定された第1の宛先ゾーンにマッピングされた1つ以上の第2のネットワークセグメントに到達することができる1つ以上の第2のエッジネットワークデバイスと、前記マスタールートテーブルからの、前記1つ以上の第1のネットワークセグメント、前記1つ以上の第1のエッジネットワークデバイス、前記1つ以上の第2のエッジネットワークデバイス、および前記1つ以上の第2のネットワークセグメント間の、第1のルーティング情報と、を判定することと、
前記第1のルーティング情報を、前記1つ以上の第1のエッジネットワークデバイスおよび前記1つ以上の第2のエッジネットワークデバイスに伝送することと、を行わせる、非一時的コンピュータ可読記憶媒体。
【請求項18】
前記複数のネットワークセグメントが、ルート属性を共有する複数のネットワークオブジェクト、パケットヘッダ属性を共有する複数のネットワークオブジェクト、パケットペイロード属性を共有する複数のネットワークオブジェクト、アイデンティティ情報を共有する複数のネットワークオブジェクト、複数の仮想ローカルエリアネットワーク(VLAN)、複数の仮想ネットワーク識別子(VNID)、複数の仮想ルーティングおよび転送インスタンス(VRF)、複数のエンドポイントグループ(EPG)、またはロケーションもしくはネットワークサイト識別子を共有する複数のネットワークオブジェクト、のうちの少なくとも1つを含み、
前記ゾーン定義情報が、前記ルート属性を共有する複数のネットワークオブジェクト、前記パケットヘッダ属性を共有する複数のネットワークオブジェクト、前記パケットペイロード属性を共有する複数のネットワークオブジェクト、前記
アイデンティティ情報を共有する複数のネットワークオブジェクト、前記複数のVLAN、前記複数のVNID、前記複数のVRF、前記複数のEPG、または前記ロケーションもしくはネットワークサイト識別子情報を共有する複数のネットワークオブジェクト、のうちの少なくとも1つを前記1つ以上のゾーンにマッピングする情報を含み、
各ゾーンが、前記複数のエッジネットワークデバイスのインターフェースに対してアンバインドされる、請求項17に記載の非一時的コンピュータ可読記憶媒体。
【請求項19】
前記命令が、実行されたときに、前記システムに、
前記ゾーン定義情報または前記1つ以上のZFWポリシーのうちの少なくとも1つの1つ以上の更新を
前記ネットワーク管理システムから受信することと、
前記1つ以上の更新に基づいて、前記第1のルーティング情報の少なくとも1つの第1のルートが利用可能ではなくなったと判定することと、
前記1つ以上の第1のエッジネットワークデバイスから前記第1のルートを削除することと、をさらに行わせる、請求項17または18に記載の非一時的コンピュータ可読記憶媒体。
【請求項20】
前記命令が、実行されたときに、前記システムに、
前記第1のZFWポリシーによって指定された1つ以上の送信元適合条件に対応する1つ以上の送信元プレフィックスを判定することと、
前記第1のZFWポリシーによって指定された1つ以上の宛先適合条件に対応する1つ以上の宛先プレフィックスを判定することと、
前記マスタールートテーブルから、前記1つ以上の送信元プレフィックスと前記1つ以上の宛先プレフィックスとの間の前記第1のルーティング情報を取り出すことと、
前記マスタールー
トテーブルから、前記1つ以上の宛先プレフィックスと前記1つ以上の送信元プレフィックスとの間の第2のルーティング情報を取り出すことと、
送信元が前記送信元プレフィックスに対応し、かつ宛先が前記1つ以上の宛先プレフィックスに対応するトラフィックを受信することに応答して、前記第2のルーティング情報を前記1つ以上の第2のエッジネットワークデバイスおよび前記1つ以上の第1のエッジネットワークデバイスに伝送することと、をさらに行わせる、請求項17~19のいずれかに記載の非一時的コンピュータ可読記憶媒体。
【請求項21】
装置であって、
ネットワークコントローラによって、前記ネットワークコントローラによって管理される複数のエッジネットワークデバイスから到達可能な複数のネットワークセグメントについてのマスタールートテーブルを生成するための手段と、
前記ネットワークコントローラによって
ネットワーク管理システムから、前記複数のネットワークセグメントを1つ以上のゾーンにマッピングするゾーン定義情報と、1つ以上のゾーンベースのファイアウォール(ZFW)ポリシーであって、各ZFWポリシーによって指定された送信元ゾーンと宛先ゾーンとの間のトラフィックに適用するZFWポリシーと、を受信するための手段と、
前記ネットワークコントローラによって、第1のZFWポリシーを評価して、前記第1のZFWポリシーによって指定された第1の送信元ゾーンにマッピングされた1つ以上の第1のネットワークセグメントに到達することができる1つ以上の第1のエッジネットワークデバイスと、前記第1のZFWポリシーによって指定された第1の宛先ゾーンにマッピングされた1つ以上の第2のネットワークセグメン
トに到達することができる1つ以上の第2のエッジネットワークデバイスと、前記マスタールートテーブルからの、前記1つ以上の第1のネットワークセグメント、前記1つ以上の第1のエッジネットワークデバイス、前記1つ以上の第2のエッジネットワークデバイス、および前記1つ以上の第2のネットワークセグメント間の、第1のルーティング情報と、を判定するための手段と、
前記ネットワークコントローラによって、前記第1のルーティング情報を前記1つ以上の第1のエッジネットワークデバイスおよび前記1つ以上の第2のエッジネットワークデバイスに伝送するための手段と、を含む、装置。
【請求項22】
請求項2~12のいずれかに記載の方法を実装するための手段をさらに備える、請求項21に記載の装置。
【請求項23】
コンピュータによって実行されたときに、前記コンピュータに、請求項1~12のいずれかに記載の方法のステップを実行させるための命令を含む、コンピュータプログラ
ム。
【請求項24】
コンピュータによって実行されたときに、前記コンピュータに、請求項1~12のいずれかに記載の方法のステップを実行させるための命令を含む、コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
この出願は、2018年11月30日に出願された「DYNAMIC INTENT-BASED FIREWALL」と題された米国仮特許出願第62/774,103号の利益を主張する、2019年6月6日に出願された「DYNAMIC INTENT-BASED FIREWALL」と題された米国非仮特許出願第16/434,115号の利益および優先権を主張し、その内容は、参照によりその全体が本明細書に組み込まれる。
【0002】
本開示の主題は、一般に、コンピュータネットワーキングの分野に関し、より具体的には、動的なインテントベースのファイアウォールをプロビジョニングするためのシステムおよび方法に関する。
【背景技術】
【0003】
ステートフルファイアウォールは、ファイアウォールをトラバースする、特定のネットワーク接続またはセッションの動作状態および特性(例えば、伝送制御プロトコル(TCP)、ユーザーデータグラムプロトコル(UDP)、インターネット制御メッセージプロトコル(ICMP)など)を追跡することができるネットワークセキュリティ機能である。ステートフルファイアウォールは、ネットワークセグメント間にバリアを確立し、一方のセグメントからの接続またはセッションの開始を許可し、他方のセグメントからの既知のアクティブな接続またはセッションに適合するそれらのパケットのみを許可する。歴史的に、ステートフルファイアウォールは、ネットワークデバイスの特定のインターフェースにネットワーク接続のルールのセット(例えば、アクセス制御リスト(ACL))を適用して、ファイアウォールの一方側のホスト(コンピューティングデバイス、コンピューティングシステム、エンドポイントなどとも呼ばれ、サーバ、サービス、クライアントなどを含み得る)からトラフィックを発信することを可能にし、かつファイアウォールの他方側のホストからの戻りトラフィックを可能にするための一次的なACLエントリーを作成する、コンテキストベースアクセス制御(CBAC)モデルを使用して構成されていた。CBACファイアウォールを実装するには、管理者または他のユーザーがインターフェースごとにファイアウォールを構成する必要があり、これは、個々のネットワークデバイス上のインターフェースの数と、ネットワーク内のネットワークデバイスの数と、が増加するにつれて、たちまち管理不能な数になり得る。加えて、CBAC下では、特定のインターフェースを通過するすべてのトラフィックは、同じ処理またはインスペクションポリシーを受けなければならない。このことは、トラフィックの発信および方向に応じてトラフィックが異なって処理されるのを防げることによって、セキュリティを低下させ得る。
【0004】
ゾーンベースのファイアウォール(ZFW)は、インターフェースをゾーンに割り当てることができ、かつゾーン間を移動するトラフィックにインスペクションポリシーを適用することができる、より柔軟でより理解しやすいゾーンベースのモデルを使用することによって、CBACファイアウォールを改善する。ゾーン間ポリシーは、CBACファイアウォールポリシーよりも大きな柔軟性および粒度を提供し、同じインターフェースに接続されたホストの複数のグループに異なるインスペクションポリシーを適用することを可能にすることができる。例えば、ネットワークオペレータは、組織のネットワークの内部に向けてトラフィックをルーティングするインターフェースのセットを含むプライベートゾーン、組織の公開ホスト(例えば、ウェブ、メール、ファイル転送プロトコル(FTP)サーバなど)にトラフィックをルーティングするインターフェースのセットを含む非武装地帯(DMZ)、トラフィックをインターネットにルーティングするインターフェースのセットを含むパブリックゾーン、およびパブリックゾーン(すなわち、インターネットに接続されたインターフェース)とDMZ(すなわち、組織の公開ホストに接続されたインターフェース)との間、およびDMZとプライベートゾーン(すなわち、組織のプライベートホストに接続されたインターフェース)との間で、トラフィックがいずれの方向にも自由に流れることを可能にするが、プライベートゾーンからパブリックゾーンへと開始されるフロー、およびパブリックゾーンからプライベートゾーンへの戻りフローを許容するのみのポリシーなどのゾーンペアポリシーを定義することができる
【0005】
ZFWはまた、CBACファイアウォールよりも高いセキュリティを提供することもでき、その理由は、CBACファイアウォールが、トラフィックをブロックするようにACLが明示的に定義されない限り、デフォルトでインターフェースを通るすべてのトラフィックを許可するブラックリストセキュリティモデルに依存しているのに対して、ZFWが、トラフィックを許可するようにポリシーが明示的に定義されていない限り、デフォルトですべてのトラフィックを拒否する、ゾーン間トラフィックに対するホワイトリストモデルを実装することができることである。CBACファイアウォールはまた、各インターフェースに多数の構成コマンド(複数のACLおよびインスペクションアクション)を1つずつ入力する必要があり、マイナーなポリシー変更に対してさえも構成を時間のかかるものとする。ZFWは、複数のインターフェースが単一のセットのポリシーを共有することを可能にし、ファイアウォールを確立し、かつネットワーク構成を簡素化するために必要なコマンドの数を低減することができる。
【図面の簡単な説明】
【0006】
本開示ならびにその特徴および利点のより完全な理解を提供するために、添付の図面と併せて、以下の説明を参照する。
【0007】
【
図1】一実施形態によるネットワークアーキテクチャの一例のブロック図を例示している。
【
図2】一実施形態によるネットワーク環境の一例のブロック図を例示している。
【
図3】一実施形態によるオーバーレイネットワークを管理するための手法の一例のブロック図を例示している。
【
図4】一実施形態によるネットワークをセグメント化するための手法の一例のブロック図を例示している。
【
図5】一実施形態によるネットワーク環境の一例のブロック図を例示している。
【
図6】のプロセスの一例のフロー図を例示している。
【
図7】一実施形態によるネットワークデバイスの一例のブロック図を例示している。
【
図8A】いくつかの実施形態によるコンピューティングシステムの例のブロック図を例示している。
【
図8B】いくつかの実施形態によるコンピューティングシステムの例のブロック図を例示している。
【発明を実施するための形態】
【0008】
以下に述べる詳細な説明は、実施形態の様々な構成の説明として意図されており、本開示の主題を実施することができる唯一の構成を表すことを意図するものではない。添付の図面は、本明細書に組み込まれ、詳細な説明の一部を構成する。詳細な説明は、本開示の主題のより完全な理解を提供することを目的とした特定の詳細を含む。ただし、本開示の主題が、本明細書に記述される特定の詳細に限定されず、これらの詳細なしで実施され得ることは、明らかで認識できるであろう。場合によっては、本開示の主題の概念を曖昧にすることを回避するために、構造および構成要素が、ブロック図で示される。
【0009】
概要
本発明の態様は、独立請求項で述べられ、好ましい特徴は、従属請求項で述べられる。一態様の特徴は、単独で、または他の態様と組み合わせて、各態様に適用し得る。
【0010】
システムおよび方法は、ワイドエリアネットワーク(WAN)を介した動的なインテントベースのファイアウォールをプロビジョニングすることを提供する。ネットワークコントローラは、ネットワークコントローラによって管理される複数のエッジネットワークデバイスから到達可能な複数のネットワークセグメントについてのマスタールートテーブルを生成することができる。ネットワークコントローラは、複数のネットワークセグメントを1つ以上のゾーンにマッピングするゾーン定義情報と、1つ以上のゾーンベースのファイアウォール(ZFW)ポリシーであって、各ZFWポリシーによって指定された送信元ゾーンと宛先ゾーンとの間のトラフィックに適用するZFWポリシーと、を受信することができる。ネットワークコントローラは、第1のZFWポリシーを評価して、第1のZFWポリシーによって指定された第1の送信元ゾーンにマッピングされた1つ以上の第1のネットワークセグメントに到達することができる1つ以上の第1のエッジネットワークデバイスと、第1のZFWポリシーによって指定された第1の宛先ゾーンにマッピングされた1つ以上の第2のネットワークセグメントに到達することができる1つ以上の第2のエッジネットワークデバイスと、マスタールートテーブルからの、1つ以上の第1のネットワークセグメント、1つ以上の第1のエッジネットワークデバイス、1つ以上の第2のエッジネットワークデバイス、および1つ以上の第2のネットワークセグメント間の、第1のルーティング情報と、を判定することができる。ネットワークコントローラは、第1のルーティング情報を、1つ以上の第1のエッジネットワークデバイスおよび1つ以上の第2のエッジネットワークデバイスに伝送することができる。
【0011】
例示的な実施形態
ZFWは、CBACファイアウォールよりも優れた柔軟性、セキュリティ、および構成の容易さを提供することができるが、従来のZFWは、ゾーンの定義をインターフェースにバインドし、すべてのトラフィックが同じゾーンのメンバであるインターフェース間をデフォルトで流れることを許可すること、および欠点の中でもとりわけ、複数のエッジネットワークデバイスをトラバースするトラフィックに対する重複する構成を必要とすることなどの、特定の制約を課す。これらの要件により、単一のインターフェースの背後で複数のサービスまたはクライアントグループをホストするネットワーク展開に従来のZFWを実装することが困難になり得る。加えて、従来のZFWは、ネットワークオペレータのインテントを曖昧にし得る構成を必要とし、過度に制約的な様態(例えば、ゾーンの定義をインターフェースにバインドする)と過度に許容的な様態(例えば、同じゾーン内のインターフェース間のすべてのトラフィックを許可する)との両方で動作し、動的性(例えば、構成の最初にゾーンビヘイビアを定義する必要がある)およびモビリティ(例えば、あるネットワークセグメントから別のネットワークセグメントにホストを移動させるときにポリシーの再構成を必要とする)を欠く。
【0012】
例えば、ネットワークは、プリンタおよび電子メールサービスをホストするサブネットへのインターフェースを有する第1のエッジネットワークデバイスを含み得、それは、ワイドエリアネットワーク(WAN)(例えば、インターネット)を介して、オフィスサブネットへのインターフェースとゲストサブネットへの別のインターフェースとを有する第2のエッジネットワークデバイスに接続される。ネットワークオペレータは、第2のエッジネットワークデバイス上のすべてのサブネット(例えば、オフィスサブネットおよびゲストサブネット)がプリンタサービスへのトラフィックを開始することを許容するが、ゲストネットワークが電子メールサービスにアクセスすることを禁止することを望み得る。従来のZFWポリシーを使用してこれらの目的を達成するには、ネットワーク管理者が、印刷サービスと電子メールサービスとを論理的に区別し、特定の送信元および宛先のインターネットプロトコル(IP)アドレスに適合する従来のZFWポリシーを定義しなければならない。特に、ネットワークオペレータは、第1のエッジネットワークデバイスの、プリンタおよび電子メールサービスへのインターフェースからなる第1の従来のゾーン、第2のエッジネットワークデバイスの、オフィスサブネットへのインターフェースからなる第2の従来のゾーン、およびゲストサブネットへの第2のエッジネットワークデバイス上のインターフェースからなる第3の従来のゾーンを定義し得る。WANを介して第1のエッジネットワークデバイスと第2のエッジネットワークデバイスとを接続するインターフェースからなる1つ以上の追加の従来のゾーンがあり得る。
【0013】
加えて、管理者は、第2のエッジネットワークデバイスに第1のセットの従来のZFWポリシーを定義する必要があり得る。例えば、オフィスサブネットおよびゲストサブネットがプリンタサービスへのトラフィックを開始することを可能にし、かつゲストサブネットが電子メールサービスにアクセスすることを禁止するには、管理者は、これらのポリシー、すなわち、
・送信元アドレスがプリンタサービスのIPアドレスに対応するトラフィックを検査するための第1の従来のZFWポリシー(例えば、送信元-ip<プリンタIPアドレス>に関して適合、および
・送信元アドレスがオフィスサブネットに対応し、かつ宛先が電子メールサブネットに対応するトラフィックを検査するための第2の従来のZFWポリシー(例えば、送信元サブネット<オフィスサブネット>および宛先サブネット電子メールに関して適合、検査)、を用いて第2のエッジネットワークデバイスを構成し得る。
【0014】
検査アクションは、特定のトラフィック(例えば、TCP、UDP、ICMPなど)の状態ベースの制御を実装する第2のエッジネットワークデバイスを参照することができる。例えば、第1の従来のZFWポリシーは、第2のエッジネットワークデバイスに、トラフィックがプリンタサービスのIPアドレスに対応するインターフェースを出ることを許可させ、かつリターントラフィックを許可するためのトラフィックの状態情報を格納させ得る。加えて、第2エッジネットワークデバイスは、プリンタサービスのIPアドレスに対応するインターフェースに入るトラフィックのパケットヘッダを処理して、トラフィックを開始した既存の接続またはセッションがあることを確保することができる。トラフィックの送信元アドレスがプリンタサービスのIPアドレスに対応し、かつトラフィックの接続またはセッションが存在することをパケットヘッダが示す場合には、第2のエッジネットワークデバイスは、トラフィックを許可し得る。第2の従来のZFWポリシーは、第2のエッジネットワークデバイスに、オフィスサブネットに対応するインターフェースに入り、かつ電子メールサブネットに対応するインターフェースを出るトラフィックのパケットヘッダを処理させることができる。トラフィックのパケットヘッダが、送信元アドレスがオフィスサブネットに対応し、かつ宛先アドレスが電子メールサブネットに対応することを示す場合、第2のエッジネットワークデバイスは、トラフィックを許可し、リターントラフィックを許可するためのトラフィックの状態情報を格納し得る。
【0015】
管理者が第2のエッジネットワークデバイスの特定のインターフェース上のIPアドレスまたはサブネットに基づいてポリシーを定義する必要がある従来のZFWポリシーモデルは、第2のエッジネットワークデバイス上のサブネットがプリンタサービスにアクセスすることを許可し、かつゲストサブネットが電子メールサービスにアクセスすることを禁止するためのネットワークオペレータの当初の意図を理解することを困難にし得る。従来のZFWポリシーモデルは、インテントをさらに複雑かつ曖昧にし得、その理由は、管理者がまた、第1のエッジネットワークデバイスを第2のセットのポリシー、すなわち、
【0016】
・宛先がオフィスサブネットに対応し、かつ送信元が電子メールサブネットに対応するトラフィックを通過させるための第3の従来のZFWポリシー(例えば、宛先-サブネット<オフィスサブネット>および送信元-サブネット電子メールに関して適合、通過)、および
【0017】
・宛先がオフィスサブネットおよびゲストサブネットに対応し、かつ送信元がプリンタサブネットに対応するトラフィックを通過させるための第4の従来のZFWポリシー(例えば、宛先-サブネット<オフィスサブネットおよびゲストサブネット>および送信元-サブネットプリンタに関して適合、通過)、で構成することによって、第1のセットのポリシーを補完する必要があることである。
【0018】
通過アクションは、第1のエッジネットワークデバイスが、トラフィックのパケットヘッダを処理する必要なく、適合条件に対応するトラフィックを許容することを指し得る。例えば、第3の従来のZFWポリシーは、トラフィックが電子メールサービスに対応するインターフェースに入った場合、第1のエッジネットワークデバイスに、トラフィックがオフィスネットワークに対応するインターフェースを出ることを許容させ得る。第4の従来のZFWポリシーは、トラフィックがプリンタサブネットに対応するインターフェースに入った場合、第1のエッジネットワークデバイスに、トラフィックがオフィスサブネットまたはゲストサブネットに対応するインターフェースを出ることを許容させ得る。ここで、第2のセットのポリシーは、第1のセットのポリシーを実効的にミラーリングして、複数のエッジネットワークデバイスにわたって流れるトラフィックにZFWポリシーを行使する。ミラー構成は、ポリシーの定義を、上記の例よりも何桁も大きい数のネットワークオブジェクト(例えば、ルータ、スイッチ、セグメント、インターフェース、ホストなど)を有し得る通常の企業ネットワークにおいてトラブルシューティングするのに、非常に複雑かつ困難にし得る。トラフィックが複数のエッジネットワークデバイスをトラバースするときに複数回、送信者に面するインターフェースで少なくとも1回、および宛先に面するインターフェースで再度、ポリシーが処理されなければならないため、ミラー構成はまた、ネットワークに対する不要な負荷を生成し得る。その上、ホストがネットワークセグメントに追加されるか、またはネットワークセグメントから移動された場合、そのホストと通信するあらゆるネットワークデバイスが、更新されなければならない。構成の複雑さ、ネットワークに対する増加した負荷、および従来のZFWの柔軟性の欠如は、ネットワークオペレータ、およびインターフェースに制約された従来のゾーンまたはインターフェースに制約されたネットワークセグメント(例えば、インターフェースによりバインドされたサブネット、仮想ローカルエリアネットワーク(VLAN)、仮想拡張可能ローカルエリアネットワーク(VXLAN)/汎用ルーティングカプセル化(NVGRE)仮想ネットワークを使用したネットワーク仮想化、仮想ルーティングおよび転送インスタンス(VRF)、仮想プライベートネットワーク(VPN)、Cisco ACI(商標)エンドポイントグループ(EPG)、または他のネットワークセグメント化技術)によってネットワークデバイスごとに構成されなければならない従来のZFWポリシーの結果である。いくつかの従来のゾーンは、複数のインターフェースが単一セットの従来のZFWポリシーを共有することを可能にするが、従来のZFWポリシーモデルは、依然として、ネットワークオペレータにネットワークデバイスを1つずつ構成することを必要とする。そして、いくつかの従来のZFWは、ゾーンを、サブネット、VLAN、仮想ネットワーク識別子(VNID)、VRF、VPN、EPG、または他のネットワークセグメント化技術として定義することを許可するが、これらのネットワークセグメントは、特定のインターフェースにバインドされる。ネットワークオペレータにとって、従来のZFWの困難および制限は、苛立たしく、人的エラーをもたらし、ネットワークセキュリティの低下につながり得る。
【0019】
本開示の様々な実施形態は、単一の集中型ネットワーク管理システムまたはネットワークコントローラから、管理者または他のユーザーによって、ZFWを構成することを可能にし、かつネットワークインターフェースからゾーンの定義を切り離すことによって、先行技術の上記および他の欠陥を克服し得る。したがって、ゾーンは、デバイスごとの構成を必要とせず、インターフェースまたはインターフェースよりにバインドされたネットワークセグメントに限定される必要がない。ルート属性(例えば、ルート起点、サイト識別子、タグなど)、パケットヘッダ属性(送信元アドレス、送信元ポート、宛先アドレス、宛先ポート、プロトコル、差別化サービスコードポイント(DSCP)など)、パケットペイロード属性(例えば、ディープパケットインスペクション(DPI)を介して取得できるアプリケーションおよび他の属性)、アイデンティティベースの属性(例えば、ユーザーアイデンティティ、グループ、ロールなど)、仮想ネットワークセグメント(例えば、VLAN、VNID、VRF、VPN、EPGなど)、ロケーションもしくはネットワークサイト識別子(例えば、構内、データセンター、ブランチなど)、またはネットワークオブジェクトの他のコレクション(例えば、ユーザー、デバイス、システム、アプリケーションなど)によって定義されるゾーンなどのゾーンは、代わりに、インテントに基づいて定義され得る。例えば、ネットワークオペレータは、ネットワークオブジェクトの任意のコレクションを含むゾーン、カスタム定義されたゾーンのデフォルトのビヘイビア(例えば、サービスが他のサービスにアクセスすることを禁止する、インターネットに直接接続されたネットワークオブジェクトがクライアントまたはサービスなどとの通信を開始することを禁止する)、およびデフォルトのビヘイビアをオーバーライドすることができる許可された通信のマトリックスを定義することによって、ゾーンベースのポリシーモデルをカスタマイズすることができる。これにより、構成の複雑さと、管理者または他のユーザーによって実行されなければならない構成の量と、が大幅に低減され得る。
【0020】
インターフェースから切り離された集中適用されるZFWポリシーはまた、動的かつモバイルなポリシー更新をサポートすることもできる。例えば、管理者は、ネットワークプロビジョニングの最初に「パートナー」ゾーンを定義することができるが、パートナーゾーンのメンバがネットワークにアタッチするまで、パートナーゾーンのメンバシップとパートナーゾーンビヘイビアとの条件を設定する必要はない。その上、ネットワークセグメントへの、またはネットワークセグメントからのクライアントおよびサービスの追加または削除の場合には、ポリシーの再構成を必要としない。追加の利点は、ネットワークデバイスが、それらのネットワークデバイスに適用できないZFWポリシーを行使する必要がないため、処理、メモリ、帯域幅、および他のリソースを節約することができることである。
【0021】
インターフェースから切り離された集中適用されるZFWポリシーはまた、ミラー構成および関連付けられたスケーラビリティの問題を排除することができる。例えば、集中型ネットワーク管理システムまたはコントローラは、ネットワーク全体を通したルーティング情報を判定し、ZFWポリシーに従ってルーティング情報を更新し、特定のエッジネットワークデバイスに配布するために特定のゾーンに属するものとしてルートにタグ付けし、これによって、ミラーリングされたZFWポリシーの必要性を排除することができる。様々な実施形態に従って提供され得るように、多くの他の機能および利点が、以下に記載および提案される。
【0022】
いくつかの実施形態では、ネットワークコントローラは、ネットワークコントローラによって管理される複数のエッジネットワークデバイスから到達可能な複数のネットワークセグメントについてのマスタールートテーブルを生成することができる。ネットワークコントローラは、複数のネットワークセグメントを1つ以上のゾーンにマッピングするゾーン定義情報と、各ZFWポリシーによって指定された送信元ゾーンと宛先ゾーンとの間のトラフィックに適用する1つ以上のZFWポリシーと、を受信することができる。ネットワークコントローラは、第1のZFWポリシーを評価して、第1のZFWポリシーによって指定された第1の送信元ゾーンにマッピングされた1つ以上の第1のネットワークセグメントに到達することができる1つ以上の第1のエッジネットワークデバイスと、第1のZFWポリシーによって指定された第1の宛先ゾーンにマッピングされた1つ以上の第2のネットワークセグメントに到達することができる1つ以上の第2のエッジネットワークデバイスと、マスタールートテーブルからの、1つ以上の第1のネットワークセグメント、1つ以上の第1のエッジネットワークデバイス、1つ以上の第2のエッジネットワークデバイス、および1つ以上の第2のネットワークセグメント間の、第1のルーティング情報と、を判定することができる。ネットワークコントローラは、第1のルーティング情報を、1つ以上の第1のエッジネットワークデバイスおよび1つ以上の第2のエッジネットワークデバイスに伝送することができる。
【0023】
いくつかの実施形態では、第1のZFWポリシーは、検査アクションを含むことができ、ネットワークコントローラは、マスタールートテーブルから、1つ以上の第2のネットワークセグメント、1つ以上の第2のエッジネットワークデバイス、1つ以上の第1のエッジネットワークデバイス、および1つ以上の第1のネットワークセグメント間の、第2のルーティング情報を判定することができる。ネットワークコントローラは、送信元が1つ以上の第1のネットワークセグメントに対応し、かつ宛先が1つ以上の第2のネットワークセグメントに対応するトラフィックを受信することに応答して、第2のルーティング情報を1つ以上の第2のエッジネットワークデバイスおよび1つ以上の第1のエッジネットワークデバイスに伝送することができる。
【0024】
いくつかの実施形態では、複数のネットワークセグメントが、複数の仮想プライベートネットワーク(VPN)を含むことができ、ゾーン定義情報が、複数のVPNを1つ以上のゾーンにマッピングする情報を含むことができ、各ゾーンが、複数のエッジネットワークデバイスのインターフェースに対してアンバインドできる。他の実施形態では、複数のネットワークセグメントは、ルート属性を共有する複数のネットワークオブジェクト、パケットヘッダ属性を共有する複数のネットワークオブジェクト、パケットペイロード属性を共有する複数のネットワークオブジェクト、アイデンティティ情報を共有する複数のネットワークオブジェクト、複数の仮想ローカルエリアネットワーク(VLAN)、複数の仮想ネットワーク識別子(VNID)、複数の仮想ルーティングおよび転送インスタンス(VRF)、複数のエンドポイントグループ(EPG)、またはロケーションもしくはネットワークサイト識別子を共有する複数のネットワークオブジェクトのうちの少なくとも1つを含むことができ、ゾーン定義情報は、ルート属性を共有する複数のネットワークオブジェクト、パケットヘッダ属性を共有する複数のネットワークオブジェクト、パケットペイロード属性を共有する複数のネットワークオブジェクト、識別情報を共有する複数のネットワークオブジェクト、複数のVLAN、複数のVNID、複数のVRF、複数のEPG、またはロケーションもしくはネットワークサイト識別子情報を1つ以上のゾーン内に共有する複数のネットワークオブジェクトのうちの少なくとも1つをマッピングする情報を含むことができ、各ゾーンは、複数のエッジネットワークデバイスのインターフェースに対してアンバインドできる。
【0025】
いくつかの実施形態では、第3のゾーンにマッピングされたネットワークセグメントのいずれも、1つ以上の第1のエッジネットワークデバイスから第1の時間に到達可能ではなくてもよく、1つ以上の第1のエッジネットワークデバイスは、第3のゾーンにマッピングされた任意のネットワークセグメントと1つ以上の第1のエッジネットワークデバイスとの間の第2のルーティング情報を除外し得る。ネットワークコントローラは、第3のゾーンにマッピングされた1つ以上の第3のネットワークセグメントが、第2の時間に1つ以上の第1のエッジネットワークデバイスから到達可能であると判定することができる。ネットワークコントローラは、1つ以上の第3のネットワークセグメントと1つ以上の第1のエッジネットワークデバイスとの間の第2のルーティング情報でマスタールートテーブルを更新することができる。ネットワークコントローラは、第2のZFWポリシーを評価して、1つ以上の第1のエッジネットワークデバイスが1つ以上の第3のネットワークセグメントに到達することができ、かつ第3のゾーンが、第2のZFWポリシーによって指定された第2送信元ゾーンであることと、第2のZFWポリシーによって指定された第2の宛先ゾーンにマッピングされた1つ以上の第4のネットワークセグメントに到達することができる1つ以上の第3のエッジネットワークデバイスと、マスタールートテーブルからの、1つ以上の第3のネットワークセグメント、1つ以上の第1のエッジネットワークデバイス、1つ以上の第3のエッジネットワークデバイス、および1つ以上の第4のネットワークセグメント間の、第3のルーティング情報と、を判定することができる。ネットワークコントローラは、第3のルーティング情報を、1つ以上の第1のエッジネットワークデバイスおよび1つ以上の第3のエッジネットワークデバイスに伝送することができる。
【0026】
いくつかの実施形態では、ネットワークコントローラは、1つ以上の第1のネットワークセグメントが、1つ以上の第1のエッジネットワークデバイスから到達可能ではなくなったと判定することができる。ネットワークコントローラは、1つ以上の第1のエッジネットワークデバイスから第1のルーティング情報を削除することができる。ネットワークコントローラは、1つ以上の第1のネットワークセグメントが、1つ以上の第3のエッジネットワークデバイスから到達可能であると判定することができる。ネットワークコントローラは、1つ以上の第1のネットワークセグメント、1つ以上の第3のエッジネットワークデバイス、1つ以上の第2のエッジネットワークデバイス、および1つ以上の第2のネットワークセグメント間の、第2のルーティング情報で、マスタールートテーブルを更新することができる。ネットワークコントローラは、第1のZFWポリシーを評価して、1つ以上の第3のエッジネットワークデバイスが、1つ以上の第1のネットワークセグメント、1つ以上の第2のエッジネットワークデバイス、および第2のルーティング情報に到達することができると判定することができる。ネットワークコントローラは、第2のルーティング情報を、1つ以上の第3のエッジネットワークデバイスおよび1つ以上の第2のエッジネットワークデバイスに伝送することができる。
【0027】
いくつかの実施形態では、ネットワークコントローラは、ゾーン定義情報または1つ以上のZFWポリシーのうちの少なくとも1つの1つ以上の更新を受信することができる。ネットワークコントローラは、1つ以上の更新に基づいて、第1のルーティング情報の少なくとも1つの第1のルートが利用可能ではなくなったと判定することができる。ネットワークコントローラは、1つ以上の第1のエッジネットワークデバイスから第1のルートを削除することができる。
【0028】
いくつかの実施形態では、ネットワークコントローラは、第1のZFWポリシーによって指定された1つ以上の送信元適合条件に対応する1つ以上の送信元プレフィックスを判定することができる。ネットワークコントローラは、第1のZFWポリシーによって指定された1つ以上の宛先適合条件に対応する1つ以上の宛先プレフィックスを判定することができる。ネットワークコントローラは、1つ以上の送信元プレフィックスと1つ以上の宛先プレフィックスとに基づいて、マスタールートテーブルから第1のルーティング情報を取り出すことができる。ネットワークコントローラは、1つ以上の宛先プレフィックスと1つ以上の送信元プレフィックスとに基づいて、マスタールートテーブルから第2のルーティング情報を取り出すことができる。ネットワークコントローラは、送信元が送信元プレフィックスに対応し、かつ宛先が1つ以上の宛先プレフィックスに対応するトラフィックを受信することに応答して、第2のルーティング情報を1つ以上の第2のエッジネットワークデバイスおよび1つ以上の第1のエッジネットワークデバイスに伝送することができる。
【0029】
いくつかの実施形態では、ネットワークコントローラは、第1のZFWポリシーの1つ以上のデフォルトの送信元適合条件に対応する1つ以上の送信元プレフィックスを判定することができる。ネットワークコントローラは、第1のZFWポリシーの1つ以上のデフォルトの宛先適合条件に対応する1つ以上の宛先プレフィックスを判定することができる。ネットワークコントローラは、1つ以上の送信元プレフィックスと1つ以上の宛先プレフィックスとに基づいて、マスタールートテーブルから第1のルーティング情報を取り出すことができる。
【0030】
図1は、本技術の態様を実装するためのネットワークアーキテクチャ100の例を例示している。ネットワークアーキテクチャ100の実装形態の例は、Cisco(登録商標)ソフトウェア定義ワイドエリアネットワーク(SD-WAN)アーキテクチャである。ただし、当業者は、ネットワークアーキテクチャ100および本開示で論じられる任意の他のシステムについて、同様のまたは代替の構成で追加のまたはより少ない構成要素があり得ることを理解するであろう。本開示で提供される説明図および例は、簡潔さおよび明快さのためである。他の実施形態は、異なる数および/またはタイプの要素を含み得るが、当業者は、そのような変形例が本開示の範囲から逸脱しないことを理解するであろう。
【0031】
この例では、ネットワークアーキテクチャ100は、オーケストレーションプレーン102、管理プレーン120、制御プレーン130、およびデータプレーン140を含むことができる。オーケストレーションプレーン102は、オーバーレイネットワークにおけるエッジネットワークデバイス142(例えば、スイッチ、ルータなど)の自動オンボーディングを支援することができる。オーケストレーションプレーン102は、1つ以上の物理または仮想ネットワークオーケストレータアプライアンス104を含むことができる。ネットワークオーケストレータアプライアンス104は、エッジネットワークデバイス142の初期認証を実行し、制御プレーン130のデバイスとデータプレーン140のデバイスとの間の接続性をオーケストレートすることができる。いくつかの実施形態では、ネットワークオーケストレータアプライアンス104はまた、ネットワークアドレス変換(NAT)の背後に位置するデバイスの通信を可能にすることもできる。いくつかの実施形態では、物理または仮想Cisco(登録商標) SDWAN vBondアプライアンスが、ネットワークオーケストレータアプライアンス104として動作することができる。
【0032】
管理プレーン120は、ネットワークの集中構成および監視を担当することができる。管理プレーン120は、1つ以上の物理または仮想ネットワーク管理アプライアンス122を含むことができる。ネットワーク管理アプライアンス122は、グラフィカルユーザーインターフェースを介してネットワークの集中型管理を提供して、ユーザーがアンダーレイおよびオーバーレイネットワークにおけるエッジネットワークデバイス142およびリンク(例えば、インターネットトランスポートネットワーク160、マルチプロトコルラベルスイッチング(MPLS)ネットワーク162、4G/LTEネットワーク164)を監視、構成、および維持することを可能にすることができる。ネットワーク管理アプライアンス122は、マルチテナントをサポートし、異なるエンティティ(例えば、企業、企業内の部門、部門内のグループなど)と関連付けられた論理的に分離されたネットワークの集中型管理を可能にすることができる。代替的に、または加えて、ネットワーク管理アプライアンス122は、単一のエンティティのための専用のネットワーク管理システムであり得る。いくつかの実施形態では、物理または仮想Cisco(登録商標)SD-WAN vManageアプライアンスが、ネットワーク管理アプライアンス122として動作することができる。
【0033】
管理プレーン120はまた、最高および最低の性能のアプリケーション、最も帯域幅を消費するアプリケーション、異常なアプリケーションファミリ(例えば、帯域幅消費が一定期間にわたって変化するアプリケーション)、ネットワーク可用性および回線可用性、キャリアヘルス、最高および最低の性能のトンネルなど、アプリケーションおよびネットワークの性能を経時的に可視化するためのアナリティクスエンジン124を含むことができる。アナリティクスエンジン124は、オーバーレイネットワークのグラフィカル表現を生成し、かつユーザーがドリルダウンして特定の時間に単一のキャリア、トンネル、またはアプリケーションの特性を表示することを可能にすることができる、ユーザーインターフェースを含み得る。ユーザーインターフェースは、ネットワークのインタラクティブな概要、およびさらなる詳細の入口点として機能することができる。いくつかの実施形態では、ユーザーインターフェースは、過去24時間の情報を表示し、ユーザーがドリルダウンして、表示する異なるデータセットに対して異なる期間を選択することを可能にすることができる。ユーザーインターフェースはまた、ネットワークアナリティクスの中でもとりわけ、ネットワーク可用性、キャリアによるWAN性能、アプリケーションについてのデータを表示することもできる。
【0034】
いくつかの実施形態では、アナリティクスエンジン124は、アプリケーション性能に、個々のアプリケーション用にカスタマイズできる仮想体験品質(vQoE)値を提供することができる。この値は、0~10の範囲を取り、0が最低の性能、10が最高の性能である。アナリティクスエンジンは、遅延、損失、およびジッタに基づいてvQoEを計算し、アプリケーションごとに計算をカスタマイズすることができる。
【0035】
アナリティクスエンジン124は、WANの計画と、履歴性能から、WANを最適化するためのレコメンデーションの予測、提供までの、WANの運用面と、に対する洞察を提供することができる。アナリティクスエンジン124は、数ヶ月のデータを格納し、機械学習アルゴリズムを適用し、ならびに固有の洞察およびレコメンデーションを提供することができる。例えば、アナリティクスエンジン124は、次の3~6ヶ月で追加の帯域幅を必要し得るサイトを計画するためのレコメンデーション予測、ネットワークおよびアプリケーションのコスト、性能、および可用性をバランスさせるための機会を識別するのに役立つwhat-ifシナリオ、WANを微調整するための履歴情報に基づくアプリケーション対応のルーティングポリシー、特定のロケーションのためのレコメンドされるネットワークサービスプロバイダなどを提供することができる。
【0036】
制御プレーン130は、ネットワークトポロジーを構築および維持し、トラフィックが流れる場所を決定することができる。制御プレーン130は、1つ以上の物理または仮想ネットワークコントローラアプライアンス132を含むことができる。ネットワークコントローラアプライアンス132は、各エッジネットワークデバイス142へのセキュアな接続を確立し、制御プレーンプロトコル(例えば、オーバーレイ管理プロトコル(OMP)(以下でさらに詳細に論じられる)、オープンショーテストパスファースト(OSPF)、中間システムツー中間システム(IS-IS)、ボーダゲートウェイプロトコル(BGP)、プロトコル独立マルチキャスト(PIM)、インターネットグループ管理プロトコル(IGMP)、インターネット制御通知プロトコル(ICMP)、アドレス解決プロトコル(ARP)、双方向フォワーディング検出(BFD)、リンクアグリゲーション制御プロトコル(LACP)など)を介してルート情報およびポリシー情報を配布することができる。いくつかの実施形態では、ネットワークコントローラアプライアンス132は、ルートリフレクタとして動作することができる。ネットワークコントローラアプライアンス132はまた、エッジネットワークデバイス142同士および間のデータプレーン140内のセキュアな接続性をオーケストレートすることもできる。例えば、いくつかの実施形態では、ネットワークコントローラアプライアンス132は、エッジネットワークデバイス142間で暗号鍵情報を配布することができる。これにより、ネットワークは、インターネットキー交換(IKE)なしで、セキュアなネットワークプロトコルまたはアプリケーション(例えば、インターネットプロトコルセキュリティ(IPSec)、トランスポート層セキュリティ(TLS)、セキュアシェル(SSH)など)をサポートし、ネットワークのスケーラビリティを可能にすることができるようになる。いくつかの実施形態では、物理または仮想のCisco(登録商標) SD-WAN vSmartコントローラが、ネットワークコントローラアプライアンス132として動作することができる。
【0037】
データプレーン140は、制御プレーン130からの決定に基づいてパケットを転送することを担当することができる。データプレーン140は、物理または仮想ネットワークデバイスであり得るエッジネットワークデバイス142を含むことができる。エッジネットワークデバイス142は、1つ以上のデータセンターまたはコロケーションセンター150、構内ネットワーク152、ブランチオフィスネットワーク154、ホームオフィスネットワーク156において、またはクラウド(例えば、インフラストラクチャアズアサービス(IaaS)、プラットフォームアズアサービス(PaaS)、SaaS、および他のクラウドサービスプロバイダネットワーク)においてなど、組織と関連付けられた様々なネットワークサイトのエッジで、動作することができる。エッジネットワークデバイス142は、1つ以上のインターネットトランスポートネットワーク160(例えば、デジタル加入者回線(DSL)、ケーブルなど)、MPLSネットワーク162(または他のプライベートパケット交換ネットワーク(例えば、メトロイーサネット、フレームリレー、非同期転送モード(ATM)など)、モバイルネットワーク164(例えば、3G、4G/LTE、5Gなど)、または他のWAN技術(例えば、同期光ネットワーキング(SONET)、同期デジタル階層(SDH)、高密度波長分割多重(DWDM)、または他の光ファイバ技術、リース回線(例えば、Tl/El、T3/E3など)、公衆交換電話網(PSTN)、統合サービスデジタルネットワーク(ISDN)、または他のプライベート回線交換網、小口径局(VSAT)または他の衛星ネットワークなど)を介するなど、1つ以上のWANトランスポートを介したサイト間のセキュアなデータプレーン接続性を提供することができる。エッジネットワークデバイス142は、タスクの中でもとりわけ、トラフィック転送、セキュリティ、暗号化、サービス品質(QoS)、およびルーティング(例えば、BGP、OSPFなど)を担当することができる。いくつかの実施形態では、物理または仮想Cisco(登録商標) SD-WAN vEdgeルータが、エッジネットワークデバイス142として動作することができる。
【0038】
図2は、ネットワークアーキテクチャ100の様々な態様を示すためのネットワーク環境200の例を例示している。ネットワーク環境200は、管理ネットワーク202、ネットワークサイト204Aおよび204B(集合的に、204)の対(例えば、データセンター150、構内ネットワーク152、ブランチオフィスネットワーク154、ホームオフィスネットワーク156、クラウドサービスプロバイダネットワークなど)、およびインターネットトランスポートネットワーク160Aおよび160B(総称して、160)の対を含むことができる。管理ネットワーク202は、1つ以上のネットワークオーケストレータアプライアンス104、1つ以上のネットワーク管理アプライアンス122、および1つ以上のネットワークコントローラアプライアンス132を含むことができる。この例では、管理ネットワーク202は単一のネットワークとして示されているが、当業者は、管理ネットワーク202の各オブジェクトが、任意の数のネットワークに分散され、および/またはサイト204とコロケートされ得ることを理解するであろう。この例では、管理ネットワーク202の各オブジェクトに、トランスポートネットワーク160Aまたは160Bのいずれかを介して到達することができる。
【0039】
各サイトは、1つ以上のアクセスネットワークデバイス208に接続された1つ以上のエンドポイント206を含むことができる。エンドポイント206は、汎用コンピューティングデバイス(例えば、サーバ、ワークステーション、デスクトップコンピュータなど)、モバイルコンピューティングデバイス(例えば、ラップトップ、タブレット、携帯電話など)、ウェアラブルデバイス(例えば、腕時計、眼鏡または他のヘッドマウントディスプレイ(HMD)、イヤーデバイスなど)などを含むことができる。エンドポイント206はまた、農業機器(例えば、家畜追跡および管理システム、給水デバイス、無人航空機(UAV)など)、コネクテッドカーおよび他の車両、スマートホームセンサおよびデバイス(例えば、警報システム、セキュリティカメラ、照明、電化製品、メディアプレーヤー、HVAC機器、ユーティリティメータ、窓、自動ドア、ドアベル、ロックなど)、オフィス機器(例えば、デスクトップ電話、コピー機、ファクシミリ機など)、ヘルスケアデバイス(例えば、ペースメーカ、生体認証センサ、医療機器など)、産業用機器(例えば、ロボット、工場機械、建設機器、産業用センサなど)、小売機器(例えば、自動販売機、店舗販売時点情報管理(POS)デバイス、無線周波数識別(RFID)タグなど)、スマートシティデバイス(例えば、街灯、パーキングメータ、廃棄物管理センサなど)、輸送および物流機器(例えば、回転式改札口、レンタカートラッカ、ナビゲーションデバイス、在庫モニタなど)など、などのモノのインターネット(IoT)デバイスまたは機器を含むことができる。
【0040】
アクセスネットワークデバイス208は、物理または仮想スイッチ、ルータ、および他のネットワークデバイスを含むことができる。この例では、サイト204Aはアクセスネットワークデバイスの対を含んで示され、かつサイト204Bは単一のアクセスネットワークデバイスを含んで示されているが、アクセスネットワークデバイス208は、多層(例えば、コア層、ディストリビューション層、およびアクセス層)、スパインアンドリーフ、メッシュ、ツリー、バス、ハブアンドスポークなどを含む任意のネットワークトポロジー内の任意の数のネットワークデバイスを含むことができる。例えば、いくつかの実施形態では、1つ以上のデータセンターネットワークは、Cisco(登録商標)アプリケーションセントリックインフラストラクチャ(ACI)アーキテクチャを実装し得、および/または1つ以上の構内ネットワークは、Cisco(登録商標)ソフトウェア定義アクセス(SD-アクセスまたはSDA)アーキテクチャを実装し得る。アクセスネットワークデバイス208は、エンドポイント206を1つ以上のエッジネットワークデバイス142に接続することができ、エッジネットワークデバイス142を使用して、トランスポートネットワーク160に直接接続することができる。
【0041】
いくつかの実施形態では、「カラー」を使用して個々のWANトランスポートネットワークを識別することができ、異なるWANトランスポートネットワークに異なるカラーが割り当てられ得る(例えば、mpls、private1、biz-internet、metro-ethernet、lteなど)。この例では、ネットワーク環境200は、インターネットトランスポートネットワーク160Aに対する「biz-internet」と呼ばれるカラーと、インターネットトランスポートネットワーク160Bに対する「public-internet」と呼ばれるカラーと、を利用することができる。
【0042】
いくつかの実施形態では、各エッジネットワークデバイス142は、ネットワークコントローラアプライアンス132のうちの少なくとも1つとの、データグラムトランスポート層セキュリティ(DTLS)またはTLS制御接続を形成し、各トランスポートネットワーク160を介して任意のネットワークコントローラアプライアンス132に接続することができる。いくつかの実施形態では、エッジネットワークデバイス142はまた、IPSecトンネルを介して他のサイトのエッジネットワークデバイスにセキュアに接続することもできる。いくつかの実施形態では、BFDプロトコルをこれらのトンネルの各々内で使用して、損失、レイテンシ、ジッタ、およびパス障害を検出し得る。
【0043】
エッジネットワークデバイス142上で、カラーを使用して、個々のWANトランスポートトンネルを識別するかまたは区別することに役立てることができる(例えば、単一のエッジネットワークデバイス上で同じカラーが2回使用されることはない場合がある)。カラー自体も、重要な意味を有することができる。例えば、カラーmetro-ethernet、mpls、ならびにprivate1、private2、private3、private4、private5、およびprivate6は、プライベートネットワークに使用できるか、またはトランスポートIPエンドポイントのNATアドレス指定がない場所で使用できるプライベートカラーと見なされ得る(例えば、同じカラーの2つのエンドポイント間にNATがない場合があるため)。エッジネットワークデバイス142がプライベートカラーを使用するときに、これらのデバイスは、ネイティブ、プライベート、アンダーレイIPアドレスを使用して他のエッジネットワークデバイスへのIPSecトンネルを構築しようとし得る。パブリックカラーは、3g、biz、internet、blue、bronze、customl、custom2、custom3、default、gold、green、lte、public-internet、red、silverを含むことができる。パブリックカラーは、NAT後のIPアドレス(関与しているNATがある場合)へのトンネルを構築するためにエッジネットワークデバイス142によって使用され得る。エッジネットワークデバイス142がプライベートカラーを使用し、かつ他のプライベートカラーと通信するためにNATを必要とする場合、構成におけるキャリア設定は、エッジネットワークデバイス142がプライベートIPアドレスを使用するかパブリックIPアドレスを使用するかを指示することができる。この設定を使用すると、一方または両方がNATを使用しているときに、2つのプライベートカラーが、セッションを確立することができる。
【0044】
図3は、OMPを介するなど、オーバーレイネットワークを管理するための例示的な手法のブロック
図300を例示している。この例では、OMPメッセージ302Aおよび302B(総称して、302)は、それぞれ、ネットワークコントローラアプライアンス132とエッジネットワークデバイス142Aおよび142Bとの間で往来伝送され得、ここで、ルートプレフィックス、ネクストホップルート、暗号鍵、ポリシー情報などの制御プレーン情報は、それぞれのセキュアなDTLSまたはTLS接続304Aおよび304Bを介して交換できる。ネットワークコントローラアプライアンス132は、ルートリフレクタと同様に動作することができる。例えば、ネットワークコントローラアプライアンス132は、エッジネットワークデバイス142からのルートを受信し、これらのルートを処理してポリシーを適用し、オーバーレイ内の他のエッジネットワークデバイス142へのルートをアドバタイズすることができる。定義されたポリシーがない場合、エッジネットワークデバイス142は、フルメッシュトポロジーと同様に動作し得、各エッジネットワークデバイス142は、別のサイトの別のエッジネットワークデバイス142に直接接続し、各サイトから完全なルーティング情報を受信することができる。
【0045】
OMPは、3つのタイプのルートをアドバタイズすることができる。
【0046】
・エッジネットワークデバイス142のローカルサイトまたはサービス側から学習したプレフィックスに対応することができるOMPルート。プレフィックスは、静的ルートまたは接続されたルートとして、またはルーティングプロトコル(BGP、OSPFなど)内から発信され、オーバーレイの全体にわたって伝達できるようにOMPに再配布され得る。OMPルートは、トランスポートロケーション(TLOC)情報(BGPネクストホップIPアドレスに類似し得る)などの属性と、発信元、発信者、プリファレンス、サイト識別子、タグ、およびVPN識別子などの他の属性と、をアドバタイズすることができる。OMPルートは、OMPルートが指すTLOCがアクティブな場合、転送テーブルにインストールされ得る。
【0047】
・トランスポートネットワーク160に接続するエッジネットワークデバイス142上の論理トンネル終端ポイントに対応し得るTLOCルート。いくつかの実施形態では、TLOCルートは、一意に識別され、IPアドレス、リンクカラー、およびカプセル化(例えば、ジェネリックルーティングカプセル化(GRE)、IPSecなど)を含む3つのタプルによって表され得る。システムIPアドレス、カラー、およびカプセル化に加えて、TLOCルートはまた、TLOCプライベートおよびパブリックIPアドレス、キャリア、プリファレンス、サイト識別子、タグ、および重みなどの属性を伝達することもできる。いくつかの実施形態では、アクティブなBFDセッションがそのTLOCと関連付けられているときに、TLOCは、特定のエッジネットワークデバイス142上でアクティブ状態にあり得る。
【0048】
・エッジネットワークデバイス142のローカルサイトに接続され、かつサービス挿入と共に使用するために他のサイトにアクセス可能である得るサービス(例えば、ファイアウォール、分散型サービス拒否(DDoS)ミティゲータ、負荷バランサ、侵入防止システム(IPS)、侵入検知システム(IDS)、WANオプティマイザなど)を表すことができる、サービスルート。加えて、これらのルートはまた、VPNを含むこともでき、VPNラベルを更新タイプで送信して、どのようなVPNがリモートサイトでサービスされるかをネットワークコントローラアプライアンス132に通知することができる。
【0049】
図3の例では、OMPは、エッジネットワークデバイス142とネットワークコントローラアプライアンス132との間に確立されたDTLS/TLSトンネル304上で実行されていることが示されている。加えて、ブロック
図300は、WANトランスポートネットワーク160Aを介してTLOC 308Aおよび308C間に確立されたIPSecトンネル306Aと、WANトランスポートネットワーク160Bを介してTLOC 308BとTLOC 308Dとの間に確立されたIPSecトンネル306Bと、を示す。IPSecトンネル306Aおよび306Bが確立されると、これらのIPSecトンネルの各々の全体にわたってBFDを有効にすることができる。
【0050】
いくつかの実施形態では、ネットワーク全体のセグメント化は、ネットワークのエッジ(例えば、エッジネットワークデバイス142)でネットワークオブジェクト(例えば、サブネット、VLAN、VNID、VRF、VPN、EPGなど)のグループ化を定義し、かつ中間ノードが処理するパケット内のセグメント化情報を伝達することによって、実装できる。例えば、エッジネットワークデバイス142Aは、プレフィックス10.1.1.0/24(例えば、接続されたインターフェースを介して直接、または内部ゲートウェイプロトコル(IGP)またはボーダーゲートウェイプロトコル(BGP)を介して学習するかのいずれか)に対応する「red」のVPN、およびプレフィックス10.2.2.0/24に対応する「blue」のVPNである、2つのVPNにサブスクライブすることができる。エッジネットワークデバイス142Bは、同様に、プレフィックス192.168.1.0/24に対応するredのVPN、およびプレフィックス192.168.2.0/24(接続されたインターフェースを介して直接、またはIGPもしくはBGPを介して学習するかのいずれか)に対応するblueのVPNである、2つのVPNにサブスクライブすることができる。
【0051】
エッジネットワークデバイス142は、TLSトンネル304を介してネットワークコントローラアプライアンス132へのOMP接続302を有するため、これらのエッジネットワークデバイスは、これらのエッジネットワークデバイスのルーティング情報をネットワークコントローラアプライアンス132に伝播することができる。ネットワークコントローラアプライアンス132に対して、ネットワーク管理者は、ポリシーを行使してルートをドロップして、トラフィックエンジニアリングもしくはサービスチェイニングのためにTLOC(ネクストホップにオーバーレイすることができる)を変更するか、またはVPN識別子を変更することができる。ネットワーク管理者は、これらのポリシーをネットワークコントローラアプライアンス132に対するインバウンドポリシーまたはアウトバウンドポリシーとして適用することができる。
【0052】
単一のVPNに属するプレフィックスは、別個のルートテーブルに保持できる。このことは、ネットワーク内の様々なセグメントにレイヤー3分離を提供することができる。したがって、エッジネットワークデバイス142は各々、2つのVPNルートテーブルを有することができる。加えて、ネットワークコントローラアプライアンス132は、各プレフィックスのVPNコンテキストを維持することができる。別個のルートテーブルは、単一のノードで分離を提供することができる。いくつかの実施形態では、VPN識別子を使用して、ネットワーク全体にわたってルーティング情報を伝播することができる。パケットで伝達されるVPN識別子は、リンク上の各VPNを識別することができる。VPNが特定のエッジネットワークデバイス上で構成されているときに、VPNは、リンクカラーまたはリンクカラーと関連付けられたラベルを有することができる。エッジネットワークデバイスは、リンクカラーまたはラベルを、VPN識別子と共に、ネットワークコントローラアプライアンス132に送信することができる。ネットワークコントローラアプライアンス132は、エッジネットワークデバイスをVPN識別子にマッピングする情報を、ネットワーク内の他のエッジネットワークデバイスに伝播することができる。次いで、リモートエッジネットワークデバイスは、リンクカラーまたはラベルを使用して、トラフィックを適切なVPNに送信することができる。ローカルエッジネットワークデバイスは、VPN識別子リンクカラーまたはラベルを有するデータを受信すると、リンクカラーまたはラベルを使用してデータトラフィックを多重分離することができる。この例では、エッジネットワークデバイス142を接続するトランスポートネットワーク160は、VPNに非対応であり得、エッジネットワークデバイス142は、VPNについて知り得、ネットワークの残りの部分は、標準ルーティングに従うことができる。
【0053】
いくつかの実施形態では、ポリシーを使用して、エッジネットワークデバイス142間のトラフィックの流れに影響を与えることができる。ポリシーは、集中型またはローカルとして特徴付けできる。集中型ポリシーは、ネットワークコントローラアプライアンス132上でプロビジョニングでき、ローカライズされたポリシーは、ブランチまたは企業サイトと、インターネットトランスポートネットワーク160、MPLSネットワーク162、4G/LTEネットワーク164などのトランスポートネットワークと、の間のネットワークエッジに位置し得るエッジネットワークデバイス142上でプロビジョニングできる。
【0054】
ポリシーはまた、ネットワークの制御プレーン内のルーティング情報のフローに影響を与え得る制御ポリシーもしくはルーティングポリシー、またはネットワークのデータプレーン内のデータトラフィックのフローに影響を与え得るデータポリシーとしても、特徴付けできる。集中型制御ポリシーは、ネットワークコントローラアプライアンス132のマスタールートテーブルに格納され、かつエッジネットワークデバイス142にアドバタイズされる情報に影響を与えることによって、トラフィックのネットワーク全体のルーティングに適用できる。集中型制御ポリシーの効果は、どのようにエッジネットワークデバイス142がトラフィックをこのエッジネットワークデバイスの宛先に向けるかにおいて確認できる。集中型制御ポリシー構成自体は、ネットワークコントローラアプライアンス132上にとどまり、エッジネットワークデバイス142にプッシュされないことが可能である。
【0055】
集中型制御ポリシーがプロビジョニングされていないときに、すべてのOMPルートは、ネットワークコントローラアプライアンス132のマスタールートテーブルに配置でき、ネットワークコントローラアプライアンス132は、同じセグメント(例えば、サブネット、VLAN、VNID、VRF、VPN、EPG、またはホストの他のコレクション)内のエッジネットワークデバイス142のすべてにすべてのOMPルートをアドバタイズすることができる。集中型制御ポリシーをプロビジョニングすることによって、管理者または他のユーザーは、いずれのOMPルートがネットワークコントローラアプライアンス132のマスタールートテーブルに配置されるか、どのようなルート情報がエッジネットワークデバイス142にアドバタイズされるか、およびOMPルートが、マスタールートテーブルに投入される前、またはアドバタイズされる前に修正されるかどうかに影響を与えることができる。
【0056】
集中型制御ポリシーがプロビジョニングされているときに、ネットワークコントローラアプライアンス132は、ルート情報をエッジネットワークデバイス142に再配布するか、またはネットワークコントローラアプライアンス132のマスタールートテーブルに格納されるか、もしくはネットワークコントローラアプライアンス132によってアドバタイズされるルート情報を修正することができる。ネットワークコントローラアプライアンス132は、(ネットワークコントローラアプライアンス132に関して)インバウンド方向またはアウトバウンド方向のいずれかでネットワーク内の特定のサイトに制御ポリシーを適用することによって、制御ポリシーをアクティブ化することができる。インバウンド方向に集中型制御ポリシーを適用することは、エッジネットワークデバイス142によってアドバタイズされているルートを、これらのルートがネットワークコントローラアプライアンス132上のマスタールートテーブルに配置される前に、フィルタリングするか、または修正することができる。プロセスにおける最初のステップとして、ルートを、承認するか、または拒絶することができる。承認されたルートは、制御ポリシーによって受け入れられたものとして、または修正されたものとしてのいずれかで、ネットワークコントローラアプライアンス132上のマスタールートテーブルにインストールできる。制御ポリシーによって拒絶されたルートは、暗黙的に破棄できる。
【0057】
アウトバウンド方向に制御ポリシーを適用することは、ネットワークコントローラアプライアンス132がエッジネットワークデバイス142に再配布するルートを、フィルタリングするか、または修正することができる。アウトバウンドポリシーの最初のステップとして、ルートを承認するか、または拒絶するかのいずれかを行うことができる。承認されたルートについて、集中型制御ポリシーは、これらのルートがネットワークコントローラアプライアンス132によって配布される前にルートを修正することができる。アウトバウンドポリシーによって拒絶されたルートは、アドバタイズされない。
【0058】
エッジネットワークデバイス142は、データトラフィックを転送するときに使用するために、ネットワークコントローラアプライアンス132から学習したルート情報を、これらのエッジネットワークデバイスのローカルルートテーブル内に配置することができる。ネットワークコントローラアプライアンス132は、ネットワーク内の集中型ルーティングシステムとして動作することができるため、エッジネットワークデバイス142は、これらのエッジネットワークデバイスがネットワークコントローラアプライアンス132から学習するOMPルート情報を修正しない。ネットワークコントローラアプライアンス132は、エッジネットワークデバイス142からOMPルートアドバタイズメントを定期的に受信することができ、ネットワークを通るルーティングパスを再計算および更新した後、ネットワークコントローラアプライアンス132は、エッジネットワークデバイス142に新しいルーティング情報をアドバタイズすることができる。
【0059】
ネットワークコントローラアプライアンス132上にプロビジョニングされた集中型制御ポリシーは、ネットワークコントローラアプライアンス上にとどまり、エッジネットワークデバイス142にダウンロードされないことが可能である。ただし、集中型制御ポリシーから結果として生じるルーティング決定を、ルートアドバタイズメントの形態でエッジネットワークデバイス142に渡すことができるため、制御ポリシーの効果は、エッジネットワークデバイス142がどのようにデータトラフィックをこのエッジネットワークデバイスの宛先に向けるかに反映され得る。
【0060】
ローカライズされた制御ポリシーは、エッジネットワークデバイス142上でローカルにプロビジョニングできる。ローカライズされた制御ポリシーは、どのようにBGPおよびOSPFルーティング(または他のルーティングプロトコル)ビヘイビアをサイトローカルネットワーク上で修正することができるかなどの、従来のルータで構成されるルーティングポリシーと同様であり得る。ローカライズされたデータポリシーは、エッジネットワークデバイス142上の特定の1つまたは複数のインターフェースへのアクセスリストのプロビジョニングおよび適用を可能にすることができる。単純なアクセスリストは、集中型データポリシーの場合と同じ方式で、6タプルの適合(例えば、送信元IPアドレスおよび宛先のIPアドレスとポート、DSCPフィールド、ならびにプロトコル)に基づいてアクセスを許容および制約することができる。アクセスリストはまた、サービスクラス(CoS)、ポリシング、およびミラーリングのプロビジョニングを可能にすることもでき、これは、どのようにデータトラフィックがエッジネットワークデバイス142のインターフェースおよびインターフェースキューに出入りするかを制御することができる。
【0061】
集中型データポリシーは、ネットワーク全体を通したデータトラフィックのフローに適用できる。集中型データポリシーがプロビジョニングされていないときに、特定のネットワークセグメント(例えば、サブネット、VLAN、VNID、VRF、VPN、EPG、または他のネットワークセグメント技術)内のすべてのプレフィックスは、そのセグメントから到達可能であり得る。集中型データポリシーをプロビジョニングすることは、送信元と宛先との間のアクセスを制御する6タプルフィルタを適用することができる。集中型制御ポリシーと同様に、集中型データポリシーは、ネットワークコントローラアプライアンス132上でプロビジョニングでき、その構成は、ネットワークコントローラアプライアンス132上にとどまることができる。データポリシーの効果は、どのようにエッジネットワークデバイス142がデータトラフィックをこのエッジネットワークデバイスの宛先に向けるかに反映され得る。ただし、制御ポリシーとは異なり、集中型データポリシーは、読み取り専用方式でエッジネットワークデバイス142にプッシュされ得る。
【0062】
いくつかの実施形態では、集中型データポリシーは、リスト、ポリシー定義(またはポリシー)、およびポリシー適用を使用して、ネットワークコントローラアプライアンス132上で構成できる。リストは、ポリシー適用またはポリシー適合のターゲットを定義することができる。リストのいくつかの例は、プレフィックスリスト(例えば、ポリシーと共に使用するためのプレフィックスのリスト)、サイトリスト(例えば、ポリシー定義およびポリシー適用で使用するためのサイト識別子のリスト)、TLOCリスト(例えば、ポリシー定義で使用するためのTLOCのリスト)、およびVPNリスト(例えば、ポリシーで使用するためのVPNのリスト)または他のネットワークセグメントのリスト(例えば、サブネット、VLAN、VNID、VRF、EPG、または他のネットワークセグメント化技術)を含むことができる。ポリシー定義(またはポリシー)は、制御および転送の態様を制御することができる。ポリシー定義(またはポリシー)は、制御ポリシー、データポリシー、ZFWポリシー(例えば、ゾーンを定義し、かつゾーン間のトラフィックを制御するポリシー)などの異なるタイプのポリシーを含むことができる。ポリシー適用は、ポリシーが適用される対象を制御することができる。ポリシー適用は、サイト指向であり、サイトリストによって定義できる。
【0063】
図4は、VPNを使用してネットワークをセグメント化するための手法の例のブロック
図400を例示している。VPNは、互いに分離でき、独自の転送テーブルを有することができる。インターフェースまたはサブインターフェースは、単一のVPNの下で明示的に構成でき、複数のVPNの一部ではないことが可能である。OMPルート属性において、およびパケットカプセル化において、パケットが属するVPNを識別することができるラベルが使用され得る。VPN番号は、0~65530の値を有する4バイトの整数であり得る。いくつかの実施形態では、各エッジネットワークデバイス142は、トランスポートVPN402(例えば、VPN番号0)および管理VPN404(例えば、VPN番号512)を含むことができる。トランスポートVPN402は、WANトランスポートネットワーク(例えば、インターネットトランスポートネットワーク160およびMPLSネットワーク162)にそれぞれ接続する1つ以上の物理または仮想ネットワークインターフェース(例えば、ギガビットイーサネットネットワークインターフェース408Aおよび408B)を含むことができる。ネットワークコントローラアプライアンス132への、またはネットワークコントローラアプライアンス132とネットワークオーケストレータアプライアンス104との間のセキュアなDTLS/TLS接続は、トランスポートVPN402から開始できる。加えて、制御プレーン130が確立され得、かつIPSecトンネル306(図示せず)がリモートサイトに接続できるように、静的なまたはデフォルトのルートまたは動的なルーティングプロトコルをトランスポートVPN402内に構成して、適切なネクストホップ情報を取得することができる。
【0064】
管理VPN404は、管理ネットワークインターフェース410を介して、ネットワークオーケストレータアプライアンス104、ネットワーク管理アプライアンス122、ネットワークコントローラアプライアンス132、および/またはエッジネットワークデバイス142との間で帯域外管理トラフィックを実行することができる。いくつかの実施形態では、管理VPN404は、オーバーレイネットワークの全体にわたって伝達されなくてもよい。
【0065】
トランスポートVPN402および管理VPN404に加えて、各エッジネットワークデバイス142はまた、1つ以上の他のサービスVPN406を含むこともできる。サービスVPN406は、1つ以上のローカルサイトネットワーク412に接続し、かつデータトラフィックを伝達する1つ以上の物理または仮想ネットワークインターフェース(例えば、ギガビットイーサネットネットワークインターフェース408Cおよび408D)を含むことができる。サービスVPN406は、OSPFまたはBGP、仮想ルータ冗長プロトコル(VRRP)、QoS、トラフィックシェーピング、ポリシングなどの機能を提供するように構成できる。いくつかの実施形態では、サイト412でネットワークコントローラアプライアンス132から受信されたOMPルートを、サービスVPN406用に構成されたルーティングプロトコルに再分配することによって、データトラフィックを、IPSecトンネルを介して他のサイトに向けることができる。次に、サービスVPNルートをOMPルーティングプロトコルにアドバタイズすることによって、ローカルサイト412からのルートを他のサイトにアドバタイズすることができ、これは、ネットワークコントローラアプライアンス132に送信され、ネットワーク内の他のエッジネットワークデバイス142に再配布され得る。
【0066】
図5は、インテントベースのZFWポリシーモデルの態様を示すためのネットワーク環境500の例のブロック図を例示している。この例では、ネットワーク環境500は、エッジネットワークデバイス142Aおよび142B(総称して、142)、インターネット160、ストアネットワーク502、プリンタネットワーク504、技術サービスネットワーク506、ゲストWi-Fiネットワーク508、データセンター(DC)ネットワーク510、およびDC技術サービスネットワーク512を含む。インターネットは、IPアドレス174.11.1.2および10.0.0.12と関連付けられ得る。ストアネットワーク502は、IPアドレス10.17.36.2と関連付けられ得る。プリンタネットワーク504は、IPサブネット173.11.1.2/24と関連付けられ得る。技術サービスネットワーク506は、IPサブネット173.11.2/24と関連付けられ得る。ゲストWi-Fiネットワーク508は、IPアドレス102.102.102.2と関連付けられ得る。DCネットワーク510は、IPサブネット172.11.11.2/24と関連付けられ得る。DC技術サービスネットワーク512は、IPサブネット172.11.12.2/24と関連付けられ得る。
【0067】
ネットワーク環境500のオペレータは、特定のトラフィック(例えば、TCP、UDP、ICMPなど)のステートフルインスペクションを使用してネットワークを保護することを望み得る。例えば、ネットワークオペレータは、ネットワーク環境500を構成して、(i)ゲストWi-Fiネットワーク508がインターネット160へのトラフィックを開始し、戻りトラフィックを許容するが、ゲストWi-Fiネットワーク508とネットワーク環境500の他の部分との間のトラフィックを禁止することを可能にし、(ii)ストアネットワーク502がプリンタネットワーク504およびDCネットワーク510へのトラフィックを開始し、戻りトラフィックを許容するが、ストアネットワーク502とネットワーク環境500の他の部分との間のトラフィックを禁止することを可能にし、(iii)インターネット160、プリンタネットワーク504、技術サービスネットワーク506、およびDCネットワーク510がネットワーク環境500の他の部分とのトラフィックを開始することを禁止し、および(iv)DC技術サービスネットワーク512が技術サービスネットワーク506へのトラフィックを開始し、戻りトラフィックを許可するが、DC技術サービスネットワーク512とネットワーク環境500の他の部分との間のトラフィックを禁止することを望み得る。
【0068】
上記の目的は、
図5では、方向を示す太い実線、および太い破線によって、示されている。方向を示す太い実線は、方向を示す矢印で示されたVPN(例えば、ストアネットワーク502、ゲストWi-Fiネットワーク508、およびDC技術サービスネットワーク512)から発信されたトラフィックを表すことができ、太い破線は、戻りトラフィックを表すことができる。細い線は、ネットワーク502~512とインターネット160との間の物理的な接続を表すことができる。
【0069】
従来のゾーンベースのポリシーモデルを使用して上記の目的を実行するには、管理者または他のユーザーが、ネットワーク502~512およびインターネット160のいくつかのゾーン、上記で論じられたゾーン間通信を可能にするための特定のゾーンペア、上記の通信を可能にするための第1のエッジネットワークデバイス142Aにおける第1のセットの従来のZFWポリシーおよび第2のエッジネットワークデバイス142Bにおける第2のセットの従来のZFWポリシー、第1のセットの従来のZFWポリシーをミラーリングする第2のエッジネットワークデバイス142Bにおける第3のセットの従来のZFWポリシーおよび第2のセットの従来のZFWポリシーをミラーリングする第2のエッジネットワークデバイス142Bにおける第4のセットの従来のZFWポリシーを定義する必要があり得る。加えて、管理者または他のユーザーは、従来のZFWポリシーを、第1のエッジネットワークデバイス142Aおよび第2のエッジネットワークデバイス142Bの特定のインターフェース上に別々にインストールする必要があり得る。
【0070】
様々な実施形態では、管理者または他のユーザーは、代わりに、集中型ネットワーク管理システム内で、インターフェースから切り離されたインテントベースのZFWポリシーモデルを構成してもよい。
図6は、インテントベースのZFWポリシーモデルを実装するためのプロセス600のフロー図の例を例示している。当業者は、本明細書で論じられる任意のプロセスについて、別段述べない限り、様々な実施形態の範囲内で、同様のもしくは代替の順序で、または並行して実行される、追加の、より少ない、または代替のステップがあり得ることを理解するであろう。プロセス600は、ネットワークオーケストレータアプライアンス104、ネットワーク管理アプライアンス122、ネットワークコントローラアプライアンス132、および/またはエッジネットワークデバイス142によって少なくとも部分的に実行され得る。
【0071】
プロセス600は、ネットワークコントローラ(例えば、ネットワークコントローラアプライアンス132)が、ネットワークコントローラによって管理される複数のエッジネットワークデバイス(例えば、エッジネットワークデバイス142)から到達可能な複数のネットワークセグメントについてのマスタールートテーブルを生成することができるステップ602で開始し得る。いくつかの実施形態では、複数のネットワークセグメントは、VPNを含むことができる。他の実施形態は、代替的または追加的に、ルート属性(例えば、OMPルート属性、TLOCルート属性など)、パケットヘッダ属性(例えば、送信元アドレス、送信元ポート、宛先アドレス、宛先ポート、プロトコル、DSCPなど)、アイデンティティベースの属性(ユーザー識別子、グループ、ロールなど)、他のタイプの仮想ネットワークセグメント(例えば、VLAN、VNID、VRF、EPGなど)など)、ロケーションもしくはネットワークサイト識別子(例えば、構内、データセンター、ブランチなど)、またはネットワークオブジェクトの他のコレクション(例えば、ユーザー、デバイス、システム、アプリケーションなど)、によって定義されたネットワークセグメントなどの、他のインテントベースのセグメント化手法を使用して、ネットワークをセグメント化してもよい。
【0072】
OMPルート属性は、とりわけ、発信元(例えば、BGP、OSPF、接続済み、静的などのOMPルートの送信元、および元のルートと関連付けられたメトリック)、発信者(例えば、ルートが学習したIPアドレスなどの、ルートの送信元のOMP識別子)、プリファレンス(例えば、プリファレンス値が高いほどルートがより優先されることを示すことができるOMPルートのプリファレンス)、サービス(OMPルートと関連付けられたネットワークサービス)、サイト識別子(例えば、OMPルートが属するオーバーレイネットワークドメイン内のサイトの識別子)、およびタグ(例えば、OMPスピーカーが承認するか、優先するか、または再配布するルーティング情報を制御するために使用することができる過渡的なパス属性)、TLOC(例えば、OMPルートのネクストホップとして使用され、OMPルートを発信するOMPスピーカーのシステムIPアドレス、リンクタイプを識別するためのカラー、およびトランスポートトンネル上のカプセル化タイプを含むことができる)、およびVPN(例えば、OMPルートが属するVPN)または他のタイプの仮想ネットワークセグメントを含むことができる。
【0073】
TLOCルート属性は、プライベートIPアドレス(例えば、TLOCと関連付けられたインターフェースのプライベートIPアドレス)、パブリックIPアドレス(例えば、TLOCのNAT変換アドレス)、キャリア(例えば、トランスポートがパブリックであるか、またはプライベートであるかを示すことができるキャリアタイプの識別子)、カラー(例えば、リンクタイプ)、カプセル化タイプ(例えば、IPセキュリティ(IPSec)、汎用ルーティングカプセル化(GRE)などのトンネルカプセル化タイプ)、サイト識別子(例えば、TLOCが属するオーバーレイネットワークドメイン内のサイトの識別子)、タグ(例えば、OMPスピーカーがTLOCへのルーティング情報のフローを制御するために使用することができる過渡的なパス属性;OMPルートがそのTLOCと共にアドバタイズされるときに、両方またはいずれかをコミュニティタグと共に配布して、TLOCのグループとの間でどのようにトラフィックを送信するかまたはトラフィックを受信するかを決定するために使用できる)、重み(例えば、OMPルートの複数のエントリーポイントを判別するために使用される値は、2つ以上のTLOCを介して到達可能である)などを含むことができる。
【0074】
マスタールートテーブルの生成は、エッジネットワークデバイスが、これらのエッジネットワークデバイスがローカルサイトから学習したルート関連のプレフィックスをネットワークコントローラに再配布することで開始することができる。いくつかの実施形態では、このルート情報は、エッジネットワークデバイスとネットワークコントローラとの間のDTLS接続(例えば、DTLS接続304)を介して送信されるOMPルートアドバタイズメントによって伝達できる。ネットワークコントローラが複数のネットワークコントローラアプライアンスに分散している場合、エッジネットワークデバイスは、ネットワークコントローラアプライアンスのすべてにOMPルートアドバタイズメントを送信することができる。
【0075】
OMPルートに加えて、エッジネットワークデバイスはまた、OMPを介してTLOCルートを、ネットワークコントローラ、またはこれらのエッジネットワークデバイスのドメイン内のコントローラに送信することもできる。エッジネットワークデバイスはまた、OMPを介してサービスルートを送信して、エッジネットワークデバイスが位置するローカルサイトで利用可能であるネットワークサービス(例えば、DDoSミティゲーション、負荷バランシング、侵入防止、侵入検知、WAN最適化など)をアドバタイズし得る。ネットワークコントローラは、ネットワークコントローラがネットワークコントローラのドメイン内のエッジネットワークデバイスから受信したOMP、TLOC、およびサービスルートを承認し、その情報をマスタールートテーブルに格納することができる。ネットワークコントローラは、いずれのOMPルート、TLOC、およびサービスがいずれのVPNまたは他のネットワークセグメントに属するかを追跡することができる。ネットワークコントローラは、これらのルートを使用して、ネットワークのトポロジーマップをデベロップし、かつオーバーレイネットワークを介したデータトラフィックのルーティングパスを判定することができる。ネットワークコントローラは、特定のVPNまたは他のネットワークセグメントのOMP、TLOC、およびサービスルートから学習した情報を、同じVPNまたは他のネットワークセグメントのエッジネットワークデバイスに再配布することができる。エッジネットワークデバイスは、定期的にルート更新をネットワークコントローラに送信することができる。ネットワークコントローラは、ルーティングパスを再計算し、マスタールートテーブルを更新し、新しいおよび変更されたルーティング情報をエッジネットワークデバイスにアドバタイズすることができる。この例では、ネットワークコントローラはネットワークコントローラのマスタールートテーブルにデータをポピュレートするためにOMPを利用するが、他の実施形態は、代替的または追加的に、当業者に知られている他のネットワークプロトコル(例えば、BGP、OSPFなど)を使用してもよい。
【0076】
ステップ604で、ネットワークコントローラは、複数のネットワークセグメントを1つ以上のゾーンにマッピングするゾーン定義情報と、各ZFWポリシーによって指定された送信元ゾーンと宛先ゾーンとの間のトラフィックに適用する1つ以上のZFWポリシーと、を受信することができる。ゾーン定義情報およびZFWポリシーは、インテントベースのZFWポリシーモデルを構成する。いくつかの実施形態では、ネットワークは、ゾーン定義情報およびZFWポリシーを受信するためのユーザーインターフェースを有するネットワーク管理システム(例えば、ネットワーク管理アプライアンス122)を含むことができる。管理者または他のユーザーは、ネットワーク管理システムのユーザーインターフェースを介してゾーン定義情報とZFWポリシーを提供し得、ネットワーク管理システムは、ゾーン定義情報およびZFWポリシーをネットワークコントローラに伝送することができる。
【0077】
いくつかの実施形態では、ゾーン定義情報は、エッジネットワークデバイスのインターフェースから切り離された1つ以上のVPNに各ゾーンをマッピングすることができる。すなわち、VPNは、エッジネットワークデバイスの特定のインターフェースにバインドされないが、VPNメンバシップを記述する集中型制御ポリシーによって判定できる。VPNメンバシップポリシーは、エッジネットワークデバイスが特定のVPNに関与することができるかどうかを制御する(例えば、エッジネットワークデバイスがいずれのVPNからルートを受信することができるかを定義する)ことができる。VPNメンバシップポリシーは、パケットヘッダにのみ影響し、かつエッジネットワークデバイスがトラフィックを伝送するために使用するインターフェースの選択には影響しないため、VPNメンバシップポリシーは、集中型であり得る。代わりに、ネットワークコントローラは、デバイスが特定のVPNからルートを受信することを禁止されているときに、エッジネットワークデバイスにルートを転送しないことによって、VPNメンバシップポリシーを行使することができる。
図5の例では、ストアネットワーク502、プリンタネットワーク504、技術サービスネットワーク506、DCネットワーク510、およびDC技術サービスネットワーク512は、VPN_1のメンバであり得、ゲストWi-Fiネットワーク508は、VPN_2のメンバであり得、インターネット160は、VPN_3のメンバであり得る。VPN_1は、ZONE_1にマップでき、VPN_2は、ZONE_2にマップでき、VPN_3は、ZONE_3にマップできる。
【0078】
他の実施形態は、ルート属性、パケットヘッダ属性、パケットペイロード属性、他のタイプの仮想ネットワークセグメント(例えば、VLAN、VNID、VRF、EPGなど)、アイデンティティベースの属性、ロケーションまたはネットワークサイト識別子、および他のタイプのネットワークセグメントにマッピングされたゾーンなどのゾーンを、インターフェースから切り離されたネットワークオブジェクトの他のコレクションにマッピングすることを可能にし得る。
【0079】
ZFWポリシーは、送信元ゾーン、宛先ゾーン、およびファイアウォールポリシーを含むことができる。送信元ゾーンは、データトラフィックフローの発信元となる1つ以上のVPN(または他のネットワークセグメント)のグループ化を含むことができる。宛先ゾーンは、データトラフィックフローが終端する1つ以上のVPN(または他のネットワークセグメント)のグループ化を含むことができる。いくつかの実施形態では、VPN(または他のネットワークセグメント)は、1つのゾーンのみに属することができる。送信元ゾーンおよび宛先ゾーンは、2つのゾーン間を流れるトラフィックにファイアウォールポリシーを適用するゾーンペアを構成する。
【0080】
ファイアウォールポリシーは、送信元ゾーンから宛先ゾーンへのデータトラフィックフローが適合する条件と、データトラフィックフローが指定された条件に適合するときに実行する1つ以上のアクションと、を定義することができるセキュリティポリシーである。いくつかの実施形態では、ファイアウォールポリシーは、最小のシーケンス番号から最大のシーケンス番号まで順番に評価され得る、適合アクションペアの一連の番号付きまたは順序付けられたシーケンスを含むことができる。データパケットが適合条件に適合すると、関連付けられた1つまたは複数のアクションが実行され、そのパケットに対するポリシー評価が、停止し得る。パケットがいずれの条件にも適合しない場合、デフォルトのアクションが、パケットに対して実行できる。適合条件は、より細粒度のZFWポリシーを提供することができ、データパケットは、IPプレフィックス、IPポート、プロトコル(例えば、TCP、UDP、ICMPなど)、アプリケーション、アイデンティティ、グループ、サービス、VPN識別子、または他のネットワークセグメント識別子などに関して適合し得る。適合するフローは、検査アクション、通過アクション、拒絶アクション、またはドロップアクションによって処理できる。検査アクションは、接続テーブルまたはセッションテーブルに格納されたパケットヘッダおよびパケットヘッダ情報(例えば、送信元アドレス、送信元ポート、宛先アドレス、宛先ポート、プロトコル、DSCPなど)を検査して、戻りトラフィックを許容することができる。通過アクションは、パケットのヘッダを検査せずに、パケットが宛先ゾーンに通過することを許可することができる。拒絶アクションおよびドロップアクションは、ゾーン間の特定のトラフィックを禁止することができる。拒絶アクションは、エラーパケットの伝送をもたらして(例えば、ICMPを介して)、宛先ゾーンに到達可能ではないことを示すことができるのに対して、ドロップアクションは、エラーパケットの伝送を伴わずにトラフィックをドロップする。
【0081】
図5の例では、特定のタイプのトラフィックを明示的に許可するZFWポリシーが定義されていない限り、デフォルトのゾーンビヘイビアは、同じゾーンのメンバを含むゾーン間の通信を禁止することができる。したがって、ネットワークコントローラは、トラフィックがそのルートに沿って流れることを許容するZFWポリシーが存在しない限り、特定のルートをエッジネットワークデバイス142にアドバタイズしないか、または配布しないことが可能である。上記で論じられたネットワークオペレータのインテントに従ってトラフィックが流れることを可能にするには、ZFWポリシー520A、520B、520C、および520D(総称して、520)を定義して、デフォルトのゾーンビヘイビアをオーバーライドすることができる。例えば、第1のZFWポリシー520Aは、ゲストWi-Fiネットワーク508(例えば、VPN_2/ZONE_2)からインターネット160(例えば、VPN_3/ZONE_3)へのトラフィックを開始し、かつ戻りトラフィックを許容することを可能にすることができ、第2のZFWポリシー520Bは、ストアネットワーク502(例えば、VPN_1/ZONE_1)からプリンタネットワーク504(例えば、VPN_1/ZONE_1)へのトラフィックを開始し、かつ戻りトラフィックを許容することを可能にすることができ、第3のZFWポリシー520Cは、ストアネットワーク502(例えば、VPN_1/ZONE_1)からDCネットワーク510(例えば、VPN_1/ZONE_1)へのトラフィックを開始し、かつ戻りトラフィックを許容することを可能にすることができ、および第4のZFWポリシー520Dは、DC技術サービスネットワーク512(例えば、VPN_1/ZONE_1)から技術サービスネットワーク506(例えば、VPN_1/ZONE_1)へのトラフィックを可能にし、かつ戻りトラフィックを許容することを可能にすることができる。
【0082】
ステップ606で、ネットワークコントローラは、各ZFWポリシー520を評価して、ZFWポリシーによって指定された送信元ゾーンにマッピングされたネットワークセグメント(すなわち、第1のネットワークセグメント)に到達することができるエッジネットワークデバイス(すなわち、第1のエッジネットワークデバイス)と、ZFWポリシーによって指定された宛先ゾーンにマッピングされたネットワークセグメント(すなわち、第2のネットワークセグメント)に到達することができるエッジネットワークデバイス(すなわち、第2のエッジネットワークデバイス)と、第1のネットワークセグメント、第1のエッジネットワークデバイス、第2エッジネットワークデバイス、および第2ネットワークセグメント間の、(マスタールートテーブルからの)ルーティング情報と、を判定することができる。例えば、第1のZFWポリシーが与えられると、ネットワークコントローラは、ZFWポリシーによって指定された第1の送信元ゾーンにマッピングされたVPN(例えば、送信元VPN)にサブスクライブされた第1のエッジネットワークデバイスと、第1のZFWポリシーによって指定された第1の宛先ゾーンにマッピングされたVPN(例えば、宛先VPN)にサブスクライブされた第2のエッジネットワークデバイスと、を判定することができる。
【0083】
第1のZFWポリシーが適合アクションペアを指定しいない場合、ネットワークコントローラは、送信元VPNに対応するIPプレフィックス(例えば、送信元プレフィックス)と、宛先VPNに対応するIPプレフィックス(例えば、宛先プレフィックス)と、を判定することができる。次いで、ネットワークコントローラは、マスタールートテーブルで、送信元プレフィックスおよび宛先プレフィックスの中の各送信元-宛先プレフィックスペアに対応するルーティング情報を探索することができる。例えば、ネットワークコントローラは、ZFWポリシー520Aを評価して、第1のエッジネットワークデバイス142Aのみが、ZFWポリシー520A(すなわち、ZONE_2)によって指定された送信元ゾーンにマッピングされたVPN(すなわち、VPN_2)と、ZFWポリシー520A(すなわち、ZONE_3)によって指定された宛先ゾーンにマッピングされたVPN(すなわち、VPN_3)と、にサブスクライブされていると判定することができる。次いで、ネットワークコントローラは、マスタールートテーブルで、送信元VPNのIPプレフィックス(すなわち、102.102.102.2)と宛先VPNのIPプレフィックス(すなわち、174.11.1.2)との間のルーティング情報を探索することができる。これらのルートは、A’と表記され得る。ZFWポリシー520Aによって指定されたアクションは、検査アクションである。したがって、インターネット160からの戻りトラフィックは、ゲストWi-Fiネットワーク508からインターネット160へ開始されたデータトラフィックについての接続情報またはセッション情報が存在する場合に許可され得る。このことは、ゲストWi-Fiネットワーク508がインターネット160へのデータトラフィックを開始するときに、第1のエッジネットワークデバイス142Aが、接続テーブルまたはセッションテーブルを維持し、かつインターネット160からゲストWi-Fiネットワーク508への戻りルートをポピュレートすることによって、達成できる。
【0084】
第1のZFWポリシーが1つ以上の適合条件を指定する場合、ネットワークコントローラは、送信元適合条件に対応するIPプレフィックスと、宛先適合条件に対応するIPプレフィックスと、を判定することができる。次いで、ネットワークコントローラは、マスタールートテーブルで、送信元適合条件に適合する送信元プレフィックスと宛先適合条件に適合する宛先プレフィックスとの中から、各送信元-宛先プレフィックスペアに対応するルーティング情報を探索することができる。例えば、ネットワークコントローラは、ZFWポリシー520Cを評価して、第1のエッジネットワークデバイス142Aと第2のエッジネットワークデバイス142Bとの両方が、ZFWポリシー520Cによって指定された送信元ゾーン(すなわち、ゾーン1)にマッピングされたVPN(すなわち、VPN_1)と、ZFWポリシー520C(すなわち、ZONE_1)によって指定された宛先ゾーンにマッピングされたVPN(すなわち、VPN_1)と、にサブスクライブされていると判定することができる。次いで、ネットワークコントローラは、マスタールートテーブルで、送信元適合条件に対応するIPプレフィックス(すなわち、ストアネットワーク502または10.17.36.2のIPアドレス)と、宛先適合条件に対応するIPプレフィックス(すなわち、DCネットワーク510または172.11.11.2/24のIPサブネット)と、の間のルーティング情報を探索することができる。このルーティング情報は、C’と表記され得る。ZFWポリシー520Cによって指定されたアクションは、検査アクションである。したがって、DCネットワーク510からの戻りトラフィックは、ストアネットワーク502からDCネットワーク510へ開始されたデータトラフィックについての接続情報またはセッション情報が存在する場合に許可され得る。このことは、ストアネットワーク502がDCネットワーク510へのデータトラフィックを開始するときに、第1のエッジネットワークデバイス142Aおよび/または第2のエッジネットワークデバイス142Bが、接続テーブルまたはセッションテーブルを維持し、かつDCネットワーク510からストアネットワーク502への戻りルーティング情報をポピュレートすることによって、達成できる。別のシナリオでは、ZFWポリシーで指定されたアクションが代わりに通過アクションである場合には、接続情報またはセッション情報は維持されず、戻りルーティング情報はない。同様の手法を使用して、ZFWポリシー520Bのルーティング情報B’と、ZFWポリシー520Dのルーティング情報D’と、を取得することができる。
【0085】
プロセス600は、ネットワークコントローラがルーティング情報を第1のエッジネットワークデバイス142Aおよび第2のエッジネットワークデバイス142Bに伝送することができるステップ608で終了することができる。
図5の例では、ネットワークコントローラは、ZFWポリシー520Aについて、ルーティング情報A’を第1のエッジネットワークデバイス142Aに伝送することができる。例えば、第2のエッジネットワークデバイス142BがVPN_2またはVPN_3にサブスクライブしていない場合があるため、ネットワークコントローラは、ルーティング情報A’を第2のエッジネットワークデバイス142Bに伝送しない。ZFWポリシー520Bについて、ネットワークコントローラは、ルーティング情報B’を第1のエッジネットワークデバイス142Aに伝送することができる。例えば、マスタールートテーブルが、第2のエッジネットワークデバイス142Bを介した送信元適合条件(例えば、ストアネットワーク502)と宛先適合条件(例えば、プリンタネットワーク504)とに対応するIPプレフィックス間のルーティング情報を含まないため、ネットワークコントローラは、ルーティング情報B’を第2のエッジネットワークデバイス142Bに伝送しない。ZFWポリシー520Cについて、ネットワークコントローラは、ルーティング情報C’を第1のエッジネットワークデバイス142Aおよび第2のエッジネットワークデバイス142Bに伝送することができる。ZFWポリシー520Dについて、ネットワークコントローラは、ルーティング情報D’を第1のエッジネットワークデバイスおよび第2のエッジネットワークデバイス142Bに伝送することができる。
【0086】
プロセス600は、いくつかの方式でZFW構成を簡素化することができる。ユーザーは、集中型ネットワーク管理システムから一度、ネットワーク環境500のZFWを構成することができる。ユーザーは、複数のエッジネットワークデバイスにまたがるトラフィックの正しいビヘイビアを確保するためのミラーポリシーを定義する必要がない。ZFWポリシーは、動的であり得る。ゾーンはいつでも作成できるが、ゾーンメンバがネットワークにアタッチするまで、ゾーン定義情報およびZFWポリシーを構成する必要はない。ZFWポリシーは、モバイルであり得る。ネットワーク内の任意の場所に対してゾーンメンバを追加するかまたは削除しても、ポリシーを再構成する必要はない。
【0087】
プロセス600は、コンピューティングリソース(例えば、処理、メモリ、帯域幅など)の利用を改善することができる。例えば、ネットワークデバイスは、それらのネットワークデバイスに適用可能でないZFWポリシーを行使する必要がないことによって、リソースを節約することができる。加えて、トラフィックが複数のネットワークデバイスにまたがるときに、ポリシーは各エッジネットワークデバイスで複数回ではなく、ネットワークコントローラで1回だけ処理されるため、ネットワーク負荷を減少させることができる。様々な実施形態に従って提供され得るように、様々な他の機能および利点が上に記載および提案されている。
【0088】
図7は、ネットワークデバイス700(例えば、スイッチ、ルータ、ネットワークアプライアンスなど)の例を例示している。ネットワークデバイス700は、中央処理装置(CPU)702、インターフェース704、およびバス706(例えば、ペリフェラルコンポーネントインターコネクト(PCI)バス)を含むことができる。適切なソフトウェアまたはファームウェアの制御下で作動する場合、CPU702は、パケット管理、エラー検出、および/またはルーティング関数を実行することを担当することができる。CPU702は、好ましくは、オペレーティングシステムおよび任意の適切なアプリケーションソフトウェアを含むソフトウェアの制御下でこれらすべての機能を達成する。CPU702は、MotorolaのマイクロプロセッサファミリーまたはMIPSマイクロプロセッサファミリーからのプロセッサなどの1つ以上のプロセッサ708を含み得る。代替実施形態では、プロセッサ708は、ネットワークデバイス700の動作を制御するための特別に設計されたハードウェアであり得る。一実施形態では、メモリ710(不揮発性ランダムアクセスメモリ(RAM)および/または読み取り専用メモリ(ROM)など)もまた、CPU702の一部を形成することができる。ただし、メモリをシステムに結合することができる多くの異なる方式がある。
【0089】
インターフェース704は、インターフェースカード(場合によってはラインカードと呼ばれる)として提供できる。インターフェース704は、ネットワークを介したデータパケットの送信および受信を制御し、場合によってはネットワークデバイス700と共に使用される他の周辺機器をサポートすることができる。提供され得るインターフェースの中には、イーサネットインターフェース、フレームリレーインターフェース、ケーブルインターフェース、DSLインターフェース、トークンリングインターフェースなどがある。加えて、高速トークンリングインターフェース、無線インターフェース、イーサネットインターフェース、ギガビットイーサネットインターフェース、非同期転送モード(ATM)インターフェース、高速シリアルインターフェース(HSSI)、パケットオーバーSONET(POS)インターフェース、ファイバ分散データインタフェース(FDDI)などの、様々な非常に高速のインターフェースが提供され得る。インターフェース704は、適切な媒体との通信に適したポートを含み得る。いくつかの場合では、インターフェース704はまた、独立したプロセッサ、そして場合によっては揮発性RAMも含み得る。独立したプロセッサは、パケット交換、メディア制御、および管理などの通信集約型タスクを制御し得る。通信集約型タスクのために別個のプロセッサを提供することによって、インターフェース704は、CPU702がルーティング計算、ネットワーク診断、セキュリティ機能などを効率的に実行することを可能にし得る。
【0090】
図7に示されるシステムは、一実施形態のネットワークデバイスの一例であるが、このシステムは、本技術が実装できる唯一のネットワークデバイスアーキテクチャでは決してない。例えば、通信ならびにルーティング計算および他のネットワーク機能を処理することができる単一のプロセッサを有するアーキテクチャを使用することもできる。さらに、他のタイプのインターフェースおよび媒体もまた、ネットワークデバイス700と共に使用できる。
【0091】
ネットワークデバイスの構成にかかわらず、システムは、本明細書に記載されるローミング、ルート最適化、およびルーティング機能のための汎用ネットワーク動作およびメカニズムのためのプログラム命令を格納するように構成された1つ以上のメモリまたはメモリモジュール(メモリ710を含む)を使用し得る。プログラム命令は、例えば、オペレーティングシステムおよび/または1つ以上のアプリケーションの動作を制御し得る。1つのメモリまたは複数のメモリはまた、モビリティバインディング、登録、および関連付けテーブルなどのテーブルを格納するように構成され得る。
【0092】
図8Aおよび
図8Bは、様々な実施形態によるシステムを例示している。様々な実施形態を実施するときに、より適切なシステムが当業者には明らかであろう。当業者はまた、他のシステムが可能であることを容易に理解するであろう。
【0093】
図8Aは、バスコンピューティングシステム800の例を例示しており、システムの構成要素は、バス805を使用して互いに電気的に通信している。コンピューティングシステム800は、処理ユニット(CPUまたはプロセッサ)810と、読み取り専用メモリ(ROM)820およびランダムアクセスメモリ(RAM)825などのシステムメモリ815を含む様々なシステムコンポーネントをプロセッサ810に結合し得るシステムバス805と、を含むことができる。コンピューティングシステム800は、プロセッサ810に直接接続されているか、プロセッサ810に近接しているか、またはプロセッサ810の一部分として統合された高速メモリのキャッシュ812を含むことができる。コンピューティングシステム800は、プロセッサ810による速いアクセスのために、メモリ815、ROM820、RAM825、および/または記憶デバイス830からキャッシュ812にデータをコピーすることができる。このようにして、キャッシュ812は、データを待機している間のプロセッサの遅延を回避するという性能向上を提供することができる。これらおよび他のモジュールは、プロセッサ810を制御して、様々なアクションを実行することができる。他のシステムメモリ815も同様に利用可能であり得る。メモリ815は、異なる性能特性を有する複数の異なるタイプのメモリを含むことができる。プロセッサ810は、任意の汎用プロセッサおよびハードウェアモジュール、またはプロセッサ810を制御するように構成された、記憶デバイス830に格納されたモジュール1 832、モジュール2 834、およびモジュール3 836のようなソフトウェアモジュール、ならびにソフトウェア命令が実際のプロセッサ設計に組み込まれた専用プロセッサを含むことができる。プロセッサ810は、本質的に、複数のコアまたはプロセッサ、バス、メモリコントローラ、キャッシュなどを包含する完全に自己完結型のコンピューティングシステムであり得る。マルチコアプロセッサは、対称または非対称であり得る。
【0094】
コンピューティングデバイス800とのユーザーインタラクションを可能にするために、入力デバイス845は、発話用マイク、ジェスチャまたはグラフィック入力用のタッチ保護スクリーン、キーボード、マウス、モーション入力、発話などの任意の数の入力メカニズムを表すことができる。出力デバイス835はまた、当業者に知られている出力メカニズムのうちの1つ以上とすることができる。場合によっては、マルチモーダルシステムは、ユーザーがコンピューティングデバイス800と通信するために複数のタイプの入力を提供することを可能にし得る。通信インターフェース840は、ユーザー入力およびシステム出力を統御および管理することができる。特定のハードウェア配置での動作に対する制約はないため、ここでの基本的特徴は、基本的特徴が開発される際の改善されたハードウェア配置またはファームウェア配置に容易に置き換えられ得る。
【0095】
記憶デバイス830は、不揮発性メモリでとすることができ、磁気カセット、フラッシュメモリカード、ソリッドステートメモリデバイス、デジタル多用途ディスク、カートリッジ、ランダムアクセスメモリ、読み取り専用メモリ、およびそれらのハイブリッドなどの、コンピュータによってアクセス可能であるデータを格納することができるハードディスクまたは他のタイプのコンピュータ可読媒体とすることができる。
【0096】
上記に論じられたように、記憶デバイス830は、プロセッサ810を制御するためのソフトウェアモジュール832、834、836を含むことができる。他のハードウェアまたはソフトウェアモジュールが企図される。記憶デバイス830は、システム接続部805に接続できる。いくつかの実施形態では、特定の機能を実行するハードウェアモジュールは、その機能を実行するための、プロセッサ810、バス805、出力デバイス835などの必要なハードウェアコンポーネントに関連してコンピュータ可読媒体に格納されたソフトウェアコンポーネントを含むことができる。
【0097】
図8Bは、一実施形態に従って使用できるチップセットコンピューティングシステム850の例示的なアーキテクチャを例示している。コンピューティングシステム850は、識別された計算を実行するように構成されたソフトウェア、ファームウェア、およびハードウェアを実行することができる任意の数の物理的および/または論理的に別異するリソースを表すプロセッサ855を含むことができる。プロセッサ855は、プロセッサ855への入力およびプロセッサ855からの出力を制御することができるチップセット860と通信することができる。この例では、チップセット860は、ディスプレイなどの出力デバイス865に情報を出力することができ、磁気媒体、ソリッドステート媒体、および他の好適な記憶媒体を含むことができる記憶デバイス870に情報を読み書きすることができる。チップセット860はまた、RAM875からデータを読み取り、およびRAM875にデータを書き込むこともできる。チップセット860とインターフェースするために、多様なユーザーインターフェースコンポーネント885とインターフェースするためのブリッジ880を提供することができる。ユーザーインターフェースコンポーネント885は、キーボード、マイクロフォン、タッチ検出および処理回路、マウスなどのポインティングデバイスなどを含むことができる。コンピューティングシステム850への入力は、マシンにより生成されたおよび/または人間により生成された多様な送信元のいずれかから生じ得る。
【0098】
チップセット860はまた、異なる物理インターフェースを有することができる1つ以上の通信インターフェース890とインターフェースすることもできる。通信インターフェース890は、有線および無線ローカルエリアネットワーク(LAN)のための、ブロードバンド無線ネットワーク、ならびにパーソナルエリアネットワークのためのインターフェースを含むことができる。本明細書に開示される技術を生成、表示、および使用するための方法のいくつかの適用は、物理インターフェースを介して順序付けられたデータセットを受信することを含むことができ、またはプロセッサ855が記憶デバイス870またはRAM875に格納されたデータを分析するによってマシン自体によって生成できる。さらに、コンピューティングシステム850は、ユーザーインターフェースコンポーネント885を介してユーザーから入力を受け取り、プロセッサ855を使用してこれらの入力を解釈することによって、ブラウジング機能などの適切な機能を実行することができる。
【0099】
コンピューティングシステム800および850は、それぞれ2つ以上のプロセッサ810および855を有することができるか、またはより大きな処理能力を提供するために一緒にネットワーク化されたコンピューティングデバイスのグループまたはクラスタの一部であり得ることが理解されよう。
【0100】
要約すると、実施形態のシステムおよび方法は、動的なインテントベースのファイアウォールをプロビジョニングすることを提供する。ネットワークコントローラは、コントローラによって管理されるエッジネットワークデバイスから到達可能なネットワークセグメントについてのマスタールートテーブルを生成することができる。コントローラは、ネットワークセグメントをゾーンにマッピングするゾーン定義情報と、ゾーンベースのファイアウォール(ZFW)ポリシーであって各ZFWポリシーによって指定された送信元ゾーンと宛先ゾーンとの間のトラフィックに適用するZFWポリシーと、を受信することができる。コントローラは、ZFWポリシーを評価して、ZFWポリシーによって指定された送信元ゾーンにマッピングされた第1のネットワークセグメントに到達することができる第1のエッジネットワークデバイスと、ZFWポリシーによって指定された宛先ゾーンにマッピングされた第2のネットワークセグメントに到達することができる第2のエッジネットワークデバイスと、第1のネットワークセグメント、第1のエッジネットワークデバイスおよび第2のエッジネットワークデバイス、ならびに第2のネットワークセグメント間の、(ルートテーブルからの)ルーティング情報と、を判定することができる。コントローラは、ルーティング情報をエッジネットワークデバイスに伝送することができる。
【0101】
説明を明確にするために、場合によっては、様々な実施形態は、デバイス、デバイスコンポーネント、ソフトウェアで具体化される方法におけるステップもしくはルーチン、またはハードウェアとソフトウェアとの組み合わせを含む機能ブロックを含む個々の機能ブロックを含むものとして提示され得る。
【0102】
いくつかの実施形態では、コンピュータ可読記憶デバイス、媒体、およびメモリは、ビットストリームなどを含むケーブルまたは無線信号を含むことができる。しかしながら、言及される場合、非一時的コンピュータ可読記憶媒体は、エネルギー、搬送波信号、電磁波、および信号自体などの媒体を明示的に除外する。
【0103】
上記の例による方法は、コンピュータ可読媒体に格納されているか、他の場合にはそれから利用可能であるコンピュータ実行可能命令を使用して実装することができる。そのような命令は、例えば、特定の機能または機能のグループを実行するために、汎用コンピュータ、専用コンピュータ、または専用処理デバイスを引き起こすか、あるいは構成する命令およびデータを含むことができる。使用されるコンピュータリソースの部分は、ネットワーク経由でアクセス可能であり得る。コンピュータの実行可能命令は、例えば、バイナリ、アセンブリ言語、ファームウェア、またはソースコードなどの中間フォーマット命令であり得る。命令、使用される情報、および/または記載された例による方法中に作成された情報を格納するために使用され得るコンピュータ可読媒体の例として、磁気ディスクまたは光ディスク、フラッシュメモリ、不揮発性メモリを備えたユニバーサルシリアル(USB)デバイス、ネットワークストレージデバイスなどが挙げられる。
【0104】
これらの開示による方法を実装するデバイスは、ハードウェア、ファームウェア、および/またはソフトウェアを含むことができ、様々なフォームファクタのいずれかを取ることができる。このようなフォームファクタのいくつかの例として、サーバ、ラックマウントデバイス、デスクトップコンピュータ、ラップトップコンピュータなどの汎用コンピューティングデバイス、またはタブレットコンピュータ、スマートフォン、携帯情報端末、ウェアラブルデバイスなどの汎用モバイルコンピューティングデバイスが挙げられる。本明細書に記載される機能はまた、周辺機器またはアドインカードで具体化され得る。このような機能は、さらなる例として、単一のデバイスで実行される異なるチップまたは異なるプロセスの間の回路基板上に実装することもできる。
【0105】
命令、そのような命令を伝達するための媒体、それらを実行するためのコンピューティングリソース、およびそのようなコンピューティングリソースをサポートするための他の構造は、これらの開示に記載された機能を提供するための手段である。
【0106】
添付の特許請求の範囲の範疇の態様を説明するために、様々な例および他の情報を使用したが、当業者であれば、多種多様な実装形態を導出するために、これらの例を使用することができるように、かかる例における特定の特徴または構成に基づいて、特許請求の範囲のいかなる制限も示唆されるべきではない。さらに、一部の主題は、構造的特徴および/または方法ステップの例に固有の言語で記載されている場合があるが、添付の特許請求の範囲で定義される主題は、必ずしもこれらの記載された特徴または行為に限定されないことを理解されたい。例えば、かかる機能は、ここで特定されている構成要素以外の構成要素で、異なって配布し、または実行することができる。むしろ、記載された特徴およびステップは、添付の特許請求の範囲の範疇のシステムおよび方法の構成要素の例として開示される。