JP2016100798A - ネットワーク制御システム - Google Patents

ネットワーク制御システム Download PDF

Info

Publication number
JP2016100798A
JP2016100798A JP2014237285A JP2014237285A JP2016100798A JP 2016100798 A JP2016100798 A JP 2016100798A JP 2014237285 A JP2014237285 A JP 2014237285A JP 2014237285 A JP2014237285 A JP 2014237285A JP 2016100798 A JP2016100798 A JP 2016100798A
Authority
JP
Japan
Prior art keywords
function
network
data processing
network function
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014237285A
Other languages
English (en)
Other versions
JP6510217B2 (ja
Inventor
仁史 藪崎
Hitoshi Yabusaki
仁史 藪崎
憲 阿久根
Ken Akune
憲 阿久根
順史 木下
Yorifumi Kinoshita
順史 木下
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2014237285A priority Critical patent/JP6510217B2/ja
Publication of JP2016100798A publication Critical patent/JP2016100798A/ja
Application granted granted Critical
Publication of JP6510217B2 publication Critical patent/JP6510217B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】データ処理機能の移動や複製時に通信性能が悪化する問題を回避し、通信リソースの過剰な消費を抑えることが可能なネットワークシステムを提供する。
【解決手段】サーバ540−6のVM(DB)とサーバ540−2のVM(App)が通信している状態で、コントローラがサーバ540−2のVM(App)のサーバ540−4への移動を検知すると、サーバ540−2が繋がるLAN1とサーバ540−4が繋がるLAN1との間をトンネルによって接続し、LAN2の間もトンネルによって接続する。サーバ540−6とサーバ540−5に配備されたVM(DB)が機能的に等価であることをコントローラが把握して、サーバ540−4のVM(App)からサーバ540−6のVM(DB)へのトラフィックの宛先が540−5に配備されたVM(DB)に変更される。さらに経由するFWをFW550−1からFW550−2に変更する。
【選択図】図11(C)

Description

本明細書で開示される主題は、ネットワークの構成変更のためのネットワーク制御技術に関する。
近年、クラウドの普及やサーバ仮想化の進展に伴い、データセンタ内やデータセンタ間におけるネットワークの構成変更がより頻繁に行われるようになっている。その際、通信性能(通信遅延や通信帯域)の維持を考慮しつつ、ネットワーク構成を変更すると、変更に掛かる作業工数が大きくなる。その為、ネットワークの構成変更の作業省力化が課題になっている。ネットワーク構成変更の一例として、通信経路を切り替える、または、データ処理機能間やデータ処理機能と端末間の通信経路にネットワークファンクションを追加する等がある。
通信経路を切り替える関連技術として、C/U分離して集中制御型のアーキテクチャを採用するSDN(Software Defined Networking)があり、ネットワークファンクションの追加を可能にする関連技術として、ハードウェアからネットワークファンクションを切り離してソフトウェアとしてネットワークファンクションを提供するNFV(Network Functions Virtualization)がある。しかし、集中制御型のアーキテクチャやハードウェアからネットワークファンクションを切り離す技術のみでは、通信性能を維持する為のネットワーク設計が必要であり、ネットワークの構成変更作業は省力化されない。
以下に上記問題に関係する従来技術を説明する。
特許文献1においては、分散仮想スイッチが、仮想機械及び物理機械が同一の物理ホスト上及び/あるいは同一のサブネット又はVLANに配備されない場合でも、互いにより簡単に、安全に且つ効率的に通信することを可能にする。
特許文献2においては、仮想ネットワーク(Vネット)と、Vネットのメンバ間の保護かつ分離された相互接続を可能にする仮想マシン(VM)スイッチとを確立かつ管理するための、コンピュータ化された方法、システムおよびコンピュータが提供される。
米国特許出願公開第2010/0257263号明細書 米国特許出願公開第2011/0283017号明細書
以下に、従来技術の課題を説明する。
特許文献1の技術は、それを、物理的に分散する複数拠点で構成される分散環境に適用すると、ルーティングされる箇所や、ロードバランサやファイアフォール、DPI、IPSなどの箇所を変更できない為、仮想機械が遠隔の拠点に移動した場合に遠隔のルーティング箇所を経由することになり、通信遅延が大きくなる問題や通信帯域を消費する問題が生じる。
また、宛先の仮想機械が遠隔の拠点に存在する場合に、宛先の仮想機械と同じデータ処理を行える仮想機械が送信元の仮想機械の最寄りに存在する場合においても遠隔に送信されてしまい、通信遅延が大きくなる問題や通信帯域を消費する問題が生じる。
特許文献2においても特許文献1と同様の問題を抱える。
従って、ネットワーク構成変更時の通信性能の維持と構成変更時の作業の省力化とを両立する技術が望まれている。
開示されるのは、ネットワーク構成を変更しても通信性能を維持するネットワークの構成を計算することによってネットワーク構成変更における作業を省力化する技術である。
開示されるのは、データ処理機能が移動しても、通信帯域や通信遅延などの通信性能と消費する計算機資源のいずれか一方または両方を劣化させないネットワーク制御システムである。
具体的に開示されるのは、データ処理機能の移動を検知して、データ処理機能が属する仮想ネットワーク構成を変更するネットワーク制御システムである。
より具体的には、データ処理機能が移動して経由していたネットワークファンクションが遠隔になった場合など、適切な位置のネットワークファンクションにおいて処理されるように、仮想ネットワーク構成を変更するネットワーク制御システム(NCS:Network Control System)である。
開示される上記ネットワーク制御システムの一つの特徴は、
コントローラと、
第一のサーバ上のデータ処理機能と、その近傍にある第一のミドルボックス機能と、を備え、
当該ネットワーク制御システムに接続した端末が、第一のミドルボックス機能を経由して、上記データ処理機能と通信している場合に、上記データ処理機能が、上記第一のサーバ上から、第二のサーバ上へ移動したことを、上記データ処理機能が通信する内容に基づき、検知する検知機能と
上記端末と上記移動したデータ処理機能との通信を、上記第二のサーバと上記第一のミドルボックス機能とのネットワーク観点の距離より近傍にあり、上記第一のミドルボックス機能と等価な機能を備える第二のミドルボックス機能を経由させる経路制御機能と、を備える点である。
また、上記データ処理機能が送信する通信パケットのヘッダに基づき、上記通信パケットの送信元である上記データ処理機能の移動を検知するように、上記検知機能を構成しても良い。
また、上記第二のサーバと上記第一のミドルボックス機能のネットワーク観点の距離より近傍には、上記第二のミドルボックス機能が存在しないが、上記第二のミドルボックス機能を配備可能なネットワークファンクションが上記近傍にある場合は、当該ネットワークファンクションに上記第二のミドルボックス機能を配備するように、上記コントローラを構成しても良い。
また、上記第二のサーバと上記第一のミドルボックス機能のネットワーク観点の距離より近傍には、上記第二のミドルボックス機能および上記ネットワークファンクションが存在しないが、新たに、ネットワークファンクションを配備可能なリソースプールが上記近傍にある場合は、当該リソースプールに、上記第二のミドルボックス機能を有する上記ネットワークファンクションを配備するように、上記コントローラを構成しても良い。
また、当該ネットワーク制御システムがロードバランサを備え、
上記コントローラが、
上記ロードバランサから、負荷分散情報を取得し、
上記データ処理機能または上記ミドルボックス機能または上記ネットワークファンクションのうち、同じバーチャルサーバに対応するプールメンバのIPアドレスを備えるものを、等価な機能を備える、データ処理機能またはミドルボックス機能またはネットワークファンクション、と見做し、
上記ロードバランサが属する仮想ネットワーク識別子と対応付けて管理するように、上記ネットワーク制御システムを構成しても良い。
また、当該ネットワーク制御システムがDNSを備え、
上記コントローラが、
上記DNSから、URIとIPアドレスの対応付けを含む名前解決情報を取得し、
上記データ処理機能または上記ミドルボックス機能または上記ネットワークファンクションのうち、同一のURIに対して複数のIPアドレスの応答により処理を振分けられている上記IPアドレスを備えるものを、等価な機能を備える、データ処理機能またはミドルボックス機能またはネットワークファンクション、と見做し、
上記DNSが属する仮想ネットワーク識別子と対応付けて管理するように、上記ネットワーク制御システムを構成しても良い。
また、上記ネットワーク観点の距離の遠近を、上記データ処理機能と上記ネットワークファンクションとの、IPレイヤ(Layer3)におけるパケット応答時間、または、アプリケーションレイヤにおける通信処理が行われる時間の長さで判断するように、上記コントローラを構成しても良い。
また、上記ミドルボックス機能または上記ネットワークファンクションの属性として、
RSFG(リスクシェアードファンクショングループ)の識別情報と、
ディカプセル化の要否を示す情報と、
耐バースト性情報の有無を示す情報と、
冗長化構成の有無を示す情報と、
のいずれか一つ以上を含むように、上記ミドルボックス機能と上記ネットワークファンクションのいずれか一方または両方を構成しても良い。
開示によれば、通信性能を維持しながらのネットワーク構成の変更を、少ない工数で可能にする技術を提供できる。
実施形態が適用されるネットワーク制御システムの物理構成例を示す図である。 実施形態が適用されるネットワーク制御システムの論理構成例を示す図である。 実施形態が適用されるコントローラの構成例を示すブロック図である。 実施形態が適用されるネットワークファンクションの構成例を示すブロック図である。 コントローラが保持するロールグループ情報の構成を例示する図である。 コントローラが保持するトラフィック情報を例示する図である。 コントローラが保持するロールグループ間経由ネットワークファンクション情報の構成を例示する図である。 コントローラが保持するネットワークファンクション情報の構成を例示する図である。 コントローラが保持する配備されるネットワークファンクション情報の構成を例示する図である。 コントローラが保持するネットワークファンクションの転送ルール情報の構成を例示する図である。 データ処理機能の配備構成変更時の動作概要を例示する概略図である。 データ処理機能の配備構成変更時の動作概要を例示する概略図である。 データ処理機能の配備構成変更時の動作概要を例示する概略図である。 ネットワーク制御システムのネットワーク構成最適化時における動作概要を例示するシーケンス図である。 コントローラが通信経路、データ処理機能の位置情報を生成する際の動作概要を例示するチャート図である。 コントローラが通信経路の制御情報を変更する際の動作概要を例示するチャート図である。
以下、図面を参照して実施の形態を詳細に説明する。
本明細書における装置の位置関係(ネットワークの観点での距離)は、応答時間で定義される。即ち、二つの装置が近接、近傍、または、ネットワークの観点から近いとは、応答時間が小さいことを意味する。
なお、応答時間は、以下の2種類である。一つは、IPレイヤ(Layer3)において単一のパケットが送受信される時間(パケット応答時間)、即ち、通信遅延である。通信遅延は、例えば、RTT(Round Trip Time)等で表現される。
もう一つは、アプリケーションレイヤにおける一連の通信処理が行われる時間(あるデータ処理に関連する複数の通信パケットが送受信される時間)である。一連の通信処理が行われる時間とは、例えば、ユーザが画面の更新ボタンや実行ボタンを押してから、更新画面や実行結果が表示されるまでの時間である。アプリケーションレイヤにおける一連の通信処理が行われる時間は、データ転送時間と、サーバやユーザ端末におけるデータ処理時間と、で構成される。
本実施例のシステムではTCP通信を例に説明するが、このような場合、データ転送時間は、TCPスループットに反比例する。すなわち、ネットワーク観点の距離が遠い、とは、スループットが小さい、として表現可能である。
図1は、本実施形態におけるネットワーク(NW)システムの物理構成を示すブロック図である。
第1の実施形態のネットワーク制御システムは、コントローラ(Controller)100、ネットワーク管理装置(Manager)200、ネットワークファンクション(NW function)400、DNS(Domain Name System)510、ルータ(Router)520、ロードバランサ(LB: Load Balancer)530、サーバ(Server)540、FW(Firewall)550、ネットワークスイッチ(SW)560、リソースプール(Resource pool)570、上記ネットワークファンクションやサーバを格納する拠点(Site)700、データセンタ間を接続するネットワーク(Network (NW))600、及び、端末(terminal)620を備える。
また、本実施形態のネットワーク制御システムは、仮想的に実装されてもよい。また、コントローラ100とネットワーク管理装置200は拠点700の外に配備されているが、いずれかの拠点700内に配備されていてもよい。
コントローラ100は主にネットワークファンクション400を制御するための装置である。
ネットワーク管理装置200は、コントローラ100、ネットワークファンクション、DNS510、ルータ520、ロードバランサ530、サーバ540、FW550、ネットワークスイッチ560の状態を監視し、これらに設定された制御情報などを管理する。ネットワーク管理装置200には、画面表示及びシステム操作のインタフェースを、管理者等に提供する管理端末が接続可能である。
ネットワーク管理装置200は、プロセッサ、通信装置(NIC:Network Interface Card等)、揮発性の記憶装置(DRAMなど)、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)、及び、管理モニタ等を備える計算機を用いて実現可能である。
ネットワークファンクション400は主にパケットの転送に係る様々な処理を行う装置である。本実施例において、ネットワークファンクション400はパケットの転送処理に加え、負荷分散処理、ファイアフォール、IPSやルーティング、キャッシング、アクセラレーション等の機能(ミドルボックス機能、または、ミドルボックスという)を必要に応じて選択可能に備える。
ネットワークファンクション400の上記の各機能は、汎用のサーバにおいて上記の機能をもつソフトウェアを実行することによって実現される。このような技術は上述のNFVなどとして知られる既存技術によって実現される為、詳細は割愛する。
また、ネットワークファンクション400は、最初に配備されるときに全てのミドルボックス機能を必ずしも備えるわけではない為、リソースプール480を備える。
パケットの転送処理以外の機能は、ネットワークファンクション400に備えられるのではなく、ネットワークファンクション400の外部に配備されてもよい。その場合は、ネットワークファンクション400が、外部の必要な機能を経由するようにパケットの転送を制御する。
ネットワークファンクション400は、プロセッサ、通信装置、揮発性の記憶装置(DRAMなど)、及び、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)等を備える計算機を用いて実現可能である。
DNS(Domain Name Server)510は、名前解決を行う。すなわち、URLを受信してURLに対応するIPアドレスを返す装置である。
DNS510は、プロセッサ、通信装置、揮発性の記憶装置(DRAMなど)、及び、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)等を備える計算機を用いて実現可能である。
ルータ520は、ネットワーク600と拠点700間を繋ぐゲートウェイ装置である。ルータ520はルーティングの他に、プロトコル変換やNAT、ファイアフォール等の機能を備えてもよい。
ルータ520は、プロセッサ、通信装置、揮発性の記憶装置(DRAMなど)、及び、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)等を備える計算機を用いて実現可能である。
サーバ540はデータ処理機能等を動作させる為の計算資源であり、そのためのCPUやメモリ、ストレージを備える。なお、データ処理機能とは、データ処理を行うプログラムがあり、例えば、ウェブサーバやアプリケーションサーバ、DB(Data Base)サーバ等のプログラムが挙げられる。データ処理機能はVM(Virtual Machine)として実現されてもよい。
サーバ540は、プロセッサ、通信装置、揮発性の記憶装置(DRAMなど)、及び、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)等を備える計算機を用いて実現可能である。
FW550は、レイヤ2やレイヤ3、レイヤ4等のヘッダを参照してアクセス拒否または許可を行うファイアフォールの機能を備える装置である。FW550は、プロセッサ、通信装置、揮発性の記憶装置(DRAMなど)、及び、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)等を備える計算機を用いる専用の装置として、あるいは、汎用のサーバ上に実現可能である。
スイッチ560はレイヤ2でスイッチングを行うレイヤ3スイッチである。
リソースプール570はネットワークファンクション、あるいは、ネットワークファンクションが備える機能の一部(ロードバランサ530やFW550等のミドルボックス機能)をネットワークファンクション400の外側に機能単体として配備するため、あるいは、サーバ540を配備する為の余剰の計算資源である。
計算資源とは、演算処理(CPU)やメモリ、ストレージを備えるサーバであり、余剰の計算資源とは、演算処理能力とメモリとストレージが利用されていない、または、他のデータ処理のために確保されていないサーバである。
なお、リソースプール570をネットワークファンクション400に割り当てる場合には、リソースプール480の分も含めて計算資源を割り当てる。
拠点700は、上記機器を収納する施設である。拠点700の例として、データセンタ、企業のオフィス、店舗等が挙げられる。なお、本実施例では、上記のような拠点700間の通信を例に記載するが、拠点間ではなく、ラック間の通信であっても、データセンタを複数に分けた管理エリアであってもよい。すなわち、拠点700は、ラック、管理エリアとみなしてもよい。
ネットワーク600は、拠点700間やコントローラ100、ネットワーク管理装置200を繋ぐネットワークである。ネットワーク600は広域網、またはLAN(Local Area Network)である。広域網の例として、ISP網(Internet Service Provider網)、専用線、広域イーサ等が挙げられる。
端末620はサーバに配備されたデータ処理機能にデータ処理を要求するエンドユーザが使用する装置であり、例えば、パーソナルコンピュータやタブレットなどが挙げられる。
端末620はプロセッサ、通信装置、揮発性の記憶装置(DRAMなど)、及び、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)等を備える計算機を用いて実現可能である。
図2は、本実施形態におけるネットワーク制御システムの論理構成を示すブロック図である。LAN610は、ロードバランサやFW等のネットワークファンクションやサーバ等を接続するネットワークである。なお、LAN610−1、610−3、610−5はネットワークファンクション400−1に繋がるが、LAN610−1、610−3、610−5はネットワークファンクション400−1を介して相互に通信接続されない。LAN610−2、610−4、610−6においても同様である。
なお、図1に記載したネットワークスイッチ560は、レイヤ3における論理ネットワークでは構成要素とならないので省略した。例えば、LAN610−1は図1のロードバランサ503とサーバ540−1、サーバ540−2と、ネットワークファンクション400−1とがSW560−1と繋がるリンクに該当する。なお、図1のこれらのリンクは、図2の複数のLANに該当する(即ち、LANは仮想的なLAN(例えば、VLAN:Virtual Local Area Network)である)。
図3は、本実施形態におけるネットワーク制御装置(コントローラ)の構成例を示すブロック図である。
コントローラ100は、通信IF235、サービス受付部240、データ記憶部270、及び、制御処理部210を備える。
コントローラ100は、プロセッサ、通信装置、揮発性の記憶装置(DRAMなど)、及び、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)等を備える計算機を用いて実現可能である。
通信IF235は、直接あるいはEMS(Element Management System)を介して、ネットワークファンクション400に、一連の複数のパケットで構成されるトラフィックを設定、削除、又は変更する。また、通信IF235は、ネットワークファンクション400が保持する情報を送信する指示を含むメッセージを、ネットワークファンクション400に送信する。そして、情報を含むメッセージをネットワークファンクション400から受信する。
データ記憶部270は、制御処理部210によって管理され、値を参照されたり、値を更新されたりする。データ記憶部270は、コントローラ100に備わる不揮発性の記憶装置等に構築される。データ記憶部270は、構成情報記憶部275、トラフィック情報記憶部280、ネットワークファンクション情報記憶部290、ロールグループ情報記憶部295を備える。
以下にデータ記憶部270が保持する情報を示す。
構成情報記憶部275は、データ処理機能の位置情報やネットワークトポロジ情報等を保持する記憶部である。トラフィック情報記憶部280は、トラフィックの情報、及び、ネットワークファンクションの制御情報を保持する記憶部である。ネットワークファンクション情報記憶部290はネットワークファンクションの情報、及び、新規に配備するネットワークファンクションの情報を保持する記憶部である。ロールグループ情報記憶部295はロールグループに関する情報、及び、ロールグループ間の通信パケットが経由するネットワークファンクションに関する情報を保持する記憶部である。
ロールグループとは、機能的に等価、すなわち同等の入力(パケットのレイヤ4より下位レイヤのヘッダを除くと値が同じであるパケット)に対して同等の出力(パケットのレイヤ4より下位レイヤのヘッダを除くと値が同じであるパケット)を返すデータ処理機能の集合を表す。
サービス受付部240は、コントローラ100に接続される管理端末の操作画面等を介して、トラフィックの通信経路やロールグループ間の通信経路が経由するネットワークファンクションを表示する為や、更に上位のコントローラから制御する為のノースバンドインタフェースである。
制御処理部210は、データ記憶部270に保持される値を参照し、各トラフィックの宛先と経路を計算し、計算された各トラフィックの経路制御をネットワークファンクション400に指示する。制御処理部210は、トラフィック制御機能215、ネットワークファンクション管理220、ロールグループ管理225、及び、ネットワーク構成管理230等の機能を含む。
トラフィック制御機能215は、ネットワークファンクション400におけるパケット転送先やパケットヘッダの書き換えなどの経路制御を行い、及び、その他のネットワークファンクションにおけるパケット処理方法を計算する。ネットワークファンクション管理220はネットワークファンクション400の状態を管理する。ロールグループ管理225は機能的に等価なデータ処理機能を管理する。ネットワーク構成管理230は物理的なネットワーク構成や論理的なネットワーク構成を管理する。
すなわち、制御処理部210に含まれる機能は、コントローラ100に備わる不揮発性の記憶装置に保持されたプログラムが、プロセッサによって揮発性の記憶装置において実行されることによって、実現される。またこれらのプログラムは、あらかじめ不揮発性記憶装置に格納されていてもよいし、ネットワークを介してまたは可搬型記憶媒体を介して外部装置から導入されても良い。
図4については、後述する。
図5は、ロールグループ情報テーブル3000を示す説明図である。
ロールグループ情報テーブル3000は、ロールグループ情報記憶部295によって管理され、図12のシーケンス2150、及び、シーケンス2200においてDNSやロードバランサに設定された情報と物理ネットワーク構成情報に基づいて生成される。
ロールグループ情報テーブル3000は、仮想ネットワーク識別子、ロールグループ識別子、データ処理機能の位置、仮想化プロトコル、仮想化識別子、データ処理機能アドレスなどの属性のいずれか一つ以上を含む。
仮想ネットワーク識別子は、仮想ネットワークの識別子を示す。仮想ネットワークとは、物理的なネットワークにオーバーレイされた仮想的なネットワークであり、サーバ間やデータセンタ間を繋ぐ物理的なネットワーク構成に影響されない構成をとることができる。仮想ネットワークの実現方法として、VxLANやMPLS−TP、NvGREなどのプロトコルがある。
仮想ネットワークは、異なるプロトコルで実現される複数のドメイン(例えば、MPLS−TPのネットワークやVxLANのネットワーク、VLANのネットワークなど)に跨って構成されてもよい。即ち、データ処理機能が、VxLANとVLANといった複数ドメインに跨って分散配置されており、これらのデータ処理機能が互いに通信可能でなければならないものである場合(例えば、同じアプリケーションシステムのウェブサーバやDBサーバである場合)、VxLANのある仮想化識別子(VNI)で仮想化されるネットワークとVLANのある仮想化識別子(VLANタグ)で仮想化されるネットワークに対して一つの仮想ネットワーク識別子が割り当てられる。
データ処理機能識別子とは、データ処理機能の識別子である。機能的に等価なデータ処理が複数存在する場合、それぞれ異なる識別子が割り当てられる。
ロールグループ識別子とは、ロールグループの識別子である。ロールグループとは、上述の通り、機能的に等価、すなわち同等の入力に対して同等の出力を返すデータ処理機能の集合を表す。例えば、同一アプリケーションにおいて負荷分散を目的に複数のWebフロントエンド(Webサーバ等)や複数のバックエンド(DBサーバ等)が存在する場合、これらのWebフロントエンド、バックエンドにはそれぞれ一意のロールグループ識別子が割り当てられる。
データ処理機能の位置とは、当該の行のデータ処理機能識別子のネットワークの観点における位置を表す。本実施例においては、データ処理機能の位置を近接するネットワークファンクションの識別子で表す。データ処理機能の位置はネットワークファンクションの代わりに、スイッチやルータ等で表されてもよい。
仮想化プロトコルは仮想ネットワークを実現するプロトコルである。例えば、VxLAN、MPLS−TP、PBB−TE、NvGREなどが挙げられる。
仮想化識別子は仮想化プロトコルにおいて用いられるタグやラベル名を示す。
データ処理機能アドレスは、データ処理機能のIPアドレスを示す。
ロールグループ情報テーブル3000を管理することによって、同等の処理を行うことが可能なデータ処理機能のうち、近傍のデータ処理機能にパケットを転送する為の仮想化プロトコルやそのタグやラベル名、宛先IPアドレスを把握し、当該データ処理機能にパケットを転送することが可能になる。これによって、近傍のデータ処理機能にパケットを転送して処理することができ、通信遅延が削減され、また遠隔のデータ処理機能とを繋ぐ広域網等のネットワークの通信帯域の消費量を削減することが可能になる。
図6は、トラフィック情報テーブル3100を示す説明図である。
トラフィック情報テーブル3100は、データ処理機能、または、端末620に送受信されるトラフィックの情報であり、トラフィックの制御状態や経路を変更するトラフィックを把握する為に用いる。トラフィック情報記憶部280によって管理され、図12のシーケンス2250などにおいて生成される。
トラフィック情報テーブル3100は、トラフィック識別子、送信元アドレス、送信先アドレス、経由ネットワークファンクション識別子、経由ノード識別子、変更後送信元アドレス、変更後送信先アドレス、経路変更ネットワークファンクション識別子、変更後経由ネットワークファンクション、及び、変更後経由ノード識別子などの属性のいずれか一つ以上を含む。
トラフィック識別子とはトラフィックの識別子である。
送信元アドレスとはトラフィックの送信元であるデータ処理機能や端末620のIPアドレスやMACアドレスである。
送信先アドレスとはトラフィックの送信先であるデータ処理機能や端末620のIPアドレスやMACアドレスである。
経由ネットワークファンクション識別子とはトラフィックが経由するネットワークファンクション400の識別子である。
経由ノード種別とは、経由するネットワークファンクション400以外のネットワークファンクションの種類である。
経由ノード識別子とは、経由するネットワークファンクション400以外のルータ520、DNS510、スイッチ560、FW550、ロードバランサ530などの識別子である。
変更後送信元アドレスとは、ネットワークファンクション400において経路を変更された場合の変更後のトラフィックの送信元のデータ処理機能や端末620のIPアドレスやMACアドレスである。
変更後送信先アドレスとはネットワークファンクション400において経路を変更された場合の変更後のトラフィックの送信先のデータ処理機能や端末620のIPアドレスやMACアドレスである。
経路変更後ネットワークファンクション識別子とはトラフィックの経路を変更しているネットワークファンクション400の識別子である。
経路変更後ノード識別子とはトラフィックの経路を変更しているノードの識別子である。
図7はロールグループ間経由ネットワークファンクション情報テーブル3200を示す説明図である。ロールグループ間経由ネットワークファンクション情報テーブル3200は、ロールグループ情報記憶部295によって管理され、ネットワーク管理装置200を介して管理者によって生成される。
ロールグループ間経由ネットワークファンクション情報テーブル3200は、送信元ロールグループ識別子、送信先ロールグループ識別子、経由ネットワークファンクショングループ、及び、経由ネットワークファンクション識別子などの属性のいずれか一つ以上を含む。送信元ロールグループ識別子と送信先ロールグループ識別子は、それぞれトラフィックの送信元と送信先のロールグループの識別子を示す。
経由ネットワークファンクショングループとは、上記トラフィックが経由する、機能的に等価なネットワークファンクションのグループである。経由ネットワークファンクショングループは、例えば、ネットワークファンクションの種類である。ネットワークファンクションの種類には、ファイアフォールファンクション、IPSファンクション、ルーティングファンクション、ロードバランシングファンクション、DPIファンクション、キャッシングファンクション、アクセラレーティングファンクションなどである。図4の説明においてこれらのファンクションを説明する。
経由ネットワークファンクションにはゼロ個以上のネットワークファンクションが含まれる。経由ネットワークファンクション識別子とは、上記トラフィックが経由するネットワークファンクションの識別子を示す。経由ネットワークファンクション識別子は、同一の経由ネットワークファンクショングループのネットワークファンクションが複数存在する場合に、どのネットワークファンクションを経由するかを一意に表す。
ロールグループ間経由ネットワークファンクション情報3200を管理することによって、トラフィックの経路を局所化するように経路変更する際に、経由すべきネットワークファンクションの種類を把握することができる。
図8はネットワークファンクション情報テーブル3300を示す説明図である。
ネットワークファンクション情報テーブル3300は、ネットワークファンクション情報記憶部290によって管理され、ネットワーク管理装置200を介して管理者によって生成され、図12のシーケンス2290において更新される。
ネットワークファンクション情報テーブル3300はネットワークファンクション識別子、ネットワークファンクショングループ、ネットワークファンクションの位置、ネットワークファンクションの状態、ネットワークファンクションのアドレス、冗長化構成、耐バースト性、ディカプセル化、RSFG(Risk Shared Function Group)などの属性のいずれか一つ以上を含む。
なお、ネットワークファンクション情報テーブル3300のNWファンクション識別子には、装置であるミドルボックス(ロードバランサ530、ルータ520、DNS510、ファイアフォール550)の識別子が含まれてもよい。
本テーブルの用途の一つは、あるネットワークファンクション400を経由するトラフィックを、ネットワークの観点で近傍であり、かつ機能的に等価な、他のネットワークファンクション400を経由する通信経路に切り替える際に、どのネットワークファンクション400が機能的に等価であるかを判断することにある。ミドルボックスの識別子が本テーブルのNWファンクション識別子に含まれることによって、上記と同様に、あるミドルボックスを経由するトラフィックを、ネットワークの観点で近傍であり、かつ機能的に等価なミドルボックス、または、ネットワークの観点で近傍であり、かつ機能的に等価なネットワークファンクション400を経由する通信経路に切り替える際に、どのネットワークファンクション400が機能的に等価であるかを判断することが可能になる。
ネットワークファンクション識別子は、ネットワークファンクションの識別子を示す。ネットワークファンクショングループは、機能的に等価なネットワークファンクションのグループである。ネットワークファンクショングループは例えば、ネットワークファンクションの種類とその設定情報が同じであるグループを表す。図中においては、見易さを目的にネットワークファンクションの種類のみを記載しているが、実際には、同じようにパケットを処理するために、ネットワークファンクションの設定情報も同一であるものが同じグループとして管理される。例えば、FW(ファイアフォール)に関しては、設定情報に応じて、FW1、FW2などのように管理される。ネットワークファンクション、及び、ネットワークファンクションの種類に関しては図7において説明したとおりである。
ネットワークファンクションの位置とは、当該の行のネットワークファンクション識別子のネットワークの観点における位置を表す。本実施例においては、ネットワークファンクションの位置を近接するネットワークファンクションの識別子で表す。ネットワークファンクションの位置はネットワークファンクションの代わりに、スイッチやルータ等で表されてもよい。ネットワークファンクションの状態とはネットワークファンクションの稼動状態や負荷状態の観点から、利用可能か否かをあらわす状態情報である。ネットワークファンクションのアドレスはネットワークファンクションのIPアドレスを表す。
冗長化構成はネットワークファンクションが冗長化構成になっているか否かを示し、即ち、信頼性の高さを示す。ネットワークファンクション毎に冗長化構成情報を持つことによって、同一のネットワークファンクショングループに属するネットワークファンクションが複数存在する場合に、高い信頼性を要求するネットワーク構成最適化要求、または新規の通信経路設定を受けた際に、高信頼なネットワークファンクションを選択することができる。
耐バースト性はネットワークファンクションに流れるトラフィックが急激に増加した際にスケールアップすることによって、その通信量増加に対応可能か否かを示す。ネットワークファンクション毎に冗長化構成情報を持つことによって、同一のネットワークファンクショングループに属するネットワークファンクションが複数存在する場合に、耐バースト性を要求するネットワーク構成最適化要求、または新規の通信経路設定 を受けた際に、スケールアップ可能なネットワークファンクションを選択することができる。これによって、バースト的にトラフィック量が増加した際に他のトラフィックの性能劣化を防ぐことが可能になる。
ディカプセル化はネットワークファンクションを経由する際にパケットヘッダのカプセル化部分を除く、即ち、ディカプセル化する必要があるか、否かを示す。パケットヘッダのカプセル化部分とは、トンネリングプロトコルであるVxLANヘッダやMPLS(Multi Protocol Label Switching)のヘッダ、または、L2(Layer2)オーバーL3(Layer3)のヘッダなどである。これは、ディカプセル化の要否はカプセル化した状態で、ネットワークファンクションがパケットを処理可能か否かを判断できるようにするためである。ディカプセル化の情報を備えることによって、カプセル化のみによって通信経路を変更して経路変更する方法とパケットの送信先アドレスや送信元アドレスなどを変更して通信経路を変更する方法のどちらができよう可能かを判断することができる。
RSFGとは、物理障害や性能障害が発生した際に同様の影響を受けるもの集合を示す。これは例えば、同じサーバ上に仮想アプライアンスとして構築された複数のネットワークファンクションが存在する場合に、当該サーバの障害が発生した際にこれらのネットワークファンクションが障害状態になることを示す。RSFGを保持することによって、現用系と予備系のネットワークファンクションを異なるRSFGに属するものを選択することによって現用毛と予備系の両方が同時に障害断になるリスクを抑えることができる。
なお、本実施例においては冗長化構成、耐バースト性、ディカプセル化、RSFGは管理者によって入力されているものとするが、これらの値はサーバ管理やミドルボックス(ネットワークファンクション)の管理装置から受け取ってもよい。
ネットワークファンクション情報3300を管理することによって、利用可能な最寄りのネットワークファンクションを把握することが可能になる。これによって、遠隔のネットワークファンクションを経由している場合に最寄りのネットワークファンクションを経由する判断を行うことが可能になる。
図9は配備するネットワークファンクション情報テーブル3400を示す説明図である。配備するネットワークファンクション情報テーブル3400は、ネットワークファンクション情報記憶部290によって管理され、図12のシーケンス2250において生成される。
配備するネットワークファンクション情報テーブル3400は配備するネットワークファンクション識別子、配備するネットワークファンクショングループ、設定を複製するネットワークファンクション識別子、配備先のリソースプール、配備するネットワークファンクションのアドレスなどの属性のいずれか一つ以上を含む。
配備するネットワークファンクション識別子は、新たに配備するネットワークファンクションの識別子を示す。配備するネットワークファンクショングループは配備するネットワークファンクションの機能的に等価なグループであり、例えば、ネットワークファンクションの機能の種類を示す。設定を複製するネットワークファンクション識別子は新しく配備するネットワークファンクションに設定する内容を配備済みのネットワークファンクションの設定情報から生成する場合に、設定情報の複製元となるネットワークファンクションの識別子を示す。配備するネットワークファンクションのアドレスはネットワークファンクションのIPアドレスを示す。
図10はネットワークファンクションの転送ルール情報テーブル3500を示す説明図である。ネットワークファンクションの転送ルール情報テーブル3500は、トラフィック情報記憶部280によって管理され、図12のシーケンス2250において生成される。
ネットワークファンクションの転送ルール情報テーブル3500は制御対象トラフィック情報(ルール)と制御内容情報(アクション)を含む。
制御対象トラフィック情報には、ネットワークファンクション識別子、入力元IF、送信元仮想化識別子、送信元アドレス、送信先アドレスなどの属性のいずれか一つ以上が含まれる。制御対象トラフィック情報は、制御対象とするトラフィックの条件が含まれる。この条件に合致するトラフィックに対して制御内容情報に記載される転送処理を行う。
ネットワークファンクション識別子はネットワークファンクションの識別子である。入力元IFとはネットワークファンクションがトラフィック(パケット)を受信するインタフェースの識別子である。送信元仮想化識別子とはネットワークファンクションが受信するトラフィックのヘッダに記載される仮想化の識別子であり、例えば、VxLANのタグ(VNI)やMPLSラベルなどである。送信元アドレスとはネットワークファンクションが受信するトラフィックのヘッダに記載される送信元のIPアドレスである。
制御内容情報には、送信先仮想化識別子、出力送信元アドレス、出力送信先アドレスなどの属性のいずれか一つ以上が含まれる。
送信先仮想化識別子とはネットワークファンクションが送信するトラフィックのヘッダに記載する仮想化の識別子である。出力送信元アドレスは、ネットワークファンクションが送信するトラフィックのヘッダに記載する送信元のIPアドレスである。出力送信先アドレスは、ネットワークファンクションが送信するトラフィックのヘッダに記載する送信先のIPアドレスである。出力IFはネットワークファンクションがトラフィックを送信するインタフェースである。なお、送信元アドレス、送信先アドレス、出力送信元アドレス、出力送信先アドレスはIPアドレスの他にMACアドレス、L4ポート番号を含んでもよい。
図3の説明に戻る。
図4は、本実施形態におけるネットワークファンクションの構成例を示すブロック図である。
ネットワークファンクション400は、必要に応じて配備される以下の機能を含んで構成される。
すなわち、ファイアフォールファンクション410、IPSファンクション420、ルーティングファンクション430、ロードバランシングファンクション440、DPIファンクション450、キャッシングファンクション460、及び、アクセラレーティングファンクション470を含んで構成される。
ネットワークファンクション400は、そのほか、スイッチングファンクション490と、上記ファンクションを配備する為のリソースプール480を含む。
スイッチングファンクション490とは、2種類の役割を担う。一つはネットワークファンクション400と外部のサーバやルータ等との間で転送処理を行う一般的なネットワークスイッチとしての役割である。もう一つは、ネットワークファンクション400内の各ファンクション間において転送処理を行う内部スイッチとしての役割である。なお、スイッチングファンクション490は、転送処理に加え、優先制御や帯域制御、廃棄制御等の一般的なネットワークスイッチが担う機能を備えてもよい。
ファイアフォールファンクション410は、一般的なファイアフォールの機能を備える。IPSファンクション420は、侵入を検出したうえで、その攻撃を防御する、一般的なIPS(Intrusion Prevention System)の機能を備える。
ルーティングファンクション430は一般的なルーティングの機能を備える。ロードバランシングファンクション440はレイヤ2負荷分散機能、レイヤ3負荷分散機能、及び、レイヤ7負荷分散機能を備える。DPIファンクション450はパケットのヘッダやペイロードを分析するDPI(Deep Packet Inspection)の機能を備える。キャッシングファンクション460はパケットをキャッシュする機能を備える。アクセラレーティングファンクション470はTCP通信の輻輳制御を改善するWAN(Wide Area Network)アクレラレータの機能を備える。また、リソースプール480は上記ファンクションを配備する為の計算資源である。
図11は本実施形態においてデータ処理機能の配備構成変更時の動作概要を例示する概略図である。本概略図においては、ネットワークファンクション400の転送処理以外の機能(FW550)はネットワークファンクション400の外部に含まれる構成を示すが、内部に含まれてもよい。また、本事例においてはFWを追加する事例であるが、WANアクセラレータやファイアフォール等の他の機能の場合においても同様である。
図11においては、データ処理機能であるVM(App)が移動し、また、データ処理機能であるVM(DB)が複製された場合にトラフィックの経路やネットワークファンクションの配備箇所がどのように変更されるかを例示する。図11は説明の便宜上、擬似的な論理構成を示しているが、これは図2と同様である。なお、トラフィックは端末から送信されてVM(App)に到達するトラフィック、及び、VM(App)から送信されてVM(DB)に到達するトラフィックであり、それぞれ矢印で示す。
なお、本概略図においては、見易さ向上の目的で、ネットワークファンクション400−1と400−2間のトンネルを直線的に記載したが、上記トンネルは実際にはルータ520−1、ネットワーク600、ルータ520−2を経由する。
図11(A)に示す状態1は、データ処理機能VM(App)とVM(DB)が移動や複製される前の状態を表す。端末620がVM(App)を利用する際の通信はネットワーク600を経由してルータ520−1を経由し、ロードバランサ530ロードバランサ530−1を経由してVM(App)に到達する。VM(App)からVM(DB)への通信はFW550−1を経由してVM(DB)へ到達する。
図11(B)に示す状態2は、VM(App)がサーバ540−1、540−2からサーバ540−3、540−4に移動し、また、VM(DB)がサーバ540−6からサーバ540−5に複製された後の状態を示す。なお、VM(DB)は図1の拠点700−aにおいて使用されない場合、複製ではなく移動されてもよい(すなわち、サーバ540−6にあるVM(DB)は複製後に削除、または、停止されてもよい。また、データ処理機能の移動や複製は管理装置の処理によって、または、データ処理機能の運用管理者の指示と操作によって手動で行われる。
コントローラ100のトラフィック制御機能215がVM(App)の移動を検知すると、トラフィック制御機能215は、サーバ540−1とサーバ540−2が繋がるLAN1とサーバ540−3とサーバ540−4が繋がるLAN1との間をネットワークファンクション400−1とネットワークファンクション400−2とをトンネルによって接続する。同様にトラフィック制御機能215がLAN2の間をトンネルによって接続する。なお、ネットワークファンクション400−1とネットワークファンクション400−2とを接続するトンネルの通信経路は、図1に示す、ネットワークファンクション400−1、スイッチ560−1、ルータ520−1、ネットワーク600、ルータ520−2、スイッチ560−2、及びネットワークファンクション400−2を経由する経路である。
移動の検知方法を以下に示す。移動前のVM(App)が送信するARPなどのパケットのヘッダ情報をネットワークファンクション400−1がコントローラ100のトラフィック制御機能215にパケットインなどの方法によって通知することによって、コントローラ100のトラフィック制御機能215がVM(App)のIPアドレスとMACアドレス、及び、VLANを把握し、コントローラ100のトラフィック制御機能215がVM(App)の移動後に同様にしてネットワークファンクション400−2からの通知によってVM(App)のIPアドレスとMACアドレスを把握する。ネットワークファンクション400−1とネットワークファンクション400−2から通知されたIPアドレスとMACアドレスが同一の場合にVM(App)が同一であると判断し、VM(App)が移動したと判断する。
このように、本システムでは、複数のネットワークファンクション400が学習したヘッダ情報(送信元アドレスや送信先アドレス、VLANタグ等の情報)をコントローラ100のトラフィック制御215が一元管理し、コントローラ100のトラフィック制御215が、異なるネットワークファンクション400が学習したヘッダに同一のものがあるか比較する。
なお、パケットインのメカニズムは、未知のヘッダを備えるパケットが到達した際にそのパケットのヘッダの情報をコントローラに通知するが、一度学習したパケットについては再送信しない。その為、本システムにおいて、パケットインを利用して通知する場合には、ある時間間隔で学習した内容を消去する仕組みを備えることが望ましい。なお、ある時間間隔とは一定の間隔、または、該当するヘッダを備えるパケットをネットワークファンクション400が最後に受信してから、経過したある規定された時間間隔である。
その判断方法を更に述べると、ネットワークファンクション400がコントローラ100のトラフィック制御機能215に通知するパケットのヘッダ情報に基づいて、トラフィック情報記憶部280が管理するトラフィック識別子、送信元アドレス、送信先アドレス、経由ネットワークファンクション識別子を保存する。トラフィック識別子には一意に決定される任意の値をコントローラ100が割り当てる。ネットワークファンクション400がトラフィックの制御方法が規定されていないトラフィックを受信すると、前述の通りネットワークファンクション400のスイッチングファンクション490がコントローラ100のトラフィック制御機能215にパケットのヘッダ情報を通知する。その際、トラフィック制御機能215が通知されたヘッダ情報の送信元アドレスと送信先アドレスが、トラフィック情報テーブル3100の送信元アドレスと送信先アドレスと同一でかつ、経由ネットワークファンクション識別子が上記通知を送信したネットワークファンクション400の識別子と異なる場合に、データ処理機能が移動したと判定する。これによって、データ処理機能の移動を検知することが可能になる。
従来のレイヤ2やレイヤ3のスイッチやルータは、自身が転送処理するパケットの送信元アドレスや送信先アドレス、VLANタグ等のヘッダ情報を異なるスイッチ間や異なるルータ間で交換してそれらの情報を共有しない為、あるスイッチが、自身が把握していないヘッダを備えるパケットを受信した際に、次の判断ができない。
その判断とは、受信したパケットの送信元アドレスのデータ処理機能が異なるスイッチやルータに接続されたサーバから移動したのか、または、新しく配備されたのかのどちらであるかを判断することである。また、移動したと判断できたとしても、どのスイッチやルータに接続されたサーバからそのデータ処理機能が移動したのかを判断できない為、移動前のネットワークの論理構成(レイヤ2やレイヤ3の接続構成やVLANタグ番号)を把握することができない。その結果、移動前のネットワークの論理構成を維持するように、通信経路を制御することができない。
一方で、本システムでは、複数のネットワークファンクション400が学習したヘッダ情報(送信元アドレスや送信先アドレス、VLANタグ等の情報)をコントローラ100のトラフィック制御215が一元管理し、コントローラ100のトラフィック制御215が、異なるネットワークファンクション400が学習したヘッダに同一のものがあるか比較するために、上記判断が可能になる。
端末620からVM(App)への通信はネットワーク600を経由してルータ520−1を経由し、ロードバランサ530−1を経由してLAN1に到達する。左右のLAN1がトンネリングによってトランスペアレントに接続される為、LAN1に到達したパケットはサーバ540−4に移動したVM(App)に到達する。VM(App)からVM(DB)への通信は、同様に右側のLAN2を経由してネットワークファンクション400−1と400−2の間のトンネルを経由して左側のLAN2に到達し、FW550−1を経由してVM(DB)へ到達する。
図11(C)に示す状態3は、サーバ540−6とサーバ540−5に配備されたVM(DB)のロールグループが同一、即ち、機能的に等価であることをコントローラ100が把握して、VM(App)からVM(DB)へのトラフィックの宛先がサーバ540−6からサーバ540−5に配備されたVM(DB)に変更され、かつ、VM(App)とVM(DB)の間のトラフィックが経由するFWが右側に存在しない為、FW550−2を配備して経由するFWをFW550−1からFW550−2に変更した状態を表す。
これによって、VM(App)からVM(DB)へのトラフィックが局所化される。トラフィックが局所化されるとは、例えば、ネットワーク600を経由しないということである。これによって、ネットワーク600を経由することによって生じる通信遅延の増加やTCPスループットの低下を回避することができる。また、ネットワーク600における性能障害がアプリケーションシステム(特に、最も性能障害の影響を受けるVM(App)とVM(DB)間のI/O性能)への影響を軽減することが可能になる。
状態3における動作概要を図12、図13、図14を用いて更に詳細に述べる。
図12は本実施形態においてネットワーク制御システムのネットワーク構成最適化時における動作概要を例示するシーケンス図である。本シーケンス図においては、図11の状態2において、ネットワーク管理装置200がコントローラ100に対してネットワーク構成最適化要求を送信した場合に、状態3に移行する動作概要を示す。
シーケンス2110においてコントローラ100のネットワーク構成管理230が、通信IF235を介して隣接ノード構成情報をネットワークファンクション400から取得する。ここで隣接ノードとは、ネットワークファンクション400がレイヤ3ネットワークで隣接するサーバ540やサーバ上のデータ処理機能ルータ520、DNS510、FW550等の識別子である。なお、識別子とは、例えば、IPアドレスやMACアドレス等で隣接ノードが一意に決定される値である。
シーケンス2120においてコントローラ100のサービス受付部240がネットワーク管理装置200からネットワーク構成最適化要求2120を受信する。ネットワーク構成最適化要求には、ロールグループ間経由ネットワーク情報3200とネットワークファンクション情報3300、仮想ネットワーク識別子の一覧、データ処理機能の識別子の一覧、及び、仮想化プロトコルの一覧、仮想化識別子の一覧、及び、データ処理機能のアドレスの一覧が含まれる。なお、全てのトラフィックを最適化するのではなく、一部のトラフィックを指定して最適化する場合には、送信元ロールグループと送信先ロールグループなどトラフィックを特定する情報が含まれていてもよい。
シーケンス2150においてコントローラ100のネットワーク構成管理230がシーケンス2120において受信した仮想ネットワーク識別子、データ処理機能の識別子、仮想化プロトコル、仮想化識別子、及び、データ処理機能のアドレスを、それぞれロールグループ情報3000の仮想ネットワーク識別子、データ処理機能識別子、仮想化プロトコル、仮想化識別子、及び、データ処理機能アドレスに追加する。次に、シーケンス2120において把握されたアドレスのうち、ローカルグループ情報3000に記載されたデータ処理機能アドレスに一致するアドレスを、シーケンス2120において送信したネットワークファンクション400の識別子をデータ処理機能の位置の同じ行に追加する。
シーケンス2160においてコントローラ100のロールグループ管理225がDNS510に対して名前解決情報要求を送信し、名前解決情報を参照する。具体的には、DNSに設定された名前解決の情報、即ち、URIとIPアドレスの対応付けなどを把握する。
シーケンス2170においてコントローラ100のロールグループ管理225がDNS510から名前解決情報を取得する。
シーケンス2180においてコントローラ100のロールグループ管理225がロードバランサ530に対して負荷分散情報要求2180を送信する。具体的には、負荷分散の設定情報を把握する。
シーケンス2190においてコントローラ100のロールグループ管理225がロードバランサ530から負荷分散情報を取得する。
シーケンス2200において、コントローラのロールグループ管理225がロールグループ情報を生成し、ロールグループ情報テーブル3000に追記する。図13を用いてその手順を説明する。
ステップ3110において、ロールグループ管理225がシーケンス2170において取得した名前解決情報のうち、DNSラウンドロビンなどによって同一のURIに対して複数のIPアドレスを応答することによってデータ処理やパケット処理を振分けられているIPアドレスを、機能的に等価な、データ処理機能またはネットワークファンクションまたはミドルボックス、のIPアドレスとして把握する。また、当該情報を取得したDNS510が属する仮想ネットワーク識別子を把握する。
ステップ3120において、ロールグループ管理225がシーケンス2190において把握された負荷分散情報のうち、同じバーチャルサーバに対応するプールメンバのIPアドレスを、機能的に等価な、データ処理機能またはネットワークファンクションまたはミドルボックス、のIPアドレスとして把握する。また、当該情報を取得したロードバランサ530が属する仮想ネットワーク識別子を把握する。
ステップ3130において、ロールグループ管理225がステップ3110と3120において把握した、機能的に等価な複数のデータ処理機能のアドレスを同一のロールグループのアドレスとして、ステップ3110と3120において把握した仮想ネットワーク識別子と紐付けて管理する。
ステップ3140において、ロールグループ管理225が、ロールグループ情報テーブル3000において仮想ネットワーク識別子が、ステップ3130において把握された仮想ネットワーク識別子と同一である行(複数ある場合は複数行)を把握する。次に、当該行のデータ処理機能アドレスが、ステップ3130で把握された一つのロールグループに属する複数のアドレスに含まれるいずれかと一致する行を「同じロールグループに属するデータ処理機能のエントリ」として把握する。
更に、当該行(同じロールグループに属するデータ処理機能のエントリ)において、ロールグループ識別子が一意になるように(すなわち、他の行で使用されていない)ユニークな値を記入する。既に当該行(同じロールグループに属するデータ処理機能のエントリ)のうちのあるエントリにおいて、ロールグループ識別子に値が記入されている場合、いずれかの値に統一してもよい。ステップ3130で把握されたロールグループが複数存在する場合、本ステップの手順を、把握されたロールグループに対して、繰り返し行う。
ステップ3150において、ロールグループ管理225がロールグループ間経由ネットワークファンクション情報3200を参照して送信元ロールグループ識別子と送信先ロールグループ識別子、経由ネットワークファンクショングループ、及び経由ネットワークファンクション識別子を把握する。ロールグループ情報3000のロールグループグループ識別子が把握された送信元ロールグループ識別子、及び、送信先ロールグループ識別子と同じであるデータ処理機能識別子をそれぞれ、送信元データ処理機能識別子、及び、送信先データ処理機能識別子として把握する。トラフィック情報テーブル3100の送信元アドレスが送信元データ処理機能識別子と同じであり、送信先アドレスが送信先データ処理機能識別子と同一である行の経由ノード種別と経由ノード識別子に上記で把握された経由ネットワークファンクショングループと経由ネットワークファンクション識別子を追加する。
以上が図13の説明である。これによってロールグループ情報が生成される。図12の説明に戻る。
シーケンス2230においてサービス受付部240がロールグループ間経由ネットワークファンクション情報要求をネットワーク管理装置200に対して送信する。
シーケンス2240においてサービス受付部240がネットワーク管理装置200からロールグループ間経由ネットワークファンクション情報3200を受信する。
シーケンス2250においてコントローラ100が経路制御変更情報、及び、配備ネットワークファンクション情報を生成する。本シーケンスにおける手順を図14を用いて説明する。
ステップ3310において、トラフィック制御機能215が、経路を変更するトラフィックを特定する。経路を変更するトラフィックは例えば、以下の2種類である。
一つはトラフィックの送信先アドレスのロールグループと同じロールグループに属するアドレスが送信先アドレスよりも近傍に存在するトラフィックである。
この場合、トラフィック制御機能215がトラフィック情報3100の送信元アドレスと送信先アドレスを参照する。
送信元アドレスと送信先アドレスのそれぞれに対して、ロールグループ情報3000のデータ処理機能アドレスと同じである行のロールグループ識別子とデータ処理機能の位置を、送信元ロールグループ識別子と送信元データ処理機能の位置、及び、送信先ロールグループ識別子と送信先データ処理機能の位置として把握する。ロールグループ識別子が送信先ロールグループ識別子と同じである行のうち、データ処理機能の位置が送信先データ処理機能の位置に比べて送信元データ処理機能の位置にネットワークの観点から近い行のデータ処理機能識別子、及び、データ処理機能アドレスを近傍データ処理機能識別子、及び、近傍データ処理機能アドレスとして把握する。なお、条件に当てはまる近傍データ処理機能識別子が複数計算された場合、もっとも送信元データ処理機能の位置に近い行を選択するものとする。
上記判断においてデータ処理機能の位置関係を把握する必要があるが、データ処理機能が元のデータ処理機能より近いことを判断する方法は、例えば、データ処理機能iを経由するようにトラフィックの通信経路を変更した場合の応答時間Tiが、元々トラフィックが経由しているデータ処理機能oを経由する場合の応答時間Tからある値α(α≧0)を引いた値よりも小さい(Ti<T−α)かを比較し、小さい場合にデータ処理機能iが元のデータ処理機能oよりも近いと判断する。複数のデータ処理機能が該当する場合は、最も小さい応答時間Tiを持つデータ処理機能iをもっとも送信元データ処理機能の位置に近いと判断する。
なお、応答時間の把握方法としては、例えば、RTT(Round Trip Time)などをPingなどの既存技術で把握する、または、データを送信するのに要する時間からTCPスループットを計測する既存技術によって把握することが可能なため、説明を割愛する。以上の方法によって近傍データ処理機能識別子が計算されたトラフィックを、経路を変更するトラフィックとして把握する。
もう一つはトラフィックが経由するネットワークファンクション400に経由ノードと同一の種類の機能が配備されている、または、配備するために十分な計算資源がリソースプール480に存在するトラフィックである。
具体的に述べると、トラフィック制御機能215がトラフィック情報3100の送信元アドレスと送信先アドレスを参照する。送信元アドレスと送信先アドレスのそれぞれが、トラフィック情報3100の送信元アドレスと送信先アドレスと同じである行の経由ノード種別、及び、経由ネットワークファンクション識別子を把握する。
ネットワークファンクション情報3300のネットワークファンクション識別子が把握された経由ネットワークファンクション識別子と同一であり、かつ、ネットワークファンクショングループが把握された経由ネットワークファンクショングループと同じである場合はネットワークファンクション400に経由ノードと同一の種類の機能が配備されていると判断する。
また、ネットワークファンクション情報3300のネットワークファンクション識別子が把握された経由ネットワークファンクション識別子と同一であるネットワークファンクションのリソースプールに経由ネットワークファンクションを配備できるだけの計算資源がある場合は、配備するために十分な計算資源がリソースプール480に存在するトラフィックとして判断する。
ステップ3330において、ロールグループ管理225が経路変更対象のトラフィックの経由ネットワークファンクションを把握する。具体的には、トラフィック情報テーブル3100において上記で把握されたトラフィックの行の経由ネットワークファンクション識別子を把握する。
ステップ3340において、ネットワーク構成管理230が、経由ネットワークファンクションが論理的に近傍な位置に存在するかを確認する。
具体的には、ネットワーク構成管理215がトラフィック情報3100の送信元アドレスと送信先アドレスを参照する。送信元アドレスと送信先アドレスのそれぞれが、トラフィック情報3100の送信元アドレスと送信先アドレスと同じである行の経由ノード種別、及び、経由ネットワークファンクション識別子を把握する。
ネットワークファンクション情報3300のネットワークファンクション識別子が把握された経由ネットワークファンクション識別子と同一であり、かつ、ネットワークファンクショングループが把握された経由ネットワークファンクショングループと同じである場合はネットワークファンクション400に経由ノードと同一の種類の機能が配備されていると判断する。更に、ネットワーク構成管理230が、ネットワークの観点から元々トラフィックが経由する、ステップ3330において把握されたネットワークファンクション、すなわちネットワークファンクション400またはミドルボックス、に比べて、本ステップで把握されたネットワークファンクション400が論理的に近傍である場合には、ネットワークの観点でより近傍な位置にネットワークファンクションが存在すると判断する。
なお、上記において、ネットワークファンクション情報3300のネットワークファンクション識別子が把握された経由ネットワークファンクション識別子と同一である代わりに、ネットワークファンクション情報3300のネットワークファンクション識別子が把握された経由ネットワークファンクションの近傍のネットワークファンクションの識別子と同一であってもよい。
ネットワークファンクションが近傍であることの判断方法に関してはステップ3310に示したデータ処理機能の場合と同様であるが、以下に簡単に説明する。
ネットワークファンクション400が、トラフィックが元々経由するネットワークファンクションより近いことを判断する方法は、例えば、ネットワークファンクションi(ミドルボックスでもよい)を経由するようにトラフィックの通信経路を変更した場合の応答時間Tiが、元々(経路変更する前に)トラフィックが経由しているネットワークファンクションo(ミドルボックスでもよい)を経由する場合の応答時間Tからある値α(α≧0)を引いた値よりも小さい(Ti<T−α)かを比較し、小さい場合にネットワークファンクションiが元のネットワークファンクションoよりも近いと判断する。複数のネットワークファンクションが該当する場合は、最も小さい応答時間Tiを持つデータ処理機能iをもっとも近傍にあるネットワークファンクションであると判断する。
存在する場合にはステップ3360に進む。存在しない場合にはステップ3350に進む。
なお、アプリケーションの要件として、冗長化構成、耐バースト性が指定されている場合には、ネットワークファンクション情報3300の識別子が把握された経由ネットワークファンクションである行のうち、冗長化構成、耐バースト性の値が有となっている行を選択した後に、近傍のネットワークファンクションを計算する。
ステップ3350において、ネットワークファンクション管理220が近傍に存在しないネットワークファンクションを把握して、ネットワークの観点で近傍にあり、かつ配備可能な位置(リソースプール570)を把握し、また、配備するネットワークファンクションへの設定情報を把握する。配備可能な位置はステップ3310において把握された経由ネットワークファンクションにもっとも近いネットワークファンクション400のうち、配備に必要な計算資源(CPUの処理性能とメモリなど)がリソースプールに存在するネットワークファンクションである。ネットワークファンクション管理220は、本ステップで把握したリソースプール570にネットワークファンクションを配備する。また、ネットワークファンクション管理220は、配備したネットワークファンクションが、トラフィックが元々経由していたネットワークファンクション400と同じ処理を行うことができるように、本ステップにおいて把握した設定情報を、本ステップで配備したネットワークファンクション400に設定する。
なお、リソースプール570がネットワークの観点で近傍であることを判断する方法は、例えば、リソースプール570を経由するようにトラフィックの通信経路を変更した場合の応答時間Tiが、元々(経路変更する前に)トラフィックが経由しているネットワークファンクションo(ミドルボックスでもよい)を経由する場合の応答時間Tからある値α(α≧0)を引いた値よりも小さい(Ti<T−α)かを比較し、小さい場合にリソースプールiが元のネットワークファンクションoよりも近いと判断する。複数のリソースプールが該当する場合は、最も小さい応答時間Tiを持つデータ処理機能iをもっとも近傍にあるリソースプールであると判断する。
ステップ3360において、トラフィック制御機能215が経路変更するトラフィックのネクストホップ、または、プリービアスホップのノードの識別子を把握する。ネクストホップとはネットワークファンクション400がパケットを転送する次のホップのノードのIPアドレスであり、プリービアスホップとはネットワークファンクション400にパケットを転送した一つ前のホップのノードのIPアドレスである。ネクストホップとプリービアスホップは、トラフィック情報テーブル3100の変更後経由ネットワークファンクション識別子、または、変更後経由ノード識別子、または、変更後送信先アドレスのうち、次のホップ先のノードのIPアドレスである。次のホップ先のノードのIPアドレスはネットワークの構成情報から生成されるが、ルーティングの一般的な手段で実現可能なため、説明を割愛する。
ステップ3370において、トラフィック制御機能215が配備するネットワークファンクション情報テーブル3400、及び、ネットワークファンクションの転送ルール3500を生成する。具体的には、トラフィック制御機能215が配備するネットワークファンクション情報テーブル3400の「配備するネットワークファンクショングループ」に、ステップ3340において把握された存在しないネットワークファンクションの種別を追加し、当該エントリの「設定を複製するネットワークファンクション識別子」にステップ3340において把握された経由ノードの識別子を追加し、当該エントリの「配備するネットワークファンクションのアドレス」に、配備先のリソースプールにステップ3350において把握された配備可能なネットワークファンクションの識別子、及び、当該ネットワークファンクションのIPアドレスを追加する。配備するネットワークファンクションの識別子は一意に決定されるように任意の値が割り当てられる。
ネットワークファンクションの転送ルール情報3500の説明に移る。ネットワークファンクションの転送ルール情報3500のネットワークファンクション識別子に、ステップ3310において把握された経由ネットワークファンクションを追加する。当該エントリの送信元仮想化識別子に、ロールグループ情報テーブル3000のデータ処理機能がステップ3310において把握されたトラフィックの送信元アドレスと同じである行の仮想ネットワーク識別子を追加し、当該エントリの送信元アドレスと送信先アドレスに、上記把握されたトラフィックの送信元アドレスと送信アドレスを追加する。また、当該エントリの出力送信元アドレスと出力送信先アドレスに、ステップ3360において把握されたネクストホップ、及び、プリービアスホップを追加する。
更にロールグループ情報テーブル3000において、データ処理機能アドレスが、ステップ3310において特定されたトラフィックの送信先アドレスと同じ行の「仮想化識別子」を「送信先の仮想化識別子」として把握する。
ネットワークファンクションの転送ルール情報3500の当該エントリの送信先仮想化識別子に上記「送信先の仮想化識別子」を追加する。
入力元IFと出力先IFに関しては、ネットワークのトポロジ情報から生成されるが、一般的なルーティングやSDN制御において明らかである為、詳細な説明は割愛する。
以上が図14の説明である。これによって配備するネットワークファンクション情報3400、及び、ネットワークファンクションの制御情報3500を生成される。図12の説明に戻る。
シーケンス2260において、コントローラ100のサービス受付部240がネットワーク構成情報通知をネットワーク管理装置200に送信する。具体的には、シーケンス2250において生成した配備するネットワークファンクション情報3400、及び、ネットワークファンクションの制御情報3500を送信する。
シーケンス2270において、コントローラ100のサービス受付部240がネットワーク管理装置200から実行要求を受信する。実行要求を受信した場合、シーケンス2280に移行し、受信しない場合、処理を中断する。
シーケンス2280において、コントローラ100が、シーケンス2250で生成した設定情報に基づいて、ネットワークファンクション400に対して、経路の設定、及び、ネットワークファンクションの配備を行う。
シーケンス2290においてコントローラ100が状態情報を更新する。具体的には、シーケンス2250において生成した配備するネットワークファンクション情報3400をネットワークファンクション情報3300に追加する。
100:コントローラ
200:ネットワーク管理装置
210: 制御処理部
215: トラフィック制御機能
220: ネットワークファンクション管理
225: ロールグループ管理
230: ネットワーク構成管理
235: 通信IF
240: サービス受付部
270: データ記憶部
275: 構成情報記億部
280: 仮想ネットワーク情報記憶部
290: ネットワークファンクション情報記憶部
295: ロールグループ情報記憶部
400:ネットワークファンクション
410:ファイアフォールファンクション
420:IPSファンクション
430:ルーティングファンクション
440:ロードバランシングファンクション
450:DPIファンクション
460:キャッシングファンクション
470:アクセラレーティングファンクション
480:リソースプール
490:スイッチングファンクション
510:DNS(Domain Name Service)
520:ルータ
530:ロードバランサ
540:サーバ
550:FW(Firewall)
560:ネットワークスイッチ
600:ネットワーク
610:LAN(Local Area Network)
620:端末
700:拠点

Claims (8)

  1. ネットワーク制御システムであって、
    コントローラと、
    第一のサーバ上のデータ処理機能と、その近傍にある第一のミドルボックス機能と、を備え、
    当該ネットワーク制御システムに接続した端末が、第一のミドルボックス機能を経由して、前記データ処理機能と通信している場合に、前記データ処理機能が、前記第一のサーバ上から、第二のサーバ上へ移動したことを、前記データ処理機能が通信する内容に基づき、検知する検知機能と
    前記端末と前記移動したデータ処理機能との通信を、前記第二のサーバと前記第一のミドルボックス機能とのネットワーク観点の距離より近傍にあり、前記第一のミドルボックス機能と等価な機能を備える第二のミドルボックス機能を経由させる経路制御機能と、を備える
    ことを特徴とするネットワーク制御システム。
  2. 請求項1に記載のネットワーク制御システムにおいて、
    前記検知機能は、前記データ処理機能が送信する通信パケットのヘッダに基づき、前記通信パケットの送信元である前記データ処理機能の移動を検知する
    ことを特徴とするネットワーク制御システム。
  3. 請求項1または2に記載のネットワーク制御システムにおいて、
    前記コントローラは、
    前記第二のサーバと前記第一のミドルボックス機能のネットワーク観点の距離より近傍には、前記第二のミドルボックス機能が存在しないが、前記第二のミドルボックス機能を配備可能なネットワークファンクションが、前記近傍にある場合は、当該ネットワークファンクションに、前記第二のミドルボックス機能を配備する
    ことを特徴とするネットワーク制御システム。
  4. 請求項3に記載のネットワーク制御システムにおいて、
    前記コントローラは、
    前記第二のサーバと前記第一のミドルボックス機能のネットワーク観点の距離より近傍には、前記第二のミドルボックス機能および前記ネットワークファンクションが存在しないが、新たに、ネットワークファンクションを配備可能なリソースプールが、前記近傍にある場合は、当該リソースプールに、前記第二のミドルボックス機能を有する前記ネットワークファンクションを配備する
    ことを特徴とするネットワーク制御システム。
  5. 請求項1から4のいずれか一に記載のネットワーク制御システムにおいて、
    ロードバランサを備え、
    前記コントローラは、
    前記ロードバランサから、負荷分散情報を取得し、
    前記データ処理機能または前記ミドルボックス機能または前記ネットワークファンクションのうち、同じバーチャルサーバに対応するプールメンバのIPアドレスを備えるものを、等価な機能を備える、データ処理機能またはミドルボックス機能またはネットワークファンクション、と見做し、
    前記ロードバランサが属する仮想ネットワーク識別子と対応付けて管理する
    ことを特徴とするネットワーク制御システム
  6. 請求項1から5のいずれか一に記載のネットワーク制御システムにおいて、
    DNSを備え、
    前記コントローラは、
    前記DNSから、URIとIPアドレスの対応付けを含む名前解決情報を取得し、
    前記データ処理機能または前記ミドルボックス機能または前記ネットワークファンクションのうち、同一のURIに対して複数のIPアドレスの応答により処理を振分けられている前記IPアドレスを備えるものを、等価な機能を備える、データ処理機能またはミドルボックス機能またはネットワークファンクション、と見做し、
    前記DNSが属する仮想ネットワーク識別子と対応付けて管理する
    ことを特徴とするネットワーク制御システム
  7. 請求項1から6のいずれか一に記載のネットワーク制御システムにおいて、
    前記コントローラは、前記ネットワーク観点の距離の遠近を、前記データ処理機能と前記ネットワークファンクションとの、IPレイヤ(Layer3)におけるパケット応答時間、または、アプリケーションレイヤにおける通信処理が行われる時間の長さで判断する
    ことを特徴とするネットワーク制御システム
  8. 請求項1から7のいずれか一に記載のネットワーク制御システムにおいて、
    前記ミドルボックス機能または前記ネットワークファンクションは、属性として、
    RSFG(リスクシェアードファンクショングループ)の識別情報と、
    ディカプセル化の要否を示す情報と、
    耐バースト性情報の有無を示す情報と、
    冗長化構成の有無を示す情報と、
    のいずれか一つ以上を含む
    ことを特徴とするネットワーク制御システム。
JP2014237285A 2014-11-25 2014-11-25 ネットワーク制御システム Active JP6510217B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014237285A JP6510217B2 (ja) 2014-11-25 2014-11-25 ネットワーク制御システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014237285A JP6510217B2 (ja) 2014-11-25 2014-11-25 ネットワーク制御システム

Publications (2)

Publication Number Publication Date
JP2016100798A true JP2016100798A (ja) 2016-05-30
JP6510217B2 JP6510217B2 (ja) 2019-05-08

Family

ID=56075620

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014237285A Active JP6510217B2 (ja) 2014-11-25 2014-11-25 ネットワーク制御システム

Country Status (1)

Country Link
JP (1) JP6510217B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200085005A (ko) * 2019-01-04 2020-07-14 한국전자통신연구원 분산 엣지 클라우드 환경에서의 서비스 제공 방법 및 서비스 제공 장치
CN112925239A (zh) * 2020-05-21 2021-06-08 鲍俐文 采用mcu控制单元的网络信号控制系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010061556A (ja) * 2008-09-05 2010-03-18 Toshiba Corp 情報処理システムおよび情報処理システムの制御方法
JP2014135658A (ja) * 2013-01-10 2014-07-24 Fujitsu Ltd 転送装置、通信システム、および迂遠経路検知方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010061556A (ja) * 2008-09-05 2010-03-18 Toshiba Corp 情報処理システムおよび情報処理システムの制御方法
JP2014135658A (ja) * 2013-01-10 2014-07-24 Fujitsu Ltd 転送装置、通信システム、および迂遠経路検知方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
永渕 幸雄 他: "データセンタ間ライブマイグレーション環境における冗長経路回避に向けた経路制御方式の提案", 電子情報通信学会技術研究報告, vol. 第113巻,第140号, JPN6018025767, 11 July 2013 (2013-07-11), pages 71 - 76 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200085005A (ko) * 2019-01-04 2020-07-14 한국전자통신연구원 분산 엣지 클라우드 환경에서의 서비스 제공 방법 및 서비스 제공 장치
KR102546521B1 (ko) * 2019-01-04 2023-06-22 한국전자통신연구원 분산 엣지 클라우드 환경에서의 서비스 제공 방법 및 서비스 제공 장치
CN112925239A (zh) * 2020-05-21 2021-06-08 鲍俐文 采用mcu控制单元的网络信号控制系统

Also Published As

Publication number Publication date
JP6510217B2 (ja) 2019-05-08

Similar Documents

Publication Publication Date Title
US11283707B2 (en) Segment routing with fast reroute for container networking
US11070447B2 (en) System and method for implementing and managing virtual networks
Ramos et al. Slickflow: Resilient source routing in data center networks unlocked by openflow
EP3207667B1 (en) System and method for distributed flow state p2p setup in virtual networks
US9736263B2 (en) Temporal caching for ICN
Yu et al. Scalable flow-based networking with DIFANE
US10237179B2 (en) Systems and methods of inter data center out-bound traffic management
US9819643B2 (en) CCN name patterns
US9712649B2 (en) CCN fragmentation gateway
KR20120019462A (ko) 계층-2 도메인에 걸친 로드 밸런싱
US10848432B2 (en) Switch fabric based load balancing
US11265104B2 (en) Mechanism for inline packet response generation in software defined networks
US20160316011A1 (en) Sdn network element affinity based data partition and flexible migration schemes
US9973578B2 (en) Real time caching efficient check in a content centric networking (CCN)
US9832121B1 (en) Next hop instruction associations for forwarding unit programming within a network device
US9246804B1 (en) Network routing
JP5965335B2 (ja) 通信システム、及び経路制御方法
JP6510217B2 (ja) ネットワーク制御システム
US10965596B2 (en) Hybrid services insertion
JP5580766B2 (ja) サーバ装置、パケット伝送システム、パケット伝送方法及びプログラム
Shpiner et al. SAL: Scaling data centers using smart address learning
Lam et al. Hybrid security architecture for data center networks
US10931565B2 (en) Multi-VRF and multi-service insertion on edge gateway virtual machines
Lin et al. D 2 ENDIST-FM: Flow migration in routing of OpenFlow-based cloud networks

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170110

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170112

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170808

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180607

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180710

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180829

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20180919

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20180926

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181107

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190404

R150 Certificate of patent or registration of utility model

Ref document number: 6510217

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150