JP7164140B2 - COMMUNICATION ANALYSIS DEVICE, COMMUNICATION ANALYSIS METHOD AND PROGRAM - Google Patents

COMMUNICATION ANALYSIS DEVICE, COMMUNICATION ANALYSIS METHOD AND PROGRAM Download PDF

Info

Publication number
JP7164140B2
JP7164140B2 JP2017066717A JP2017066717A JP7164140B2 JP 7164140 B2 JP7164140 B2 JP 7164140B2 JP 2017066717 A JP2017066717 A JP 2017066717A JP 2017066717 A JP2017066717 A JP 2017066717A JP 7164140 B2 JP7164140 B2 JP 7164140B2
Authority
JP
Japan
Prior art keywords
flow
communication
information
flow information
virtual
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
JP2017066717A
Other languages
Japanese (ja)
Other versions
JP2018170639A (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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2017066717A priority Critical patent/JP7164140B2/en
Publication of JP2018170639A publication Critical patent/JP2018170639A/en
Application granted granted Critical
Publication of JP7164140B2 publication Critical patent/JP7164140B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、通信解析装置、通信解析方法およびプログラムに関する。 The present invention relates to a communication analysis device, communication analysis method and program.

昨今、クラウドシステムをマルチテナント構成で運用することが増えてきている。IaaS(Infrastructure as a Service)型のクラウドシステムの場合、クラウドシステムの事業者は、仮想マシンを動作させるホストマシンを用意する。そして、ホストマシン上に複数の仮想マシンを用意し、仮想マシンを複数の利用者に貸し出すなどしてマルチテナント構成を実現している。 Recently, cloud systems are increasingly being operated in a multi-tenant configuration. In the case of an IaaS (Infrastructure as a Service) type cloud system, a cloud system provider prepares a host machine for operating a virtual machine. A multi-tenant configuration is realized by preparing multiple virtual machines on the host machine and lending the virtual machines to multiple users.

1つのテナントは複数のホストマシン上に渡って構成されることもある。すなわち、テナント内の複数の仮想マシンが、複数のホストマシン上に分散配置されることもある。この場合、対障害性を確保するためなどの目的で、1つの仮想マシンが複数のホストマシン間で自動的に移動する場合がある。このような技術には、例えばライブマイグレーションと呼ばれる既存技術がある。 A single tenant may be configured across multiple host machines. In other words, multiple virtual machines within a tenant may be distributed on multiple host machines. In this case, one virtual machine may be automatically migrated between a plurality of host machines for purposes such as ensuring fault tolerance. Such technology includes, for example, an existing technology called live migration.

テナントが複数のホストマシン上に渡って構成される場合、そのホストマシン群は、物理的に近い位置にいるとは限らない。例えばVxLAN(Virtual eXtensible Local Area Network)などのネットワークトンネリング技術により仮想ネットワークを構築し、その仮想ネットワーク上にテナントを構成することで、複数のホストマシンが物理的に離れた位置にあっても、テナント内は1つのネットワークとして通信が可能となる。 When a tenant is configured over multiple host machines, the host machines are not necessarily physically close to each other. For example, by building a virtual network using network tunneling technology such as VxLAN (Virtual eXtensible Local Area Network) and configuring tenants on the virtual network, even if multiple host machines are physically separated, tenant Communication is possible as one network inside.

物理的に離れた位置にある仮想マシン間の通信は、一般にはWAN(Wide Area Network)を経由するため、LAN(Local Area Network)内の通信よりも帯域が少なく往復時間もかかることが多く、一般的には遅くなる。そのため、同一テナント内であっても、仮想マシンが稼働するホストマシンの物理的距離が遠い場合は、仮想マシン間通信の速度が十分出ない場合も考えられる。 Communication between virtual machines in physically distant locations generally goes through a WAN (Wide Area Network), so the bandwidth is lower than communication within a LAN (Local Area Network), and it often takes longer round-trip time. generally slower. Therefore, even within the same tenant, if the physical distance between the host machines on which the virtual machines operate is long, the speed of communication between virtual machines may not be sufficiently high.

このような状況に対し、仮想マシン間の通信状況、例えば、仮想マシン間の通信がどのホストマシンで実行されているのか、その通信量はどのくらいかといった情報が可視化されると、運用における最適化計画が立てやすく、都合がよい。 In such a situation, visualization of the communication status between virtual machines, such as which host machine is executing communication between virtual machines, and how much communication is involved, will help optimize operations. Easy to plan and convenient.

特許文献1には、NetFlow(非特許文献1)などのフロー集計の標準プロトコルを利用して、仮想マシン間の通信がどのホストマシンで実行されているのか、その通信量はどのくらいかといった情報を収集、分析する技術が開示されている。 In Patent Document 1, a standard protocol for flow aggregation such as NetFlow (Non-Patent Document 1) is used to obtain information such as which host machine is executing communication between virtual machines and how much the communication volume is. Techniques for collecting and analyzing are disclosed.

特開2015-142269号公報JP 2015-142269 A

Cisco Systems、"Cisco Systems NetFlow Services Export Version 9"、IETF、[平成29年3月13日検索]、インターネット<http://www.ietf.org/rfc/rfc3954.txt>Cisco Systems, "Cisco Systems NetFlow Services Export Version 9", IETF, [searched on March 13, 2017], Internet <http://www.ietf.org/rfc/rfc3954.txt>

しかしながら、特許文献1においては、仮想マシン間の通信量を可視化することができるが、通信フローの経路を解析して提示することはできない。同一ホストマシン内の仮想マシン間の通信が他のホストマシンに配置された仮想ルータを経由している場合、通信のエンドポイントのみから通信フローの経路を直観的に判断することは難しい。 However, in Patent Literature 1, although the amount of communication between virtual machines can be visualized, the paths of communication flows cannot be analyzed and presented. When communication between virtual machines in the same host machine passes through a virtual router located in another host machine, it is difficult to intuitively determine the route of the communication flow only from the endpoint of the communication.

本発明は上述の課題に鑑み、仮想マシン間の通信フローの経路を明らかにすることが可能な通信解析装置、通信解析方法およびプログラムを提供することを目的とする。 SUMMARY OF THE INVENTION It is an object of the present invention to provide a communication analysis device, a communication analysis method, and a program capable of clarifying communication flow paths between virtual machines.

本発明の一実施形態に係る通信解析装置は、複数の仮想マシンを含むネットワーク内で収集された複数のフロー情報を受信する受信部と、前記複数のフロー情報の中から、前記仮想マシン間の同一の通信フローを表すフロー情報の集合を特定する識別部と、前記フロー情報の集合および前記ネットワークの接続情報に基づいて、前記通信フローの経路を特定する解析部とを備える。 A communication analysis device according to an embodiment of the present invention includes a receiving unit that receives a plurality of pieces of flow information collected in a network that includes a plurality of virtual machines; An identification unit that identifies a set of flow information representing the same communication flow, and an analysis unit that identifies a route of the communication flow based on the set of flow information and the connection information of the network.

本発明の一実施形態に係る通信解析方法は、複数の仮想マシンを含むネットワーク内で収集された複数のフロー情報を受信するステップと、前記複数のフロー情報の中から、前記仮想マシン間の同一の通信フローを表すフロー情報の集合を特定するステップと、前記フロー情報の集合および前記ネットワークの接続情報に基づいて、前記通信フローの経路を特定するステップとを備える。 A communication analysis method according to an embodiment of the present invention comprises the steps of: receiving a plurality of pieces of flow information collected in a network including a plurality of virtual machines; and identifying a route of the communication flow based on the set of flow information and connection information of the network.

本発明の一実施形態に係るプログラムは、複数の仮想マシンを含むネットワーク内で収集された複数のフロー情報を受信するステップと、前記複数のフロー情報の中から、前記仮想マシン間の同一の通信フローを表すフロー情報の集合を特定するステップと、前記フロー情報の集合および前記ネットワークの接続情報に基づいて、前記通信フローの経路を特定するステップとをコンピュータに実行させる。 A program according to an embodiment of the present invention comprises steps of receiving a plurality of pieces of flow information collected in a network including a plurality of virtual machines; A computer is caused to perform the steps of identifying a set of flow information representing a flow and identifying a route of the communication flow based on the set of flow information and the connection information of the network.

本発明によれば、仮想マシン間の通信フローの経路を明らかにすることが可能となる。 According to the present invention, it is possible to clarify the path of communication flow between virtual machines.

第1実施形態に係る通信解析システムのブロック図である。1 is a block diagram of a communication analysis system according to a first embodiment; FIG. 第1実施形態に係るフローコレクタのブロック図である。1 is a block diagram of a flow collector according to a first embodiment; FIG. 第1実施形態に係るIDレコードの概念図である。4 is a conceptual diagram of an ID record according to the first embodiment; FIG. 第1実施形態に係るフローレコードを説明するための図である。FIG. 4 is a diagram for explaining a flow record according to the first embodiment; FIG. 第1実施形態に係る接続情報の一例である。It is an example of connection information according to the first embodiment. 第1実施形態に係るフローコレクタのハードウェア構成を示すブロック図である。3 is a block diagram showing the hardware configuration of a flow collector according to the first embodiment; FIG. 第1実施形態に係るデータベース作成処理のフローチャートである。4 is a flowchart of database creation processing according to the first embodiment; 第1実施形態に係る経路特定処理のフローチャートである。4 is a flowchart of route identification processing according to the first embodiment; 第1実施形態に係るフローレコードの一例である。It is an example of a flow record according to the first embodiment. 第2実施形態に係る通信解析システムのブロック図である。FIG. 11 is a block diagram of a communication analysis system according to a second embodiment; FIG. 第2実施形態に係る接続情報の一例である。It is an example of connection information according to the second embodiment. 他の実施形態に係るフローコレクタの概略構成図である。FIG. 4 is a schematic configuration diagram of a flow collector according to another embodiment;

以下、図面を参照して、本発明の実施形態を説明する。
[第1実施形態]
図1は、本実施形態に係る通信解析システムのブロック図である。通信解析システムは、いわゆるクラウドシステムであって、ホスト装置10、ホスト装置20、スイッチ30、フローコレクタ40を備えている。ホスト装置10、20は、物理的なサーバコンピュータであって、仮想的なネットワークを構築することができる。なお、図1には2台のホスト装置10、20が示されているが、通信解析システムは3台以上のホスト装置を備え得る。
Embodiments of the present invention will be described below with reference to the drawings.
[First embodiment]
FIG. 1 is a block diagram of a communication analysis system according to this embodiment. The communication analysis system is a so-called cloud system and includes a host device 10, a host device 20, a switch 30, and a flow collector 40. The host devices 10 and 20 are physical server computers and can construct a virtual network. Although two host devices 10 and 20 are shown in FIG. 1, the communication analysis system may have three or more host devices.

ホスト装置10内には、仮想マシン11、仮想マシン12、仮想スイッチ13が配置されている。仮想マシン11、仮想マシン12、仮想スイッチ13は、ホスト装置10のプロセッサが実行するソフトウェアによって仮想的に実現されている。ホスト装置20内には、仮想ルータ21、仮想スイッチ23が配置されている。仮想ルータ21、仮想スイッチ23は、ホスト装置20のプロセッサが実行するソフトウェアによって仮想的に実現されている。ホスト装置20内においても、ホスト装置10内と同様に、1または複数の仮想マシンが配置され得る。 A virtual machine 11 , a virtual machine 12 , and a virtual switch 13 are arranged in the host device 10 . The virtual machine 11 , the virtual machine 12 , and the virtual switch 13 are virtually realized by software executed by the processor of the host device 10 . A virtual router 21 and a virtual switch 23 are arranged in the host device 20 . The virtual router 21 and virtual switch 23 are virtually implemented by software executed by the processor of the host device 20 . One or a plurality of virtual machines can be arranged in the host device 20 as well as in the host device 10 .

仮想マシン11、12は、サーバコンピュータであって、クラウドシステムの利用者に様々なサービスを提供することができる。仮想スイッチ13は、インターフェース(以下IF)101、IF102、IF103を有している。仮想スイッチ13には、IF101、102を介してそれぞれ仮想マシン11、12が接続されている。同様に、仮想スイッチ23は、IF201、IF202を有している。仮想スイッチ23には、IF201を介して仮想ルータ21が接続されている。なお、仮想スイッチ13、23が有するIFの数は特に限定されない。 The virtual machines 11 and 12 are server computers and can provide various services to users of the cloud system. The virtual switch 13 has interfaces (hereinafter referred to as IF) 101, IF102, and IF103. Virtual machines 11 and 12 are connected to the virtual switch 13 via IFs 101 and 102, respectively. Similarly, the virtual switch 23 has IF201 and IF202. A virtual router 21 is connected to the virtual switch 23 via an IF 201 . Note that the number of IFs that the virtual switches 13 and 23 have is not particularly limited.

スイッチ30は、物理的な接続装置であって、ホスト装置10、ホスト装置20、フローコレクタ40を接続し、これらの装置間のデータ転送を行う。スイッチ30は、IF301、IF302を有している。IF301は仮想スイッチ13のIF103と接続され、IF302は仮想スイッチ23のIF202と接続されている。スイッチ30は、受信したデータ(パケット)の宛先を判断し、宛先のネットワーク装置に対してデータを送信するデータ中継機能を有している。 The switch 30 is a physical connection device that connects the host device 10, the host device 20, and the flow collector 40, and transfers data between these devices. The switch 30 has IF301 and IF302. The IF 301 is connected to the IF 103 of the virtual switch 13 and the IF 302 is connected to the IF 202 of the virtual switch 23 . The switch 30 has a data relay function of determining the destination of received data (packet) and transmitting the data to the destination network device.

仮想マシン11、12は、仮想スイッチ13を介して互いに通信を行うことができる。仮想マシン11、12間の通信は、仮想ルータ21を経由して行われ得る。例えば、仮想マシン11から送信されたデータは、仮想スイッチ13、スイッチ30、仮想スイッチ23を通って、仮想ルータ21により受信され、仮想ルータ21から仮想スイッチ23、スイッチ30、仮想スイッチ13を介して仮想マシン12に送信され得る。 The virtual machines 11 and 12 can communicate with each other via the virtual switch 13 . Communication between virtual machines 11 , 12 may occur via virtual router 21 . For example, data transmitted from the virtual machine 11 passes through the virtual switches 13, 30, and 23, is received by the virtual router 21, and is received from the virtual router 21 via the virtual switches 23, 30, and 13. It may be sent to virtual machine 12 .

フローコレクタ40は、通信解析装置であって、仮想スイッチ13、23、仮想ルータ21、スイッチ30を通過する通信フローについてのフロー情報を収集し、解析することができる。仮想スイッチ13、23、仮想ルータ21、スイッチ30のそれぞれは、フロー情報を収集するための機能を有している。フロー情報の収集は、NetFlow、IPFIX(Internet Protocol Flow Information Export)などのフロー集計プロトコルを用いて行うことができる。以下の説明においては、フロー集計プロトコルとしてNetFlowを用いるものとする。フローコレクタ40は、仮想スイッチ13、23、仮想ルータ21、スイッチ30のそれぞれからフロー情報を受信する。 The flow collector 40 is a communication analysis device, and can collect and analyze flow information about communication flows passing through the virtual switches 13 and 23, the virtual router 21, and the switch 30. FIG. Each of the virtual switches 13, 23, the virtual router 21, and the switch 30 has a function of collecting flow information. Flow information collection can be performed using a flow aggregation protocol such as NetFlow, IPFIX (Internet Protocol Flow Information Export). In the following description, it is assumed that NetFlow is used as the flow aggregation protocol. The flow collector 40 receives flow information from each of the virtual switches 13 and 23, the virtual router 21, and the switch 30. FIG.

図2は、本実施形態に係るフローコレクタ40のブロック図である。フローコレクタ40は、受信部41、識別部42、記憶部43、取得部44、解析部45、出力部46の機能を有している。受信部41は、通信解析システムのネットワーク内で収集された複数のフロー情報を受信する。フロー情報は、仮想スイッチ13、仮想スイッチ23、仮想ルータ21から送信され得る。識別部42は、受信部41によって受信された複数のフロー情報を識別し、仮想マシン11、12間における同一の通信フローを表すフロー情報の集合を特定することができる。 FIG. 2 is a block diagram of the flow collector 40 according to this embodiment. The flow collector 40 has functions of a receiving unit 41 , an identifying unit 42 , a storage unit 43 , an acquiring unit 44 , an analyzing unit 45 and an output unit 46 . The receiving unit 41 receives a plurality of pieces of flow information collected within the network of the communication analysis system. Flow information can be sent from virtual switch 13 , virtual switch 23 , and virtual router 21 . The identification unit 42 can identify a plurality of pieces of flow information received by the reception unit 41 and specify a set of flow information representing the same communication flow between the virtual machines 11 and 12 .

記憶部43は、ID(Identification)管理データベース431、フロー情報データベース432を含んでいる。ID管理データベース431には、フロー同定キーと、該フロー同定キーに紐付けられたフローIDを含む複数のIDレコードが保存されている。図3に示すように、フロー同定キーは、フロー情報に含まれる「送信元IPアドレス(srcaddr)」、「宛先IPアドレス(dstaddr)」、「送信元ポート番号(srcport)」、「宛先ポート番号(dstport)」、「IPプロトコル番号(prot)」、「ToS(Type of Service)フラグ値(tos)」の6つの値を連結したものである。フロー同定キーは、複数のフロー情報を通信フローごとに分類するために用いられる。フローIDは、識別部42によって決定され、同一の通信フローを表すフロー情報の集合に対し同一のフローIDが付与される。 The storage unit 43 includes an ID (Identification) management database 431 and a flow information database 432 . The ID management database 431 stores a plurality of ID records including flow identification keys and flow IDs linked to the flow identification keys. As shown in FIG. 3, the flow identification key is the "source IP address (srcaddr)", "destination IP address (dstaddr)", "source port number (srcport)", "destination port number (dstport)", "IP protocol number (prot)", and "ToS (Type of Service) flag value (tos)". A flow identification key is used to classify a plurality of pieces of flow information for each communication flow. The flow ID is determined by the identification unit 42, and the same flow ID is assigned to a set of flow information representing the same communication flow.

フロー情報データベース432には、受信されたフロー情報に含まれていた情報と、各フロー情報に紐付けられたフローIDを含む複数のフローレコードが保存されている。例えば、図4に示すように、フローレコードには、「収集装置名」、「フローID」、「フロー収集時刻」、「VLAN(Virtual Local Area Network)番号」、「入力インターフェース番号」、「出力インターフェース番号」、「送信元IPアドレス」、「宛先IPアドレス」、「送信元ポート番号」、「宛先ポート番号」、「通信量」が含まれている。 The flow information database 432 stores information included in the received flow information and a plurality of flow records including flow IDs linked to each piece of flow information. For example, as shown in FIG. 4, the flow record includes “collector name”, “flow ID”, “flow collection time”, “VLAN (Virtual Local Area Network) number”, “input interface number”, “output interface number”, “source IP address”, “destination IP address”, “source port number”, “destination port number”, and “traffic volume”.

収集装置名は、フロー情報を収集したネットワーク装置(ノード)名であり、フローIDは、通信フローが同一のものかを判定するための識別子である。収集装置名は、収集装置が識別可能なものであればよくIPアドレスであってもよい。フロー収集時刻は、通信フローを検知してフロー情報を収集した時刻である。VLAN番号は、収集装置が属するVLANの番号である。入力インターフェース番号は、通信フローが入力されたインターフェース番号であり、出力インターフェース番号は、通信フローが出力されたインターフェース番号である。送信元IPアドレス、宛先IPアドレスは、それぞれ通信フローの送信元、宛先のIPアドレスである。送信元ポート番号、宛先ポート番号は、それぞれ通信フローの送信元、宛先のTCP(Transmission Control Protocol)ポート番号またはUDP(User Datagram Protocol)ポート番号である。通信量は、通信フローの通信量であって、パケット数、バイト数などで表され得る。フローレコードは、NetFlowが収集可能なすべての情報を含んでいてもよく、一部の情報(例えば図4に示す情報)のみを含んでいてもよい。 The collection device name is the name of the network device (node) that collected the flow information, and the flow ID is an identifier for determining whether the communication flows are the same. The collection device name may be an IP address as long as the collection device can be identified. The flow collection time is the time when the communication flow is detected and the flow information is collected. The VLAN number is the number of the VLAN to which the collector belongs. The input interface number is the interface number to which the communication flow is input, and the output interface number is the interface number to which the communication flow is output. The source IP address and destination IP address are the source and destination IP addresses of the communication flow, respectively. The source port number and destination port number are the TCP (Transmission Control Protocol) port number or UDP (User Datagram Protocol) port number of the source and destination of the communication flow, respectively. The amount of communication is the amount of communication of the communication flow, and can be represented by the number of packets, the number of bytes, or the like. A flow record may contain all the information that NetFlow can collect, or it may contain only some information (for example, the information shown in FIG. 4).

取得部44は、通信解析システムが構成するネットワークの物理的な接続情報を取得し、記憶する。取得部44は、ネットワーク管理システム(NMS)から通信解析システム内のネットワーク装置同士の接続情報を取得することができる。接続情報には、接続の一端にある装置(ノード)のIPアドレスおよびインターフェース番号(ifIndex)と、該接続の対向(他端)にある装置のIPアドレスおよびインターフェース番号(ifIndex)とが1つのペアとして含まれている。本実施形態に係る接続情報の一例を図5に示す。 The acquisition unit 44 acquires and stores physical connection information of the network that the communication analysis system forms. The acquisition unit 44 can acquire connection information between network devices in the communication analysis system from a network management system (NMS). The connection information includes a pair of the IP address and interface number (ifIndex) of the device (node) at one end of the connection and the IP address and interface number (ifIndex) of the device at the other end of the connection. included as FIG. 5 shows an example of connection information according to this embodiment.

図2に戻り、解析部45は、記憶部43に記憶されたフロー情報を接続情報に基づいて解析し、通信フローの経路を特定することができる。より具体的には、解析部45は、フロー情報データベース432から同一の通信フローを表すフロー情報(フローレコード)の集合を抽出し、該集合に基づいて、通信フローの経路情報を生成する。解析部45は、経路情報などの解析結果を記憶部43に格納してもよい。出力部46は、解析部45が生成した解析結果を外部装置またはフローコレクタ40の表示装置(不図示)に出力することができる。 Returning to FIG. 2, the analysis unit 45 can analyze the flow information stored in the storage unit 43 based on the connection information to identify the communication flow path. More specifically, the analysis unit 45 extracts a set of flow information (flow records) representing the same communication flow from the flow information database 432, and based on the set, generates route information of the communication flow. The analysis unit 45 may store analysis results such as route information in the storage unit 43 . The output unit 46 can output the analysis result generated by the analysis unit 45 to an external device or a display device (not shown) of the flow collector 40 .

図6は、本実施形態に係るフローコレクタ40のハードウェア構成を示すブロック図である。フローコレクタ40は、CPU(Central Processing Unit)401、ROM(Read Only Memory)402、RAM(Random Access Memory)403、HDD(Hard Disk Drive)404、入出力IF405、バス406を備えている。CPU401、ROM402、RAM403、HDD404、入出力IF405は、バス406に接続されている。 FIG. 6 is a block diagram showing the hardware configuration of the flow collector 40 according to this embodiment. The flow collector 40 includes a CPU (Central Processing Unit) 401 , a ROM (Read Only Memory) 402 , a RAM (Random Access Memory) 403 , a HDD (Hard Disk Drive) 404 , an input/output IF 405 and a bus 406 . The CPU 401 , ROM 402 , RAM 403 , HDD 404 and input/output IF 405 are connected to bus 406 .

CPU401は、ROM402、HDD404から所定のプログラムを読み出し、実行することにより、フローコレクタ40の各部の機能を実現する。また、CPU401は、処理で得られたデータをHDD404に記憶させるとともに、入出力IF405を介して外部とデータの交換を行うことができる。RAM403は、CPU401によって実行されるプログラムの作業用メモリとして使用され、処理中のデータ、ROM402、HDD404から読み出されたデータなどを一時的に記憶する。 The CPU 401 reads out a predetermined program from the ROM 402 and HDD 404 and executes it, thereby realizing the function of each part of the flow collector 40 . In addition, the CPU 401 can store data obtained by processing in the HDD 404 and exchange data with the outside via the input/output IF 405 . A RAM 403 is used as a working memory for programs executed by the CPU 401 and temporarily stores data being processed, data read from the ROM 402 and the HDD 404, and the like.

HDD404は、フロー情報に関するデータベースの他、該データベースを作成するためのプログラム、通信フローの経路を特定するためのプログラムなど、フローコレクタ40の機能を実現するためのプログラム、データなどを格納する。上述のID管理データベース431、フロー情報データベース432は、HDD404に作成され得る。入出力IF405は、スイッチ30に接続され、スイッチ30とのデータ通信を制御する。入出力IF405は外部出力端子を含み、外部出力端子に接続された外部装置にデータを出力することができる。 The HDD 404 stores a database related to flow information, a program for creating the database, a program for identifying the communication flow path, and other programs and data for implementing the functions of the flow collector 40 . The ID management database 431 and the flow information database 432 described above can be created in the HDD 404 . The input/output IF 405 is connected to the switch 30 and controls data communication with the switch 30 . The input/output IF 405 includes an external output terminal and can output data to an external device connected to the external output terminal.

フローコレクタ40のハードウェア構成は、上述した構成に限定されるものではなく、種々の構成とすることができる。例えば、フローコレクタ40は、HDD404に代えてまたは加えてフラッシュメモリなどの不揮発性の記憶装置を備えていてもよく、メモリカードの可搬記憶媒体を着脱可能に備えていてもよい。また、フローコレクタ40は、液晶ディスプレイなどの表示装置、キーボード、マウス、タッチパネルなどの入力装置を備えていてよい。 The hardware configuration of the flow collector 40 is not limited to the configuration described above, and various configurations are possible. For example, the flow collector 40 may include a nonvolatile storage device such as a flash memory in place of or in addition to the HDD 404, or may include a removable storage medium such as a memory card. The flow collector 40 may also include a display device such as a liquid crystal display, and an input device such as a keyboard, mouse, and touch panel.

図7は、本実施形態に係るデータベース作成処理のフローチャートである。データベース作成処理は、フローコレクタ40による通信解析方法の一部である。まず、CPU401は、フロー情報を受信したか否かを判断する(ステップS101)。すなわち、CPU401は、仮想スイッチ13、23、仮想ルータ21、スイッチ30のいずれかから、フロー情報を受信したか否かを判断する。フロー情報が受信されない場合(ステップS101でNO)、CPU401は、フロー情報が受信されるまで待機する。 FIG. 7 is a flowchart of database creation processing according to this embodiment. The database creation process is part of the communication analysis method by the flow collector 40 . First, the CPU 401 determines whether flow information has been received (step S101). That is, the CPU 401 determines whether flow information has been received from any one of the virtual switches 13 and 23, the virtual router 21, and the switch 30. FIG. If flow information is not received (NO in step S101), CPU 401 waits until flow information is received.

フロー情報が受信された場合(ステップS101でYES)、CPU401は、フロー情報のキーを作成する(ステップS102)。具体的には、CPU401は、受信したフロー情報に含まれる送信元IPアドレス、宛先IPアドレス、送信元ポート番号、宛先ポート番号、IPプロトコル番号、ToSフラグ値を連結することにより、フロー同定キーを作成する(図3参照)。 When flow information is received (YES in step S101), the CPU 401 creates a flow information key (step S102). Specifically, the CPU 401 generates a flow identification key by concatenating the source IP address, destination IP address, source port number, destination port number, IP protocol number, and ToS flag value included in the received flow information. (See Figure 3).

続いて、CPU401は、同一のフロー同定キーが存在するか否かを判断する(ステップS103)。すなわち、CPU401は、ステップS102で作成したフロー同定キーを用いてID管理データベース431を検索し、同一のフロー同定キーを有するIDレコードがID管理データベース431に保存されているか否かを判断する。 Subsequently, CPU 401 determines whether or not the same flow identification key exists (step S103). That is, CPU 401 searches ID management database 431 using the flow identification key created in step S102, and determines whether ID records having the same flow identification key are stored in ID management database 431 or not.

同一のフロー同定キーが存在する場合(ステップS103でYES)、CPU401は、フロー同定キーに紐付けられたフローIDをID管理データベース431から取得し、該フローIDを新たに作成したフローレコードに付与する(ステップS104)。 If the same flow identification key exists (YES in step S103), the CPU 401 acquires the flow ID linked to the flow identification key from the ID management database 431, and assigns the flow ID to the newly created flow record. (step S104).

一方、同一のフロー同定キーが存在しない場合(ステップS103でNO)、新規に払い出されたフローIDをフロー同定キーに紐付けて新たにIDレコードを作成し、ID管理データベース431に追加する。そして、CPU401は、新規フローIDを新たに作成したフローレコードに付与する(ステップS105)。 On the other hand, if the same flow identification key does not exist (NO in step S103), a new ID record is created by associating the newly issued flow ID with the flow identification key and added to the ID management database 431. FIG. Then, the CPU 401 assigns the new flow ID to the newly created flow record (step S105).

続いて、CPU401は、フロー情報に含まれていた情報をフローレコードに含めるとともに、該フローレコードをフロー情報データベース432に保存する(ステップS106)。CPU401は、ステップS101に戻り、新たなフロー情報を待機する。 Subsequently, the CPU 401 includes the information included in the flow information in the flow record, and stores the flow record in the flow information database 432 (step S106). The CPU 401 returns to step S101 and waits for new flow information.

図8は、本実施形態に係る経路特定処理のフローチャートである。経路特定処理は、フローコレクタ40による通信解析方法の一部である。まず、CPU401は、NMSからネットワークの接続情報を取得する(ステップS201)。CPU401は、取得した接続情報をRAM403に一時的に記憶してもよく、HDD404に格納してもよい。また、CPU401は、接続情報を定期的に取得してHDD404に格納しておき、ステップS201において、HDD404から読み出すようにしてもよい。 FIG. 8 is a flowchart of route identification processing according to this embodiment. The route identification process is part of the communication analysis method by the flow collector 40. FIG. First, the CPU 401 acquires network connection information from the NMS (step S201). The CPU 401 may temporarily store the acquired connection information in the RAM 403 or may store it in the HDD 404 . Alternatively, the CPU 401 may periodically acquire the connection information and store it in the HDD 404, and read it from the HDD 404 in step S201.

続いて、CPU401は、経路の特定対象となるフロー情報の集合を取得する(ステップS202)。すなわち、CPU401は、フロー情報データベース432を検索し、ユーザにより指示された所定の条件に合致するフローレコードを取得する。ユーザは、所定の条件として、通信フローを解析したい仮想マシン名(IPアドレス)、収集時刻の範囲などを指示することができる。ステップS202において、CPU401は、図9に示すフローレコードの集合を取得したものとする。なお、ステップS201とステップS202の処理順は任意であり、並行して処理が実行されてもよい。 Subsequently, the CPU 401 acquires a set of flow information to be used for route identification (step S202). That is, the CPU 401 searches the flow information database 432 and acquires flow records that match predetermined conditions specified by the user. The user can specify, as predetermined conditions, a virtual machine name (IP address) whose communication flow is to be analyzed, a collection time range, and the like. It is assumed that the CPU 401 acquires a set of flow records shown in FIG. 9 in step S202. Note that the processing order of steps S201 and S202 is arbitrary, and the processing may be executed in parallel.

次に、CPU401は、フロー情報の集合の中から任意のフロー情報を選択する(ステップS203)。すなわち、CPU401は、ステップS202において取得した複数のフローレコードの中から1つのフローレコードを選択する。例えば、CPU401は、図9のフローレコード501を選択する。 Next, the CPU 401 selects arbitrary flow information from the set of flow information (step S203). That is, the CPU 401 selects one flow record from the plurality of flow records acquired in step S202. For example, CPU 401 selects flow record 501 in FIG.

続いて、CPU401は、通信フローが出力されたインターフェース番号を取得する(ステップS204)。すなわち、CPU401は、フローレコード501の出力インターフェース番号103を取得する。そして、CPU401は、取得したインターフェース番号の接続先が通信のエンドポイントか否か、すなわち仮想マシンか否かを判断する(ステップS205)。 Subsequently, the CPU 401 obtains the interface number to which the communication flow is output (step S204). That is, the CPU 401 acquires the output interface number 103 of the flow record 501 . Then, the CPU 401 determines whether the connection destination of the acquired interface number is a communication endpoint, that is, whether it is a virtual machine (step S205).

例えば、CPU401は、図5に示す接続情報から、インターフェース103の接続先がスイッチ30であると判断する。この場合(ステップS205でNO)、CPU401は、接続先のインターフェース番号を取得する(ステップS206)。すなわち、CPU401は、スイッチ30のインターフェース番号301を取得する。 For example, the CPU 401 determines that the connection destination of the interface 103 is the switch 30 from the connection information shown in FIG. In this case (NO in step S205), the CPU 401 acquires the interface number of the connection destination (step S206). That is, the CPU 401 acquires the interface number 301 of the switch 30 .

続いて、CPU401は、ステップS206において取得したインターフェース番号から入力された通信フローを特定する(ステップS207)。すなわち、CPU401は、図9のフローレコードの集合を検索し、入力インターフェース番号が301のフローレコード506を取得する。 Subsequently, CPU 401 identifies the input communication flow from the interface number acquired in step S206 (step S207). That is, the CPU 401 searches the set of flow records in FIG. 9 and acquires the flow record 506 whose input interface number is 301 .

CPU401は、ステップS204に戻り、ステップS207において特定した通信フローが出力されたインターフェース番号を取得する。すなわち、CPU401は、フローレコード506の出力インターフェース番号302を取得する。そして、CPU401は、図5に示す接続情報から、インターフェース302の接続先が仮想スイッチ23であると判断する。この時点で、CPU401は、フローID1によって表される通信フローが、仮想スイッチ13、スイッチ30、仮想スイッチ23を通過していることを特定することができる。 The CPU 401 returns to step S204 and acquires the interface number to which the communication flow specified in step S207 was output. That is, the CPU 401 acquires the output interface number 302 of the flow record 506 . Then, the CPU 401 determines that the connection destination of the interface 302 is the virtual switch 23 from the connection information shown in FIG. At this point, CPU 401 can identify that the communication flow represented by flow ID 1 passes through virtual switch 13 , switch 30 , and virtual switch 23 .

CPU401は、このようなインターフェース番号のマッチング処理(ステップS204~ステップS207の処理)を繰り返し実行することで、仮想マシン12までの通信フローの経路を特定することができる。すなわち、仮想スイッチ13、スイッチ30、仮想スイッチ23、仮想ルータ21、仮想スイッチ23、スイッチ30、仮想スイッチ13、仮想マシン12の順で経路が特定される。CPU401は、インターフェース番号の接続先が仮想マシンであると判断した場合(ステップS205でYES)、特定した経路情報をHDD404に格納する。 The CPU 401 can identify the path of the communication flow up to the virtual machine 12 by repeatedly executing such interface number matching processing (the processing of steps S204 to S207). That is, the route is specified in the order of the virtual switch 13, switch 30, virtual switch 23, virtual router 21, virtual switch 23, switch 30, virtual switch 13, and virtual machine 12. FIG. When CPU 401 determines that the connection destination of the interface number is a virtual machine (YES in step S205), CPU 401 stores the specified route information in HDD 404. FIG.

さらに、CPU401は、ステップS204~ステップS207と同様の処理を繰り返し実行することで、ステップS203において選択したフロー情報の入力側の経路を特定する。すなわち、CPU401は、ステップS204において、通信フローが入力されたインターフェース番号を取得し、ステップS207において、取得したインターフェース番号から出力された通信フローを特定する。これにより、仮想マシン11から仮想スイッチ13まで通信フローの経路が特定される。CPU401は、仮想マシン11から仮想マシン12までの全体の経路をHDD404に格納するとともに、表示装置、記憶媒体などに出力する(ステップS208)。 Further, the CPU 401 repeats the same processes as steps S204 to S207 to specify the input-side route of the flow information selected in step S203. That is, in step S204, CPU 401 acquires the interface number to which the communication flow is input, and in step S207, identifies the output communication flow from the acquired interface number. As a result, the route of the communication flow from the virtual machine 11 to the virtual switch 13 is identified. The CPU 401 stores the entire route from the virtual machine 11 to the virtual machine 12 in the HDD 404 and outputs it to a display device, a storage medium, or the like (step S208).

本実施形態によれば、複数のネットワーク装置で収集されたフロー情報の中から、同一の通信フローに関するフロー情報を識別し、該フロー情報とネットワークの接続情報に基づいて、通信フローの経路を特定することが可能となる。これにより、システム上を流れる通信フローの経路、経路に関する統計量などの情報を可視化することができる。また、フロー情報の識別は、フロー情報に含まれるIPヘッダ、TCPヘッダまたはUDPヘッダに関する項目に基づいて行われ、複数箇所で収集された異なる通信フローを表す複数のフロー情報を、通信フローごとに一意に同定することができる。 According to this embodiment, flow information related to the same communication flow is identified from flow information collected by a plurality of network devices, and the path of the communication flow is specified based on the flow information and network connection information. It becomes possible to This makes it possible to visualize information such as the route of the communication flow flowing through the system and the statistics related to the route. In addition, identification of flow information is performed based on items related to IP headers, TCP headers, or UDP headers included in the flow information. can be uniquely identified.

[第2実施形態]
上述の実施形態における通信解析システムでは、システム上のすべてのネットワーク装置(ノード)においてフロー情報が収集できる構成であったが、フロー情報が収集できないノードが部分的に含まれていてもよい。本実施形態における通信解析システムについて、第1実施形態に係る通信解析システムと異なる構成を中心に説明する。
[Second embodiment]
Although the communication analysis system in the above-described embodiments is configured so that flow information can be collected from all network devices (nodes) on the system, some nodes may not collect flow information. A communication analysis system according to the present embodiment will be described with a focus on the configuration different from that of the communication analysis system according to the first embodiment.

図10は、本実施形態に係る通信解析システムのブロック図である。図10には、通信解析システムのネットワークの一部が示されており、フローコレクタ40およびその他のネットワーク装置は図示されていない。通信解析システムは、仮想マシン14、仮想スイッチ15、仮想マシン16、仮想スイッチ17、スイッチ31~33を備えている。 FIG. 10 is a block diagram of a communication analysis system according to this embodiment. FIG. 10 shows a portion of the network of the communication analysis system, flow collector 40 and other network devices are not shown. The communication analysis system includes a virtual machine 14, a virtual switch 15, a virtual machine 16, a virtual switch 17, and switches 31-33.

仮想スイッチ15はIF151~153を有し、IF151~153は、それぞれスイッチ31、仮想マシン14、スイッチ33に接続されている。仮想スイッチ17はIF171~173を有し、IF171~173は、それぞれスイッチ32、仮想マシン16、スイッチ33に接続されている。仮想スイッチ15、17は、スイッチ33を経由するルートと、スイッチ31、32を経由するルートの2つのルートで接続されている。なお、スイッチ31~33が有するIFの図示は省略されている。 The virtual switch 15 has IFs 151 to 153, and the IFs 151 to 153 are connected to the switch 31, the virtual machine 14, and the switch 33, respectively. The virtual switch 17 has IFs 171 to 173, and the IFs 171 to 173 are connected to the switch 32, the virtual machine 16, and the switch 33, respectively. The virtual switches 15 and 17 are connected by two routes, a route via the switch 33 and a route via the switches 31 and 32 . Note that the IFs of the switches 31 to 33 are omitted from the illustration.

スイッチ31~33においては、フロー集計プロトコルは動作しておらず、フロー情報を取得することができない。この場合、取得部44は、NMSから取得した接続情報を、仮想スイッチ15、17がスイッチ31~33を経由することなく直接接続されているように書き換える。これにより、スイッチ31~33の部分をブラックボックスとして解析することが可能となる。仮想スイッチ15、17に関する接続情報の一例を図11に示す。 In the switches 31 to 33, the flow aggregation protocol is not operating and flow information cannot be acquired. In this case, the acquisition unit 44 rewrites the connection information acquired from the NMS so that the virtual switches 15 and 17 are directly connected without going through the switches 31-33. This makes it possible to analyze the portions of the switches 31 to 33 as black boxes. An example of connection information regarding the virtual switches 15 and 17 is shown in FIG.

図11の接続情報によれば、仮想スイッチ15、17間の詳細な経路、すなわちスイッチ31~33の接続情報は不明であるが、スイッチ31~33の部分を除くネットワーク全体のフロー経路を解析することができる。このように、本実施形態の接続情報は、ネットワーク全体のフロー経路の理解に充分に役立つ情報となり得る。また、本実施形態の手法を応用することで、例えばVxLAN(Virtual eXtensible Local Area Network)のような通信経路の途中でトンネリングを行う通信に対する解析においても、トンネル内の詳細経路以外は経路の可視化が可能である。 According to the connection information in FIG. 11, the detailed route between the virtual switches 15 and 17, that is, the connection information of the switches 31 to 33 is unknown, but the flow route of the entire network excluding the parts of the switches 31 to 33 is analyzed. be able to. In this way, the connection information of this embodiment can be information that is sufficiently useful for understanding the flow path of the entire network. Further, by applying the method of the present embodiment, even in the analysis of communication tunneling in the middle of a communication path such as VxLAN (Virtual eXtensible Local Area Network), it is possible to visualize the path other than the detailed path in the tunnel. It is possible.

[他の実施形態]
図12は、上述の実施形態におけるフローコレクタ(通信解析装置)40の概略構成図である。通信解析装置40は、受信部41、識別部42、解析部45を備えている。受信部41は、複数の仮想マシンを含むネットワーク内で収集された複数のフロー情報を受信する。識別部は、複数のフロー情報の中から、仮想マシン間の同一の通信フローを表すフロー情報の集合を特定する。解析部45は、フロー情報の集合およびネットワークの接続情報に基づいて、通信フローの経路を特定する。
[Other embodiments]
FIG. 12 is a schematic configuration diagram of the flow collector (communication analysis device) 40 in the above embodiment. The communication analysis device 40 includes a reception section 41 , an identification section 42 and an analysis section 45 . The receiving unit 41 receives a plurality of pieces of flow information collected within a network including a plurality of virtual machines. The identifying unit identifies a set of pieces of flow information representing the same communication flow between virtual machines from a plurality of pieces of flow information. The analysis unit 45 identifies the route of the communication flow based on the set of flow information and the network connection information.

本発明は、上述の実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において適宜変更可能である。例えば、フロー同定キーは、送信元IPアドレス、宛先IPアドレス、送信元ポート番号、宛先ポート番号、IPプロトコル番号、ToSフラグ値の6つの値に限定されない、例えば、VLANのIDを追加してもよい。これにより、仮想マシン11と仮想マシン12が互いに異なるVLANに属している場合に発生し得るIPアドレスの重複を排除することができる。また、フロー同定キーを用いてフロー情報を識別する際に、収集時刻を考慮してもよい。例えば、収集時刻の差が、所定の通信遅延時間の範囲内に無い場合には、同一の通信フローではないと判断することができる。 The present invention is not limited to the above-described embodiments, and can be modified as appropriate without departing from the gist of the present invention. For example, the flow identification key is not limited to the six values of source IP address, destination IP address, source port number, destination port number, IP protocol number, and ToS flag value. good. This makes it possible to eliminate duplication of IP addresses that may occur when the virtual machine 11 and the virtual machine 12 belong to different VLANs. Also, when identifying flow information using the flow identification key, the collection time may be considered. For example, if the difference in collection times is not within a predetermined communication delay time range, it can be determined that the communication flows are not the same.

上述の実施形態の機能を実現するように該実施形態の構成を動作させるプログラム(より具体的には、図7、図8に示す方法をコンピュータに実行させるプログラム)を記録媒体に記録させ、該記録媒体に記録されたプログラムをコードとして読み出し、コンピュータにおいて実行する処理方法も各実施形態の範疇に含まれる。すなわち、コンピュータ読取可能な記録媒体も各実施形態の範囲に含まれる。また、上述のプログラムが記録された記録媒体はもちろん、そのプログラム自体も各実施形態に含まれる。 A program for operating the configuration of the embodiment so as to realize the functions of the above-described embodiment (more specifically, a program for causing a computer to execute the methods shown in FIGS. 7 and 8) is recorded on a recording medium, A processing method of reading a program recorded on a recording medium as a code and executing it on a computer is also included in the category of each embodiment. That is, a computer-readable recording medium is also included in the scope of each embodiment. In addition to the recording medium on which the above program is recorded, the program itself is also included in each embodiment.

該記録媒体としては例えばフロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、磁気テープ、不揮発性メモリカード、ROMを用いることができる。また該記録媒体に記録されたプログラム単体で処理を実行しているものに限らず、他のソフトウェア、拡張ボードの機能と共同して、OS上で動作して処理を実行するものも各実施形態の範疇に含まれる。 For example, a floppy (registered trademark) disk, hard disk, optical disk, magneto-optical disk, CD-ROM, magnetic tape, nonvolatile memory card, and ROM can be used as the recording medium. Further, not only the program recorded on the recording medium alone executes the process, but also the one that operates on the OS and executes the process in cooperation with other software and functions of the expansion board. included in the category of

上述の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。 Some or all of the above-described embodiments can also be described as the following additional remarks, but are not limited to the following.

(付記1)
複数の仮想マシンを含むネットワーク内で収集された複数のフロー情報を受信する受信部と、
前記複数のフロー情報の中から、前記仮想マシン間の同一の通信フローを表すフロー情報の集合を特定する識別部と、
前記フロー情報の集合および前記ネットワークの接続情報に基づいて、前記通信フローの経路を特定する解析部とを備える通信解析装置。
(Appendix 1)
a receiving unit for receiving a plurality of flow information collected in a network including a plurality of virtual machines;
an identification unit that identifies, from among the plurality of pieces of flow information, a set of flow information representing the same communication flow between the virtual machines;
and an analysis unit that identifies a route of the communication flow based on the set of flow information and the connection information of the network.

(付記2)
前記フロー情報は、IP(Internet Protocol)ヘッダ、TCP(Transmission Control Protocol)ヘッダまたはUDP(User Datagram Protocol)ヘッダに関する項目を含み、前記識別部は、前記項目に基づいて前記フロー情報の集合を特定する付記1に記載の通信解析装置。
(Appendix 2)
The flow information includes items related to an IP (Internet Protocol) header, a TCP (Transmission Control Protocol) header, or a UDP (User Datagram Protocol) header, and the identification unit identifies the set of flow information based on the items. The communication analysis device according to appendix 1.

(付記3)
前記識別部は、送信元IPアドレス、宛先IPアドレス、送信元ポート番号、宛先ポート番号、IPプロトコル番号、ToS(Type of Service)フラグ値の組が合致するフロー情報を同一の通信フローと判断する付記2に記載の通信解析装置。
(Appendix 3)
The identifying unit determines that flow information matching a set of a source IP address, a destination IP address, a source port number, a destination port number, an IP protocol number, and a ToS (Type of Service) flag value is the same communication flow. The communication analysis device according to appendix 2.

(付記4)
前記識別部は、前記フロー情報の集合に対して同一の識別子を付与する付記1乃至3のいずれかに記載の通信解析装置。
(Appendix 4)
4. The communication analysis device according to any one of appendices 1 to 3, wherein the identification unit assigns the same identifier to the set of flow information.

(付記5)
前記識別子が付与された前記複数のフロー情報を記憶する記憶部を備え、
前記解析部は、前記識別子に基づいて前記記憶部から前記フロー情報の集合を抽出する付記4に記載の通信解析装置。
(Appendix 5)
a storage unit that stores the plurality of pieces of flow information to which the identifiers are assigned;
5. The communication analysis device according to appendix 4, wherein the analysis unit extracts the set of flow information from the storage unit based on the identifier.

(付記6)
前記フロー情報は、前記仮想マシン間の通信を中継する複数のノードのそれぞれにおいて収集され、収集が行われた前記ノードのIPアドレスおよびインターフェース番号を含み、
前記接続情報は、接続されている前記ノードのペアまたは前記ノードと前記仮想マシンのペアのそれぞれのIPアドレスおよびインターフェース番号を含む付記1乃至5のいずれかに記載の通信解析装置。
(Appendix 6)
the flow information is collected in each of a plurality of nodes that relay communication between the virtual machines, and includes the IP address and interface number of the node where the collection was performed;
6. The communication analysis device according to any one of appendices 1 to 5, wherein the connection information includes an IP address and an interface number of each of the connected pair of nodes or the pair of the node and the virtual machine.

(付記7)
前記解析部は、前記フロー情報に含まれるインターフェース番号と前記接続情報に含まれるインターフェース番号とをマッチングさせることで前記通信フローの経路を特定する付記6に記載の通信解析装置。
(Appendix 7)
7. The communication analysis device according to appendix 6, wherein the analysis unit identifies the path of the communication flow by matching an interface number included in the flow information and an interface number included in the connection information.

(付記8)
前記ノードは、仮想スイッチまたは仮想ルータである付記6または7に記載の通信解析装置。
(Appendix 8)
8. The communication analysis device according to appendix 6 or 7, wherein the node is a virtual switch or a virtual router.

(付記9)
複数の仮想マシンを含むネットワーク内で収集された複数のフロー情報を受信するステップと、
前記複数のフロー情報の中から、前記仮想マシン間の同一の通信フローを表すフロー情報の集合を特定するステップと、
前記フロー情報の集合および前記ネットワークの接続情報に基づいて、前記通信フローの経路を特定するステップとを備える通信解析方法。
(Appendix 9)
receiving a plurality of flow information collected in a network including a plurality of virtual machines;
identifying, from among the plurality of pieces of flow information, a set of flow information representing the same communication flow between the virtual machines;
and identifying a route of the communication flow based on the set of flow information and the connection information of the network.

(付記10)
複数の仮想マシンを含むネットワーク内で収集された複数のフロー情報を受信するステップと、
前記複数のフロー情報の中から、前記仮想マシン間の同一の通信フローを表すフロー情報の集合を特定するステップと、
前記フロー情報の集合および前記ネットワークの接続情報に基づいて、前記通信フローの経路を特定するステップとをコンピュータに実行させるプログラム。
(Appendix 10)
receiving a plurality of flow information collected in a network including a plurality of virtual machines;
identifying, from among the plurality of pieces of flow information, a set of flow information representing the same communication flow between the virtual machines;
and identifying a route of the communication flow based on the set of flow information and the connection information of the network.

10 ホスト装置
11、12 仮想マシン
13 仮想スイッチ
101、102、103 インターフェース
20 ホスト装置
21 仮想ルータ
23 仮想マシン
23 仮想スイッチ
201、202 インターフェース
30 スイッチ
301、302 インターフェース
40 フローコレクタ
41 受信部
42 識別部
43 記憶部
431 ID管理データベース
432 フロー情報データベース
44 取得部
45 解析部
46 出力部
501~507 フローレコード
10 host devices 11, 12 virtual machine 13 virtual switches 101, 102, 103 interface 20 host device 21 virtual router 23 virtual machine 23 virtual switches 201, 202 interface 30 switches 301, 302 interface 40 flow collector 41 receiver 42 identifier 43 storage Part 431 ID management database 432 Flow information database 44 Acquisition part 45 Analysis part 46 Output part 501 to 507 Flow record

Claims (10)

複数の仮想マシンを含むネットワーク内で収集された複数のフロー情報を受信する受信部と、
前記複数のフロー情報の中から、前記仮想マシン間の同一の通信フローを表すフロー情報の集合を特定する識別部と、
前記フロー情報の集合および前記ネットワークの接続情報に基づいて、前記通信フローの経路を特定する解析部と
を備え、
記フロー情報の集合に対してフローIDが付与され、前記フローIDが少なくとも送信元IPアドレスと宛先IPアドレスと仮想ローカルエリアネットワークのIDとを連結した値を含むフロー同定キーと紐付けられている通信解析装置。
a receiver that receives a plurality of flow information collected in a network that includes a plurality of virtual machines;
an identification unit that identifies, from among the plurality of pieces of flow information, a set of flow information representing the same communication flow between the virtual machines;
an analysis unit that identifies a route of the communication flow based on the set of flow information and the connection information of the network;
a flow identification key, wherein a flow ID is assigned to the set of flow information, and the flow ID includes at least a concatenated value of a source IP address, a destination IP address, and a virtual local area network ID; Linked communication analysis device.
前記フロー情報は、IP(Internet Protocol)ヘッダ、TCP(Transmission Control Protocol)ヘッダまたはUDP(User Datagram Protocol)ヘッダに関する項目を含み、前記識別部は、前記項目に基づいて前記フロー情報の集合を特定する請求項1に記載の通信解析装置。 The flow information includes items related to an IP (Internet Protocol) header, a TCP (Transmission Control Protocol) header, or a UDP (User Datagram Protocol) header, and the identification unit identifies the set of flow information based on the items. The communication analysis device according to claim 1. 前記識別部は、送信元IPアドレス、宛先IPアドレス、送信元ポート番号、宛先ポート番号、IPプロトコル番号、ToS(Type of Service)フラグ値の組が合致するフロー情報を同一の通信フローと判断する請求項2に記載の通信解析装置。 The identifying unit determines that flow information matching a set of a source IP address, a destination IP address, a source port number, a destination port number, an IP protocol number, and a ToS (Type of Service) flag value is the same communication flow. 3. The communication analysis device according to claim 2. 前記識別部は、前記フロー情報の集合に対して同一のフローIDを付与する請求項1乃至3のいずれか1項に記載の通信解析装置。 4. The communication analyzing apparatus according to any one of claims 1 to 3, wherein the identification unit assigns the same flow ID to the set of flow information. 前記フローIDが付与された前記複数のフロー情報を記憶する記憶部を備え、
前記解析部は、前記フローIDに基づいて前記記憶部から前記フロー情報の集合を抽出する請求項4に記載の通信解析装置。
A storage unit that stores the plurality of flow information to which the flow ID is assigned,
5. The communication analysis device according to claim 4, wherein the analysis unit extracts the set of flow information from the storage unit based on the flow ID .
前記フロー情報は、前記仮想マシン間の通信を中継する複数のノードのそれぞれにおいて収集され、収集が行われた前記ノードのIPアドレスおよびインターフェース番号を含み、
前記接続情報は、接続されている前記ノードのペアまたは前記ノードと前記仮想マシンのペアのそれぞれのIPアドレスおよびインターフェース番号を含む請求項1乃至5のいずれか1項に記載の通信解析装置。
the flow information is collected in each of a plurality of nodes that relay communication between the virtual machines, and includes the IP address and interface number of the node where the collection was performed;
6. The communication analyzing apparatus according to any one of claims 1 to 5, wherein said connection information includes an IP address and an interface number of each of said connected pair of nodes or said pair of said node and said virtual machine.
前記解析部は、前記フロー情報に含まれるインターフェース番号と前記接続情報に含まれるインターフェース番号とをマッチングさせることで前記通信フローの経路を特定する請求項6に記載の通信解析装置。 7. The communication analysis device according to claim 6, wherein the analysis unit identifies the route of the communication flow by matching an interface number included in the flow information and an interface number included in the connection information. 前記ノードは、仮想スイッチまたは仮想ルータである請求項6または7に記載の通信解析装置。 8. The communication analysis device according to claim 6, wherein said node is a virtual switch or a virtual router. 複数の仮想マシンを含むネットワーク内で収集された複数のフロー情報を受信するステップと、
前記複数のフロー情報の中から、前記仮想マシン間の同一の通信フローを表すフロー情報の集合をフロー同定キーと紐付けられているフローIDを用いて特定するステップと、
前記フロー情報の集合および前記ネットワークの接続情報に基づいて、前記通信フローの経路を特定するステップと
を備え、
記フロー情報の集合に対してフローIDが付与され、前記フローIDが少なくとも送信元IPアドレスと宛先IPアドレスと仮想ローカルエリアネットワークのIDとを連結した値を含むフロー同定キーと紐付けられている、
通信解析方法。
receiving a plurality of flow information collected in a network including a plurality of virtual machines;
identifying, from among the plurality of pieces of flow information, a set of flow information representing the same communication flow between the virtual machines using a flow ID associated with a flow identification key;
determining a route of the communication flow based on the set of flow information and the network connection information;
a flow identification key, wherein a flow ID is assigned to the set of flow information, and the flow ID includes at least a concatenated value of a source IP address, a destination IP address, and a virtual local area network ID; tied up,
Communication analysis method.
複数の仮想マシンを含むネットワーク内で収集された複数のフロー情報を受信するステップと、
前記複数のフロー情報の中から、前記仮想マシン間の同一の通信フローを表すフロー情報の集合をフロー同定キーと紐付けられているフローIDを用いて特定するステップと、
前記フロー情報の集合および前記ネットワークの接続情報に基づいて、前記通信フローの経路を特定するステップと
をコンピュータに実行させるプログラムであって、
記フロー情報の集合に対してフローIDが付与され、前記フローIDが少なくとも送信元IPアドレスと宛先IPアドレスと仮想ローカルエリアネットワークのIDとを連結した値を含むフロー同定キーと紐付けられている、
プログラム
receiving a plurality of flow information collected in a network including a plurality of virtual machines;
identifying, from among the plurality of pieces of flow information, a set of flow information representing the same communication flow between the virtual machines using a flow ID associated with a flow identification key;
A program for causing a computer to execute a step of identifying a route of the communication flow based on the set of flow information and the connection information of the network,
a flow identification key, wherein a flow ID is assigned to the set of flow information, and the flow ID includes at least a concatenated value of a source IP address, a destination IP address, and a virtual local area network ID; tied up,
program .
JP2017066717A 2017-03-30 2017-03-30 COMMUNICATION ANALYSIS DEVICE, COMMUNICATION ANALYSIS METHOD AND PROGRAM Active JP7164140B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017066717A JP7164140B2 (en) 2017-03-30 2017-03-30 COMMUNICATION ANALYSIS DEVICE, COMMUNICATION ANALYSIS METHOD AND PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017066717A JP7164140B2 (en) 2017-03-30 2017-03-30 COMMUNICATION ANALYSIS DEVICE, COMMUNICATION ANALYSIS METHOD AND PROGRAM

Publications (2)

Publication Number Publication Date
JP2018170639A JP2018170639A (en) 2018-11-01
JP7164140B2 true JP7164140B2 (en) 2022-11-01

Family

ID=64018994

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017066717A Active JP7164140B2 (en) 2017-03-30 2017-03-30 COMMUNICATION ANALYSIS DEVICE, COMMUNICATION ANALYSIS METHOD AND PROGRAM

Country Status (1)

Country Link
JP (1) JP7164140B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014220645A (en) 2013-05-08 2014-11-20 富士通株式会社 Fault determination program, device, system, and method
JP2015142269A (en) 2014-01-29 2015-08-03 日本電気株式会社 Communication analyzer, communication analysis system, communication analysis method, and program
JP2015171052A (en) 2014-03-07 2015-09-28 富士通株式会社 Identification device, identification program and identification method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015012317A (en) * 2013-06-26 2015-01-19 西日本電信電話株式会社 Route identifying device, route identifying method, and program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014220645A (en) 2013-05-08 2014-11-20 富士通株式会社 Fault determination program, device, system, and method
JP2015142269A (en) 2014-01-29 2015-08-03 日本電気株式会社 Communication analyzer, communication analysis system, communication analysis method, and program
JP2015171052A (en) 2014-03-07 2015-09-28 富士通株式会社 Identification device, identification program and identification method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
饗庭秀一郎 他,フロー解析による仮想マシンのトラフィック制御に関する検討,電子情報通信学会技術研究報告 Vol.110 No.375,日本,社団法人電子情報通信学会,2011年 1月13日,p.17-22

Also Published As

Publication number Publication date
JP2018170639A (en) 2018-11-01

Similar Documents

Publication Publication Date Title
US11128550B2 (en) Logical network traffic analysis
US11646952B2 (en) Method and network device for tagging network traffic flows
RU2589340C2 (en) Network system and method of acquiring vlan tag data
US8751642B2 (en) Method and system for management of sampled traffic data
CN107094090B (en) Physical path determination for virtual network packet flows
US20110170402A1 (en) Apparatus and method for generating topology tree
US8203962B2 (en) Network monitoring device, network monitoring method, and network monitoring program
JP5522495B2 (en) Computer system, controller, controller manager, communication path analysis method
US20170317899A1 (en) Using traffic data to determine network topology
CN109672562A (en) Data processing method, device, electronic equipment and storage medium
US11750490B2 (en) Communication coupling verification method, storage medium, and network verification apparatus
JP5883926B2 (en) Management server and flow processing method
KR101984478B1 (en) Method and apparatus for determining data transfer path by using dynamic network traffic analysis based on software defined networking
JP7164140B2 (en) COMMUNICATION ANALYSIS DEVICE, COMMUNICATION ANALYSIS METHOD AND PROGRAM
KR20180058592A (en) Software Defined Network Controller
JP6295681B2 (en) Communication analysis device, communication analysis system, communication analysis method, and program
US11438237B1 (en) Systems and methods for determining physical links between network devices
US9979613B2 (en) Analyzing network traffic in a computer network
US10904123B2 (en) Trace routing in virtual networks
KR20180058593A (en) Software Defined Network Whitebox Switch
Ghazali et al. Enhanced IPFIX flow monitoring for VXLAN based cloud overlay networks.
JP7444249B2 (en) Table entry count measuring device, method, and program
US11616731B1 (en) Determining a time-to-live budget for network traffic
CN117499274A (en) Flow monitoring method, device, equipment and medium based on elastic public network IP
Pakhare Velocity: A NetFlow based optimized Geo-IP Lookup tool

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20180413

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201210

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210208

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210629

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210910

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20210910

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20210921

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20210928

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20211029

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20211102

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20220104

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20220331

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20220412

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20220421

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220620

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20220816

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20220825

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20220920

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20220920

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221013

R151 Written notification of patent or utility model registration

Ref document number: 7164140

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151