JP2016201690A - Information processing device, program, and control method - Google Patents

Information processing device, program, and control method Download PDF

Info

Publication number
JP2016201690A
JP2016201690A JP2015080974A JP2015080974A JP2016201690A JP 2016201690 A JP2016201690 A JP 2016201690A JP 2015080974 A JP2015080974 A JP 2015080974A JP 2015080974 A JP2015080974 A JP 2015080974A JP 2016201690 A JP2016201690 A JP 2016201690A
Authority
JP
Japan
Prior art keywords
network interface
data
estimation
information processing
processing apparatus
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.)
Pending
Application number
JP2015080974A
Other languages
Japanese (ja)
Inventor
北村 浩
Hiroshi Kitamura
浩 北村
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 JP2015080974A priority Critical patent/JP2016201690A/en
Publication of JP2016201690A publication Critical patent/JP2016201690A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide a technique for facilitating management of a network.SOLUTION: An information processing device 2000 is connected with network interfaces 120 via a network 130. The information processing device 2000 includes a reception unit 2020 and an estimation unit 2040. The reception unit 2020 receives data. The estimation unit 2040 estimates whether the network interface 120 of a transmission source of the data is a physical network interface or a virtual network interface.SELECTED DRAWING: Figure 3

Description

本発明は、情報処理装置、プログラム、及び制御方法に関する。   The present invention relates to an information processing apparatus, a program, and a control method.

近年、様々な環境で仮想マシン技術が導入されている。仮想マシン技術とは、1つの物理マシン上で複数の仮想的なマシンを動作させる技術である。この仮想的なマシンは、仮想マシン(Virtual Machine(VM))と呼ばれる。VM は、物理マシンと同様に OS(Operating System)を動作させることができ、OS に対して物理マシンと同様のハードウエア環境を提供する。   In recent years, virtual machine technology has been introduced in various environments. The virtual machine technique is a technique for operating a plurality of virtual machines on one physical machine. This virtual machine is called a virtual machine (VM). A VM can operate an operating system (OS) like a physical machine, and provides the OS with a hardware environment similar to that of a physical machine.

一方で、VM はソフトウエアで実現される仮想的なマシンであるため、物理的な実体を有する物理マシンとは異なる性質も有する。例えば VM は、物理マシンと比較し、生成や削除が容易に行える。   On the other hand, a VM is a virtual machine realized by software, and therefore has a different property from a physical machine having a physical entity. For example, VMs can be created and deleted more easily than physical machines.

また近年、ネットワークを介してマシン同士を接続することが一般的となっている。例えばオフィス環境では、各社員の PC(Personal Computer)がネットワークに接続されている。   In recent years, it has become common to connect machines via a network. For example, in an office environment, each employee's PC (Personal Computer) is connected to the network.

「Zabbix Documentation 2.2」、[online]、[平成27年3月13日検索]、インターネット<URL:https://www.zabbix.com/documentation/2.2/manual/vm_monitoring>“Zabbix Documentation 2.2”, [online], [searched on March 13, 2015], Internet <URL: https://www.zabbix.com/documentation/2.2/manual/vm_monitoring> 「RFC(Request for Comments)826」、[online]、[平成27年3月13日検索]、インターネット<URL : http://tools.ietf.org/html/rfc826>"RFC (Request for Comments) 826", [online], [March 13, 2015 search], Internet <URL: http://tools.ietf.org/html/rfc826> 「RFC792」、[online]、[平成27年3月13日検索]、インターネット<URL:http://tools.ietf.org/html/rfc792>"RFC792", [online], [Search on March 13, 2015], Internet <URL: http://tools.ietf.org/html/rfc792> 「RFC4443」、[online]、[平成27年3月13日検索]、インターネット<URL:http://tools.ietf.org/html/rfc4443>"RFC4443", [online], [Search on March 13, 2015], Internet <URL: http://tools.ietf.org/html/rfc4443> 「RFC4861」、[online]、[平成27年3月13日検索]、インターネット<URL:http://tools.ietf.org/html/rfc4861>"RFC4861", [online], [Search on March 13, 2015], Internet <URL: http://tools.ietf.org/html/rfc4861>

ネットワークに接続されている物理マシン上で VM が利用されると、ネットワーク上において VM と物理マシンが混在することとなる。前述したように VM は生成が容易であるため、データセンタの様な特殊な環境だけでなく、オフィス環境などの一般的な環境においても、VM と物理マシンが混在するネットワーク環境が容易に生じうる。   When VMs are used on physical machines connected to the network, VMs and physical machines are mixed on the network. As mentioned above, VMs are easy to create, so network environments that include VMs and physical machines can easily occur not only in special environments such as data centers, but also in general environments such as office environments. .

このように VM と物理マシンが混在するネットワークを適切に管理するためには、VM と物理マシンの性質の違いを考慮できることが好ましい。そのためには、ネットワーク上に存在する各マシンが VM と物理マシンのどちらなのかを把握する必要がある。   In order to properly manage a network in which VMs and physical machines are mixed in this way, it is preferable to be able to consider differences in the properties of VMs and physical machines. To do so, you need to know whether each machine on the network is a VM or a physical machine.

しかし、あるマシンが VM と物理マシンのどちらであるのかを、外部の装置などから判別することは難しい。前述したように VM はその上で動作する OS 等に物理マシンと同等の環境を提供するため、VM 上で動作するソフトウエアと物理マシン上で動作するソフトウエアは同様の動作をしうるためである。例えば、VM から送信されるパケットと物理マシンから送信されるパケットのフォーマットは同じであるため、あるマシンから受信するパケットのフォーマットに基づいて、そのマシンが VM と物理マシンのどちらであるかを判別することは難しい。   However, it is difficult to determine whether a machine is a VM or a physical machine from external devices. As mentioned above, the VM provides the same environment as the physical machine to the OS running on it, so the software running on the VM and the software running on the physical machine can operate in the same way. is there. For example, the packet sent from the VM and the packet sent from the physical machine have the same format, so it is determined whether the machine is a VM or a physical machine based on the format of the packet received from a machine. Difficult to do.

非特許文献1は、ネットワーク上で特定の物理マシンや VM が起動したことを検出するシステムを開示している。しかし、このシステムを利用する者(ネットワークの管理者など)は、検出対象の各物理マシンや各 VM を特定するための情報(UUID(Universally Unique Identifier)など)を予め把握し、この情報を予めシステムの設定ファイルに記述しておかなければならない。そのため、非特許文献1のシステムを利用するためには、各マシンが物理マシンと VM のどちらなのかということを予め把握しておかなければならない。また、非特許文献1のシステムは、管理者の知らないところで導入される物理マシンや VM を検出することができない。   Non-Patent Document 1 discloses a system that detects that a specific physical machine or VM is started on a network. However, a person who uses this system (such as a network administrator) knows in advance information (UUID (Universally Unique Identifier), etc.) that identifies each physical machine or VM that is to be detected. Must be described in the system configuration file. Therefore, in order to use the system of Non-Patent Document 1, it is necessary to know in advance whether each machine is a physical machine or a VM. Further, the system of Non-Patent Document 1 cannot detect a physical machine or a VM introduced without the administrator's knowledge.

本発明は、以上の課題に鑑みてなされたものである。本発明の目的は、ネットワークの管理を容易にする技術を提供することである。   The present invention has been made in view of the above problems. An object of the present invention is to provide a technique for facilitating network management.

本発明の情報処理装置は、データを受信する受信手段と、前記受信されたデータを用いて、そのデータの送信元のネットワークインタフェースが、物理的なネットワークインタフェースと仮想的なネットワークインタフェースのどちらであるかの推定を行う推定手段と、を有する。   The information processing apparatus according to the present invention uses a receiving unit that receives data, and a network interface that is a transmission source of the data using the received data, which is a physical network interface or a virtual network interface. And estimating means for performing such estimation.

本発明の制御方法は、コンピュータによって実行される。当該制御方法は、データを受信する受信ステップと、前記受信されたデータを用いて、そのデータの送信元のネットワークインタフェースが、物理的なネットワークインタフェースと仮想的なネットワークインタフェースのどちらであるかの推定を行う推定ステップと、を有する。   The control method of the present invention is executed by a computer. The control method includes a reception step of receiving data, and using the received data, estimating whether a network interface of a transmission source of the data is a physical network interface or a virtual network interface. An estimation step.

本発明によれば、ネットワークの管理を容易にする技術が提供される。   According to the present invention, a technique for facilitating network management is provided.

物理マシン内のネットワーク環境が仮想ブリッジを用いて構築される形態を例示する図である。It is a figure which illustrates the form in which the network environment in a physical machine is constructed | assembled using a virtual bridge. 物理マシン内のネットワーク環境が NAT 環境として構築される形態を例示する図である。It is a figure which illustrates the form by which the network environment in a physical machine is constructed | assembled as a NAT environment. 実施形態1に係る情報処理装置を例示するブロック図である。1 is a block diagram illustrating an information processing apparatus according to a first embodiment. 情報処理装置のハードウエア構成を例示するブロック図である。It is a block diagram which illustrates the hardware constitutions of information processing apparatus. 実施形態1の情報処理装置によって実行される処理の流れを例示するフローチャートである。3 is a flowchart illustrating a flow of processing executed by the information processing apparatus according to the first embodiment. MAC アドレスの構成を例示する図である。It is a figure which illustrates the structure of a MAC address. 仮想ネットワークインタフェースの MAC アドレスに含まれうる OUI のリストを例示する図である。It is a figure which illustrates the list | wrist of OUI which may be contained in the MAC address of a virtual network interface. 実施形態2の情報処理装置によって実行される処理の流れを例示するフローチャートである。6 is a flowchart illustrating a flow of processing executed by the information processing apparatus according to the second embodiment. 実施形態3に係る情報処理装置を例示するブロック図である。FIG. 6 is a block diagram illustrating an information processing apparatus according to a third embodiment. ARP リクエストを送信した場合における RTT を例示するグラフである。It is a graph which illustrates RTT at the time of transmitting an ARP request. NS メッセージを送信した場合における RTT を例示するグラフである。It is a graph which illustrates RTT when NS message is transmitted. ICMP echo リクエストを送信した場合における RTT を例示するグラフである。It is a graph which illustrates RTT at the time of transmitting an ICMP echo request. ネットワークの構成を例示する第1の図である。It is the 1st figure which illustrates the composition of a network. ネットワークの構成を例示する第2の図である。It is the 2nd figure which illustrates the composition of a network. 実施形態3の情報処理装置によって実行される処理の流れの概要を例示するフローチャートである。10 is a flowchart illustrating an overview of a flow of processing executed by the information processing apparatus according to the third embodiment. RTT の大きさに基づいて行う推定処理の流れを例示するフローチャートである。It is a flowchart which illustrates the flow of the estimation process performed based on the magnitude | size of RTT. RTT のばらつきに基づいて行う推定処理の流れを例示するフローチャートである。It is a flowchart which illustrates the flow of the estimation process performed based on the dispersion | variation in RTT. スイッチを介して情報処理装置と複数の物理マシンとが接続されている構成を例示する図である。It is a figure which illustrates the structure by which information processing apparatus and the some physical machine are connected via the switch. ポート VLAN によって情報処理装置と各物理マシンとが1対1で接続されている様子を例示する図である。It is a figure which illustrates a mode that the information processing apparatus and each physical machine are connected by 1 to 1 by the port VLAN. 実施形態4に係る情報処理装置を例示するブロック図である。FIG. 10 is a block diagram illustrating an information processing apparatus according to a fourth embodiment. VMM 及び VM が起動する流れを例示する図である。It is a figure which illustrates the flow which VMM and VM start. 実施形態4の情報処理装置によって実行される処理の流れを例示するフローチャートである。10 is a flowchart illustrating a flow of processing executed by the information processing apparatus according to the fourth embodiment. 実施形態5に係る情報処理装置を例示するブロック図である。FIG. 10 is a block diagram illustrating an information processing apparatus according to a fifth embodiment. 情報処理装置によって把握される各ネットワークインタフェースの状態を時系列で例示するグラフである。It is a graph which illustrates in a time series the state of each network interface grasped by an information processor. 実施形態5の情報処理装置によって実行される処理の流れを例示するフローチャートである。10 is a flowchart illustrating the flow of processing executed by the information processing apparatus according to the fifth embodiment. 物理ネットワークインタフェースが ARP プロキシとして機能する様子を例示する図である。It is a figure which illustrates a mode that a physical network interface functions as an ARP proxy. 実施形態6の情報処理装置によって実行される処理の流れを例示するフローチャートである。14 is a flowchart illustrating a flow of processing executed by the information processing apparatus according to the sixth embodiment. 実施形態7に係る情報処理装置を例示するブロック図である。FIG. 10 is a block diagram illustrating an information processing apparatus according to a seventh embodiment. 実施形態7の情報処理装置によって実行される処理の流れを例示するフローチャートである。15 is a flowchart illustrating the flow of processing executed by the information processing apparatus according to the seventh embodiment. 仮想化環境において、1つの MAC アドレスに対して複数の IPv4 アドレスが割り当てられる構成を例示する図である。FIG. 3 is a diagram illustrating a configuration in which a plurality of IPv4 addresses are assigned to one MAC address in a virtual environment. 実施形態8に係る情報処理装置によって実行される処理の流れを例示するフローチャートである。10 is a flowchart illustrating the flow of processing executed by an information processing apparatus according to an eighth embodiment. 実施形態10に係る情報処理装置を例示するブロック図である。FIG. 16 is a block diagram illustrating an information processing apparatus according to a tenth embodiment. 対応付け部によって生成される対応付けを例示する図である。It is a figure which illustrates the matching produced | generated by the matching part.

以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. In all the drawings, the same reference numerals are given to the same components, and the description will be omitted as appropriate.

[前提事項の説明]
まず、各実施形態に共通する前提事項について説明する。
[Description of assumptions]
First, assumptions common to the embodiments will be described.

ネットワークインタフェースは、ネットワーク回線を介してデータを送受信するためのインタフェースである。例えば一般の PC は、マザーボードに予め搭載されているネットワークインタフェース(いわゆるオンボードのネットワークインタフェース)や、PCI(Peripheral Component Interconnect)カードで実装されたネットワークインタフェースを有する。以下、このように物理的に実装されたネットワークインタフェースを、物理ネットワークインタフェースと呼ぶ。   The network interface is an interface for transmitting and receiving data via a network line. For example, a general PC has a network interface (so-called on-board network interface) preinstalled on a motherboard or a network interface implemented by a PCI (Peripheral Component Interconnect) card. Hereinafter, the network interface physically mounted in this manner is referred to as a physical network interface.

ネットワークインタフェースをソフトウエアで仮想的に実現する技術がある。以下、このようにソフトウエアで仮想的に実現されるネットワークインタフェースを、仮想ネットワークインタフェースと呼ぶ。このような技術の1つに、仮想マシン技術がある。仮想マシン技術は、1つの物理マシン上で複数の VM を動作させる技術である。VMは、仮想的なハードウエアで構成される仮想的なマシンである。仮想ネットワークインタフェースは、仮想マシンを構成する仮想的なハードウエアの1つである。   There is a technology for virtually realizing a network interface with software. Hereinafter, such a network interface virtually realized by software is referred to as a virtual network interface. One such technology is virtual machine technology. The virtual machine technology is a technology for operating a plurality of VMs on one physical machine. The VM is a virtual machine composed of virtual hardware. The virtual network interface is one of virtual hardware that constitutes a virtual machine.

仮想マシン技術を利用するためには、仮想マシンモニタ(VMM(Virtual Machine Monitor))と呼ばれるソフトウエアレイヤを導入する。VMM は、物理ハードウエア上で直接動作することで物理ハードウエアを管理する。そして、VMM は、物理ハードウエアを抽象化した仮想ハードウエアを生成することで、VM を構築する。各 VM はそれぞれ、物理マシンと同様に OS を動作させることができる。ここで、VM 上で動作する OS は、一般にゲスト OS と呼ばれる。   In order to use the virtual machine technology, a software layer called a virtual machine monitor (VMM) is introduced. VMM manages physical hardware by operating directly on the physical hardware. VMM constructs VM by generating virtual hardware that abstracts physical hardware. Each VM can run an OS like a physical machine. Here, the OS running on the VM is generally called a guest OS.

VM 上で動作するゲスト OS は、VM が持つ仮想ネットワークインタフェースを利用して、同じ物理マシン上で動作する VM、他の物理マシン、又は他の物理マシン上で動作する VM と通信する。ただし、VM が他の物理マシンや他の物理マシン上で動作する VM と通信するためには、 VM を動作させる物理マシンが有する物理ネットワークインタフェースを利用する必要がある。VM のネットワークインタフェースはあくまでソフトウエアで実現された仮想的なハードウエアであるためである。   A guest OS running on a VM communicates with a VM running on the same physical machine, another physical machine, or a VM running on another physical machine, using the virtual network interface of the VM. However, in order for a VM to communicate with another physical machine or a VM running on another physical machine, it is necessary to use the physical network interface of the physical machine that operates the VM. This is because the VM network interface is virtual hardware implemented by software.

以下、仮想マシン技術を導入された物理マシンにおけるネットワーク環境について説明する。図1及び図2は、仮想マシン技術が導入された物理マシン10におけるネットワーク環境を例示する図である。物理マシン10は物理ネットワークインタフェース30を有する。物理ネットワークインタフェース30は物理ネットワーク100に接続している。物理マシン10は、物理ネットワーク100を介して外部の物理マシンや VM と通信する。また、物理マシン10は、その上で VMM 20を動作させている。   Hereinafter, a network environment in a physical machine in which virtual machine technology is introduced will be described. 1 and 2 are diagrams illustrating a network environment in a physical machine 10 in which a virtual machine technology is introduced. The physical machine 10 has a physical network interface 30. The physical network interface 30 is connected to the physical network 100. The physical machine 10 communicates with an external physical machine or VM via the physical network 100. Further, the physical machine 10 operates the VMM 20 thereon.

VMM 20は4つの VM 50を動作させている。各 VM 50は仮想ネットワークインタフェース70を有している。各仮想ネットワークインタフェース70は、物理ネットワークインタフェース30の MAC(Media Access Control)アドレスとはそれぞれ異なる MAC アドレスを持つ。各VM 50はその上でゲスト OS 60を動作させている。   The VMM 20 operates four VMs 50. Each VM 50 has a virtual network interface 70. Each virtual network interface 70 has a MAC address different from the MAC (Media Access Control) address of the physical network interface 30. Each VM 50 operates a guest OS 60 thereon.

なお、上述の MAC アドレスは、MAC アドレス以外のレイヤ2アドレスであってもよい。レイヤ2アドレスとは、OSI(Open Systems Interconnection)参照モデルのデータリンク層(レイヤ2)で扱われるアドレスである。以降の各記載についても同様に、MAC アドレスは、MAC アドレス以外のレイヤ2アドレスであってもよい。   Note that the MAC address described above may be a layer 2 address other than the MAC address. The layer 2 address is an address handled in the data link layer (layer 2) of the OSI (Open Systems Interconnection) reference model. Similarly in the following descriptions, the MAC address may be a layer 2 address other than the MAC address.

図1は、物理マシン10内のネットワーク環境が仮想ブリッジ80を用いて構築される形態を例示する図である。仮想ブリッジ80は、ソフトウエアで実現された仮想的なブリッジである。VMM 20は、物理マシン10の内部に仮想ネットワーク110を構築している。各仮想ネットワークインタフェース70は、仮想ネットワーク110を介して仮想ブリッジ80と接続されている。仮想ブリッジ80が有するネットワークインタフェースの1つは、物理ネットワークインタフェース30である。仮想ネットワーク110は、物理ネットワーク100と同じネットワークセグメントに属する。そのため、各仮想ネットワークインタフェース70にはそれぞれ、物理ネットワーク100で利用可能な IP アドレスが割り当てられている。   FIG. 1 is a diagram illustrating a form in which a network environment in the physical machine 10 is constructed using a virtual bridge 80. The virtual bridge 80 is a virtual bridge realized by software. The VMM 20 constructs a virtual network 110 inside the physical machine 10. Each virtual network interface 70 is connected to the virtual bridge 80 via the virtual network 110. One of the network interfaces included in the virtual bridge 80 is the physical network interface 30. The virtual network 110 belongs to the same network segment as the physical network 100. Therefore, each virtual network interface 70 is assigned an IP address that can be used in the physical network 100.

仮想ブリッジ80は、物理的なブリッジと同様の動作を行う。具体的には、仮想ブリッジ80は、取得したデータを送信先の MAC アドレスに基づいてディスパッチする。例えば仮想ブリッジ80は、仮想ネットワークインタフェース70から取得したデータの送信先 MAC アドレスが、各仮想ネットワークインタフェース70の MAC アドレス以外を示している場合、物理ネットワークインタフェース30を介して、そのデータを外部へ送信する。   The virtual bridge 80 performs the same operation as a physical bridge. Specifically, the virtual bridge 80 dispatches the acquired data based on the destination MAC address. For example, when the transmission destination MAC address of the data acquired from the virtual network interface 70 indicates other than the MAC address of each virtual network interface 70, the virtual bridge 80 transmits the data to the outside via the physical network interface 30. To do.

また例えば仮想ブリッジ80は、仮想ネットワークインタフェース70から取得したデータの送信先 MAC アドレスが、別の仮想ネットワークインタフェース70の MAC アドレスを示している場合、その仮想ネットワークインタフェース70へそのデータを渡す。この場合、データを受け取った仮想ネットワークインタフェース70を有する VM 50上で動作しているゲスト OS 60が、そのデータをハンドルする。   For example, when the transmission destination MAC address of data acquired from the virtual network interface 70 indicates the MAC address of another virtual network interface 70, the virtual bridge 80 passes the data to the virtual network interface 70. In this case, the guest OS 60 operating on the VM 50 having the virtual network interface 70 that has received the data handles the data.

また例えば、仮想ブリッジ80は、物理ネットワークインタフェース30から取得したデータを、その送信先の MAC アドレスを持つ仮想ネットワークインタフェース70へ渡す。この場合も、データを受け取った仮想ネットワークインタフェース70を有する VM 50上で動作しているゲスト OS 60が、そのデータをハンドルする。   Further, for example, the virtual bridge 80 passes the data acquired from the physical network interface 30 to the virtual network interface 70 having the transmission destination MAC address. Also in this case, the guest OS 60 operating on the VM 50 having the virtual network interface 70 that has received the data handles the data.

図2は、物理マシン10内のネットワーク環境が NAT(Network Address Translation) 環境として構築される形態を例示する図である。VMM 20は、物理マシン10の内部に仮想ネットワーク110を構築している。この形態の場合、仮想ネットワーク110のネットワークセグメントは、物理ネットワーク100とは異なるネットワークセグメントである。そのため、仮想ネットワークインタフェース70には、物理ネットワーク100で利用可能な IP アドレスではなく、仮想ネットワーク110におけるローカルな IP アドレスが割り当てられている。   FIG. 2 is a diagram illustrating a form in which the network environment in the physical machine 10 is constructed as a NAT (Network Address Translation) environment. The VMM 20 constructs a virtual network 110 inside the physical machine 10. In the case of this form, the network segment of the virtual network 110 is a network segment different from the physical network 100. Therefore, a local IP address in the virtual network 110 is assigned to the virtual network interface 70 instead of an IP address that can be used in the physical network 100.

各仮想ネットワークインタフェース70は、仮想ルータ90を介して物理ネットワーク100に接続する。仮想ルータ90は、ソフトウエアで仮想的に実現されたルータである。仮想ルータ90は、物理ネットワーク100に接続する物理ネットワークインタフェース30と、仮想ネットワーク110に接続する NAT インタフェース40という2つのネットワークインタフェースを有する。つまり、仮想ルータ90は、仮想ネットワーク110と物理ネットワーク100とを繋ぐゲートウェイとして機能する。   Each virtual network interface 70 is connected to the physical network 100 via the virtual router 90. The virtual router 90 is a router virtually realized by software. The virtual router 90 has two network interfaces, a physical network interface 30 connected to the physical network 100 and a NAT interface 40 connected to the virtual network 110. That is, the virtual router 90 functions as a gateway that connects the virtual network 110 and the physical network 100.

仮想ルータ90は、一般の NAT 環境におけるゲートウェイが行う動作と同様の動作を行う。これにより、各仮想ネットワークインタフェース70は、物理ネットワーク100で利用可能な IP アドレスを個別に持たず、物理ネットワークインタフェース30の IP アドレスを利用して外部のマシンとデータの送受信を行う。   The virtual router 90 performs the same operation as that performed by the gateway in a general NAT environment. As a result, each virtual network interface 70 does not have an IP address that can be used in the physical network 100, and uses the IP address of the physical network interface 30 to transmit / receive data to / from an external machine.

なお、物理ネットワークインタフェース30によってデータが受信された場合、まず VMM 20は、それが VMM 20に宛てたデータであるか否かを判定する。この判定は、データが示す宛先 MAC アドレスや宛先 IP アドレスを調べることによって行われる。そして VMM 20は、物理ネットワークインタフェース30によって受信されたデータがVMM 20に宛てたデータでない場合、そのデータを仮想ルータ90や仮想ブリッジ80に処理させる。一方、VMM 20は、物理ネットワークインタフェース30によって受信されたデータがVMM 20に宛てたデータである場合、そのデータの中身を取り出す等、適切な処理を行う。   When data is received by the physical network interface 30, the VMM 20 first determines whether or not the data is addressed to the VMM 20. This determination is made by examining the destination MAC address and destination IP address indicated by the data. If the data received by the physical network interface 30 is not data addressed to the VMM 20, the VMM 20 causes the virtual router 90 or the virtual bridge 80 to process the data. On the other hand, when the data received by the physical network interface 30 is data addressed to the VMM 20, the VMM 20 performs appropriate processing such as extracting the contents of the data.

ここで、仮想マシン環境におけるネットワーク環境の形態は、上述の例に限定されない。その他の例については、必要に応じて後述の実施形態で説明する。   Here, the form of the network environment in the virtual machine environment is not limited to the above-described example. Other examples will be described in later-described embodiments as necessary.

仮想マシン技術が導入される目的は様々である。例えば仮想マシン技術は、デスクトップマシンやサーバマシンを仮想的に実現するために導入される。また例えば、仮想マシンは、ルータやレイヤ2スイッチなどのネットワーク機器を仮想的に実現するために導入される。このように、仮想マシン技術を導入してネットワーク機器を仮想化する技術は、NFV(Network Functions Virtualization)と呼ばれる。本発明において、仮想マシン環境の導入目的は特定の目的に限定されない。そのため、VM の導入目的は、上述したいずれかの目的であってもよいし、それ以外の目的であってもよい。   The purpose of introducing virtual machine technology is various. For example, the virtual machine technology is introduced to virtually realize a desktop machine and a server machine. For example, a virtual machine is introduced in order to virtually realize network devices such as routers and layer 2 switches. In this way, a technology for virtualizing network devices by introducing virtual machine technology is called NFV (Network Functions Virtualization). In the present invention, the purpose of introducing the virtual machine environment is not limited to a specific purpose. Therefore, the purpose of introducing the VM may be any of the above-mentioned purposes, or may be other purposes.

また、本発明における仮想ネットワークインタフェースは、仮想マシン技術によって実現される仮想的なネットワークインタフェースに限定されない。例えば、仮想ネットワークインタフェースは、エミュレータによるエミュレートによって実現される仮想的なネットワークインタフェースでもよい。エミュレータによって仮想ネットワークインタフェースを実現する場合でも、物理マシン内のネットワークは、例えば仮想ブリッジや仮想ルータを用いて実現される。この実現方法の詳細については省略する。   Further, the virtual network interface in the present invention is not limited to a virtual network interface realized by virtual machine technology. For example, the virtual network interface may be a virtual network interface realized by emulation by an emulator. Even when a virtual network interface is realized by an emulator, a network in a physical machine is realized using, for example, a virtual bridge or a virtual router. Details of this realization method are omitted.

以上の事項を前提に、本発明の各実施形態について説明する。   Based on the above matters, each embodiment of the present invention will be described.

[実施形態1]
図3は、実施形態1に係る情報処理装置2000を例示するブロック図である。図3において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を表している。
[Embodiment 1]
FIG. 3 is a block diagram illustrating the information processing apparatus 2000 according to the first embodiment. In FIG. 3, each block represents a functional unit configuration, not a hardware unit configuration.

情報処理装置2000は、ネットワーク130を介してネットワークインタフェース120と接続されている。情報処理装置2000は、受信部2020及び推定部2040を有する。受信部2020はデータを受信する。推定部2040は、受信されたデータを用いて、そのデータの送信元のネットワークインタフェース120が、物理ネットワークインタフェースと仮想ネットワークインタフェースのどちらであるかの推定を行う。   The information processing apparatus 2000 is connected to the network interface 120 via the network 130. The information processing apparatus 2000 includes a reception unit 2020 and an estimation unit 2040. The receiving unit 2020 receives data. The estimation unit 2040 uses the received data to estimate whether the network interface 120 that is the transmission source of the data is a physical network interface or a virtual network interface.

<ハードウエア構成例>
実施形態2の情報処理装置2000の各機能構成部は、各機能構成部を実現するハードウエア(例:ハードワイヤードされた電子回路など)で実現されてもよいし、ハードウエアとソフトウエアとの組み合わせ(例:電子回路とそれを制御するプログラムの組み合わせなど)で実現されてもよい。
<Hardware configuration example>
Each functional component of the information processing apparatus 2000 according to the second embodiment may be realized by hardware (for example, a hard-wired electronic circuit) that implements each functional component, or between hardware and software. It may be realized by a combination (for example, a combination of an electronic circuit and a program for controlling the electronic circuit).

情報処理装置は、PC、携帯型端末、又はサーバマシンなどの種々の計算機として実装される。ここで情報処理装置2000は、情報処理装置2000を実装するための専用の計算機に実装されてもよいし、その他のアプリケーション等も含まれている汎用の計算機に実装されてもよい。   The information processing apparatus is implemented as various computers such as a PC, a portable terminal, or a server machine. Here, the information processing apparatus 2000 may be mounted on a dedicated computer for mounting the information processing apparatus 2000, or may be mounted on a general-purpose computer that includes other applications and the like.

図4は、情報処理装置2000のハードウエア構成を例示するブロック図である。情報処理装置2000は、バス1020、プロセッサ1040、メモリ1060、ストレージ1080、入出力インタフェース1100、ネットワークインタフェース1120を有する。バス1020は、プロセッサ1040、メモリ1060、ストレージ1080、入出力インタフェース1100、及びネットワークインタフェース1120が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ1040などを互いに接続する方法は、バス接続に限定されない。プロセッサ1040は、例えば CPU (Central Processing Unit) や GPU (Graphics Processing Unit) などの演算処理装置である。メモリ1060は、例えば RAM (Random Access Memory) や ROM (Read Only Memory) などのメモリである。ストレージ1080は、例えばハードディスク、SSD (Solid State Drive)、又はメモリカードなどの記憶装置である。また、ストレージ1080は、RAM や ROM 等のメモリであってもよい。   FIG. 4 is a block diagram illustrating a hardware configuration of the information processing apparatus 2000. The information processing apparatus 2000 includes a bus 1020, a processor 1040, a memory 1060, a storage 1080, an input / output interface 1100, and a network interface 1120. The bus 1020 is a data transmission path through which the processor 1040, the memory 1060, the storage 1080, the input / output interface 1100, and the network interface 1120 transmit / receive data to / from each other. However, the method of connecting the processors 1040 and the like is not limited to bus connection. The processor 1040 is an arithmetic processing unit such as a CPU (Central Processing Unit) or a GPU (Graphics Processing Unit). The memory 1060 is a memory such as a RAM (Random Access Memory) or a ROM (Read Only Memory). The storage 1080 is a storage device such as a hard disk, an SSD (Solid State Drive), or a memory card. The storage 1080 may be a memory such as a RAM or a ROM.

入出力インタフェース1100は、情報処理装置2000と入出力デバイスとを接続するためのインタフェースである。入出力デバイスは、例えばキーボード、マウス、又はディスプレイなどである。   The input / output interface 1100 is an interface for connecting the information processing apparatus 2000 and the input / output device. The input / output device is, for example, a keyboard, a mouse, or a display.

ネットワークインタフェース1120は、ネットワーク130と接続するための物理ネットワークインタフェースである。ネットワークインタフェース1120は、有線回線と接続するためのネットワークインタフェースでもよいし、無線回線と接続するためのネットワークインタフェースでもよい。   The network interface 1120 is a physical network interface for connecting to the network 130. The network interface 1120 may be a network interface for connecting to a wired line or a network interface for connecting to a wireless line.

ストレージ1080は、情報処理装置2000の機能を実現するためのプログラムを記憶している。具体的には、受信部2020及び推定部2040の機能を実現するプログラムモジュールを記憶している。プロセッサ1040は、これら各プログラムモジュールを実行することで、受信部2020及び推定部2040の機能をそれぞれ実現する。ここでプロセッサ1040は、上記各モジュールを実行する際、これらのモジュールをメモリ1060上に読み出してから実行してもよいし、メモリ1060上に読み出さずに実行してもよい。   The storage 1080 stores a program for realizing the functions of the information processing apparatus 2000. Specifically, the program module which implement | achieves the function of the receiving part 2020 and the estimation part 2040 is memorize | stored. The processor 1040 implements the functions of the reception unit 2020 and the estimation unit 2040 by executing these program modules. Here, when executing the above modules, the processor 1040 may execute the modules after reading them onto the memory 1060 or without reading them onto the memory 1060.

情報処理装置2000のハードウエア構成は図4に示した構成に限定されない。例えば、各プログラムモジュールはメモリ1060に格納されてもよい。この場合、情報処理装置2000は、ストレージ1080を備えていなくてもよい。   The hardware configuration of the information processing apparatus 2000 is not limited to the configuration shown in FIG. For example, each program module may be stored in the memory 1060. In this case, the information processing apparatus 2000 may not include the storage 1080.

<受信部2020について>
受信部2020が受信するデータは、各ネットワークインタフェース120から送信されるデータである。このデータの生成元は様々である。例えばこのデータは、そのデータを送信したネットワークインタフェース120を管理する OS や VMM 又はその OS や VMM の上で動作しているアプリケーションによって生成される。
<Receiver 2020>
Data received by the receiving unit 2020 is data transmitted from each network interface 120. There are various sources of this data. For example, this data is generated by an OS or VMM that manages the network interface 120 that transmitted the data, or an application that runs on the OS or VMM.

受信部2020が受信するデータの宛先は様々である。例えばこのデータの宛先は、情報処理装置2000が有するネットワークインタフェース1120である。この場合、受信部2020によって受信されるデータは、例えば情報処理装置2000から送信したリクエスト等に対する応答を表すデータである。情報処理装置2000からリクエスト等を送信する方法の詳細については、後述の各実施形態で説明する。なお、ネットワークインタフェース1120を宛先とするデータは、情報処理装置2000から送信されたリクエストへの応答を表すデータ以外であってもよい。   There are various destinations of data received by the receiving unit 2020. For example, the destination of this data is the network interface 1120 that the information processing apparatus 2000 has. In this case, the data received by the receiving unit 2020 is data representing a response to a request transmitted from the information processing apparatus 2000, for example. Details of a method for transmitting a request or the like from the information processing apparatus 2000 will be described in each embodiment described later. Note that the data destined for the network interface 1120 may be data other than data representing a response to the request transmitted from the information processing apparatus 2000.

また例えば、受信部2020が受信するデータの宛先は、ネットワークインタフェース1120やネットワークインタフェース120を含む複数のネットワークインタフェースである。複数のネットワークインタフェースを宛先とするデータは、例えばマルチキャストパケットやブロードキャストパケットである。   Further, for example, the destination of data received by the receiving unit 2020 is a plurality of network interfaces including the network interface 1120 and the network interface 120. Data destined for a plurality of network interfaces is, for example, a multicast packet or a broadcast packet.

また、受信部2020が受信するデータの宛先は、ネットワークインタフェース1120を含まなくてもよい。自身を宛先としないデータを受信する方法には、様々な方法がある。例えば、L2スイッチのミラーポートを介してネットワークインタフェース1120をネットワーク130に接続させる方法がある。ミラーポートに接続されているネットワークインタフェースは、そのネットワークインタフェースを宛先としないデータも受信することができる。ここで、ミラーポートを利用してデータを受信する方法は既知であるため、詳細な説明は省略する。また、ネットワークインタフェース1120を宛先としないデータを受信部2020が受信する方法は、ミラーポートを利用する方法に限定されない。   The destination of data received by the receiving unit 2020 may not include the network interface 1120. There are various methods for receiving data not addressed to itself. For example, there is a method of connecting the network interface 1120 to the network 130 via the mirror port of the L2 switch. The network interface connected to the mirror port can also receive data not destined for the network interface. Here, since the method of receiving data using a mirror port is known, detailed description is abbreviate | omitted. Further, the method in which the receiving unit 2020 receives data not destined for the network interface 1120 is not limited to a method using a mirror port.

以下、「情報処理装置2000が有するネットワークインタフェース1120を宛先とする」ことを、単に「情報処理装置2000を宛先とする」とも表記する。   Hereinafter, “addressing the network interface 1120 included in the information processing apparatus 2000” is also simply referred to as “addressing the information processing apparatus 2000”.

<推定部2040について>
推定部2040の動作の詳細については、後述の各実施形態で説明する。
<About the estimation unit 2040>
Details of the operation of the estimation unit 2040 will be described in each embodiment described later.

<処理の流れ>
図5は、実施形態1の情報処理装置2000によって実行される処理の流れを例示するフローチャートである。受信部2020は、ネットワークインタフェースからデータを受信する(S102)。推定部2040は、受信したデータを用いて、ネットワークインタフェースが物理ネットワークインタフェースと仮想ネットワークインタフェースのどちらであるかを推定する(S104)。
<Process flow>
FIG. 5 is a flowchart illustrating the flow of processing executed by the information processing apparatus 2000 according to the first embodiment. The receiving unit 2020 receives data from the network interface (S102). The estimation unit 2040 uses the received data to estimate whether the network interface is a physical network interface or a virtual network interface (S104).

<作用・効果>
本実施形態によれば、情報処理装置2000によって受信されるデータに基づいて、ネットワーク130に接続しているネットワークインタフェース120が物理ネットワークインタフェースと仮想ネットワークインタフェースのどちらであるかが推定される。ここで、物理ネットワークインタフェースを持つマシンは物理マシンである。一方、仮想ネットワークインタフェースを持つマシンは、仮想マシンなど、ソフトウエアで実現されたマシンである。よって、本実施形態の情報処理装置2000を用いることにより、ネットワーク130に接続されている各マシンが、物理マシンと仮想マシンなどのどちらであるかを推定することができる。よって、ネットワーク130の管理者やネットワーク130を管理する装置などは、ネットワーク130上の各マシンが物理マシンと仮想マシンなどのどちらであるかを把握して上で、ネットワーク130を適切に管理できるようになる。
<Action and effect>
According to the present embodiment, based on the data received by the information processing apparatus 2000, it is estimated whether the network interface 120 connected to the network 130 is a physical network interface or a virtual network interface. Here, a machine having a physical network interface is a physical machine. On the other hand, a machine having a virtual network interface is a machine realized by software, such as a virtual machine. Therefore, by using the information processing apparatus 2000 of this embodiment, it is possible to estimate whether each machine connected to the network 130 is a physical machine or a virtual machine. Therefore, an administrator of the network 130 or a device that manages the network 130 can appropriately manage the network 130 after grasping whether each machine on the network 130 is a physical machine or a virtual machine. become.

[実施形態2]
実施形態2の情報処理装置2000は、例えば実施形態1の情報処理装置2000と同様に、図1で表される。下記で説明する点を除き、実施形態2の情報処理装置2000は、実施形態1の情報処理装置2000と同様の機能を有する。
[Embodiment 2]
An information processing apparatus 2000 according to the second embodiment is illustrated in FIG. 1, for example, similarly to the information processing apparatus 2000 according to the first embodiment. Except as described below, the information processing apparatus 2000 according to the second embodiment has the same functions as the information processing apparatus 2000 according to the first embodiment.

実施形態2の受信部2020が受信するデータは、送信元のネットワークインタフェース120の MAC アドレス(送信元 MAC アドレス)を含む。具体的にはこのデータは、イーサネット(登録商標)フレームを含むデータである。送信元のネットワークインタフェース120の MAC アドレスは、イーサネット(登録商標)フレームのイーサネット(登録商標)ヘッダに示されている。   The data received by the receiving unit 2020 of the second embodiment includes the MAC address (source MAC address) of the source network interface 120. Specifically, this data is data including an Ethernet (registered trademark) frame. The MAC address of the network interface 120 of the transmission source is indicated in the Ethernet (registered trademark) header of the Ethernet (registered trademark) frame.

推定部2040は、受信部2020が受信したデータによって示される送信元 MAC アドレスに含まれる OUI(Organizationally Unique Identifier)を利用して推定を行う。以下、物理ネットワークインタフェースの MAC アドレスが示す OUI(物理ネットワークインタフェースの OUI)と仮想ネットワークインタフェースの MAC アドレスが示す OUI(仮想ネットワークインタフェースの OUI)についてそれぞれ説明する。   The estimation unit 2040 performs estimation using an OUI (Organizationally Unique Identifier) included in the transmission source MAC address indicated by the data received by the reception unit 2020. The following describes the OUI (OUI of the physical network interface) indicated by the MAC address of the physical network interface and the OUI (OUI of the virtual network interface) indicated by the MAC address of the virtual network interface.

<物理ネットワークインタフェースの OUI について>
物理ネットワークインタフェースの MAC アドレスは、そのネットワークインタフェースの製造時に、そのネットワークインタフェースに割り当てられる。そのため一般に、物理ネットワークインタフェースの MAC アドレスは、そのネットワークインタフェースを利用する OS 等によって変更されない。
<About OUI of physical network interface>
The MAC address of the physical network interface is assigned to the network interface when the network interface is manufactured. Therefore, in general, the MAC address of a physical network interface is not changed by the OS that uses the network interface.

物理ネットワークインタフェースの OUI は、そのネットワークインタフェースを製造したベンダを特定するための識別子である。ネットワークインタフェースを製造するベンダは、製造したネットワークインタフェースに対し、そのベンダに割り当てられた OUI を含む MAC アドレスを割り当てる。なお、各ベンダは、OUI の管理を行っている IEEE(登録商標)(The Institute of Electrical and Electronics Engineers, Inc.)に申請を行うことで、OUI の割り当てを受ける。   The OUI of the physical network interface is an identifier for identifying the vendor that manufactured the network interface. A vendor that manufactures a network interface assigns a MAC address including the OUI assigned to that vendor to the manufactured network interface. Each vendor receives an OUI assignment by applying to the IEEE (the Institute of Electrical and Electronics Engineers, Inc.), which manages the OUI.

図6は、MAC アドレスの構成を例示する図である。MAC アドレスは48ビットの値である。一般に、MAC アドレスの上位24ビットが OUI を表す。ベンダは、製造する各ネットワークインタフェースに対し、重複しない MAC アドレスを割り当てる。こうすることで、物理ネットワークインタフェース同士では MAC アドレスが重複しないようになっている。   FIG. 6 is a diagram illustrating a configuration of the MAC address. The MAC address is a 48-bit value. In general, the upper 24 bits of the MAC address represent OUI. Vendors assign unique MAC addresses to each network interface they manufacture. This prevents MAC addresses from overlapping between physical network interfaces.

ただし、本実施形態の情報処理装置2000は、MAC アドレスの桁数及び OUI の桁数には依存しない。そのため情報処理装置2000は、将来 MAC アドレスの桁数や OUI の桁数が変更された場合でも動作可能である。   However, the information processing apparatus 2000 of this embodiment does not depend on the number of digits of the MAC address and the number of digits of the OUI. Therefore, the information processing apparatus 2000 can operate even when the number of digits of the MAC address or the number of digits of the OUI is changed in the future.

<仮想ネットワークインタフェースの OUI について>
仮想ネットワークインタフェースは物理的に製造されるハードウエアではない。例えば仮想マシンの仮想ネットワークインタフェースは、VMM によって仮想的に実現されるものである。原理的には、VMM は、仮想ネットワークインタフェースに対して任意の MAC アドレスを割り当てることができる。そのため、仮想ネットワークインタフェースの OUI も任意の値を取り得る。
<About OUI of virtual network interface>
A virtual network interface is not physically manufactured hardware. For example, the virtual network interface of a virtual machine is virtually realized by VMM. In principle, VMM can assign any MAC address to a virtual network interface. Therefore, the OUI of the virtual network interface can take any value.

しかし、VMM が仮想ネットワークインタフェースに対して完全に任意の MAC アドレスを割り当てると、ネットワーク内に同じ MAC アドレスを持つ複数のネットワークインタフェースが存在しうることとなる。その結果、データが目的のネットワークインタフェースに到達しないなどの問題が生じうる。   However, if VMM completely assigns an arbitrary MAC address to a virtual network interface, there may be multiple network interfaces with the same MAC address in the network. As a result, problems such as data not reaching the target network interface may occur.

そこで、仮想ネットワークインタフェースには、特定の OUI 含む MAC アドレスを割り当てることが一般的になっている。そのために、各 VMM を作成しているソフトウエアベンダの中にも、IEEE(登録商標)に申請を行って OUI の割り当てを受けているベンダがある。このように予め割り当てられた OUI を仮想ネットワークインタフェースに用いることで、異なる種類の VMM によって生成される仮想ネットワークインタフェースには、それぞれ異なる OUI を示すネットワークインタフェースが割り当てられるようにしている。例えば VMM を作成するベンダは、VM の設定ファイルのひな形を用意し、そのひな形に記述されている MAC アドレスの OUI を、そのベンダに割り当てられた OUI にしておく。一般に、ユーザはこのひな形を利用して VM の設定を記述することが多い。そのため、仮想ネットワークインタフェースに割り当てられる MAC アドレスに、ベンダ固有の OUI が含まれる確率が高いといえる。   Therefore, it is common to assign a MAC address including a specific OUI to a virtual network interface. For this reason, some software vendors that create each VMM apply to IEEE (registered trademark) and are assigned an OUI. By using the OUI assigned in advance as the virtual network interface in this way, network interfaces indicating different OUIs are assigned to virtual network interfaces generated by different types of VMMs. For example, a vendor who creates VMM prepares a template for the VM configuration file, and sets the OUI of the MAC address described in the template to the OUI assigned to the vendor. In general, users often use this template to describe VM settings. Therefore, it can be said that there is a high probability that the MAC address assigned to the virtual network interface includes a vendor-specific OUI.

また、MAC アドレスの重複を避ける必要があることは、エミュレータによって生成される仮想ネットワークインタフェースについても同様である。そのため、エミュレータを生成するベンダについても、同様の仕組みによって MAC アドレスが重複しないようにすると考えられる。   Similarly, it is necessary to avoid duplication of MAC addresses for virtual network interfaces generated by emulators. For this reason, it is thought that vendors that generate emulators will also avoid duplicating MAC addresses using a similar mechanism.

<OUI を利用した推定>
本実施形態の推定部2040は、上述した OUI の特徴に着目して推定を行う。例えば推定部2040は、仮想ネットワークインタフェースの MAC アドレスに含まれうる OUI のリストを取得する。推定部2040は、推定対象のネットワークインタフェース120(受信部2020が受信したデータの送信元の MAC アドレスを持つネットワークインタフェース120)の OUI がこのリストに含まれているか否かを判定する。そして、推定部2040は、推定対象のネットワークインタフェース120の OUI がこのリストに含まれている場合、このネットワークインタフェース120は仮想ネットワークインタフェースであると推定する。一方、推定部2040は、推定対象のネットワークインタフェース120の OUI がこのリストに含まれていない場合、このネットワークインタフェース120は物理ネットワークインタフェースであると推定する。
<Estimation using OUI>
The estimation unit 2040 of the present embodiment performs estimation by paying attention to the above-described OUI features. For example, the estimation unit 2040 acquires a list of OUIs that can be included in the MAC address of the virtual network interface. The estimation unit 2040 determines whether or not the OUI of the network interface 120 to be estimated (the network interface 120 having the MAC address of the transmission source of the data received by the reception unit 2020) is included in this list. Then, when the OUI of the network interface 120 to be estimated is included in this list, the estimation unit 2040 estimates that this network interface 120 is a virtual network interface. On the other hand, if the OUI of the estimation target network interface 120 is not included in the list, the estimation unit 2040 estimates that the network interface 120 is a physical network interface.

図7は、仮想ネットワークインタフェースの MAC アドレスに含まれうる OUI のリストを例示する図である。このリストをリスト200と表記する。例えばリスト200は、VMM を作成するソフトウエアベンダに割り当てられた OUI を列挙したリストである。推定部2040は、推定対象のネットワークインタフェース120の OUI がリスト200に列挙されている OUI のいずれかと合致する場合、このネットワークインタフェース120が仮想ネットワークインタフェースであると推定する。   FIG. 7 is a diagram exemplifying a list of OUIs that can be included in the MAC address of the virtual network interface. This list is referred to as a list 200. For example, the list 200 is a list that lists OUIs assigned to software vendors that create VMMs. When the OUI of the estimation target network interface 120 matches any of the OUIs listed in the list 200, the estimation unit 2040 estimates that the network interface 120 is a virtual network interface.

なお、推定部2040は、物理ネットワークインタフェースの MAC アドレスに含まれうる OUI のリストを取得してもよい。例えばこのリストは、物理ネットワークインタフェースを製造する各ハードウエアベンダに割り当てられた OUI を列挙したリストである。推定部2040は、推定対象のネットワークインタフェース120の OUI がこのリストに含まれている場合、このネットワークインタフェース120は物理ネットワークインタフェースであると推定する。一方、推定部2040は、推定対象のネットワークインタフェース120の OUI がこのリストに含まれていない場合、このネットワークインタフェース120は仮想ネットワークインタフェースであると推定する。   Note that the estimation unit 2040 may obtain a list of OUIs that can be included in the MAC address of the physical network interface. For example, this list lists the OUIs assigned to each hardware vendor that manufactures the physical network interface. The estimation unit 2040 estimates that the network interface 120 is a physical network interface if the OUI of the network interface 120 to be estimated is included in this list. On the other hand, when the OUI of the estimation target network interface 120 is not included in the list, the estimation unit 2040 estimates that the network interface 120 is a virtual network interface.

<OUI のリストの取得方法>
推定部2040が上述した各 OUI のリストを取得する方法は様々である。例えば、前述した仮想ネットワークインタフェースの MAC アドレスに含まれうる OUI や物理ネットワークインタフェースの MAC アドレスに含まれうる OUI のリストを予め作成しておき、情報処理装置2000の内部又は外部に設けられた記憶部に記憶しておく。そして、推定部2040は、この記憶部からこれら OUI のリストを取得する。ここで、物理ネットワークインタフェースの MAC アドレスに含まれうる OUI や仮想ネットワークインタフェースの OUI のリストは、物理ネットワークインタフェースを製造するベンダや VMM 等を作成するベンダに問い合わせたり、OUI を管理する IEEE(登録商標)に問い合わせたりすることで知ることができる。
<OUI list acquisition method>
There are various methods by which the estimation unit 2040 obtains the list of each OUI described above. For example, a list of OUIs that can be included in the MAC address of the virtual network interface and the OUI that can be included in the MAC address of the physical network interface is created in advance, and a storage unit provided inside or outside the information processing apparatus 2000 Remember it. Then, the estimation unit 2040 acquires a list of these OUIs from this storage unit. Here, the list of OUI that can be included in the MAC address of the physical network interface and the OUI of the virtual network interface is inquired of the vendor that manufactures the physical network interface, the vendor that creates VMM, etc., or the IEEE (registered trademark) that manages OUI ) To inquire.

また、推定部2040は、上述の各ベンダや IEEE(登録商標)から自動で OUI に関する情報を取得することで、上述した OUI のリストを作成してもよい。例えば、各ベンダや IEEE(登録商標)によって OUI のデータベースなどが公開される場合、推定部2040はこのデータベースから OUI に関する情報を取得して利用する。   Further, the estimation unit 2040 may create the above-described OUI list by automatically acquiring information related to the OUI from each of the above-described vendors or IEEE (registered trademark). For example, when an OUI database or the like is disclosed by each vendor or IEEE (registered trademark), the estimation unit 2040 acquires and uses information on the OUI from this database.

<処理の流れ>
図8は、実施形態2の情報処理装置2000によって実行される処理の流れを例示するフローチャートである。以下、処理の対象となるネットワークインタフェース120をネットワークインタフェースXと表記する。
<Process flow>
FIG. 8 is a flowchart illustrating the flow of processing executed by the information processing apparatus 2000 according to the second embodiment. Hereinafter, the network interface 120 to be processed is referred to as a network interface X.

受信部2020は、ネットワークインタフェースXからデータを受信する(S202)。推定部2040は、受信したデータから送信元ネットワークインタフェース(ネットワークインタフェースX)の OUI を抽出する(S204)。推定部2040は、仮想ネットワークインタフェースの OUI のリストを取得する(S206)。推定部2040は、S204で抽出した OUI が、ステップS206で取得したリストに含まれるか否かを判定する(S208)。含まれる場合(S208:YES)、図8の処理はステップS210に進む。一方、含まれない場合(S208:NO)、図8の処理はステップS212に進む。   The receiving unit 2020 receives data from the network interface X (S202). The estimation unit 2040 extracts the OUI of the transmission source network interface (network interface X) from the received data (S204). The estimation unit 2040 acquires a list of OUIs of the virtual network interface (S206). The estimation unit 2040 determines whether or not the OUI extracted in S204 is included in the list acquired in step S206 (S208). If included (S208: YES), the process of FIG. 8 proceeds to step S210. On the other hand, if not included (S208: NO), the process of FIG. 8 proceeds to step S212.

S210において、推定部2040は、ネットワークインタフェースXは仮想ネットワークインタフェースであると推定する。一方、S212において、推定部2040は、ネットワークインタフェースXは物理ネットワークインタフェースであると推定する。   In S210, the estimation unit 2040 estimates that the network interface X is a virtual network interface. On the other hand, in S212, the estimation unit 2040 estimates that the network interface X is a physical network interface.

<ハードウエア構成例>
例えば実施形態2の情報処理装置2000のハードウエア構成は、実施形態1の情報処理装置2000と同様に、図4で表される。本実施形態において、前述したストレージ1080に記憶される各プログラムモジュールには、本実施形態で説明した各機能を実現するプログラムがさらに含まれる。また、仮想ネットワークインタフェースの OUI のリストや物理ネットワークインタフェースの OUI のリストを情報処理装置2000の内部に記憶する場合、メモリ1060やストレージ1080などがこれらのリストを記憶する。
<Hardware configuration example>
For example, the hardware configuration of the information processing apparatus 2000 according to the second embodiment is represented in FIG. 4 as with the information processing apparatus 2000 according to the first embodiment. In the present embodiment, each program module stored in the storage 1080 described above further includes a program that realizes each function described in the present embodiment. Further, when the OUI list of the virtual network interface and the OUI list of the physical network interface are stored in the information processing apparatus 2000, the memory 1060, the storage 1080, and the like store these lists.

<作用・効果>
本実施形態の情報処理装置2000によれば、ネットワークインタフェース120から受信したデータが示すそのネットワークインタフェース120の OUI に基づいて、そのネットワークインタフェース120が仮想ネットワークインタフェースと物理ネットワークインタフェースのどちらであるかという推定が行われる。具体的には、推定部2040は、ネットワークインタフェース120の OUI が仮想ネットワークインタフェースの OUI のリストや物理ネットワークインタフェースのリストなどに含まれるか否かという判定を行うことで、上記推定を行う。この方法によれば、受信したデータから抽出したネットワークインタフェース120の OUI をリスト等に含まれる OUI と比較するという簡単な処理で、上記推定を行える。そのため、推定に要する時間が短く、かつ推定に要する計算機資源が少ないという利点がある。
<Action and effect>
According to the information processing apparatus 2000 of this embodiment, based on the OUI of the network interface 120 indicated by the data received from the network interface 120, it is estimated whether the network interface 120 is a virtual network interface or a physical network interface. Is done. Specifically, the estimation unit 2040 performs the above estimation by determining whether or not the OUI of the network interface 120 is included in the OUI list of the virtual network interface, the physical network interface list, or the like. According to this method, the above estimation can be performed by a simple process of comparing the OUI of the network interface 120 extracted from the received data with the OUI included in the list or the like. Therefore, there are advantages that the time required for estimation is short and the computer resources required for estimation are small.

[実施形態3]
図9は、実施形態3に係る情報処理装置2000を例示するブロック図である。図9において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を表している。下記で説明する点を除き、実施形態3の情報処理装置2000は、実施形態1の情報処理装置2000と同様の機能を有する。
[Embodiment 3]
FIG. 9 is a block diagram illustrating an information processing apparatus 2000 according to the third embodiment. In FIG. 9, each block represents a functional unit configuration, not a hardware unit configuration. Except as described below, the information processing apparatus 2000 of the third embodiment has the same functions as the information processing apparatus 2000 of the first embodiment.

実施形態3の情報処理装置2000は送信部2060をさらに有する。送信部2060は、複数のネットワークインタフェースそれぞれに対してデータを送信する。以下、送信部2060によって送信されるデータを送信データと呼ぶ。   The information processing apparatus 2000 according to the third embodiment further includes a transmission unit 2060. The transmission unit 2060 transmits data to each of the plurality of network interfaces. Hereinafter, data transmitted by the transmission unit 2060 is referred to as transmission data.

実施形態3の受信部2020は、各ネットワークインタフェース120から、送信データに対する応答を表すデータ(以下、応答データ)を受信する。実施形態3の推定部2040は、送信データが送信されてから応答データが受信されるまでの時間(Round Trip Time(RTT))を用いて推定を行う。   The receiving unit 2020 according to the third embodiment receives data representing a response to transmission data (hereinafter, response data) from each network interface 120. The estimation unit 2040 according to the third embodiment performs estimation using a time (Round Trip Time (RTT)) from when transmission data is transmitted until response data is received.

<着目点>
実施形態3の推定部2040は、物理ネットワークインタフェースに対して送信データを送信した場合における RTT と、仮想ネットワークインタフェースに対して送信データを送信した場合における RTT との違いに着目して推定を行う。以下、この違いについて説明する。
<Points of interest>
The estimation unit 2040 according to the third embodiment performs estimation while paying attention to the difference between the RTT when transmission data is transmitted to the physical network interface and the RTT when transmission data is transmitted to the virtual network interface. Hereinafter, this difference will be described.

物理ネットワークインタフェースと仮想ネットワークインタフェースとでは、データのハンドリングに要する時間が原理的に異なる。前述したように、仮想ネットワークインタフェースでデータを受信する場合であっても、まずは物理ネットワークインタフェースによってデータが受信される。そして、物理ネットワークインタフェースよって受信されたデータが仮想ネットワークインタフェースへ受け渡される。   The time required for data handling differs in principle between the physical network interface and the virtual network interface. As described above, even when data is received by the virtual network interface, data is first received by the physical network interface. Then, the data received by the physical network interface is transferred to the virtual network interface.

例えば図1の場合、仮想ネットワークインタフェース70を宛先とするデータは、まず物理ネットワークインタフェース30によって受信され、VMM 20によって処理される。VMM 20は、このデータの宛先が物理ネットワークインタフェース30でないことを割り出すと、仮想ブリッジ80による処理を実行する。仮想ブリッジ80による処理が行われた結果、データは宛先の仮想ネットワークインタフェース70へ渡される。そして、そのデータは、その仮想ネットワークインタフェース70を用いて動作しているゲスト OS 60によって処理される。一方、データの宛先が物理ネットワークインタフェース30である場合、仮想ブリッジ80による処理は実行されない。   For example, in the case of FIG. 1, data destined for the virtual network interface 70 is first received by the physical network interface 30 and processed by the VMM 20. When the VMM 20 determines that the destination of the data is not the physical network interface 30, the VMM 20 executes processing by the virtual bridge 80. As a result of the processing by the virtual bridge 80, the data is passed to the destination virtual network interface 70. The data is processed by the guest OS 60 operating using the virtual network interface 70. On the other hand, when the data destination is the physical network interface 30, the processing by the virtual bridge 80 is not executed.

このように、送信データの宛先が仮想ネットワークインタフェースである場合、仮想化やエミュレーションに起因するオーバヘッド(仮想ブリッジ80による処理など)が生じる。そのため、送信データの宛先が仮想ネットワークインタフェースである場合における RTT は、送信データの宛先が物理ネットワークインタフェースである場合における RTT よりも長くなる。   As described above, when the destination of the transmission data is the virtual network interface, overhead (processing by the virtual bridge 80 or the like) due to virtualization or emulation occurs. Therefore, the RTT when the transmission data destination is a virtual network interface is longer than the RTT when the transmission data destination is a physical network interface.

また、ネットワークインタフェース120に対して複数回送信データを送信した場合における各 RTT にはばらつきがある。そして、送信データの送信先が物理ネットワークインタフェースである場合よりも、送信データの送信先が仮想ネットワークインタフェースである場合の方が、RTT のばらつきが大きくなる。一般に、データの処理にかかる時間のばらつきは、その処理が複雑なほど大きくなる傾向にある。そのため、仮想化やエミュレーションの処理を伴う仮想ネットワークインタフェースに対して送信データが送信される場合の方が、これらの処理を伴わない物理ネットワークインタフェースに対して送信データが送信される場合よりも RTT のばらつきが大きくなる。   In addition, there is variation in each RTT when transmission data is transmitted to the network interface 120 a plurality of times. The variation in RTT is larger when the transmission destination of the transmission data is a virtual network interface than when the transmission destination of the transmission data is a physical network interface. In general, variation in time required for data processing tends to increase as the processing becomes more complicated. For this reason, when sending data is sent to a virtual network interface with virtualization or emulation processing, the RTT is sent more than when sending data is sent to a physical network interface without these processing. The variation becomes large.

<RTT の具体例>
以下、RTT の大きさ及びばらつきの実測値を例示する。図10から図12は、ネットワークインタフェースに対して送信データを送信した場合における RTT を例示するグラフである。図10から図12はいずれも、X軸が試行回数を表しており、Y軸が RTT を表している。図10における送信データは ARP(Address Resolution Protocol)リクエストであり、図11における送信データは NS(Neighbor Solicitation) メッセージであり、図12における送信データは ICMP(Internet Control Message Protocol) echo リクエストである。これらの各送信データについての説明は後述する。
<Specific examples of RTT>
The following are examples of measured values of RTT size and variation. 10 to 12 are graphs illustrating the RTT when transmission data is transmitted to the network interface. In each of FIGS. 10 to 12, the X axis represents the number of trials, and the Y axis represents RTT. The transmission data in FIG. 10 is an ARP (Address Resolution Protocol) request, the transmission data in FIG. 11 is an NS (Neighbor Solicitation) message, and the transmission data in FIG. 12 is an Internet Control Message Protocol (ICMP) echo request. A description of each of these transmission data will be given later.

図10から図12のいずれのグラフにおいても、物理ネットワークインタフェースが送信先である場合の RTT の方が、仮想ネットワークインタフェースが送信先である場合の RTT よりも小さい。また、いずれのグラフにおいても、物理ネットワークインタフェースが送信先である場合の RTT の方が、仮想ネットワークインタフェースが送信先である場合の RTT よりもばらつきが小さい。   10 to 12, the RTT when the physical network interface is the transmission destination is smaller than the RTT when the virtual network interface is the transmission destination. Also, in any graph, the RTT when the physical network interface is the transmission destination has less variation than the RTT when the virtual network interface is the transmission destination.

そこで、実施形態3の推定部2040は、例えば以下に示す方法で推定を行う。   Therefore, the estimation unit 2040 according to the third embodiment performs estimation by the following method, for example.

<RTT の大きさを用いる推定方法>
前述したように、物理ネットワークインタフェースに対して送信データを送信する場合の方が、仮想ネットワークインタフェースに対して送信データを送信する場合よりも RTT が小さくなる。そこで推定部2040は、RTT の大きさを用いて推定を行う。
<Estimation method using RTT size>
As described above, the RTT is smaller when transmission data is transmitted to the physical network interface than when transmission data is transmitted to the virtual network interface. Therefore, the estimation unit 2040 performs estimation using the magnitude of RTT.

例えば推定部2040は、各ネットワークインタフェース120に対して送信データを送信し、RTT が最も小さいネットワークインタフェース120が、物理ネットワークインタフェースであると推定する。また例えば、推定部2040は、RTT が最も大きいネットワークインタフェースが、仮想ネットワークインタフェースであると推定する。   For example, the estimation unit 2040 transmits transmission data to each network interface 120 and estimates that the network interface 120 having the smallest RTT is a physical network interface. For example, the estimation unit 2040 estimates that the network interface having the largest RTT is a virtual network interface.

また例えば、推定部2040は、RTT の大きさに基づいてネットワークインタフェース120を複数のグループにクラスタリングしてもよい。そして、推定部2040はこれらのグループを用いて推定を行う。例えば推定部2040は、RTT の大きさが小さい順にグループを並べた場合において所定順位以上にあるグループに属するネットワークインタフェース120が、物理ネットワークインタフェースであると推定する。また、推定部2040は、順位が上記所定順位未満であるグループに属するネットワークインタフェース120が、仮想ネットワークインタフェースであると推定する。例えば上記所定順位は1である。この場合、推定部2040は、RTT の大きさが最も小さいグループに属するネットワークインタフェース120が、物理ネットワークインタフェースであると推定する。上記所定順位は、推定部2040に予め設定されていてもよいし、情報処理装置2000の内部又は外部の記憶部に記憶されていてもよい。後者の場合、推定部2040は、推定を行う際に上記所定順位を記憶部から取得する。   For example, the estimation unit 2040 may cluster the network interface 120 into a plurality of groups based on the size of the RTT. Then, the estimation unit 2040 performs estimation using these groups. For example, the estimation unit 2040 estimates that the network interface 120 belonging to a group having a predetermined rank or higher is a physical network interface when the groups are arranged in ascending order of the RTT. In addition, the estimation unit 2040 estimates that the network interface 120 belonging to the group whose rank is lower than the predetermined rank is a virtual network interface. For example, the predetermined order is 1. In this case, the estimation unit 2040 estimates that the network interface 120 belonging to the group having the smallest RTT is a physical network interface. The predetermined order may be set in advance in the estimation unit 2040 or may be stored in an internal or external storage unit of the information processing apparatus 2000. In the latter case, the estimation unit 2040 acquires the predetermined order from the storage unit when performing the estimation.

なお、推定部2040は、複数のネットワークインタフェース120それぞれに対して複数の送信データを送信してもよい。この場合、推定部2040は、各ネットワークインタフェース120それぞれについて、RTT の統計値を算出する。そして、推定部2040は、この統計値を用いて、上述の各推定を行う。例えば推定部2040は、RTT の平均値が最も小さいネットワークインタフェース120が、物理ネットワークインタフェースであると推定する。また例えば推定部2040は、RTT の平均値が最も大きいネットワークインタフェース120が、仮想ネットワークインタフェースであると推定する。また、推定部2040は、この統計値を用いて、前述のクラスタリングによる推定を行ってもよい。   Note that the estimation unit 2040 may transmit a plurality of transmission data to each of the plurality of network interfaces 120. In this case, the estimation unit 2040 calculates the RTT statistical value for each network interface 120. And the estimation part 2040 performs each above-mentioned estimation using this statistical value. For example, the estimation unit 2040 estimates that the network interface 120 having the smallest RTT average value is a physical network interface. For example, the estimation unit 2040 estimates that the network interface 120 having the largest average RTT value is a virtual network interface. Moreover, the estimation part 2040 may perform estimation by the above-mentioned clustering using this statistical value.

RTT の大きさを表す統計値は様々である。例えばこの統計値は、RTT の平均値、中央値、又は最頻値などである。   There are various statistics representing the magnitude of RTT. For example, the statistical value is an average value, median value, or mode value of RTT.

<RTT のばらつきを用いる推定方法>
前述したように、物理ネットワークインタフェースに対して送信データを送信する場合の方が、仮想ネットワークインタフェースに対して送信データを送信する場合よりも RTT のばらつきが小さいと考えられる。そこで推定部2040は、RTT のばらつきを用いて推定を行う。
<Estimation method using RTT variation>
As described above, it is considered that the variation in RTT is smaller when transmission data is transmitted to the physical network interface than when transmission data is transmitted to the virtual network interface. Therefore, the estimation unit 2040 performs estimation using the variation in RTT.

例えば推定部2040は、RTT のばらつきが最も小さいネットワークインタフェースが、物理ネットワークインタフェースであると推定する。また例えば、推定部2040は、RTT のばらつきが最も大きいネットワークインタフェース120が、仮想ネットワークインタフェースであると推定する。   For example, the estimation unit 2040 estimates that the network interface with the smallest variation in RTT is a physical network interface. For example, the estimation unit 2040 estimates that the network interface 120 having the largest variation in RTT is a virtual network interface.

また例えば、推定部2040は、RTT のばらつきに基づいてネットワークインタフェース120を複数のグループにクラスタリングしてもよい。そして、推定部2040はこれらのグループを用いて推定を行う。例えば推定部2040は、RTT のばらつきが小さい順にグループを並べた場合において所定順位以上にあるグループに属するネットワークインタフェース120が、物理ネットワークインタフェースであると推定する。また、推定部2040は、順位が上記所定順位未満であるグループに属するネットワークインタフェース120が、仮想ネットワークインタフェースであると推定する。例えば上記所定順位は1である。この場合、推定部2040は、RTT のばらつきが最も小さいグループに属するネットワークインタフェース120が、物理ネットワークインタフェースであると推定する。上記所定順位は、推定部2040に予め設定されていてもよいし、情報処理装置2000の内部又は外部の記憶部に記憶されていてもよい。後者の場合、推定部2040は、推定を行う際に上記所定順位を記憶部から取得する。   For example, the estimation unit 2040 may cluster the network interface 120 into a plurality of groups based on the variation in RTT. Then, the estimation unit 2040 performs estimation using these groups. For example, the estimation unit 2040 estimates that the network interface 120 belonging to a group having a predetermined rank or higher is a physical network interface when the groups are arranged in ascending order of variation in RTT. In addition, the estimation unit 2040 estimates that the network interface 120 belonging to the group whose rank is lower than the predetermined rank is a virtual network interface. For example, the predetermined order is 1. In this case, the estimation unit 2040 estimates that the network interface 120 belonging to the group having the smallest variation in RTT is a physical network interface. The predetermined order may be set in advance in the estimation unit 2040 or may be stored in an internal or external storage unit of the information processing apparatus 2000. In the latter case, the estimation unit 2040 acquires the predetermined order from the storage unit when performing the estimation.

RTT のばらつきを用いる場合、送信部2060は、複数のネットワークインタフェース120それぞれに対して複数の送信データを送信する。そして、推定部2040は、各ネットワークインタフェース120それぞれについて、RTT のばらつきを表す統計値を算出する。そして推定部2040は、このばらつきを表す統計値を用いて上記推定を行う。   When using variation in RTT, the transmission unit 2060 transmits a plurality of transmission data to each of the plurality of network interfaces 120. Then, the estimation unit 2040 calculates a statistical value representing the variation in RTT for each network interface 120. And the estimation part 2040 performs the said estimation using the statistical value showing this dispersion | variation.

RTT のばらつきを表す統計値は様々である。例えばこの統計値は、RTT の分散や標準偏差などである。   There are various statistics that represent the variation in RTT. For example, this statistic is RTT variance or standard deviation.

<推定部2040が行うその他の処理>
推定部2040は、推定の確度を高くするために、以下で示す処理を行ってもよい。
<Other processing performed by the estimation unit 2040>
The estimation unit 2040 may perform the following process in order to increase the accuracy of estimation.

例えば推定部2040は、各ネットワークインタフェース120から受信するデータのうち、最初の所定数(例えば1つ)のデータについては、RTT の統計値やばらつきの算出に利用しない。ネットワークインタフェース120に対して最初に送信データを送信する場合、ネットワークインタフェース120のアドレス解決が行われうる。そのため、観測される RTT が、その後に観測される RTT と比較して大きくなる可能性がある。よって、最初に観測される RTT を除外して RTT の統計値の算出等を行った方が、推定部2040による推定の確度が高くなる。   For example, the estimation unit 2040 does not use the first predetermined number (for example, one) of data received from each network interface 120 for calculation of RTT statistical values and variations. When transmission data is first transmitted to the network interface 120, address resolution of the network interface 120 can be performed. Therefore, the observed RTT may be larger than the observed RTT. Therefore, the accuracy of estimation by the estimation unit 2040 is higher when the RTT statistical value is calculated without the first observed RTT.

また、推定部2040は、ネットワークインタフェース120ごとに、RTT の外れ値を除外してもよい。例えば推定部2040は、ネットワークインタフェースXについて観測された RTT の集合について、平均値μ及び標準偏差σを算出する。推定部2040は、この RTT の集合から、平均値μとの距離がσよりも大きい RTT(μ+σより大きい RTT 又はμ-σより小さい RTT)を外れ値として除外する。そして、推定部2040は、外れ値を除外した集合を用いて推定を行う。なお、統計処理を行う際に外れ値を除外する方法には様々な既知の手法があり、推定部2040はこれら既知の様々な手法を利用できる。そのため、外れ値を除外する方法は例示した方法に限定されない。   The estimation unit 2040 may exclude outliers of RTT for each network interface 120. For example, the estimation unit 2040 calculates an average value μ and a standard deviation σ for the set of RTTs observed for the network interface X. The estimation unit 2040 excludes an RTT whose distance from the average value μ is larger than σ (an RTT larger than μ + σ or an RTT smaller than μ−σ) as an outlier from the set of RTTs. Then, the estimation unit 2040 performs estimation using a set excluding outliers. Note that there are various known methods for excluding outliers when performing statistical processing, and the estimation unit 2040 can use these various known methods. Therefore, the method for excluding outliers is not limited to the exemplified method.

<送信部2060の動作の詳細>
送信部2060は、各ネットワークインタフェース120に対して、そのネットワークインタフェース120から応答を得られる送信データを送信する。このような送信データの種類は様々である。例えば送信部2060は、ARP リクエストを送信する。ネットワークインタフェース120を用いて動作する OS や VMM などは、ARP リクエストを受信すると、ARP リプライを送信する。受信部2020は、応答データとして ARP リプライを受信する。よって、RTT は、送信部2060が ARP リクエストを送信してから受信部2020が ARP リプライを受信するまでの時間となる。なお、ARP リクエスト及び ARP リプライは、RFC 826(非特許文献2)で定義されている。
<Details of Operation of Transmitter 2060>
The transmission unit 2060 transmits transmission data that can obtain a response from the network interface 120 to each network interface 120. There are various types of such transmission data. For example, the transmission unit 2060 transmits an ARP request. When an OS or VMM that operates using the network interface 120 receives an ARP request, it transmits an ARP reply. The receiving unit 2020 receives an ARP reply as response data. Therefore, RTT is the time from when the transmission unit 2060 transmits an ARP request until the reception unit 2020 receives an ARP reply. Note that ARP requests and ARP replies are defined in RFC 826 (Non-Patent Document 2).

例えば送信部2060は、ICMP echo リクエストを送信する。ネットワークインタフェース120を用いて動作する OS や VMM などは、ICMP echo リクエストを受信すると、 ICMP echo リプライを送信する。受信部2020は、応答データとして ICMP echo リプライを受信する。よって、RTT は、送信部2060が ICMP echo リクエストを送信してから受信部2020が ICMP echo リプライを受信するまでの時間となる。   For example, the transmission unit 2060 transmits an ICMP echo request. When an OS or VMM that operates using the network interface 120 receives an ICMP echo request, it sends an ICMP echo reply. The receiving unit 2020 receives an ICMP echo reply as response data. Therefore, RTT is the time from when the transmission unit 2060 transmits an ICMP echo request until the reception unit 2020 receives an ICMP echo reply.

なお、IPv6 アドレスを持つネットワークインタフェースに対しては、ICMPv6(ICMP version 6)echo リクエストを送信してもよい。この場合、受信部2020は、応答データとして ICMPv6 echo リプライを受信する。   An ICMPv6 (ICMP version 6) echo request may be sent to a network interface having an IPv6 address. In this case, the receiving unit 2020 receives an ICMPv6 echo reply as response data.

なお、ICMP は RFC792(非特許文献3)で定義されている。また、ICMPv6 は RFC4443(非特許文献4)で定義されている。   ICMP is defined in RFC792 (Non-Patent Document 3). ICMPv6 is defined in RFC4443 (Non-Patent Document 4).

また例えば、送信部2060は、NS メッセージを送信する。ネットワークインタフェース120を用いて動作する OS などは、NS メッセージを受信すると、NA(Neighbor Advertisement)メッセージを送信する。受信部2020は、応答メッセージとして NA メッセージを受信する。よって、RTT は、送信部2060が NS メッセージを送信してから受信部2020が NA メッセージを受信するまでの時間となる。なお、NS メッセージを受信するネットワークインタフェース120は、IPv6 アドレスを持つネットワークインタフェースである。NS メッセージ及び NA メッセージは RFC4861(非特許文献5)で定義されている。   For example, the transmission unit 2060 transmits an NS message. When the OS operating using the network interface 120 receives an NS message, it transmits an NA (Neighbor Advertisement) message. The receiving unit 2020 receives an NA message as a response message. Therefore, RTT is the time from when the transmission unit 2060 transmits the NS message until the reception unit 2020 receives the NA message. The network interface 120 that receives the NS message is a network interface having an IPv6 address. NS message and NA message are defined in RFC4861 (Non-Patent Document 5).

なお、送信データは、その送信データを受信したネットワークインタフェース120から応答を得られるデータであればよく、上述した ARP リクエスト等に限定されない。   The transmission data is not limited to the above-described ARP request or the like as long as it is data that can obtain a response from the network interface 120 that has received the transmission data.

<ネットワーク130の構成について>
ネットワーク130の構成次第で、送信データして利用できるデータが異なる。具体的には、情報処理装置2000とネットワークインタフェース120が同一リンク内にあるか否かによって異なる。ネットワークインタフェース120が情報処理装置2000と異なるリンクに存在する場合、レイヤ2レベルで送信される送信データ(ARP リクエストなど)は、ネットワークインタフェース120に到達できないためである。
<Configuration of network 130>
Depending on the configuration of the network 130, data that can be used as transmission data differs. Specifically, it differs depending on whether or not the information processing apparatus 2000 and the network interface 120 are in the same link. This is because when the network interface 120 exists on a different link from the information processing apparatus 2000, transmission data (such as an ARP request) transmitted at the layer 2 level cannot reach the network interface 120.

図13はネットワーク130の構成を例示する第1の図である。図13において、各ネットワークインタフェース120はいずれも、情報処理装置2000と同一のリンク内に存在する。この場合、送信部2060から送信するデータは、前述したいずれの種類のデータでも構わない。   FIG. 13 is a first diagram illustrating the configuration of the network 130. In FIG. 13, each network interface 120 exists in the same link as the information processing apparatus 2000. In this case, the data transmitted from the transmission unit 2060 may be any type of data described above.

図14はネットワーク130の構成を例示する第2の図である。図14において、各ネットワークインタフェース120は、情報処理装置2000と異なるリンク内に存在する。この場合、送信部2060は、異なるリンクに存在するネットワークインタフェース120へ到達できるデータを送信する。具体的には、送信部2060は、レイヤ3レベルのプロトコルのデータ(ICMP echo リクエストなど)を送信する。   FIG. 14 is a second diagram illustrating the configuration of the network 130. In FIG. 14, each network interface 120 exists in a different link from the information processing apparatus 2000. In this case, the transmission unit 2060 transmits data that can reach the network interface 120 existing in a different link. Specifically, the transmission unit 2060 transmits layer 3 level protocol data (such as an ICMP echo request).

なお、図13及び図14を用いて説明した事項は、情報処理装置2000からネットワークインタフェース120に対してデータの送信を行う後述の各実施形態についても同様である。   The items described with reference to FIGS. 13 and 14 are the same for each of the embodiments described later that transmits data from the information processing apparatus 2000 to the network interface 120.

<処理の流れ:概要>
図15は、実施形態3の情報処理装置2000によって実行される処理の流れの概要を例示するフローチャートである。S302からS308は、複数のネットワークインタフェース120それぞれについて行うループ処理である。S302において、送信部2060は、まだ送信データの送信先としていないネットワークインタフェース120があるか否かを判定する。既に全てのネットワークインタフェース120が送信データの送信先とされた場合、図15の処理はS310に進む。一方、まだ送信データの送信先とされていないネットワークインタフェース120がある場合、図15の処理はS304に進む。この際、送信部2060は、まだ送信データの送信先とされていないネットワークインタフェース120の中から1つを選択する。図15において、ここで選択されたネットワークインタフェース120はネットワークインタフェースiと表記されている。
<Process flow: Overview>
FIG. 15 is a flowchart illustrating an overview of the flow of processing executed by the information processing apparatus 2000 according to the third embodiment. S302 to S308 are loop processes performed for each of the plurality of network interfaces 120. In S302, the transmission unit 2060 determines whether there is a network interface 120 that is not yet a transmission destination of transmission data. If all the network interfaces 120 have already been set as transmission destinations of the transmission data, the processing in FIG. 15 proceeds to S310. On the other hand, if there is a network interface 120 that is not yet a transmission destination of transmission data, the processing in FIG. 15 proceeds to S304. At this time, the transmission unit 2060 selects one of the network interfaces 120 that is not yet a transmission destination of transmission data. In FIG. 15, the network interface 120 selected here is represented as a network interface i.

S304において、送信部2060はネットワークインタフェースiに対して送信データを送信する。S306において、受信部2020はネットワークインタフェースiから応答データを受信する。ただし、受信部2020は、ネットワークインタフェースiから非同期に受信データを受信してもよい。この場合、図15の処理は、S304の後にS308に進む。S308はループ処理Aの終端である。図15の処理は、S302に戻る。   In S304, the transmission unit 2060 transmits transmission data to the network interface i. In step S306, the reception unit 2020 receives response data from the network interface i. However, the receiving unit 2020 may receive received data from the network interface i asynchronously. In this case, the process of FIG. 15 proceeds to S308 after S304. S308 is the end of loop processing A. The processing in FIG. 15 returns to S302.

前述したように、全てのネットワークインタフェース120が送信データの送信先とされた場合、図15の処理はS310に進む。S310において、推定部2040は、各ネットワークインタフェースについて得られた RTT を用いて推定を行う。   As described above, when all the network interfaces 120 are the transmission destinations of the transmission data, the processing in FIG. 15 proceeds to S310. In S310, the estimation unit 2040 performs estimation using the RTT obtained for each network interface.

なお、各ネットワークインタフェース120に対して複数回送信データを送信する場合、各ネットワークインタフェース120についてS304及びS306を複数回実行する。   When transmitting transmission data to each network interface 120 a plurality of times, S304 and S306 are executed a plurality of times for each network interface 120.

前述したように、推定部2040による推定には、例えばRTT の大きさを利用する方法と、RTT のばらつきを利用する方法がある。以下、それぞれの方法の流れを、フローチャートを用いて例示する。   As described above, the estimation by the estimation unit 2040 includes, for example, a method using the RTT size and a method using the RTT variation. Hereafter, the flow of each method is illustrated using a flowchart.

<RTT の大きさを用いる推定処理の流れ>
図16は、RTT の大きさに基づいて行う推定処理の流れを例示するフローチャートである。推定部2040は、RTT の大きさでネットワークインタフェースを複数のグループにクラスタリングする(S402)。推定部2040は、RTT の大きさの昇順にグループをソートする(S404)。推定部2040は、所定順位以上のグループに属するネットワークインタフェース120が物理ネットワークインタフェースであると推定する(S406)。推定部2040は、所定順位未満であるネットワークインタフェース120が物理ネットワークインタフェースであると推定する(S408)。
<Flow of estimation process using RTT size>
FIG. 16 is a flowchart illustrating the flow of estimation processing performed based on the size of RTT. The estimation unit 2040 clusters network interfaces into a plurality of groups based on the size of RTT (S402). The estimation unit 2040 sorts the groups in ascending order of the RTT size (S404). The estimation unit 2040 estimates that the network interface 120 belonging to the group of the predetermined order or higher is a physical network interface (S406). The estimation unit 2040 estimates that the network interface 120 that is less than the predetermined order is a physical network interface (S408).

<RTT のばらつきを用いる推定処理の流れ>
図17は、RTT のばらつきに基づいて行う推定処理の流れを例示するフローチャートである。推定部2040は、RTT のばらつき度合いでネットワークインタフェースを複数のグループにクラスタリングする(S502)。推定部2040は、RTT のばらつきの大きさの昇順にグループをソートする(S504)。推定部2040は、所定順位以上のグループに属するネットワークインタフェース120が物理ネットワークインタフェースであると推定する(S506)。推定部2040は、所定順位未満のグループに属するネットワークインタフェース120が仮想ネットワークインタフェースであると推定する(S508)。
<Flow of estimation processing using RTT variation>
FIG. 17 is a flowchart illustrating the flow of estimation processing performed based on the variation in RTT. The estimation unit 2040 clusters the network interfaces into a plurality of groups based on the degree of variation in RTT (S502). The estimation unit 2040 sorts the groups in ascending order of the variation in the RTT (S504). The estimation unit 2040 estimates that the network interface 120 belonging to the group of the predetermined order or higher is a physical network interface (S506). The estimation unit 2040 estimates that the network interface 120 belonging to the group lower than the predetermined order is a virtual network interface (S508).

<物理ネットワークインタフェースの数が1つに限定される環境の構築>
物理ネットワークインタフェースの数が1つに限定される環境を構築した上で情報処理装置2000による推定を行うと、推定の精度を高くすることができる。物理ネットワークインタフェースの数が未知の場合、例えば RTT が2番目に小さいネットワークインタフェース120や RTT が3番目に小さいネットワークインタフェース120が、物理ネットワークインタフェースなのか仮想ネットワークインタフェースなのかを、判断しかねる場合もありうる。一方、物理ネットワークインタフェースの数が1つに限定されれば、「RTT が最も小さいネットワークインタフェース120が物理ネットワークインタフェースであり、それ以外のネットワークインタフェース120が仮想ネットワークインタフェースである」という推定を高い精度で行うことができる。
<Building an environment where the number of physical network interfaces is limited to one>
When the information processing apparatus 2000 performs estimation after constructing an environment in which the number of physical network interfaces is limited to one, the estimation accuracy can be increased. If the number of physical network interfaces is unknown, it may be impossible to determine whether the network interface 120 with the second smallest RTT or the network interface 120 with the third smallest RTT is a physical network interface or a virtual network interface. sell. On the other hand, if the number of physical network interfaces is limited to one, the estimation that “the network interface 120 with the smallest RTT is a physical network interface and the other network interfaces 120 are virtual network interfaces” can be made with high accuracy. It can be carried out.

そこで情報処理装置2000は、物理ネットワークインタフェースが1つに限定される環境を構築し、その後に推定部2040による推定を行ってもよい。例えば情報処理装置2000が、図18で表される構成で他の物理マシンと接続されているとする。図18は、スイッチを介して情報処理装置2000と複数の物理マシンとが接続されている構成を例示する図である。   Therefore, the information processing apparatus 2000 may construct an environment in which the number of physical network interfaces is limited to one, and then perform estimation by the estimation unit 2040. For example, it is assumed that the information processing apparatus 2000 is connected to another physical machine with the configuration illustrated in FIG. FIG. 18 is a diagram illustrating a configuration in which the information processing apparatus 2000 and a plurality of physical machines are connected via a switch.

例えば情報処理装置2000は、ポート VLAN(Virtual LAN)を利用することで、情報処理装置2000と各物理マシンとが1対1で接続されるように設定を行う。図19は、ポート VLAN によって情報処理装置2000と各物理マシンとが1対1で接続されている様子を例示する図である。このような設定を行った上で送信部2060を動作させることにより、推定部2040は、物理ネットワークインタフェースの数が1つに限定される環境で推定を行うことができる。よって、推定部2040による推定の精度が高くなる。なお、ポート VLAN は既存技術であるため、これに関する説明は省略する。   For example, the information processing apparatus 2000 performs setting so that the information processing apparatus 2000 and each physical machine are connected one-to-one by using a port VLAN (Virtual LAN). FIG. 19 is a diagram illustrating a state in which the information processing apparatus 2000 and each physical machine are connected on a one-to-one basis using a port VLAN. By operating the transmission unit 2060 after performing such settings, the estimation unit 2040 can perform estimation in an environment where the number of physical network interfaces is limited to one. Therefore, the accuracy of estimation by the estimation unit 2040 is increased. Since port VLAN is an existing technology, a description thereof will be omitted.

<ハードウエア構成例>
例えば実施形態3の情報処理装置2000のハードウエア構成は、実施形態1の情報処理装置2000と同様に、図4で表される。本実施形態において、前述したストレージ1080に記憶される各プログラムモジュールには、本実施形態で説明した各機能を実現するプログラムがさらに含まれる。また、ストレージ1080は、送信部2060を実現するプログラムモジュールをさらに記憶する。プロセッサ1040は、このプログラムモジュールを実行することで、送信部2060の機能を実現する。
<Hardware configuration example>
For example, the hardware configuration of the information processing apparatus 2000 according to the third embodiment is represented in FIG. 4 as with the information processing apparatus 2000 according to the first embodiment. In the present embodiment, each program module stored in the storage 1080 described above further includes a program that realizes each function described in the present embodiment. The storage 1080 further stores a program module that implements the transmission unit 2060. The processor 1040 implements the function of the transmission unit 2060 by executing this program module.

<作用・効果>
本実施形態によれば、各ネットワークインタフェース120に対して送信データを送信した場合における RTT に基づいて推定が行われる。この方法には、実施形態2の方法と異なり、OUI のリストなど、推定に用いる情報を用意しておく必要がないという利点がある。
<Action and effect>
According to the present embodiment, estimation is performed based on the RTT when transmission data is transmitted to each network interface 120. Unlike the method of the second embodiment, this method has an advantage that it is not necessary to prepare information used for estimation such as an OUI list.

[実施形態4]
図20は、実施形態4に係る情報処理装置2000を例示するブロック図である。図20において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を表している。
[Embodiment 4]
FIG. 20 is a block diagram illustrating an information processing apparatus 2000 according to the fourth embodiment. In FIG. 20, each block represents a functional unit configuration, not a hardware unit configuration.

実施形態4の情報処理装置2000は、検出部2080を有する。検出部2080は、ネットワークインタフェース120から受信するデータを用いて、そのネットワークインタフェース120がデータの送受信を行える状態になったことを検出する。以下、「データの送受信を行える状態」をオンラインとも表記し、「データの送受信を行えない状態」をオフラインとも表記する。   The information processing apparatus 2000 according to the fourth embodiment includes a detection unit 2080. The detection unit 2080 uses the data received from the network interface 120 to detect that the network interface 120 is ready to transmit and receive data. Hereinafter, “a state where data can be transmitted / received” is also referred to as online, and “a state where data cannot be transmitted / received” is also referred to as offline.

実施形態4の推定部2040は、ネットワークインタフェース120がオンラインになったタイミングに基づいて推定を行う。例えば推定部2040は、オンラインになった時点が最も早いネットワークインタフェースが、物理的なネットワークインタフェースであると推定する。   The estimation unit 2040 according to the fourth embodiment performs estimation based on the timing when the network interface 120 is online. For example, the estimation unit 2040 estimates that the network interface that is earliest online is a physical network interface.

<着目点>
本実施形態の情報処理装置2000は、物理ネットワークインタフェースがオンラインになるタイミングと仮想ネットワークインタフェースがオンラインになるタイミングとの差異に着目して推定を行う。具体的には、ある物理マシンが持つ物理ネットワークインタフェースがオンラインになるタイミングは、その物理マシン上で生成される仮想ネットワークインタフェースがオンラインになるタイミングよりも早い。以下、その理由を説明する。
<Points of interest>
The information processing apparatus 2000 of this embodiment performs estimation by paying attention to the difference between the timing when the physical network interface is online and the timing when the virtual network interface is online. Specifically, the timing when a physical network interface of a certain physical machine comes online is earlier than the timing when a virtual network interface generated on the physical machine comes online. The reason will be described below.

前述したように、仮想ネットワークインタフェースは、物理マシン上で動作する VMM やエミュレータなどによって実現される。そして、仮想ネットワークインタフェースを生成する VMM や エミュレータなどが起動している場合、一般に、物理ネットワークインタフェースはオンラインになる。   As described above, the virtual network interface is realized by VMM or emulator running on a physical machine. When VMM or an emulator that creates a virtual network interface is running, the physical network interface is generally online.

例えば VMM の場合を例に説明する。図21は、VMM 及び VM が起動する流れを例示する図である。まず、物理マシンが起動し、その上で VMM が起動する。そして、VMM によって物理ネットワークインタフェースが初期化されることで、物理ネットワークインタフェースがオンラインになる。次に、VMM によって VM が起動され、VM 上でゲスト OS が起動される。さらに、ゲスト OS によって仮想ネットワークインタフェースが初期化されることで、仮想ネットワークインタフェースがオンラインになる。なお、VM が複数起動する場合、VM は順に起動される場合もあるし、並列に起動される場合もある。   For example, the case of VMM will be described as an example. FIG. 21 is a diagram illustrating a flow of starting up VMM and VM. First, the physical machine is started, and then VMM is started. Then, the physical network interface is brought online by the VMM initializing the physical network interface. Next, the VM is started by VMM, and the guest OS is started on the VM. In addition, the virtual network interface is brought online when the virtual network interface is initialized by the guest OS. When multiple VMs are started, the VMs may be started in order or in parallel.

図21で例示したように、仮想マシン環境において物理ネットワークインタフェースがオンラインになるタイミングは、仮想ネットワークインタフェースがオンラインになるタイミングよりも早くなる。   As illustrated in FIG. 21, the timing at which the physical network interface is brought online in the virtual machine environment is earlier than the timing at which the virtual network interface is brought online.

また、仮想ネットワークインタフェースがエミュレーションによって実現される場合、物理マシン上で直接動作する OS によってエミュレータが起動される。そのため、エミュレータが起動する際には、この OS の起動処理が完了している。よって、この OS によって初期化される物理ネットワークインタフェースはオンラインになっている。よって、エミュレーション環境においても、物理ネットワークインタフェースがオンラインになるタイミングは、仮想ネットワークインタフェースがオンラインになるタイミングよりも早くなる。   When the virtual network interface is realized by emulation, the emulator is started by the OS that runs directly on the physical machine. Therefore, when the emulator starts, the OS startup process is complete. Therefore, the physical network interface initialized by this OS is online. Therefore, even in the emulation environment, the timing when the physical network interface comes online is earlier than the timing when the virtual network interface comes online.

<推定部2040による推定処理>
以上の点に着目し、本実施形態の推定部2040は、オンラインになったタイミングが最も早いネットワークインタフェース120が、物理ネットワークインタフェースであると推定する。
<Estimation Process by Estimating Unit 2040>
Focusing on the above points, the estimation unit 2040 of the present embodiment estimates that the network interface 120 that is online at the earliest timing is a physical network interface.

また上述した説明によれば、仮想ネットワークインタフェースがオンラインにあるタイミングは、物理ネットワークインタフェースがオンラインになるタイミングよりも遅いともいえる。そこで推定部2040は、オンラインになるタイミングが最も遅いネットワークインタフェース120が、仮想ネットワークインタフェースであると推定してもよい。   Further, according to the above description, it can be said that the timing when the virtual network interface is online is later than the timing when the physical network interface is online. Therefore, the estimation unit 2040 may estimate that the network interface 120 with the latest timing to go online is a virtual network interface.

<ネットワークインタフェース120がオンラインになったことを検出する方法>
一般にネットワークインタフェースは、初期化の過程や初期化が終了した後において、データの送受信を行う。例えば自動で IP アドレスが割り当てられるネットワークインタフェースは、初期化のタイミングで DHCP discovery パケットを送信する。さらに、IPv6 アドレスを持つネットワークインタフェースについては、ネットワークインタフェースの起動時に DAD(Duplicate Address Detection)処理が行われる。具体的には、ネットワークインタフェースは NS メッセージの送信を行う。さらには、ネットワークインタフェースは、ファイル共有やサービスディスカバリのための広告データ(LLMNR(Link-Local Multicast Name Resolution)や mDNS(multicast Domain Name System)などのデータ)も送信しうる。このように、ネットワークインタフェース120がオンラインになる時(ネットワークインタフェース120が初期化される時)やその後において、ネットワークインタフェース120は何らかのデータを送信する。
<Method for Detecting that Network Interface 120 is Online>
In general, the network interface transmits and receives data after the initialization process and the initialization is completed. For example, a network interface that is automatically assigned an IP address sends a DHCP discovery packet at the initialization timing. Furthermore, for network interfaces with IPv6 addresses, DAD (Duplicate Address Detection) processing is performed when the network interface is activated. Specifically, the network interface sends NS messages. Furthermore, the network interface can also send advertisement data (data such as LLMNR (Link-Local Multicast Name Resolution) and mDNS (multicast Domain Name System)) for file sharing and service discovery. Thus, when the network interface 120 is online (when the network interface 120 is initialized) or thereafter, the network interface 120 transmits some data.

そこで検出部2080は、ネットワークインタフェース120から受信するデータに基づいて、そのネットワークインタフェース120がオンラインになったことを検出する。例えば検出部2080は、ネットワークインタフェース120から所定のデータを受信した場合に、そのネットワークインタフェース120がオンラインになったと判定する。所定のデータは、例えば前述した DHCP discover パケットや NS メッセージなどである。   Therefore, the detection unit 2080 detects that the network interface 120 is online based on the data received from the network interface 120. For example, when receiving predetermined data from the network interface 120, the detection unit 2080 determines that the network interface 120 is online. The predetermined data is, for example, the aforementioned DHCP discover packet or NS message.

「上記所定のデータとしてどの種類のデータを扱うか」の定義は、予め検出部2080に設定されていてもよいし、情報処理装置2000の内部又は外部に設けられる記憶部に記憶しておいてもよい。後者の場合、検出部2080は、この記憶部から情報を取得することで、どの種類のデータを所定のデータとして扱うかを把握する。   The definition of “what kind of data is handled as the predetermined data” may be set in the detection unit 2080 in advance, or stored in a storage unit provided inside or outside the information processing apparatus 2000. Also good. In the latter case, the detection unit 2080 obtains information from the storage unit, thereby grasping which type of data is handled as predetermined data.

「どのネットワークインタフェース120が最も早くオンラインになったか」を判定するためには、全てのネットワークインタフェース120がオフラインであるタイミングを把握する必要がある。さもないと、例えば情報処理装置2000が動作を開始した後に、あるネットワークインタフェース120がオンラインになったことが検出され、それ以外のネットワークインタフェース120についてはオンラインになったことが検出されない場合に、推定部2040による推定が難しくなる。なぜなら、「それ以外のネットワークインタフェース120はオフラインである」というケースと、「それ以外のネットワークインタフェース120は、情報処理装置2000が動作を開始前に既にオンラインになっていた」というケースの区別がつかないためである。   In order to determine “which network interface 120 is online first”, it is necessary to grasp the timing when all the network interfaces 120 are offline. Otherwise, for example, when it is detected that a certain network interface 120 is online after the information processing apparatus 2000 has started to operate, and it is not detected that the other network interface 120 is online, it is estimated The estimation by the unit 2040 becomes difficult. This is because there is a distinction between the case of “other network interfaces 120 are offline” and the case of “other network interfaces 120 are already online before the information processing apparatus 2000 starts operating”. This is because there is not.

全てのネットワークインタフェース120がオフラインであるタイミングを把握する方法は様々である。例えば、情報処理装置2000を運用する環境が、一般のオフィスのように、PC 等の電源を切ってから帰宅するというルールに基づいて運用されているとする。この場合、例えば情報処理装置2000は、所定の時間(例えば夜の0時)に、全てのネットワークインタフェース120がオフラインになったとみなす。   There are various methods for grasping the timing when all the network interfaces 120 are offline. For example, it is assumed that the environment in which the information processing apparatus 2000 is operated is operated based on a rule that the user returns home after turning off the power of a PC or the like as in a general office. In this case, for example, the information processing apparatus 2000 considers that all the network interfaces 120 are offline at a predetermined time (for example, midnight).

また情報処理装置2000は、各ネットワークインタフェース120がオフラインになることを検出してもよい。具体的には、後述の実施形態5に示すように、情報処理装置2000は、ネットワークインタフェース120に対して繰り返しデータを送信し、そのデータに対する応答を受信部2020が受け取らなくなった場合に、そのネットワークインタフェース120がオフラインになったと判定する。この方法の詳細については、実施形態5で説明する。   Further, the information processing apparatus 2000 may detect that each network interface 120 goes offline. Specifically, as shown in a fifth embodiment described later, the information processing apparatus 2000 repeatedly transmits data to the network interface 120, and when the reception unit 2020 no longer receives a response to the data, the information processing apparatus 2000 It is determined that the interface 120 has gone offline. Details of this method will be described in Embodiment 5.

ただし情報処理装置2000は、情報処理装置2000が動作を開始した際に、全てのネットワークインタフェース120がオフラインになっているとみなしてもよい。   However, the information processing apparatus 2000 may consider that all the network interfaces 120 are offline when the information processing apparatus 2000 starts operation.

<処理の流れ>
図22は、実施形態4の情報処理装置2000によって実行される処理の流れを例示するフローチャートである。検出部2080は、各ネットワークインタフェースから受信したデータに基づいて、各ネットワークインタフェースがオンラインになったことを検出する(S602)。推定部2040は、最も早くオンラインになったネットワークインタフェースが物理ネットワークインタフェースであると推定する(S604)。
<Process flow>
FIG. 22 is a flowchart illustrating the flow of processing executed by the information processing apparatus 2000 according to the fourth embodiment. The detection unit 2080 detects that each network interface is online based on data received from each network interface (S602). The estimation unit 2040 estimates that the network interface that comes online first is a physical network interface (S604).

なお推定部2040は、「最も早くオンラインになったネットワークインタフェース以外のネットワークインタフェースは仮想ネットワークインタフェースである」と推定してもよい。   Note that the estimation unit 2040 may estimate that “a network interface other than the network interface that comes online first is a virtual network interface”.

<物理ネットワークインタフェースの数が1つに限定される環境の構築>
実施形態4の情報処理装置2000は、実施形態3の情報処理装置2000と同様に、物理ネットワークインタフェースの数が1つに限定される環境を構築した上で推定を行ってもよい。
<Building an environment where the number of physical network interfaces is limited to one>
Similar to the information processing apparatus 2000 of the third embodiment, the information processing apparatus 2000 of the fourth embodiment may perform estimation after building an environment in which the number of physical network interfaces is limited to one.

<ハードウエア構成例>
例えば実施形態4の情報処理装置2000のハードウエア構成は、実施形態1の情報処理装置2000と同様に、図4で表される。本実施形態において、前述したストレージ1080に記憶される各プログラムモジュールには、本実施形態で説明した各機能を実現するプログラムがさらに含まれる。また、ストレージ1080は、検出部2080を実現するプログラムモジュールをさらに記憶する。プロセッサ1040は、このプログラムモジュールを実行することで、検出部2080の機能を実現する。
<Hardware configuration example>
For example, the hardware configuration of the information processing apparatus 2000 according to the fourth embodiment is illustrated in FIG. 4 as with the information processing apparatus 2000 according to the first embodiment. In the present embodiment, each program module stored in the storage 1080 described above further includes a program that realizes each function described in the present embodiment. The storage 1080 further stores a program module that implements the detection unit 2080. The processor 1040 implements the function of the detection unit 2080 by executing this program module.

<作用・効果>
本実施形態の情報処理装置2000によれば、ネットワークインタフェース120がオンラインになるタイミングに基づいて、ネットワークインタフェース120が物理ネットワークインタフェースと仮想ネットワークインタフェースのどちらなのかを推定することができる。ネットワークインタフェース120がオンラインになるタイミングに基づいて推定を行うため、推定部2040による推定を、ネットワークインタフェース120がネットワーク130上に接続してすぐに行えるという利点がある。
<Action and effect>
According to the information processing apparatus 2000 of the present embodiment, it is possible to estimate whether the network interface 120 is a physical network interface or a virtual network interface based on the timing when the network interface 120 comes online. Since the estimation is performed based on the timing when the network interface 120 comes online, there is an advantage that the estimation by the estimation unit 2040 can be performed immediately after the network interface 120 is connected to the network 130.

[実施形態5]
図23は、実施形態5に係る情報処理装置2000を例示するブロック図である。図23において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を表している。
[Embodiment 5]
FIG. 23 is a block diagram illustrating an information processing apparatus 2000 according to the fifth embodiment. In FIG. 23, each block represents a functional unit configuration, not a hardware unit configuration.

実施形態5の情報処理装置2000は、判定部2100を有する。判定部2100は、ネットワークインタフェース120から受信したデータの履歴を用いて、そのネットワークインタフェース120がオンラインであるか否かを判定する。以下、受信したデータの履歴を、受信履歴と表記する。実施形態5の推定部2040は、判定部2100による判定結果を用いて推定を行う。   The information processing apparatus 2000 according to the fifth embodiment includes a determination unit 2100. The determination unit 2100 determines whether the network interface 120 is online using the history of data received from the network interface 120. Hereinafter, the history of received data is referred to as a reception history. The estimation unit 2040 according to the fifth embodiment performs estimation using the determination result obtained by the determination unit 2100.

<着目点>
一般に、物理ネットワークインタフェースが1つである環境において、「仮想ネットワークインタフェースはオンラインであり、物理ネットワークインタフェースはオフラインである」という状況は起こらない。前述した通り、仮想ネットワークインタフェースは、物理ネットワークインタフェースを利用して外部の物理マシン等と通信する。そのため、仮想ネットワークインタフェースが外部の物理マシン等と通信する際には、仮想ネットワークインタフェースだけでなく、物理ネットワークインタフェースもオンラインである必要がある。
<Points of interest>
Generally, in an environment where there is one physical network interface, the situation “virtual network interface is online and physical network interface is offline” does not occur. As described above, the virtual network interface communicates with an external physical machine or the like using the physical network interface. Therefore, when the virtual network interface communicates with an external physical machine or the like, not only the virtual network interface but also the physical network interface needs to be online.

一方で、「仮想ネットワークインタフェースはオフラインであり、物理ネットワークインタフェースはオンラインである」という状況は、一般的に起こりうる状況である。例えば、「VMM は起動しているが、VM は起動していない」という状況がこの状況に相当する。   On the other hand, the situation that “the virtual network interface is offline and the physical network interface is online” is a situation that can generally occur. For example, the situation “VMM is running but VM is not running” corresponds to this situation.

<推定部2040による推定処理>
そこで、推定部2040は、「あるネットワークインタフェース X がオフラインであり、かつ別のネットワークインタフェース Y がオンラインである」という場合に、ネットワークインタフェース X が仮想ネットワークインタフェースであると推定する。
<Estimation Process by Estimating Unit 2040>
Therefore, the estimation unit 2040 estimates that the network interface X is a virtual network interface when “one network interface X is offline and another network interface Y is online”.

また例えば、推定部2040は、オンラインのネットワークインタフェースが1つのみである場合、そのネットワークインタフェースは物理ネットワークインタフェースであると推定する。   Further, for example, when there is only one online network interface, the estimation unit 2040 estimates that the network interface is a physical network interface.

<判定部2100の詳細>
判定部2100は、各ネットワークインタフェース120の状態を把握するために、ネットワークインタフェース120から受信するデータの履歴を利用する。判定部2100が利用する履歴は様々である。例えば判定部2100は、ICMP echo リプライや NA メッセージなどのように、情報処理装置2000から送信したデータ(ICMP echo リクエストや NS メッセージなど)に対する応答を表すデータの履歴を用いる。この履歴を用いることで、判定部2100は、あるネットワークインタフェース120から応答を受信した時にはそのネットワークインタフェース120がオンラインであり、応答を受信しない時にはそのネットワークインタフェース120がオフラインであると判定する。
<Details of Determination Unit 2100>
The determination unit 2100 uses the history of data received from the network interface 120 in order to grasp the state of each network interface 120. There are various histories used by the determination unit 2100. For example, the determination unit 2100 uses a history of data indicating a response to data (such as an ICMP echo request or NS message) transmitted from the information processing apparatus 2000, such as an ICMP echo reply or an NA message. By using this history, the determination unit 2100 determines that the network interface 120 is online when a response is received from a certain network interface 120 and that the network interface 120 is offline when no response is received.

また例えば、自発的に繰り返しデータが送信するように、ネットワークインタフェースを用いて動作する OS や VMM などを構成してもよい。例えば、VMM やゲスト OS が定期的にハートビートを送信し、受信部2020がこれを受信するようにする。判定部2100は、このハートビートの履歴を利用する。具体的には、あるネットワークインタフェース120からハートビートを受信した時にはそのネットワークインタフェース120がオンラインであり、ハートビートを受信しない時にはそのネットワークインタフェース120がオフラインであると判定する。   Further, for example, an OS or VMM that operates using a network interface may be configured so that data is repeatedly transmitted spontaneously. For example, the VMM or guest OS periodically transmits a heartbeat, and the reception unit 2020 receives the heartbeat. The determination unit 2100 uses this heartbeat history. Specifically, when a heartbeat is received from a certain network interface 120, the network interface 120 is online, and when no heartbeat is received, it is determined that the network interface 120 is offline.

<具体例>
図24は、情報処理装置2000によって把握される各ネットワークインタフェース120の状態を時系列で例示するグラフである。図24のグラフの横軸は時間を示しており、縦軸はネットワークインタフェース120の名前を示している。バツ印は、ネットワークインタフェース120からデータを受信した時点を示す。そして、バツ印を囲む領域は、ネットワークインタフェース120がオンラインであると推定される時間を表している。
<Specific example>
FIG. 24 is a graph illustrating the state of each network interface 120 grasped by the information processing apparatus 2000 in time series. The horizontal axis of the graph in FIG. 24 indicates time, and the vertical axis indicates the name of the network interface 120. The cross indicates the time when data is received from the network interface 120. The area surrounding the cross indicates the time when the network interface 120 is estimated to be online.

まず、ネットワークインタフェース1の状態について説明する。受信部2020は、時点 t1 より前には、ネットワークインタフェース1からデータを受信していない。また、受信部2020は、時点 t 1 以降、ネットワークインタフェース1からデータを受信し続けている。このようなデータの履歴から、判定部2100は、ネットワークインタフェース1が、時点 t1 以降オンラインになっていると判定する。   First, the state of the network interface 1 will be described. The receiving unit 2020 has not received data from the network interface 1 before time t1. The receiving unit 2020 continues to receive data from the network interface 1 after the time t 1. From such a data history, the determination unit 2100 determines that the network interface 1 has been online since time t1.

次に、ネットワークインタフェース2の状態について説明する。受信部2020は、時点 t2 より前には、ネットワークインタフェース2からデータを受信していない。また、受信部2020は、時点 t2 以降、時点 t3 まで、ネットワークインタフェース2から複数回データを受信している。そして、受信部2020は、時点 t3 以降、ネットワークインタフェース2からデータを受信していない。このようなデータの履歴から、判定部2100は、ネットワークインタフェース2が時点 t2 から t3 までの間オンラインであり、時点 t3 でオフラインになったと判定する。   Next, the state of the network interface 2 will be described. The receiving unit 2020 has not received data from the network interface 2 before time t2. The receiving unit 2020 receives data from the network interface 2 a plurality of times from time t2 to time t3. The receiving unit 2020 has not received data from the network interface 2 after time t3. From such data history, the determination unit 2100 determines that the network interface 2 is online from time t2 to t3 and is offline at time t3.

図24において、時点 t3 以降、ネットワークインタフェース2はオフラインであり、ネットワークインタフェース1はオンラインであることが分かる。そのため、推定部2040は、ネットワークインタフェース2が仮想ネットワークインタフェースであると推定する。また、推定部2040は、ネットワークインタフェース1が物理ネットワークインタフェースであると推定する。   In FIG. 24, it can be seen that after time t3, the network interface 2 is offline and the network interface 1 is online. Therefore, the estimation unit 2040 estimates that the network interface 2 is a virtual network interface. The estimation unit 2040 estimates that the network interface 1 is a physical network interface.

<物理ネットワークインタフェースの数が1つに限定される環境の構築>
実施形態5の情報処理装置2000は、実施形態3の情報処理装置2000と同様に、物理ネットワークインタフェースの数が1つに限定される環境を構築した上で推定を行ってもよい。
<Building an environment where the number of physical network interfaces is limited to one>
Similarly to the information processing apparatus 2000 of the third embodiment, the information processing apparatus 2000 of the fifth embodiment may perform estimation after building an environment in which the number of physical network interfaces is limited to one.

<処理の流れ>
図25は、実施形態5の情報処理装置2000によって実行される処理の流れを例示するフローチャートである。判定部2100は、各ネットワークインタフェース120から受信したデータの履歴を用いて、各ネットワークインタフェース120の状態を判定する(S702)。
<Process flow>
FIG. 25 is a flowchart illustrating the flow of processing executed by the information processing apparatus 2000 according to the fifth embodiment. The determination unit 2100 determines the state of each network interface 120 using the history of data received from each network interface 120 (S702).

判定部2100は、オフラインのネットワークインタフェース120があるか否かを判定する。オフラインのネットワークインタフェース120がない場合(S704:NO)、図25の処理は再度S702に進む。一方、オフラインのネットワークインタフェース120がある場合(S704:YES)、図25の処理はS706に進む。なお図25の処理は、S702に進む前に所定の時間待機してもよい。   The determination unit 2100 determines whether there is an offline network interface 120. If there is no offline network interface 120 (S704: NO), the process of FIG. 25 proceeds to S702 again. On the other hand, if there is an offline network interface 120 (S704: YES), the processing in FIG. 25 proceeds to S706. Note that the processing of FIG. 25 may wait for a predetermined time before proceeding to S702.

S706において、判定部2100は、オンラインのネットワークインタフェース120があるか否かを判定する。オンラインのネットワークインタフェース120がない場合(S706:NO)、図25の処理は終了する。一方、オンラインのネットワークインタフェース120がある場合(S704:YES)、図25の処理はS708に進む。   In step S706, the determination unit 2100 determines whether there is an online network interface 120. If there is no online network interface 120 (S706: NO), the processing in FIG. 25 ends. On the other hand, if there is an online network interface 120 (S704: YES), the processing of FIG. 25 proceeds to S708.

S708において、推定部2040は、オフラインのネットワークインタフェース120が仮想ネットワークインタフェースであると推定する。   In step S708, the estimation unit 2040 estimates that the offline network interface 120 is a virtual network interface.

<ハードウエア構成例>
例えば実施形態5の情報処理装置2000のハードウエア構成は、実施形態1の情報処理装置2000と同様に、図4で表される。本実施形態において、前述したストレージ1080に記憶される各プログラムモジュールには、本実施形態で説明した各機能を実現するプログラムがさらに含まれる。また、ストレージ1080は、判定部2100を実現するプログラムモジュールをさらに記憶する。プロセッサ1040は、このプログラムモジュールを実行することで、判定部2100の機能を実現する。
<Hardware configuration example>
For example, the hardware configuration of the information processing apparatus 2000 according to the fifth embodiment is represented in FIG. 4 as with the information processing apparatus 2000 according to the first embodiment. In the present embodiment, each program module stored in the storage 1080 described above further includes a program that realizes each function described in the present embodiment. The storage 1080 further stores a program module that implements the determination unit 2100. The processor 1040 implements the function of the determination unit 2100 by executing this program module.

<作用・効果>
本実施形態によれば、「あるネットワークインタフェース120がオフラインであり、かつ別のネットワークインタフェース120がオンラインである」という状態を検出することで、ネットワークインタフェース120が物理ネットワークインタフェースと仮想ネットワークインタフェースのどちらであるかを推定することができる。例えば情報処理装置2000は、日常的に(例えば定期的に)各ネットワークインタフェース120からデータを受信するようにすることで、日常的に各ネットワークインタフェース120を監視する。このように日常的な監視を行うことで、ネットワーク130を一時的に高負荷にするということなく、推定を行うことができる。
<Action and effect>
According to the present embodiment, by detecting the state that “one network interface 120 is offline and another network interface 120 is online”, the network interface 120 is either a physical network interface or a virtual network interface. It can be estimated. For example, the information processing apparatus 2000 monitors each network interface 120 on a daily basis by receiving data from each network interface 120 on a daily basis (for example, periodically). By performing daily monitoring in this manner, estimation can be performed without temporarily increasing the load on the network 130.

[実施形態6]
実施形態6の情報処理装置2000は、実施形態3の情報処理装置2000と同様に図9で表される。実施形態6の情報処理装置2000では、実施形態3の情報処理装置2000と同様に、送信部2060がネットワークインタフェース120に対して送信データを送信する。また、受信部2020は、送信データに対する応答を表す応答データを受信する。なお、送信データは、実施形態3で説明した ARP リクエスト、ICMP echo リクエスト、又は NS メッセージなどである。
[Embodiment 6]
The information processing apparatus 2000 according to the sixth embodiment is represented in FIG. 9 as the information processing apparatus 2000 according to the third embodiment. In the information processing apparatus 2000 according to the sixth embodiment, the transmission unit 2060 transmits transmission data to the network interface 120 as in the information processing apparatus 2000 according to the third embodiment. The receiving unit 2020 receives response data that represents a response to the transmission data. The transmission data is the ARP request, ICMP echo request, or NS message described in the third embodiment.

<想定環境>
前述したように、仮想ネットワークインタフェースを宛先とするデータは、仮想ネットワークインタフェースに到達する前に、まず物理ネットワークインタフェースによって受信される。この特徴に着目し、物理ネットワークインタフェースを仮想ネットワークインタフェースのプロキシとして機能させる方法がある。本実施形態では、このように物理ネットワークインタフェースが仮想ネットワークインタフェースのプロキシとして動作する環境を想定する。以下、物理ネットワークインタフェースが仮想ネットワークインタフェースのプロキシとして機能する構成について、さらに具体的に説明する。
<Assumed environment>
As described above, data destined for the virtual network interface is first received by the physical network interface before reaching the virtual network interface. Focusing on this feature, there is a method for causing a physical network interface to function as a proxy for a virtual network interface. In this embodiment, an environment is assumed in which the physical network interface operates as a proxy for the virtual network interface. Hereinafter, the configuration in which the physical network interface functions as a proxy for the virtual network interface will be described more specifically.

例えば、物理ネットワークインタフェースを ARP プロキシとして機能させる構成がある。図26は、物理ネットワークインタフェース30が ARP プロキシとして機能する様子を例示する図である。図26では、仮想ネットワークインタフェース70を宛先とする ARP リクエストが送信されている。   For example, there is a configuration in which a physical network interface functions as an ARP proxy. FIG. 26 is a diagram illustrating a state in which the physical network interface 30 functions as an ARP proxy. In FIG. 26, an ARP request destined for the virtual network interface 70 is transmitted.

まずこの ARP リクエストは、物理ネットワークインタフェース30によって受信される。ここで、この ARP リクエストの宛先は物理ネットワークインタフェース30ではなく仮想ネットワークインタフェース70であるため、通常なら VMM 20は、この ARP リクエストを仮想ネットワークインタフェース70に渡す。そして、ゲスト OS 60は渡されたデータを処理する。   First, this ARP request is received by the physical network interface 30. Here, since the destination of this ARP request is not the physical network interface 30 but the virtual network interface 70, the VMM 20 normally passes this ARP request to the virtual network interface 70. Then, the guest OS 60 processes the passed data.

これに対し、図26では、VMM 20は、仮想ネットワークインタフェース70を宛先とする ARP リクエストを仮想ネットワークインタフェース70に渡さず、この ARP リクエストに対する ARP リプライを生成して送信する。これにより、VMM 20が ARP プロキシとして機能する。   In contrast, in FIG. 26, the VMM 20 does not pass the ARP request destined for the virtual network interface 70 to the virtual network interface 70, but generates and transmits an ARP reply for the ARP request. As a result, the VMM 20 functions as an ARP proxy.

なお、このような処理を実現するため、VMM 20は、仮想ネットワークインタフェース70の IP アドレス及び MAC アドレスを予め把握しておく。   In order to realize such processing, the VMM 20 grasps the IP address and MAC address of the virtual network interface 70 in advance.

また、同様の原理により、「VMM 20が、仮想ネットワークインタフェース70を宛先とする NS メッセージをゲスト OS 60に代わって処理し、NA メッセージを送信する」という構成も実現できる。   Further, based on the same principle, a configuration in which “the VMM 20 processes an NS message destined for the virtual network interface 70 instead of the guest OS 60 and transmits an NA message” can be realized.

<推定部2040による推定>
通常、送信データの送信先のネットワークインタフェース120と、受信データの送信元のネットワークインタフェース120とは、同一のネットワークインタフェースとなる。しかし、上述した想定環境において送信部2060が仮想ネットワークインタフェース70へ送信データを送信した場合、受信部2020が受信する応答データは、送信データの送信先とは異なる送信元を示す。例えば図26の場合、応答データの送信元は物理ネットワークインタフェース30であり、送信データの送信先が仮想ネットワークインタフェース70となる。これは、仮想ネットワークインタフェース70を宛先とするデータに対する応答が、ゲスト OS 60ではなくVMM 20によって行われるためである。
<Estimation by the estimation unit 2040>
Usually, the network interface 120 that is the transmission destination of transmission data and the network interface 120 that is the transmission source of reception data are the same network interface. However, when the transmission unit 2060 transmits transmission data to the virtual network interface 70 in the assumed environment described above, the response data received by the reception unit 2020 indicates a transmission source different from the transmission destination of the transmission data. For example, in the case of FIG. 26, the transmission source of the response data is the physical network interface 30, and the transmission destination of the transmission data is the virtual network interface 70. This is because a response to data destined for the virtual network interface 70 is performed by the VMM 20 instead of the guest OS 60.

そこで本実施形態の推定部2040は、送信データの送信先のネットワークインタフェース120と、受信データの送信元のネットワークインタフェース120との異同に基づいて推定を行う。例えば推定部2040は、送信データの送信先のネットワークインタフェース120と、その送信データに対する応答データの送信元のネットワークインタフェース120とが異なる場合、受信データの送信元のネットワークインタフェース120が物理ネットワークインタフェースであると推定する。またこの場合、推定部2040は、送信データの送信先のネットワークインタフェースが仮想ネットワークインタフェースであると推定してもよい。   Therefore, the estimation unit 2040 according to the present embodiment performs estimation based on the difference between the network interface 120 that is the transmission destination of the transmission data and the network interface 120 that is the transmission source of the reception data. For example, when the network interface 120 that is the transmission destination of transmission data is different from the network interface 120 that is the transmission source of response data for the transmission data, the estimation unit 2040 is the physical network interface. Estimated. In this case, the estimation unit 2040 may estimate that the network interface that is the transmission destination of the transmission data is a virtual network interface.

送信データの送信先や受信データの送信元は、各データのヘッダが示す IP アドレスや MAC アドレスによって特定できる。例えば送信データの送信先のネットワークインタフェース120は、送信データのヘッダが示す宛先 IP アドレスや宛先 MAC アドレスによって特定できる。また、受信データの送信元のネットワークインタフェース120は、受信データのヘッダが示す送信元 IP アドレスや送信元 MAC アドレスによって特定できる。そこで推定部2040は、送信データと受信データのヘッダが示す上記各情報を用いて、送信データの送信先のネットワークインタフェース120と、受信データの送信元のネットワークインタフェース120との異同を判定する。   The transmission destination of transmission data and the transmission source of received data can be specified by the IP address and MAC address indicated by the header of each data. For example, the network interface 120 of the transmission data destination can be specified by the destination IP address or the destination MAC address indicated by the header of the transmission data. The network interface 120 that is the transmission source of the received data can be specified by the transmission source IP address or the transmission source MAC address indicated by the header of the reception data. Therefore, the estimation unit 2040 determines the difference between the network interface 120 that is the transmission destination of the transmission data and the network interface 120 that is the transmission source of the reception data, using the above-described information indicated by the headers of the transmission data and the reception data.

<処理の流れ1>
図27は、実施形態6の情報処理装置2000によって実行される処理の流れを例示するフローチャートである。図27において、送信データの送信先をネットワークインタフェースXと表記する。
<Processing flow 1>
FIG. 27 is a flowchart illustrating the flow of processing executed by the information processing apparatus 2000 according to the sixth embodiment. In FIG. 27, a transmission destination of transmission data is denoted as a network interface X.

送信部2060はネットワークインタフェースXへ送信データを送信する(S802)。受信部2020は応答データを受信する(S804)。推定部2040は、応答データの送信元がネットワークインタフェースXであるか否かを判定する(S806)。応答データの送信元がネットワークインタフェースXでない場合(S806:NO)、図27の処理は終了する。一方、応答データの送信元がネットワークインタフェースXである場合(S808:YES)、図27の処理はS808に進む。   The transmission unit 2060 transmits the transmission data to the network interface X (S802). The receiving unit 2020 receives the response data (S804). The estimation unit 2040 determines whether or not the transmission source of the response data is the network interface X (S806). When the transmission source of the response data is not the network interface X (S806: NO), the processing in FIG. 27 ends. On the other hand, when the transmission source of the response data is the network interface X (S808: YES), the process of FIG. 27 proceeds to S808.

推定部2040は、受信データの送信元のネットワークインタフェースが物理ネットワークインタフェースであると推定する(S808)。ネットワークインタフェースXは仮想ネットワークインタフェースであると推定する(S810)。   The estimation unit 2040 estimates that the network interface that is the transmission source of the received data is a physical network interface (S808). It is estimated that the network interface X is a virtual network interface (S810).

<物理ネットワークインタフェースの数が1つに限定される環境の構築>
実施形態6の情報処理装置2000は、実施形態3の情報処理装置2000と同様に、物理ネットワークインタフェースの数が1つに限定される環境を構築した上で推定を行ってもよい。
<Building an environment where the number of physical network interfaces is limited to one>
Similar to the information processing apparatus 2000 of the third embodiment, the information processing apparatus 2000 of the sixth embodiment may perform estimation after building an environment in which the number of physical network interfaces is limited to one.

<ハードウエア構成>
例えば実施形態6の情報処理装置2000のハードウエア構成は、実施形態1の情報処理装置2000と同様に、図4で表される。本実施形態において、前述したストレージ1080に記憶される各プログラムモジュールには、本実施形態で説明した各機能を実現するプログラムがさらに含まれる。また、ストレージ1080は、送信部2060を実現するプログラムモジュールをさらに記憶する。プロセッサ1040は、このプログラムモジュールを実行することで、送信部2060の機能を実現する。
<Hardware configuration>
For example, the hardware configuration of the information processing apparatus 2000 according to the sixth embodiment is illustrated in FIG. 4 as with the information processing apparatus 2000 according to the first embodiment. In the present embodiment, each program module stored in the storage 1080 described above further includes a program that realizes each function described in the present embodiment. The storage 1080 further stores a program module that implements the transmission unit 2060. The processor 1040 implements the function of the transmission unit 2060 by executing this program module.

<作用・効果>
本実施形態によれば、物理ネットワークインタフェースが仮想ネットワークインタフェースのプロキシとして機能している環境において、ネットワークインタフェース120が物理ネットワークインタフェースと仮想ネットワークインタフェースのどちらであるかを推定できる。そのため、上述の様な特殊な環境においても、そのような環境の特徴を利用して、ネットワークインタフェース120が物理ネットワークインタフェースと仮想ネットワークインタフェースのどちらであるかを推定することができる。
<Action and effect>
According to the present embodiment, it is possible to estimate whether the network interface 120 is a physical network interface or a virtual network interface in an environment where the physical network interface functions as a proxy for the virtual network interface. Therefore, even in a special environment as described above, it is possible to estimate whether the network interface 120 is a physical network interface or a virtual network interface by using the characteristics of such an environment.

[実施形態7]
図28は、実施形態7の情報処理装置2000を例示するブロック図である。図28において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を表している。
[Embodiment 7]
FIG. 28 is a block diagram illustrating an information processing apparatus 2000 according to the seventh embodiment. In FIG. 28, each block represents a functional unit configuration, not a hardware unit configuration.

実施形態7の情報処理装置2000は、第2判定部2120を有する。実施形態7の第2判定部2120は、受信部2020が複数のネットワークインタフェース120それぞれから受信するデータを用いて、1つの MAC アドレスに対して IPv4 アドレスが複数対応付けられているか否か、又は1つの MAC アドレスに対して同一スコープの IPv6 アドレスが複数対応付けられているか否かを判定する。そして、推定部2040は、1つの MAC アドレスに対して IPv4 アドレスが複数対応付けられているか、又は1つの MAC アドレスに対して同一スコープの IPv6 アドレスが複数対応付けられている場合に、その MAC アドレスを持つネットワークインタフェース120が物理ネットワークインタフェースであると推定する。   The information processing apparatus 2000 according to the seventh embodiment includes a second determination unit 2120. The second determination unit 2120 according to the seventh embodiment uses the data received by the reception unit 2020 from each of the plurality of network interfaces 120 to determine whether a plurality of IPv4 addresses are associated with one MAC address, or 1 Judge whether multiple IPv6 addresses of the same scope are associated with one MAC address. The estimation unit 2040 then associates a plurality of IPv4 addresses with a single MAC address, or a plurality of IPv6 addresses with the same scope associated with a single MAC address. It is estimated that the network interface 120 having the physical network interface 120 is a physical network interface.

ここで、MAC アドレスと IP アドレスが対応付けられているとは、その MAC アドレスを持つネットワークインタフェースに対してその IP アドレスが割り当てられていることを意味する。   Here, that the MAC address is associated with the IP address means that the IP address is assigned to the network interface having the MAC address.

<IP アドレスについて>
まず、ネットワークインタフェースに対して割り当てられる一般的な IPv4 アドレス及び IPv6 アドレスについて説明する。
<About IP address>
First, general IPv4 addresses and IPv6 addresses assigned to network interfaces will be described.

<<IPv6 アドレスについて>>
IPv6 では、1つのネットワークインタフェースに対して、スコープが異なる複数の IPv6 アドレスが割り当てられうる。IPv6 アドレスのスコープとは、その IPv6 アドレスが有効な範囲のことである。それぞれスコープが異なる IPv6 アドレスとして、グローバルアドレス、ULA(Unique Local IPv6 Unicast Address)、及びリンクローカルアドレスがある。
<< About IPv6 address >>
In IPv6, multiple IPv6 addresses with different scopes can be assigned to one network interface. The scope of an IPv6 address is the range within which the IPv6 address is valid. There are global addresses, ULA (Unique Local IPv6 Unicast Address), and link local addresses as IPv6 addresses with different scopes.

ただし通常、ネットワークインタフェースに対してスコープが同一の IPv6 アドレスが複数割り当てられることはない。例えば、あるネットワークインタフェースに対して2つのグローバルアドレスが割り当てられることはない。   Normally, however, multiple IPv6 addresses with the same scope are not assigned to a network interface. For example, two global addresses are not assigned to a certain network interface.

<<IPv4 アドレスについて>>
IPv4 では IPv6 におけるスコープという概念は無い。そのため、1つのネットワークインタフェースに対して割り当てられる IPv4 アドレスは、通常1つである。
<< About IPv4 Address >>
IPv4 has no concept of scope in IPv6. Therefore, one IPv4 address is usually assigned to one network interface.

以上のことから、通常、1つの MAC アドレスに対し、複数の IPv4 アドレスや同一スコープの複数の IPv6 アドレスが対応付けられることはない。   From the above, normally, a single MAC address is not associated with a plurality of IPv4 addresses or a plurality of IPv6 addresses of the same scope.

<着目するネットワーク環境>
仮想化環境やエミュレーション環境では、「1つ MAC アドレスに対し、複数の IPv4 アドレスや同一スコープの複数の IPv6 アドレスが対応付けられる」という構成がありうる。図29は、仮想化環境において、1つの MAC アドレスに対して複数の IPv4 アドレスが対応付けられる構成を例示する図である。
<Focusing network environment>
In a virtual environment or an emulation environment, there may be a configuration in which “a plurality of IPv4 addresses or a plurality of IPv6 addresses of the same scope are associated with one MAC address”. FIG. 29 is a diagram illustrating a configuration in which a plurality of IPv4 addresses are associated with one MAC address in a virtual environment.

図29において、仮想ネットワークインタフェース70には、物理ネットワークインタフェース30と同じ MAC アドレスが割り当てられている。一方、仮想ネットワークインタフェース70に割り当てられている IPv4 アドレスは、物理ネットワークインタフェース30に割り当てられている IPv4 アドレスと異なる。そのため、1つの MAC アドレスに対し、複数の IPV4 アドレスが対応付けられている。   In FIG. 29, the same MAC address as that of the physical network interface 30 is assigned to the virtual network interface 70. On the other hand, the IPv4 address assigned to the virtual network interface 70 is different from the IPv4 address assigned to the physical network interface 30. Therefore, multiple IPV4 addresses are associated with one MAC address.

VMM 20は、物理ネットワークインタフェース30によって受信されたデータがどのネットワークインタフェースを宛先とするものであるかを、そのデータの宛先 IPv4 アドレスを用いて判断する。そのため、VMM 20は、物理ネットワークインタフェース30や仮想ネットワークインタフェース70の IPv4 アドレスを予め把握しておく。   The VMM 20 determines which network interface is the data received by the physical network interface 30 using the destination IPv4 address of the data. Therefore, the VMM 20 grasps in advance the IPv4 addresses of the physical network interface 30 and the virtual network interface 70.

なお、図29と同様の構成により、1つの MAC アドレスに対し、同一スコープの IPv6 アドレスが複数対応付けられうる。具体的には、仮想ネットワークインタフェース70の MAC アドレスを物理ネットワークインタフェース30の MAC アドレスと同じにしつつ、仮想ネットワークインタフェース70と物理ネットワークインタフェース30にそれぞれ異なる同一スコープの IPv6 アドレスを割り当てる。   Note that a plurality of IPv6 addresses of the same scope can be associated with one MAC address by the same configuration as in FIG. Specifically, the virtual network interface 70 has the same MAC address as the physical network interface 30, and the virtual network interface 70 and the physical network interface 30 are assigned different IPv6 addresses of the same scope.

また仮想化環境だけでなく、エミュレーション環境においても、同様のネットワーク構成を構築できる。   In addition to a virtual environment, a similar network configuration can be constructed in an emulation environment.

よって、1つの MAC アドレスに対して複数の IPv4 アドレスや同一スコープの複数の IPv6 アドレスが対応付けられている場合、上述した仮想化環境やエミュレーション環境が構築されていると推定できる。この場合、複数の IPv4 アドレスや同一スコープの複数の IPv6 アドレスが対応付けられている MAC アドレスは、物理ネットワークインタフェース30の MAC アドレスであると推定できる。   Therefore, when a plurality of IPv4 addresses or a plurality of IPv6 addresses of the same scope are associated with one MAC address, it can be estimated that the above-described virtualization environment and emulation environment are constructed. In this case, a MAC address associated with a plurality of IPv4 addresses or a plurality of IPv6 addresses of the same scope can be estimated as the MAC address of the physical network interface 30.

そこで推定部2040は、各ネットワークインタフェース120から受信するデータに基づき、MAC アドレスと IP アドレスとの対応付けを把握する。そして、推定部2040は、1つの MAC アドレスに対して複数の IPv4 アドレスや同一スコープの複数の IPv6 アドレスが対応付けられている場合、その MAC アドレスを持つネットワークインタフェース120が物理ネットワークインタフェースであると推定する。図29で説明した通り、複数の IP アドレスが対応付けられる MAC アドレスは、物理ネットワークインタフェースの MAC アドレスであるためである。   Therefore, the estimation unit 2040 grasps the correspondence between the MAC address and the IP address based on the data received from each network interface 120. Then, when a plurality of IPv4 addresses or a plurality of IPv6 addresses of the same scope are associated with one MAC address, the estimation unit 2040 estimates that the network interface 120 having the MAC address is a physical network interface. To do. This is because the MAC address associated with a plurality of IP addresses is the MAC address of the physical network interface as described with reference to FIG.

例えば第2判定部2120は、受信部2020が各ネットワークインタフェース120から受信するデータの送信元 MAC アドレス及び送信元 IP アドレスを抽出し、これらを対応付ける。第2判定部2120は、各ネットワークインタフェース120から受信したデータに基づいて生成された複数の対応付けの中から、同じ MAC アドレスを示す対応付けを抽出する。そして、第2判定部2120は、同じ MAC アドレスを示す複数の対応付けが、異なる IPv4 アドレス又は異なる同一スコープの IPv6 アドレスを示している場合に、「1つの MAC アドレスに対して複数の IPv4 アドレス又は同一スコープの複数の IPv6 アドレスが対応付けられている」と判定する。   For example, the second determination unit 2120 extracts the transmission source MAC address and the transmission source IP address of the data received by the reception unit 2020 from each network interface 120 and associates them. The second determination unit 2120 extracts associations indicating the same MAC address from a plurality of associations generated based on the data received from each network interface 120. Then, the second determination unit 2120 indicates that when a plurality of associations indicating the same MAC address indicate different IPv4 addresses or different IPv6 addresses of the same scope, It is determined that multiple IPv6 addresses with the same scope are associated.

<処理の流れ>
図30は、実施形態7の情報処理装置2000によって実行される処理の流れを例示するフローチャートである。
<Process flow>
FIG. 30 is a flowchart illustrating the flow of processing executed by the information processing apparatus 2000 according to the seventh embodiment.

受信部2020は、複数のネットワークインタフェース120からデータを受信する(S902)。第2判定部2120は、受信した各データについて、送信元 MAC アドレスと送信元 IPv4 アドレスとの対応付けを生成する(S904)。第2判定部2120は、生成した対応付けを用いて、複数のIPv4 アドレスが対応付けられている MAC アドレスがあるか否かを判定する(S906)。複数のIPv4 アドレスが対応付けられている MAC アドレスがない場合(S906:NO)、図30の処理は終了する。一方、複数のIPv4 アドレスが対応付けられている MAC アドレスがある場合(S906:YES)、図30の処理はS908に進む。   The receiving unit 2020 receives data from the plurality of network interfaces 120 (S902). The second determination unit 2120 generates a correspondence between the transmission source MAC address and the transmission source IPv4 address for each received data (S904). The second determination unit 2120 uses the generated association to determine whether there is a MAC address associated with a plurality of IPv4 addresses (S906). If there is no MAC address associated with a plurality of IPv4 addresses (S906: NO), the processing in FIG. 30 ends. On the other hand, if there is a MAC address associated with a plurality of IPv4 addresses (S906: YES), the processing in FIG. 30 proceeds to S908.

推定部2040は、複数の IPv4 アドレスが対応付けられている MAC アドレスを持つネットワークインタフェース120が、物理ネットワークインタフェースであると推定する(S908)。   The estimation unit 2040 estimates that the network interface 120 having a MAC address associated with a plurality of IPv4 addresses is a physical network interface (S908).

なお、図30では、IP アドレスが IPv4 アドレスである場合について例示している。IP アドレスが IPv6 アドレスである場合の処理の流れも、図30で示した流れと同様である。ただし、S906において、第2判定部2120は、同一スコープの IPv6 アドレスが複数の対応付けられている MAC アドレスがあるか否かを判定する。また、S908において、推定部2040は、同一スコープの IPv6 アドレスが複数の対応付けられている MAC アドレスを持つネットワークインタフェース120が、物理ネットワークインタフェースであると推定する   Note that FIG. 30 illustrates the case where the IP address is an IPv4 address. The flow of processing when the IP address is an IPv6 address is the same as the flow shown in FIG. However, in step S906, the second determination unit 2120 determines whether there are a plurality of MAC addresses associated with IPv6 addresses of the same scope. In S908, the estimation unit 2040 estimates that the network interface 120 having a plurality of MAC addresses associated with a plurality of IPv6 addresses of the same scope is a physical network interface.

<物理ネットワークインタフェースの数が1つに限定される環境の構築>
実施形態7の情報処理装置2000は、実施形態3の情報処理装置2000と同様に、物理ネットワークインタフェースの数が1つに限定される環境を構築した上で推定を行ってもよい。
<Building an environment where the number of physical network interfaces is limited to one>
Similar to the information processing apparatus 2000 of the third embodiment, the information processing apparatus 2000 of the seventh embodiment may perform estimation after building an environment in which the number of physical network interfaces is limited to one.

<ハードウエア構成>
例えば実施形態7の情報処理装置2000のハードウエア構成は、実施形態1の情報処理装置2000と同様に、図4で表される。本実施形態において、前述したストレージ1080に記憶される各プログラムモジュールには、本実施形態で説明した各機能を実現するプログラムがさらに含まれる。また、ストレージ1080は、第2判定部2120を実現するプログラムモジュールをさらに記憶する。プロセッサ1040は、このプログラムモジュールを実行することで、第2判定部2120の機能を実現する。
<Hardware configuration>
For example, the hardware configuration of the information processing apparatus 2000 according to the seventh embodiment is represented in FIG. 4 as with the information processing apparatus 2000 according to the first embodiment. In the present embodiment, each program module stored in the storage 1080 described above further includes a program that realizes each function described in the present embodiment. The storage 1080 further stores a program module that implements the second determination unit 2120. The processor 1040 implements the function of the second determination unit 2120 by executing this program module.

<作用・効果>
本実施形態によれば、仮想ネットワークインタフェースに対して物理ネットワークインタフェースと同じ MAC アドレスが割り当てられているという環境において、その環境の特徴を利用し、ネットワークインタフェース120が物理ネットワークインタフェースと仮想ネットワークインタフェースのどちらであるかを推定することができる。
<Action and effect>
According to the present embodiment, in an environment in which the same MAC address as that of the physical network interface is assigned to the virtual network interface, the network interface 120 uses either the physical network interface or the virtual network interface by utilizing the characteristics of the environment. Can be estimated.

[実施形態8]
実施形態8の情報処理装置2000は、実施形態1の情報処理装置2000と同様に図1で表される。
[Embodiment 8]
An information processing apparatus 2000 according to the eighth embodiment is illustrated in FIG. 1 in the same manner as the information processing apparatus 2000 according to the first embodiment.

実施形態8の受信部2020は、ネットワークインタフェース120から、インタフェース情報又はマシン情報を取得する。あるネットワークインタフェース120から受信するインタフェース情報は、そのネットワークインタフェース120に関する情報を示す。また、あるネットワークインタフェース120から受信するマシン情報は、そのネットワークインタフェース120を有するマシンに関する情報を示す。ここで、物理ネットワークインタフェースを有するマシンは物理マシンであり、仮想ネットワークインタフェースを有するマシンはソフトウエアで実現されたマシン(仮想マシンやエミュレートされたマシンなど)である。   The receiving unit 2020 according to the eighth embodiment acquires interface information or machine information from the network interface 120. The interface information received from a certain network interface 120 indicates information regarding the network interface 120. The machine information received from a network interface 120 indicates information related to the machine having the network interface 120. Here, a machine having a physical network interface is a physical machine, and a machine having a virtual network interface is a machine (such as a virtual machine or an emulated machine) realized by software.

実施形態8の推定部2040は、インタフェース情報又はマシン情報を用いて推定を行う。以下、詳細に説明する。   The estimation unit 2040 according to the eighth embodiment performs estimation using interface information or machine information. Details will be described below.

<ネットワークインタフェース120の名称に基づく推定>
一般に、物理マシンが有する物理ネットワークインタフェースの種類は様々である。例えば、物理マシンのメーカごとに、物理マシンに搭載される物理ネットワークインタフェースが異なる。また、新たな物理ネットワークインタフェースが開発されると、その後に販売される物理マシンには、その新たな物理ネットワークインタフェースが搭載されるようになる。
<Estimation based on the name of the network interface 120>
In general, there are various types of physical network interfaces that a physical machine has. For example, the physical network interface mounted on the physical machine differs for each physical machine manufacturer. Further, when a new physical network interface is developed, the new physical network interface comes to be mounted on a physical machine sold thereafter.

一方、VMM やエミュレータによって生成される仮想ネットワークインタフェースの種類は限られている。例えば、同じ種類の VMM によって生成される各 VM の仮想ネットワークインタフェースは、いずれも同じ種類の物理ネットワークインタフェースを再現したものであることが多い。また一般に、VMM やエミュレータによって生成される仮想ネットワークインタフェースは、物理マシンに搭載されている物理ネットワークインタフェースよりも古い型の物理ネットワークインタフェースを再現したものであることが多い。   On the other hand, the types of virtual network interfaces generated by VMM and emulator are limited. For example, the virtual network interface of each VM generated by the same type of VMM is often a reproduction of the same type of physical network interface. In general, a virtual network interface generated by a VMM or an emulator often reproduces a type of physical network interface that is older than the physical network interface installed in the physical machine.

以上のことから、仮想ネットワークインタフェースと物理ネットワークインタフェースは、ネットワークインタフェースの名称や特徴が異なる場合が多い。   From the above, the name and characteristics of the network interface are often different between the virtual network interface and the physical network interface.

そこで推定部2040は、ネットワークインタフェース120のインタフェース情報に基づいて、ネットワークインタフェース120が仮想ネットワークインタフェースであるか物理ネットワークインタフェースであるかを推定する。   Therefore, the estimation unit 2040 estimates whether the network interface 120 is a virtual network interface or a physical network interface based on the interface information of the network interface 120.

例えば推定部2040は、ネットワークインタフェース120の名称に基づく推定を行う。例えば推定部2040は、仮想ネットワークインタフェースでありうる名称のリストを取得する。そして、推定部2040は、ネットワークインタフェース120のインタフェース情報が示すそのネットワークインタフェース120の名称が、上記取得したリストに含まれているか否かを判定する。そして、推定部2040は、ネットワークインタフェース120の名称が上記リストに含まれている場合、そのネットワークインタフェース120が仮想ネットワークインタフェースであると推定する。   For example, the estimation unit 2040 performs estimation based on the name of the network interface 120. For example, the estimation unit 2040 acquires a list of names that can be virtual network interfaces. Then, the estimation unit 2040 determines whether or not the name of the network interface 120 indicated by the interface information of the network interface 120 is included in the acquired list. Then, when the name of the network interface 120 is included in the list, the estimation unit 2040 estimates that the network interface 120 is a virtual network interface.

なお、推定部2040が仮想ネットワークインタフェースでありうる名称のリストを取得する方法は、例えば実施形態2の推定部2040が仮想ネットワークインタフェースの OUI のリストを取得する方法と同様である。   Note that the method by which the estimation unit 2040 acquires a list of names that can be virtual network interfaces is the same as the method by which the estimation unit 2040 of the second embodiment acquires a list of OUIs of a virtual network interface, for example.

なお、ネットワークインタフェース120の名称を利用して推定を行う方法は、上述の例に限定されない。例えば、あるネットワークインタフェース120から受信するマシン情報が、そのネットワークインタフェース120を有するマシン上で動作している OS や VMM によって管理されているネットワークインタフェース120の情報を示しているとする。例えば図2の環境の場合、物理ネットワークインタフェース30から受信するマシン情報は、VMM 20によって管理されている物理ネットワークインタフェース30の情報及び NAT インタフェース40の情報を示す。ここで、NAT インタフェース40は VMM 20によって生成される仮想的なネットワークインタフェースである。そして一般に、NAT インタフェース40の名称は、それが物理ネットワークインタフェースではなく NAT 用の仮想ネットワークインタフェースであることが分かるように、特徴的な名称になっていることが多い。   Note that the estimation method using the name of the network interface 120 is not limited to the above example. For example, it is assumed that machine information received from a certain network interface 120 indicates information on the network interface 120 managed by an OS or VMM running on a machine having the network interface 120. For example, in the environment of FIG. 2, the machine information received from the physical network interface 30 indicates information on the physical network interface 30 managed by the VMM 20 and information on the NAT interface 40. Here, the NAT interface 40 is a virtual network interface generated by the VMM 20. In general, the name of the NAT interface 40 is often a characteristic name so that it can be understood that it is not a physical network interface but a virtual network interface for NAT.

そこで推定部2040は、VMM 20が物理マシン10内のネットワーク環境を構築するために生成する仮想ネットワークインタフェース(NAT インタフェース40など)の名称の特徴(利用される可能性が高い単語など)を表すリストを利用して推定を行う。具体的には、推定部2040は、ネットワークインタフェース120から取得したマシン情報が示す各ネットワークインタフェースの名称の中に、上記リストが示す特徴に合致する名称があるか否かを判定する。上記特徴に合致する名称のネットワークインタフェースがある場合、推定部2040は、マシン情報の取得元のネットワークインタフェース120が物理ネットワークインタフェースであると推定する。例えば、マシン情報が示すインタフェースの名称の中に、NAT インタフェースの名称であると考えられる名称がある場合、そのマシン情報を送信したネットワークインタフェース120は、VMM 20によって管理されている物理ネットワークインタフェース30であると推定できる。   Accordingly, the estimation unit 2040 is a list that represents the characteristics (such as words that are likely to be used) of the names of virtual network interfaces (such as the NAT interface 40) that the VMM 20 generates in order to construct the network environment in the physical machine 10. Estimate using. Specifically, the estimation unit 2040 determines whether there is a name that matches the feature indicated by the list among the names of the network interfaces indicated by the machine information acquired from the network interface 120. If there is a network interface with a name that matches the above characteristics, the estimation unit 2040 estimates that the network interface 120 from which the machine information is acquired is a physical network interface. For example, if there is a name that is considered to be the name of a NAT interface among the names of the interfaces indicated by the machine information, the network interface 120 that transmitted the machine information is the physical network interface 30 managed by the VMM 20. It can be estimated that there is.

<ホスト名を用いた推定>
マシン情報は、マシンのハードウエア構成に関する情報や、そのマシン上で動作している OS などのソフトウエアの情報を含む。ここで、物理マシン上で動作しているソフトウエアは VMM やエミュレータなどであり、仮想マシンやエミュレートされたマシンの上で動作しているソフトウエアはゲスト OS などである。
<Estimation using host name>
The machine information includes information on the hardware configuration of the machine and information on software such as an OS running on the machine. Here, the software running on the physical machine is VMM or an emulator, and the software running on the virtual machine or emulated machine is a guest OS.

例えばマシン情報は、マシンで動作している OS に割り当てられたホスト名を示す。ホスト名は、DNS サーバによって自動的によって割り当てられる場合もあるし、手動で割り当てられる場合もある。ただし、DNS サーバによって自動的に割り与えられる場合であったとしても、「どのような名前を割り当てるか」の設定を行う主体は一般的に人である。よって一般に、ホスト名は人が考えるものである。   For example, machine information indicates the host name assigned to the OS running on the machine. The host name can be assigned automatically by the DNS server or manually. However, even if it is assigned automatically by the DNS server, the person who sets the "what name to assign" is generally a person. Thus, in general, a host name is something that a person thinks.

例えば人は、VM やエミュレートされたマシンに対し、そのマシンが物理マシンではなく VM などであることを把握しやすいホスト名を与えたり、そのマシンを動作させている物理マシンのホスト名(物理マシン上で動作している OS や VMM に割り当てられた名前)に関連したホスト名を与えたりすることが多い。こうすることで、マシンの管理が容易になるなどの利点があるためである。例えば、物理マシンのホスト名が user1 である場合、人は、VM のホスト名を user1_vm などとする。   For example, a person gives a VM or an emulated machine a host name that makes it easy to know that the machine is not a physical machine but a VM, or the physical machine host name (physical In many cases, a host name related to the OS or VMM running on the machine is given. This is because there are advantages such as easy machine management. For example, if the host name of the physical machine is user1, the person sets the VM host name to user1_vm.

そこで推定部2040は、ネットワークインタフェース120から取得するマシン情報が示すホスト名に基づいて推測を行う。例えば推定部2040は、あるネットワークインタフェース120から取得したマシン情報が示すホスト名に、仮想化やエミュレーションと関連する所定文字列が含まれている場合に、そのネットワークインタフェース120が仮想マシンネットワークインタフェースであると推定する。ここで、仮想化やエミュレーションと関連する所定文字列は、例えば vm、emu(emulation の略)、guest、又は child などである。   Therefore, the estimation unit 2040 performs estimation based on the host name indicated by the machine information acquired from the network interface 120. For example, when the host name indicated by the machine information acquired from a certain network interface 120 includes a predetermined character string related to virtualization or emulation, the estimation unit 2040 is the virtual machine network interface. Estimated. Here, the predetermined character string related to virtualization or emulation is, for example, vm, emu (abbreviation of emulation), guest, or child.

また例えば、推定部2040は、あるネットワークインタフェース120から取得したマシン情報が示すホスト名に、物理マシンであることを想起させる所定文字列が含まれている場合に、そのネットワークインタフェース120が物理マシンネットワークインタフェースであると推定する。ここで、物理マシンであることを想起させる所定文字列は、例えば vmm、phy(physical の略)、real、又は parent などである。   Further, for example, when the host name indicated by the machine information acquired from a certain network interface 120 includes a predetermined character string reminiscent of a physical machine, the estimation unit 2040 determines that the network interface 120 is a physical machine network. Presumed to be an interface. Here, the predetermined character string reminiscent of a physical machine is, for example, vmm, phy (abbreviation of physical), real, or parent.

なお、上述した各所定文字列は、予め推定部2040に設定されていてもよいし、情報処理装置2000の内部又は外部の記憶部に記憶されていてもよい。後者の場合、推定部2040は、推定を行う際にこの記憶部から上記所定文字列を取得する。   Each predetermined character string described above may be set in advance in the estimation unit 2040, or may be stored in a storage unit inside or outside the information processing apparatus 2000. In the latter case, the estimation unit 2040 acquires the predetermined character string from the storage unit when performing estimation.

<インタフェース情報やマシン情報の取得方法>
受信部2020がインタフェース情報やマシン情報を取得する方法は様々である。例えば受信部2020は、各ネットワークインタフェース120に対してリクエストを送信し、そのリクエストに対するレスポンスとしてインタフェース情報やマシン情報を取得する。例えば受信部2020は、SNMP(Simple Network Management Protocol)を利用してこれらの情報を取得する。この場合、VMM やゲスト OS などは、ネットワークインタフェースの情報などを管理する SNMP サーバアプリケーションを動作させている。そして、情報処理装置2000は、この SNMP サーバプリケーションに対してリクエストを送信することで、この SNMP サーバによって管理されているネットワークインタフェースの名称などの情報を取得する。ただし、このようにインタフェース情報等を提供するアプリケーションは、SNMP サーバアプリケーションに限定されない。
<Acquisition method of interface information and machine information>
There are various methods by which the receiving unit 2020 acquires interface information and machine information. For example, the receiving unit 2020 transmits a request to each network interface 120 and acquires interface information and machine information as a response to the request. For example, the receiving unit 2020 acquires such information using SNMP (Simple Network Management Protocol). In this case, the VMM and guest OS run an SNMP server application that manages network interface information. Then, the information processing apparatus 2000 acquires information such as the name of the network interface managed by the SNMP server by transmitting a request to the SNMP server application. However, the application that provides the interface information and the like is not limited to the SNMP server application.

同様に、受信部2020は、NIQ(Node Information Query)を利用してインタフェース情報やマシン情報を取得してもよい。   Similarly, the reception unit 2020 may acquire interface information and machine information using NIQ (Node Information Query).

また、受信部2020は、各ネットワークインタフェース120によって自発的に送信されているデータを受信してもよい。例えば各マシン間でファイルの共有などを行う場合、各マシンはホスト名などをブロードキャストやマルチキャストする。このような場合、各ネットワークインタフェース120から自発的にインタフェース情報やマシン情報が送信される。そこで受信部2020は、このようにネットワーク130上を流れるインタフェース情報やマシン情報を受信する。   The receiving unit 2020 may receive data that is spontaneously transmitted by each network interface 120. For example, when sharing a file between machines, each machine broadcasts or multicasts a host name or the like. In such a case, interface information and machine information are spontaneously transmitted from each network interface 120. Therefore, the receiving unit 2020 receives interface information and machine information flowing on the network 130 in this way.

<処理の流れ>
図31は、実施形態8の情報処理装置2000によって実行される処理の流れを例示するフローチャートである。図31において、送信データの送信先をネットワークインタフェースXと表記する。
<Process flow>
FIG. 31 is a flowchart illustrating the flow of processing executed by the information processing apparatus 2000 according to the eighth embodiment. In FIG. 31, a transmission destination of transmission data is denoted as a network interface X.

受信部2020はネットワークインタフェースXからインタフェース情報又はマシン情報を受信する(S1002)。推定部2040は、受信したインタフェース情報又はマシン情報に基づいて、ネットワークインタフェースXが物理ネットワークインタフェースと仮想ネットワークインタフェースのどちらであるかを推定する。   The receiving unit 2020 receives interface information or machine information from the network interface X (S1002). The estimation unit 2040 estimates whether the network interface X is a physical network interface or a virtual network interface based on the received interface information or machine information.

<物理ネットワークインタフェースの数が1つに限定される環境の構築>
実施形態8の情報処理装置2000は、実施形態3の情報処理装置2000と同様に、物理ネットワークインタフェースの数が1つに限定される環境を構築した上で推定を行ってもよい。
<Building an environment where the number of physical network interfaces is limited to one>
Similarly to the information processing apparatus 2000 of the third embodiment, the information processing apparatus 2000 of the eighth embodiment may perform estimation after building an environment in which the number of physical network interfaces is limited to one.

<ハードウエア構成>
例えば実施形態8の情報処理装置2000のハードウエア構成は、実施形態1の情報処理装置2000と同様に、図2で表される。本実施形態において、前述したストレージ1080に記憶される各プログラムモジュールには、本実施形態で説明した各機能を実現するプログラムがさらに含まれる。
<Hardware configuration>
For example, the hardware configuration of the information processing apparatus 2000 according to the eighth embodiment is illustrated in FIG. 2 as with the information processing apparatus 2000 according to the first embodiment. In the present embodiment, each program module stored in the storage 1080 described above further includes a program that realizes each function described in the present embodiment.

<作用・効果>
本実施形態によれば、ネットワークインタフェース120を用いて動作する OS や VMM などから取得する情報に基づいて、ネットワークインタフェース120が物理ネットワークインタフェースと仮想ネットワークインタフェースのどちらであるかを推定できる。この方法によれば、情報処理装置2000は、データのヘッダに含まれる情報(送信元 IP アドレスなど)よりも豊富な情報を得ることができるため、推定部2040による推定の精度が高くなる。
<Action and effect>
According to the present embodiment, it can be estimated whether the network interface 120 is a physical network interface or a virtual network interface based on information acquired from an OS, VMM, or the like that operates using the network interface 120. According to this method, the information processing apparatus 2000 can obtain more information than information (such as a transmission source IP address) included in the header of the data, so that the estimation accuracy by the estimation unit 2040 is increased.

[実施形態9]
実施形態9の情報処理装置2000は、実施形態2から実施形態8のいずれか2つ以上を組み合わせた構成を有する。
[Embodiment 9]
The information processing apparatus 2000 according to the ninth embodiment has a configuration in which any two or more of the second to eighth embodiments are combined.

実施形態9の推定部2040は、実施形態2から実施形態8で説明した推定方法の内のいずれか2つ以上の方法でそれぞれ推定を行う。さらに、推定部2040は、2つ以上の推定結果を利用して、総合的な推定結果を生成する。   The estimation unit 2040 of the ninth embodiment performs estimation using any two or more of the estimation methods described in the second to eighth embodiments. Furthermore, the estimation unit 2040 generates a comprehensive estimation result using two or more estimation results.

例えば実施形態9の推定部2040は、所定数以上の推定方法によって「ネットワークインタフェースXは物理ネットワークインタフェースである」と推定された場合に、「ネットワークインタフェースXは物理ネットワークインタフェースである」という総合的な推定結果を生成する。同様に推定部2040は、所定数以上の推定方法によって「ネットワークインタフェースXは仮想ネットワークインタフェースである」と推定された場合に、「ネットワークインタフェースXは仮想ネットワークインタフェースである」という総合的な推定結果を生成する。この所定数は、予め推定部2040に設定されていてもよいし、情報処理装置2000の内部又は外部の記憶部に記憶されていてもよい。後者の場合、推定部2040は、推定を行う際にこの記憶部から上記所定値を取得する。   For example, when the estimation unit 2040 of the ninth embodiment estimates that “the network interface X is a physical network interface” by a predetermined number of estimation methods or more, the overall estimation “the network interface X is a physical network interface” is performed. Generate estimation results. Similarly, when the estimation unit 2040 estimates that “the network interface X is a virtual network interface” by an estimation method of a predetermined number or more, the estimation unit 2040 gives a comprehensive estimation result that “the network interface X is a virtual network interface”. Generate. This predetermined number may be set in the estimation unit 2040 in advance, or may be stored in a storage unit inside or outside the information processing apparatus 2000. In the latter case, the estimation unit 2040 acquires the predetermined value from the storage unit when performing estimation.

また例えば、推定部2040は、各推定方法による推定結果の重み付き和を算出し、その算出結果に基づいて総合的な推定結果を生成してもよい。数式(1)は、各推定方法による推定結果の重み付き和を算出する式の例である。iは推定方法に割り当てた ID である。wi は推定方法iの推定結果に与える重みである。ri は推定方法iの推定結果である。例えば ri は、推定方法iの推定結果が「ネットワークインタフェース120は物理ネットワークインタフェースである」である場合に 1 を示し、「ネットワークインタフェース120は仮想ネットワークインタフェースである」である場合に -1 を示す。

Figure 2016201690
For example, the estimation unit 2040 may calculate a weighted sum of the estimation results obtained by the respective estimation methods, and generate a comprehensive estimation result based on the calculation results. Formula (1) is an example of a formula for calculating a weighted sum of estimation results obtained by the respective estimation methods. i is an ID assigned to the estimation method. wi is a weight given to the estimation result of the estimation method i. ri is an estimation result of the estimation method i. For example, ri indicates 1 when the estimation result of the estimation method i is “the network interface 120 is a physical network interface”, and indicates −1 when “the network interface 120 is a virtual network interface”.
Figure 2016201690

重み付き和 S の利用方法は様々である。例えば推定部2040は、重み付き和 S の値が 0 より大きい場合に、「ネットワークインタフェース120は物理ネットワークインタフェースである」という総合的な推定結果を生成する。一方、推定部2040は、重み付き和 S の値が 0 未満である場合に、「ネットワークインタフェース120は仮想ネットワークインタフェースである」という総合的な推定結果を生成する。さらに、推定部2040は、重み付き和 S の値が 0 である場合に、「推定不能」という総合的な推定結果を生成する。   There are various ways to use the weighted sum S. For example, when the value of the weighted sum S is larger than 0, the estimation unit 2040 generates a comprehensive estimation result that “the network interface 120 is a physical network interface”. On the other hand, when the value of the weighted sum S is less than 0, the estimation unit 2040 generates a comprehensive estimation result that “the network interface 120 is a virtual network interface”. Furthermore, when the value of the weighted sum S is 0, the estimation unit 2040 generates a comprehensive estimation result “unestimated”.

また推定部2040は、物理ネットワークインタフェースの数が既知である場合、各ネットワークインタフェース120の重み付き和 S の順位を用いて、各ネットワークインタフェース120が物理ネットワークインタフェースなのか仮想ネットワークインタフェースなのかを推定してもよい。例えば物理ネットワークインタフェースが1つであることが既知の場合、推定部2040は、「重み付き和 S が最も大きいネットワークインタフェース120は物理ネットワークインタフェースであり、それ以外のネットワークインタフェース120は仮想ネットワークインタフェースである」という総合的な推定結果を生成する。   In addition, when the number of physical network interfaces is known, the estimation unit 2040 estimates whether each network interface 120 is a physical network interface or a virtual network interface using the order of the weighted sum S of each network interface 120. May be. For example, when it is known that there is one physical network interface, the estimation unit 2040 determines that “the network interface 120 having the largest weighted sum S is a physical network interface, and the other network interfaces 120 are virtual network interfaces. ”Is generated.

なお、物理ネットワークインタフェースの数は、実施形態3で説明したポート VLAN を用いる方法などにより、1つに限定することが可能である。   Note that the number of physical network interfaces can be limited to one by the method using the port VLAN described in the third embodiment.

<作用・効果>
本実施形態の情報処理装置2000は、複数の推定方法による推定結果に基づいて総合的な推定を行うため、1つの推定方法のみを利用する場合よりも高い精度で推定を行うことができる。
<Action and effect>
Since the information processing apparatus 2000 according to the present embodiment performs comprehensive estimation based on estimation results obtained by a plurality of estimation methods, the information processing device 2000 can perform estimation with higher accuracy than when only one estimation method is used.

[実施形態10]
図32は、実施形態10に係る情報処理装置2000を例示するブロック図である。図32において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を表している。
[Embodiment 10]
FIG. 32 is a block diagram illustrating an information processing apparatus 2000 according to the tenth embodiment. In FIG. 32, each block represents a functional unit configuration, not a hardware unit configuration.

実施形態10の情報処理装置2000は、対応付け部2140を有する。実施形態10の対応付け部2140は、物理ネットワークインタフェースと、その物理ネットワークインタフェースを用いて動作する仮想ネットワークインタフェースとの対応付けを行う。なお、対応付け部2140によって行われる対応付けは、「物理マシンと、その物理マシン上で動作している仮想化又はエミュレートされたマシンとの対応付け(例えば物理マシンと VM の対応付け)」や、「物理マシン上で動作する VMM 又はエミュレータと、その物理マシン上で動作する仮想化又はエミュレートされたマシンとの対応付け(例えば VMM とゲストOS との対応付け)」とも言い換えることができる。   The information processing apparatus 2000 according to the tenth embodiment includes an association unit 2140. The associating unit 2140 according to the tenth embodiment associates a physical network interface with a virtual network interface that operates using the physical network interface. The association performed by the association unit 2140 is “association between a physical machine and a virtualized or emulated machine operating on the physical machine (eg, association between a physical machine and a VM)”. Or “association between VMM or emulator running on a physical machine and a virtualized or emulated machine running on that physical machine (eg, mapping between VMM and guest OS)” .

実施形態10において、推定部2040は、物理ネットワークインタフェースの数が1つに限定される環境を構築した上で、各ネットワークインタフェースに関する推定を行う。そして、対応付け部2140は、この環境下で推定された物理ネットワークインタフェースと仮想ネットワークインタフェースとを対応づける。物理ネットワークインタフェースの数が1つに限定されているので、各仮想ネットワークインタフェースは、必ずこの物理ネットワークインタフェースを用いて動作する仮想ネットワークインタフェースであるためである。なお、物理ネットワークインタフェースの数が1つに限定される環境を構築する方法は、実施形態3で説明した通りである。   In the tenth embodiment, the estimation unit 2040 constructs an environment in which the number of physical network interfaces is limited to one, and then performs estimation regarding each network interface. Then, the association unit 2140 associates the physical network interface estimated under this environment with the virtual network interface. This is because, since the number of physical network interfaces is limited to one, each virtual network interface is a virtual network interface that always operates using this physical network interface. Note that the method for constructing an environment in which the number of physical network interfaces is limited to one is as described in the third embodiment.

ネットワークインタフェース120同士の対応付けを表す方法は様々である。例えば対応付け部2140は、物理ネットワークインタフェースの MAC アドレスや IP アドレスと、仮想ネットワークインタフェースの MAC アドレスや IP アドレスとを対応づける。また実施形態10の対応付け部2140は、物理ネットワークインタフェースを有する物理マシンのホスト名や UUID と、仮想ネットワークインタフェースを有する VM などのホスト名や UUID とを対応づけてもよい。なお、対応付け部2140は、実施形態8で説明したマシン情報などを利用することで、物理マシンや VM のホスト名などを把握する。   There are various methods for representing the association between the network interfaces 120. For example, the associating unit 2140 associates the MAC address or IP address of the physical network interface with the MAC address or IP address of the virtual network interface. Further, the associating unit 2140 according to the tenth embodiment may associate the host name or UUID of a physical machine having a physical network interface with the host name or UUID of a VM or the like having a virtual network interface. Note that the associating unit 2140 uses the machine information described in the eighth embodiment to grasp the physical machine and the host name of the VM.

図33は、対応付け部2140によって生成される対応付けを例示する図である。図33(a)は物理ネットワークインタフェースの MAC アドレスと仮想ネットワークインタフェースの MAC アドレスとを対応付けたテーブルを示す。このテーブルから、例えば、「MAC アドレスが BB:BB:BB:BB である仮想ネットワークインタフェースを持つ VM と、MAC アドレスCC:CC:CC:CC である仮想ネットワークインタフェースを持つ VM は、MAC アドレスが AA:AA:AA:AA である物理ネットワークインタフェースを持つ物理マシン上で動作している」ということが分かる。   FIG. 33 is a diagram illustrating the association generated by the association unit 2140. FIG. 33A shows a table in which the MAC address of the physical network interface is associated with the MAC address of the virtual network interface. From this table, for example, `` A VM with a virtual network interface with MAC address BB: BB: BB: BB and a VM with a virtual network interface with MAC address CC: CC: CC: CC have a MAC address of AA It runs on a physical machine with a physical network interface that is: AA: AA: AA. "

一方、図33(b)は、物理マシンのホスト名と仮想マシンのホスト名とを対応付けたテーブルを示す。このテーブルから、例えば、「ホスト名が hostB である VM とホスト名が hostC である VM は、ホスト名が hostA である物理マシン上で動作している」ということが分かる。   On the other hand, FIG. 33B shows a table in which the host name of the physical machine is associated with the host name of the virtual machine. From this table, for example, it can be seen that “the VM with the host name hostB and the VM with the host name hostC are operating on the physical machine with the host name hostA”.

<作用・効果>
本実施形態の情報処理装置2000によれば、物理ネットワークインタフェースと仮想ネットワークインタフェースとの対応付け(物理マシンと VM などとの対応付け)が行われる。これにより、ネットワーク130の管理者やネットワーク130を管理する装置は、ネットワーク130に存在するネットワークインタフェース120やマシンの対応関係(従属関係)を容易に把握することができる。よって、ネットワーク130の管理者等は、ネットワーク130の管理をより適切に行うことができる。
<Action and effect>
According to the information processing apparatus 2000 of this embodiment, the physical network interface and the virtual network interface are associated (association between a physical machine and a VM). As a result, the administrator of the network 130 and the device managing the network 130 can easily grasp the correspondence relationship (subordinate relationship) between the network interface 120 and the machine existing in the network 130. Therefore, an administrator of the network 130 can manage the network 130 more appropriately.

以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。   As mentioned above, although embodiment of this invention was described with reference to drawings, these are the illustrations of this invention, Various structures other than the above are also employable.

以下、参考形態の例を付記する。
1. データを受信する受信手段と、
前記受信されたデータを用いて、そのデータの送信元のネットワークインタフェースが、物理的なネットワークインタフェースと仮想的なネットワークインタフェースのどちらであるかの推定を行う推定手段と、
を有する情報処理装置。
2. 前記推定手段は、前記データが示す送信元のネットワークインタフェースのレイヤ2アドレスに含まれる OUI(Organizationally Unique Identifier)を用いて前記推定を行う1.に記載の情報処理装置。
3. 複数のネットワークインタフェースそれぞれに対して送信データを送信する送信手段を有し、
前記受信手段は、各前記ネットワークインタフェースから、前記送信データに対する応答データを受信し、
前記推定手段は、前記送信データが送信されてから前記応答データが受信されるまでの時間を用いて前記推定を行う1.に記載の情報処理装置。
4. 前記送信手段は、各前記ネットワークインタフェースに対し、複数の前記送信データを送信し、
前記受信手段は、各前記ネットワークインタフェースから、複数の前記送信データそれぞれについて前記応答データを受信し、
前記推定手段は、各前記ネットワークインタフェースについて、前記時間の大きさの統計値又は前記時間のばらつきの統計値を算出し、前記算出した統計値を用いて前記推定を行う3.に記載の情報処理装置。
5. 前記データを用いて、前記ネットワークインタフェースがデータの送受信を行える状態になったことを検出する検出手段を有し、
前記推定手段は、データの送受信を行える状態になった時点が最も早い前記ネットワークインタフェースが、物理的なネットワークインタフェースであると推定する、1.に記載の情報処理装置。
6. 前記受信したデータの履歴を用いて、前記ネットワークインタフェースがデータの送受信を行える状態であるか否かを判定する判定手段を有し、
前記推定手段は、第1の前記ネットワークインタフェースがデータの送受信を行えない状態であり、かつ第1の前記ネットワークインタフェースとは異なる第2の前記ネットワークインタフェースがデータの送受信を行える状態である場合に、第1の前記ネットワークインタフェースは仮想的なネットワークインタフェースであると推定する、1.に記載の情報処理装置。
7. ネットワークインタフェースに対して送信データを送信する送信手段を有し、
前記受信手段は、前記送信データに対する応答データを受信し、
前記推定手段は、前記送信データの送信先のネットワークインタフェースと、その送信データに対する応答データの送信元のネットワークインタフェースが異なる場合、前記送信データの送信先のネットワークインタフェースが仮想的なネットワークインタフェースであると推定するか、又は前記応答データの受信元のネットワークインタフェースが物理的なネットワークインタフェースであると推定する1.に記載の情報処理装置。
8. 前記送信データは、ARP(Address Resolution Protocol)リクエスト又は NS(Neighbor Solicitation)メッセージであり、
ARP リクエストに対する応答データは ARP リプライであり、
NS メッセージに対する応答データは NA(Neighbor Advertisement)メッセージである7.に記載の情報処理装置。
9. 前記受信手段は、複数の前記ネットワークインタフェースからデータを受信し、
複数の前記ネットワークインタフェースそれぞれから受信したデータを用いて、1つの レイヤ2アドレスに対して IPv4(Internet Protocol version 4)アドレスが複数対応付けられているか否か、又は1つのレイヤ2アドレスに対して同一スコープの IPv6(IP version 6)アドレスが複数対応付けられているか否かを判定する判定手段を有し、
前記推定手段は、1つのレイヤ2アドレスに対して IPv4 アドレスが複数対応付けられているか、又は 1つのレイヤ2アドレスに対して同一スコープの IPv6 アドレスが複数対応付けられている場合に、そのレイヤ2アドレスを持つネットワークインタフェースが、物理的なネットワークインタフェースであると推定する、1.に記載の情報処理装置。
10. 前記ネットワークインタフェースから受信するデータは、そのネットワークインタフェースに関する情報又はそのネットワークインタフェースを動作させているマシンに関する情報を示しており、
前記推定手段は、前記ネットワークインタフェースに関する情報又はそのネットワークインタフェースを動作させているマシンに関する情報を用いて、そのネットワークインタフェースについて前記推定を行う、1.に記載の情報処理装置。
11. 前記推定手段は、前記ネットワークインタフェースの名前、又はそのネットワークインタフェースを用いて動作しているマシンに割り当てられたホスト名を用いて、そのネットワークインタフェースについて前記推定を行う、10.に記載の情報処理装置。
12. 物理ネットワークインタフェースであると推定されたネットワークインタフェースと、仮想ネットワークインタフェースであると推定されたネットワークインタフェースとの対応付けを行う対応付け手段を有する、1.乃至11に記載の情報処理装置。
13. コンピュータを、1.乃至12.いずれか一つに記載の情報処理装置として動作させるプログラム。
14. コンピュータによって実行される制御方法であって、
データを受信する受信ステップと、
前記受信されたデータを用いて、そのデータの送信元のネットワークインタフェースが、物理的なネットワークインタフェースと仮想的なネットワークインタフェースのどちらであるかの推定を行う推定ステップと、
を有する制御方法。
15. 前記推定ステップは、前記データが示す送信元のネットワークインタフェースのレイヤ2アドレスに含まれる OUI(Organizationally Unique Identifier)を用いて前記推定を行う14.に記載の制御方法。
16. 複数のネットワークインタフェースそれぞれに対して送信データを送信する送信ステップを有し、
前記受信ステップは、各前記ネットワークインタフェースから、前記送信データに対する応答データを受信し、
前記推定ステップは、前記送信データが送信されてから前記応答データが受信されるまでの時間を用いて前記推定を行う14.に記載の制御方法。
17. 前記送信ステップは、各前記ネットワークインタフェースに対し、複数の前記送信データを送信し、
前記受信ステップは、各前記ネットワークインタフェースから、複数の前記送信データそれぞれについて前記応答データを受信し、
前記推定ステップは、各前記ネットワークインタフェースについて、前記時間の大きさの統計値又は前記時間のばらつきの統計値を算出し、前記算出した統計値を用いて前記推定を行う16.に記載の制御方法。
18. 前記データを用いて、前記ネットワークインタフェースがデータの送受信を行える状態になったことを検出する検出ステップを有し、
前記推定ステップは、データの送受信を行える状態になった時点が最も早い前記ネットワークインタフェースが、物理的なネットワークインタフェースであると推定する、14.に記載の制御方法。
19. 前記受信したデータの履歴を用いて、前記ネットワークインタフェースがデータの送受信を行える状態であるか否かを判定する判定ステップを有し、
前記推定ステップは、第1の前記ネットワークインタフェースがデータの送受信を行えない状態であり、かつ第1の前記ネットワークインタフェースとは異なる第2の前記ネットワークインタフェースがデータの送受信を行える状態である場合に、第1の前記ネットワークインタフェースは仮想的なネットワークインタフェースであると推定する、14.に記載の制御方法。
20. ネットワークインタフェースに対して送信データを送信する送信ステップを有し、
前記受信ステップは、前記送信データに対する応答データを受信し、
前記推定ステップは、前記送信データの送信先のネットワークインタフェースと、その送信データに対する応答データの送信元のネットワークインタフェースが異なる場合、前記送信データの送信先のネットワークインタフェースが仮想的なネットワークインタフェースであると推定するか、又は前記応答データの受信元のネットワークインタフェースが物理的なネットワークインタフェースであると推定する14.に記載の制御方法。
21. 前記送信データは、ARP(Address Resolution Protocol)リクエスト又は NS(Neighbor Solicitation)メッセージであり、
ARP リクエストに対する応答データは ARP リプライであり、
NS メッセージに対する応答データは NA(Neighbor Advertisement)メッセージである20.に記載の制御方法。
22. 前記受信ステップは、複数の前記ネットワークインタフェースからデータを受信し、
複数の前記ネットワークインタフェースそれぞれから受信したデータを用いて、1つの レイヤ2アドレスに対して IPv4(Internet Protocol version 4)アドレスが複数対応付けられているか否か、又は1つのレイヤ2アドレスに対して同一スコープの IPv6(IP version 6)アドレスが複数対応付けられているか否かを判定する判定ステップを有し、
前記推定ステップは、1つのレイヤ2アドレスに対して IPv4 アドレスが複数対応付けられているか、又は 1つのレイヤ2アドレスに対して同一スコープの IPv6 アドレスが複数対応付けられている場合に、そのレイヤ2アドレスを持つネットワークインタフェースが、物理的なネットワークインタフェースであると推定する、14.に記載の制御方法。
23. 前記ネットワークインタフェースから受信するデータは、そのネットワークインタフェースに関する情報又はそのネットワークインタフェースを動作させているマシンに関する情報を示しており、
前記推定ステップは、前記ネットワークインタフェースに関する情報又はそのネットワークインタフェースを動作させているマシンに関する情報を用いて、そのネットワークインタフェースについて前記推定を行う、14.に記載の制御方法。
24. 前記推定ステップは、前記ネットワークインタフェースの名前、又はそのネットワークインタフェースを用いて動作しているマシンに割り当てられたホスト名を用いて、そのネットワークインタフェースについて前記推定を行う、23.に記載の制御方法。
25. 物理ネットワークインタフェースであると推定されたネットワークインタフェースと、仮想ネットワークインタフェースであると推定されたネットワークインタフェースとの対応付けを行う対応付けステップを有する、14.乃至24に記載の制御方法。
Hereinafter, examples of the reference form will be added.
1. Receiving means for receiving data;
Using the received data, an estimation means for estimating whether a network interface of a transmission source of the data is a physical network interface or a virtual network interface;
An information processing apparatus.
2. The estimation means performs the estimation using an OUI (Organizationally Unique Identifier) included in the layer 2 address of the network interface of the transmission source indicated by the data. The information processing apparatus described in 1.
3. Having transmission means for transmitting transmission data to each of a plurality of network interfaces;
The receiving means receives response data for the transmission data from each of the network interfaces,
The estimation means performs the estimation using a time from when the transmission data is transmitted until the response data is received. The information processing apparatus described in 1.
4). The transmission means transmits a plurality of the transmission data to each of the network interfaces,
The receiving means receives the response data for each of a plurality of the transmission data from each of the network interfaces,
2. The estimation means calculates a statistical value of the time magnitude or a statistical value of the variation in time for each of the network interfaces, and performs the estimation using the calculated statistical value. The information processing apparatus described in 1.
5. Using the data, the detection means for detecting that the network interface is ready to send and receive data,
The estimation means estimates that the network interface that is earliest when data can be transmitted and received is a physical network interface. The information processing apparatus described in 1.
6). Determination means for determining whether the network interface is in a state where data can be transmitted and received, using the history of the received data;
The estimating means is in a state where the first network interface cannot transmit and receive data, and a second network interface different from the first network interface is in a state where data can be transmitted and received. Estimating that the first network interface is a virtual network interface; The information processing apparatus described in 1.
7). A transmission means for transmitting transmission data to the network interface;
The receiving means receives response data for the transmission data;
The estimation means is configured such that when the network interface of the transmission data is different from the network interface of the transmission source of response data to the transmission data, the network interface of the transmission data is a virtual network interface. 1. Estimate or estimate that the network interface from which the response data is received is a physical network interface The information processing apparatus described in 1.
8). The transmission data is an ARP (Address Resolution Protocol) request or NS (Neighbor Solicitation) message,
The response data for an ARP request is an ARP reply,
Response data for NS message is NA (Neighbor Advertisement) message7. The information processing apparatus described in 1.
9. The receiving means receives data from a plurality of the network interfaces,
Whether multiple IPv4 (Internet Protocol version 4) addresses are associated with one layer 2 address using data received from each of the plurality of network interfaces, or the same for one layer 2 address A determination means for determining whether or not a plurality of scope IPv6 (IP version 6) addresses are associated;
The estimation means determines that when a plurality of IPv4 addresses are associated with one layer 2 address, or when a plurality of IPv6 addresses of the same scope are associated with one layer 2 address, the layer 2 Estimate that the network interface with the address is a physical network interface. The information processing apparatus described in 1.
10. The data received from the network interface indicates information about the network interface or information about a machine operating the network interface,
The estimation means performs the estimation on the network interface using information on the network interface or information on a machine operating the network interface. The information processing apparatus described in 1.
11. The estimation means performs the estimation for the network interface using the name of the network interface or the host name assigned to the machine operating using the network interface. The information processing apparatus described in 1.
12 1. having association means for associating a network interface estimated to be a physical network interface with a network interface estimated to be a virtual network interface; Thru | or 11 the information processing apparatus.
13. Computer. To 12. A program for operating as the information processing apparatus according to any one of the above.
14 A control method executed by a computer,
A receiving step for receiving data;
Using the received data, an estimation step for estimating whether a network interface of a transmission source of the data is a physical network interface or a virtual network interface;
A control method.
15. 13. The estimation step performs the estimation using an OUI (Organizationally Unique Identifier) included in the layer 2 address of the network interface of the transmission source indicated by the data. The control method described in 1.
16. A transmission step of transmitting transmission data to each of a plurality of network interfaces;
The receiving step receives response data for the transmission data from each of the network interfaces,
13. The estimation step performs the estimation using a time from when the transmission data is transmitted until the response data is received. The control method described in 1.
17. The transmission step transmits a plurality of the transmission data to each of the network interfaces,
The receiving step receives the response data for each of a plurality of transmission data from each of the network interfaces,
The estimation step calculates a statistical value of the time magnitude or a statistical value of the variation in time for each of the network interfaces, and performs the estimation using the calculated statistical value. The control method described in 1.
18. Using the data, and detecting that the network interface is ready to send and receive data;
13. the estimation step estimates that the network interface that is earliest when data transmission / reception is enabled is a physical network interface; The control method described in 1.
19. Using the history of the received data, and determining whether the network interface is in a state where data can be transmitted and received,
The estimating step is a state in which the first network interface cannot transmit and receive data, and a second network interface different from the first network interface is in a state in which data can be transmitted and received. 14. presuming that the first network interface is a virtual network interface; The control method described in 1.
20. A transmission step of transmitting transmission data to the network interface;
The reception step receives response data for the transmission data,
In the estimation step, when the network interface of the transmission data is different from the network interface of the transmission source of response data to the transmission data, the network interface of the transmission data is a virtual network interface. 13. Estimate or estimate that the network interface from which the response data is received is a physical network interface The control method described in 1.
21. The transmission data is an ARP (Address Resolution Protocol) request or NS (Neighbor Solicitation) message,
The response data for an ARP request is an ARP reply,
Response data for NS message is NA (Neighbor Advertisement) message20. The control method described in 1.
22. The receiving step receives data from a plurality of the network interfaces,
Whether multiple IPv4 (Internet Protocol version 4) addresses are associated with one layer 2 address using data received from each of the plurality of network interfaces, or the same for one layer 2 address A determination step for determining whether or not a plurality of IPv6 (IP version 6) addresses of the scope are associated;
In the estimation step, when a plurality of IPv4 addresses are associated with one layer 2 address, or when a plurality of IPv6 addresses of the same scope are associated with one layer 2 address, the layer 2 14. Estimate that the network interface with the address is a physical network interface; The control method described in 1.
23. The data received from the network interface indicates information about the network interface or information about a machine operating the network interface,
13. the estimation step performs the estimation for the network interface using information about the network interface or information about a machine operating the network interface; The control method described in 1.
24. The estimating step performs the estimation for the network interface using a name of the network interface or a host name assigned to a machine operating using the network interface; 23. The control method described in 1.
25. 13. an association step of associating a network interface estimated to be a physical network interface with a network interface estimated to be a virtual network interface; The control method of thru | or 24.

10 物理マシン
20 VMM
30 物理ネットワークインタフェース
40 NAT インタフェース
50 VM
60 ゲスト OS
70 仮想ネットワークインタフェース
80 仮想ブリッジ
90 仮想ルータ
100 物理ネットワーク
110 仮想ネットワーク
120 ネットワークインタフェース
130 ネットワーク
200 リスト
1020 バス
1040 プロセッサ
1060 メモリ
1080 ストレージ
1100 入出力インタフェース
1120 ネットワークインタフェース
2000 情報処理装置
2020 受信部
2040 推定部
2060 送信部
2080 検出部
2100 判定部
2120 第2判定部
2140 対応付け部
10 Physical machine 20 VMM
30 Physical network interface 40 NAT interface 50 VM
60 guest OS
70 Virtual network interface 80 Virtual bridge 90 Virtual router 100 Physical network 110 Virtual network 120 Network interface 130 Network 200 List 1020 Bus 1040 Processor 1060 Memory 1080 Storage 1100 Input / output interface 1120 Network interface 2000 Information processing device 2020 Receiving unit 2040 Estimating unit 2060 Transmission Unit 2080 detection unit 2100 determination unit 2120 second determination unit 2140 association unit

Claims (14)

データを受信する受信手段と、
前記受信されたデータを用いて、そのデータの送信元のネットワークインタフェースが、物理的なネットワークインタフェースと仮想的なネットワークインタフェースのどちらであるかの推定を行う推定手段と、
を有する情報処理装置。
Receiving means for receiving data;
Using the received data, an estimation means for estimating whether a network interface of a transmission source of the data is a physical network interface or a virtual network interface;
An information processing apparatus.
前記推定手段は、前記データが示す送信元のネットワークインタフェースのレイヤ2アドレスに含まれる OUI(Organizationally Unique Identifier)を用いて前記推定を行う請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the estimation unit performs the estimation using an OUI (Organizationally Unique Identifier) included in a layer 2 address of a transmission source network interface indicated by the data. 複数のネットワークインタフェースそれぞれに対して送信データを送信する送信手段を有し、
前記受信手段は、各前記ネットワークインタフェースから、前記送信データに対する応答データを受信し、
前記推定手段は、前記送信データが送信されてから前記応答データが受信されるまでの時間を用いて前記推定を行う請求項1に記載の情報処理装置。
Having transmission means for transmitting transmission data to each of a plurality of network interfaces;
The receiving means receives response data for the transmission data from each of the network interfaces,
The information processing apparatus according to claim 1, wherein the estimation unit performs the estimation using a time from when the transmission data is transmitted until the response data is received.
前記送信手段は、各前記ネットワークインタフェースに対し、複数の前記送信データを送信し、
前記受信手段は、各前記ネットワークインタフェースから、複数の前記送信データそれぞれについて前記応答データを受信し、
前記推定手段は、各前記ネットワークインタフェースについて、前記時間の大きさの統計値又は前記時間のばらつきの統計値を算出し、前記算出した統計値を用いて前記推定を行う請求項3に記載の情報処理装置。
The transmission means transmits a plurality of the transmission data to each of the network interfaces,
The receiving means receives the response data for each of a plurality of the transmission data from each of the network interfaces,
The information according to claim 3, wherein the estimation unit calculates a statistical value of the time magnitude or a statistical value of the variation in time for each of the network interfaces, and performs the estimation using the calculated statistical value. Processing equipment.
前記データを用いて、前記ネットワークインタフェースがデータの送受信を行える状態になったことを検出する検出手段を有し、
前記推定手段は、データの送受信を行える状態になった時点が最も早い前記ネットワークインタフェースが、物理的なネットワークインタフェースであると推定する、請求項1に記載の情報処理装置。
Using the data, the detection means for detecting that the network interface is ready to send and receive data,
The information processing apparatus according to claim 1, wherein the estimation unit estimates that the network interface that is earliest when the data can be transmitted and received is a physical network interface.
前記受信したデータの履歴を用いて、前記ネットワークインタフェースがデータの送受信を行える状態であるか否かを判定する判定手段を有し、
前記推定手段は、第1の前記ネットワークインタフェースがデータの送受信を行えない状態であり、かつ第1の前記ネットワークインタフェースとは異なる第2の前記ネットワークインタフェースがデータの送受信を行える状態である場合に、第1の前記ネットワークインタフェースは仮想的なネットワークインタフェースであると推定する、請求項1に記載の情報処理装置。
Determination means for determining whether the network interface is in a state where data can be transmitted and received, using the history of the received data;
The estimating means is in a state where the first network interface cannot transmit and receive data, and a second network interface different from the first network interface is in a state where data can be transmitted and received. The information processing apparatus according to claim 1, wherein the first network interface is estimated to be a virtual network interface.
ネットワークインタフェースに対して送信データを送信する送信手段を有し、
前記受信手段は、前記送信データに対する応答データを受信し、
前記推定手段は、前記送信データの送信先のネットワークインタフェースと、その送信データに対する応答データの送信元のネットワークインタフェースが異なる場合、前記送信データの送信先のネットワークインタフェースが仮想的なネットワークインタフェースであると推定するか、又は前記応答データの受信元のネットワークインタフェースが物理的なネットワークインタフェースであると推定する請求項1に記載の情報処理装置。
A transmission means for transmitting transmission data to the network interface;
The receiving means receives response data for the transmission data;
The estimation means is configured such that when the network interface of the transmission data is different from the network interface of the transmission source of response data to the transmission data, the network interface of the transmission data is a virtual network interface. The information processing apparatus according to claim 1, wherein the information processing apparatus estimates or estimates that a network interface that receives the response data is a physical network interface.
前記送信データは、ARP(Address Resolution Protocol)リクエスト又は NS(Neighbor Solicitation)メッセージであり、
ARP リクエストに対する応答データは ARP リプライであり、
NS メッセージに対する応答データは NA(Neighbor Advertisement)メッセージである請求項7に記載の情報処理装置。
The transmission data is an ARP (Address Resolution Protocol) request or NS (Neighbor Solicitation) message,
The response data for an ARP request is an ARP reply,
The information processing apparatus according to claim 7, wherein the response data to the NS message is an NA (Neighbor Advertisement) message.
前記受信手段は、複数の前記ネットワークインタフェースからデータを受信し、
複数の前記ネットワークインタフェースそれぞれから受信したデータを用いて、1つの レイヤ2アドレスに対して IPv4(Internet Protocol version 4)アドレスが複数対応付けられているか否か、又は1つのレイヤ2アドレスに対して同一スコープの IPv6(IP version 6)アドレスが複数対応付けられているか否かを判定する判定手段を有し、
前記推定手段は、1つのレイヤ2アドレスに対して IPv4 アドレスが複数対応付けられているか、又は 1つのレイヤ2アドレスに対して同一スコープの IPv6 アドレスが複数対応付けられている場合に、そのレイヤ2アドレスを持つネットワークインタフェースが、物理的なネットワークインタフェースであると推定する、請求項1に記載の情報処理装置。
The receiving means receives data from a plurality of the network interfaces,
Whether multiple IPv4 (Internet Protocol version 4) addresses are associated with one layer 2 address using data received from each of the plurality of network interfaces, or the same for one layer 2 address A determination means for determining whether or not a plurality of scope IPv6 (IP version 6) addresses are associated;
The estimation means determines that when a plurality of IPv4 addresses are associated with one layer 2 address, or when a plurality of IPv6 addresses of the same scope are associated with one layer 2 address, the layer 2 The information processing apparatus according to claim 1, wherein the network interface having an address is estimated to be a physical network interface.
前記ネットワークインタフェースから受信するデータは、そのネットワークインタフェースに関する情報又はそのネットワークインタフェースを動作させているマシンに関する情報を示しており、
前記推定手段は、前記ネットワークインタフェースに関する情報又はそのネットワークインタフェースを動作させているマシンに関する情報を用いて、そのネットワークインタフェースについて前記推定を行う、請求項1に記載の情報処理装置。
The data received from the network interface indicates information about the network interface or information about a machine operating the network interface,
The information processing apparatus according to claim 1, wherein the estimation unit performs the estimation for the network interface using information about the network interface or information about a machine that operates the network interface.
前記推定手段は、前記ネットワークインタフェースの名前、又はそのネットワークインタフェースを用いて動作しているマシンに割り当てられたホスト名を用いて、そのネットワークインタフェースについて前記推定を行う、請求項10に記載の情報処理装置。   11. The information processing according to claim 10, wherein the estimation means performs the estimation for the network interface using a name of the network interface or a host name assigned to a machine operating using the network interface. apparatus. 物理ネットワークインタフェースであると推定されたネットワークインタフェースと、仮想ネットワークインタフェースであると推定されたネットワークインタフェースとの対応付けを行う対応付け手段を有する、請求項1乃至11に記載の情報処理装置。   The information processing apparatus according to claim 1, further comprising an association unit configured to associate a network interface estimated to be a physical network interface with a network interface estimated to be a virtual network interface. コンピュータを、請求項1乃至12いずれか一項に記載の情報処理装置として動作させるプログラム。   A program that causes a computer to operate as the information processing apparatus according to any one of claims 1 to 12. コンピュータによって実行される制御方法であって、
データを受信する受信ステップと、
前記受信されたデータを用いて、そのデータの送信元のネットワークインタフェースが、物理的なネットワークインタフェースと仮想的なネットワークインタフェースのどちらであるかの推定を行う推定ステップと、
を有する制御方法。
A control method executed by a computer,
A receiving step for receiving data;
Using the received data, an estimation step for estimating whether a network interface of a transmission source of the data is a physical network interface or a virtual network interface;
A control method.
JP2015080974A 2015-04-10 2015-04-10 Information processing device, program, and control method Pending JP2016201690A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015080974A JP2016201690A (en) 2015-04-10 2015-04-10 Information processing device, program, and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015080974A JP2016201690A (en) 2015-04-10 2015-04-10 Information processing device, program, and control method

Publications (1)

Publication Number Publication Date
JP2016201690A true JP2016201690A (en) 2016-12-01

Family

ID=57424502

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015080974A Pending JP2016201690A (en) 2015-04-10 2015-04-10 Information processing device, program, and control method

Country Status (1)

Country Link
JP (1) JP2016201690A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019235101A1 (en) * 2018-06-04 2019-12-12 日本電信電話株式会社 Time-adding method, time-adding device, and program

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019235101A1 (en) * 2018-06-04 2019-12-12 日本電信電話株式会社 Time-adding method, time-adding device, and program
JP2019213033A (en) * 2018-06-04 2019-12-12 日本電信電話株式会社 Time providing method, time providing device, and program
JP7073920B2 (en) 2018-06-04 2022-05-24 日本電信電話株式会社 Time setting method, time setting device and program
US11349586B2 (en) 2018-06-04 2022-05-31 Nippon Telegraph And Telephone Corporation Time stamping method, time stamping apparatus and program

Similar Documents

Publication Publication Date Title
CN106576118B (en) Dynamic DNS-based service discovery
US8176529B2 (en) Apparatus and method for controlling devices in one or more home networks
CA2419512C (en) System and method for locating devices on a local area network
CN110247784B (en) Method and device for determining network topology structure
JP2007335923A (en) Network system, and server
WO2019165775A1 (en) Local area network equipment searching method and searching system
CN108900351B (en) Intranet equipment type identification method and device
JP2007208317A (en) Domain name system
WO2014079005A1 (en) Mac address mandatory forwarding device and method
CN108965036B (en) Method, system, server and storage medium for configuring cross-public network equipment mutual access
JP2008033409A (en) Asset management system and method, information processor, management device and program
JP2020031305A (en) Multi-cloud operation program and multi-cloud operation method
CN114189492A (en) Network card pressure testing method and system based on network address translation technology
JP2013026993A (en) Node detection device, node detection method, and program
JP6194128B2 (en) Network system, address management apparatus and address management method
JP2016201690A (en) Information processing device, program, and control method
US10904037B2 (en) Relaying apparatus, relaying method, and relaying system
US9369429B1 (en) Associating text strings with numeric numbers for IP address management
JP2016201691A (en) Information processing device, program, and control method
US11949660B2 (en) Methods for enabling enhanced firewall rules via ARP-based annotations
JP2015046716A (en) Communication node and network system and apparatus control method
TWI556610B (en) Internal network system on a local area network and method of communication in an internal network system on a local area network
JP2016158116A (en) Lan access method and address registration server
Dijkstra et al. Using zero configuration technology for IP addressing in optical networks
EP3113459A1 (en) Method for managing a local network