JP6295681B2 - Communication analysis device, communication analysis system, communication analysis method, and program - Google Patents
Communication analysis device, communication analysis system, communication analysis method, and program Download PDFInfo
- Publication number
- JP6295681B2 JP6295681B2 JP2014014380A JP2014014380A JP6295681B2 JP 6295681 B2 JP6295681 B2 JP 6295681B2 JP 2014014380 A JP2014014380 A JP 2014014380A JP 2014014380 A JP2014014380 A JP 2014014380A JP 6295681 B2 JP6295681 B2 JP 6295681B2
- Authority
- JP
- Japan
- Prior art keywords
- communication
- record
- switch
- virtual
- domain
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
本発明は、通信解析装置、通信解析システム、通信解析方法、及び、プログラム、特に、仮想マシン(Virtual Machine, 以後VM)間の通信を対象とした通信解析装置、通信解析システム、通信解析方法、及び、プログラムに関する。 The present invention relates to a communication analysis device, a communication analysis system, a communication analysis method, and a program, in particular, a communication analysis device, a communication analysis system, a communication analysis method, for communication between virtual machines (hereinafter referred to as VMs), And the program.
昨今、クラウドシステムをマルチテナント構成で運用することが増えてきている。IaaS(Infrastructure as a Service)型のクラウドシステムの場合、クラウドシステムの事業者(以後クラウド事業者)は、VMを動作させるホストマシン(以後ホストマシン)を用意する。そして、クラウド事業者)は、ホストマシン上に複数の仮想マシンを用意し、それを複数の利用者(以後テナント利用者)に貸し出すなどしてマルチテナント構成を実現している。 In recent years, cloud systems are increasingly operated in a multi-tenant configuration. In the case of an IaaS (Infrastructure as a Service) type cloud system, a cloud system operator (hereinafter referred to as a cloud operator) prepares a host machine (hereinafter referred to as a host machine) for operating a VM. A cloud operator) implements a multi-tenant configuration by preparing a plurality of virtual machines on a host machine and lending them to a plurality of users (hereinafter referred to as tenant users).
1つのテナントは複数のホストマシン上に渡って構成されることもある。すなわち、テナント内の複数のVMが、複数のホストマシン上に分散配置されることもある。この場合、対障害性を確保するためなどの目的で、1つのVMが複数のホストマシンを自動的に移動する場合がある。このような技術には、例えばライブマイグレーションと呼ばれる既存技術がある。 One tenant may be configured across multiple host machines. In other words, a plurality of VMs in a tenant may be distributed on a plurality of host machines. In this case, one VM may automatically move multiple host machines for the purpose of ensuring fault tolerance. As such a technique, for example, there is an existing technique called live migration.
テナントが複数のホストマシン上に渡って構成される場合、そのホストマシン群は、物理的に近い位置にいるとは限らない。クラウド業者は、例えば、VxLAN(Virtual eXtensible Local Area Network)などのネットワークトンネリング技術により仮想ネットワークを構築し、その仮想ネットワーク上にテナントを構成することができる。その場合、複数のホストマシンが物理的に離れた位置にあっても、テナント内は1つのネットワークとして通信が可能となる。 When a tenant is configured across a plurality of host machines, the host machine group is not necessarily physically located. The cloud service provider can construct a virtual network by a network tunneling technology such as VxLAN (Virtual eXtensible Local Area Network) and configure a tenant on the virtual network. In that case, even if a plurality of host machines are physically separated, the tenant can communicate as one network.
物理的に離れた位置にあるVM間の通信は、一般にはWAN(Wide Area Network)を経由するため、LAN(Local Area Network)内の通信よりも帯域が少なく往復時間もかかることが多く、一般的には遅くなる。そのため、同一テナント内であっても、VMが稼働するホストマシンの物理的距離が遠い場合は、VM間通信の速度が十分出ない場合も考えられる。 Communication between VMs that are physically separated from each other generally goes through a WAN (Wide Area Network), so it often takes less bandwidth and round-trip time than communication within a LAN (Local Area Network). It will be slower. Therefore, even within the same tenant, if the physical distance of the host machine on which the VM runs is long, the communication speed between VMs may not be sufficient.
このような状況に対し、VM間の通信状況、すなわち、VM間の通信がどのホストマシン間で行われているのか、その通信量等はどれくらいか、という情報が可視化されると、運用における最適化計画が立てやすい等、都合がよい。また、この情報は、クラウド事業者だけでなく、テナント利用者自身から参照できるほうがよい。 In response to this situation, when the information on the communication status between VMs, that is, between which host machines is communicating between VMs and how much traffic is available, is optimal for operation. It is convenient because it is easy to make a conversion plan. In addition, it is better that this information can be referred to not only by the cloud operator but also by the tenant user.
ところで、通信の量をその内容ごとに統計的に収集する技術として、NetFlowやIPFIXといったフロー集計の標準プロトコルがある。ホストマシン上の仮想スイッチや、途中の経路にある物理スイッチがNetFlow等に対応していれば、NetFlow等を受信・蓄積できる装置またはソフトウェアを用意することによって、VM間の通信フローの情報を収集することは実現できる。 By the way, as a technique for statistically collecting the amount of communication for each content, there are standard protocols for flow aggregation such as NetFlow and IPFIX. If the virtual switch on the host machine or the physical switch along the route supports NetFlow etc., collect information on the communication flow between VMs by preparing a device or software that can receive and store NetFlow etc. It can be realized.
また、収集したフロー情報には、NetFlow等に含まれる情報、例えば送信元/宛先IPアドレス、VLAN情報、スイッチ上の通過インタフェース情報、などは含まれている。しかし、これらから、クラウド事業者やテナントの管理者が、直接的に同一ホストマシン内で完結している通信なのかどうかを容易に判断できない。 The collected flow information includes information included in NetFlow, for example, source / destination IP address, VLAN information, and passing interface information on the switch. However, it is not easy for a cloud operator or a tenant administrator to determine whether the communication is directly completed within the same host machine.
この状況は、マルチテナントシステムにおけるテナントに限られず、分散処理を実行する他のアプリケーションシステムについても発生しうる。 This situation is not limited to a tenant in a multi-tenant system, and may occur in other application systems that execute distributed processing.
上記課題への対応に関連して、以下の技術が公開されている。 In relation to the above-mentioned problem, the following technologies are disclosed.
特許文献1は、クラウドネットワーク環境においても粒度の細かいネットワーク遅延を測定する装置を開示する。この装置は、転送装置から収集したフロー情報を蓄積し、蓄積されたフロー情報を参照してパケットが送信された時刻、応答が受信された時刻の差分を計算して遅延を測定する。この装置は、測定対象トラフィックの単位を特定するためのキー情報をフィルタリング条件に設定する。
特許文献2は、2つの拠点間をVPN(Virtual Private Network)で接続し、拠点間ではVLAN-ID(Virtual Local Area Network IDentIFier)を用い、拠点内では他のアドレスを用いて通信を行うクラウドシステムを開示する。
特許文献1及び2の技術が開示する装置、及び、システムは、通信とホストマシンの関係を管理、判断しない。本発明は、複数のホストマシンで実行されるVM相互間の通信が、同一ホストマシン内で完結している通信なのかどうかを判別する装置、方法、及びプログラムを提供することを目的とする。
The apparatuses and systems disclosed in the technologies of
本発明の一実施形態にかかる通信解析装置は、仮想マシンと仮想スイッチ含む複数のホスト装置が接続された通信網における、仮想スイッチの、スイッチ番号、ホスト番号、前記通信網との接続端子番号を記憶する定義記憶手段と、仮想ホスト間の通信ごとに、中継した仮想スイッチから受信した、スイッチ番号、入力端子番号、出力端子番号、通信アドレス、及び、通信時刻を包むレコードを記憶する履歴記憶手段と、前記履歴記憶手段から、出力端子番号が前記通信網との接続端子番号である第1のレコードと、前記入力端子番号が前記通信網との接続端子番号であり、かつ、前記第1のレコードと通信アドレス及び通信時刻が一致する第2のレコードを抽出すると、前記第1のレコードのスイッチ番号から得られるホスト装置と、前記第2のレコードのスイッチ番号から得られるホスト装置間の通信を検出する取得手段と、を備える。 A communication analysis apparatus according to an embodiment of the present invention includes a switch number, a host number, and a connection terminal number of the communication network in a communication network in which a plurality of host devices including a virtual machine and a virtual switch are connected. Definition storage means for storing and history storage means for storing a record including a switch number, an input terminal number, an output terminal number, a communication address, and a communication time received from a relayed virtual switch for each communication between virtual hosts And from the history storage means, a first record whose output terminal number is a connection terminal number with the communication network, the input terminal number is a connection terminal number with the communication network, and the first record When a second record having the same communication address and communication time as the record is extracted, the host device obtained from the switch number of the first record; Comprising obtaining means for detecting communications between the host device obtained from the switch number of the second record, the.
本発明の一実施形態にかかる通信解析方法は、仮想マシンと仮想スイッチ含む複数のホスト装置が接続された通信網における、仮想スイッチの、スイッチ番号、ホスト番号、前記通信網との接続端子番号を記憶し、仮想ホスト間の通信ごとに、中継した仮想スイッチから受信した、スイッチ番号、入力端子番号、出力端子番号、通信アドレス、及び、通信時刻を包むレコードを記憶し、出力端子番号が前記通信網との接続端子番号である第1のレコードと、前記入力端子番号が前記通信網との接続端子番号であり、かつ、前記第1のレコードと通信アドレス及び通信時刻が一致する第2のレコードを抽出すると、前記第1のレコードのスイッチ番号から得られるホスト装置と、前記第2のレコードのスイッチ番号から得られるホスト装置間の通信を検出する。 In a communication analysis method according to an embodiment of the present invention, a switch number of a virtual switch, a host number, and a connection terminal number of the communication network in a communication network in which a plurality of host devices including a virtual machine and a virtual switch are connected. For each communication between the virtual hosts, a record that includes the switch number, input terminal number, output terminal number, communication address, and communication time received from the relayed virtual switch is stored, and the output terminal number is the communication A first record that is a connection terminal number with a network, and a second record in which the input terminal number is a connection terminal number with the communication network, and the communication address and communication time coincide with the first record. Is extracted between the host device obtained from the switch number of the first record and the host device obtained from the switch number of the second record. To detect the signal.
本発明にかかる装置等は、複数のホストマシンで実行されるVM相互間の通信が、同一ホストマシン内で完結している通信なのかどうかを明らかにすることができる。 The apparatus according to the present invention can clarify whether communication between VMs executed on a plurality of host machines is communication completed within the same host machine.
<第1の実施の形態>
(構成)
図1は、本発明にかかる通信解析システム50の全体構成例を示す。通信解析システム50は、クラウドシステムである。通信解析システム50は、複数台のホスト装置20とホスト装置20を接続するスイッチ30を包含する複数のドメインが、WAN40(Wide Area Network)で接続されて構成される。何れかのドメインのスイッチ30には、通信解析装置10が接続される。
<First Embodiment>
(Constitution)
FIG. 1 shows an example of the overall configuration of a communication analysis system 50 according to the present invention. The communication analysis system 50 is a cloud system. The communication analysis system 50 is configured by connecting a plurality of domains including a plurality of
各ホスト装置20内には、VM29と仮想スイッチ22が配置されている。なお、VM29と仮想スイッチ22は、コンピュータであるホスト装置20のプロセッサが実行するソフトウェアによって仮想的に実現されている。
In each
仮想スイッチ22は、複数の接続端子、即ち、接続インタフェースを備えており、VM29及びスイッチ30と接続されている。各接続インタフェースには、識別番号が割り当てられている。以降、VM29に接続されている接続インタフェースをアクセスIF23(ここで、IFはインタフェースの略)、スイッチ30に接続されている接続インタフェースをトランクIF24と記載する。 The virtual switch 22 includes a plurality of connection terminals, that is, a connection interface, and is connected to the VM 29 and the switch 30. An identification number is assigned to each connection interface. Hereinafter, the connection interface connected to the VM 29 is referred to as an access IF 23 (where IF is an abbreviation of the interface), and the connection interface connected to the switch 30 is referred to as a trunk IF 24.
仮想スイッチ22は、全ての接続インタフェース(アクセスIF23及びトランクIF24)について通信フロー情報を取得して、通信解析装置10に送信する。ここでいう通信は、例えば、VM29間の通信である。
The virtual switch 22 acquires communication flow information for all connection interfaces (access IF 23 and trunk IF 24) and transmits the communication flow information to the
なお、VM29間の通信速度は、同一ホスト装置20内のVM29間が一番早く、次いで、同一ドメインの異なるホスト装置20内のVM29間が早く、異なるドメインのホスト装置20内のVM29間が一番遅い。したがって、VM29間の通信が、どのように実施されているかは、ユーザにとって関心事である。
The communication speed between VMs 29 is the fastest between VMs 29 in the
図1が示す通信解析システム50の例においては、ドメイン1のホスト装置1、2はスイッチ1に接続され、ドメイン2のホスト装置3、4はスイッチ2に接続されている。スイッチ1と2は、WAN40を介して接続されている。通信解析装置10は、ドメイン1のスイッチ1に接続されている。
In the example of the communication analysis system 50 shown in FIG. 1, the
ホスト装置1乃至4の各々には、仮想スイッチ1乃至4がそれぞれ配置されている。また、ホスト装置1にはVM11とVM12が配置されている。ホスト装置2にはVN21が、ホスト装置3にはVN31が、ホスト装置4にはVN41が配置されている。
Each of the
図1の通信解析システム50の例は、テナント毎に異なるVLANを割り当て、ネットワークを分離している。例えば、テナントAは、VM11、VM31、及び、VM41を含むVLAN10が割り当てられ、テナントBは、VM12、及び、VM21を含むVLAN20が割り当てられている。その上で、仮想スイッチ22は、各接続インタフェースについて、NetFlow等による通信フロー統計機能が有効に設定されている。また、仮想スイッチ22は、収集する情報にVLAN番号を含めるように設定される。このような設定は、非特許文献1に記載される技術により可能である。
In the example of the communication analysis system 50 in FIG. 1, a different VLAN is assigned to each tenant to separate networks. For example, the tenant A is assigned VLAN10 including VM11, VM31, and VM41, and the tenant B is assigned VLAN20 including VM12 and VM21. In addition, in the virtual switch 22, the communication flow statistical function by NetFlow or the like is effectively set for each connection interface. In addition, the virtual switch 22 is set to include the VLAN number in the information to be collected. Such setting is possible by the technique described in
仮想スイッチ22から送信されたフロー情報は、蓄積部11で受信されて履歴記憶部12に蓄積される。蓄積部11は、定義記憶部13からテナントに関する情報を読み込み、当該情報に基づいてフロー情報を分類する。蓄積部11は、分類したフロー情報をフローDB1とフローDB2に分けて保存する。分類の処理詳細は、後述する。
The flow information transmitted from the virtual switch 22 is received by the
蓄積されたフロー情報(フローレコード60)は、ユーザからの要求に応じて取得、解析され、解析結果と共に通信解析装置10のディスプレイ装置(図示されず)等に出力される。ユーザからの要求は、取得部14が受け付け、要求内容に応じて、履歴記憶部12からフローレコード60を取得、解析、及び、出力する。
The accumulated flow information (flow record 60) is acquired and analyzed in response to a request from the user, and is output together with the analysis result to a display device (not shown) of the
蓄積部11、及び、取得部14は、論理回路で構成される。蓄積部11、及び、取得部14は、コンピュータである通信解析装置10のメモリ(図示されず)に格納されて、プロセッサ(図示されず)により実行されるプログラムによって実現されても良い。履歴記憶部12、及び、定義記憶部13は、ディスク装置等の記憶装置である。
The
図3は、履歴記憶部12に格納される情報の構成を示す。履歴記憶部12は、フローレコード60とフロー方向61を関連付けて格納する。
FIG. 3 shows the configuration of information stored in the
フローレコード60は、蓄積部11が仮想スイッチ22から受信したフロー情報を包含する。フローレコード60は、例えば、収集スイッチ名、収集時刻、VLAN番号、入力IF、出力IF、通信アドレス、及び、通信量を包含する。
The
収集スイッチ名は、フローレコード60の元となったフロー情報を収集した仮想スイッチ22のスイッチ名である。収集スイッチ名は、例えば、図1における仮想スイッチ1である。
The collection switch name is the switch name of the virtual switch 22 that collected the flow information that is the source of the
収集時刻は、仮想スイッチ22が、フローレコード60の元となったフロー情報を収集した時刻である。VLAN番号は、フロー情報が取得された通信が行われたVLANの識別番号である。VLAN番号は、例えば、VLAN10である。
The collection time is the time when the virtual switch 22 collects the flow information that is the source of the
入力IFは、通信パケットが仮想スイッチ22に入力された接続インタフェースの番号である。出力IFは、通信パケットが仮想スイッチ22から出力された接続インタフェースの番号である。 The input IF is the number of the connection interface where the communication packet is input to the virtual switch 22. The output IF is the number of the connection interface from which the communication packet is output from the virtual switch 22.
通信アドレスは、例えば、送信元IPアドレス、送信先IPアドレス、送信元TCPポート番号、及び、送信元TCPポート番号である。通信量は、行われた通信のデータ量である。 The communication address is, for example, a transmission source IP address, a transmission destination IP address, a transmission source TCP port number, and a transmission source TCP port number. The communication amount is a data amount of communication performed.
なお、フローレコード60は、フロー集計プロトコルで採取できるその他の情報を包含しても良い。
The
フロー方向61は、通信が、複数仮想スイッチ22をまたがる(「外」)か、一つの仮想スイッチ22内(「内」)か、の区別を示す。フロー方向61は、蓄積部11が、フローレコード60及び後述するスイッチ表63の情報から判別して、フローレコード60に付加する。
The
図4は、定義記憶部13が記憶するテナント表62の構成を示す。テナント表62は、テナントごとに、テナント名と当該テナントに割り当てられたVLANのVLAN番号を包含する。テナント表62は、テナントごとに、VM29のIPアドレスを包含していても良い。
FIG. 4 shows the configuration of the tenant table 62 stored in the
図5は、定義記憶部13が記憶するスイッチ表63の構成を示す。スイッチ表63は、仮想スイッチ22ごとに、仮想スイッチ名、当該仮想スイッチ22が所属するホスト装置20の名称、当該ホスト装置20が属するドメインの情報、及び、トランクIF24またはアクセスIF23の接続インタフェース番号を包含する。
FIG. 5 shows the configuration of the switch table 63 stored in the
(動作)
まず、蓄積部11による、フローレコード60とフロー方向61の蓄積について説明する。フロー集計プロトコルをNetFlowと仮定するが、他のプロトコルを使用してもよい。
(Operation)
First, accumulation of the
あるVM29の間で通信が発生する。この通信は、例えば、図1のVM11から別のVMへの通信である。この通信は、少なくとも仮想スイッチ1を通るので、仮想スイッチ1でNetFlowによる情報収集が行われる。収集されたフロー情報は、仮想スイッチ1から通信解析装置10に送信される。
Communication occurs between certain VM29s. This communication is, for example, communication from the
VM11が送信元であるVM29間の通信は、送信先により経由する仮想スイッチ22及び接続インタフェースが変わる。
In the communication between VMs 29 whose source is the
1.送信先が同一ホスト装置20上のVM29(例えばVM12)の場合、通信は仮想スイッチ1のみを通過する。仮想スイッチ1上で収集されるフロー情報は、入力IFがアクセスIF23-11、出力IFがアクセスIF23-12、となる。
1. When the transmission destination is VM 29 (for example, VM 12) on the
2.送信先が同一ドメイン内の別ホスト装置20上のVM29(例えばVM21)の場合、通信は仮想スイッチ1及び仮想スイッチ2を通過する。仮想スイッチ1で収集されるフロー情報は、入力IFがアクセスIF23-11、出力IFがトランクIF24-1となる。また、仮想スイッチ2で収集されるフロー情報は、入力IFがトランクIF24-2、出力IFがアクセスIF23-21となる。
2. When the transmission destination is VM29 (for example, VM21) on another
3.送信先が別ドメイン内の別ホスト装置20上のVM29(例えばVM31)の場合、通信は仮想スイッチ1及び仮想スイッチ3を通過する。仮想スイッチ1で収集されるフロー情報は、入力IFがアクセスIF23-11、出力IFがトランクIF24-1となる。また、仮想スイッチ3で収集されるフロー情報は、入力IFがトランクIF24-3、出力IFがアクセスIF23-31となる。
3. When the destination is a VM 29 (for example, VM 31) on another
上記の状況1〜3で、蓄積部11は、フロー情報を送信した仮想スイッチ名をキーにスイッチ表63を検索して、入力IF及び出力IFがトランクIF24か否かを判断する。アクセスIF23は、トランクIF24ではない接続インタフェースなので、蓄積部11は、アクセスIF23も同様にスイッチ表63から判断する。
In the
通信解析装置10の蓄積部11は、上記のようなフロー情報を各仮想スイッチ22から受信し、次のアルゴリズムに従って分類して、フローレコード60とフロー方向61を作成し、履歴記憶部12に保存する。
The
1.フロー情報の入力IFがアクセスIF23の場合、蓄積部11は、フローレコード60をフローDB1に保存する。蓄積部11は、保存の際、出力IFがトランクIF24の場合はフロー方向61を「外」に、それ以外の場合はフロー方向61を「内」として保存する。
2.フロー情報の入力IFがトランクIF24の場合、蓄積部11は、フローレコード60をフローDB2に保存する。蓄積部11は、フロー方向61を「外」として保存する。
1. When the flow information input IF is the access IF 23, the
2. When the flow information input IF is the trunk IF 24, the
任意の通信について、ある仮想スイッチ22上で入力IFがアクセスIF23、別の仮想スイッチ22上でも入力IFがアクセスIF23として収集されることがないのは、アクセスIF23の定義から明らかである。したがって、このように入力IFの種別ごとに保存するデータベースを分けることで、各データベース内で、ひとつのフロー情報が重複カウントされることはない。 It is clear from the definition of the access IF 23 that for any communication, the input IF is not collected as the access IF 23 on one virtual switch 22 and the input IF is not collected as the access IF 23 on another virtual switch 22. Therefore, by dividing the database to be stored for each type of input IF in this way, one flow information is not counted repeatedly in each database.
次に、蓄積されたフローレコード60とフロー方向61を参照する処理について説明する。この処理は、取得部14によって実行される。
Next, processing for referring to the accumulated
図6は、参照可能な情報に制限のないクラウド事業者等が、通信解析装置10に蓄積されたフローレコード60を参照する際の取得部14の動作フローチャートである。
FIG. 6 is an operation flowchart of the
取得部14は、ユーザが参照したいフローレコード60の条件を入力として受け取る(S1)。フローレコード60の条件とは、例えば送信元IPアドレスやフロー収集時刻の範囲といった、フローDB1に保存されているフローレコード60を選択する為の条件である。
The
取得部14は、入力した条件に合致するフローレコード60とそれに関連付けられたフロー方向61を、フローDB1から取り出し(S2)、取り出したフローレコード60のそれぞれ(以降、フローレコードFとする)について、S3乃至S11を実行する。
The
取得部14は、フローレコードFの「VLAN番号」キーとして、テナント表62を引き、テナント名を得る(S3)。取得したテナント名は、例えば、テナントAである。
The
取得部14は、フローレコードFの「収集スイッチ」を用いて、当該仮想スイッチ22が所属するホスト装置20、及びドメインを、スイッチ表63から取得する(S4)。取得したホスト装置20はホスト装置H、取得したドメインはドメインDであったとする。
Using the “collection switch” of the flow record F, the
取得部14は、フローレコードFに関連付けられたフロー方向61が「内」であるか否かを判定し(S5)、「内」の場合(S5でY)、ホスト装置H内、ドメインD内で完結した通信を検出し、その旨を、テナント名、フローレコードFの内容と共に出力する。出力は、例えば、通信解析装置10のディスプレイ装置に行う。また、取得部14は、検出結果をフローレコードFに関連付けて履歴記憶部12に格納しても良い。
The
フローレコードFに関連付けられたフロー方向61が「外」である場合、このレコードのフロー情報を収集した仮想スイッチ22上の出力IFがトランクIF24である。この場合、当該仮想スイッチ22以外の仮想スイッチ22上で、入力IF=トランクIF24としてフロー情報が収集されていることになる。つまり、フローDB2に、フローレコードFと、通信アドレス及び収集時刻が等しいフローレコード60が存在する。
When the
この場合(S5でN)、取得部14は、フローレコードFと、通信アドレス及び収集時刻が等しいフローレコード60を、フローDB2から取得する(S7)。なお、取得部14は、収集時刻の差が、通信遅延時間範囲内であれば等しいとみなす。取得されたフローレコード60は、フローレコードF’であったとする。
In this case (N in S5), the
フローレコードF’の「収集スイッチ」を用いて、当該仮想スイッチ22が所属するホスト装置20、及びドメインを、スイッチ表63から取得する(S8)。取得したホスト装置20はホスト装置H’、取得したドメインはドメインD’であったとする。
Using the “collection switch” of the flow record F ′, the
ドメインDとドメインD’が一致する場合(S9でY)、取得部14は、ドメインD内で、ホスト装置Hからホスト装置H’への通信を検出し、その旨を、テナント名、フローレコードF及びF’の内容と共に出力する(S10)。また、取得部14は、検出結果をフローレコードF及びF’に関連付けて履歴記憶部12に格納しても良い。
When the domain D and the domain D ′ match (Y in S9), the
ドメインDとドメインD’が異なる場合(S9でN)、取得部14は、ドメインDのホスト装置HからドメインD’のホスト装置H’への通信を検出し、その旨を、テナント名、フローレコードF及びF’の内容と共に出力する(S11)。また、取得部14は、検出結果をフローレコードF及びF’に関連付けて履歴記憶部12に格納しても良い。
When the domain D and the domain D ′ are different (N in S9), the
テナント利用者がフローレコード60とフロー方向61を参照する場合、自身のテナント名をキーにして、通信解析装置10に問い合わせ要求を送信する。通信解析装置10中の取得部14は、問い合わせ要求を受信すると、定義記憶部13中のテナント表62を参照し、テナント名に対応するVLAN番号を取得する。
When the tenant user refers to the
その後、取得部14は、図3の動作フローチャートに従って処理を実行するのであるが、S2において取得するフローレコード60は、取得したVLAN番号に一致するものだけに、絞り込む。こうすることで、取得部14は、各テナント利用者には、自身のテナントの情報のみを参照可能なように制限することができる。
Thereafter, the
本実施の形態にかかる通信解析装置10は、複数のホスト装置20で実行されるVM29相互間の通信が、同一ホスト装置20内で完結している通信なのかどうかを明らかにすることができる。したがって、クラウド事業者等は、通信解析システム50内で、ホスト装置20をまたがる通信量がどれくらいあったか、という情報を容易に取得できる。その理由は、取得部14が、フローレコード60を取得する際、受信したVM29間の通信がどのホスト装置20からどのホスト装置20宛なのかどうかを、履歴記憶部12に保存された情報から計算するからである。
The
さらに、本実施の形態にかかる通信解析装置10は、クラウドシステム上を流れる通信フローやその統計情報を、クラウドシステムの利用者単位に分割して可視化できる。つまり、通信解析装置10は、あるテナント利用者が、他のテナントの情報を参照することを防止できる。その理由は、蓄積部11が、VLAN番号を含むフロー情報を履歴記憶部12に保存するからである。そして、あるテナント利用者が情報取得をする際には、取得部14が、そのテナントのVLAN番号に該当するフローレコード60のみを検索するようアクセス制御するからである。
(変形例)
蓄積部11は、フローレコード60を、フローDB1とフローDB2とに振り分けて履歴記憶部12に格納しなくても良い。さらに、蓄積部11は、フロー方向61をフローレコード60に付加しなくても良い。取得部14が、入力IF、出力IFを参照して、蓄積部11が行うとして上述したフロー情報の分類をしても良い。
Furthermore, the
(Modification)
The
仮想スイッチ22が、NetFlow等のフロー集計プロトコルに対応していない場合、代わりに、ホスト装置20が接続されている物理的なスイッチ30(スイッチ1または2)がNetFlow等の収集を行ってもよい。その場合、上記説明中、仮想スイッチ22と物理スイッチとを置き換えて考えればよい。
If the virtual switch 22 does not support a flow aggregation protocol such as NetFlow, the physical switch 30 (
<第2の実施形態>
図7は、第2の実施形態にかかる通信解析装置10の構成図である。通信解析装置10は、取得部14、履歴記憶部12、及び、定義記憶部13を包含する。
<Second Embodiment>
FIG. 7 is a configuration diagram of the
定義記憶部13は、VM29と仮想スイッチ22含む複数のホスト装置20が接続された通信網における、仮想スイッチ22の、スイッチ番号、ホスト番号、通信網との接続端子番号を記憶する。履歴記憶部12は、VM29の間の通信ごとに、中継した仮想スイッチ22から受信した、スイッチ番号、入力端子番号、出力端子番号、通信アドレス、及び、通信時刻を包むフローレコード60を記憶する。
The
取得部14は、履歴記憶部12から、出力端子番号が通信網との接続端子番号である第1のレコードと、入力端子番号が通信網との接続端子番号であり、かつ、第1のレコードと通信アドレス及び通信時刻が一致する第2のレコードを抽出する。そして、取得部14は、第1のレコードのスイッチ番号から得られるホスト装置20と、第2のレコードのスイッチ番号から得られるホスト装置20との間の通信を検出する。
The
本実施の形態にかかる通信解析装置10は、複数のホスト装置20で実行されるVM29相互間の通信が、同一ホスト装置20内で完結している通信なのかどうかを明らかにすることができる。したがって、クラウド事業者等は、通信解析システム50内で、ホスト装置20をまたがる通信量がどれくらいあったか、という情報を容易に取得できる。その理由は、取得部14が、フローレコード60を取得する際、受信したVM29間の通信がどのホスト装置20からどのホスト装置20宛なのかどうかを、履歴記憶部12に保存された情報から計算するからである。
The
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。 Although the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
10 通信解析装置
11 蓄積部
12 履歴記憶部
13 定義記憶部
14 取得部
20 ホスト装置
22 仮想スイッチ
23 アクセスIF
24 トランクIF
29 VM
30 スイッチ
40 WAN
50 通信解析システム
60 フローレコード
61 フロー方向
62 テナント表
63 スイッチ表
10 Communication analyzer
11 Accumulator
12 History storage
13 Definition memory
14 Acquisition Department
20 Host device
22 Virtual switch
23 Access IF
24 Trunk IF
29 VM
30 switch
40 WAN
50 Communication analysis system
60 Flow record
61 Flow direction
62 Tenant table
63 Switch table
Claims (10)
仮想ホスト間の通信ごとに、中継した仮想スイッチから受信した、スイッチ番号、入力端子番号、出力端子番号、通信アドレス、及び、通信時刻を含むレコードを記憶する履歴記憶手段と、
前記履歴記憶手段から、出力端子番号が前記通信網との接続端子番号である第1のレコードと、前記入力端子番号が前記通信網との接続端子番号であり、かつ、前記第1のレコードと通信アドレス及び通信時刻が一致する第2のレコードを抽出すると、前記第1のレコードのスイッチ番号から得られるホスト装置と、前記第2のレコードのスイッチ番号から得られるホスト装置間の通信を検出する取得手段と、を備える通信解析装置。 In a communication network in which a plurality of host devices are connected comprising a virtual machine and a virtual switch, a definition storage section for storing the virtual switch, the switch number, host number, the connection terminal number between the communication network,
For each communication between the virtual host, received from the virtual switch that relayed, the switch number, input terminal number, an output terminal number, communication address, and a history storage means for storing including records a communication time,
From the history storage means, the first record whose output terminal number is a connection terminal number with the communication network, the input terminal number is the connection terminal number with the communication network, and the first record When a second record having the same communication address and communication time is extracted, communication between the host device obtained from the switch number of the first record and the host device obtained from the switch number of the second record is detected. A communication analysis apparatus comprising: an acquisition unit;
前記取得手段は、前記第1のレコードのスイッチ番号から得られるドメイン番号と、前記第2のレコードのスイッチ番号から得られるドメイン番号が一致すればドメイン内通信を、一致しなければドメイン間通信を検出する、請求項1または2の通信解析装置。 The definition storage means includes a communication domain number of the virtual switch,
Said acquisition means, said a first record domain number obtained from the switch number, the communication within the second record domain if they match the domain number obtained from the switch numbers, between matched unless domain communication The communication analysis device according to claim 1 or 2, wherein
前記履歴記憶手段に格納されているレコードはVLAN番号を包含し、
前記取得手段は、ユーザ名を入力されると、当該ユーザ名のユーザのVLAN番号を包含するレコードから通信を検出する、請求項1乃至3の何れかの通信解析装置。 The definition storage means includes the user name and VLAN number of the user,
The record stored in the history storage means includes a VLAN number;
4. The communication analysis device according to claim 1, wherein, when a user name is input, the acquisition unit detects communication from a record including a VLAN number of the user of the user name. 5.
請求項1乃至5の何れかの通信解析装置を包含する、通信解析システム。 And several of the host device,
It includes any communication analysis apparatus of claims 1 to 5, a communication analysis system.
仮想ホスト間の通信ごとに、中継した仮想スイッチから受信した、スイッチ番号、入力端子番号、出力端子番号、通信アドレス、及び、通信時刻を含むレコードを記憶し、
出力端子番号が前記通信網との接続端子番号である第1のレコードと、前記入力端子番号が前記通信網との接続端子番号であり、かつ、前記第1のレコードと通信アドレス及び通信時刻が一致する第2のレコードを抽出すると、前記第1のレコードのスイッチ番号から得られるホスト装置と、前記第2のレコードのスイッチ番号から得られるホスト装置間の通信を検出する通信解析方法。 In a communication network in which a plurality of host devices are connected comprising a virtual machine and a virtual switch, a virtual switch, the switch number, host number, stores the connection terminal number between the communication network,
For each communication between the virtual host, received from the virtual switch that relayed, the switch number, input terminal number, an output terminal number, communication address, and the communication time is stored including records,
The first record whose output terminal number is the connection terminal number with the communication network, the input terminal number is the connection terminal number with the communication network, and the first record, the communication address and the communication time are A communication analysis method for detecting communication between a host device obtained from a switch number of the first record and a host device obtained from a switch number of the second record when a matching second record is extracted.
前記第1のレコードのスイッチ番号から得られるドメイン番号と、前記第2のレコードのスイッチ番号から得られるドメイン番号が一致すればドメイン内通信を、一致しなければドメイン間通信を検出する、請求項7または8の通信解析方法。 Stores the communication domain number of the virtual switch,
Wherein the domain number obtained from the switch number of the first record, the communication within the domain if the resulting domain numbers match the switch number of the second record, for detecting the inter unless match domain communication, wherein Item 7. The communication analysis method according to item 7 or 8.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2014014380A JP6295681B2 (en) | 2014-01-29 | 2014-01-29 | Communication analysis device, communication analysis system, communication analysis method, and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2014014380A JP6295681B2 (en) | 2014-01-29 | 2014-01-29 | Communication analysis device, communication analysis system, communication analysis method, and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2015142269A JP2015142269A (en) | 2015-08-03 |
| JP6295681B2 true JP6295681B2 (en) | 2018-03-20 |
Family
ID=53772356
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2014014380A Expired - Fee Related JP6295681B2 (en) | 2014-01-29 | 2014-01-29 | Communication analysis device, communication analysis system, communication analysis method, and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6295681B2 (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP7164140B2 (en) * | 2017-03-30 | 2022-11-01 | 日本電気株式会社 | COMMUNICATION ANALYSIS DEVICE, COMMUNICATION ANALYSIS METHOD AND PROGRAM |
| JP7294553B1 (en) * | 2023-02-09 | 2023-06-20 | 横河電機株式会社 | Information processing device, information processing method and information processing program |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5622233B2 (en) * | 2010-10-26 | 2014-11-12 | 学校法人近畿大学 | Packet communication processing apparatus, control method therefor, program, and recording medium |
-
2014
- 2014-01-29 JP JP2014014380A patent/JP6295681B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2015142269A (en) | 2015-08-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12113684B2 (en) | Identifying bogon address spaces | |
| US11128550B2 (en) | Logical network traffic analysis | |
| US10911355B2 (en) | Multi-site telemetry tracking for fabric traffic using in-band telemetry | |
| CN104272657B (en) | Method and apparatus for providing tenant information to a network flow | |
| CN107683597B (en) | Network behavior data collection and analysis for anomaly detection | |
| US10148596B2 (en) | Data flow statistics collection method, system, and apparatus | |
| JP5883926B2 (en) | Management server and flow processing method | |
| CN108833305A (en) | The virtual network framework of host | |
| KR101527377B1 (en) | Service chaining system based on software defined networks | |
| JP6295681B2 (en) | Communication analysis device, communication analysis system, communication analysis method, and program | |
| KR20180058594A (en) | Software Defined Network/Test Access Port Application | |
| CN104917623A (en) | Method and device for realizing SDN network communication management | |
| KR20180058592A (en) | Software Defined Network Controller | |
| KR20180058593A (en) | Software Defined Network Whitebox Switch | |
| WO2024020726A1 (en) | Flow tracing for heterogeneous networks | |
| JP7164140B2 (en) | COMMUNICATION ANALYSIS DEVICE, COMMUNICATION ANALYSIS METHOD AND PROGRAM | |
| JP2017017603A (en) | Network management apparatus and management method thereof |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161214 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170927 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171017 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171215 |
|
| 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: 20180123 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180205 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6295681 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |