JP6510217B2 - Network control system - Google Patents

Network control system Download PDF

Info

Publication number
JP6510217B2
JP6510217B2 JP2014237285A JP2014237285A JP6510217B2 JP 6510217 B2 JP6510217 B2 JP 6510217B2 JP 2014237285 A JP2014237285 A JP 2014237285A JP 2014237285 A JP2014237285 A JP 2014237285A JP 6510217 B2 JP6510217 B2 JP 6510217B2
Authority
JP
Japan
Prior art keywords
function
network
data processing
network function
information
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
JP2014237285A
Other languages
Japanese (ja)
Other versions
JP2016100798A (en
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.)
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/en
Publication of JP2016100798A publication Critical patent/JP2016100798A/en
Application granted granted Critical
Publication of JP6510217B2 publication Critical patent/JP6510217B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本明細書で開示される主題は、ネットワークの構成変更のためのネットワーク制御技術に関する。   The subject matter disclosed herein relates to network control technology for changing the configuration of a network.

近年、クラウドの普及やサーバ仮想化の進展に伴い、データセンタ内やデータセンタ間におけるネットワークの構成変更がより頻繁に行われるようになっている。その際、通信性能(通信遅延や通信帯域)の維持を考慮しつつ、ネットワーク構成を変更すると、変更に掛かる作業工数が大きくなる。その為、ネットワークの構成変更の作業省力化が課題になっている。ネットワーク構成変更の一例として、通信経路を切り替える、または、データ処理機能間やデータ処理機能と端末間の通信経路にネットワークファンクションを追加する等がある。   In recent years, with the spread of the cloud and the progress of server virtualization, the configuration change of the network in the data center and between the data centers is more frequently performed. At that time, if the network configuration is changed in consideration of maintaining the communication performance (communication delay and communication band), the number of work steps for the change becomes large. Therefore, the labor saving of the network configuration change has become an issue. As an example of network configuration change, there are switching of communication paths, or addition of network functions to communication paths between data processing functions or between data processing functions and terminals.

通信経路を切り替える関連技術として、C/U分離して集中制御型のアーキテクチャを採用するSDN(Software Defined Networking)があり、ネットワークファンクションの追加を可能にする関連技術として、ハードウェアからネットワークファンクションを切り離してソフトウェアとしてネットワークファンクションを提供するNFV(Network Functions Virtualization)がある。しかし、集中制御型のアーキテクチャやハードウェアからネットワークファンクションを切り離す技術のみでは、通信性能を維持する為のネットワーク設計が必要であり、ネットワークの構成変更作業は省力化されない。   As a related technology for switching communication paths, there is SDN (Software Defined Networking) adopting a centralized control type architecture with C / U separation, and as a related technology for enabling addition of network functions, it separates network functions from hardware. Functions (NFV) that provide network functions as software. However, only with the centralized control architecture and the technology for separating the network function from hardware, network design for maintaining communication performance is required, and the network configuration change work is not saved.

以下に上記問題に関係する従来技術を説明する。   The prior art related to the above problem will be described below.

特許文献1においては、分散仮想スイッチが、仮想機械及び物理機械が同一の物理ホスト上及び/あるいは同一のサブネット又はVLANに配備されない場合でも、互いにより簡単に、安全に且つ効率的に通信することを可能にする。   In Patent Document 1, distributed virtual switches communicate with each other more easily and safely and efficiently even when virtual machines and physical machines are not deployed on the same physical host and / or in the same subnet or VLAN. Make it possible.

特許文献2においては、仮想ネットワーク(Vネット)と、Vネットのメンバ間の保護かつ分離された相互接続を可能にする仮想マシン(VM)スイッチとを確立かつ管理するための、コンピュータ化された方法、システムおよびコンピュータが提供される。   In U.S. Pat. No. 5,959,015, a computerized system is provided for establishing and managing a virtual network (V-net) and a virtual machine (VM) switch that enables protected and isolated interconnection between members of the V-net. Methods, systems and computers are provided.

米国特許出願公開第2010/0257263号明細書US Patent Application Publication No. 2010/0257263 米国特許出願公開第2011/0283017号明細書U.S. Patent Application Publication No. 2011/0283017

以下に、従来技術の課題を説明する。   Below, the subject of a prior art is demonstrated.

特許文献1の技術は、それを、物理的に分散する複数拠点で構成される分散環境に適用すると、ルーティングされる箇所や、ロードバランサやファイアフォール、DPI、IPSなどの箇所を変更できない為、仮想機械が遠隔の拠点に移動した場合に遠隔のルーティング箇所を経由することになり、通信遅延が大きくなる問題や通信帯域を消費する問題が生じる。   When the technology of Patent Document 1 is applied to a distributed environment composed of a plurality of physically distributed points, the points to be routed, and the places such as load balancer, fire fall, DPI, and IPS can not be changed. When a virtual machine moves to a remote location, it passes through a remote routing point, causing a problem that communication delay becomes large and a problem of consuming a communication band.

また、宛先の仮想機械が遠隔の拠点に存在する場合に、宛先の仮想機械と同じデータ処理を行える仮想機械が送信元の仮想機械の最寄りに存在する場合においても遠隔に送信されてしまい、通信遅延が大きくなる問題や通信帯域を消費する問題が生じる。   Also, when the destination virtual machine exists at a remote location, the virtual machine that can perform the same data processing as the destination virtual machine is also transmitted remotely even if it exists near the source virtual machine, The problem of increased delay and the problem of consuming the communication band occur.

特許文献2においても特許文献1と同様の問題を抱える。   Patent Document 2 also has the same problem as Patent Document 1.

従って、ネットワーク構成変更時の通信性能の維持と構成変更時の作業の省力化とを両立する技術が望まれている。   Therefore, there is a demand for a technology that achieves both maintenance of communication performance at the time of network configuration change and labor saving at the time of configuration change.

開示されるのは、ネットワーク構成を変更しても通信性能を維持するネットワークの構成を計算することによってネットワーク構成変更における作業を省力化する技術である。   What is disclosed is a technique for saving the work in network configuration change by calculating the configuration of a network that maintains communication performance even if the network configuration is changed.

開示されるのは、データ処理機能が移動しても、通信帯域や通信遅延などの通信性能と消費する計算機資源のいずれか一方または両方を劣化させないネットワーク制御システムである。   What is disclosed is a network control system that does not degrade either one or both of communication performance such as communication bandwidth and communication delay and computer resources consumed even if the data processing function moves.

具体的に開示されるのは、データ処理機能の移動を検知して、データ処理機能が属する仮想ネットワーク構成を変更するネットワーク制御システムである。   Specifically disclosed is a network control system that detects the movement of the data processing function and changes the virtual network configuration to which the data processing function belongs.

より具体的には、データ処理機能が移動して経由していたネットワークファンクションが遠隔になった場合など、適切な位置のネットワークファンクションにおいて処理されるように、仮想ネットワーク構成を変更するネットワーク制御システム(NCS:Network Control System)である。   More specifically, a network control system that changes the virtual network configuration so that it is processed by the network function at an appropriate location, for example, when the network function that the data processing function has moved to goes through is remote. NCS: Network Control System).

開示される上記ネットワーク制御システムの一つの特徴は、
コントローラと、
第一のサーバ上のデータ処理機能と、その近傍にある第一のミドルボックス機能と、を備え、
当該ネットワーク制御システムに接続した端末が、第一のミドルボックス機能を経由して、上記データ処理機能と通信している場合に、上記データ処理機能が、上記第一のサーバ上から、第二のサーバ上へ移動したことを、上記データ処理機能が通信する内容に基づき、検知する検知機能と
上記端末と上記移動したデータ処理機能との通信を、上記第二のサーバと上記第一のミドルボックス機能とのネットワーク観点の距離より近傍にあり、上記第一のミドルボックス機能と等価な機能を備える第二のミドルボックス機能を経由させる経路制御機能と、を備える点である。
One feature of the disclosed network control system is:
Controller,
It has the data processing function on the first server and the first middle box function in the vicinity,
When the terminal connected to the network control system is in communication with the data processing function via the first middle box function, the data processing function is transmitted from the first server to the second server. The second server and the first middle box communicate the detection function that detects that the data processing function has moved to the server, and the detection function that detects the movement of the terminal and the moved data processing function. And a path control function that is closer to the distance from the network with the function and has a second middle box function having a function equivalent to the first middle box function.

また、上記データ処理機能が送信する通信パケットのヘッダに基づき、上記通信パケットの送信元である上記データ処理機能の移動を検知するように、上記検知機能を構成しても良い。   The detection function may be configured to detect movement of the data processing function that is a transmission source of the communication packet based on a header of the communication packet transmitted by the data processing function.

また、上記第二のサーバと上記第一のミドルボックス機能のネットワーク観点の距離より近傍には、上記第二のミドルボックス機能が存在しないが、上記第二のミドルボックス機能を配備可能なネットワークファンクションが上記近傍にある場合は、当該ネットワークファンクションに上記第二のミドルボックス機能を配備するように、上記コントローラを構成しても良い。   Further, a network function capable of deploying the second middle box function although the second middle box function does not exist in the vicinity of the distance between the second server and the network viewpoint of the first middle box function. When the controller is in the vicinity, the controller may be configured to deploy the second middle box function to the network function.

また、上記第二のサーバと上記第一のミドルボックス機能のネットワーク観点の距離より近傍には、上記第二のミドルボックス機能および上記ネットワークファンクションが存在しないが、新たに、ネットワークファンクションを配備可能なリソースプールが上記近傍にある場合は、当該リソースプールに、上記第二のミドルボックス機能を有する上記ネットワークファンクションを配備するように、上記コントローラを構成しても良い。   Further, although the second middle box function and the network function do not exist in the vicinity of the distance between the second server and the network viewpoint of the first middle box function, a network function can be newly deployed. When the resource pool is in the vicinity, the controller may be configured to deploy the network function having the second middle box function in the resource pool.

また、当該ネットワーク制御システムがロードバランサを備え、
上記コントローラが、
上記ロードバランサから、負荷分散情報を取得し、
上記データ処理機能または上記ミドルボックス機能または上記ネットワークファンクションのうち、同じバーチャルサーバに対応するプールメンバのIPアドレスを備えるものを、等価な機能を備える、データ処理機能またはミドルボックス機能またはネットワークファンクション、と見做し、
上記ロードバランサが属する仮想ネットワーク識別子と対応付けて管理するように、上記ネットワーク制御システムを構成しても良い。
In addition, the network control system includes a load balancer,
The above controller
Obtain load distribution information from the above load balancer,
A data processing function or a middlebox function or a network function having equivalent functions among the data processing function or the middlebox function or the network function having the IP address of the pool member corresponding to the same virtual server; See
The network control system may be configured to manage in association with a virtual network identifier to which the load balancer belongs.

また、当該ネットワーク制御システムがDNSを備え、
上記コントローラが、
上記DNSから、URIとIPアドレスの対応付けを含む名前解決情報を取得し、
上記データ処理機能または上記ミドルボックス機能または上記ネットワークファンクションのうち、同一のURIに対して複数のIPアドレスの応答により処理を振分けられている上記IPアドレスを備えるものを、等価な機能を備える、データ処理機能またはミドルボックス機能またはネットワークファンクション、と見做し、
上記DNSが属する仮想ネットワーク識別子と対応付けて管理するように、上記ネットワーク制御システムを構成しても良い。
In addition, the network control system includes DNS.
The above controller
Obtain name resolution information including the correspondence between URI and IP address from the above DNS,
Data having the same function as the data processing function or the middle box function or the network function that has the IP address whose processing is distributed to the same URI by responses of a plurality of IP addresses Treat as a processing function or middle box function or network function,
The network control system may be configured to manage in association with a virtual network identifier to which the DNS belongs.

また、上記ネットワーク観点の距離の遠近を、上記データ処理機能と上記ネットワークファンクションとの、IPレイヤ(Layer3)におけるパケット応答時間、または、アプリケーションレイヤにおける通信処理が行われる時間の長さで判断するように、上記コントローラを構成しても良い。   In addition, the distance between the network and the network can be determined by the packet response time of the data processing function and the network function in the IP layer (Layer 3) or the length of time in which communication processing in the application layer is performed. Alternatively, the controller may be configured.

また、上記ミドルボックス機能または上記ネットワークファンクションの属性として、
RSFG(リスクシェアードファンクショングループ)の識別情報と、
ディカプセル化の要否を示す情報と、
耐バースト性情報の有無を示す情報と、
冗長化構成の有無を示す情報と、
のいずれか一つ以上を含むように、上記ミドルボックス機能と上記ネットワークファンクションのいずれか一方または両方を構成しても良い。
Also, as an attribute of the middle box function or the network function,
Identification information of RSFG (risk shared function group),
Information indicating whether or not decapsulation is necessary,
Information indicating the presence or absence of burst resistance information;
Information indicating the presence or absence of a redundant configuration;
The middle box function and / or the network function may be configured to include any one or more of the above.

開示によれば、通信性能を維持しながらのネットワーク構成の変更を、少ない工数で可能にする技術を提供できる。   According to the disclosure, it is possible to provide a technology that enables a change in network configuration while maintaining communication performance with less man-hours.

実施形態が適用されるネットワーク制御システムの物理構成例を示す図である。It is a figure showing an example of physical composition of a network control system to which an embodiment is applied. 実施形態が適用されるネットワーク制御システムの論理構成例を示す図である。It is a figure which shows the example of a logic configuration of the network control system where embodiment is applied. 実施形態が適用されるコントローラの構成例を示すブロック図である。It is a block diagram showing an example of composition of a controller by which an embodiment is applied. 実施形態が適用されるネットワークファンクションの構成例を示すブロック図である。It is a block diagram showing an example of composition of a network function to which an embodiment is applied. コントローラが保持するロールグループ情報の構成を例示する図である。It is a figure which illustrates the composition of the role group information which a controller holds. コントローラが保持するトラフィック情報を例示する図である。It is a figure which illustrates the traffic information which a controller holds. コントローラが保持するロールグループ間経由ネットワークファンクション情報の構成を例示する図である。FIG. 8 is a diagram illustrating an example of the configuration of inter-role group passing network function information held by the controller. コントローラが保持するネットワークファンクション情報の構成を例示する図である。It is a figure which illustrates the composition of the network function information which a controller holds. コントローラが保持する配備されるネットワークファンクション情報の構成を例示する図である。It is a figure which illustrates the structure of the network function information arrange | positioned which a controller hold | maintains. コントローラが保持するネットワークファンクションの転送ルール情報の構成を例示する図である。It is a figure which illustrates the composition of the transfer rule information of the network function which a controller holds. データ処理機能の配備構成変更時の動作概要を例示する概略図である。It is the schematic which illustrates the operation | movement outline at the time of the deployment structure change of a data processing function. データ処理機能の配備構成変更時の動作概要を例示する概略図である。It is the schematic which illustrates the operation | movement outline at the time of the deployment structure change of a data processing function. データ処理機能の配備構成変更時の動作概要を例示する概略図である。It is the schematic which illustrates the operation | movement outline at the time of the deployment structure change of a data processing function. ネットワーク制御システムのネットワーク構成最適化時における動作概要を例示するシーケンス図である。It is a sequence diagram which illustrates the operation | movement outline | summary at the time of network configuration optimization of a network control system. コントローラが通信経路、データ処理機能の位置情報を生成する際の動作概要を例示するチャート図である。It is a chart figure which illustrates the operation outline at the time of a controller generating position information on a communication path and a data processing function. コントローラが通信経路の制御情報を変更する際の動作概要を例示するチャート図である。FIG. 6 is a chart illustrating an operation outline when the controller changes control information of a communication path.

以下、図面を参照して実施の形態を詳細に説明する。   Hereinafter, embodiments will be described in detail with reference to the drawings.

本明細書における装置の位置関係(ネットワークの観点での距離)は、応答時間で定義される。即ち、二つの装置が近接、近傍、または、ネットワークの観点から近いとは、応答時間が小さいことを意味する。   The positional relationship of the devices in this specification (distance in terms of the network) is defined by the response time. That is, two devices being close, near, or close from a network point of view means that the response time is small.

なお、応答時間は、以下の2種類である。一つは、IPレイヤ(Layer3)において単一のパケットが送受信される時間(パケット応答時間)、即ち、通信遅延である。通信遅延は、例えば、RTT(Round Trip Time)等で表現される。   The response time is the following two types. One is a time (packet response time) in which a single packet is transmitted / received in the IP layer (Layer 3), that is, communication delay. The communication delay is expressed by, for example, RTT (Round Trip Time) or the like.

もう一つは、アプリケーションレイヤにおける一連の通信処理が行われる時間(あるデータ処理に関連する複数の通信パケットが送受信される時間)である。一連の通信処理が行われる時間とは、例えば、ユーザが画面の更新ボタンや実行ボタンを押してから、更新画面や実行結果が表示されるまでの時間である。アプリケーションレイヤにおける一連の通信処理が行われる時間は、データ転送時間と、サーバやユーザ端末におけるデータ処理時間と、で構成される。   The other is time when a series of communication processing in the application layer is performed (time when a plurality of communication packets related to a certain data processing are transmitted and received). The time during which the series of communication processing is performed is, for example, the time from when the user presses the update button or the execution button on the screen until the update screen or the execution result is displayed. The time in which a series of communication processing in the application layer is performed is constituted by data transfer time and data processing time in the server or user terminal.

本実施例のシステムではTCP通信を例に説明するが、このような場合、データ転送時間は、TCPスループットに反比例する。すなわち、ネットワーク観点の距離が遠い、とは、スループットが小さい、として表現可能である。   Although TCP communication is described as an example in the system of this embodiment, in such a case, data transfer time is inversely proportional to TCP throughput. That is, the fact that the distance from the network viewpoint is far can be expressed as small throughput.

図1は、本実施形態におけるネットワーク(NW)システムの物理構成を示すブロック図である。   FIG. 1 is a block diagram showing a physical configuration of a network (NW) system in the present embodiment.

第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内に配備されていてもよい。
The network control system according to the first embodiment includes a controller (Controller) 100, a network management device (Manager) 200, a network function (NW function) 400, a DNS (Domain Name System) 510, a router (Router) 520, and a load balancer ( LB: Load Balancer (530), server (Server) 540, FW (Firewall) 550, network switch (SW) 560, resource pool (Resource pool) 570, site (Site) 700 for storing the network functions and servers, data center It comprises a network (Network (NW)) 600 for connecting between each other and a terminal 620. .
Also, the network control system of the present embodiment may be implemented virtually. Moreover, although the controller 100 and the network management apparatus 200 are arrange | positioned out of the base 700, you may be arrange | positioned in any base 700. FIG.

コントローラ100は主にネットワークファンクション400を制御するための装置である。   The controller 100 is mainly an apparatus for controlling the network function 400.

ネットワーク管理装置200は、コントローラ100、ネットワークファンクション、DNS510、ルータ520、ロードバランサ530、サーバ540、FW550、ネットワークスイッチ560の状態を監視し、これらに設定された制御情報などを管理する。ネットワーク管理装置200には、画面表示及びシステム操作のインタフェースを、管理者等に提供する管理端末が接続可能である。   The network management device 200 monitors the states of the controller 100, network function, DNS 510, router 520, load balancer 530, server 540, FW 550, and network switch 560, and manages control information and the like set for them. The network management apparatus 200 can be connected to a management terminal that provides an administrator or the like with an interface for screen display and system operation.

ネットワーク管理装置200は、プロセッサ、通信装置(NIC:Network Interface Card等)、揮発性の記憶装置(DRAMなど)、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)、及び、管理モニタ等を備える計算機を用いて実現可能である。   The network management device 200 includes a processor, a communication device (NIC: Network Interface Card, etc.), a volatile storage device (DRAM, etc.), a non-volatile storage device (flash memory, hard disk drive, etc.), a management monitor, etc. It can be realized using a computer.

ネットワークファンクション400は主にパケットの転送に係る様々な処理を行う装置である。本実施例において、ネットワークファンクション400はパケットの転送処理に加え、負荷分散処理、ファイアフォール、IPSやルーティング、キャッシング、アクセラレーション等の機能(ミドルボックス機能、または、ミドルボックスという)を必要に応じて選択可能に備える。   The network function 400 is an apparatus that mainly performs various processes related to packet transfer. In this embodiment, in addition to packet transfer processing, the network function 400 performs load distribution processing, fire fall, functions such as IPS, routing, caching, acceleration, etc. (Middlebox function or Middlebox) as necessary. Prepare to be selectable.

ネットワークファンクション400の上記の各機能は、汎用のサーバにおいて上記の機能をもつソフトウェアを実行することによって実現される。このような技術は上述のNFVなどとして知られる既存技術によって実現される為、詳細は割愛する。   Each of the above functions of the network function 400 is realized by executing software having the above functions in a general-purpose server. Such a technology is implemented by the existing technology known as the above-mentioned NFV and the like, and therefore details will be omitted.

また、ネットワークファンクション400は、最初に配備されるときに全てのミドルボックス機能を必ずしも備えるわけではない為、リソースプール480を備える。   Also, since the network function 400 does not necessarily have all middle box functions when initially deployed, it comprises a resource pool 480.

パケットの転送処理以外の機能は、ネットワークファンクション400に備えられるのではなく、ネットワークファンクション400の外部に配備されてもよい。その場合は、ネットワークファンクション400が、外部の必要な機能を経由するようにパケットの転送を制御する。   The functions other than packet transfer processing may be provided outside the network function 400 rather than being provided to the network function 400. In that case, the network function 400 controls the transfer of packets so as to go through the necessary external functions.

ネットワークファンクション400は、プロセッサ、通信装置、揮発性の記憶装置(DRAMなど)、及び、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)等を備える計算機を用いて実現可能である。   The network function 400 can be realized using a computer including a processor, a communication device, a volatile storage device (DRAM or the like), a non-volatile storage device (flash memory, hard disk drive or the like), and the like.

DNS(Domain Name Server)510は、名前解決を行う。すなわち、URLを受信してURLに対応するIPアドレスを返す装置である。   A DNS (Domain Name Server) 510 performs name resolution. That is, it is an apparatus that receives a URL and returns an IP address corresponding to the URL.

DNS510は、プロセッサ、通信装置、揮発性の記憶装置(DRAMなど)、及び、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)等を備える計算機を用いて実現可能である。   The DNS 510 can be realized using a computer including a processor, a communication device, a volatile storage device (DRAM or the like), a non-volatile storage device (flash memory, hard disk drive or the like), and the like.

ルータ520は、ネットワーク600と拠点700間を繋ぐゲートウェイ装置である。ルータ520はルーティングの他に、プロトコル変換やNAT、ファイアフォール等の機能を備えてもよい。   The router 520 is a gateway device that connects the network 600 and the base 700. The router 520 may have functions such as protocol conversion, NAT, and fire fall in addition to routing.

ルータ520は、プロセッサ、通信装置、揮発性の記憶装置(DRAMなど)、及び、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)等を備える計算機を用いて実現可能である。   The router 520 can be realized using a computer including a processor, a communication device, a volatile storage device (such as DRAM), and a non-volatile storage device (such as a flash memory or a hard disk drive).

サーバ540はデータ処理機能等を動作させる為の計算資源であり、そのためのCPUやメモリ、ストレージを備える。なお、データ処理機能とは、データ処理を行うプログラムがあり、例えば、ウェブサーバやアプリケーションサーバ、DB(Data Base)サーバ等のプログラムが挙げられる。データ処理機能はVM(Virtual Machine)として実現されてもよい。   The server 540 is a computing resource for operating a data processing function and the like, and includes a CPU, a memory, and a storage therefor. The data processing function is a program that performs data processing, and examples include programs such as a web server, an application server, and a DB (Data Base) server. The data processing function may be realized as a VM (Virtual Machine).

サーバ540は、プロセッサ、通信装置、揮発性の記憶装置(DRAMなど)、及び、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)等を備える計算機を用いて実現可能である。   The server 540 can be realized using a computer including a processor, a communication device, a volatile storage device (such as DRAM), and a non-volatile storage device (such as a flash memory or a hard disk drive).

FW550は、レイヤ2やレイヤ3、レイヤ4等のヘッダを参照してアクセス拒否または許可を行うファイアフォールの機能を備える装置である。FW550は、プロセッサ、通信装置、揮発性の記憶装置(DRAMなど)、及び、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)等を備える計算機を用いる専用の装置として、あるいは、汎用のサーバ上に実現可能である。   The FW 550 is a device having a fire fall function of denying or permitting access with reference to the header of the layer 2, layer 3, layer 4 or the like. The FW 550 is a dedicated device using a computer including a processor, a communication device, a volatile storage device (such as DRAM), and a non-volatile storage device (such as a flash memory or a hard disk drive), or on a general-purpose server Is feasible.

スイッチ560はレイヤ2でスイッチングを行うレイヤ3スイッチである。   The switch 560 is a layer 3 switch that performs switching at layer 2.

リソースプール570はネットワークファンクション、あるいは、ネットワークファンクションが備える機能の一部(ロードバランサ530やFW550等のミドルボックス機能)をネットワークファンクション400の外側に機能単体として配備するため、あるいは、サーバ540を配備する為の余剰の計算資源である。   The resource pool 570 deploys the network function or a part of the functions of the network function (middlebox functions such as the load balancer 530 and FW 550) outside the network function 400 as a single function, or deploys the server 540. It is a surplus computing resource for

計算資源とは、演算処理(CPU)やメモリ、ストレージを備えるサーバであり、余剰の計算資源とは、演算処理能力とメモリとストレージが利用されていない、または、他のデータ処理のために確保されていないサーバである。   A computing resource is a server with computing processing (CPU), memory, and storage, and surplus computing resources are not used for computing processing capacity, memory and storage, or reserved for other data processing It is not a server.

なお、リソースプール570をネットワークファンクション400に割り当てる場合には、リソースプール480の分も含めて計算資源を割り当てる。   When the resource pool 570 is allocated to the network function 400, calculation resources are allocated including the resource pool 480.

拠点700は、上記機器を収納する施設である。拠点700の例として、データセンタ、企業のオフィス、店舗等が挙げられる。なお、本実施例では、上記のような拠点700間の通信を例に記載するが、拠点間ではなく、ラック間の通信であっても、データセンタを複数に分けた管理エリアであってもよい。すなわち、拠点700は、ラック、管理エリアとみなしてもよい。   The base 700 is a facility that houses the above-described devices. Examples of bases 700 include data centers, corporate offices, stores, and the like. In the present embodiment, communication between the bases 700 as described above is described as an example, but even if it is communication between racks instead of between bases, even if it is a management area in which a data center is divided into a plurality of data centers. Good. That is, the base 700 may be regarded as a rack or a management area.

ネットワーク600は、拠点700間やコントローラ100、ネットワーク管理装置200を繋ぐネットワークである。ネットワーク600は広域網、またはLAN(Local Area Network)である。広域網の例として、ISP網(Internet Service Provider網)、専用線、広域イーサ等が挙げられる。   The network 600 is a network that connects between the bases 700, the controller 100, and the network management apparatus 200. The network 600 is a wide area network or a LAN (Local Area Network). Examples of wide area networks include ISP networks (Internet Service Provider networks), dedicated lines, and wide area Ethernet.

端末620はサーバに配備されたデータ処理機能にデータ処理を要求するエンドユーザが使用する装置であり、例えば、パーソナルコンピュータやタブレットなどが挙げられる。   The terminal 620 is a device used by an end user who requests data processing to a data processing function provided in the server, and examples thereof include a personal computer and a tablet.

端末620はプロセッサ、通信装置、揮発性の記憶装置(DRAMなど)、及び、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)等を備える計算機を用いて実現可能である。   The terminal 620 can be realized using a computer including a processor, a communication device, a volatile storage device (such as DRAM), and a non-volatile storage device (such as a flash memory or a hard disk drive).

図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においても同様である。   FIG. 2 is a block diagram showing the logical configuration of the network control system in this embodiment. The LAN 610 is a network that connects network functions such as load balancers and FWs and servers. The LANs 610-1, 610-3, and 610-5 are connected to the network function 400-1, but the LANs 610-1, 610-3, and 610-5 are not communicably connected to each other via the network function 400-1. The same applies to the LANs 610-2, 610-4, and 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)である)。   The network switch 560 described in FIG. 1 is omitted because it is not a component in the logical network in layer 3. For example, the LAN 610-1 corresponds to a link in which the load balancer 503, the server 540-1, the server 540-2, and the network function 400-1 in FIG. 1 connect the SW 560-1. Note that these links in FIG. 1 correspond to the plurality of LANs in FIG. 2 (that is, the LAN is a virtual LAN (for example, VLAN: Virtual Local Area Network)).

図3は、本実施形態におけるネットワーク制御装置(コントローラ)の構成例を示すブロック図である。   FIG. 3 is a block diagram showing a configuration example of the network control device (controller) in the present embodiment.

コントローラ100は、通信IF235、サービス受付部240、データ記憶部270、及び、制御処理部210を備える。   The controller 100 includes a communication IF 235, a service reception unit 240, a data storage unit 270, and a control processing unit 210.

コントローラ100は、プロセッサ、通信装置、揮発性の記憶装置(DRAMなど)、及び、不揮発性の記憶装置(フラッシュメモリ、ハードディスクドライブなど)等を備える計算機を用いて実現可能である。   The controller 100 can be realized using a computer including a processor, a communication device, a volatile storage device (DRAM or the like), a non-volatile storage device (flash memory, hard disk drive or the like), and the like.

通信IF235は、直接あるいはEMS(Element Management System)を介して、ネットワークファンクション400に、一連の複数のパケットで構成されるトラフィックを設定、削除、又は変更する。また、通信IF235は、ネットワークファンクション400が保持する情報を送信する指示を含むメッセージを、ネットワークファンクション400に送信する。そして、情報を含むメッセージをネットワークファンクション400から受信する。   The communication IF 235 sets, deletes, or changes traffic composed of a series of plural packets in the network function 400 directly or via an EMS (Element Management System). The communication IF 235 also transmits a message including an instruction to transmit information held by the network function 400 to the network function 400. Then, a message including information is received from the network function 400.

データ記憶部270は、制御処理部210によって管理され、値を参照されたり、値を更新されたりする。データ記憶部270は、コントローラ100に備わる不揮発性の記憶装置等に構築される。データ記憶部270は、構成情報記憶部275、トラフィック情報記憶部280、ネットワークファンクション情報記憶部290、ロールグループ情報記憶部295を備える。   The data storage unit 270 is managed by the control processing unit 210, and the value is referred to or updated. The data storage unit 270 is constructed in a non-volatile storage device or the like provided in the controller 100. The data storage unit 270 includes a configuration information storage unit 275, a traffic information storage unit 280, a network function information storage unit 290, and a role group information storage unit 295.

以下にデータ記憶部270が保持する情報を示す。   The information held by the data storage unit 270 is shown below.

構成情報記憶部275は、データ処理機能の位置情報やネットワークトポロジ情報等を保持する記憶部である。トラフィック情報記憶部280は、トラフィックの情報、及び、ネットワークファンクションの制御情報を保持する記憶部である。ネットワークファンクション情報記憶部290はネットワークファンクションの情報、及び、新規に配備するネットワークファンクションの情報を保持する記憶部である。ロールグループ情報記憶部295はロールグループに関する情報、及び、ロールグループ間の通信パケットが経由するネットワークファンクションに関する情報を保持する記憶部である。   The configuration information storage unit 275 is a storage unit that holds position information of the data processing function, network topology information, and the like. The traffic information storage unit 280 is a storage unit that holds information on traffic and control information on network functions. The network function information storage unit 290 is a storage unit that holds information on network functions and information on network functions to be newly deployed. The role group information storage unit 295 is a storage unit that holds information on role groups and information on network functions through which communication packets between the role groups pass.

ロールグループとは、機能的に等価、すなわち同等の入力(パケットのレイヤ4より下位レイヤのヘッダを除くと値が同じであるパケット)に対して同等の出力(パケットのレイヤ4より下位レイヤのヘッダを除くと値が同じであるパケット)を返すデータ処理機能の集合を表す。   Role groups are functionally equivalent, ie, equivalent outputs (packets that have the same value except for the layer lower than layer 4 of the packet) Header (layer lower than layer 4 of the packet) Represents a set of data processing functions that return a packet whose value is the same except for.

サービス受付部240は、コントローラ100に接続される管理端末の操作画面等を介して、トラフィックの通信経路やロールグループ間の通信経路が経由するネットワークファンクションを表示する為や、更に上位のコントローラから制御する為のノースバンドインタフェースである。   The service accepting unit 240 controls to display a network function through which a communication path of traffic and a communication path between role groups pass, via an operation screen of a management terminal connected to the controller 100, or control from a higher-order controller It is a north band interface for

制御処理部210は、データ記憶部270に保持される値を参照し、各トラフィックの宛先と経路を計算し、計算された各トラフィックの経路制御をネットワークファンクション400に指示する。制御処理部210は、トラフィック制御機能215、ネットワークファンクション管理220、ロールグループ管理225、及び、ネットワーク構成管理230等の機能を含む。   The control processing unit 210 refers to the value held in the data storage unit 270, calculates the destination and path of each traffic, and instructs the network function 400 to control the path of each calculated traffic. The control processing unit 210 includes functions such as a traffic control function 215, a network function management 220, a role group management 225, and a network configuration management 230.

トラフィック制御機能215は、ネットワークファンクション400におけるパケット転送先やパケットヘッダの書き換えなどの経路制御を行い、及び、その他のネットワークファンクションにおけるパケット処理方法を計算する。ネットワークファンクション管理220はネットワークファンクション400の状態を管理する。ロールグループ管理225は機能的に等価なデータ処理機能を管理する。ネットワーク構成管理230は物理的なネットワーク構成や論理的なネットワーク構成を管理する。   The traffic control function 215 performs route control such as packet transfer destination in the network function 400 and rewriting of a packet header, and calculates packet processing methods in other network functions. Network function management 220 manages the state of network function 400. Role group management 225 manages functionally equivalent data processing functions. Network configuration management 230 manages physical network configuration and logical network configuration.

すなわち、制御処理部210に含まれる機能は、コントローラ100に備わる不揮発性の記憶装置に保持されたプログラムが、プロセッサによって揮発性の記憶装置において実行されることによって、実現される。またこれらのプログラムは、あらかじめ不揮発性記憶装置に格納されていてもよいし、ネットワークを介してまたは可搬型記憶媒体を介して外部装置から導入されても良い。   That is, the functions included in the control processing unit 210 are realized by the program held in the non-volatile storage device provided in the controller 100 being executed by the processor in the volatile storage device. These programs may be stored in advance in a non-volatile storage device, or may be introduced from an external device via a network or a portable storage medium.

図4については、後述する。   FIG. 4 will be described later.

図5は、ロールグループ情報テーブル3000を示す説明図である。   FIG. 5 is an explanatory view of the role group information table 3000. As shown in FIG.

ロールグループ情報テーブル3000は、ロールグループ情報記憶部295によって管理され、図12のシーケンス2150、及び、シーケンス2200においてDNSやロードバランサに設定された情報と物理ネットワーク構成情報に基づいて生成される。
ロールグループ情報テーブル3000は、仮想ネットワーク識別子、ロールグループ識別子、データ処理機能の位置、仮想化プロトコル、仮想化識別子、データ処理機能アドレスなどの属性のいずれか一つ以上を含む。
The role group information table 3000 is managed by the role group information storage unit 295, and is generated based on the information set in the DNS and the load balancer in the sequence 2150 and the sequence 2200 in FIG. 12 and physical network configuration information.
The role group information table 3000 includes one or more of attributes such as a virtual network identifier, a role group identifier, a position of a data processing function, a virtualization protocol, a virtualization identifier, and a data processing function address.

仮想ネットワーク識別子は、仮想ネットワークの識別子を示す。仮想ネットワークとは、物理的なネットワークにオーバーレイされた仮想的なネットワークであり、サーバ間やデータセンタ間を繋ぐ物理的なネットワーク構成に影響されない構成をとることができる。仮想ネットワークの実現方法として、VxLANやMPLS−TP、NvGREなどのプロトコルがある。   The virtual network identifier indicates an identifier of a virtual network. A virtual network is a virtual network overlaid on a physical network, and can be configured without being influenced by the physical network configuration that connects servers and data centers. As a method of realizing a virtual network, there are protocols such as VxLAN, MPLS-TP, and NvGRE.

仮想ネットワークは、異なるプロトコルで実現される複数のドメイン(例えば、MPLS−TPのネットワークやVxLANのネットワーク、VLANのネットワークなど)に跨って構成されてもよい。即ち、データ処理機能が、VxLANとVLANといった複数ドメインに跨って分散配置されており、これらのデータ処理機能が互いに通信可能でなければならないものである場合(例えば、同じアプリケーションシステムのウェブサーバやDBサーバである場合)、VxLANのある仮想化識別子(VNI)で仮想化されるネットワークとVLANのある仮想化識別子(VLANタグ)で仮想化されるネットワークに対して一つの仮想ネットワーク識別子が割り当てられる。   The virtual network may be configured across a plurality of domains (for example, an MPLS-TP network, a Vx LAN network, a VLAN network, etc.) implemented by different protocols. That is, when the data processing functions are distributed and arranged across multiple domains such as VxLAN and VLAN, and these data processing functions must be able to communicate with each other (for example, a web server or DB of the same application system) If it is a server), one virtual network identifier is assigned to a network virtualized by a certain virtualization identifier (VNI) of VxLAN and a network virtualized by a certain virtualization identifier (VLAN tag) of VLAN.

データ処理機能識別子とは、データ処理機能の識別子である。機能的に等価なデータ処理が複数存在する場合、それぞれ異なる識別子が割り当てられる。   The data processing function identifier is an identifier of the data processing function. If there are multiple functionally equivalent data processes, different identifiers are assigned to each.

ロールグループ識別子とは、ロールグループの識別子である。ロールグループとは、上述の通り、機能的に等価、すなわち同等の入力に対して同等の出力を返すデータ処理機能の集合を表す。例えば、同一アプリケーションにおいて負荷分散を目的に複数のWebフロントエンド(Webサーバ等)や複数のバックエンド(DBサーバ等)が存在する場合、これらのWebフロントエンド、バックエンドにはそれぞれ一意のロールグループ識別子が割り当てられる。   The role group identifier is an identifier of a role group. A role group, as described above, represents a set of data processing functions that return functionally equivalent, ie, equivalent outputs, for equivalent inputs. For example, when there are multiple Web front ends (Web servers etc.) and multiple back ends (DB servers etc.) for load distribution in the same application, each of these Web front ends and back ends is a unique role group. An identifier is assigned.

データ処理機能の位置とは、当該の行のデータ処理機能識別子のネットワークの観点における位置を表す。本実施例においては、データ処理機能の位置を近接するネットワークファンクションの識別子で表す。データ処理機能の位置はネットワークファンクションの代わりに、スイッチやルータ等で表されてもよい。   The position of the data processing function represents the position in the network of the data processing function identifier of the relevant row. In this embodiment, the position of the data processing function is represented by the identifier of the adjacent network function. The position of the data processing function may be represented by a switch or a router instead of the network function.

仮想化プロトコルは仮想ネットワークを実現するプロトコルである。例えば、VxLAN、MPLS−TP、PBB−TE、NvGREなどが挙げられる。
仮想化識別子は仮想化プロトコルにおいて用いられるタグやラベル名を示す。
データ処理機能アドレスは、データ処理機能のIPアドレスを示す。
A virtualization protocol is a protocol that implements a virtual network. For example, VxLAN, MPLS-TP, PBB-TE, NvGRE and the like can be mentioned.
The virtualization identifier indicates the tag or label name used in the virtualization protocol.
The data processing function address indicates the IP address of the data processing function.

ロールグループ情報テーブル3000を管理することによって、同等の処理を行うことが可能なデータ処理機能のうち、近傍のデータ処理機能にパケットを転送する為の仮想化プロトコルやそのタグやラベル名、宛先IPアドレスを把握し、当該データ処理機能にパケットを転送することが可能になる。これによって、近傍のデータ処理機能にパケットを転送して処理することができ、通信遅延が削減され、また遠隔のデータ処理機能とを繋ぐ広域網等のネットワークの通信帯域の消費量を削減することが可能になる。   Among data processing functions capable of performing equivalent processing by managing the role group information table 3000, a virtualization protocol for transferring a packet to a nearby data processing function, its tag or label name, destination IP It becomes possible to grasp the address and transfer the packet to the data processing function. As a result, packets can be transferred to and processed by nearby data processing functions, communication delay is reduced, and the amount of communication bandwidth consumed by networks such as wide area networks connecting with remote data processing functions is reduced. Becomes possible.

図6は、トラフィック情報テーブル3100を示す説明図である。   FIG. 6 is an explanatory diagram of the traffic information table 3100.

トラフィック情報テーブル3100は、データ処理機能、または、端末620に送受信されるトラフィックの情報であり、トラフィックの制御状態や経路を変更するトラフィックを把握する為に用いる。トラフィック情報記憶部280によって管理され、図12のシーケンス2250などにおいて生成される。
トラフィック情報テーブル3100は、トラフィック識別子、送信元アドレス、送信先アドレス、経由ネットワークファンクション識別子、経由ノード識別子、変更後送信元アドレス、変更後送信先アドレス、経路変更ネットワークファンクション識別子、変更後経由ネットワークファンクション、及び、変更後経由ノード識別子などの属性のいずれか一つ以上を含む。
The traffic information table 3100 is data processing function or information of traffic transmitted to and received from the terminal 620, and is used to grasp traffic control state and traffic for changing a route. It is managed by the traffic information storage unit 280, and is generated in the sequence 2250 of FIG.
The traffic information table 3100 includes a traffic identifier, a transmission source address, a transmission destination address, a transit network function identifier, a transit node identifier, a transmission source address after change, a transmission destination address after change, a path change network function identifier, a transmission change network function after change, And one or more of attributes such as a transit node identifier after change.

トラフィック識別子とはトラフィックの識別子である。
送信元アドレスとはトラフィックの送信元であるデータ処理機能や端末620のIPアドレスやMACアドレスである。
送信先アドレスとはトラフィックの送信先であるデータ処理機能や端末620のIPアドレスやMACアドレスである。
経由ネットワークファンクション識別子とはトラフィックが経由するネットワークファンクション400の識別子である。
経由ノード種別とは、経由するネットワークファンクション400以外のネットワークファンクションの種類である。
経由ノード識別子とは、経由するネットワークファンクション400以外のルータ520、DNS510、スイッチ560、FW550、ロードバランサ530などの識別子である。
変更後送信元アドレスとは、ネットワークファンクション400において経路を変更された場合の変更後のトラフィックの送信元のデータ処理機能や端末620のIPアドレスやMACアドレスである。
変更後送信先アドレスとはネットワークファンクション400において経路を変更された場合の変更後のトラフィックの送信先のデータ処理機能や端末620のIPアドレスやMACアドレスである。
経路変更後ネットワークファンクション識別子とはトラフィックの経路を変更しているネットワークファンクション400の識別子である。
経路変更後ノード識別子とはトラフィックの経路を変更しているノードの識別子である。
The traffic identifier is an identifier of traffic.
The transmission source address is the data processing function that is the transmission source of the traffic or the IP address or MAC address of the terminal 620.
The transmission destination address is an IP address or MAC address of the data processing function or the terminal 620 which is the transmission destination of the traffic.
The transit network function identifier is an identifier of the network function 400 through which traffic passes.
The via node type is a type of network function other than the via network function 400.
The transit node identifier is an identifier of a router 520 other than the network function 400 via which it passes, a DNS 510, a switch 560, an FW 550, a load balancer 530, and the like.
The post-change transmission source address is the data processing function of the transmission source of the post-change traffic when the path is changed in the network function 400 or the IP address or MAC address of the terminal 620.
The post-change transmission destination address is the data processing function of the transmission destination of the traffic after the change when the route is changed in the network function 400, or the IP address or MAC address of the terminal 620.
The post-route change network function identifier is an identifier of the network function 400 changing the route of traffic.
The post-route change node identifier is an identifier of a node that is changing the route of traffic.

図7はロールグループ間経由ネットワークファンクション情報テーブル3200を示す説明図である。ロールグループ間経由ネットワークファンクション情報テーブル3200は、ロールグループ情報記憶部295によって管理され、ネットワーク管理装置200を介して管理者によって生成される。
ロールグループ間経由ネットワークファンクション情報テーブル3200は、送信元ロールグループ識別子、送信先ロールグループ識別子、経由ネットワークファンクショングループ、及び、経由ネットワークファンクション識別子などの属性のいずれか一つ以上を含む。送信元ロールグループ識別子と送信先ロールグループ識別子は、それぞれトラフィックの送信元と送信先のロールグループの識別子を示す。
FIG. 7 is an explanatory view of the inter-role group passing network function information table 3200. As shown in FIG. The inter-role group passing network function information table 3200 is managed by the role group information storage unit 295, and is generated by the administrator via the network management apparatus 200.
The inter-role group passing network function information table 3200 includes at least one of attributes such as a transmission source role group identifier, a transmission destination role group identifier, a passing network function group, and a passing network function identifier. The source role group identifier and the destination role group identifier respectively indicate the identifiers of the source and destination role groups of the traffic.

経由ネットワークファンクショングループとは、上記トラフィックが経由する、機能的に等価なネットワークファンクションのグループである。経由ネットワークファンクショングループは、例えば、ネットワークファンクションの種類である。ネットワークファンクションの種類には、ファイアフォールファンクション、IPSファンクション、ルーティングファンクション、ロードバランシングファンクション、DPIファンクション、キャッシングファンクション、アクセラレーティングファンクションなどである。図4の説明においてこれらのファンクションを説明する。   The transit network function group is a group of functionally equivalent network functions through which the traffic passes. The transit network function group is, for example, a type of network function. Types of network functions include fire fall function, IPS function, routing function, load balancing function, DPI function, caching function, accelerating function and the like. These functions are described in the description of FIG.

経由ネットワークファンクションにはゼロ個以上のネットワークファンクションが含まれる。経由ネットワークファンクション識別子とは、上記トラフィックが経由するネットワークファンクションの識別子を示す。経由ネットワークファンクション識別子は、同一の経由ネットワークファンクショングループのネットワークファンクションが複数存在する場合に、どのネットワークファンクションを経由するかを一意に表す。   The via network function includes zero or more network functions. The transit network function identifier indicates an identifier of a network function through which the traffic passes. The passing network function identifier uniquely indicates which network function is to be passed when there are a plurality of network functions of the same passing network function group.

ロールグループ間経由ネットワークファンクション情報3200を管理することによって、トラフィックの経路を局所化するように経路変更する際に、経由すべきネットワークファンクションの種類を把握することができる。   By managing the inter-role group passing network function information 3200, it is possible to grasp the type of the network function to be passed when changing the route so as to localize the traffic route.

図8はネットワークファンクション情報テーブル3300を示す説明図である。
ネットワークファンクション情報テーブル3300は、ネットワークファンクション情報記憶部290によって管理され、ネットワーク管理装置200を介して管理者によって生成され、図12のシーケンス2290において更新される。
FIG. 8 is an explanatory view showing the network function information table 3300. As shown in FIG.
The network function information table 3300 is managed by the network function information storage unit 290, is generated by the administrator via the network management apparatus 200, and is updated in the sequence 2290 of FIG.

ネットワークファンクション情報テーブル3300はネットワークファンクション識別子、ネットワークファンクショングループ、ネットワークファンクションの位置、ネットワークファンクションの状態、ネットワークファンクションのアドレス、冗長化構成、耐バースト性、ディカプセル化、RSFG(Risk Shared Function Group)などの属性のいずれか一つ以上を含む。   Network function information table 3300 includes network function identifier, network function group, position of network function, status of network function, address of network function, redundancy configuration, burst resistance, decapsulation, RSFC (risk shared function group), etc. Contains one or more of the attributes.

なお、ネットワークファンクション情報テーブル3300のNWファンクション識別子には、装置であるミドルボックス(ロードバランサ530、ルータ520、DNS510、ファイアフォール550)の識別子が含まれてもよい。   The NW function identifier of the network function information table 3300 may include an identifier of a middle box (load balancer 530, router 520, DNS 510, fire fall 550) which is an apparatus.

本テーブルの用途の一つは、あるネットワークファンクション400を経由するトラフィックを、ネットワークの観点で近傍であり、かつ機能的に等価な、他のネットワークファンクション400を経由する通信経路に切り替える際に、どのネットワークファンクション400が機能的に等価であるかを判断することにある。ミドルボックスの識別子が本テーブルのNWファンクション識別子に含まれることによって、上記と同様に、あるミドルボックスを経由するトラフィックを、ネットワークの観点で近傍であり、かつ機能的に等価なミドルボックス、または、ネットワークの観点で近傍であり、かつ機能的に等価なネットワークファンクション400を経由する通信経路に切り替える際に、どのネットワークファンクション400が機能的に等価であるかを判断することが可能になる。   One of the uses of this table is to switch traffic via one network function 400 to a communication path via another network function 400 that is close in terms of the network and functionally equivalent. It is to determine whether the network functions 400 are functionally equivalent. Similarly to the above, by including the identifier of the middle box in the NW function identifier of this table, the traffic passing through a certain middle box is close to the network and is functionally equivalent to the middle box, or When switching to a communication path that is nearby from the viewpoint of the network and that passes through the functionally equivalent network function 400, it is possible to determine which network function 400 is functionally equivalent.

ネットワークファンクション識別子は、ネットワークファンクションの識別子を示す。ネットワークファンクショングループは、機能的に等価なネットワークファンクションのグループである。ネットワークファンクショングループは例えば、ネットワークファンクションの種類とその設定情報が同じであるグループを表す。図中においては、見易さを目的にネットワークファンクションの種類のみを記載しているが、実際には、同じようにパケットを処理するために、ネットワークファンクションの設定情報も同一であるものが同じグループとして管理される。例えば、FW(ファイアフォール)に関しては、設定情報に応じて、FW1、FW2などのように管理される。ネットワークファンクション、及び、ネットワークファンクションの種類に関しては図7において説明したとおりである。   The network function identifier indicates an identifier of the network function. A network function group is a group of functionally equivalent network functions. The network function group represents, for example, a group in which the type of network function and its setting information are the same. In the figure, only the types of network functions are described for the purpose of easy viewing, but in fact, in order to process packets in the same manner, the same group of network function setting information is also the same Managed as For example, FW (fire fall) is managed as FW 1, FW 2, etc., according to the setting information. The network functions and the types of network functions are as described in FIG.

ネットワークファンクションの位置とは、当該の行のネットワークファンクション識別子のネットワークの観点における位置を表す。本実施例においては、ネットワークファンクションの位置を近接するネットワークファンクションの識別子で表す。ネットワークファンクションの位置はネットワークファンクションの代わりに、スイッチやルータ等で表されてもよい。ネットワークファンクションの状態とはネットワークファンクションの稼動状態や負荷状態の観点から、利用可能か否かをあらわす状態情報である。ネットワークファンクションのアドレスはネットワークファンクションのIPアドレスを表す。   The position of the network function represents the position in the network view of the network function identifier of the line concerned. In this embodiment, the position of the network function is represented by the identifier of the adjacent network function. The position of the network function may be represented by a switch or a router instead of the network function. The state of the network function is state information indicating whether or not it can be used from the viewpoint of the operating state or the load state of the network function. The address of the network function represents the IP address of the network function.

冗長化構成はネットワークファンクションが冗長化構成になっているか否かを示し、即ち、信頼性の高さを示す。ネットワークファンクション毎に冗長化構成情報を持つことによって、同一のネットワークファンクショングループに属するネットワークファンクションが複数存在する場合に、高い信頼性を要求するネットワーク構成最適化要求、または新規の通信経路設定を受けた際に、高信頼なネットワークファンクションを選択することができる。   The redundant configuration indicates whether the network function is in a redundant configuration, that is, indicates the degree of reliability. By having redundant configuration information for each network function, when there are multiple network functions belonging to the same network function group, a network configuration optimization request requiring high reliability or a new communication path setting is received. In this case, a reliable network function can be selected.

耐バースト性はネットワークファンクションに流れるトラフィックが急激に増加した際にスケールアップすることによって、その通信量増加に対応可能か否かを示す。ネットワークファンクション毎に冗長化構成情報を持つことによって、同一のネットワークファンクショングループに属するネットワークファンクションが複数存在する場合に、耐バースト性を要求するネットワーク構成最適化要求、または新規の通信経路設定 を受けた際に、スケールアップ可能なネットワークファンクションを選択することができる。これによって、バースト的にトラフィック量が増加した際に他のトラフィックの性能劣化を防ぐことが可能になる。   Burst resistance indicates whether it is possible to cope with the increase in the amount of traffic by scaling up when traffic flowing to the network function increases rapidly. By having redundant configuration information for each network function, when there are multiple network functions belonging to the same network function group, a network configuration optimization request requiring burst resistance or a new communication path setting is received. In this case, it is possible to select a network function that can be scaled up. This makes it possible to prevent the performance degradation of other traffic when the traffic volume increases bursty.

ディカプセル化はネットワークファンクションを経由する際にパケットヘッダのカプセル化部分を除く、即ち、ディカプセル化する必要があるか、否かを示す。パケットヘッダのカプセル化部分とは、トンネリングプロトコルであるVxLANヘッダやMPLS(Multi Protocol Label Switching)のヘッダ、または、L2(Layer2)オーバーL3(Layer3)のヘッダなどである。これは、ディカプセル化の要否はカプセル化した状態で、ネットワークファンクションがパケットを処理可能か否かを判断できるようにするためである。ディカプセル化の情報を備えることによって、カプセル化のみによって通信経路を変更して経路変更する方法とパケットの送信先アドレスや送信元アドレスなどを変更して通信経路を変更する方法のどちらができよう可能かを判断することができる。   Decapsulation indicates whether or not the encapsulation part of the packet header needs to be removed, ie, decapsulated, when passing through the network function. The encapsulation part of the packet header is, for example, a VxLAN header which is a tunneling protocol, a header of Multi Protocol Label Switching (MPLS), or a header of L2 (Layer 2) over L3 (Layer 3). This is to make it possible to determine whether the network function can process a packet in a state of being encapsulated, in the case where encapsulation is necessary. By providing information of decapsulation, it is possible to change the communication route by changing the communication route only by encapsulation, or to change the communication route by changing the transmission destination address or the transmission source address of the packet. It can be judged.

RSFGとは、物理障害や性能障害が発生した際に同様の影響を受けるもの集合を示す。これは例えば、同じサーバ上に仮想アプライアンスとして構築された複数のネットワークファンクションが存在する場合に、当該サーバの障害が発生した際にこれらのネットワークファンクションが障害状態になることを示す。RSFGを保持することによって、現用系と予備系のネットワークファンクションを異なるRSFGに属するものを選択することによって現用毛と予備系の両方が同時に障害断になるリスクを抑えることができる。   RSFG refers to a set that is similarly affected when a physical failure or performance failure occurs. This indicates that, for example, when there are a plurality of network functions configured as virtual appliances on the same server, these network functions will be in a failure state when a failure of the server occurs. By holding the RSFG, it is possible to suppress the risk that both the active hair and the spare system will fail simultaneously by selecting the network functions of the working system and the spare system that belong to different RSFGs.

なお、本実施例においては冗長化構成、耐バースト性、ディカプセル化、RSFGは管理者によって入力されているものとするが、これらの値はサーバ管理やミドルボックス(ネットワークファンクション)の管理装置から受け取ってもよい。   In this embodiment, the redundant configuration, the burst resistance, the decapsulation, and the RSFG are input by the administrator, but these values can be obtained from the server management or the management apparatus of the middle box (network function). You may receive it.

ネットワークファンクション情報3300を管理することによって、利用可能な最寄りのネットワークファンクションを把握することが可能になる。これによって、遠隔のネットワークファンクションを経由している場合に最寄りのネットワークファンクションを経由する判断を行うことが可能になる。   By managing the network function information 3300, it is possible to grasp the nearest network function available. This makes it possible to make a decision via the nearest network function when it is via a remote network function.

図9は配備するネットワークファンクション情報テーブル3400を示す説明図である。配備するネットワークファンクション情報テーブル3400は、ネットワークファンクション情報記憶部290によって管理され、図12のシーケンス2250において生成される。
配備するネットワークファンクション情報テーブル3400は配備するネットワークファンクション識別子、配備するネットワークファンクショングループ、設定を複製するネットワークファンクション識別子、配備先のリソースプール、配備するネットワークファンクションのアドレスなどの属性のいずれか一つ以上を含む。
FIG. 9 is an explanatory view showing a network function information table 3400 to be deployed. The network function information table 3400 to be deployed is managed by the network function information storage unit 290, and is generated in the sequence 2250 of FIG.
The deployed network function information table 3400 includes at least one of attributes such as deployed network function identifier, deployed network function group, deployed network function identifier, deployed resource pool, and deployed network function address. Including.

配備するネットワークファンクション識別子は、新たに配備するネットワークファンクションの識別子を示す。配備するネットワークファンクショングループは配備するネットワークファンクションの機能的に等価なグループであり、例えば、ネットワークファンクションの機能の種類を示す。設定を複製するネットワークファンクション識別子は新しく配備するネットワークファンクションに設定する内容を配備済みのネットワークファンクションの設定情報から生成する場合に、設定情報の複製元となるネットワークファンクションの識別子を示す。配備するネットワークファンクションのアドレスはネットワークファンクションのIPアドレスを示す。   The deployed network function identifier indicates an identifier of a newly deployed network function. The deployed network function group is a functionally equivalent group of deployed network functions, and indicates, for example, types of network function functions. The network function identifier for copying the setting indicates the identifier of the network function that is the copy source of the setting information when the content to be set for the newly deployed network function is generated from the setting information of the deployed network function. The address of the network function to be deployed indicates the IP address of the network function.

図10はネットワークファンクションの転送ルール情報テーブル3500を示す説明図である。ネットワークファンクションの転送ルール情報テーブル3500は、トラフィック情報記憶部280によって管理され、図12のシーケンス2250において生成される。   FIG. 10 is an explanatory view showing the transfer rule information table 3500 of the network function. The transfer rule information table 3500 of the network function is managed by the traffic information storage unit 280, and is generated in the sequence 2250 of FIG.

ネットワークファンクションの転送ルール情報テーブル3500は制御対象トラフィック情報(ルール)と制御内容情報(アクション)を含む。
制御対象トラフィック情報には、ネットワークファンクション識別子、入力元IF、送信元仮想化識別子、送信元アドレス、送信先アドレスなどの属性のいずれか一つ以上が含まれる。制御対象トラフィック情報は、制御対象とするトラフィックの条件が含まれる。この条件に合致するトラフィックに対して制御内容情報に記載される転送処理を行う。
ネットワークファンクション識別子はネットワークファンクションの識別子である。入力元IFとはネットワークファンクションがトラフィック(パケット)を受信するインタフェースの識別子である。送信元仮想化識別子とはネットワークファンクションが受信するトラフィックのヘッダに記載される仮想化の識別子であり、例えば、VxLANのタグ(VNI)やMPLSラベルなどである。送信元アドレスとはネットワークファンクションが受信するトラフィックのヘッダに記載される送信元のIPアドレスである。
The transfer rule information table 3500 of the network function includes control target traffic information (rules) and control content information (action).
The control target traffic information includes at least one of attributes such as a network function identifier, an input source IF, a transmission source virtualization identifier, a transmission source address, and a transmission destination address. The control target traffic information includes the conditions of the traffic to be controlled. The transfer processing described in the control content information is performed on the traffic matching the condition.
The network function identifier is an identifier of the network function. The input source IF is an identifier of an interface through which the network function receives traffic (packets). The transmission source virtualization identifier is a virtualization identifier written in the header of the traffic received by the network function, and is, for example, a tag (VNI) of VxLAN or an MPLS label. The source address is the IP address of the source described in the header of the traffic received by the network function.

制御内容情報には、送信先仮想化識別子、出力送信元アドレス、出力送信先アドレスなどの属性のいずれか一つ以上が含まれる。
送信先仮想化識別子とはネットワークファンクションが送信するトラフィックのヘッダに記載する仮想化の識別子である。出力送信元アドレスは、ネットワークファンクションが送信するトラフィックのヘッダに記載する送信元のIPアドレスである。出力送信先アドレスは、ネットワークファンクションが送信するトラフィックのヘッダに記載する送信先のIPアドレスである。出力IFはネットワークファンクションがトラフィックを送信するインタフェースである。なお、送信元アドレス、送信先アドレス、出力送信元アドレス、出力送信先アドレスはIPアドレスの他にMACアドレス、L4ポート番号を含んでもよい。
The control content information includes one or more of attributes such as a transmission destination virtualization identifier, an output transmission source address, and an output transmission destination address.
The destination virtualization identifier is an identifier of virtualization described in the header of the traffic transmitted by the network function. The output source address is the IP address of the source described in the header of the traffic transmitted by the network function. The output destination address is the IP address of the destination described in the header of the traffic transmitted by the network function. An output IF is an interface through which a network function transmits traffic. The transmission source address, the transmission destination address, the output transmission source address, and the output transmission destination address may include a MAC address and an L4 port number in addition to the IP address.

図3の説明に戻る。   It returns to the explanation of FIG.

図4は、本実施形態におけるネットワークファンクションの構成例を示すブロック図である。   FIG. 4 is a block diagram showing a configuration example of a network function in the present embodiment.

ネットワークファンクション400は、必要に応じて配備される以下の機能を含んで構成される。
すなわち、ファイアフォールファンクション410、IPSファンクション420、ルーティングファンクション430、ロードバランシングファンクション440、DPIファンクション450、キャッシングファンクション460、及び、アクセラレーティングファンクション470を含んで構成される。
The network function 400 is configured to include the following functions that are deployed as needed.
That is, it includes a fire fall function 410, an IPS function 420, a routing function 430, a load balancing function 440, a DPI function 450, a caching function 460, and an accelerating function 470.

ネットワークファンクション400は、そのほか、スイッチングファンクション490と、上記ファンクションを配備する為のリソースプール480を含む。   The network function 400 further includes a switching function 490 and a resource pool 480 for deploying the function.

スイッチングファンクション490とは、2種類の役割を担う。一つはネットワークファンクション400と外部のサーバやルータ等との間で転送処理を行う一般的なネットワークスイッチとしての役割である。もう一つは、ネットワークファンクション400内の各ファンクション間において転送処理を行う内部スイッチとしての役割である。なお、スイッチングファンクション490は、転送処理に加え、優先制御や帯域制御、廃棄制御等の一般的なネットワークスイッチが担う機能を備えてもよい。   The switching function 490 plays two roles. One is a role as a general network switch that performs transfer processing between the network function 400 and an external server or router. The other is a role as an internal switch that performs transfer processing between each function in the network function 400. In addition to the transfer processing, the switching function 490 may have a function of general network switches such as priority control, band control, and discard control.

ファイアフォールファンクション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は上記ファンクションを配備する為の計算資源である。
The fire fall function 410 has a general fire fall function. The IPS function 420 has a general Intrusion Prevention System (IPS) function of detecting an intrusion and then preventing the attack.
The routing function 430 comprises general routing functionality. The load balancing function 440 includes a layer 2 load balancing function, a layer 3 load balancing function, and a layer 7 load balancing function. The DPI function 450 has a function of DPI (Deep Packet Inspection) that analyzes the packet header and payload. The caching function 460 has a function of caching packets. The accelerating function 470 has a function of a wide area network (WAN) accelerator that improves congestion control of TCP communication. Also, the resource pool 480 is a computational resource for deploying the above functions.

図11は本実施形態においてデータ処理機能の配備構成変更時の動作概要を例示する概略図である。本概略図においては、ネットワークファンクション400の転送処理以外の機能(FW550)はネットワークファンクション400の外部に含まれる構成を示すが、内部に含まれてもよい。また、本事例においてはFWを追加する事例であるが、WANアクセラレータやファイアフォール等の他の機能の場合においても同様である。   FIG. 11 is a schematic view illustrating the outline of the operation at the time of changing the deployment configuration of the data processing function in the present embodiment. In the schematic view, functions (FW 550) other than the transfer processing of the network function 400 are shown as being included outside the network function 400, but may be included inside. Also, in this case, the FW is added, but the same applies to other functions such as WAN accelerator and firewall.

図11においては、データ処理機能であるVM(App)が移動し、また、データ処理機能であるVM(DB)が複製された場合にトラフィックの経路やネットワークファンクションの配備箇所がどのように変更されるかを例示する。図11は説明の便宜上、擬似的な論理構成を示しているが、これは図2と同様である。なお、トラフィックは端末から送信されてVM(App)に到達するトラフィック、及び、VM(App)から送信されてVM(DB)に到達するトラフィックであり、それぞれ矢印で示す。   In FIG. 11, when the data processing function VM (App) is moved, and when the data processing function VM (DB) is replicated, the traffic route and the deployment location of the network function are changed. Illustrate. FIG. 11 shows a pseudo logic configuration for convenience of explanation, but this is the same as FIG. Traffic is traffic that is transmitted from a terminal and reaches a VM (App) and traffic that is transmitted from a VM (App) and reaches a VM (DB), and is indicated by arrows.

なお、本概略図においては、見易さ向上の目的で、ネットワークファンクション400−1と400−2間のトンネルを直線的に記載したが、上記トンネルは実際にはルータ520−1、ネットワーク600、ルータ520−2を経由する。   In the schematic diagram, the tunnel between the network functions 400-1 and 400-2 is described linearly for the purpose of improving the visibility, but the tunnel is actually the router 520-1, the network 600, Via router 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)へ到達する。   State 1 shown in FIG. 11A represents a state before the data processing functions VM (App) and VM (DB) are moved or copied. Communication when the terminal 620 uses the VM (App) passes through the router 600 via the network 600 and reaches the VM (App) via the load balancer 530 load balancer 530-1. Communication from VM (App) to VM (DB) reaches VM (DB) via FW 550-1.

図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)は複製後に削除、または、停止されてもよい。また、データ処理機能の移動や複製は管理装置の処理によって、または、データ処理機能の運用管理者の指示と操作によって手動で行われる。   In state 2 shown in FIG. 11B, the VM (App) moves from the server 540-1, 540-2 to the server 540-3, 540-4, and the VM (DB) moves from the server 540-6 to the server. The state after being replicated at 540-5 is shown. In addition, when VM (DB) is not used in base 700-a of FIG. 1, it may be moved instead of duplication (ie, VM (DB) in server 540-6 is deleted or stopped after duplication. Also, migration and copying of the data processing function are performed manually by the processing of the management apparatus or by the instruction and operation of the operation manager of the data processing function.

コントローラ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を経由する経路である。   When the traffic control function 215 of the controller 100 detects the movement of the VM (App), the traffic control function 215 determines that the LAN 1 connecting the server 540-1 and the server 540-2 and the LAN 1 connecting the server 540-3 and the server 540-4. Between the network function 400-1 and the network function 400-2 by a tunnel. Similarly, a traffic control function 215 connects between the LANs 2 by a tunnel. The communication path of the tunnel connecting the network function 400-1 and the network function 400-2 is the network function 400-1, the switch 560-1, the router 520-1, the network 600, and the router 520 shown in FIG. 2 is a path via the switch 560-2 and the network function 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)が移動したと判断する。   The movement detection method is shown below. The network control function 400-1 notifies the traffic control function 215 of the controller 100 of packet header information of packets such as ARP transmitted by the VM (App) before movement by the packet-in method or the like. Obtains the IP address and MAC address of the VM (App) and the VLAN, and after the traffic control function 215 of the controller 100 moves the VM (App), the VM (App) is notified by the network function 400-2 in the same manner. Know the IP address and MAC address of When the IP address and the MAC address notified from the network function 400-1 and the network function 400-2 are the same, it is determined that the VM (App) is the same, and it is determined that the VM (App) has moved.

このように、本システムでは、複数のネットワークファンクション400が学習したヘッダ情報(送信元アドレスや送信先アドレス、VLANタグ等の情報)をコントローラ100のトラフィック制御215が一元管理し、コントローラ100のトラフィック制御215が、異なるネットワークファンクション400が学習したヘッダに同一のものがあるか比較する。   As described above, in the present system, the traffic control 215 of the controller 100 centrally manages header information (information such as a transmission source address, a transmission destination address, and a VLAN tag) learned by a plurality of network functions 400. 215 compares whether there is an identical header in which the different network functions 400 have learned.

なお、パケットインのメカニズムは、未知のヘッダを備えるパケットが到達した際にそのパケットのヘッダの情報をコントローラに通知するが、一度学習したパケットについては再送信しない。その為、本システムにおいて、パケットインを利用して通知する場合には、ある時間間隔で学習した内容を消去する仕組みを備えることが望ましい。なお、ある時間間隔とは一定の間隔、または、該当するヘッダを備えるパケットをネットワークファンクション400が最後に受信してから、経過したある規定された時間間隔である。   The packet-in mechanism notifies the controller of the information of the header of the packet when the packet having the unknown header arrives, but does not retransmit the packet once learned. Therefore, in the present system, when notifying using packet-in, it is desirable to have a mechanism for deleting the contents learned at certain time intervals. Note that a certain time interval is a fixed time interval or a prescribed time interval that has elapsed since the network function 400 last received a packet having a corresponding header.

その判断方法を更に述べると、ネットワークファンクション400がコントローラ100のトラフィック制御機能215に通知するパケットのヘッダ情報に基づいて、トラフィック情報記憶部280が管理するトラフィック識別子、送信元アドレス、送信先アドレス、経由ネットワークファンクション識別子を保存する。トラフィック識別子には一意に決定される任意の値をコントローラ100が割り当てる。ネットワークファンクション400がトラフィックの制御方法が規定されていないトラフィックを受信すると、前述の通りネットワークファンクション400のスイッチングファンクション490がコントローラ100のトラフィック制御機能215にパケットのヘッダ情報を通知する。その際、トラフィック制御機能215が通知されたヘッダ情報の送信元アドレスと送信先アドレスが、トラフィック情報テーブル3100の送信元アドレスと送信先アドレスと同一でかつ、経由ネットワークファンクション識別子が上記通知を送信したネットワークファンクション400の識別子と異なる場合に、データ処理機能が移動したと判定する。これによって、データ処理機能の移動を検知することが可能になる。   To further describe the determination method, based on the header information of the packet that the network function 400 notifies the traffic control function 215 of the controller 100, a traffic identifier managed by the traffic information storage unit 280, a transmission source address, a transmission destination address, Save the network function identifier. The controller 100 assigns an arbitrary value uniquely determined to the traffic identifier. When the network function 400 receives traffic whose traffic control method is not defined, the switching function 490 of the network function 400 notifies the traffic control function 215 of the controller 100 of packet header information as described above. At that time, the transmission source address and transmission destination address of the header information notified by the traffic control function 215 are the same as the transmission source address and transmission destination address of the traffic information table 3100 and the transit network function identifier transmitted the above notification. When it is different from the identifier of the network function 400, it is determined that the data processing function has moved. This makes it possible to detect the movement of the data processing function.

従来のレイヤ2やレイヤ3のスイッチやルータは、自身が転送処理するパケットの送信元アドレスや送信先アドレス、VLANタグ等のヘッダ情報を異なるスイッチ間や異なるルータ間で交換してそれらの情報を共有しない為、あるスイッチが、自身が把握していないヘッダを備えるパケットを受信した際に、次の判断ができない。   Conventional Layer 2 and Layer 3 switches and routers exchange header information such as source and destination addresses of packets forwarded by itself, such as VLAN tags, between different switches or between different routers, and exchange those information. When a switch receives a packet with a header that it does not know, it can not make the next decision because it does not share it.

その判断とは、受信したパケットの送信元アドレスのデータ処理機能が異なるスイッチやルータに接続されたサーバから移動したのか、または、新しく配備されたのかのどちらであるかを判断することである。また、移動したと判断できたとしても、どのスイッチやルータに接続されたサーバからそのデータ処理機能が移動したのかを判断できない為、移動前のネットワークの論理構成(レイヤ2やレイヤ3の接続構成やVLANタグ番号)を把握することができない。その結果、移動前のネットワークの論理構成を維持するように、通信経路を制御することができない。   The determination is to determine whether the data processing function of the source address of the received packet has moved from a server connected to a different switch or router or is newly deployed. Also, even if it can be determined that it has moved, it can not be determined from which server connected to which switch or router the data processing function has moved, so the logical configuration of the network before the movement (connection configuration of layer 2 or layer 3 And VLAN tag numbers) can not be grasped. As a result, the communication path can not be controlled to maintain the logical configuration of the network before movement.

一方で、本システムでは、複数のネットワークファンクション400が学習したヘッダ情報(送信元アドレスや送信先アドレス、VLANタグ等の情報)をコントローラ100のトラフィック制御215が一元管理し、コントローラ100のトラフィック制御215が、異なるネットワークファンクション400が学習したヘッダに同一のものがあるか比較するために、上記判断が可能になる。   On the other hand, in the present system, the traffic control 215 of the controller 100 centrally manages header information (information such as a transmission source address, a transmission destination address, and a VLAN tag) learned by a plurality of network functions 400. However, the above judgment can be made to compare whether there is an identical header in which different network functions 400 have learned.

端末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)へ到達する。   Communication from the terminal 620 to the VM (App) is via the network 600 via the router 520-1, and reaches the LAN 1 via the load balancer 530-1. Since the left and right LANs 1 are transparently connected by tunneling, the packet that has reached the LAN 1 reaches the VM (App) that has moved to the server 540-4. Similarly, communication from VM (App) to VM (DB) reaches LAN 2 on the left side via the tunnel between network functions 400-1 and 400-2 via LAN 2 on the right side, and FW 550-1 To reach VM (DB) via

図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に変更した状態を表す。   In state 3 shown in FIG. 11C, the controller 100 recognizes that the role groups of the VMs (DBs) deployed in the server 540-6 and the server 540-5 are identical, that is, functionally equivalent. , The destination of traffic from VM (App) to VM (DB) is changed to VM (DB) deployed from server 540-6 to server 540-5, and between VM (App) and VM (DB) Since there is no FW on the right side through which the traffic of (1) traffic passes, the FW 550-2 is deployed and the FW passed via is changed from FW 550-1 to FW 550-2.

これによって、VM(App)からVM(DB)へのトラフィックが局所化される。トラフィックが局所化されるとは、例えば、ネットワーク600を経由しないということである。これによって、ネットワーク600を経由することによって生じる通信遅延の増加やTCPスループットの低下を回避することができる。また、ネットワーク600における性能障害がアプリケーションシステム(特に、最も性能障害の影響を受けるVM(App)とVM(DB)間のI/O性能)への影響を軽減することが可能になる。   This localizes traffic from VM (App) to VM (DB). Localizing traffic means, for example, not passing through the network 600. This can avoid an increase in communication delay and a decrease in TCP throughput caused by passing through the network 600. Also, the performance failure in the network 600 can reduce the impact on the application system (in particular, the I / O performance between the VM (App) and the VM (DB) most affected by the performance failure).

状態3における動作概要を図12、図13、図14を用いて更に詳細に述べる。   The outline of the operation in the state 3 will be described in more detail with reference to FIG. 12, FIG. 13 and FIG.

図12は本実施形態においてネットワーク制御システムのネットワーク構成最適化時における動作概要を例示するシーケンス図である。本シーケンス図においては、図11の状態2において、ネットワーク管理装置200がコントローラ100に対してネットワーク構成最適化要求を送信した場合に、状態3に移行する動作概要を示す。   FIG. 12 is a sequence diagram illustrating an outline of operation at the time of network configuration optimization of the network control system in the present embodiment. This sequence diagram shows an outline of the operation of transitioning to state 3 when the network management apparatus 200 transmits a network configuration optimization request to the controller 100 in the state 2 of FIG.

シーケンス2110においてコントローラ100のネットワーク構成管理230が、通信IF235を介して隣接ノード構成情報をネットワークファンクション400から取得する。ここで隣接ノードとは、ネットワークファンクション400がレイヤ3ネットワークで隣接するサーバ540やサーバ上のデータ処理機能ルータ520、DNS510、FW550等の識別子である。なお、識別子とは、例えば、IPアドレスやMACアドレス等で隣接ノードが一意に決定される値である。   In sequence 2110, the network configuration management 230 of the controller 100 acquires adjacent node configuration information from the network function 400 via the communication IF 235. Here, the adjacent node is an identifier of the server 540 in which the network function 400 is adjacent in the layer 3 network, the data processing function router 520 on the server, the DNS 510, the FW 550, and the like. Here, the identifier is, for example, a value by which an adjacent node is uniquely determined by an IP address, a MAC address, or the like.

シーケンス2120においてコントローラ100のサービス受付部240がネットワーク管理装置200からネットワーク構成最適化要求2120を受信する。ネットワーク構成最適化要求には、ロールグループ間経由ネットワーク情報3200とネットワークファンクション情報3300、仮想ネットワーク識別子の一覧、データ処理機能の識別子の一覧、及び、仮想化プロトコルの一覧、仮想化識別子の一覧、及び、データ処理機能のアドレスの一覧が含まれる。なお、全てのトラフィックを最適化するのではなく、一部のトラフィックを指定して最適化する場合には、送信元ロールグループと送信先ロールグループなどトラフィックを特定する情報が含まれていてもよい。   In sequence 2120, the service reception unit 240 of the controller 100 receives the network configuration optimization request 2120 from the network management apparatus 200. The network configuration optimization request includes inter-role group transit network information 3200 and network function information 3300, a list of virtual network identifiers, a list of identifiers of data processing functions, a list of virtualization protocols, a list of virtualization identifiers, and , Contains a list of data processing function addresses. In addition, when not optimizing all traffic but specifying and optimizing some traffic, information for specifying traffic such as a source role group and a destination role group may be included. .

シーケンス2150においてコントローラ100のネットワーク構成管理230がシーケンス2120において受信した仮想ネットワーク識別子、データ処理機能の識別子、仮想化プロトコル、仮想化識別子、及び、データ処理機能のアドレスを、それぞれロールグループ情報3000の仮想ネットワーク識別子、データ処理機能識別子、仮想化プロトコル、仮想化識別子、及び、データ処理機能アドレスに追加する。次に、シーケンス2120において把握されたアドレスのうち、ローカルグループ情報3000に記載されたデータ処理機能アドレスに一致するアドレスを、シーケンス2120において送信したネットワークファンクション400の識別子をデータ処理機能の位置の同じ行に追加する。   The virtual network identifier, the identifier of the data processing function, the virtualization protocol, the virtualization identifier, and the address of the data processing function received by the network configuration management 230 of the controller 100 in the sequence 2150 in sequence 2150 It is added to the network identifier, data processing function identifier, virtualization protocol, virtualization identifier, and data processing function address. Next, among the addresses grasped in the sequence 2120, the identifier of the network function 400 transmitted in the sequence 2120 is the same row of the position of the data processing function as the address matching the data processing function address described in the local group information 3000. Add to

シーケンス2160においてコントローラ100のロールグループ管理225がDNS510に対して名前解決情報要求を送信し、名前解決情報を参照する。具体的には、DNSに設定された名前解決の情報、即ち、URIとIPアドレスの対応付けなどを把握する。   In sequence 2160, the role group management 225 of the controller 100 sends a name resolution information request to the DNS 510 and refers to the name resolution information. Specifically, information on name resolution set in DNS, that is, correspondence between URI and IP address, etc. is grasped.

シーケンス2170においてコントローラ100のロールグループ管理225がDNS510から名前解決情報を取得する。   In sequence 2170, the role group management 225 of the controller 100 acquires name resolution information from the DNS 510.

シーケンス2180においてコントローラ100のロールグループ管理225がロードバランサ530に対して負荷分散情報要求2180を送信する。具体的には、負荷分散の設定情報を把握する。   In sequence 2180, the role group management 225 of the controller 100 transmits the load distribution information request 2180 to the load balancer 530. Specifically, the setting information of load distribution is grasped.

シーケンス2190においてコントローラ100のロールグループ管理225がロードバランサ530から負荷分散情報を取得する。   In sequence 2190, the role group management 225 of the controller 100 acquires load distribution information from the load balancer 530.

シーケンス2200において、コントローラのロールグループ管理225がロールグループ情報を生成し、ロールグループ情報テーブル3000に追記する。図13を用いてその手順を説明する。   In sequence 2200, the role group management 225 of the controller generates role group information and adds it to the role group information table 3000. The procedure will be described with reference to FIG.

ステップ3110において、ロールグループ管理225がシーケンス2170において取得した名前解決情報のうち、DNSラウンドロビンなどによって同一のURIに対して複数のIPアドレスを応答することによってデータ処理やパケット処理を振分けられているIPアドレスを、機能的に等価な、データ処理機能またはネットワークファンクションまたはミドルボックス、のIPアドレスとして把握する。また、当該情報を取得したDNS510が属する仮想ネットワーク識別子を把握する。   In step 3110, data processing and packet processing are distributed by replying a plurality of IP addresses to the same URI by DNS round robin or the like among the name resolution information acquired by the role group management 225 in the sequence 2170. The IP address is understood as an IP address of a functionally equivalent data processing function or network function or middle box. Also, the virtual network identifier to which the DNS 510 that has acquired the information belongs belongs.

ステップ3120において、ロールグループ管理225がシーケンス2190において把握された負荷分散情報のうち、同じバーチャルサーバに対応するプールメンバのIPアドレスを、機能的に等価な、データ処理機能またはネットワークファンクションまたはミドルボックス、のIPアドレスとして把握する。また、当該情報を取得したロードバランサ530が属する仮想ネットワーク識別子を把握する。   In step 3120, of the load distribution information obtained by the role group management 225 in the sequence 2190, the IP addresses of the pool members corresponding to the same virtual server are functionally equivalent data processing functions or network functions or middleboxes, Understand as the IP address of. Also, the virtual network identifier to which the load balancer 530 that has acquired the information belongs is grasped.

ステップ3130において、ロールグループ管理225がステップ3110と3120において把握した、機能的に等価な複数のデータ処理機能のアドレスを同一のロールグループのアドレスとして、ステップ3110と3120において把握した仮想ネットワーク識別子と紐付けて管理する。   In step 3130, the virtual network identifier and string identified in steps 3110 and 3120 are the addresses of a plurality of functionally equivalent data processing functions identified by role group management 225 in steps 3110 and 3120 as the same role group address. Manage.

ステップ3140において、ロールグループ管理225が、ロールグループ情報テーブル3000において仮想ネットワーク識別子が、ステップ3130において把握された仮想ネットワーク識別子と同一である行(複数ある場合は複数行)を把握する。次に、当該行のデータ処理機能アドレスが、ステップ3130で把握された一つのロールグループに属する複数のアドレスに含まれるいずれかと一致する行を「同じロールグループに属するデータ処理機能のエントリ」として把握する。
更に、当該行(同じロールグループに属するデータ処理機能のエントリ)において、ロールグループ識別子が一意になるように(すなわち、他の行で使用されていない)ユニークな値を記入する。既に当該行(同じロールグループに属するデータ処理機能のエントリ)のうちのあるエントリにおいて、ロールグループ識別子に値が記入されている場合、いずれかの値に統一してもよい。ステップ3130で把握されたロールグループが複数存在する場合、本ステップの手順を、把握されたロールグループに対して、繰り返し行う。
In step 3140, the role group management 225 grasps a line (a plurality of lines if there are a plurality) in the role group information table 3000 where the virtual network identifier is the same as the virtual network identifier grasped in step 3130. Next, a row in which the data processing function address of the corresponding row matches any one of a plurality of addresses belonging to one of the role groups identified in step 3130 is recognized as “an entry of data processing functions belonging to the same role group” Do.
Furthermore, in the row (the entry of data processing functions belonging to the same role group), a unique value is entered so that the role group identifier is unique (that is, not used in other rows). When a value is entered in the role group identifier in an entry of the row (an entry of the data processing function belonging to the same role group), the value may be unified to any value. If there are a plurality of role groups identified in step 3130, the procedure of this step is repeated for the identified role groups.

ステップ3150において、ロールグループ管理225がロールグループ間経由ネットワークファンクション情報3200を参照して送信元ロールグループ識別子と送信先ロールグループ識別子、経由ネットワークファンクショングループ、及び経由ネットワークファンクション識別子を把握する。ロールグループ情報3000のロールグループグループ識別子が把握された送信元ロールグループ識別子、及び、送信先ロールグループ識別子と同じであるデータ処理機能識別子をそれぞれ、送信元データ処理機能識別子、及び、送信先データ処理機能識別子として把握する。トラフィック情報テーブル3100の送信元アドレスが送信元データ処理機能識別子と同じであり、送信先アドレスが送信先データ処理機能識別子と同一である行の経由ノード種別と経由ノード識別子に上記で把握された経由ネットワークファンクショングループと経由ネットワークファンクション識別子を追加する。   In step 3150, the role group management 225 refers to the inter-role group network function information 3200 to grasp the source role group identifier, the destination role group identifier, the route network function group, and the route network function identifier. Transmission source role group identifier in which role group group identifier of role group information 3000 is known, and data processing function identifier identical to transmission destination role group identifier, respectively transmission source data processing function identifier, transmission destination data processing Understand as a function identifier. The source address of the traffic information table 3100 is the same as the source data processing function identifier, and the destination address is the same as the destination data processing function identifier. Add network function group and transit network function identifier.

以上が図13の説明である。これによってロールグループ情報が生成される。図12の説明に戻る。   The above is the description of FIG. This generates role group information. It returns to the explanation of FIG.

シーケンス2230においてサービス受付部240がロールグループ間経由ネットワークファンクション情報要求をネットワーク管理装置200に対して送信する。   In sequence 2230, the service reception unit 240 transmits an inter-role group passing network function information request to the network management apparatus 200.

シーケンス2240においてサービス受付部240がネットワーク管理装置200からロールグループ間経由ネットワークファンクション情報3200を受信する。   In sequence 2240, the service accepting unit 240 receives inter-role group passing network function information 3200 from the network management device 200.

シーケンス2250においてコントローラ100が経路制御変更情報、及び、配備ネットワークファンクション情報を生成する。本シーケンスにおける手順を図14を用いて説明する。   In sequence 2250, the controller 100 generates routing control change information and deployment network function information. The procedure in this sequence will be described with reference to FIG.

ステップ3310において、トラフィック制御機能215が、経路を変更するトラフィックを特定する。経路を変更するトラフィックは例えば、以下の2種類である。   At step 3310, the traffic control function 215 identifies the traffic to change the route. The traffic for changing the route is, for example, the following two types.

一つはトラフィックの送信先アドレスのロールグループと同じロールグループに属するアドレスが送信先アドレスよりも近傍に存在するトラフィックである。
この場合、トラフィック制御機能215がトラフィック情報3100の送信元アドレスと送信先アドレスを参照する。
送信元アドレスと送信先アドレスのそれぞれに対して、ロールグループ情報3000のデータ処理機能アドレスと同じである行のロールグループ識別子とデータ処理機能の位置を、送信元ロールグループ識別子と送信元データ処理機能の位置、及び、送信先ロールグループ識別子と送信先データ処理機能の位置として把握する。ロールグループ識別子が送信先ロールグループ識別子と同じである行のうち、データ処理機能の位置が送信先データ処理機能の位置に比べて送信元データ処理機能の位置にネットワークの観点から近い行のデータ処理機能識別子、及び、データ処理機能アドレスを近傍データ処理機能識別子、及び、近傍データ処理機能アドレスとして把握する。なお、条件に当てはまる近傍データ処理機能識別子が複数計算された場合、もっとも送信元データ処理機能の位置に近い行を選択するものとする。
One is traffic in which an address belonging to the same role group as the role group of the destination address of traffic is present in the vicinity of the destination address.
In this case, the traffic control function 215 refers to the source address and the destination address of the traffic information 3100.
For each of the source address and destination address, the role group identifier of the same row as the data processing function address of the role group information 3000 and the position of the data processing function, the source role group identifier and the transmission source data processing function And the position of the transmission destination role group identifier and the transmission destination data processing function. Among the rows in which the role group identifier is the same as the destination role group identifier, the data processing of the row closer to the location of the source data processing function than the location of the destination data processing function is The function identifier and the data processing function address are grasped as the near data processing function identifier and the near data processing function address. When a plurality of proximity data processing function identifiers that satisfy the conditions are calculated, it is assumed that the line closest to the position of the transmission source data processing function is selected.

上記判断においてデータ処理機能の位置関係を把握する必要があるが、データ処理機能が元のデータ処理機能より近いことを判断する方法は、例えば、データ処理機能iを経由するようにトラフィックの通信経路を変更した場合の応答時間Tiが、元々トラフィックが経由しているデータ処理機能oを経由する場合の応答時間Tからある値α(α≧0)を引いた値よりも小さい(Ti<T−α)かを比較し、小さい場合にデータ処理機能iが元のデータ処理機能oよりも近いと判断する。複数のデータ処理機能が該当する場合は、最も小さい応答時間Tiを持つデータ処理機能iをもっとも送信元データ処理機能の位置に近いと判断する。 In the above judgment, it is necessary to grasp the positional relationship of the data processing function, but the method of judging that the data processing function is closer than the original data processing function is, for example, the communication path of traffic as passing through the data processing function i. Is smaller than a value obtained by subtracting a certain value α (α 機能 0) from the response time T 0 when the data passes through the data processing function o through which traffic originally passes (Ti <T o-.alpha.) or to compare the data processing function i is determined to be closer than the original data processing functions o is smaller. When a plurality of data processing functions correspond, it is determined that the data processing function i having the smallest response time Ti is closest to the position of the transmission source data processing function.

なお、応答時間の把握方法としては、例えば、RTT(Round Trip Time)などをPingなどの既存技術で把握する、または、データを送信するのに要する時間からTCPスループットを計測する既存技術によって把握することが可能なため、説明を割愛する。以上の方法によって近傍データ処理機能識別子が計算されたトラフィックを、経路を変更するトラフィックとして把握する。   In addition, as a method of grasping response time, for example, grasping RTT (Round Trip Time) etc. by the existing technology such as Ping or grasping it by the existing technology measuring TCP throughput from time required to transmit data I will omit the explanation because it is possible. The traffic for which the proximity data processing function identifier is calculated by the above method is grasped as the traffic for changing the route.

もう一つはトラフィックが経由するネットワークファンクション400に経由ノードと同一の種類の機能が配備されている、または、配備するために十分な計算資源がリソースプール480に存在するトラフィックである。   The other is traffic in which the same type of function as that of the transit node is deployed in the network function 400 through which traffic passes, or in which sufficient computational resources exist in the resource pool 480 for deployment.

具体的に述べると、トラフィック制御機能215がトラフィック情報3100の送信元アドレスと送信先アドレスを参照する。送信元アドレスと送信先アドレスのそれぞれが、トラフィック情報3100の送信元アドレスと送信先アドレスと同じである行の経由ノード種別、及び、経由ネットワークファンクション識別子を把握する。   Specifically, the traffic control function 215 refers to the source address and the destination address of the traffic information 3100. Each of the source address and the destination address grasps the via node type in the line where the source address and the destination address of the traffic information 3100 are the same, and the via network function identifier.

ネットワークファンクション情報3300のネットワークファンクション識別子が把握された経由ネットワークファンクション識別子と同一であり、かつ、ネットワークファンクショングループが把握された経由ネットワークファンクショングループと同じである場合はネットワークファンクション400に経由ノードと同一の種類の機能が配備されていると判断する。   If the network function identifier of the network function information 3300 is the same as the via network function identifier recognized and the same as the via network function group the network function group is recognized, the same type as the via node in the network function 400 Judge that the function of is deployed.

また、ネットワークファンクション情報3300のネットワークファンクション識別子が把握された経由ネットワークファンクション識別子と同一であるネットワークファンクションのリソースプールに経由ネットワークファンクションを配備できるだけの計算資源がある場合は、配備するために十分な計算資源がリソースプール480に存在するトラフィックとして判断する。   Also, if there are enough computing resources to deploy the via network function in the resource pool of the network function that is identical to the via network function identifier whose network function identifier of the network function information 3300 is known, sufficient computing resources for deployment Are determined as traffic existing in the resource pool 480.

ステップ3330において、ロールグループ管理225が経路変更対象のトラフィックの経由ネットワークファンクションを把握する。具体的には、トラフィック情報テーブル3100において上記で把握されたトラフィックの行の経由ネットワークファンクション識別子を把握する。   At step 3330, the role group management 225 grasps the transit network function of the traffic to be rerouted. Specifically, the transit network function identifier of the line of traffic grasped above in the traffic information table 3100 is grasped.

ステップ3340において、ネットワーク構成管理230が、経由ネットワークファンクションが論理的に近傍な位置に存在するかを確認する。   In step 3340, the network configuration management 230 checks if the transit network function exists in a logical proximity.

具体的には、ネットワーク構成管理215がトラフィック情報3100の送信元アドレスと送信先アドレスを参照する。送信元アドレスと送信先アドレスのそれぞれが、トラフィック情報3100の送信元アドレスと送信先アドレスと同じである行の経由ノード種別、及び、経由ネットワークファンクション識別子を把握する。   Specifically, the network configuration management 215 refers to the source address and the destination address of the traffic information 3100. Each of the source address and the destination address grasps the via node type in the line where the source address and the destination address of the traffic information 3100 are the same, and the via network function identifier.

ネットワークファンクション情報3300のネットワークファンクション識別子が把握された経由ネットワークファンクション識別子と同一であり、かつ、ネットワークファンクショングループが把握された経由ネットワークファンクショングループと同じである場合はネットワークファンクション400に経由ノードと同一の種類の機能が配備されていると判断する。更に、ネットワーク構成管理230が、ネットワークの観点から元々トラフィックが経由する、ステップ3330において把握されたネットワークファンクション、すなわちネットワークファンクション400またはミドルボックス、に比べて、本ステップで把握されたネットワークファンクション400が論理的に近傍である場合には、ネットワークの観点でより近傍な位置にネットワークファンクションが存在すると判断する。   If the network function identifier of the network function information 3300 is the same as the via network function identifier recognized and the same as the via network function group the network function group is recognized, the same type as the via node in the network function 400 Judge that the function of is deployed. Furthermore, compared with the network function grasped in step 3330, ie, the network function 400 or the middle box, in which the network configuration management 230 originally passes traffic from the viewpoint of the network, the network function 400 grasped in this step is logically In the case of being closely adjacent, it is determined that the network function exists at a closer position in terms of the network.

なお、上記において、ネットワークファンクション情報3300のネットワークファンクション識別子が把握された経由ネットワークファンクション識別子と同一である代わりに、ネットワークファンクション情報3300のネットワークファンクション識別子が把握された経由ネットワークファンクションの近傍のネットワークファンクションの識別子と同一であってもよい。   In the above, instead of being the same as the via network function identifier of which the network function identifier of the network function information 3300 is known, an identifier of a network function in the vicinity of the via network function of which the network function identifier of the network function information 3300 is known. And may be identical to

ネットワークファンクションが近傍であることの判断方法に関してはステップ3310に示したデータ処理機能の場合と同様であるが、以下に簡単に説明する。   The method of determining that the network function is in the vicinity is the same as in the case of the data processing function shown in step 3310, but will be briefly described below.

ネットワークファンクション400が、トラフィックが元々経由するネットワークファンクションより近いことを判断する方法は、例えば、ネットワークファンクションi(ミドルボックスでもよい)を経由するようにトラフィックの通信経路を変更した場合の応答時間Tiが、元々(経路変更する前に)トラフィックが経由しているネットワークファンクションo(ミドルボックスでもよい)を経由する場合の応答時間Tからある値α(α≧0)を引いた値よりも小さい(Ti<T−α)かを比較し、小さい場合にネットワークファンクションiが元のネットワークファンクションoよりも近いと判断する。複数のネットワークファンクションが該当する場合は、最も小さい応答時間Tiを持つデータ処理機能iをもっとも近傍にあるネットワークファンクションであると判断する。 The method for determining that the network function 400 is closer to the network function through which traffic is originally transmitted is, for example, the response time Ti when the communication path of the traffic is changed so as to go through the network function i (or middle box). The response time T 0 when traffic passes through the network function o (may be a middle box) through which traffic is originally passed (before rerouting) is smaller than a value obtained by subtracting a value α (α (0) from the response time T 0 ( compares Ti <T o -α), the network function i is determined to closer than the original network function o is smaller. When a plurality of network functions correspond, it is determined that the data processing function i having the smallest response time Ti is the closest network function.

存在する場合にはステップ3360に進む。存在しない場合にはステップ3350に進む。   If it exists, the process proceeds to step 3360. If it does not exist, the process proceeds to step 3350.

なお、アプリケーションの要件として、冗長化構成、耐バースト性が指定されている場合には、ネットワークファンクション情報3300の識別子が把握された経由ネットワークファンクションである行のうち、冗長化構成、耐バースト性の値が有となっている行を選択した後に、近傍のネットワークファンクションを計算する。   When redundancy configuration and burst resistance are specified as requirements of the application, the redundancy configuration and burst resistance can be selected among the rows which are the via network functions for which the identifier of the network function information 3300 is known. After selecting a row that has a value, calculate the network function of the neighborhood.

ステップ3350において、ネットワークファンクション管理220が近傍に存在しないネットワークファンクションを把握して、ネットワークの観点で近傍にあり、かつ配備可能な位置(リソースプール570)を把握し、また、配備するネットワークファンクションへの設定情報を把握する。配備可能な位置はステップ3310において把握された経由ネットワークファンクションにもっとも近いネットワークファンクション400のうち、配備に必要な計算資源(CPUの処理性能とメモリなど)がリソースプールに存在するネットワークファンクションである。ネットワークファンクション管理220は、本ステップで把握したリソースプール570にネットワークファンクションを配備する。また、ネットワークファンクション管理220は、配備したネットワークファンクションが、トラフィックが元々経由していたネットワークファンクション400と同じ処理を行うことができるように、本ステップにおいて把握した設定情報を、本ステップで配備したネットワークファンクション400に設定する。   In step 3350, the network function management 220 grasps the network function which is not present in the vicinity, grasps the position (resource pool 570) which is in the vicinity and deployable from the viewpoint of the network, and Understand setting information. The deployable position is a network function in which, among the network functions 400 closest to the via network function grasped in step 3310, the computational resources (CPU processing performance, memory, etc.) necessary for deployment exist in the resource pool. The network function management 220 deploys the network function in the resource pool 570 grasped in this step. In addition, the network function management 220 is a network in which the setting information grasped in this step is deployed in this step so that the deployed network function can perform the same processing as the network function 400 which the traffic originally passed through. The function 400 is set.

なお、リソースプール570がネットワークの観点で近傍であることを判断する方法は、例えば、リソースプール570を経由するようにトラフィックの通信経路を変更した場合の応答時間Tiが、元々(経路変更する前に)トラフィックが経由しているネットワークファンクションo(ミドルボックスでもよい)を経由する場合の応答時間Tからある値α(α≧0)を引いた値よりも小さい(Ti<T−α)かを比較し、小さい場合にリソースプールiが元のネットワークファンクションoよりも近いと判断する。複数のリソースプールが該当する場合は、最も小さい応答時間Tiを持つデータ処理機能iをもっとも近傍にあるリソースプールであると判断する。 Note that the method for determining that the resource pool 570 is in proximity from the viewpoint of the network is, for example, the response time Ti when the traffic communication path is changed to pass through the resource pool 570, originally (before ) and via the traffic network function o (less than a value obtained by subtracting the value α (α ≧ 0) in the response time T 0 when passing through the well may) in middlebox (Ti <T o -α) If it is smaller, the resource pool i is determined to be closer than the original network function o. When a plurality of resource pools correspond, it is determined that the data processing function i having the smallest response time Ti is the closest resource pool.

ステップ3360において、トラフィック制御機能215が経路変更するトラフィックのネクストホップ、または、プリービアスホップのノードの識別子を把握する。ネクストホップとはネットワークファンクション400がパケットを転送する次のホップのノードのIPアドレスであり、プリービアスホップとはネットワークファンクション400にパケットを転送した一つ前のホップのノードのIPアドレスである。ネクストホップとプリービアスホップは、トラフィック情報テーブル3100の変更後経由ネットワークファンクション識別子、または、変更後経由ノード識別子、または、変更後送信先アドレスのうち、次のホップ先のノードのIPアドレスである。次のホップ先のノードのIPアドレスはネットワークの構成情報から生成されるが、ルーティングの一般的な手段で実現可能なため、説明を割愛する。   In step 3360, the traffic control function 215 grasps the next hop of the traffic to be rerouted, or the identifier of the pre-bias hop node. The next hop is the IP address of the next hop node to which the network function 400 transfers the packet, and the pre-bias hop is the IP address of the previous hop node that transferred the packet to the network function 400. The next hop and the pre-bias hop are the IP address of the next hop destination node among the post-change network function identifier of the traffic information table 3100, the post-change transit node identifier, or the post-change transmission destination address. Although the IP address of the next hop destination node is generated from the network configuration information, the description will be omitted because it can be realized by a general means of routing.

ステップ3370において、トラフィック制御機能215が配備するネットワークファンクション情報テーブル3400、及び、ネットワークファンクションの転送ルール3500を生成する。具体的には、トラフィック制御機能215が配備するネットワークファンクション情報テーブル3400の「配備するネットワークファンクショングループ」に、ステップ3340において把握された存在しないネットワークファンクションの種別を追加し、当該エントリの「設定を複製するネットワークファンクション識別子」にステップ3340において把握された経由ノードの識別子を追加し、当該エントリの「配備するネットワークファンクションのアドレス」に、配備先のリソースプールにステップ3350において把握された配備可能なネットワークファンクションの識別子、及び、当該ネットワークファンクションのIPアドレスを追加する。配備するネットワークファンクションの識別子は一意に決定されるように任意の値が割り当てられる。   In step 3370, the network function information table 3400 deployed by the traffic control function 215 and the transfer rule 3500 of the network function are generated. Specifically, the type of the nonexistent network function grasped in step 3340 is added to the “Network function group to be deployed” of the network function information table 3400 deployed by the traffic control function 215, and the “setting of the entry” is copied. Add the identifier of the transit node grasped in step 3340 to “Network function identifier to be executed”, and the deployable network function grasped in step 3350 in the resource pool of the deployment destination in “address of network function to be deployed” of the entry And the IP address of the network function. The identifier of the network function to be deployed is assigned an arbitrary value so as to be uniquely determined.

ネットワークファンクションの転送ルール情報3500の説明に移る。ネットワークファンクションの転送ルール情報3500のネットワークファンクション識別子に、ステップ3310において把握された経由ネットワークファンクションを追加する。当該エントリの送信元仮想化識別子に、ロールグループ情報テーブル3000のデータ処理機能がステップ3310において把握されたトラフィックの送信元アドレスと同じである行の仮想ネットワーク識別子を追加し、当該エントリの送信元アドレスと送信先アドレスに、上記把握されたトラフィックの送信元アドレスと送信アドレスを追加する。また、当該エントリの出力送信元アドレスと出力送信先アドレスに、ステップ3360において把握されたネクストホップ、及び、プリービアスホップを追加する。
更にロールグループ情報テーブル3000において、データ処理機能アドレスが、ステップ3310において特定されたトラフィックの送信先アドレスと同じ行の「仮想化識別子」を「送信先の仮想化識別子」として把握する。
ネットワークファンクションの転送ルール情報3500の当該エントリの送信先仮想化識別子に上記「送信先の仮想化識別子」を追加する。
入力元IFと出力先IFに関しては、ネットワークのトポロジ情報から生成されるが、一般的なルーティングやSDN制御において明らかである為、詳細な説明は割愛する。
The description now turns to transfer rule information 3500 of the network function. The transit network function grasped in step 3310 is added to the network function identifier of the transfer rule information 3500 of the network function. Add the virtual network identifier of the row that is the same as the source address of the traffic identified in Step 3310 by the data processing function of the role group information table 3000 to the source virtualization identifier of the entry, and the source address of the entry Add the source address and sending address of the above-identified traffic to the destination address. In addition, the next hop and the pre-early hop found in step 3360 are added to the output source address and the output destination address of the entry.
Furthermore, in the role group information table 3000, the “virtualization identifier” of the same row as the transmission destination address of the traffic identified in step 3310 is grasped as the “virtualization identifier of transmission destination” in the data processing function address.
The “destination virtualization identifier” is added to the destination virtualization identifier of the entry of the transfer rule information 3500 of the network function.
Although the input source IF and the output destination IF are generated from network topology information, they are apparent in general routing and SDN control, so detailed description will be omitted.

以上が図14の説明である。これによって配備するネットワークファンクション情報3400、及び、ネットワークファンクションの制御情報3500を生成される。図12の説明に戻る。   The above is the description of FIG. As a result, network function information 3400 to be deployed and control information 3500 of the network function are generated. It returns to the explanation of FIG.

シーケンス2260において、コントローラ100のサービス受付部240がネットワーク構成情報通知をネットワーク管理装置200に送信する。具体的には、シーケンス2250において生成した配備するネットワークファンクション情報3400、及び、ネットワークファンクションの制御情報3500を送信する。   In sequence 2260, the service reception unit 240 of the controller 100 transmits a network configuration information notification to the network management apparatus 200. Specifically, the network function information 3400 to be deployed generated in the sequence 2250 and control information 3500 of the network function are transmitted.

シーケンス2270において、コントローラ100のサービス受付部240がネットワーク管理装置200から実行要求を受信する。実行要求を受信した場合、シーケンス2280に移行し、受信しない場合、処理を中断する。   In sequence 2270, the service reception unit 240 of the controller 100 receives an execution request from the network management apparatus 200. If an execution request is received, the process proceeds to sequence 2280, and if not received, the process is interrupted.

シーケンス2280において、コントローラ100が、シーケンス2250で生成した設定情報に基づいて、ネットワークファンクション400に対して、経路の設定、及び、ネットワークファンクションの配備を行う。   In sequence 2280, the controller 100 performs route setting and network function deployment on the network function 400 based on the setting information generated in sequence 2250.

シーケンス2290においてコントローラ100が状態情報を更新する。具体的には、シーケンス2250において生成した配備するネットワークファンクション情報3400をネットワークファンクション情報3300に追加する。   In sequence 2290, the controller 100 updates the state information. Specifically, the network function information 3400 to be deployed generated in the sequence 2250 is added to the network function information 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:拠点
100: controller 200: network management device 210: control processing unit 215: traffic control function 220: network function management 225: role group management 230: network configuration management 235: communication IF
240: service reception unit 270: data storage unit 275: configuration information storage unit 280: virtual network information storage unit 290: network function information storage unit 295: role group information storage unit 400: network function 410: fire fall function 420: IPS Function 430: Routing function 440: Load balancing function 450: DPI function 460: Caching function 470: Acceleration function 480: Resource pool 490: Switching function 510: DNS (Domain Name Service)
520: Router 530: Load balancer 540: Server 550: FW (Firewall)
560: Network switch 600: Network 610: LAN (Local Area Network)
620: Terminal 700: Base

Claims (7)

ネットワーク制御システムであって、
パケットの転送処理を行うネットワークファンクションと、
前記ネットワークファンクションを制御するコントローラと、
第一のサーバ上のデータ処理機能と、その近傍にある第一のミドルボックス機能と、を備え、
当該ネットワーク制御システムに接続した端末が、第一のミドルボックス機能を経由して、前記データ処理機能と通信している場合に、前記データ処理機能が、前記第一のサーバ上から、第二のサーバ上へ移動したことを、前記データ処理機能が通信する内容に基づき、検知する検知機能と
前記端末と前記移動したデータ処理機能との通信を、前記第二のサーバと前記第一のミドルボックス機能とのネットワーク観点の距離より近傍にあり、前記第一のミドルボックス機能と等価な機能を備える第二のミドルボックス機能を経由させる経路制御機能と、を備え
前記コントローラは、複数のネットワークファンクションが学習したヘッダ情報を一元管理し、
前記検知機能は、異なるネットワークファンクションが学習したヘッダに同一のものがあるか比較することにより、前記データ処理機能の移動を検知する
ことを特徴とするネットワーク制御システム。
A network control system,
A network function that performs packet transfer processing,
A controller that controls the network function ;
It has the data processing function on the first server and the first middle box function in the vicinity,
When the terminal connected to the network control system is in communication with the data processing function via the first middle box function, the data processing function is a second server from the first server. A detection function that detects movement on the server based on the contents communicated by the data processing function ;
The communication between the terminal and the moved data processing function is closer to the network-based distance between the second server and the first middlebox function, and a function equivalent to the first middlebox function Providing a route control function via the second middle box function ,
The controller centrally manages header information learned by a plurality of network functions,
The network control system according to claim 1, wherein the detection function detects the movement of the data processing function by comparing whether there is an identical header in a network function learned by different network functions .
請求項1に記載のネットワーク制御システムにおいて、
前記検知機能は、前記データ処理機能が送信する通信パケットのヘッダに基づき、前記通信パケットの送信元である前記データ処理機能の移動を検知する
ことを特徴とするネットワーク制御システム。
In the network control system according to claim 1,
The network control system, wherein the detection function detects movement of the data processing function that is a transmission source of the communication packet, based on a header of the communication packet transmitted by the data processing function.
請求項1または2に記載のネットワーク制御システムにおいて、
前記コントローラは、
前記第二のサーバと前記第一のミドルボックス機能のネットワーク観点の距離より近傍には、前記第二のミドルボックス機能が存在しないが、前記第二のミドルボックス機能を配備可能なネットワークファンクションが、前記近傍にある場合は、当該ネットワークファンクションに、前記第二のミドルボックス機能を配備する
ことを特徴とするネットワーク制御システム。
In the network control system according to claim 1 or 2,
The controller
A network function capable of deploying the second middlebox function although the second middlebox function does not exist near the distance between the second server and the network viewpoint of the first middlebox function, A network control system characterized by deploying the second middlebox function to the network function when it is in the vicinity.
請求項3に記載のネットワーク制御システムにおいて、
前記コントローラは、
前記第二のサーバと前記第一のミドルボックス機能のネットワーク観点の距離より近傍には、前記第二のミドルボックス機能および前記ネットワークファンクションが存在しないが、新たに、ネットワークファンクションを配備可能なリソースプールが、前記近傍にある場合は、当該リソースプールに、前記第二のミドルボックス機能を有する前記ネットワークファンクションを配備する
ことを特徴とするネットワーク制御システム。
In the network control system according to claim 3,
The controller
A resource pool capable of newly deploying a network function although the second middlebox function and the network function do not exist in the vicinity of the distance between the second server and the network viewpoint of the first middlebox function. If there is the vicinity, the network control system is characterized in that the network function having the second middle box function is deployed in the resource pool.
請求項1からのいずれか一に記載のネットワーク制御システムにおいて、
DNSを備え、
前記コントローラは、
前記DNSから、URIとIPアドレスの対応付けを含む名前解決情報を取得し、
前記データ処理機能または前記ミドルボックス機能または前記ネットワークファンクションのうち、同一のURIに対して複数のIPアドレスの応答により処理を振分けられている前記IPアドレスを備えるものを、等価な機能を備える、データ処理機能またはミドルボックス機能またはネットワークファンクション、と見做し、
前記DNSが属する仮想ネットワーク識別子と対応付けて管理する
ことを特徴とするネットワーク制御システム
The network control system according to any one of claims 1 to 4 .
Equipped with DNS,
The controller
The name resolution information including the correspondence between URI and IP address is acquired from the DNS,
The data processing function or the middle box function or the network function, among the data processing functions or the middle box functions or the network functions, those having the IP address whose processing is distributed by responses of a plurality of IP addresses to the same URI are provided with equivalent functions Treat as a processing function or middle box function or network function,
A network control system characterized by managing in association with a virtual network identifier to which the DNS belongs .
請求項1からのいずれか一に記載のネットワーク制御システムにおいて、
前記コントローラは、前記ネットワーク観点の距離の遠近を、前記データ処理機能と前記ネットワークファンクションとの、IPレイヤ(Layer3)におけるパケット応答時間、または、アプリケーションレイヤにおける通信処理が行われる時間の長さで判断する
ことを特徴とするネットワーク制御システム
The network control system according to any one of claims 1 to 5 .
The controller determines the distance between the network viewpoint and the distance based on the packet response time of the data processing function and the network function in the IP layer (Layer 3) or the length of time in which communication processing in the application layer is performed. Network control system characterized in that .
請求項1からのいずれか一に記載のネットワーク制御システムにおいて、
前記ミドルボックス機能または前記ネットワークファンクションは、属性として、
RSFG(リスクシェアードファンクショングループ)の識別情報と、
ディカプセル化の要否を示す情報と、
耐バースト性情報の有無を示す情報と、
冗長化構成の有無を示す情報と、
のいずれか一つ以上を含む
ことを特徴とするネットワーク制御システム。
The network control system according to any one of claims 1 to 6 .
The middle box function or the network function has, as an attribute,
Identification information of RSFG (risk shared function group),
Information indicating whether or not decapsulation is necessary,
Information indicating the presence or absence of burst resistance information;
Information indicating the presence or absence of a redundant configuration;
A network control system comprising any one or more of the foregoing.
JP2014237285A 2014-11-25 2014-11-25 Network control system Active JP6510217B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014237285A JP6510217B2 (en) 2014-11-25 2014-11-25 Network control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014237285A JP6510217B2 (en) 2014-11-25 2014-11-25 Network control system

Publications (2)

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

Family

ID=56075620

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014237285A Active JP6510217B2 (en) 2014-11-25 2014-11-25 Network control system

Country Status (1)

Country Link
JP (1) JP6510217B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102546521B1 (en) * 2019-01-04 2023-06-22 한국전자통신연구원 Apparatus and method for providing services in distributed edge cloud environment
CN111522277B (en) * 2020-05-21 2021-04-09 苏州讯如电子科技有限公司 Network signal control system and method adopting MCU control unit

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4521456B2 (en) * 2008-09-05 2010-08-11 株式会社東芝 Information processing system and control method of information processing system
JP6060688B2 (en) * 2013-01-10 2017-01-18 富士通株式会社 Transfer device, communication system, and roundabout path detection method

Also Published As

Publication number Publication date
JP2016100798A (en) 2016-05-30

Similar Documents

Publication Publication Date Title
US11070447B2 (en) System and method for implementing and managing virtual networks
US20210184895A1 (en) System and method for distributed flow state p2p setup in virtual networks
Ramos et al. Slickflow: Resilient source routing in data center networks unlocked by openflow
US9736263B2 (en) Temporal caching for ICN
US10148517B2 (en) Systems and methods for topology discovery and application in a border gateway protocol based data center
JP5654142B2 (en) Method for configuring network switches
US10237179B2 (en) Systems and methods of inter data center out-bound traffic management
US9712649B2 (en) CCN fragmentation gateway
JP2014135721A (en) Device and method for distributing traffic of data center network
CN113273142A (en) Shunt controller control for programmable switch
US20180077048A1 (en) Controller, control method and program
US9973578B2 (en) Real time caching efficient check in a content centric networking (CCN)
WO2016174598A1 (en) Sdn network element affinity based data partition and flexible migration schemes
JP2018518925A (en) Packet forwarding
JP5965335B2 (en) COMMUNICATION SYSTEM AND ROUTE CONTROL METHOD
US10530873B1 (en) Techniques for optimizing EVPN-IRB for IPv6-enabled data centers with top-of-rack deployments
US10447581B2 (en) Failure handling at logical routers according to a non-preemptive mode
US9246804B1 (en) Network routing
JP6510217B2 (en) Network control system
US10965596B2 (en) Hybrid services insertion
JP5580766B2 (en) Server apparatus, packet transmission system, packet transmission method and program
US20170070473A1 (en) A switching fabric including a virtual switch
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
Gandhi Improving Cloud Middlebox Infrastructure for Online Services

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 Written amendment

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