JP6236528B2 - ネットワークルーティングのためのパケット分類 - Google Patents

ネットワークルーティングのためのパケット分類 Download PDF

Info

Publication number
JP6236528B2
JP6236528B2 JP2016528002A JP2016528002A JP6236528B2 JP 6236528 B2 JP6236528 B2 JP 6236528B2 JP 2016528002 A JP2016528002 A JP 2016528002A JP 2016528002 A JP2016528002 A JP 2016528002A JP 6236528 B2 JP6236528 B2 JP 6236528B2
Authority
JP
Japan
Prior art keywords
flow
network device
network
determining
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016528002A
Other languages
English (en)
Other versions
JP2016528809A (ja
Inventor
ズック・ニール
ベノイト・マーク・ジョセフ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Palo Alto Networks Inc
Original Assignee
Palo Alto Networks Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Palo Alto Networks Inc filed Critical Palo Alto Networks Inc
Publication of JP2016528809A publication Critical patent/JP2016528809A/ja
Application granted granted Critical
Publication of JP6236528B2 publication Critical patent/JP6236528B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Description

他の出願の相互参照
本願は、2013年7月18日出願の米国仮特許出願第61/847,982号(代理人整理番号PALOP055+)「PACKET CLASSIFICATION FOR NETWORK ROUTING」の優先権を主張し、仮特許出願は、すべての目的のために参照により本明細書に組み込まれる。
ファイアウォールは、一般に、不正アクセスからネットワークを保護しつつ、承認された通信がファイアウォールを通過することを許可する。ファイアウォールは、通例、ネットワークアクセスに対するファイアウォール機能を提供するデバイスまたはデバイスセットもしくはデバイス(コンピュータなど)上で実行されるソフトウェアである。例えば、ファイアウォールは、デバイス(例えば、コンピュータ、スマートフォン、または、その他のタイプのネットワーク通信可能なデバイス)のオペレーティングシステムに統合されうる。ファイアウォールは、コンピュータサーバ、ゲートウェイ、ネットワーク/ルーティングデバイス(例えば、ネットワークルータ)、または、データアプライアンス(例えば、セキュリティアプライアンスまたはその他のタイプの専用デバイス)上のソフトウェアに統合されてもよいし、かかるソフトウェアとして実行されてもよい。
ファイアウォールは、通例、1セットのルールに基づいてネットワーク伝送を拒否または許可する。これらのセットのルールは、しばしば、ポリシーと呼ばれる。例えば、ファイアウォールは、1セットのルールまたはポリシーを適用することによってインバウンドトラフィックをフィルタリングできる。ファイアウォールは、1セットのルールまたはポリシーを適用することによってアウトバウンドトラフィックをフィルタリングすることもできる。ファイアウォールは、基本的なルーティング機能を実行することもできる。
以下の詳細な説明と添付の図面において、本発明の様々な実施形態を開示する。
いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するためのネットワークアーキテクチャを示す機能図。
いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するためのネットワークアーキテクチャを示す別の機能図。
いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するためのセキュリティコントローラを示す機能図。
いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するためのセキュリティコントローラを示す別の機能図。
いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するためのセキュリティコントローラの様々な構成要素を示すブロック図。
いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するためのセキュリティコントローラの論理構成要素を示す機能図。
いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するために利用できるセキュリティコントローラのアーキテクチャを示す機能図。
いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するためのフローチャート。
いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するための別のフローチャート。
本発明は、処理、装置、システム、物質の組成、コンピュータ読み取り可能な格納媒体上に具現化されたコンピュータプログラム製品、および/または、プロセッサ(プロセッサに接続されたメモリに格納および/またはそのメモリによって提供される命令を実行するよう構成されたプロセッサ)を含め、様々な形態で実装されうる。本明細書では、これらの実装または本発明が取りうる任意の他の形態を、技術と呼ぶ。一般に、開示された処理の工程の順序は、本発明の範囲内で変更されてもよい。特に言及しない限り、タスクを実行するよう構成されるものとして記載されたプロセッサまたはメモリなどの構成要素は、ある時間にタスクを実行するよう一時的に構成された一般的な構成要素として、または、タスクを実行するよう製造された特定の構成要素として実装されてよい。本明細書では、「プロセッサ」という用語は、1または複数のデバイス、回路、および/または、コンピュータプログラム命令などのデータを処理するよう構成された処理コアを指すものとする。
以下では、本発明の原理を示す図面を参照しつつ、本発明の1または複数の実施形態の詳細な説明を行う。本発明は、かかる実施形態に関連して説明されているが、どの実施形態にも限定されない。本発明の範囲は、特許請求の範囲によってのみ限定されるものであり、本発明は、多くの代替物、変形物、および、等価物を含む。以下の説明では、本発明の完全な理解を提供するために、多くの具体的な詳細事項が記載されている。これらの詳細事項は、例示を目的としたものであり、本発明は、これらの具体的な詳細事項の一部または全てがなくとも特許請求の範囲に従って実施可能である。簡単のために、本発明に関連する技術分野で周知の技術事項については、本発明が必要以上にわかりにくくならないように、詳細には説明していない。
ファイアウォールは、一般に、不正アクセスからネットワークを保護しつつ、承認された通信がファイアウォールを通過することを許可する。ファイアウォールは、通例、ネットワークアクセスに対するファイアウォール機能を提供するデバイス、デバイスセット、または、デバイス上で実行されるソフトウェアである。例えば、ファイアウォールは、デバイス(例えば、コンピュータ、スマートフォン、または、その他のタイプのネットワーク通信可能なデバイス)のオペレーティングシステムに統合されうる。また、ファイアウォールは、コンピュータサーバ、ゲートウェイ、ネットワーク/ルーティングデバイス(例えば、ネットワークルータ)、または、データアプライアンス(例えば、セキュリティアプライアンスまたはその他のタイプの専用デバイス)など様々なタイプのデバイスまたはセキュリティデバイス上のソフトウェアアプリケーションに統合されうる、もしくは、かかるソフトウェアアプリケーションとして実行されうる。
ファイアウォールは、通例、1セットのルールに基づいてネットワーク伝送を拒否または許可する。これらのセットのルールは、しばしば、ポリシー(例えば、ネットワークポリシーまたはネットワークセキュリティポリシー)と呼ばれる。例えば、ファイアウォールは、望ましくない外部のトラフィックが保護されたデバイスに到達するのを防ぐために、1セットのルールまたはポリシーを適用することによってインバウンドトラフィックをフィルタリングできる。また、ファイアウォールは、1セットのルールまたはポリシーを適用することによってアウトバウンドトラフィックをフィルタリングできる(例えば、許可、ブロック、監視、通知、または、記録、および/または、その他の動作を、ファイアウォールルールまたはファイアウォールポリシー内に記述できる。ルールまたはポリシーは、本明細書に記載したような様々な規準に基づいてトリガされうる)。
セキュリティデバイス(例えば、セキュリティアプライアンス、セキュリティゲートウェイ、セキュリティサービス、および/または、その他のセキュリティデバイス)は、様々なセキュリティ機能(例えば、ファイアウォール、マルウェア対策、侵入防止/検出、および/または、その他のセキュリティ機能)、ネットワーク機能(例えば、ルーティング、クオリティオブサービス(QoS)、ネットワーク関連リソースの負荷バランシング、および/または、その他のネットワーク機能)、ならびに/、もしくは、その他の機能を備えうる。例えば、ルーティング機能は、送信元情報(例えば、IPアドレスおよびポート)、宛先情報(例えば、IPアドレスおよびポート)、ならびに、プロトコル情報に基づきうる。
基本的なパケットフィルタリング・ファイアウォールは、ネットワークを介して伝送された個々のパケットを調べることによってネットワーク通信トラフィックをフィルタリングする(例えば、ステートレスパケットフィルタリング・ファイアウォールであるパケットフィルタリング・ファイアウォールまたは第1世代のファイアウォール)。ステートレスパケットフィルタリング・ファイアウォールは、通例、個々のパケット自体を調べ、調べたパケットに基づいて(例えば、パケットの送信元および宛先アドレス情報、プロトコル情報、ならびに、ポート番号の組み合わせを用いて)ルールを適用する。
また、アプリケーション・ファイアウォールは、アプリケーションレイヤフィルタリングを実行できる(例えば、TCP/IPスタックのアプリケーションレベルで機能するアプリケーションレイヤフィルタリング・ファイアウォールまたは第2世代のファイアウォール)。アプリケーションレイヤフィルタリング・ファイアウォールまたはアプリケーション・ファイアウォールは、一般に、特定のアプリケーションおよびプロトコルを識別できる(例えば、ハイパーテキストトランスファープロトコル(HTTP)、ドメインネームシステム(DNS)要求、ファイルトランスファープロトコル(FTP)を用いたファイル転送、ならびに、様々なその他のタイプのアプリケーションおよびその他のプロトコル(Telnet、DHCP、TCP、UDP、および、TFTP(GSS)など))。例えば、アプリケーション・ファイアウォールは、標準ポートで通信を試みる無許可プロトコルをブロックできる(例えば、プロトコルに非標準ポートを用いて忍び込もうとする無許可/ポリシー外のプロトコルが、一般に、アプリケーション・ファイアウォールを用いて識別されうる)。
また、ステートフル・ファイアウォールは、各パケットがネットワーク伝送のパケットのフロー/パケットフローに関連する一連のパケットのコンテキスト内で検査されるステートフルベースのパケット検査を実行できる(例えば、ステートフル・ファイアウォールまたは第3世代のファイアウォール)。このファイアウォール技術は、一般に、ファイアウォールを通過するすべての接続の記録を維持するのでステートフルパケット検査と呼ばれており、パケットが新しい接続の開始であるのか、既存の接続の一部であるのか、または、無効なパケットであるのかを判定できる。例えば、接続の状態自体が、ポリシー内のルールをトリガする基準の1つでありうる。
先進ファイアウォールすなわち次世代ファイアウォールは、上述のように、ステートレスおよびステートフルパケットフィルタリングとアプリケーションレイヤフィルタリングとを実行できる。また、次世代ファイアウォールは、さらなるファイアウォール技術を実行できる。例えば、先進ファイアウォールまたは次世代ファイアウォールとも呼ばれる特定の新しいファイアウォールは、ユーザおよびコンテンツの識別もできる(例えば、次世代ファイアウォール)。特に、特定の次世代ファイアウォールは、これらのファイアウォールが数千のアプリケーションを自動的に識別できるアプリケーションのリストを拡張している。かかる次世代ファイアウォールの例は、Palo Alto Networks社から市販されている(例えば、Palo Alto Networks社のPAシリーズ・ファイアウォール)。例えば、Palo Alto Networks社の次世代ファイアウォールは、企業が、以下のような様々な識別技術を用いて、ポート、IPアドレス、および、パケットだけでなく、アプリケーション、ユーザ、および、コンテンツを識別して制御することを可能にする:正確なアプリケーション識別のためのAPP−ID、ユーザ識別(例えば、ユーザまたはユーザグループ)のためのユーザID、および、リアルタイムのコンテンツスキャニング(例えば、ウェブサーフィンの制御、ならびに、データおよびファイル転送の制限)のためのコンテンツID。これらの識別技術により、企業が、従来のポート遮断ファイアウォールによって提供される従来のアプローチに従う代わりに、ビジネス関連概念を用いたアプリケーション利用を確実に実現することが可能になる。また、例えば専用アプライアンスとして実装された次世代ファイアウォールのための専用ハードウェアは、一般に、汎用ハードウェアで実行されるソフトウェアよりもアプリケーション検査のパフォーマンスレベルが高い(例えば、ネットワークスループットを最大化しつつ待ち時間を最小化するためにシングルパスソフトウェアエンジンと緊密に統合された専用の機能特異的な処理を用いるPalo Alto Networks社のセキュリティアプライアンスなど)。
先進ファイアウォール技術を含むかかるファイアウォール技術を実装できるセキュリティデバイス(例えば、ファイアウォールアプライアンス)は、通例、従来のネットワークアーキテクチャに統合される。しかしながら、新しいネットワークアーキテクチャが、企業、キャリヤ、および、エンドユーザの変化する要件を満たすように進化している。例えば、かかる新しいネットワーキングアプローチは、ソフトウェア定義ネットワーキング(SDN)アーキテクチャを用いる。オープン・ネットワーキング・ファウンデーション(ONF)が、SDNアーキテクチャのための様々な規格を定義してきた。
具体的には、ソフトウェア定義ネットワーキング(SDN)は、ネットワーク制御が転送(例えば、パケット転送機能)から切り離されて直接的にプログラム可能になった新たなネットワークアーキテクチャである。SDNアーキテクチャでは、制御プレーンおよびデータプレーンが切り離され、ネットワークインテリジェンスおよび状態情報が論理的に集中化され、基盤となるネットワークインフラがアプリケーションから抽象化される。ONFは、OpenFlow(商標)プロトコルと呼ばれる新たな標準プロトコルを定義した。OpenFlowプロトコルは、一般に、(例えば、OpenFlowプロトコルをサポートする複数ベンダのネットワークデバイスにわたって)ネットワークデバイスの制御プレーンおよびデータプレーンの間の通信を構造化するために利用できる。
より具体的には、OpenFlowは、SDNアーキテクチャの制御レイヤおよび転送レイヤの間に定義された標準通信インターフェースである(例えば、OpenFlowスイッチ仕様が、http://www.openflow.org/で入手可能である)。いくつかの実施例において、OpenFlowは、物理的および仮想的(例えば、ハイパーバイザベース)の両方のネットワークデバイス(例えば、スイッチ、ルータ、および/または、その他のネットワークデバイス)の転送プレーンに対する直接アクセスおよび操作をサポートする。
それにより、SDNアーキテクチャは、企業およびキャリヤが、新たなレベルのプログラム可能性、自動化、および、ネットワーク制御を持つことを可能にする。したがって、SDNアーキテクチャは、変化するビジネスニーズに効率的かつ動的に適応できる高スケーラブルかつ柔軟なネットワークを促しうる。
しかしながら、新たな柔軟性およびプログラム可能性を実現するかかる新しいネットワークアーキテクチャは、かかるネットワーク(例えば、制御プレーンおよびデータプレーンを切り離すSDNネットワークおよび/またはその他のネットワークアーキテクチャ)のセキュリティを確保する新たなアプローチを必要とする。例えば、かかる動的ネットワークアーキテクチャの進化(例えば、企業内の異なるネットワークデバイスの間のフローをプログラム可能にする進化)は、各フローがセキュリティポリシーを強化するためのセキュリティデバイス(既存のインラインファイアウォールアプライアンスなど)を通過しなければならないことを保証しない。
そのため、ネットワークルーティングのための新たなパケット分類技術が必要である。したがって、ネットワークルーティングのためのパケット分類技術を開示する。例えば、SDNネットワーク(例えば、制御プレーンおよびデータプレーンを切り離すSDNネットワークおよび/またはその他のネットワークアーキテクチャ)のセキュリティ確保に適用できるネットワークルーティングのための様々なパケット分類技術が開示されている。
いくつかの実施形態において、ネットワークルーティングのためのパケット分類は、パケット転送を実行するネットワークデバイスから新しいフローに関連するパケットをセキュリティコントローラで受信し;フローを分類し;ポリシー(例えば、セキュリティポリシー)に基づいてフローに対する動作を決定することを含む。いくつかの実施形態において、ネットワークデバイスは、ソフトウェア定義ネットワーキング(SDN)ネットワークデバイス(例えば、OpenFlowプロトコルまたは別のプロトコルをサポートするパケット転送デバイス)である。
いくつかの実施形態において、ネットワークルーティングのためのパケット分類は、さらに、(例えば、APIメカニズムおよび/またはタグ付けメカニズムを用いて)フローに対する動作を実行するようネットワークデバイスに命令することを含む。動作の例は、以下の動作を含みうる:フローをドロップする;フローを無視する;および、フローを分流する(shunt)(例えば、さらなる解析および分類のためにセキュリティコントローラへパケットを送り続けるようセキュリティデバイスに命令する)。
例えば、SDNネットワーク(例えば、制御プレーンおよびデータプレーンを切り離すSDNネットワークおよび/またはその他のネットワークアーキテクチャ)は、エンドユーザによる様々なタイプの携帯デバイスの利用の増加(例えば、任意のデバイスから任意のデバイスへの任意の場所からの通信要件の増加)、様々なプライベートおよびパブリッククラウドサービスの利用の増加、および/または、(例えば、並列処理などの目的で、多くのサーバにわたる非常に多くのデータセットの移動をサポートするために)より広い帯域幅要件を必要とするビッグデータの発展から生じたものなど、様々な変化するネットワークパターンに用いられるより柔軟および動的なネットワークアーキテクチャを提供するために利用できる。これらの傾向も、かかるネットワークを配備する企業および/またはサービスプロバイダに対する重大なセキュリティの難題を生む。
したがって、かかるSDNネットワーク(制御プレーンおよびデータプレーンを切り離すSDNネットワークおよび/またはその他のネットワークアーキテクチャ)のセキュリティを確保すると共に、セキュリティを確保された効率的かつスケーラブルなネットワークソリューションを維持しつつ、このように増大するネットワークアーキテクチャの複雑さの中で一貫したセキュリティポリシーを維持する際に、セキュリティを容易にするために利用できるネットワークルーティングのための様々なパケット分類の技術が本明細書に記載されている。例えば、パケットがネットワーキングデバイスによって宛先へより効率的にダイレクトされることを可能にするパケット分類情報を提供しつつ、ネットワーキングデバイスに対する影響が最小限になるように、効率的にネットワークフローを分類するセキュリティコントローラ(例えば、分類デバイスまたは分類エンジン)を提供できる。
いくつかの実施形態において、ネットワークルーティングのためのパケット分類を提供する様々な技術は、各新しいフローの分類を提供するために、ネットワークデバイスが新しいフローを識別して、各新しいフローに関連するパケットを解析するセキュリティコントローラ(例えば、分類デバイスまたは分類エンジン)に識別した新しいフローを送信し、次いで、セキュリティコントローラが、分類および決定に基づいてネットワークデバイスに命令して、各新しいフローの処理時に動作(例えば、無視、ドロップ、さらなるセキュリティ解析/分類のための分流、および/または、その他の動作)を実行させるネットワークアーキテクチャに実装されうる。オープンフローを可能にするSDNアーキテクチャで生じる特定の問題は、かかるネットワークフローがどこでもスイッチングまたはルーティングされうる(例えば、所与のフローが典型的なネットワークワークアーキテクチャにインラインで配置されるセキュリティアプライアンス/ゲートウェイまたはその他のセキュリティデバイスを通過しなければならないという保証がない)ために、各新しいフローが(例えば、セキュリティポリシーの順守について)適切に検査されることを保証するためのメカニズムが必要になることである。かかるネットワーク環境におけるネットワークルーティングのためのパケット分類を提供する様々な技術について、以下で詳述する。
図1は、いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するためのネットワークアーキテクチャを示す機能図である。図に示すように、クライアントデバイスまたはサーバデバイス102は、SDNネットワークデバイス104(例えば、スイッチ、ルータ、および/または、別のタイプのネットワークデバイスなどのSDN準拠/対応のネットワークデバイスであり、物理ネットワークデバイスおよび/または仮想ネットワークデバイス(ハイパーバイザベースなど)でありうる)を介してクライアントデバイスまたはサーバデバイス108と通信する。また、図に示すように、SDNネットワークデバイス104と通信するセキュリティコントローラ106が提供されている。いくつかの実施形態において、セキュリティコントローラ106は、複数の異なるSDNネットワークデバイスと通信する。
特に、図1は、いくつかの実施形態に従って、SDNアーキテクチャの簡単な論理図を示す。例えば、セキュリティインテリジェンスが、ソフトウェアベースのSDNコントローラ(例えば、セキュリティコントローラ106)内に論理的に集中化されてよく、ネットワークのグローバルな視野を維持すると共に、セキュリティポリシーがSDNネットワーク全体に一貫して実装されることを保証できる。別の例として、複数の異なるSDNネットワークデバイスが、クライアントデバイスまたはサーバデバイス102とクライアントデバイスまたはサーバデバイス108との間でパケットを転送するために用いられてもよい。いくつかの実施形態において、セキュリティコントローラ106は、クラウドセキュリティサービスを用いて実装されており、様々な実施形態に関して本明細書に記載した様々な技術を用いて、パケットが(例えば、インターネットなどのパブリックネットワークで安全な通信を提供できる安全なプロトコル(OpenFlowプロトコルまたは別の安全なプロトコルなど)を用いて)(新しい)フローの分類のためにSDNネットワークデバイスから伝えられうる。
いくつかの実施形態において、セキュリティコントローラ106は、SDNアーキテクチャ内にSDNネットワークデバイス(例えば、SDNネットワークデバイス104)の副コントローラとして提供されており、主コントローラが、SDNネットワークデバイスのための主な論理制御を提供する(例えば、基本的な切り替えおよびルーティングの論理機能を提供する)ために設けられる。いくつかの実施例において、セキュリティコントローラ106は、SDNアーキテクチャ内にSDNネットワークデバイス(例えば、SDNネットワークデバイス104)の副コントローラとして提供されており、副コントローラは、主コントローラと統合されてよい、および/または、主コントローラのためのエンジンも実行するデバイス上に別個のエンジンとして実装されてよい(例えば、デバイスのプロセッサ上で実行されるソフトウェアに実装される、FPGAまたはその他のハードウェア実装などハードウェアに実装される、および/または、ソフトウェアおよびハードウェアの組み合わせを用いて実装される)。いくつかの実施例において、セキュリティコントローラ106は、SDNアーキテクチャ内にSDNネットワークデバイス(例えば、SDNネットワークデバイス104)の副コントローラとして提供されており、副コントローラは、副コントローラのためのエンジンを実行する第2のデバイス上に提供されてよく、第1のデバイスは、主コントローラのためのエンジンを実行する。いくつかの実施例において、副コントローラおよび/または主コントローラは、デバイス(例えば、アプライアンス、サーバ、および/または、その他のコンピュータデバイス)上で実行されるソフトウェアに実装、デバイスのハードウェアに実装、および/または、それらの組み合わせで実装されてよい。
いくつかの実施形態において、SDNネットワークデバイス104(スイッチまたはルータなど(例えば、L2ネットワークデバイス、L3ネットワークデバイス、または、L2/L3/L7デバイス))は、フローのパケットをセキュリティコントローラ106に渡す。いくつかの実施形態において、セキュリティコントローラ106は、様々なパケット分類技術(例えば、アプリケーション識別(APP−ID)、ユーザ識別(USER−ID)、ならびに/もしくは、その他のファイアウォールおよび/または先進ファイアウォールに関連する分類技術および本明細書に記載したようなステートベースのフロー分類技術)を実行できる。
いくつかの実施形態において、SDNネットワークデバイス104のネットワーキングデバイスは、様々な実施形態に関して本明細書で詳述するように、パケット内の分類を用いて、より効率的にパケットをダイレクトする(例えば、どのようにパケットをスイッチング/ルーティングするか、パケットをドロップするか否か、および/または、何らかの他の動作を実行する)。いくつかの実施形態において、セキュリティコントローラ106は、様々な実施形態に関して本明細書で詳述するように、SDNネットワークデバイス104にパケットを返す前に、(例えば、本明細書に記載したような、パケットをタグ付けするタグ付けメカニズムを用いて)、新しいフローのパケットを分類し、パケットを分類と関連付ける。いくつかの実施形態において、セキュリティコントローラ106は、様々な実施形態に関して本明細書で詳述するように、新しいフローのパケットを分類し、APIメカニズムを用いた分類に基づいて、フローを処理する方法についてSDNネットワークデバイス104に指示する。例えば、所与のフローのパケットを分類することがもはや必要ない(例えば、フローのさらなる分類が生じないかまたは生じる可能性が低い)と、分類デバイスが判定すれば、メッセージ(例えば、動作無視命令)がSDNネットワークデバイスに送信されて、特定のフローのパケットがもはや分類デバイスに送信される必要がないことを通知しうる。
いくつかの実施例において、SDNネットワークデバイスおよび主コントローラは、例えば、Arista Networks社、Cisco Systems社、および/または、その他の商業ネットワーキングベンダからの市販のソリューションによって提供されうる。いくつかの実施例において、SDNネットワークデバイスおよび主コントローラは、独占の仮想スイッチおよび/またはOpenvSwich(例えば、 http://openvswitch.orgで入手可能)によって提供されるようなオープンソースの仮想スイッチなど、仮想スイッチ(例えば、ソフトウェアベースのスイッチ)によって提供されうる。いくつかの実施例において、セキュリティコントローラ106は、様々な次世代ファイアウォール(NGFW)ソリューションを提供する商業セキュリティベンダ(Palo Alto Networks社など)によって提供される。例えば、Arista Networks社のSDNネットワークデバイスは、新しいフローを認識して、その新しいフローをPalo Alto Networks社のセキュリティコントローラ(例えば、フローを分類し、分類したフローに基づいてポリシーを適用して、セキュリティポリシーに基づいてかかるフローを扱う方法についてSDNネットワークに指示することができるセキュリティアプライアンスおよび/またはセキュリティエンジン)に送信する。特に、Palo Alto Networks社のセキュリティコントローラは、フローを分類し、分類したフローを処理する方法に関する決定を行うことができる(例えば、そのフローの残りについてすべてのパケットをドロップするために、5タプルに基づいたACLに基づくなどして、ドロップを行う;フローがさらに検査されるべきであるとポリシーが示唆する場合などに、分流を行い、その場合に、セキュリティコントローラは、そのフローについてトラフィックのすべてを監視するためにインラインに効果的に配置されうる;または、ポリシーがそのフローだけを放置する、すなわち、ドロップもさらなる検査も行わないと示唆する場合などに、無視する)。
例えば、NGFWソリューションが、セキュリティコントローラ106として提供されうる。SDNネットワークデバイス104は、検査のためにセキュリティコントローラ106(例えば、最初の分類のために各新しいフローの所定の最少数のパケットを検査するよう構成されうる)にすべての新しいフローを送信できる。一部の例において、NGFWソリューションは、SDNネットワークデバイス104上のハードウェアに実装されてよい。SDNネットワークデバイス104は、新しいフローを受信し、(例えば、セキュリティポリシーなどのポリシーに基づいた)分類および解析のためにセキュリティコントローラ106に所定の数のパケットを転送し、SDNネットワークデバイス104は、(例えば、オープンフローまたはAPIを介して)セキュリティコントローラからの応答を待つか、または、ハードウェア(例えば、ファストパス)にフローを導入することができる。評価が動作(例えば、ドロップ)と共にセキュリティコントローラから返されると、SDNネットワークデバイスは、適切なルール(例えば、アクセス制御リスト(ACL))を作成し、対応するトラフィックをドロップする。特に、セキュリティコントローラ106は、以下の動作についてフローを分類できる:ドロップ、分流、無視。前の2つの動作(すなわち、ドロップまたは分流)について、セキュリティコントローラ106は、例えば、OpenFlowまたは直接API通信を介して、SDNネットワークデバイス104に動作を実行するよう命令できる。分流の場合、そのフローからの全トラフィックが、検査継続のためにセキュリティコントローラ106にダイレクトされる(例えば、セキュリティコントローラは、分流されたフローのためにインラインに効果的に配置される)。無視は、特定のフローがSDNネットワークデバイス104の転送テーブルにすでに導入されているので、信号伝達を必要としない。
いくつかの実施形態において、セキュリティコントローラ106は、様々なレイヤ−2、レイヤ−3、および、アプリケーションIDエンジン、ユーザIDエンジンのようにより高いレイヤの分類エンジンなど、様々な分類機能を備える、および/または、例えば、コンピュータハードウェア、ソフトウェア、または、それらの様々な組み合わせを用いて実装できる様々なその他のファイヤーウォールベースの分類および先進ファイアウォール分類技術(本明細書に記載したものなど)を実行できる。
図2に関して以下で詳述するように、セキュリティコントローラによって実行される分類は、ネットワーキングデバイス内の別個のデバイスとして、仮想マシンとして、および/または、様々なその他の技術を用いて実装されうる。
図2は、いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するためのネットワークアーキテクチャを示す別の機能図である。図に示すように、クライアントデバイスまたはサーバデバイス202は、SDNネットワークデバイス204(例えば、スイッチ、ルータ、および/または、別のタイプのネットワークデバイスなどのSDN準拠/対応のネットワークデバイスであり、物理ネットワークデバイスおよび/または仮想ネットワークデバイス(ハイパーバイザベースなど)でありうる)を介してクライアントデバイスまたはサーバデバイス208と通信する。また、図に示すように、SDNネットワークデバイス204に統合されたセキュリティコントローラ206が提供されている。例えば、セキュリティコントローラ206は、SDNネットワークデバイス204上のハードウェアに実装されてよい。別の例として、セキュリティコントローラ206は、SDNネットワークデバイス204上のプロセッサ上で実行されるソフトウェアに実装されてもよい。いくつかの実施例において、セキュリティコントローラ206は、図に示すように、SDNネットワークデバイス204の制御レイヤに実装される。
ここで明らかになるように、別個のセキュリティコントローラデバイス、SDNネットワークデバイスに統合された部分として、ハードウェアとして、物理デバイス、仮想ネットワークデバイス(ハイパーバイザベースなど)上で実行されるソフトウェアベースソリューションとして、および/または、セキュリティクラウドサービスとして実装されたセキュリティコントローラデバイスとして実装できるセキュリティコントローラによって、本明細書に記載の機能の一部または全部が、支援されうる、もしくは、全体的または部分的に実施されうる。セキュリティクラウドサービスは、例えば、SDNネットワークデバイス上の処理を削減できる。別の例として、セキュリティポリシーの侵害および/または脆弱性の検出を、セキュリティクラウドサービスに報告できる。
図3は、いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するためのセキュリティコントローラを示す機能図である。図に示すように、SDNネットワークデバイス304(例えば、スイッチ、ルータ、および/または、別のタイプのネットワークデバイスなどのSDN準拠/対応のネットワークデバイスであり、物理ネットワークデバイスおよび/または仮想ネットワークデバイス(ハイパーバイザベースなど)でありうる)が、セキュリティコントローラ306と通信する。この実施形態において、セキュリティコントローラ306は、SDNネットワークデバイス304と統合されたものとして図示されている。例えば、セキュリティコントローラ306は、SDNネットワークデバイス304上のハードウェアに実装されてよい。別の例として、セキュリティコントローラ306は、SDNネットワークデバイス304上で実行されるソフトウェアに実装されてもよい(または、ハードウェアおよびソフトウェアの組み合わせを用いて実装されてもよい)。いくつかの実施例では、セキュリティコントローラ306が、デバイス内に実装され、別個の異なるデバイスが、主コントローラを実装する(例えば、主コントローラは、SDNネットワークデバイス304に伝えられうる基本的なスイッチングおよびルーティングの論理機能を提供するためなど、SDNネットワークデバイスに主な論理制御を提供するために設けられる)。
いくつかの実施形態では、OpenFlowプロトコルなどのプロトコルが、ネットワークインフラデバイス(例えば、SDNネットワークデバイス)とSDN制御ソフトウェア(例えば、セキュリティコントローラ)との間のインターフェースの両側に実装される。いくつかの実施形態において、OpenFlow技術を用いて識別されたフローは、ネットワークルーティングのためのパケット分類を提供するために、セキュリティコントローラ(例えば、セキュリティコントローラ306)によって利用されうる。例えば、OpenFlowは、SDN制御ソフトウェアによって静的または動的にプログラムできる事前定義された一致ルールに基づいて、フローの概念を用いてネットワークトラフィックを識別する。セキュリティポリシーなどのポリシーは、トラフィックが、パラメータ(アプリケーション、ユーザ、デバイス、クラウドリソース、マルウェア関連情報、送信元/宛先情報、デバイス情報、および/または、その他の情報など)に基づいてネットワークデバイスを通してどのように流れるべきかを決定するよう構成されうる。したがって、OpenFlowは、フローごとにネットワークをプログラムするために利用可能であり、アプリケーション、ユーザ、および、セッションレベルでリアルタイムの変化に対応するために、ネットワークでのきめ細かい制御を提供する。
例えば、セキュリティコントローラ(例えば、セキュリティコントローラ306)は、データプレーン(例えば、SDNネットワークデバイス304)から転送されたフローを解析し、ポリシー(例えば、セキュリティポリシー)に基づいてかかるフローを扱う方法を決定し、ネットワークデバイス(例えば、SDNネットワークデバイス304)の転送プレーンの操作のために(例えば、動作に基づいて)命令を提供できる。当業者にとって明らかなように、かかるOpenFlowベースのSDN技術は、既存のネットワーク(物理的および仮想的の両方)上に配備できる。また、明らかなように、かかるネットワークデバイスは、OpenFlowベースの転送も従来の転送もサポートでき、複数ベンダのネットワーク環境でも、企業およびキャリヤがOpenFlowベースのSDN技術を革新的に導入することを可能にする。
図3を参照すると、セキュリティコントローラ306は、フロー分類テーブル308を備える。SDNネットワークデバイス304は、新しいフローを識別し、新しいフローのパケットをセキュリティコントローラ306に転送するよう構成されうる(例えば、セキュリティコントローラ306は、フローを分類するのに十分な情報を取得するため、そして、セキュリティポリシーに基づいて分類されたフローに対する動作を決定するために、フローについて十分な数のパケットを受信する必要がありうる)。次いで、セキュリティコントローラ306は、各新しいフローの分類を実行するために、各新しいフローのパケットを解析する。フロー分類テーブル308は、解析される各フローの様々な情報、例えば、MAC送信元(MAC src)、MAC宛先(MAC dst)、IP送信元(IP src)、IP宛先(IP dst)、TCP宛先ポート(TCP dprt)、ユーザ(User ID)、アプリケーション(APP ID)、および、場合によりその他の情報を含む。各フローのこの情報と、ポリシー(例えば、セキュリティポリシー)とに基づいて、セキュリティコントローラ306は、SDNネットワークデバイス304に命令してフローに対して実行させる動作を決定できる。動作(Action)の例は、無視(Ignore)、分流(Shunt)、ドロップ(Drop)、および/または、様々なその他の動作を含みうる。例えば、既知の悪意あるトラフィックをドロップしたり、セキュリティポリシーに基づいて許可されないアプリケーション(例えば、音楽ストリーミング、ボイスオーバーIP、および/または、その他のアプリケーション)をドロップしたりできる。別の例として、特定のアプリケーショントラフィックが、ユーザ(例えば、ACME社の企業ネットワークで、AliceはFTPを利用することを許可されているが、BobはFTPを利用することが許可されていない場合がある)に基づいて許可されてよく、その場合、許可されれば、動作は無視することでありえる(例えば、SDNネットワークデバイスは、そのフローに関連するさらなるパケットをセキュリティコントローラ306に送信しないように命令されうる)が、許可されなければ、動作はドロップまたは分流することでありえる(例えば、SDNネットワークデバイスは、フローがドロップされるべきか無視されるべきかを決定するためのさらなる検査に向けて、そのフローに関連するさらなるパケットをセキュリティコントローラ306に送信するよう命令されうる)。さらに別の例として、特定のフローが、かかるフロー(HTTPトラフィックなど)を許可するかブロックするかに関する決定を行うためのさらなる検査を必要とする場合がある(例えば、セキュリティポリシー(進化するウェブセッション関連のフローのためのものなど)に基づいて、特定のHTTPトラフィックが許可され、他のHTTPトラフィックがブロックされる場合があり、このセキュリティポリシーも、フローに関連するユーザ情報および/またはその他の情報に依存してよく、例えば、ウェブブラウザが、標準的なウェブ検索を実行するために検索エンジンホームページを最初に訪問するが、次いで、許可されえないウェブベースのチャットサービスにユーザをナビゲートすることで、かかるフローのさらなる監視および検査が、そのフローのセキュリティポリシー順守を保証するために求められうる。)さらなる例として、長く続く高スループットのフロー(例えば、ストレージエリアネットワークトラフィックなどのためのエレファントフロー、および/または、その他の許容可能な大容量データフロー)について、セキュリティコントローラ306は、さらなるセキュリティ処理(例えば、セキュリティコントローラを用いた解析および分類)を迂回するために、かかるフローを無視するようSDNデバイス304に命令できる。
いくつかの実施形態において、セキュリティコントローラ306は、(例えば、企業向けにカスタマイズ/構成できるセキュリティポリシーなどのポリシーに基づいて)セキュリティサービスを含む様々なネットワークサービスを実施するために提供される。例えば、企業は、本明細書に記載の様々な技術を用いて企業ネットワークでの有線接続および無線接続の両方にわたって一貫したセキュリティポリシーを定義して施行できる。別の例として、企業は、本明細書に記載の様々な技術を用いて安全なクラウドサービスを実施できる。
いくつかの実施形態において、セキュリティコントローラ306とSDNネットワークデバイス304との間の通信を容易にして、セキュリティコントローラ306が、セキュリティコントローラ306を用いて実施されたパケット/フロー分類に基づいて様々なセキュリティ関連命令を通信することを可能にするために、セキュリティサービスのための1セットのAPI(例えば、APIメカニズム)が提供される。いくつかの実施例において、セキュリティサービスのための1セットのAPIは、異なるベンダにわたるサポートを促進しうるパブリックすなわちオープンAPIとして定義されてよく、ここで、異なるデバイス(例えば、SDNネットワークデバイス)が、セキュリティサービスのためのかかるパブリックなオープンAPIをサポートし、それらのAPIで相互運用されるよう構成されうる。いくつかの実施例において、セキュリティサービスのためのAPIは、様々な商業ベンダによって提供されたデバイスによる相互運用性およびサポートを容易にするように標準化されうる。
いくつかの実施形態では、API通信を用いてネットワークデバイス(例えば、SDNネットワークデバイス304)に命令するために、APIメカニズムが、セキュリティコントローラ(例えば、セキュリティコントローラ306)によって用いられる。例えば、セキュリティコントローラは、API通信を介して、分類決定または命令をネットワークデバイスに直接渡すことができる。通信の一例は、以下に示すように、ネットワークデバイスが例えばフローをドロップすべきであることを示すRESTベースのAPIへのHTTPSポストである:https://sdndevice/api/flowID=000000000854&flowACTION=drop&key=6TGM9bXcwM3JHUG。ここで、flowIDは、フローの一意識別子を表し、flowACTIONは、ドロップ/分流/無視など、分類に関連する動作を表す。
いくつかの実施形態ではて、プロトコル(例えば、OpenFlowプロトコルおよび/または別のプロトコル)を用いてネットワークデバイス(例えば、SDNネットワークデバイス304)に命令するために、タグ付けメカニズムが、セキュリティコントローラ(例えば、セキュリティコントローラ306)によって用いられる。いくつかの実施例において、パケットは、動作を通信するために、セキュリティコントローラを用いてマーク付けまたはタグ付けされうる(例えば、セキュリティコントローラ306は、タグ(標準化されたOpenFlowタグなど)を用いてSDNデバイスのためのパケットフローにメタデータを追加できる)。セキュリティコントローラは、OpenFlowのcontroller−to−switchメカニズムを用いてネットワーキングデバイスと分類情報を直接通信してもよいし、フローの分類に関するメタデータを埋め込むためまたはフローの転送に影響を与えるためにOpenFlowまたはその他のプロトコルを用いてパケットに直接マーク付けしてもよい。どのフローテーブルエントリとも一致しないパケットが到着した時、ネットワーキングデバイスは、分類のためにセキュリティコントローラにコピーを提供するかまたはパケットを転送することができ、分類が済むと、セキュリティコントローラは、そのパケットの新しいフローを定義し、フローテーブルに追加すべきエントリをネットワーキングデバイスに送信できる。メタデータと呼ばれる値をパケットに追加するための命令が、セキュリティコントローラによって追加されてもよく、その値は、フローテーブルエントリ内のメタデータ値とマッチングされる。動作および優先度が、パケットの転送、再分類、および/または、パケット情報(送信元または宛先インターネットプロトコルアドレスなど)の書き換えに影響を与えるために挿入されてもよい。例えば、メタデータが、ネットワークデバイスに命令を提供するために、ドロップ、分流、または、無視に設定されてもよいし、動作が、空の命令セットを用いてフローを単にドロップするように設定されるか、または、パケットがポート番号5を介して転送され、分類のためにセキュリティコントローラに出力される命令”output:5,security−controller”など、より複雑な命令セットに設定されてもよい。
例えば、本明細書に記載の様々な技術を用いて、情報技術(IT)管理者(例えば、ネットワーク管理者またはセキュリティ管理者)が、企業ネットワークのセキュリティのための高レベルの構成およびポリシーステートメントを定義することができ、次いで、これらは、(例えば、異なるベンダ由来のものなど、多くの異なるネットワークデバイスを含みうる)企業ネットワークにわたって一貫したセキュリティポリシーを維持するために、OpenFlowを用いてネットワークインフラに自動的に翻訳される。したがって、かかるOpenFlowベースのSDNアーキテクチャを実装することにより、IT管理者は、エンドポイント、サービス、または、アプリケーションを追加または移動されるたび、または、セキュリティポリシーが変わるたびに、ネットワークデバイスを個別に構成する必要はなく、そのことは、不適切なネットワークデバイス構成によるポリシーの不一致のリスクおよび/またはその他のセキュリティリスクを低減する。SDNネットワークアーキテクチャでかかるセキュリティコントローラを利用すると、支社、構内、および、データセンタなどの有線および無線ネットワークインフラにわたってセキュリティポリシーの一貫した施行も提供できる。
図4は、いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するためのセキュリティコントローラを示す別の機能図である。図に示すように、SDNネットワークデバイス400(例えば、スイッチ、ルータ、および/または、別のタイプのネットワークデバイスなどのSDN準拠/対応のネットワークデバイスであり、物理ネットワークデバイスおよび/または仮想ネットワークデバイス(ハイパーバイザベースなど)でありうる)が、セキュリティコントローラ406と通信する。この実施形態において、セキュリティコントローラ406は、SDNネットワークデバイス400と統合されたものとして図示されている。例えば、セキュリティコントローラ406は、SDNネットワークデバイス400上のハードウェアに実装されてよい。別の例として、セキュリティコントローラ406は、SDNネットワークデバイス400上で実行されるソフトウェアに実装されてもよい(または、ハードウェアおよびソフトウェアの組み合わせを用いて実装されてもよい)。いくつかの実施例において、セキュリティコントローラ406は、図に示すように、SDNネットワークデバイス400の制御レイヤ402に実装され、SDNデバイスロジックが、SDNネットワークデバイス400のデータレイヤ404に実装される。
図5は、いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するためのセキュリティコントローラ500の様々な構成要素を示すブロック図である。図の例は、セキュリティコントローラ(例えば、セキュリティコントローラ106またはセキュリティコントローラ206)に含まれうる物理的構成要素を表したものである。具体的には、セキュリティコントローラ500は、高性能マルチコアCPU502と、RAM504とを含む。セキュリティコントローラ500は、さらに、ストレージ510(例えば、1または複数のハードディスクまたはソリッドステートストレージユニット)を備えており、ストレージ510は、ポリシーと、その他の構成情報および署名とを格納するために用いられる。セキュリティコントローラ500は、さらに、1または複数の任意選択的なハードウェアアクセラレータを備えてもよい。例えば、セキュリティコントローラ500は、暗号化および複合動作を実行するよう構成された暗号エンジン506と、署名マッチングを実行する、ネットワークプロセッサとして動作する、および/または、その他のタスクを実行するよう構成された1または複数のFPGA508とを備えてよい。
図6は、いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するためのセキュリティコントローラ600の論理構成要素を示す機能図である。図の例は、セキュリティコントローラ600に含まれうる論理構成要素を表したものである。図に示すように、セキュリティコントローラ600は、管理プレーン602およびデータプレーン604を備える。いくつかの実施形態において、管理プレーンは、ポリシー(図のポリシー620など)を構成するためのユーザインターフェースを提供するなどしてユーザの相互作用を管理し、ログデータを閲覧することに関与する。データプレーンは、パケット処理およびセッションハンドリングを実行するなどして、データを管理することに関与する。
ネットワークプロセッサ606は、SDNネットワークデバイスから新しいフローのパケットを受信し、処理のためにデータプレーン604にパケットを提供するよう構成されている。フロー608は、それらのパケットを新しいセッションの一部として、新しいセッションフローを作成する。後続のパケットは、フロールックアップに基づいて、そのセッションに属するものとして識別される。該当する場合、SSL復号が、本明細書に記載の様々な技術を用いて、例えば、SSL復号エンジンを用いて適用される。ユーザIDモジュール610は、トラフィックフローに関連するユーザを識別するよう構成されている。アプリケーションIDモジュール612は、セッションが含むトラフィックのタイプ(HTTPトラフィック、HTTPSトラフィック、FTPトラフィック、SSLトラフィック、SSHトラフィック、DNS要求、未分類のアプリケーショントラフィック(例えば、未知のアプリケーショントラフィック)、および/または、その他のタイプのトラフィック(例えば、その他のタイプの既知または未知のプロトコルを用いたトラフィック)など)を決定するよう構成されている。例えば、アプリケーションIDモジュール612は、受信されたデータ内のGET要求を認識し、セッションがHTTPデコーダを必要とすると結論づけることができる。各タイプのプロトコルについて、対応するデコーダ614が存在する。アプリケーションIDモジュール612によってなされた決定に基づいて、各フローのパケットは、適切なデコーダ614に送信される。デコーダ614は、(例えば、ユーザ認証のために外部サイトに送信されるユーザ名/パスワード認証情報を識別するために)、(例えば、順序通りでなく受信されうる)パケットを正確な順序にし、トークン化を実行し、情報を抽出するよう構成されている。また、デコーダ614は、パケットに何がなされるべきかを決定するために、署名照合を実行する。いくつかの実施形態において、デコーディングは、さらに、本明細書に記載の様々な技術を用いて(例えば、SSL暗号化/復号エンジンを用いた)SSL暗号化を実行することを含む。フロー608、ユーザIDモジュール610、アプリケーションIDモジュール612、および、デコーダ614を用いてデータプレーンが処理した結果に基づいて、動作決定が、616に示すように実行される。動作決定(616)に基づいて、SDNネットワークデバイスは、618に示すように、動作の実行を命令される。また、図に示すように、署名622が受信され、管理プレーン602に格納される。いくつかの実施形態において、署名を用いたポリシー施行(例えば、ポリシー620は、ドメインおよび/またはホスト/サーバ名を用いて記述されうる1または複数のルールを含んでよく、ルールは、例えば、企業ネットワークにセキュリティポリシーを適用するなどのために、1または複数の署名もしくはその他の照合基準または経験則を適用できる)が、監視、復号、識別、および、デコードされたセッショントラフィックフローに基づいて、様々な実施形態に関して本明細書に記載するように適用される。
図7は、いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するために利用できるセキュリティコントローラのアーキテクチャを示す機能図である。図に示すように、ネットワークトラフィックが、セキュリティコントローラ700で監視される。いくつかの実施形態において、新しいトラフィックフローに関連するパケットが、セキュリティコントローラ700によって解析のためにSDNネットワークデバイスから受信され、次いで、セキュリティコントローラ700は、各新しいフローに関連するパケットのパケット分類と、様々な実施形態に関して本明細書に記載したようなポリシー(例えば、セキュリティポリシー)とに基づいて、動作を決定できる。
いくつかの実施形態において、トラフィックフローは、ステートベースのファイアウォールを用いて監視される。いくつかの実施形態において、ステートベースのファイアウォールは、APP−IDエンジン(例えば、App署名チェック/ユーザIDチェック708)を用いてトラフィックフローを監視できる。例えば、監視されたネットワークトラフィックは、HTTPトラフィック、HTTPSトラフィック、FTPトラフィック、SSLトラフィック、SSHトラフィック、DNS要求、未分類のアプリケーショントラフィック(例えば、未知のアプリケーショントラフィック)、および/または、その他のタイプのトラフィック(例えば、その他のタイプの既知または未知のプロトコルを用いたトラフィック)を含みうる。
図7に示すように、ネットワークトラフィック監視が、702で始まる。IPアドレス/ポートエンジン704が、パケット解析に基づいて、監視されたトラフィックフロー(例えば、セッション)のIPアドレスおよびポート番号を決定する。ポリシーチェックエンジン706が、IPアドレスおよびポート番号に基づいて、何らかのポリシーが適用されうるか否かを判定する。いくつかの実施例において、ユーザIDチェックエンジンおよびAPP−IDエンジンが、図に示したapp署名チェック/ユーザIDチェックエンジン708に実装されてもよいし、別個のエンジンまたはモジュールに実装されてもよい。例えば、ユーザIDが、例えば、ユーザIDチェックエンジン708を用いて、フローに対して決定されうる(例えば、ユーザIDは、送信元IPアドレスに基づいて推定されうる)。また、図7に示すように、アプリケーション署名チェックエンジン708は、アプリケーションを識別する(例えば、パケットフロー解析に基づいてアプリケーションを識別するために様々なアプリケーション署名を用いるAPP−IDエンジンを用いて)。例えば、APP−IDエンジン708は、HTTPトラフィック、HTTPSトラフィック、FTPトラフィック、SSLトラフィック、SSHトラフィック、DNS要求、未知のトラフィック、および、様々なその他のタイプのトラフィックなど、セッションが含むトラフィックのタイプを決定するよう構成されてよく、かかる分類されたトラフィックは、各監視されたセッションのトラフィックフローについて分類されたトラフィックをデコードするために、適切なデコーダ(デコーダ712、714、および、716など)にダイレクトされうる。監視されたトラフィックが暗号化された(例えば、HTTPS、SSL、SSL、または、別の周知の暗号化プロトコルを用いて暗号化された)場合、監視されたトラフィックは、復号エンジン710を用いて復号できる(例えば、自己署名証明書を用いる信頼された中間者技術を適用して)。既知プロトコルデコーダエンジン712が、既知のプロトコルを用いて(例えば、既知のプロトコルに対して様々な署名を適用して)、トラフィックフローをデコードおよび解析し、監視されたトラフィックの解析を報告/ポリシー施行エンジン720に報告する。識別済トラフィック(デコーディング不要)エンジン714が、識別されたトラフィックを報告/ポリシー施行エンジン720に報告する。未知プロトコルデコーダエンジン716が、(例えば、様々な経験則を適用して)トラフィックフローをデコードおよび解析し、監視されたトラフィックの解析を報告/ポリシー施行エンジン720に報告する。例えば、報告/ポリシー施行エンジン720は、動作命令(例えば、フローのドロップ、無視、または、分流)をSDNネットワークデバイスに通信できる。
いくつかの実施形態において、上述の既知プロトコルデコーダエンジン712、識別済トラフィックエンジン714、および、未知プロトコルデコーダエンジン716を用いた様々なトラフィック監視技術の結果が、報告/ポリシー施行エンジン720に提供される(例えば、ネットワーク/ルーティングポリシー、セキュリティポリシー、および/または、ファイアウォールポリシー)。例えば、ファイアウォールポリシーは、監視されたネットワークトラフィックに適用され、アプリケーションID、ユーザID、および/または、その他の情報を用いて署名(例えば、ファイルベース、プロトコルベース、および/または、マルウェアまたは疑わしい行動を検出するためのその他のタイプ/形態の署名)を照合する。
いくつかの実施形態において、セキュリティコントローラ700は、さらに、コンテンツIDエンジン(図示せず)を備えており、いくつかの実施形態において、コンテンツIDエンジンで識別されたコンテンツも、様々なセキュリティ/ファイアウォールポリシー/ルールを施行するために、場合によっては、他の情報(アプリケーション情報、ユーザ情報、および/または、その他の情報など)との様々な組み合わせで、報告/ポリシー施行エンジン720によって利用される。
いくつかの実施形態において、本明細書に記載したようにネットワークルーティングのためのパケット分類を提供するための技術を実施するために、様々な他の機能アーキテクチャおよびフローが提供される。例えば、これらの機能の一部は、汎用プロセッサ上で実行されるソフトウェアに実装されてよい、および/または、これらの機能の一部は、ネットワークトラフィックのより迅速なパケット処理のためにハードウェア加速技術を用いて実装されてよい。
図8は、いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するためのフローチャートである。工程802で、新しいフローに関連するパケットをネットワークデバイスからセキュリティコントローラで受信し、ここで、ネットワークデバイスは、パケット転送を実行する。工程804で、フローの分類を実行する。例えば、分類は、様々な実施形態に関して本明細書に記載したように、ポート、IPアドレス、アプリケーション、ユーザ、デバイス、および/または、様々なその他の側面に基づきうる。工程806で、ポリシー(例えば、セキュリティポリシー)に基づいて、フローに対する動作を決定する。いくつかの実施形態において、ネットワークデバイスは、ソフトウェア定義ネットワーキング(SDN)ネットワークデバイス(例えば、OpenFlowプロトコルまたは別のプロトコルをサポートするパケット転送デバイス)である。
図9は、いくつかの実施形態に従って、ネットワークルーティングのためのパケット分類を提供するための別のフローチャートである。工程902で、新しいフローに関連するパケットをネットワークデバイスからセキュリティコントローラで受信し、ここで、ネットワークデバイスは、パケット転送を実行する。工程904で、フローの分類を実行する。例えば、分類は、様々な実施形態に関して本明細書に記載したように、ポート、IPアドレス、アプリケーション、ユーザ、デバイス、および/または、様々なその他の側面に基づきうる。工程906で、ポリシー(例えば、セキュリティポリシー)に基づいて、フローに対する動作を決定する。いくつかの実施形態において、ネットワークデバイスは、ソフトウェア定義ネットワーキング(SDN)ネットワークデバイス(例えば、OpenFlowプロトコルまたは別のプロトコルをサポートするパケット転送デバイス)である。工程908で、フローに対する動作を実行するようネットワークデバイスに命令する(例えば、APIメカニズムまたはタグ付けメカニズムを用いて)。工程910で、分流されたフローに関連する新しいパケットをネットワークデバイスからセキュリティコントローラで受信する。工程912で、分流されたフローをさらに分類する。例えば、かかるさらなる分類およびセキュリティポリシーに基づいて、分流されたフローは、無視またはドロップできるフローであると決定されうる。その場合、決定に基づいた適切な動作が、セキュリティコントローラからネットワークデバイスに通信されうる。
上述の実施形態は、理解しやすいようにいくぶん詳しく説明されているが、本発明は、提供された詳細事項に限定されるものではない。本発明を実施する多くの代替方法が存在する。開示された実施形態は、例示であり、限定を意図するものではない。
[適用例1]
ネットワークルーティングのためのパケット分類を実行するセキュリティコントローラのためのシステムであって、
プロセッサであって、
パケット転送を実行するネットワークデバイスから新しいフローに関連するパケットを受信し、
前記フローを分類し、
ポリシーに基づいて、前記フローに対する動作を決定するよう構成された、プロセッサと、
前記プロセッサに接続され、前記プロセッサに命令を提供するよう構成されたメモリと、
を備える、システム。
[適用例2]
適用例1に記載のシステムであって、前記ネットワークデバイスは、ソフトウェア定義ネットワーキング(SDN)ネットワークデバイスである、システム。
[適用例3]
適用例1に記載のシステムであって、前記ポリシーは、セキュリティポリシーである、システム。
[適用例4]
適用例1に記載のシステムであって、前記プロセッサは、さらに、
前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令するよう構成されている、システム。
[適用例5]
適用例1に記載のシステムであって、前記プロセッサは、さらに、
APIメカニズムを用いて前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令するよう構成されている、システム。
[適用例6]
適用例1に記載のシステムであって、前記プロセッサは、さらに、
前記フローに関連するパケットにタグ付けすることによって前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令するよう構成されている、システム。
[適用例7]
適用例1に記載のシステムであって、前記プロセッサは、さらに、
前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令するよう構成されており、前記動作は、前記フローをドロップすることである、システム。
[適用例8]
適用例1に記載のシステムであって、前記プロセッサは、さらに、
前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令するよう構成されており、前記動作は、前記フローを無視することである、システム。
[適用例9]
適用例1に記載のシステムであって、前記プロセッサは、さらに、
前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令するよう構成されており、前記動作は、前記フローを分流することである、システム。
[適用例10]
適用例1に記載のシステムであって、前記プロセッサは、さらに、
前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令し、
前記フローに関連するさらなるパケットを前記ネットワークデバイスから受信するよう構成されており、
前記セキュリティコントローラは、前記フローのさらなる分類を実行する、システム。
[適用例11]
ネットワークルーティングのためのパケット分類を実行するセキュリティコントローラの方法であって、
パケット転送を実行するネットワークデバイスから新しいフローに関連するパケットを前記セキュリティコントローラで受信する工程と、
ネットワークルーティングのためのパケット分類を実行する前記セキュリティコントローラのプロセッサを用いて、前記フローを分類する工程と、
ポリシーに基づいて、前記フローに対する動作を決定する工程と、
を備える、方法。
[適用例12]
適用例11に記載の方法であって、前記ネットワークデバイスは、ソフトウェア定義ネットワーキング(SDN)ネットワークデバイスである、方法。
[適用例13]
適用例11に記載の方法であって、さらに、
前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令する工程を備える、方法。
[適用例14]
適用例11に記載の方法であって、さらに、
APIメカニズムを用いて前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令する工程を備える、方法。
[適用例15]
適用例11に記載の方法であって、さらに、
前記フローに関連するパケットにタグ付けすることによって前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令する工程を備える、方法。
[適用例16]
ネットワークルーティングのためのパケット分類を実行するセキュリティコントローラのためのコンピュータプログラム製品であって、有形で持続性のコンピュータ読み取り可能な記憶媒体内に具現化され、
パケット転送を実行するネットワークデバイスから新しいフローに関連するパケットを前記セキュリティコントローラで受信するためのコンピュータ命令と、
前記フローを分類するためのコンピュータ命令と、
ポリシーに基づいて、前記フローに対する動作を決定するためのコンピュータ命令と、
を備える、コンピュータプログラム製品。
[適用例17]
適用例16に記載のコンピュータプログラム製品であって、前記ネットワークデバイスは、ソフトウェア定義ネットワーキング(SDN)ネットワークデバイスである、コンピュータプログラム製品。
[適用例18]
適用例16に記載のコンピュータプログラム製品であって、さらに、
前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令するためのコンピュータ命令を備える、コンピュータプログラム製品。
[適用例19]
適用例16に記載のコンピュータプログラム製品であって、さらに、
APIメカニズムを用いて前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令するためのコンピュータ命令を備える、コンピュータプログラム製品。
[適用例20]
適用例16に記載のコンピュータプログラム製品であって、さらに、
前記フローに関連するパケットにタグ付けすることによって前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令するためのコンピュータ命令を備える、コンピュータプログラム製品。

Claims (13)

  1. ネットワークルーティングのためのパケット分類を実行するセキュリティコントローラのためのシステムであって、
    プロセッサであって、
    パケット転送を実行するネットワークデバイスから新しいフローに関連するパケットを受信し、
    前記フローを分類し、前記フローを分類することは、
    前記フローに関連するアプリケーションを決定することであって、
    前記フローに関するトラフィックのタイプを決定することと、
    前記アプリケーションを決定するために、前記トラフィックのタイプに基づいてアプリケーション署名マッチングを実行することと、を備えることと、
    前記フローに関連するユーザを決定することであって、
    前記ユーザを決定するために、前記受信されたパケットから外部サイトに送信されるユーザ名、パスワード、またはその組み合わせを抽出すること、を備えることと、
    を備え、
    ポリシーに基づいて、前記フローに対する動作を決定し、前記ポリシーに基づいて、前記フローに対する動作を決定することは、
    前記アプリケーションおよび前記ユーザに基づいて前記フローに対する前記動作を決定すること、を備え、
    前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令し、前記動作は、前記フローをドロップ、前記フローを無視、または前記フローを分流することであり、
    新しいフローに関連するさらなるパケットを前記ネットワークデバイスから受信し、前記セキュリティコントローラは、前記新しいフローのさらなる分類を実行する、
    よう構成された、プロセッサと、
    前記プロセッサに接続され、前記プロセッサに命令を提供するよう構成されたメモリと、
    を備える、システム。
  2. 請求項1に記載のシステムであって、前記ネットワークデバイスは、ソフトウェア定義ネットワーキング(SDN)ネットワークデバイスである、システム。
  3. 請求項1に記載のシステムであって、前記ポリシーは、セキュリティポリシーである、システム。
  4. 請求項1に記載のシステムであって、前記プロセッサは、さらに、
    アプリケーションプログラミングインターフェース(APIメカニズムを用いて前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令するよう構成されている、システム。
  5. 請求項1に記載のシステムであって、前記プロセッサは、さらに、
    前記フローに関連するパケットにタグ付けすることによって前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令するよう構成されている、システム。
  6. ネットワークルーティングのためのパケット分類を実行するセキュリティコントローラの方法であって、
    パケット転送を実行するネットワークデバイスから新しいフローに関連するパケットを前記セキュリティコントローラで受信する工程と、
    ネットワークルーティングのためのパケット分類を実行する前記セキュリティコントローラのプロセッサを用いて、前記フローを分類する工程であって、
    前記フローに関連するアプリケーションを決定する工程であって、
    前記フローに関するトラフィックのタイプを決定する工程と、
    前記アプリケーションを決定するために、前記トラフィックのタイプに基づいてアプリケーション署名マッチングを実行する工程と、を備える工程と、
    前記フローに関連するユーザを決定する工程であって、
    前記ユーザを決定するために、前記受信されたパケットから外部サイトに送信されるユーザ名、パスワード、またはその組み合わせを抽出する工程、を備える工程と、
    を備える工程と、
    ポリシーに基づいて、前記フローに対する動作を決定する工程であって、
    前記アプリケーションおよび前記ユーザに基づいて前記フローに対する前記動作を決定する工程を備える、工程と、
    前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令する工程であって、前記動作は、前記フローをドロップ、前記フローを無視、または前記フローを分流することである、工程と、
    新しいフローに関連するさらなるパケットを前記ネットワークデバイスから受信する工程であって、前記セキュリティコントローラは、前記新しいフローのさらなる分類を実行する、工程と、
    を備える、方法。
  7. 請求項に記載の方法であって、前記ネットワークデバイスは、ソフトウェア定義ネットワーキング(SDN)ネットワークデバイスである、方法。
  8. 請求項に記載の方法であって、さらに、
    APIメカニズムを用いて前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令する工程を備える、方法。
  9. 請求項に記載の方法であって、さらに、
    前記フローに関連するパケットにタグ付けすることによって前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令する工程を備える、方法。
  10. ネットワークルーティングのためのパケット分類を実行するためのコンピュータプログラムであって、
    パケット転送を実行するネットワークデバイスから新しいフローに関連するパケットを受信するための機能と、
    前記フローを分類するための機能であって、前記フローを分類することは、
    前記フローに関連するアプリケーションを決定することであって、
    前記フローに関するトラフィックのタイプを決定することと、
    前記アプリケーションを決定するために、前記トラフィックのタイプに基づいてアプリケーション署名マッチングを実行することと、を備えることと、
    前記フローに関連するユーザを決定することであって、
    前記ユーザを決定するために、前記受信されたパケットから外部サイトに送信されるユーザ名、パスワード、またはその組み合わせを抽出すること、を備えることと、
    を備える機能と、
    ポリシーに基づいて、前記フローに対する動作を決定するための機能であって、前記ポリシーに基づいて、前記フローに対する動作を決定することは、
    前記アプリケーションおよび前記ユーザに基づいて前記フローに対する前記動作を決定することを備える、機能と、
    前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令する機能であって、前記動作は、前記フローをドロップ、前記フローを無視、または前記フローを分流することである、機能と、
    新しいフローに関連するさらなるパケットを前記ネットワークデバイスから受信する機能であって、前記新しいフローのさらなる分類を実行する、機能と、
    をコンピュータに実現させるコンピュータプログラム。
  11. 請求項10に記載のコンピュータプログラムであって、前記ネットワークデバイスは、ソフトウェア定義ネットワーキング(SDN)ネットワークデバイスである、コンピュータプログラム。
  12. 請求項10に記載のコンピュータプログラムであって、さらに、
    APIメカニズムを用いて前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令するための機能をコンピュータに実現させる、コンピュータプログラム。
  13. 請求項10に記載のコンピュータプログラムであって、さらに、
    前記フローに関連するパケットにタグ付けすることによって前記フローに対する前記動作を実行するよう前記ネットワークデバイスに命令するための機能をコンピュータに実現させる、コンピュータプログラム。
JP2016528002A 2013-07-18 2014-06-20 ネットワークルーティングのためのパケット分類 Active JP6236528B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361847982P 2013-07-18 2013-07-18
US61/847,982 2013-07-18
US13/954,668 US9461967B2 (en) 2013-07-18 2013-07-30 Packet classification for network routing
US13/954,668 2013-07-30
PCT/US2014/043367 WO2015009404A1 (en) 2013-07-18 2014-06-20 Packet classification for network routing

Publications (2)

Publication Number Publication Date
JP2016528809A JP2016528809A (ja) 2016-09-15
JP6236528B2 true JP6236528B2 (ja) 2017-11-22

Family

ID=52344731

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016528002A Active JP6236528B2 (ja) 2013-07-18 2014-06-20 ネットワークルーティングのためのパケット分類

Country Status (5)

Country Link
US (5) US9461967B2 (ja)
EP (1) EP3022861B1 (ja)
JP (1) JP6236528B2 (ja)
IL (1) IL243552B (ja)
WO (1) WO2015009404A1 (ja)

Families Citing this family (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7675854B2 (en) 2006-02-21 2010-03-09 A10 Networks, Inc. System and method for an adaptive TCP SYN cookie with time validation
US9960967B2 (en) 2009-10-21 2018-05-01 A10 Networks, Inc. Determining an application delivery server based on geo-location information
US9094364B2 (en) 2011-12-23 2015-07-28 A10 Networks, Inc. Methods to manage services over a service gateway
US9531846B2 (en) * 2013-01-23 2016-12-27 A10 Networks, Inc. Reducing buffer usage for TCP proxy session based on delayed acknowledgement
US10027761B2 (en) 2013-05-03 2018-07-17 A10 Networks, Inc. Facilitating a secure 3 party network session by a network device
US9277014B2 (en) * 2013-06-19 2016-03-01 Alcatel Lucent Handling of auxiliary NAS
JP6221501B2 (ja) * 2013-08-19 2017-11-01 富士通株式会社 ネットワークシステム、その制御方法、ネットワーク制御装置及びその制御プログラム
WO2015041706A1 (en) * 2013-09-23 2015-03-26 Mcafee, Inc. Providing a fast path between two entities
US20150089053A1 (en) * 2013-09-25 2015-03-26 RIFT.io Inc. Dynamically scriptable ip traffic load balancing function
WO2015052866A1 (ja) * 2013-10-11 2015-04-16 日本電気株式会社 端末装置、端末装置制御方法および端末装置制御プログラム
US9847951B2 (en) * 2013-11-04 2017-12-19 Ciena Corporation Dynamic bandwidth allocation systems and methods using content identification in a software-defined networking controlled multi-layer network
US9967199B2 (en) * 2013-12-09 2018-05-08 Nicira, Inc. Inspecting operations of a machine to detect elephant flows
US20150172192A1 (en) * 2013-12-12 2015-06-18 International Business Machines Corporation Software-defined networking physical controller
US10735246B2 (en) * 2014-01-10 2020-08-04 Ent. Services Development Corporation Lp Monitoring an object to prevent an occurrence of an issue
EP3097669B1 (en) * 2014-01-20 2019-04-24 Telefonaktiebolaget LM Ericsson (publ) Method, nodes and computer program for enabling of data traffic separation
US20150312215A1 (en) * 2014-01-28 2015-10-29 Lov Kher Generating optimal pathways in software-defined networking (sdn)
US9680708B2 (en) 2014-03-14 2017-06-13 Veritas Technologies Method and apparatus for cloud resource delivery
US10020979B1 (en) 2014-03-25 2018-07-10 A10 Networks, Inc. Allocating resources in multi-core computing environments
US9806943B2 (en) 2014-04-24 2017-10-31 A10 Networks, Inc. Enabling planned upgrade/downgrade of network devices without impacting network sessions
CN105099942B (zh) * 2014-04-30 2019-05-03 华为技术有限公司 一种数据包处理方法及设备
US9992229B2 (en) 2014-06-03 2018-06-05 A10 Networks, Inc. Programming a data network device using user defined scripts with licenses
US9986061B2 (en) 2014-06-03 2018-05-29 A10 Networks, Inc. Programming a data network device using user defined scripts
US10129122B2 (en) * 2014-06-03 2018-11-13 A10 Networks, Inc. User defined objects for network devices
US10992524B2 (en) 2014-06-03 2021-04-27 A10 Networks, Inc. User defined objects for network devices
US9923832B2 (en) * 2014-07-21 2018-03-20 Cisco Technology, Inc. Lightweight flow reporting in constrained networks
TW201605198A (zh) 2014-07-31 2016-02-01 萬國商業機器公司 智慧網路管理裝置以及管理網路的方法
DE102015107073A1 (de) * 2014-09-08 2016-03-10 Rheinmetall Defence Electronics Gmbh Vorrichtung und Verfahren zur Steuerung eines Kommunikationsnetzwerks
US9722935B2 (en) * 2014-10-16 2017-08-01 Huawei Technologies Canada Co., Ltd. System and method for transmission management in software defined networks
US10425341B2 (en) 2015-01-23 2019-09-24 Ebay Inc. Processing high volume network data
CN113037823B (zh) 2015-01-23 2024-03-22 电子湾有限公司 消息传递系统和方法
US10142287B2 (en) * 2015-04-06 2018-11-27 Nicira, Inc. Distributed network security controller cluster for performing security operations
WO2016163927A1 (en) * 2015-04-10 2016-10-13 Telefonaktiebolaget Lm Ericsson (Publ) Methods and devices for access control of data flows in software defined networking system
CN104821923A (zh) * 2015-05-15 2015-08-05 杭州华三通信技术有限公司 Sdn网络中发送上送控制器协议报文的方法和装置
US10834054B2 (en) * 2015-05-27 2020-11-10 Ping Identity Corporation Systems and methods for API routing and security
US11259180B2 (en) * 2015-06-04 2022-02-22 Vm-Robot, Inc. Routing systems and methods
US10142353B2 (en) * 2015-06-05 2018-11-27 Cisco Technology, Inc. System for monitoring and managing datacenters
US10536357B2 (en) 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
US10581976B2 (en) 2015-08-12 2020-03-03 A10 Networks, Inc. Transmission control of protocol state exchange for dynamic stateful service insertion
US10243791B2 (en) 2015-08-13 2019-03-26 A10 Networks, Inc. Automated adjustment of subscriber policies
CN106470168B (zh) * 2015-08-22 2019-12-06 华为技术有限公司 一种数据传输方法、使用该方法的交换机以及网络控制系统
CN105162608A (zh) * 2015-10-13 2015-12-16 上海斐讯数据通信技术有限公司 基于软件定义网络的物理地址旁路认证方法及装置
EP3340532B1 (en) 2015-10-22 2020-09-16 Huawei Technologies Co., Ltd. Method, device and system for processing service
CN105516091B (zh) * 2015-11-27 2018-09-25 武汉邮电科学研究院 一种基于sdn控制器的安全流过滤器及过滤方法
US10318288B2 (en) 2016-01-13 2019-06-11 A10 Networks, Inc. System and method to process a chain of network applications
CN105681305B (zh) * 2016-01-15 2019-08-09 北京工业大学 一种sdn防火墙系统及实现方法
US10200396B2 (en) 2016-04-05 2019-02-05 Blackberry Limited Monitoring packet routes
US10530852B2 (en) * 2016-05-19 2020-01-07 Level 3 Communications, Llc Network mapping in content delivery network
US10637890B2 (en) 2016-06-09 2020-04-28 LGS Innovations LLC Methods and systems for establishment of VPN security policy by SDN application
US10305935B2 (en) 2016-06-09 2019-05-28 LGS Innovations LLC Methods and systems for enhancing cyber security in networks
US10560480B1 (en) * 2016-07-08 2020-02-11 Juniper Networks, Inc. Rule enforcement based on network address requests
US10469381B2 (en) * 2016-07-27 2019-11-05 Cisco Technology, Inc. Localization of group based policies in a demand based overlay network
EP3282665B1 (en) * 2016-08-10 2021-01-27 Nokia Solutions and Networks Oy Anomaly detection in software defined networking
CN106487788B (zh) * 2016-09-30 2019-10-29 中国联合网络通信集团有限公司 一种用户接入方法、sdn控制器、转发设备及用户接入系统
US10587580B2 (en) 2016-10-26 2020-03-10 Ping Identity Corporation Methods and systems for API deception environment and API traffic control and security
CN106657015B (zh) * 2016-11-23 2020-09-22 中国银联股份有限公司 基于sdn网络的数据传输方法
US10389835B2 (en) 2017-01-10 2019-08-20 A10 Networks, Inc. Application aware systems and methods to process user loadable network applications
US11012327B2 (en) * 2017-06-19 2021-05-18 Keysight Technologies Singapore (Sales) Pte. Ltd. Drop detection and protection for network packet monitoring in virtual processing environments
US10541909B2 (en) * 2017-06-23 2020-01-21 International Business Machines Corporation Distributed affinity tracking for network connections
CN107360161A (zh) * 2017-07-12 2017-11-17 济南浪潮高新科技投资发展有限公司 一种sdn流表下发系统及方法
EP3471007B1 (en) 2017-10-13 2022-02-23 Ping Identity Corporation Methods and apparatus for analyzing sequences of application programming interface traffic to identify potential malicious actions
EP3710929B1 (en) * 2017-11-17 2023-10-04 Telefonaktiebolaget LM Ericsson (Publ) Optimized reconciliation in a controller switch network
US11169845B2 (en) * 2017-12-21 2021-11-09 Ciena Corporation Flow and application based processor scheduling for network functions virtualization applications using flow identification based on logical calculations on frame based fields
US11888899B2 (en) * 2018-01-24 2024-01-30 Nicira, Inc. Flow-based forwarding element configuration
CN108337190B (zh) * 2018-01-31 2021-11-26 新华三技术有限公司 分流方法及装置
CN110391982B (zh) * 2018-04-20 2022-03-11 伊姆西Ip控股有限责任公司 传输数据的方法、设备和计算机程序产品
TWI668987B (zh) * 2018-04-26 2019-08-11 中華電信股份有限公司 基於目標式移動防護的主機防護系統及其方法
US10547554B2 (en) * 2018-05-16 2020-01-28 Avago Technologies International Sales Pte. Limited Policy based automatic flow collection discovery
US10673764B2 (en) 2018-05-22 2020-06-02 International Business Machines Corporation Distributed affinity tracking for network connections
US10892985B2 (en) * 2018-06-05 2021-01-12 Nec Corporation Method and system for performing state-aware software defined networking
CN108881295A (zh) * 2018-07-24 2018-11-23 瑞典爱立信有限公司 用于检测和解决异常路由的方法和网络设备
JP7063185B2 (ja) * 2018-08-15 2022-05-09 日本電信電話株式会社 通信システム及び通信方法
US10979542B2 (en) * 2018-08-28 2021-04-13 Vmware, Inc. Flow cache support for crypto operations and offload
TWI729320B (zh) * 2018-11-01 2021-06-01 財團法人資訊工業策進會 可疑封包偵測裝置及其可疑封包偵測方法
US11765174B2 (en) * 2018-12-07 2023-09-19 Vmware, Inc. Identity-based access control for cloud applications
US11496475B2 (en) 2019-01-04 2022-11-08 Ping Identity Corporation Methods and systems for data traffic based adaptive security
US11070575B2 (en) * 2019-03-06 2021-07-20 Cisco Technology, Inc. Verifying accuracy of ML pipelines using third party co-ordination
DE112019007406T5 (de) 2019-05-30 2022-03-17 Hewlett Packard Enterprise Development Lp Weiterleitung von nvsvse-overfabric-paketen
US11777804B2 (en) 2019-06-11 2023-10-03 Hewlett Packard Enterprise Development Lp Automatic system provisioning for NVME-over-fabric storage
US10911330B2 (en) * 2019-06-12 2021-02-02 Cisco Technology, Inc. Intent based application fabric
CN110933043B (zh) * 2019-11-07 2020-07-31 广州市品高软件股份有限公司 一种基于软件定义网络的虚拟防火墙优化方法及系统
US11743189B2 (en) * 2020-09-14 2023-08-29 Microsoft Technology Licensing, Llc Fault tolerance for SDN gateways using network switches
KR102439162B1 (ko) * 2020-11-11 2022-09-01 한국과학기술원 소프트웨어 정의 네트워크의 네트워크 정책 불일치 탐지 시스템 및 그 방법
KR20230169131A (ko) * 2021-04-09 2023-12-15 팔로 알토 네트웍스, 인크. 로컬 및 클라우드 분류 서비스를 통한 애플리케이션 기반 트래픽 분류의 범위 확대
US11616759B2 (en) * 2021-04-09 2023-03-28 Palo Alto Networks, Inc. Increased coverage of application-based traffic classification with local and cloud classification services
US20230198944A1 (en) * 2021-12-22 2023-06-22 Palo Alto Networks, Inc. Networking and security split architecture
CN114650141B (zh) * 2022-02-23 2024-01-30 桂林电子科技大学 一种基于fpga的sdn网络策略合法性的验证方法
CN116260844A (zh) * 2023-03-07 2023-06-13 中浙信科技咨询有限公司 基于物联模式的社区云边端架构体系

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070192863A1 (en) * 2005-07-01 2007-08-16 Harsh Kapoor Systems and methods for processing data flows
US7707305B2 (en) * 2000-10-17 2010-04-27 Cisco Technology, Inc. Methods and apparatus for protecting against overload conditions on nodes of a distributed network
US20030097557A1 (en) * 2001-10-31 2003-05-22 Tarquini Richard Paul Method, node and computer readable medium for performing multiple signature matching in an intrusion prevention system
US7734752B2 (en) * 2002-02-08 2010-06-08 Juniper Networks, Inc. Intelligent integrated network security device for high-availability applications
US7650634B2 (en) * 2002-02-08 2010-01-19 Juniper Networks, Inc. Intelligent integrated network security device
JP3794491B2 (ja) * 2002-08-20 2006-07-05 日本電気株式会社 攻撃防御システムおよび攻撃防御方法
US8146148B2 (en) 2003-11-19 2012-03-27 Cisco Technology, Inc. Tunneled security groups
US7626940B2 (en) * 2004-12-22 2009-12-01 Intruguard Devices, Inc. System and method for integrated header, state, rate and content anomaly prevention for domain name service
US7624436B2 (en) * 2005-06-30 2009-11-24 Intel Corporation Multi-pattern packet content inspection mechanisms employing tagged values
US7746862B1 (en) * 2005-08-02 2010-06-29 Juniper Networks, Inc. Packet processing in a multiple processor system
US7508764B2 (en) * 2005-09-12 2009-03-24 Zeugma Systems Inc. Packet flow bifurcation and analysis
US8009566B2 (en) * 2006-06-26 2011-08-30 Palo Alto Networks, Inc. Packet classification in a network security device
US8594085B2 (en) 2007-04-11 2013-11-26 Palo Alto Networks, Inc. L2/L3 multi-mode switch including policy processing
US8589541B2 (en) * 2009-01-28 2013-11-19 Headwater Partners I Llc Device-assisted services for protecting network capacity
US8856926B2 (en) * 2008-06-27 2014-10-07 Juniper Networks, Inc. Dynamic policy provisioning within network security devices
US9270559B2 (en) * 2009-01-28 2016-02-23 Headwater Partners I Llc Service policy implementation for an end-user device having a control application or a proxy agent for routing an application traffic flow
US8769664B1 (en) * 2009-01-30 2014-07-01 Palo Alto Networks, Inc. Security processing in active security devices
US8761174B2 (en) * 2009-03-11 2014-06-24 Sony Corporation Quality of service traffic recognition and packet classification home mesh network
US8780915B2 (en) 2009-06-26 2014-07-15 Telekom Malaysia Berhad Method and system for tagging packets routed to customer premises devices via clusters of dedicated customer interfaces
KR20110071774A (ko) * 2009-12-21 2011-06-29 한국전자통신연구원 스마트 경계 라우터 및 이를 이용한 플로우 정보 전송 방법
US10103939B2 (en) 2010-07-06 2018-10-16 Nicira, Inc. Network control apparatus and method for populating logical datapath sets
CN101977146B (zh) * 2010-10-25 2013-04-17 成都飞鱼星科技开发有限公司 一种网络流量智能控制器及其实现方法
JP5660202B2 (ja) 2011-04-15 2015-01-28 日本電気株式会社 コンピュータシステム、コントローラ、及びネットワークアクセスポリシ制御方法
US8873398B2 (en) * 2011-05-23 2014-10-28 Telefonaktiebolaget L M Ericsson (Publ) Implementing EPC in a cloud computer with openflow data plane
US9047441B2 (en) * 2011-05-24 2015-06-02 Palo Alto Networks, Inc. Malware analysis system
US8839404B2 (en) * 2011-05-26 2014-09-16 Blue Coat Systems, Inc. System and method for building intelligent and distributed L2-L7 unified threat management infrastructure for IPv4 and IPv6 environments
WO2012169164A1 (en) * 2011-06-06 2012-12-13 Nec Corporation Communication system, control device, and processing rule setting method and program
US8516241B2 (en) * 2011-07-12 2013-08-20 Cisco Technology, Inc. Zone-based firewall policy model for a virtualized data center
US9167501B2 (en) * 2011-08-29 2015-10-20 Telefonaktiebolaget L M Ericsson (Publ) Implementing a 3G packet core in a cloud computer with openflow data and control planes
US8762501B2 (en) * 2011-08-29 2014-06-24 Telefonaktiebolaget L M Ericsson (Publ) Implementing a 3G packet core in a cloud computer with openflow data and control planes
JP5794891B2 (ja) * 2011-10-28 2015-10-14 株式会社Kddi研究所 フロースイッチ装置を用いたシグナリングメッセージの経路制御方法及びネットワークシステム
CN102394885B (zh) * 2011-11-09 2015-07-15 中国人民解放军信息工程大学 基于数据流的信息分类防护自动化核查方法
US8832264B2 (en) * 2012-03-01 2014-09-09 Justin Pauley Network appliance for monitoring network requests for multimedia content
US10608899B2 (en) * 2013-03-14 2020-03-31 Cisco Technology, Inc. Service directory for quick and simplified application identification
US9729509B2 (en) * 2013-03-23 2017-08-08 Fortinet, Inc. System and method for integrated header, state, rate and content anomaly prevention for session initiation protocol
US9519563B2 (en) * 2013-05-09 2016-12-13 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for providing network applications monitoring

Also Published As

Publication number Publication date
EP3022861A4 (en) 2017-03-01
US20150026794A1 (en) 2015-01-22
US11811731B2 (en) 2023-11-07
US20170048197A1 (en) 2017-02-16
EP3022861B1 (en) 2019-09-18
US11394688B2 (en) 2022-07-19
US20210006539A1 (en) 2021-01-07
US10757074B2 (en) 2020-08-25
EP3022861A1 (en) 2016-05-25
US20240031332A1 (en) 2024-01-25
IL243552B (en) 2020-03-31
WO2015009404A1 (en) 2015-01-22
IL243552A0 (en) 2016-02-29
JP2016528809A (ja) 2016-09-15
US9461967B2 (en) 2016-10-04
US20220311742A1 (en) 2022-09-29

Similar Documents

Publication Publication Date Title
US11811731B2 (en) Packet classification for network routing
US11582192B2 (en) Multi-tenant cloud-based firewall systems and methods
US10003616B2 (en) Destination domain extraction for secure protocols
Schehlmann et al. Blessing or curse? Revisiting security aspects of Software-Defined Networking
US9843593B2 (en) Detecting encrypted tunneling traffic
US8060927B2 (en) Security state aware firewall
US8904514B2 (en) Implementing a host security service by delegating enforcement to a network device
US20220353240A1 (en) Distributed offload leveraging different offload devices
US20160088001A1 (en) Collaborative deep packet inspection systems and methods
JP2023098874A (ja) セキュリティサービスのためのネットワーク機能とセキュリティ機能との間のフローメタデータ交換
Tudosi et al. Secure network architecture based on distributed firewalls
Chowdhary et al. SUPC: SDN enabled universal policy checking in cloud network
Ge et al. Context-aware service chaining framework for over-the-top applications in 5G networks
Alshehhi Global DDoS Mitigation Using SDN Technology

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170328

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170627

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171003

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171030

R150 Certificate of patent or registration of utility model

Ref document number: 6236528

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250