JP4417993B2 - Network virtualization system, relay device, and program - Google Patents
Network virtualization system, relay device, and program Download PDFInfo
- Publication number
- JP4417993B2 JP4417993B2 JP2007302053A JP2007302053A JP4417993B2 JP 4417993 B2 JP4417993 B2 JP 4417993B2 JP 2007302053 A JP2007302053 A JP 2007302053A JP 2007302053 A JP2007302053 A JP 2007302053A JP 4417993 B2 JP4417993 B2 JP 4417993B2
- Authority
- JP
- Japan
- Prior art keywords
- capture
- client terminal
- virtual
- program
- setting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 claims description 108
- 238000000034 method Methods 0.000 claims description 67
- 230000008569 process Effects 0.000 claims description 59
- 238000001914 filtration Methods 0.000 claims description 29
- 230000004044 response Effects 0.000 claims description 21
- 238000004891 communication Methods 0.000 claims description 17
- 230000007246 mechanism Effects 0.000 claims description 5
- 238000013481 data capture Methods 0.000 claims description 4
- 230000005641 tunneling Effects 0.000 claims description 4
- 230000003213 activating effect Effects 0.000 claims 2
- 230000000694 effects Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 18
- 230000005540 biological transmission Effects 0.000 description 12
- 238000013500 data storage Methods 0.000 description 9
- 230000004913 activation Effects 0.000 description 8
- 238000007726 management method Methods 0.000 description 4
- 239000000470 constituent Substances 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000008054 signal transmission Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000033772 system development Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000007958 sleep Effects 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Description
本発明は、例えばTCP/IPのようなアンダーレイネットワーク上に、仮想的なイーサネット(登録商標)のようなオーバレイネットワークを構築するネットワーク仮想化システム、そのシステムに備えられる中継装置、およびその中継装置に適用されるプログラムに関する。 The present invention relates to a network virtualization system for constructing an overlay network such as virtual Ethernet (registered trademark) on an underlay network such as TCP / IP, a relay device provided in the system, and a relay device thereof Relates to the program applied to.
例えば、TCP/IPネットワークのような既存の物理的なネットワーク(以後、「アンダーレイネットワーク」と称する)上に、ソフトウェアにて構築する仮想的なネットワークをオーバレイネットワークと呼ぶ。 For example, a virtual network constructed by software on an existing physical network (hereinafter referred to as “underlay network”) such as a TCP / IP network is referred to as an overlay network.
主なオーバレイネットワーク(以後、「仮想ネットワーク」とも称する)として、仮想ローカルエリアネットワーク(以後、「仮想LAN」と称する)がある。 As a main overlay network (hereinafter also referred to as “virtual network”), there is a virtual local area network (hereinafter referred to as “virtual LAN”).
仮想LANとして代表的なものに、ソフトイーサ株式会社製のSoftEther(PacketiX)(例えば、非特許文献1,2)がある。SoftEther(PacketiX)は仮想ネットワークの一例である仮想イーサネットを構築するソフトウェア群である。SoftEther(PacketiX)又はこれに類似したソフトウェアでの仮想イーサネットの構築方法は例えば以下の通りである。
A typical virtual LAN includes SoftEther (Packetix) (for example, Non-Patent
・ある計算機上にイーサネットスイッチングハブをエミュレートするソフトウェア(以後、「仮想ハブ」と称する)を動作させる(以後、仮想ハブを動作させる計算機を「サーバ」と称する。)。 Software that emulates an Ethernet switching hub (hereinafter referred to as “virtual hub”) is operated on a certain computer (hereinafter, the computer that operates the virtual hub is referred to as “server”).
・仮想イーサネットに参加を希望する計算機が、ソフトウェアにて構築された仮想的なネットワークインタフェース(以後、「仮想ネットワークインタフェース」と称する)を介して、仮想ハブに接続する(以後、仮想ネットワークインタフェースを動作させる計算機を「クライアント」と称する)。 A computer that wishes to participate in virtual Ethernet connects to a virtual hub via a virtual network interface (hereinafter referred to as a “virtual network interface”) constructed by software (hereinafter, the virtual network interface is operated). The computer to be called “client”).
・仮想ネットワークインタフェース−仮想ハブ間、すなわち、クライアント−サーバ間の通信には、アンダーレイネットワーク(TCP/IPネットワークなど)を使用する。 An underlay network (TCP / IP network or the like) is used for communication between the virtual network interface and the virtual hub, that is, between the client and the server.
このような仮想イーサネットの一般的な構成を図13に示す。 A general configuration of such a virtual Ethernet is shown in FIG.
例えばTCP/IPネットワークであるアンダーレイネットワーク150は、オーバレイネットワークである仮想イーサネット154を構築する基盤となる物理ネットワークである。アンダーレイネットワーク150は、ファイアウォール156、ルータ157、リンク層の通信装置(イーサネットならばハブやスイッチングハブ)により構成される。ルータ157は、TCP/IPネットワークを構成するネットワーク層の装置であり、一般的なものであることから、ここではその詳細な説明を割愛する。また、ファイアウォール156は、内部ネットワーク160と外部ネットワーク161との境界に設置されるセキュリティ装置であり、一般的なものであることからここではその詳細な説明を割愛する。
For example, the
クライアント153は、仮想イーサネット154を構成する仮想ハブ151に接続する計算機であり、仮想ネットワークインタフェース152を介して仮想ハブ151に接続する。仮想ハブ151は、このように複数のクライアント153とのコネクションを保持する中継ノードとして機能する。サーバ155は、このような仮想ハブ151を配置するネットワーク仮想化装置である。本明細書では、このようなネットワーク仮想化装置であるサーバ155と、ネットワーク仮想化装置によって制御される端末であるクライアント153とを合わせてネットワーク仮想化システムと称する。仮想イーサネット154は、一つ又は複数の仮想ハブ151に、それぞれ仮想ネットワークインタフェース152を持った複数のクライアント153が接続することにより構築される。
The
また、仮想イーサネットに限らず、イーサネットにおいては、ネットワーク上を流れるイーサネットフレームのキャプチャは、ネットワーク管理(構成管理、性能管理、不具合解析など)、或いは、システム開発の場面で広く行なわれており、代表的な方法は以下のようなものである。 In addition to virtual Ethernet, in Ethernet, capture of Ethernet frames that flow on the network is widely performed in network management (configuration management, performance management, failure analysis, etc.) or system development scenes. A typical method is as follows.
・イーサネットスイッチングハブ(或いは仮想ハブ)に接続している計算機のネットワークインタフェースドライバに対して、キャプチャすべき、或いは、キャプチャすべきでないイーサネットフレームを“フィルタ”として設定する。 • Set Ethernet frames that should or should not be captured as “filters” to the network interface driver of the computer connected to the Ethernet switching hub (or virtual hub).
・フィルタに設定する項目としては、送信元/宛先MACアドレス、イーサネットタイプ、送信元/宛先IPアドレス、ポート番号、上位プロトコル種別などが挙げられる。 Items to be set in the filter include a source / destination MAC address, an Ethernet type, a source / destination IP address, a port number, an upper protocol type, and the like.
・上記ネットワークインタフェースドライバは、設定されたフィルタの内容に従い、自局に到着するイーサネットフレームのキャプチャの要不要を判断し、キャプチャすべきものは、その内容を表示用フォーマットに変換後、ディスプレイデバイスに表示するか、或いは、キャプチャした内容をそのまま、ファイルシステム上のファイルに保存する。
ここで、上記キャプチャのための従来技術では、キャプチャ対象のイーサネットフレームを指定するためのフィルタの設定、及び、フィルタリング処理はクライアント側で実施される。よって、最終的にキャプチャされるもの以外のイーサネットフレームも、クライアントまで流入してしまうこととなり、特に仮想イーサネット環境においては、仮想ハブとクライアントの、アンダーレイネットワーク上での位置関係が遠隔である場合や、仮想ハブからクライアントへ流入するイーサネットフレームが多量である場合に、アンダーレイネットワークへ多大な負荷をかけることとなる。 Here, in the conventional technique for capture, the filter setting for specifying the Ethernet frame to be captured and the filtering process are performed on the client side. Therefore, Ethernet frames other than those finally captured will also flow into the client, especially in a virtual Ethernet environment, where the location of the virtual hub and client on the underlay network is remote In addition, when there are a large number of Ethernet frames flowing from the virtual hub to the client, a heavy load is applied to the underlay network.
本発明は上記実情に鑑みてなされたものであり、仮想ネットワーク環境において、キャプチャ対象ではないフレームの仮想ハブからクライアントへの流入を防止し、アンダーレイネットワークへの不要な負荷を低減するネットワーク仮想化システム、中継装置、およびプログラムを提供することを目的とする。 The present invention has been made in view of the above circumstances, and in a virtual network environment, network virtualization that prevents a non-captured frame from flowing into a client from a virtual hub and reduces unnecessary load on the underlay network. It is an object to provide a system, a relay device, and a program.
本発明の一態様によれば、ソフトウェアによる仮想ハブを形成する中継装置と、前記仮想ハブを経由して仮想ネットワーク通信を行う複数のクライアント端末と、を具備するネットワーク仮想化システムにおいて、少なくとも1つのクライアント端末は、データのキャプチャ処理を行う第1のキャプチャ処理手段を具備し、この第1のキャプチャ処理手段は、キャプチャ処理の結果を表示デバイスに出力する手段と、前記キャプチャ処理を行なわずに、当該クライアント端末の記憶領域に保存されているキャプチャデータを表示デバイスに出力するモードの設定を可能とする手段と、当該クライアント端末の記憶領域に保存されているキャプチャデータを取得せずに、前記仮想ハブの記憶領域に保存されているキャプチャデータを取得するモードの設定を可能とする手段とを具備し、前記クライアント端末は、前記仮想ハブに対しデータのキャプチャ処理に関する要求を行う処理要求手段を具備し、当該処理要求手段は、前記仮想ハブ上の、当該クライアント端末を収容するポート以外の全ポート間、或いは一部のポート間のトラフィックを、当該クライアント端末を収容するポートへミラーリングするモードの設定を可能とする手段と、前記仮想ハブ上の、当該クライアント端末を収容するポートで、フレームに対するフィルタ設定および当該設定に基づくフィルタリングを行なうモードの設定を可能とする手段と、前記仮想ハブ上の、当該クライアント端末を収容するポートで、キャプチャデータを当該クライアント端末へ送出せずに、前記仮想ハブの記憶領域に保存するリダイレクトを行なうモードの設定を可能とする手段と、前記仮想ハブ上の、当該クライアント端末を収容するポートでキャプチャ処理を行なわずに、既にキャプチャされ前記仮想ハブの記憶領域に保存されているキャプチャデータを当該クライアント端末に送信するモードの設定を可能とする手段とを具備し、前記仮想ハブは、任意のクライアント端末からの要求に応じたキャプチャ処理を行う第2のキャプチャ処理手段を具備し、この第2のキャプチャ処理手段は、要求元のクライアント端末を収容するポートへ、他の全てのポート間、或いは一部のポート間のトラフィックをミラーリングする手段と、要求元のクライアント端末を収容するポートで、要求元のクライアント端末へ送出する前のフレーム、或いは、当該仮想ハブの記憶領域に保存する前のフレームに対するフィルタ設定および当該設定に基づくフィルタリングを行なう手段と、要求元のクライアント端末を収容するポートで、キャプチャデータを要求元のクライアント端末へ送出する手段と、要求元のクライアント端末を収容するポートで、キャプチャデータを要求元のクライアント端末へ送出せずに、当該仮想ハブの記憶領域に保存するリダイレクトを行なう手段と、要求元のクライアント端末を収容するポートから当該仮想ハブに流入するトラフィックに対しては、キャプチャデータを当該仮想ハブの記憶領域に保存するリダイレクトを行う場合を除いては、キャプチャ処理の対象外とする手段と、要求元のクライアント端末へ、既にキャプチャされ当該仮想ハブの記憶領域に保存されているキャプチャデータを送信する手段と、要求元のクライアント端末へ、要求元のクライアント端末宛のユニキャストフレーム、ブロードキャストフレーム、マルチキャストフレームを、要求元のクライアント端末が要求するフィルタリングもしくはリダイレクトの設定に関わらず、送信する手段とを具備することを特徴とするネットワーク仮想化システムが提供される。 According to one aspect of the present invention, in a network virtualization system comprising: a relay device that forms a virtual hub by software; and a plurality of client terminals that perform virtual network communication via the virtual hub, The client terminal includes a first capture processing unit that performs data capture processing. The first capture processing unit includes a unit that outputs a result of the capture processing to a display device, and without performing the capture processing. Means for enabling setting of a mode for outputting capture data stored in the storage area of the client terminal to a display device, and the virtual data without acquiring the capture data stored in the storage area of the client terminal; Module for acquiring capture data stored in the storage area of the hub The client terminal comprises processing request means for making a request for data capture processing to the virtual hub, the processing request means on the virtual hub, Means for enabling setting of a mode for mirroring traffic between all ports other than the port accommodating the client terminal or a part of the ports to a port accommodating the client terminal; Means for enabling filter setting for a frame at a port accommodating a client terminal and setting of a mode for performing filtering based on the setting; and capture data at the port accommodating the client terminal on the virtual hub. The data is saved in the storage area of the virtual hub without sending it to the terminal. Means for enabling setting of a mode for performing the capture, and capture data that has already been captured and stored in the storage area of the virtual hub without performing a capture process at the port accommodating the client terminal on the virtual hub The virtual hub includes a second capture processing unit that performs a capture process in response to a request from an arbitrary client terminal. The second capture processing means includes means for mirroring traffic between all other ports or a part of ports to a port accommodating the requesting client terminal, and a port accommodating the requesting client terminal. The frame before being sent to the requesting client terminal or the storage area of the virtual hub. A means for performing filter setting for a previous frame and filtering based on the setting, a means for sending capture data to a requesting client terminal at a port accommodating the requesting client terminal, and a requesting client terminal Means for performing a redirect to save the captured data in the storage area of the virtual hub without sending capture data to the requesting client terminal, and traffic flowing into the virtual hub from the port accommodating the requesting client terminal For the above, except when performing a redirect to save the capture data in the storage area of the virtual hub, the means for excluding the capture process and the requesting client terminal have already captured the virtual hub. Capture data saved in the storage area And means for transmitting to the requesting client terminal a unicast frame, broadcast frame, or multicast frame addressed to the requesting client terminal regardless of the filtering or redirection setting requested by the requesting client terminal A network virtualization system is provided.
本発明の別の一態様によれば、ソフトウェアによる仮想ハブを形成し、前記仮想ハブを経由して仮想ネットワーク通信を行う複数のクライアント端末の中の任意のクライアント端末からの要求に応じたキャプチャ処理を行う中継装置において、要求元のクライアント端末を収容するポートへ、他の全てのポート間、或いは一部のポート間のトラフィックをミラーリングする手段と、要求元のクライアント端末を収容するポートで、要求元のクライアント端末へ送出する前のフレーム、或いは、当該仮想ハブの記憶領域に保存する前のフレームに対するフィルタ設定および当該設定に基づくフィルタリングを行なう手段と、要求元のクライアント端末を収容するポートで、キャプチャデータを要求元のクライアント端末へ送出する手段と、要求元のクライアント端末を収容するポートで、キャプチャデータを要求元のクライアント端末へ送出せずに、当該仮想ハブの記憶領域に保存するリダイレクトを行なう手段と、要求元のクライアント端末を収容するポートから当該仮想ハブに流入するトラフィックに対しては、キャプチャデータを当該仮想ハブの記憶領域に保存するリダイレクトを行う場合を除いては、キャプチャ処理の対象外とする手段と、要求元のクライアント端末へ、既にキャプチャされ当該仮想ハブの記憶領域に保存されているキャプチャデータを送信する手段と、要求元のクライアント端末へ、要求元のクライアント端末宛のユニキャストフレーム、ブロードキャストフレーム、マルチキャストフレームを、要求元のクライアント端末が要求するフィルタリングもしくはリダイレクトの設定に関わらず、送信する手段とを具備することを特徴とする中継装置が提供される。 According to another aspect of the present invention, a capture process corresponding to a request from an arbitrary client terminal among a plurality of client terminals that forms a virtual hub by software and performs virtual network communication via the virtual hub. In the relay device that performs the request, the means for mirroring the traffic between all other ports or between some ports to the port accommodating the requesting client terminal and the port accommodating the requesting client terminal A filter setting for a frame before being sent to the original client terminal or a frame before being saved in the storage area of the virtual hub, and means for performing filtering based on the setting, and a port accommodating the requesting client terminal, A means for sending capture data to the requesting client terminal, and a request Means for redirecting the captured data to the storage area of the virtual hub without sending the capture data to the requesting client terminal, and the port accommodating the requesting client terminal. For traffic that flows into the hub, unless the redirect is to save the capture data in the storage area of the virtual hub, capture is already performed on the requesting client terminal and the means that is not subject to capture processing. Means for transmitting the capture data stored in the storage area of the virtual hub, and transmitting the unicast frame, broadcast frame, and multicast frame addressed to the requesting client terminal to the requesting client terminal. Filtering requested by Regardless redirection settings, the relay device is provided which is characterized by comprising: means for transmitting.
本発明の更なる別の一態様によれば、ソフトウェアによる仮想ハブを形成し、前記仮想ハブを経由して仮想ネットワーク通信を行う複数のクライアント端末の中の任意のクライアント端末からの要求に応じたキャプチャ処理を行う中継装置に適用されるプログラムであって、要求元のクライアント端末を収容するポートへ、他の全てのポート間、或いは一部のポート間のトラフィックをミラーリングする機能と、要求元のクライアント端末を収容するポートで、要求元のクライアント端末へ送出する前のフレーム、或いは、当該仮想ハブの記憶領域に保存する前のフレームに対するフィルタ設定および当該設定に基づくフィルタリングを行なう機能と、要求元のクライアント端末を収容するポートで、キャプチャデータを要求元のクライアント端末へ送出する機能と、要求元のクライアント端末を収容するポートで、キャプチャデータを要求元のクライアント端末へ送出せずに、当該仮想ハブの記憶領域に保存するリダイレクトを行なう機能と、要求元のクライアント端末を収容するポートから当該仮想ハブに流入するトラフィックに対しては、キャプチャデータを当該仮想ハブの記憶領域に保存するリダイレクトを行う場合を除いては、キャプチャ処理の対象外とする機能と、要求元のクライアント端末へ、既にキャプチャされ当該仮想ハブの記憶領域に保存されているキャプチャデータを送信する機能と、要求元のクライアント端末へ、要求元のクライアント端末宛のユニキャストフレーム、ブロードキャストフレーム、マルチキャストフレームを、要求元のクライアント端末が要求するフィルタリングもしくはリダイレクトの設定に関わらず、送信する機能とをコンピュータに実現させることを特徴とするプログラムが提供される。 According to still another aspect of the present invention, a virtual hub is formed by software, and a request from an arbitrary client terminal among a plurality of client terminals performing virtual network communication via the virtual hub is met. A program that is applied to a relay device that performs capture processing, a function that mirrors traffic between all other ports or some ports to the port that accommodates the requesting client terminal, and the request source A function for performing filter setting and filtering based on the frame before sending to the requesting client terminal or the frame before saving in the storage area of the virtual hub at the port accommodating the client terminal; The port that accommodates the client terminal of the client A function for sending to the terminal, a port for accommodating the requesting client terminal, a function for performing a redirect to save the capture data in the storage area of the virtual hub without sending the capture data to the requesting client terminal, For traffic flowing into the virtual hub from the port accommodating the client terminal, except for performing a redirect to save the capture data in the storage area of the virtual hub, A function for transmitting capture data that has already been captured and stored in the storage area of the virtual hub to the requesting client terminal, and to the requesting client terminal, a unicast frame, a broadcast frame addressed to the requesting client terminal, Requests the multicast frame to the requesting client terminal Regardless required to filter or redirection settings, the program for causing and a function of transmitting to the computer is provided.
本発明によれば、仮想ネットワーク環境において、キャプチャ対象ではないフレームの仮想ハブからクライアントへの流入を防止し、アンダーレイネットワークへの不要な負荷を低減することが可能となる。 According to the present invention, in a virtual network environment, it is possible to prevent a frame that is not a capture target from flowing from a virtual hub to a client, and to reduce an unnecessary load on the underlay network.
以下、図面を参照して、本発明の実施の形態について説明する。 Embodiments of the present invention will be described below with reference to the drawings.
<各実施形態における共通事項>
以後では3つの実施形態を示すが、全ての実施形態に共通する実施上の方針を以下に説明する。
<Common items in each embodiment>
In the following, three embodiments will be shown, but an implementation policy common to all the embodiments will be described below.
1. ユーザ(オペレータ)は、既存のキャプチャプログラムをそのまま、或いは、若干の使用方法変更のみで使うことができるようにする。 1. The user (operator) can use an existing capture program as it is or with only a slight change in usage.
可能な限り、ユーザに特別な手順を強いることなく実現するためである。 This is to realize the user without any special procedure as much as possible.
2. キャプチャを行なうクライアント端末(以後、「クライアント」と称する)上の他のアプリケーション、或いはOS(オペレーティングシステム)は、キャプチャ処理の実施の有無に関わらず、通常通り、イーサネットフレームの送受信を行なうことが出来る。 2. Other applications on the client terminal (hereinafter referred to as “client”) or OS (operating system) that captures data can transmit and receive Ethernet frames as usual, regardless of whether or not capture processing is performed. I can do it.
他のアプリケーションやOSの挙動に影響を与えないためである。もちろん、該当クライアントをキャプチャ専用のマシンとして動作させる場合にはこの限りではない。 This is because it does not affect the behavior of other applications or the OS. Of course, this is not the case when the corresponding client is operated as a capture-dedicated machine.
3. 中継装置としてのサーバ装置(以後、「サーバ」と称する)により形成される仮想ハブ(中継ノード)上を流れる全てのイーサネットフレーム(以後、「トラフィック」とも称する)をキャプチャ、フィルタリングの対象とすることができる。 3. Capture and filter all Ethernet frames (hereinafter also referred to as “traffic”) flowing on a virtual hub (relay node) formed by a server device (hereinafter referred to as “server”) as a relay device. can do.
通常のイーサネットスイッチングハブは、いわゆる“バス”構造ではないため、あるポートでは、該当イーサネットスイッチングハブ上を流れるイーサネットフレームのうちの一部しか観測することは出来ない。具体的には、ブロードキャストフレーム、マルチキャストフレーム、及び、そのポートに接続しているクライアントが送信元か或いは宛先であるユニキャストフレームのみ、観測可能である。 Since an ordinary Ethernet switching hub does not have a so-called “bus” structure, only a part of an Ethernet frame flowing on the Ethernet switching hub can be observed at a certain port. Specifically, only broadcast frames, multicast frames, and unicast frames whose transmission source or destination is a client connected to the port can be observed.
仮想ハブも通常動作時には、イーサネットスイッチングハブとして、つまり、前述のように動作するが、キャプチャを実行しようとしているクライアントからの特別な指示により、そのクライアントが接続している仮想ポート(仮想ハブがクライアントを収容する仮想的なポート)へは、仮想ハブ上を流れる全ての、或いは、指定のイーサネットフレームをミラーする(もしくはミラーリングする)、特別なモードを用意する。ここでいう「ミラー(もしくはミラーリング)」とは、ある場所からある場所へ転送されるフレームの複製をリアルタイムに生成しつつそれを目的のポート等へ送る処理をいう。 During normal operation, the virtual hub also operates as an Ethernet switching hub, that is, as described above, but the virtual port to which the client is connected (virtual hub is the client by a special instruction from the client attempting to capture). A special mode is prepared for mirroring (or mirroring) all or specified Ethernet frames flowing on the virtual hub. Here, “mirror (or mirroring)” refers to a process of generating a copy of a frame transferred from a place to a place in real time and sending it to a target port or the like.
なお、後述の通り、上記ミラーされたイーサネットフレームが全てクライアントまで流入するわけではない。フィルタリング処理が行なわれると、クライアントまで流入しないものがある。 As described later, not all the mirrored Ethernet frames flow into the client. When filtering processing is performed, there are some that do not flow to the client.
<第1の実施形態>
ここでは、クライアント1側にて、既存のキャプチャプログラムへのラッパの形により本提案の機能を実現する方法を説明する。また、仮想ハブ側での処理については、全ての実施形態にて共通であるあるが、説明の順番上、本実施形態にて詳述する。
<First Embodiment>
Here, a method for realizing the proposed function in the form of a wrapper to an existing capture program on the
図1は、本実施形態に係るネットワーク仮想化システムを構成するクライアント1の構成例を示す図である。また、図2は、本実施形態に係るネットワーク仮想化システムを構成するサーバ装置(中継装置)により形成される仮想ハブ50の構成例を示す図である。なお、図2に示す仮想ハブ50の構成は本実施形態固有のものではなく、全実施形態で共通である。
FIG. 1 is a diagram illustrating a configuration example of a
図1に示すクライアント1は、カーネル10およびユーザランド20を含む。カーネル10は、物理ネットワークインタフェース11、ネットワークインタフェースドライバ12、イーサネット層13、TCP/IP14、仮想ネットワークインタフェースカーネル部(トンネルインタフェース)15、およびパケットキャプチャモジュール16を有する。一方、ユーザランド20は、仮想ネットワークインタフェースユーザプログラム部21、ラッパプログラム23、アプリケーションプログラム群29などを有する。仮想ネットワークインタフェースユーザプログラム部21は、制御モジュール22などを含む。また、ラッパプログラム23は、モード設定モジュール24、フィルタ設定モジュール25、キャプチャファイル取得モジュール26、キャプチャプログラム27、キャプチャ終了モジュール28などを含む。
The
図2に示す仮想ハブ50は、クライアント毎に対応する仮想ポート51、イーサネットスイッチングモジュール52、フィルタモジュール53、制御モジュール54、キャプチャデータ保存部55、キャプチャファイル提供モジュール56などを有する。また、仮想ハブ50は、クライアント1(及び2,3,4)の仮想ネットワークインタフェースと接続する仮想的なイーサネットケーブルである仮想イーサネットコネクション60を形成する。なお、図2中に示されるクライアント2,3,4は、図1に示すクライアント1と同じ機能を有する。
The
[構成要素の概要]
以下、図1および図2を参照して、それぞれの機能要素の概要を説明する。
[Component Overview]
Hereinafter, an outline of each functional element will be described with reference to FIGS. 1 and 2.
1. クライアント1(及び2,3,4)
クライアント1は、仮想ハブ50にアンダーレイネットワークを使用して仮想的にイーサネット接続する計算機である。本実施形態では、UNIX(登録商標)などのOSに実装されているトンネルインタフェースの仕組みを利用して仮想ネットワークインタフェースを実装したものである。図1にクライアント1の典型的なプロトコルスタック、モジュール構成を示す。
1. Client 1 (and 2, 3, 4)
The
- 物理ネットワークインタフェース11
物理ネットワークインタフェース11は、いわゆるネットワークインタフェースと呼ばれているものである。
-
The
- ネットワークインタフェースドライバ12
ネットワークインタフェースドライバ12は、ネットワークインタフェースを動作させるためのOS内のソフトウェアである。
-
The
- イーサネット層13
イーサネット層13は、イーサネットのプロトコルを用いた通信を行うレイヤーである。
-
The
- TCP/IP14
TCP/IP14は、IP及びTCPまたはUDP等のトランスポート層プロトコルを用いた通信を行うレイヤーである。
-TCP / IP14
The TCP /
- 仮想ネットワークインタフェースカーネル部(トンネルインタフェース)15
仮想ネットワークインタフェースカーネル部(トンネルインタフェース)15は、各種OSなどに実装されているトンネルインタフェースであり、後述の仮想ネットワークインタフェースユーザプログラム部21と連携し、仮想ネットワークインタフェースを構成する。
-Virtual network interface kernel part (tunnel interface) 15
A virtual network interface kernel unit (tunnel interface) 15 is a tunnel interface implemented in various OSs, and configures a virtual network interface in cooperation with a virtual network interface
なお、OS、ユーザランドのプログラム群の観点では、仮想ネットワークインタフェースカーネル部(トンネルインタフェース)15の識別名が仮想ネットワークインタフェースの識別名となる。 From the viewpoint of the OS and userland program group, the identification name of the virtual network interface kernel unit (tunnel interface) 15 is the identification name of the virtual network interface.
つまり、ネットワークインタフェース名を指定する必要がある場面では、仮想ネットワークインタフェースカーネル部(トンネルインタフェース)15の識別名を使用する。 That is, in a situation where it is necessary to specify a network interface name, the identification name of the virtual network interface kernel unit (tunnel interface) 15 is used.
- パケットキャプチャモジュール16
パケットキャプチャモジュール16は、各種OSに実装されているカーネル内のパケットキャプチャモジュールであり、後述のキャプチャプログラム27からの設定により、イーサネットフレームのフィルタリング、キャプチャ処理を行なう。
-
The
通常、パケットキャプチャモジュール16は、ネットワークインタフェースドライバ12及びカーネル内のイーサネット層13にて、イーサネットフレームのフィルタリング、キャプチャを行なう。
Normally, the
- 仮想ネットワークインタフェースユーザプログラム部21
仮想ネットワークインタフェースユーザプログラム部21は、仮想ネットワークインタフェースカーネル部(トンネルインタフェース)15と連携し、仮想ネットワークインタフェースを構成するユーザランドのプログラムであり、イーサネットフレームを処理するイーサネット処理モジュール(不図示)、および仮想ハブ50と制御情報をやりとりする制御モジュール22により構成される。
-Virtual network interface
The virtual network interface
- ラッパプログラム23
ラッパプログラム23は、後述のモード設定モジュール24、フィルタ設定モジュール25、キャプチャファイル取得モジュール26、キャプチャプログラム27、キャプチャ終了モジュール28を内部的に呼び出すことで、本提案の中心部分であるフィルタリング、キャプチャ処理(本来ならばクライアント1上のパケットキャプチャモジュール16が行なう)を仮想ハブ50側で処理可能にするプログラムであり、オペレータは、キャプチャプログラム27を直接使うのではなく、本プログラムを使用することとなる。
-
The
ラッパプログラム23では、以下の「仮想ネットワークインタフェース」、「ミラーモード」、「フィルタ設定」、「リダイレクトモード」に関してパラメータで各種の指定を行うことが可能である。
In the
* 仮想ネットワークインタフェース(パラメータ指定は必須)
イーサネットフレームのキャプチャを実行する仮想ネットワークインタフェースを指定する。
* Virtual network interface (parameter specification is required)
Specifies the virtual network interface that performs Ethernet frame capture.
* ミラーモード(パラメータ指定は省略可能)
仮想ハブ50のイーサネットスイッチングモジュール52のモードを指定する。以下の3つのモードがある(詳細は後述)。
* Mirror mode (parameter specification can be omitted)
The mode of the
i. 通常モード(ミラーモードのパラメータ指定が省略された場合)
仮想ハブ50は通常のイーサネットスイッチングハブとして動作する。つまり、ブロードキャストフレーム、マルチキャストフレーム、宛先がキャプチャ対象の仮想ポートに収容しているクライアントであるユニキャストフレームのみがキャプチャ対象となる。
i. Normal mode (when parameter specification of mirror mode is omitted)
The
ii. 全ミラーモード
仮想ハブ50の全てのトラフィックをキャプチャ対象とする。
ii. Full mirror mode
All traffic of the
iii. 部分ミラーモード
仮想ハブ50の一部の仮想ポート間のトラフィックをキャプチャ対象とする。
iii. Partial mirror mode
Traffic between some virtual ports of the
* フィルタ設定(パラメータ指定は省略可能)
キャプチャ対象のイーサネットフレームを決定するためのフィルタリングに使用される。
* Filter setting (parameter specification can be omitted)
Used for filtering to determine the Ethernet frame to be captured.
* リダイレクトモード(パラメータ指定は省略可能)
キャプチャデータの出力先などを指定する。以下のモードがある。
* Redirect mode (parameter specification can be omitted)
Specify the output destination of capture data. The following modes are available.
i. 通常モード(リダイレクトモードのパラメータ指定が省略された場合)
キャプチャされたイーサネットフレームの出力先を表示デバイスとする。
i. Normal mode (when parameter specification for redirect mode is omitted)
The output destination of the captured Ethernet frame is the display device.
ii. ファイル保存モード
キャプチャされたイーサネットフレームの出力先をファイルとする。
ii. File save mode
The output destination of the captured Ethernet frame is a file.
iii. ファイル読み出しモード
実際にはキャプチャ処理を行なわず、上記ファイル保存モードにて保存されたファイルを読み出し、表示デバイスに出力する。
iii. File read mode
Actually, the capture process is not performed, and the file stored in the file storage mode is read and output to the display device.
以下に、ラッパプログラム23が使用する各モジュールの動作を説明する。
The operation of each module used by the
* モード設定モジュール24
モード設定モジュール24は、ラッパプログラム23から呼び出され、仮想ハブ50のイーサネットスイッチングモジュール52、仮想ポートの各種モード(ミラーモード、リダイレクトモード)の設定を行なう。
*
The
* フィルタ設定モジュール25
フィルタ設定モジュール25は、ラッパプログラム23から呼び出され、仮想ハブ50上におけるフィルタ設定の指示を出す。
*
The
* キャプチャファイル取得モジュール26
キャプチャファイル取得モジュール26は、ラッパプログラム23から呼び出され、仮想ハブ50のファイルシステム上のファイルとしてキャプチャデータ保存部55に保存されているキャプチャデータを取得(入力)し、ローカルのファイルシステムFに保存する。
* Capture
The capture
なお、キャプチャファイル取得モジュール26、及び、仮想ハブ50のキャプチャファイル提供モジュール56は、一般的なファイル転送プロトコル(FTPやSCPなど)のクライアントとサーバを想定している。
Note that the capture
* キャプチャプログラム27
キャプチャプログラム27は、ラッパプログラム23から呼び出され、上記パケットキャプチャモジュール16へのフィルタの設定、キャプチャ実行の指示を出すユーザランドのプログラムであり、各種OSに標準で搭載されていることが多い。
*
The
* キャプチャ終了モジュール28
キャプチャ終了モジュール28は、ラッパプログラム23から呼び出され、仮想ハブ50へ、クリーンアップ処理の指示などを出す。
*
The
2. 仮想ハブ
仮想ハブ50は、イーサネットスイッチングハブをエミュレートするソフトウェアである。以下のような複数の仮想ポートや各種のモジュールにより構成される。
2. Virtual Hub The
- 仮想ポート51
前述のクライアント1の仮想イーサネットコネクション60の端点であり、通常のイーサネットスイッチングハブでのポートに該当する。
-
This is the end point of the
なお、イーサネットフレームのキャプチャを実行するクライアントを収容する仮想ポート51を、特にミラーポートと呼ぶこととする。
The
また、ミラーポートである仮想ポート51は、以下のモードを持つ。
The
a) 通常キャプチャモード
イーサネットスイッチングモジュール52から流入するイーサネットフレームを、クライアント1との仮想イーサネットコネクション60へ送出する。
a) Normal capture mode An Ethernet frame flowing from the
b) リダイレクトモード
イーサネットスイッチングモジュール52から流入するイーサネットフレーム、及び、クライアントからのイーサネットフレームをキャプチャデータ保存部55へ送出する(ファイルへ保存する)。
b) Redirect mode The Ethernet frame flowing in from the
なお、制御モジュール54によりフィルタが設定されている場合には、イーサネットフレームをクライアント1との仮想イーサネットコネクション60、或いは、キャプチャデータ保存部55へ送出する前に、フィルタモジュール53を介してフィルタリング処理を行なう。
If the filter is set by the
ただし、クライアント上のアプリケーションプログラム群、及びOSが、イーサネットフレームのキャプチャ処理の有無に関わらず、正常に自身宛のイーサネットフレームを受信できるようにするため、ブロードキャストフレーム、マルチキャストフレーム、及び、キャプチャ処理を実行しているクライアント向けのユニキャストフレームは、クライアントからの要求によるフィルタリング、リダイレクトの設定に関わらず、常にクライアントへ送出する。 However, in order to enable the application program group on the client and the OS to normally receive the Ethernet frame addressed to itself regardless of whether or not the Ethernet frame is captured, the broadcast frame, the multicast frame, and the capture process are performed. The unicast frame for the client being executed is always sent to the client regardless of the filtering and redirection settings according to the request from the client.
- イーサネットスイッチングモジュール52
イーサネットフレームをスイッチングするモジュールである。以下のモードを持つ。
-
This module switches Ethernet frames. Has the following modes:
a) 通常モード
いわゆるイーサネットスイッチングハブと同等のスイッチング処理を行なう。
a) Normal mode Performs the same switching process as a so-called Ethernet switching hub.
b) 全ミラーモード
制御モジュール54からの指示により、全ての仮想ポート51で送受信されるイーサネットフレームをミラーポートへコピーする。
b) All mirror mode In response to an instruction from the
c) 部分ミラーモード
制御モジュール54からの指示により、特定の仮想ポート51で送受信されるイーサネットフレームをミラーポートへコピーする。
c) Partial mirror mode In response to an instruction from the
- フィルタモジュール53
制御モジュール54によるフィルタ設定の内容に基づき、該当仮想ポート51へ流入するイーサネットフレームに対してフィルタリングを行なう。
-
Based on the contents of the filter setting by the
- 制御モジュール54
クライアントの仮想ネットワークインタフェースユーザプログラム部21と、制御メッセージを使用して制御情報をやりとりし、その制御情報の内容に基づきイーサネットスイッチングモジュール52、仮想ポート51、フィルタモジュール53の挙動を制御するモジュールである。
-
This module exchanges control information with the virtual network interface
- キャプチャデータ保存部55
フィルタモジュール53がフィルタリングしたキャプチャデータを保持する記憶領域である。一般的に、HDDやフラッシュメモリが使用され、キャプチャデータはファイルとして保存される。
-Capture
This is a storage area for holding capture data filtered by the
- キャプチャファイル提供モジュール56
クライアントのキャプチャファイル取得モジュール26からの指示に従い、キャプチャデータ保存部55から指定されたファイルを読み出し、クライアント1へ送信する。
-Capture
In accordance with an instruction from the capture
なお、前述の通り、キャプチャファイル提供モジュール56、及び、クライアント1のキャプチャファイル取得モジュール26は、一般的なファイル転送プロトコル(FTPやSCPなど)のサーバとクライアントを想定している。
As described above, the capture
なお、図中では省略しているが、仮想ハブ50は、上記以外にも、アンダーレイネットワークを使用してクライアント1との仮想イーサネットコネクション60を構成するネットワークプロトコルスタック(TCP/IPなど)や物理ネットワークインタフェース11も持つ。
Although not shown in the figure, the
3. 仮想イーサネットコネクション60
仮想ハブ50とクライアント1(及び2,3,4)の仮想ネットワークインタフェースとをアンダーレイネットワークにより接続する、仮想的なイーサネットケーブルであると考えることができる。
3.
It can be considered as a virtual Ethernet cable that connects the
仮想イーサネットコネクション60は、ユーザデータであるイーサネットフレームを運ぶユーザデータリンクと、仮想ネットワークインタフェースの仮想ネットワークインタフェースユーザプログラム部21と仮想ハブ50間で制御情報をやりとりするための制御リンクにより構成される。
The
図3の(a),(b)に本実施形態で使用される要求メッセージ,応答メッセージの各フォーマットをそれぞれ示す。その詳細については、次の“[処理詳細]”の説明の中で行なう。 3A and 3B show the format of the request message and the response message used in this embodiment, respectively. The details will be described in the following “[Details of processing]”.
[処理詳細]
以下、図4〜図10を参照して、各要素の処理シーケンスの詳細を説明する。
[Process Details]
The details of the processing sequence of each element will be described below with reference to FIGS.
ここでは、クライアント1と仮想ハブ50との間で行われる処理の例を挙げる。
Here, an example of processing performed between the
なお、イーサネットフレームのフィルタリング、キャプチャに関わる設定処理に主眼を置く一方、クライアントの仮想ハブ50への接続方法、ユーザデータ(イーサネットフレーム)/制御データの送受信処理やイーサネットフレームのスイッチング処理、フィルタリング処理など、本提案の主旨ではないものについての詳細な説明については割愛する。
While focusing on Ethernet frame filtering and setting related to capture, the client connection method to the
更に、クライアントにおける、ラッパプログラム23と仮想ネットワークインタフェースユーザプログラム部21間の通信手段は、プロセス間通信をはじめとして各種想定されるが、これも本提案の主旨ではないため、詳細は割愛する。
Further, various communication means between the
1. オペレータによるキャプチャ処理開始
オペレータの操作により、クライアント1上にてラッパプログラム23が起動する(図4中のステップS10)。
1. Start of capture processing by operator The
パラメータとして、仮想ネットワークインタフェース、フィルタ設定、リダイレクトモード、ミラーモードが指定可能である。 The virtual network interface, filter setting, redirect mode, and mirror mode can be specified as parameters.
2. リダイレクトモードのファイル読み出しモードの指定の有無チェック
ラッパプログラム23は、リダイレクトモードのファイル読み出しモードの指定の有無をチェックする(ステップS11)。
2. Check whether or not file read mode is specified in redirect mode The
指定されていない場合は、ステップS102へ、指定されている場合は以下の処理へ進む。 If not specified, the process proceeds to step S102. If specified, the process proceeds to the following process.
(a) ファイル名の有無のチェック
ラッパプログラム23は、ファイル名が指定されているか否かを確認し(図4中のS12)、ファイル名が指定されていない場合(ステップS12のNo)、処理を終了する(ステップS116)。
(A) Check for existence of file name The
(b) キャプチャファイル取得モジュール26の起動
ラッパプログラム23は、ファイル名をパラメータとして、キャプチャファイル取得モジュール26を起動し(ステップS13、図7中のステップS400)、その終了を待つ。
(B) Activation of Capture
(c) キャプチャファイル取得モジュール26/キャプチャファイル提供モジュール56によるファイル取得
キャプチャファイル取得モジュール26は、ラッパプログラム23から指定されたファイルの取得を仮想ハブ50のキャプチャファイル提供モジュール56に指示し(図7中のステップS401)、ファイルが取得できたら、取得したファイルをローカルのファイルシステムFに保存し(ステップS402〜S403)、処理を終了する(ステップS404)。一方で、キャプチャファイル提供モジュール56は、キャプチャファイル取得モジュール26からファイルの取得の要求を受け(図7中のステップS700〜S701)、指定されたファイルがあれば(ステップS702)、当該ファイルをキャプチャファイル取得モジュール26へ転送し(ステップS703)、処理を終了する(ステップS704)。
(C) File acquisition by the capture
なお、ファイル名が不正(仮想ハブ50のキャプチャデータ保存部55に該当ファイルが存在しないなど)の場合、キャプチャファイル取得モジュール26は異常終了する(図中のステップS14のNG、S116)。
If the file name is invalid (such as the file does not exist in the capture
なお、キャプチャファイル取得モジュール26、及び、仮想ハブ50のキャプチャファイル提供モジュール56は、一般的なファイル転送プロトコル(FTPやSCPなど)ライアントとサーバを想定しているため、ここでは詳細な説明を割愛する。
Note that the capture
(d) キャプチャファイル取得モジュール26の実行結果チェック
ラッパプログラム23は、キャプチャファイル取得モジュール26の処理結果をチェックし、以下の処理を行なう。
(D) Execution Result Check of Capture
・キャプチャファイル取得モジュール26が正常終了した場合
ファイル読み出しモードである旨とファイル名、及び、ラッパプログラム23のパラメータとしてフィルタパラメータが指定されていれば(ステップS14のOK)、それをパラメータとして、キャプチャプログラム27を起動する(ステップS113)。
When the capture
・キャプチャファイル取得モジュール26が異常終了した場合
キャプチャファイル取得モジュール26が異常終了した場合(ステップS14のNG)、処理を終了する(ステップS116)。
When the capture
3. 仮想ネットワークインタフェースパラメータのチェック
ラッパプログラム23は、オペレータが指定した仮想ネットワークインタフェースパラメータのチェックを行なう(ステップS102、S103)。
3. Checking virtual network interface parameters The
・仮想ネットワークインタフェースのパラメータ指定が省略された場合
仮想ネットワークインタフェースのパラメータ指定が省略された場合(ステップS102のNo)、処理を終了する(ステップS116)。
When the virtual network interface parameter specification is omitted When the virtual network interface parameter specification is omitted (No in step S102), the process ends (step S116).
・無効な仮想ネットワークインタフェースが指定された場合
指定された仮想ネットワークインタフェースがクライアント1上に存在しない場合、或いは、アクティブでない場合(S103のNo)、処理を終了する(ステップS116)。
When Invalid Virtual Network Interface is Specified If the designated virtual network interface does not exist on the
・有効な仮想ネットワークインタフェースが指定された場合
指定された仮想ネットワークインタフェースが存在し、かつ、アクティブである場合(S103のYes)、本パラメータをキャプチャプログラム27起動時に渡すために内部変数に記憶し、ステップS104へ進む。
When a valid virtual network interface is specified When the specified virtual network interface exists and is active (Yes in S103), this parameter is stored in an internal variable to be passed when the
4. フィルタ設定
(a) フィルタパラメータのチェック
ラッパプログラム23は、オペレータが指定したフィルタパラメータのチェックを行なう(ステップS104)。
4. Filter setting (a) Filter parameter check The
・フィルタパラメータが指定されていない場合
フィルタパラメータが指定されていない場合(ステップS104のNo)、ステップS107へ進む。
When the filter parameter is not specified When the filter parameter is not specified (No in step S104), the process proceeds to step S107.
・フィルタパラメータが指定されている場合
フィルタパラメータが指定されている場合(ステップS104のYes)、ステップS105へ進む。
When the filter parameter is specified When the filter parameter is specified (Yes in step S104), the process proceeds to step S105.
(b) フィルタ設定モジュール25の起動
ラッパプログラム23は、オペレータが指定したフィルタパラメータをパラメータとして、フィルタ設定モジュール25を起動し(図4中のステップS105、図5中のステップS200)、その終了を待つ。
(B) Activation of the
(c) フィルタ設定モジュール25によるフィルタ設定要求の送信
i. フィルタチェック
クライアント1のフィルタ設定モジュール25は、ラッパプログラム23から渡されたフィルタパラメータのチェックを行ない(図5中のステップS201)、異常ならば(ステップS201のNo)、エラーとしてラッパプログラム23へ制御を戻し、処理を終了する(ステップ205)。
(C) Transmission of filter setting request by the
i. Filter Check The
ii. フィルタ設定要求送信
一方、正常ならば、仮想ネットワークインタフェースユーザプログラム部21の制御モジュール22を介して、仮想ハブ50の制御モジュール54へフィルタ設定要求を送信し(ステップS202)、仮想ハブ50の制御モジュール54からのフィルタ設定応答を待つ(ステップS203)。
ii. Transmission of filter setting request On the other hand, if normal, a filter setting request is transmitted to the
フィルタ設定要求のフォーマットは図3(a)に示す通りで、ラッパプログラム23から指定されたフィルタ設定をフィルタデータ部に設定する。
The format of the filter setting request is as shown in FIG. 3A, and the filter setting designated by the
なお、フィルタ条件の指定方法は、送信元/宛先MACアドレス、イーサネットタイプ、送信元/宛先IPアドレス、送信元/宛先ポート番号、上位プロトコル番号など、一般的なキャプチャプログラム27と同等のものを想定しているが、具体的内容は本提案の主旨ではないため、詳細は割愛する。
The filter condition designation method is assumed to be the same as that of a
もし、タイムアウトした場合は(ステップS203のYes)、エラーとしてラッパプログラム23へ制御を戻し、処理を終了する(ステップS205)。
If a timeout has occurred (Yes in step S203), control is returned to the
(d) 仮想ハブ50の制御モジュール54によるフィルタ設定、及び、フィルタ設定応答の送信
仮想ハブ50の制御モジュール54は、クライアント1の制御モジュール22からフィルタ設定要求を受信すると(図9中のS600〜S602の「フィルタ設定」)、フィルタ設定要求からフィルタデータを取り出し、必要に応じてフィルタの記述フォーマットの変換処理を行なった後、クライアント1との仮想イーサネットコネクション60を収容している仮想ポート51、すなわち、ミラーポートのフィルタモジュール53にフィルタの設定を行なう(ステップS612)。
(D) Transmission of filter setting and filter setting response by
フィルタの設定が正常に終了すれば、処理結果が正常であるフィルタ設定応答をクライアント1の制御モジュール22へ送信し(ステップS613)、処理を終了する(ステップS614)。一方、フィルタの設定が異常終了した場合は、処理結果が異常であるフィルタ設定応答をクライアント1の制御モジュール22へ送信し、処理を終了する。
If the filter setting ends normally, a filter setting response indicating that the processing result is normal is transmitted to the
(e) フィルタ設定モジュール25によるフィルタ設定応答の受信
クライアント1のフィルタ設定モジュール25は、仮想ネットワークインタフェースユーザプログラム部21の制御モジュール22を介して、仮想ハブ50の制御モジュール54からフィルタ設定応答を受信すると(図5中のステップS204)、処理結果を戻り値として、ラッパプログラム23に制御を戻し(ステップS205)、処理を終了する。
(E) Reception of filter setting response by
(f) フィルタ設定モジュール25の実行結果チェック
ラッパプログラム23は、フィルタ設定モジュール25の戻り値をチェックし(図5中のステップS106)、以下の処理を行なう。
(F) Execution Result Check of
・フィルタ設定モジュール25が正常終了した場合
フィルタ設定モジュール25が正常終了した場合(ステップS106のOK)、指定されたフィルタパラメータの内容をキャプチャプログラム27起動時に渡すため、内部変数に記憶し、ステップS107へ進む。
When the
・フィルタ設定モジュール25が異常終了した場合
フィルタ設定モジュール25が異常終了した場合(ステップS106のNG)、処理を終了する(ステップS116)。
When the
5. 仮想ハブ動作モード設定
ラッパプログラム23は、ミラーモードパラメータ、リダイレクトモードパラメータのチェックを行ない(ステップS107)、以下の処理を行なう。
5. Virtual Hub Operation Mode Setting The
(a) ミラーモードパラメータ(全ミラーモード/部分ミラーモード)、リダイレクトモードパラメータ(ファイル保存モード)が指定されている場合(ステップS107のYes)
i. モード設定モジュール24の起動
ラッパプログラム23は、モード設定の内容(ミラーモードパラメータ(全ミラーモード/部分ミラーモード)、リダイレクトモードパラメータ(ファイル保存モード))をパラメータとして、モード設定モジュール24を起動し(ステップS108、図6中のステップS300)、その終了を待つ。
(A) When the mirror mode parameter (full mirror mode / partial mirror mode) and the redirect mode parameter (file storage mode) are specified (Yes in step S107)
i. Activation of
なお、部分ミラーモードの場合、どの仮想ポート51をミラーするかを指定する仮想ポート51のリストも必要となるが、リストが無い場合は全ミラーモードが指定されたと見なす。
In the case of the partial mirror mode, a list of
ii. モード設定モジュール24によるモード設定要求の送信
クライアント1のモード設定モジュール24は、仮想ネットワークインタフェースユーザプログラム部21の制御モジュール22を介して、仮想ハブ50の制御モジュール54へモード設定要求を送信する(図6中のステップS301)。モード設定要求のフォーマットは図3(b)に示す通りで、ミラーモードの種別のいずれか、或いは、リダイレクトモードのファイル保存モードを指定する。また、部分ミラーモードの場合は仮想ポート51のリストも、ファイル保存モードの場合はファイル名も設定する。
ii. Transmission of Mode Setting Request by
もし、タイムアウトした場合は(ステップS302のYes)、エラーとしてラッパプログラム23へ制御を戻し、処理を終了する(ステップS304)。
If timed out (Yes in step S302), control is returned to the
iii. 仮想ハブ50の制御モジュール54による仮想ハブモードの設定、及び、モード設定応答の送信
仮想ハブ50の制御モジュール54は、クライアント1の制御モジュール22からモード設定要求を受信すると(図9中のステップS600〜S602の「モード設定」)、モード設定要求から指定されているモード情報を取り出し、その内容に応じて、以下の処理を行なう。
iii. Setting of Virtual Hub Mode and Transmission of Mode Setting Response by
・全ミラーモードが指定されている場合
全ミラーモードが指定されている場合(ステップS603の「全ミラー」)、イーサネットスイッチングモジュール52を全ミラーモードに設定する(ステップS605〜S606)。
When All Mirror Mode is Specified When All Mirror Mode is specified (“All Mirrors” in step S603), the
・部分ミラーモードが指定されている場合
部分ミラーモードが指定されている場合(ステップS603の「部分ミラー」)、指定された仮想ポート51の情報を元に、イーサネットスイッチングモジュール52を部分ミラーモードに設定する。仮想ポート51のリストがあれば(ステップS604の「あり」)、それに従い、該当する仮想ポート51をミラーするように設定し(ステップS606)、仮想ポート51のリストが無ければ(ステップS604の「なし」)、全ての仮想ポート51をミラーするように設定する(全ミラーモードと等価)(ステップS605)。
When the partial mirror mode is specified When the partial mirror mode is specified (“partial mirror” in step S603), the
・ファイル保存モードが指定されている場合
ファイル保存モードが指定されている場合(ステップS608の「あり」)、指定されたファイル名を元に、仮想ポート51をリダイレクトモードに設定する(ステップS609)。
When the file storage mode is specified When the file storage mode is specified (“Yes” in step S608), the
上記処理完了後、モード設定応答をクライアント1の制御モジュール22に送信し(ステップS610)、処理を終了する(ステップS614)。
After the above process is completed, a mode setting response is transmitted to the
iv. モード設定モジュール24によるモード設定応答の受信
クライアント1のモード設定モジュール24は、仮想ハブ50の制御モジュール54からモード設定応答を受信すると(図6中のステップS303)、処理結果を戻り値としてラッパプログラム23へ制御を戻し、処理を終了する(ステップS304)。
iv. Reception of Mode Setting Response by
v. モード設定モジュール24の実行結果チェック
ラッパプログラム23は、モード設定モジュール24の戻り値をチェックし(図4中のステップS109)、以下の処理を行なう。
v. Execution Result Check of
・モード設定モジュール24が正常終了した場合
ファイル保存モードが指定されていない場合には(ステップS110のNo)、ステップS113へ進む。一方、ファイル保存モードが指定されている場合には(ステップS110のYes)、オペレータからの終了指示を待つ(ステップS111、S112)。その後、オペレータからの終了指示があると(ステップS112のYes)、ステップS115へ進む。
When the
・モード設定モジュール24が異常終了した場合
モード設定モジュール24が異常終了した場合(ステップS109のNG)、ステップS115へ進む。
When
(b) 上記のいずれも指定されていない場合
上記のいずれも指定されていない場合(ステップS110のNo)、ステップS113へ進む。
(B) When none of the above is designated When none of the above is designated (No in step S110), the process proceeds to step S113.
6. キャプチャプログラム27の起動
ラッパプログラム23は、キャプチャプログラム27を起動する(ステップS113)。
6. Activation of
(a) ファイル読み出しモードが指定されている場合
キャプチャプログラム27を起動する際に、ファイル読み出しモードが指定されている場合、上記記憶しておいた、フィルタパラメータ、ファイル読み出しモードである旨及びファイル名をパラメータとして、キャプチャプログラム27を起動する(ステップS113)。キャプチャプログラム27がオペレータからの終了指示で(ステップS20のYes)、或いはファイルの内容を表示デバイスに表示後、終了すると、ファイル読み出しモードが指定されているので(図4中のS114のYes)、ラッパプログラム23も処理を終了する(ステップS116)。
(A) When the file read mode is designated When the file read mode is designated when starting the
(b) ファイル読み出しモードが指定されていない場合
キャプチャプログラム27を起動する際に、ファイル読み出しモードが指定されていない場合、上記記憶しておいた、フィルタパラメータをパラメータとして、キャプチャプログラム27を起動する(ステップS113)。オペレータからの終了指示(ステップS20のYes)などでキャプチャプログラム27が終了すると、ファイル読み出しモードが指定されていないので(図4中のS114のNo)、ステップS115へ進む。
(B) When the file read mode is not specified When the
7. 終了処理
(a) キャプチャ終了モジュール28の起動
ラッパプログラム23は、キャプチャ終了モジュール28を起動する(ステップS115、図8中のステップS500)。
7. End Process (a) Activation of
(b) キャプチャ終了要求の送信
キャプチャ終了モジュール28は、仮想ネットワークインタフェースユーザプログラム部21の制御モジュール22を介して、仮想ハブ50の制御モジュール54にキャプチャ終了要求を送信し(図8中のステップS501)、制御をラッパプログラム23に戻し、処理を終了する(ステップS502)。
(B) Transmission of capture end request The
(c) 仮想ハブのクリーンアップ処理
仮想ハブ50の制御モジュール54は、クライアント1の制御モジュール22からキャプチャ終了要求を受信すると(ステップ図9中のステップS600〜S602の「キャプチャ終了」)、イーサネットスイッチングモジュール52、及び、仮想ポート51を“通常モード”に設定する。つまり、キャプチャ処理に関わる設定をクリアする(ステップS611)。
(C) Virtual Hub Cleanup Processing When the
(d) 処理終了
ラッパプログラム23は、キャプチャ終了モジュール28が終了すると、自身の処理を終了する(ステップS116)。
(D) End of processing When the
[具体例]
引続き、図1、図2、図4〜図10を参照して、具体的な処理シーケンスの詳細を説明する。
[Concrete example]
Subsequently, details of a specific processing sequence will be described with reference to FIGS. 1, 2, and 4 to 10.
図2に示すように、仮想ハブ50にクライアント1、クライアント2、クライアント3、クライアント4が接続されているものとする。このうち、クライアント1を使用しているオペレータが、仮想ハブ50上のトラフィックをキャプチャしたいと考えているとする。
As shown in FIG. 2, it is assumed that the
なお、この段階では、仮想ハブ50のイーサネットスイッチングモジュール52、仮想ポート51(ミラーポート)は“通常モード”で動作しており、仮想ハブ50は一般的なイーサネットスイッチングハブと同等のイーサネットフレームのスイッチング処理を行なっているものとする。
At this stage, the
以下、ラッパプログラム23にさまざまなパラメータが指定された場合の動作を詳述する。
Hereinafter, the operation when various parameters are designated in the
(具体例その1)
オペレータが以下のパラメータを指定してラッパプログラム23を実行したとする。
(Specific example 1)
It is assumed that the operator executes the
・仮想ネットワークインタフェースパラメータ:
クライアント1の仮想ネットワークインタフェースを指定
・リダイレクトモードパラメータ:
指定を省略
・フィルタパラメータ:
指定を省略
・ミラーモードパラメータ:
指定を省略
このようにパラメータが指定された場合の動作1〜4を以下に示す。
Virtual network interface parameters:
Specifies the virtual network interface of
Omit specification-Filter parameter:
Omitted ・ Mirror mode parameter:
Specification is omitted The
1. キャプチャ設定、キャプチャ開始
・リダイレクトモード(ファイル読み出しモード)設定
行なわれない。
1. Capture setting, start capture ・ Redirect mode (file read mode) setting Not performed.
・フィルタ設定
行なわれない。
• Filter setting Not performed.
・リダイレクトモード(ファイル保存モード、ミラーモード)設定
行なわれない。
・ Redirect mode (file save mode, mirror mode) is not set.
・キャプチャプログラム27の起動
ラッパプログラム23により、仮想ネットワークインタフェースパラメータを指定してキャプチャプログラム27が起動される。
Start of the
2. 仮想ハブによる処理
(a) イーサネットスイッチングモジュール52によるスイッチング処理
ミラーモード設定が行なわれていないため、イーサネットスイッチングモジュール52は通常のスイッチング処理を行なう。つまり、ブロードキャストフレーム、マルチキャストフレーム、及び、クライアント1向けのユニキャストフレームのみを、クライアント1を収容する仮想ポート51へ送出する。
2. Processing by Virtual Hub (a) Switching processing by
(b) 仮想ポート51によるイーサネットフレームの送出
フィルタ設定、リダイレクトモード(ファイル保存モード)設定が行なわれていないため、イーサネットスイッチングモジュール52から受け取ったイーサネットフレームは全て、クライアント1へ送信される。
(B) Transmission of Ethernet Frame by
3. クライアント1による処理
(a) 仮想ネットワークインタフェースによる処理
仮想ネットワークインタフェースは通常のネットワークプロトコル処理に従い、受信したイーサネットフレームをアプリケーションプログラム群やOSに配送する。
3. Processing by Client 1 (a) Processing by Virtual Network Interface The virtual network interface delivers the received Ethernet frame to the application program group and OS according to normal network protocol processing.
(b) パケットキャプチャモジュール16による処理
キャプチャプログラム27が起動されているため、パケットキャプチャモジュール16は仮想ネットワークインタフェースユーザプログラム部21(或いは仮想ネットワークインタフェースカーネル部)が受信するイーサネットフレームを全てキャプチャし、キャプチャプログラム27へ配送する。また、クライアント1が送信するイーサネットフレームも全てキャプチャし、キャプチャプログラム27へ配送する。
(B) Processing by the
(c) キャプチャプログラム27による処理
パケットキャプチャモジュール16からキャプチャデータを受け取ると、それらを表示デバイスに表示可能な形式に変換し、表示デバイスに表示する。
(C) Processing by
つまり、ブロードキャストフレーム、マルチキャストフレーム、及び、クライアント11向けのユニキャストフレームが表示される。
That is, a broadcast frame, a multicast frame, and a unicast frame for the
なお、表示フォーマットに関する各種設定も可能であることが一般的であるが、ここでは詳細は割愛する。 Note that various settings relating to the display format are generally possible, but details are omitted here.
4. キャプチャ終了
オペレータによる終了指示(例えば、ラッパプログラム23に対するシグナル送信など)があると、キャプチャ終了モジュール28を呼び出し、仮想ネットワークインタフェースユーザプログラム部21の制御モジュール22、仮想ハブ50の制御モジュール54を介して、仮想ハブ50のイーサネットスイッチングモジュール52、仮想ポート51を通常モードに戻す。
4. Capture end When there is an end instruction (for example, signal transmission to the wrapper program 23) by the operator, the
その後、キャプチャプログラム27はパケットキャプチャモジュール16によるキャプチャ処理を終了し、自身も終了する。最後に、ラッパプログラム23も終了する。
Thereafter, the
(具体例その2)
オペレータが以下のパラメータを指定してラッパプログラム23を実行したとする。
(Specific example 2)
It is assumed that the operator executes the
・仮想ネットワークインタフェースパラメータ:
クライアント1の仮想ネットワークインタフェース
・リダイレクトモードパラメータ:
指定を省略
・フィルタパラメータ:
送信元IPアドレス: クライアント3のIPアドレス
宛先IPアドレス: クライアント4のIPアドレス
条件にマッチしたイーサネットフレームをキャプチャ
・ミラーモードパラメータ: 全ミラーモード
このようにパラメータが指定された場合の動作1〜4を以下に示す。
Virtual network interface parameters:
Virtual network interface of
Omit specification-Filter parameter:
Source IP address: IP address of
1. キャプチャ設定、キャプチャ開始
・リダイレクトモード(ファイル読み出しモード)設定
行なわれない。
1. Capture setting, start capture ・ Redirect mode (file read mode) setting Not performed.
・フィルタ設定
ラッパプログラム23がフィルタ設定モジュール25を呼び出すことで、仮想ネットワークインタフェースユーザプログラム部21の制御モジュール22、仮想ハブ50の制御モジュール54を介して、仮想ハブ50の仮想ポート51のフィルタモジュール53に上記のフィルタが設定される。
Filter setting When the
・リダイレクトモード(ファイル保存モード、ミラーモード)設定
ラッパプログラム23がモード設定モジュール24を呼び出すことで、仮想ネットワークインタフェースユーザプログラム部21の制御モジュール22、仮想ハブ50の制御モジュール54を介して、仮想ハブ50のイーサネットスイッチングモジュール52が全ミラーモードに設定される。
Redirection mode (file storage mode, mirror mode) setting When the
・キャプチャプログラム27の起動
ラッパプログラム23により、仮想ネットワークインタフェースパラメータ、及び、上記フィルタパラメータを指定してキャプチャプログラム27が起動される。
Activation of
2. 仮想ハブによる処理
(a) イーサネットスイッチングモジュール52によるスイッチング処理
イーサネットスイッチングモジュール52は、ブロードキャストフレーム、マルチキャストフレーム、及び、クライアント1向けのユニキャストフレームを含め、全てのイーサネットフレームをクライアント1を収容する仮想ポート51へ送出する。
2. Processing by Virtual Hub (a) Switching processing by the
(b) 仮想ポート51によるイーサネットフレームの送出
フィルタ設定に従い、送信元IPアドレスとしてクライアント3のIPアドレスを、宛先IPアドレスとしてクライアント4のIPアドレスを持つイーサネットフレームがクライアント1へ送信される。
(B) Transmission of Ethernet Frame by
また、ブロードキャストフレーム、マルチキャストフレーム、及び、クライアント1向けのユニキャストフレームはフィルタリングの対象外のため、上記フィルタ設定に関わらず、クライアン1へ送信される。
In addition, since broadcast frames, multicast frames, and unicast frames for the
3. クライアント1による処理
(a) 仮想ネットワークインタフェースによる処理
仮想ネットワークインタフェースは通常のネットワークプロトコル処理に従い、受信したイーサネットフレームをアプリケーションプログラム群やOSに配送する。
3. Processing by Client 1 (a) Processing by Virtual Network Interface The virtual network interface delivers the received Ethernet frame to the application program group and OS according to normal network protocol processing.
(b) パケットキャプチャモジュール16による処理
キャプチャプログラム27が起動されているため、パケットキャプチャモジュール16は仮想ネットワークインタフェースユーザプログラム部21(或いは仮想ネットワークインタフェースカーネル部)が受信するイーサネットフレームをキャプチャし、フィルタ設定に従い、送信元IPアドレスとしてクライアント3のIPアドレスを、宛先IPアドレスとしてクライアント4のIPアドレスを持つイーサネットフレームをキャプチャプログラム27へ配送する。
(B) Processing by the
一方、上記以外のイーサネットフレームは、クライアント1が送信するイーサネットフレームも含め、フィルタ設定にマッチしないため、キャプチャプログラム27へは配送しない。
On the other hand, Ethernet frames other than the above are not delivered to the
(c) キャプチャプログラム27による処理
パケットキャプチャモジュール16からキャプチャデータを受け取ると、それらを表示デバイスに表示可能な形式に変換し、表示デバイスに表示する。
(C) Processing by
つまり、送信元IPアドレスとしてクライアント3のIPアドレスを、宛先IPアドレスとしてクライアント4のIPアドレスを持つイーサネットフレームが表示される。
That is, an Ethernet frame having the IP address of the
4. キャプチャ終了
前述の(具体例その1)の場合と同様となるため、説明を省略する。
4. End of capture Since it is the same as the case of the above (specific example 1), the description is omitted.
(具体例その3)
オペレータが以下のパラメータを指定してラッパプログラム23を実行したとする。
(Specific example 3)
It is assumed that the operator executes the
・仮想ネットワークインタフェースパラメータ:
クライアント1の仮想ネットワークインタフェース
・リダイレクトモードパラメータ:
指定を省略
・フィルタパラメータ:
TCPポート番号: 20、21
条件にマッチしたイーサネットフレームをキャプチャ
・ミラーモードパラメータ:
部分ミラーモード
対象仮想ポートは、クライアント3とクライアント4を収容する仮想ポート
このようにパラメータが指定された場合の動作1〜4を以下に示す。
Virtual network interface parameters:
Virtual network interface of
Omit specification-Filter parameter:
TCP port number: 20, 21
Capture Ethernet frames that match the conditions ・ Mirror mode parameters:
Partial Mirror Mode The target virtual port is a virtual port that accommodates the
1. キャプチャ設定、キャプチャ開始
・リダイレクトモード(ファイル読み出しモード)設定
行なわれない。
1. Capture setting, start capture ・ Redirect mode (file read mode) setting Not performed.
・フィルタ設定
前述の(具体例その2)の場合と同様となるため、説明を省略する。
-Filter setting Since it becomes the same as that of the above-mentioned (specific example 2), description is abbreviate | omitted.
・リダイレクトモード(ファイル保存モード、ミラーモード)設定
ラッパプログラム23がモード設定モジュール24を呼び出すことで、仮想ネットワークインタフェースユーザプログラム部21の制御モジュール22、仮想ハブ50の制御モジュール54を介して、仮想ハブ50のイーサネットスイッチングモジュール52が、クライアント3、クライアント4を対象とした部分ミラーモードに設定される。
Redirection mode (file storage mode, mirror mode) setting When the
・キャプチャプログラム27の起動
ラッパプログラム23により、仮想ネットワークインタフェースパラメータ、及び、上記フィルタパラメータを指定してキャプチャプログラム27が起動される。
Activation of
2. 仮想ハブによる処理
(a) イーサネットスイッチングモジュール52によるスイッチング処理
イーサネットスイッチングモジュール52は、ブロードキャストフレーム、マルチキャストフレーム、及び、クライアント1向けのユニキャストフレーム、及び、クライアント3、クライアント4を収容する仮想ポート51間で送受信されるイーサネットフレームをクライアント1を収容する仮想ポート51へ送出する。
2. Processing by Virtual Hub (a) Switching processing by
(b) 仮想ポート51によるイーサネットフレームの送出
フィルタ設定に従い、TCPポート番号が20、或いは、21であるイーサネットフレームがクライアント1へ送信される。
(B) Transmission of Ethernet Frame by
また、ブロードキャストフレーム、マルチキャストフレーム、及び、クライアント1向けのユニキャストフレームはフィルタリングの対象外のため、上記フィルタ設定に関わらず、クライアント1へ送信される。
In addition, since broadcast frames, multicast frames, and unicast frames for the
3. クライアント1による処理
(a) 仮想ネットワークインタフェースによる処理
仮想ネットワークインタフェースは通常のネットワークプロトコル処理に従い、受信したイーサネットフレームをアプリケーションプログラム群やOSに配送する。
3. Processing by Client 1 (a) Processing by Virtual Network Interface The virtual network interface delivers the received Ethernet frame to the application program group and OS according to normal network protocol processing.
(b) パケットキャプチャモジュール16による処理
キャプチャプログラム27が起動されているため、パケットキャプチャモジュール16は仮想ネットワークインタフェースユーザプログラム部21(或いは仮想ネットワークインタフェースカーネル部)が受信するイーサネットフレームをキャプチャし、フィルタ設定に従い、TCPポート番号が20、或いは、21であるイーサネットフレームをキャプチャプログラム27へ配送する。
(B) Processing by the
一方、上記以外のイーサネットフレームは、IPアドレスがクライアント3、クライアント4であるイーサネットフレームやクライアント1が送信するイーサネットフレームも含め、フィルタ設定にマッチしないため、キャプチャプログラム27へは配送しない。
On the other hand, Ethernet frames other than the above are not delivered to the
(c) キャプチャプログラム27による処理
パケットキャプチャモジュール16からキャプチャデータを受け取ると、それらを表示デバイスに表示可能な形式に変換し、表示デバイスに表示する。
(C) Processing by
つまり、TCPポート番号が20、或いは、21であるイーサネットフレームが表示される。 That is, an Ethernet frame having a TCP port number of 20 or 21 is displayed.
4. キャプチャ終了
前述の(具体例その1)の場合と同様となるため、説明を省略する。
4. End of capture Since it is the same as the case of the above (specific example 1), the description is omitted.
(具体例その4)
オペレータが以下のパラメータを指定してラッパプログラム23を実行したとする。
(Specific example 4)
It is assumed that the operator executes the
・仮想ネットワークインタフェースパラメータ:
クライアント1の仮想ネットワークインタフェース
・リダイレクトモードパラメータ:
ファイル保存モード
ファイル名: capturehttp.dat
・フィルタパラメータ:
TCPポート番号: 80
条件にマッチしたイーサネットフレームをキャプチャ
・ミラーモードパラメータ:
全ミラーモード
対象仮想ポートは、全仮想ポート
このようにパラメータが指定された場合の動作1〜4を以下に示す。
Virtual network interface parameters:
Virtual network interface of
File save mode File name: capturehttp.dat
-Filter parameters:
TCP port number: 80
Capture Ethernet frames that match the conditions ・ Mirror mode parameters:
All Mirror Modes Target virtual port is all
1. キャプチャ設定、キャプチャ開始
・リダイレクトモード(ファイル読み出しモード)設定
行なわれない。
1. Capture setting, capture start ・ Redirect mode (file read mode) setting Not performed.
・フィルタ設定
前述の(具体例その2)の場合と同様となるため、説明を省略する。
-Filter setting Since it becomes the same as that of the above-mentioned (specific example 2), description is abbreviate | omitted.
・リダイレクトモード(ファイル保存モード、ミラーモード)設定
ラッパプログラム23がモード設定モジュール24を呼び出すことで、仮想ネットワークインタフェースユーザプログラム部21の制御モジュール22、仮想ハブ50の制御モジュール54を介して、仮想ハブ50のイーサネットスイッチングモジュール52が全ミラーモードに、仮想ポート51がファイル保存モード(ファイル名capturehttp.dat)に、それぞれ設定される。
Redirect mode (file storage mode, mirror mode) setting When the
・キャプチャプログラム27の起動
ラッパプログラム23により、仮想ネットワークインタフェースパラメータ、及び、上記フィルタパラメータ、ファイル保存モードを指定してキャプチャプログラム27が起動される。
Activation of
2. 仮想ハブによる処理
(a) イーサネットスイッチングモジュール52によるスイッチング処理
イーサネットスイッチングモジュール52は、ブロードキャストフレーム、マルチキャストフレーム、及び、クライアント1向けのユニキャストフレームを含め、全てのイーサネットフレームをクライアント1を収容する仮想ポート51へ送出する。
2. Processing by Virtual Hub (a) Switching processing by
(b) 仮想ポート51によるイーサネットフレームの送出
フィルタ設定に従い、TCPポート番号が80であるイーサネットフレームがキャプチャデータ保存部55へ送出される(ファイルcapturehttp.datへ保存される)。
(B) Transmission of Ethernet frame by
また、ブロードキャストフレーム、マルチキャストフレーム、及び、クライアント1向けのユニキャストフレームは、上記フィルタ設定、ファイル保存モードの設定に関わらず、クライアント1へ送信される。
In addition, the broadcast frame, the multicast frame, and the unicast frame for the
3. クライアント1による処理
(a) 仮想ネットワークインタフェースによる処理
仮想ネットワークインタフェースは通常のネットワークプロトコル処理に従い、受信したイーサネットフレームをアプリケーションプログラム群やOSに配送する。
3. Processing by Client 1 (a) Processing by Virtual Network Interface The virtual network interface delivers the received Ethernet frame to the application program group and OS according to normal network protocol processing.
(b) パケットキャプチャモジュール16による処理
キャプチャプログラム27が起動されていないため、キャプチャ処理は行なわない。
(B) Processing by the
4. キャプチャ終了
オペレータによる終了指示(例えば、ラッパプログラム23に対するシグナル送信など)があると、キャプチャ終了モジュール28を呼び出し、仮想ネットワークインタフェースユーザプログラム部21の制御モジュール22、仮想ハブ50の制御モジュール54を介して、仮想ハブ50のイーサネットスイッチングモジュール52、仮想ポート51を通常モードに戻す。
4. Capture end When there is an end instruction (for example, signal transmission to the wrapper program 23) by the operator, the
その後、ラッパプログラム23も終了する。
Thereafter, the
(具体例その5)
オペレータが以下のパラメータを指定してラッパプログラム23を実行したとする。
(Specific example 5)
It is assumed that the operator executes the
・仮想ネットワークインタフェースパラメータ:
クライアント1の仮想ネットワークインタフェース
・リダイレクトモードパラメータ:
ファイル読み出しモード
ファイル名: capturehttp.dat
・フィルタパラメータ:
指定を省略
・ミラーモードパラメータ:
指定を省略
このようにパラメータが指定された場合の動作1〜4を以下に示す。
Virtual network interface parameters:
Virtual network interface of
File read mode File name: capturehttp.dat
-Filter parameters:
Omitted ・ Mirror mode parameter:
Specification is omitted The
1. キャプチャ設定、キャプチャ開始
・リダイレクトモード(ファイル読み出しモード)設定
ラッパプログラム23がキャプチャファイル取得モジュール26を呼び出すことで、仮想ハブ50のキャプチャファイル提供モジュール56を介して、ファイルcapturehttp.datを取得し、ローカルのファイルシステムFに保存する。
1. Capture setting, capture start ・ Redirect mode (file read mode) setting When the
・フィルタ設定
行なわれない。
• Filter setting Not performed.
・リダイレクトモード(ファイル保存モード、ミラーモード)設定
行なわれない。
・ Redirect mode (file save mode, mirror mode) is not set.
・キャプチャプログラム27の起動
ラッパプログラム23により、仮想ネットワークインタフェースパラメータ、及び、ファイル読み出しモード、上記ファイル名を指定してキャプチャプログラム27が起動される。
Start of the
2. 仮想ハブによる処理
(a) キャプチャファイル提供モジュール56による処理
上記の通り、クライアント1のキャプチャファイル取得モジュール26と連携し、仮想ハブ50からクライアント1へファイルcapturehttp.datを転送する。
2. Processing by Virtual Hub (a) Processing by Capture
3. クライアント1による処理
(a) 仮想ネットワークインタフェースによる処理
仮想ネットワークインタフェースは通常のネットワークプロトコル処理に従い、受信したイーサネットフレームをアプリケーションプログラム群やOSに配送する。
3. Processing by Client 1 (a) Processing by Virtual Network Interface The virtual network interface delivers the received Ethernet frame to the application program group and OS according to normal network protocol processing.
(b) パケットキャプチャモジュール16による処理
キャプチャプログラム27がファイル読み出しモードで起動されているため、キャプチャ処理は行なわない。
(B) Processing by the
(c) キャプチャプログラム27による処理
ファイルcapturehttp.datからキャプチャデータを読み出すと、それらを表示デバイスに表示可能な形式に変換し、表示デバイスに表示する。
(C) Processing by the
4. キャプチャ終了
オペレータによる終了指示(例えば、ラッパプログラム23に対するシグナル送信など)があると、ラッパプログラム23は終了する。
4. End of capture When the operator gives an end instruction (for example, signal transmission to the wrapper program 23), the
以上のように、第1の実施形態によれば、フレームに対するフィルタリング処理を仮想ハブ側であらかじめ行なうことで、キャプチャ対象ではないフレームの仮想ハブからクライアントへの流入を防止し、アンダーレイネットワークへの不要な負荷を低減することが可能となる。 As described above, according to the first embodiment, filtering processing for frames is performed in advance on the virtual hub side, so that inflow of frames that are not to be captured from the virtual hub to the client is prevented, and the frame is transferred to the underlay network. Unnecessary load can be reduced.
<第2の実施形態>
次に、本発明の第2の実施形態について説明する。
<Second Embodiment>
Next, a second embodiment of the present invention will be described.
ここでは、クライアント1側にて、第1の実施形態で示したラッパプログラム23が呼び出していた機能モジュールである以下の、
・モード設定モジュール24
・フィルタ設定モジュール25
・キャプチャファイル取得モジュール26
・キャプチャ終了モジュール28
を、仮想ネットワークインタフェースユーザプログラム部21、或いは、キャプチャプログラム27が呼び出すことで、本提案の機能を実現する方法を説明する。
Here, on the
-
-
Capture
A method for realizing the proposed function by calling the virtual network interface
基本的な機能は第1の実施形態と共通であるため、ここでは、本実施形態と第1の実施形態の異なる部分のみ説明する(仮想ハブ50側での処理については全く同じである)。
Since the basic functions are the same as those in the first embodiment, only different parts of this embodiment and the first embodiment will be described here (the processing on the
以下、図11を参照して、それぞれの機能要素のうち、第1の実施形態と異なる部分について説明する。なお、第1の実施形態と共通する要素には同一の符号を付している。また、図11では、仮想ハブ50との情報のやりとりを示す線の記載を省略している。ここでは、第1の実施形態と重複している部分、特に、モジュール間の要求、応答などの説明は一部省略する。
Hereinafter, with reference to FIG. 11, portions of the respective functional elements that are different from the first embodiment will be described. In addition, the same code | symbol is attached | subjected to the element which is common in 1st Embodiment. In FIG. 11, a line indicating information exchange with the
・クライアント
- キャプチャプログラム27
第1の実施形態で記した通常の機能に加え、リダイレクトモード(ファイル保存モード、ファイル読み出しモード)、ミラーモード(全ミラーモード、部分ミラーモード)をパラメータとして指定可能である。
·client
-
In addition to the normal functions described in the first embodiment, a redirect mode (file storage mode, file read mode) and mirror mode (full mirror mode, partial mirror mode) can be specified as parameters.
リダイレクトモード(ファイル読み出しモード)が指定された場合、キャプチャプログラム27はキャプチャファイル取得モジュール26を呼び出すことで仮想ハブ50上のファイルを獲得し、ローカルのファイルシステムFに保存した後、そのファイルに対して自身のファイル読み出しモードの処理を行なう。
When the redirect mode (file read mode) is specified, the
リダイレクトモード(ファイル保存モード)、ミラーモード(全ミラーモード、部分ミラーモード)が指定された場合、その旨を、フィルタ設定の指示と同様の手段(ioctlなどシステムコール或いはコマンド)により、パケットキャプチャモジュール16へ指示する。 When the redirect mode (file save mode) or mirror mode (full mirror mode, partial mirror mode) is specified, the packet capture module is notified by means similar to the filter setting instruction (system call or command such as ioctl). 16 is instructed.
更に、リダイレクトモード(ファイル保存モード)が指定された場合、自身のファイル保存処理は行なわない。 Further, when the redirect mode (file storage mode) is designated, the own file storage processing is not performed.
- パケットキャプチャモジュール16
第1の実施形態で示した機能に加え、上記キャプチャプログラム27から
* リダイレクトモード(ファイル保存モード)
* ミラーモード(全ミラーモード、部分ミラーモード)
* フィルタ設定
の指示を受け得ると、仮想ネットワークインタフェースカーネル部に対して待機(sleep)しているプロセス、ここでは仮想ネットワークインタフェースユーザプログラム部21を、これらの指示をパラメータとして起動(wakeup)する。
-
In addition to the functions shown in the first embodiment, from the
* Redirect mode (file save mode)
* Mirror mode (full mirror mode, partial mirror mode)
When receiving the filter setting instruction, the process waiting for the virtual network interface kernel unit, in this case, the virtual network interface
また、オペレータからの終了指示(シグナルなど)を受けるとキャプチャプログラム27が終了するが、それにともなうパケットキャプチャモジュール16の終了処理時に、キャプチャ処理終了指示をパラメータとして仮想ネットワークインタフェースユーザプログラム部21を起動(wakeup)する。
Further, when receiving an end instruction (signal or the like) from the operator, the
- 仮想ネットワークインタフェースユーザプログラム部21(制御モジュール22)
仮想ネットワークインタフェースカーネル部に対して待機(sleep)し、起動(wakeup)されると、パケットキャプチャモジュール16を経由してキャプチャプログラム27から通知された上記指示に基づき、モード設定モジュール24、フィルタ設定モジュール25、キャプチャ終了モジュール28を呼び出す(起動する)。この場合の処理は、図4における、ステップS104〜S110、S114〜S115に該当する。
-Virtual network interface user program unit 21 (control module 22)
When the virtual network interface kernel unit sleeps and is activated, the
以上のように、第2の実施形態によれば、ラッパプログラム23を使うことなく、第1の実施形態と同等の機能を実現することが可能である。
As described above, according to the second embodiment, functions equivalent to those in the first embodiment can be realized without using the
<第3の実施形態>
次に、本発明の第3の実施形態について説明する。
<Third Embodiment>
Next, a third embodiment of the present invention will be described.
第1の実施形態、第2の実施形態では、UNIXなどのOSに実装されているトンネルインタフェースの仕組みを利用して仮想ネットワークインタフェースを実装した場合の処理を示したが、この第3の実施形態では、図12に示すような、OS内でのIPトンネリングの仕組みを利用して仮想ネットワークインタフェースを実装した場合の処理について説明する。なお、第1の実施形態、第2の実施形態と共通する要素には同一の符号を付している。また、図12では、仮想ハブ50との情報のやりとりを示す線の記載を省略している。ここでは、第1の実施形態、第2の実施形態と重複している部分、特に、モジュール間の要求、応答などの説明は一部省略する。
In the first embodiment and the second embodiment, the processing in the case where the virtual network interface is implemented using the mechanism of the tunnel interface implemented in the OS such as UNIX has been described. This third embodiment Now, processing when a virtual network interface is implemented using an IP tunneling mechanism in the OS as shown in FIG. 12 will be described. In addition, the same code | symbol is attached | subjected to the element which is common in 1st Embodiment and 2nd Embodiment. In FIG. 12, a line indicating information exchange with the
カーネル10側には、物理ネットワークインタフェース11、ドライバ12、イーサネット層13A、イーサネット層13B、IP(インナーIP)14A、IP(アウターIP)14B、TCP/UDP14C、擬似ネットワークインタフェース30が形成される。なお、概念的な理解の助けとなるよう、イーサネット層13Aとイーサネット層13B、或いは、IP(インナーIP)14AとIP(アウターIP)14Bをそれぞれ別機能モジュールとして図示しているが、通常、OS内には単一のイーサネット層、及び、IP層が実装されているものであり、プロトコルスタックの設定や送受信されるフレームの内容によりこれらが二度使用され、結果的に、図示したようなプロトコルスタックに見なされることとなる。
On the
IPトンネリングを使用する場合、大半の処理はOS(カーネル)の中で処理されることになるが、この場合、以下のようにすることで、第1の実施形態、第2の実施形態と同等の機能を実現することが可能である。 When IP tunneling is used, most of the processing is performed in the OS (kernel). In this case, by performing the following, it is equivalent to the first embodiment and the second embodiment. This function can be realized.
・モード設定モジュール24、フィルタ設定モジュール25、キャプチャ終了モジュール28をカーネルスレッド(ユーザモードを持たないプロセス)として実装する。一方、キャプチャファイル取得モジュール26については、第2の実施形態と同様、ユーザランドに実装し、キャプチャプログラム27が直接呼び出す。
The
・キャプチャプログラム27から指示を受け取ったパケットキャプチャモジュール16は、カーネル内の擬似ネットワークインタフェース30へ各種指示を出す。
The
・カーネル内の擬似ネットワークインタフェース30が、パケットキャプチャモジュール16(キャプチャプログラム27)からの指示により、上記カーネルスレッド(モード設定モジュール24、フィルタ設定モジュール25、キャプチャ終了モジュール28)を呼び出す(起動する)。
The
以上のように、第3の実施形態によれば、IPトンネリングの仕組みを利用することにより、第1の実施形態や第2の実施形態と同等の機能を実現することが可能である。 As described above, according to the third embodiment, functions equivalent to those in the first embodiment and the second embodiment can be realized by using the mechanism of IP tunneling.
各実施形態で説明したクライアント1(及び2,3,4)及び仮想ハブ50は、企業内ネットワークの管理、顧客ネットワークの遠隔保守、システム開発現場における作業の効率化等に、広く適用が可能である。
The client 1 (and 2, 3, 4) and the
上述した実施形態で述べた本発明に係る各種の処理手順は、コンピュータプログラムとして、コンピュータ(情報処理装置)により読み取り可能な記憶媒体(例えば磁気ディスク,光ディスク,半導体メモリ)に記憶させておき、必要に応じてそれをプロセッサにより読み出して実行するようにしてもよい。また、このようなコンピュータプログラムは、通信媒体を介してあるコンピュータから他のコンピュータに伝送することにより配布することも可能である。 Various processing procedures according to the present invention described in the above-described embodiments are stored in a storage medium (for example, a magnetic disk, an optical disk, or a semiconductor memory) that can be read by a computer (information processing apparatus) as a computer program. In response to this, it may be read and executed by the processor. Such a computer program can also be distributed by transmitting from one computer to another computer via a communication medium.
本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。 The present invention is not limited to the above-described embodiments as they are, and can be embodied by modifying the constituent elements without departing from the scope of the invention in the implementation stage. In addition, various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment. Furthermore, constituent elements over different embodiments may be appropriately combined.
1,2,3,4…クライアント、10…カーネル、11…物理ネットワークインタフェース、12…ネットワークインタフェースドライバ、13…イーサネット層、14…TCP/IP、15…仮想ネットワークインタフェースカーネル部(トンネルインタフェース)、16…パケットキャプチャモジュール、20…ユーザランド、21…仮想ネットワークインタフェースユーザプログラム部、22…制御モジュール、23…ラッパプログラム、24…モード設定モジュール、25…フィルタ設定モジュール、26…キャプチャファイル取得モジュール、27…キャプチャプログラム、28…キャプチャ終了モジュール、29…アプリケーションプログラム群、30…擬似ネットワークインタフェース、50…仮想ハブ、51…仮想ポート、52…イーサネットスイッチングモジュール、53…フィルタモジュール、54…制御モジュール、55…キャプチャデータ保存部、56…キャプチャファイル提供モジュール、60…仮想イーサネットコネクション、150…アンダーレイネットワーク、151…仮想ハブ、152…仮想ネットワークインタフェース、153…クライアント、154…仮想イーサネット、155…サーバ、155…ネットワーク仮想化装置、156…ファイアウォール、157…ルータ、160…内部ネットワーク、161…外部ネットワーク。
1, 2, 3, 4 ... client, 10 ... kernel, 11 ... physical network interface, 12 ... network interface driver, 13 ... Ethernet layer, 14 ... TCP / IP, 15 ... virtual network interface kernel section (tunnel interface), 16 ... Packet capture module, 20 ... User land, 21 ... Virtual network interface user program section, 22 ... Control module, 23 ... Wrapper program, 24 ... Mode setting module, 25 ... Filter setting module, 26 ... Capture file acquisition module, 27 ...
Claims (6)
少なくとも1つのクライアント端末は、データのキャプチャ処理を行う第1のキャプチャ処理手段を具備し、この第1のキャプチャ処理手段は、
キャプチャ処理の結果を表示デバイスに出力する手段と、
前記キャプチャ処理を行なわずに、当該クライアント端末の記憶領域に保存されているキャプチャデータを表示デバイスに出力するモードの設定を可能とする手段と、
当該クライアント端末の記憶領域に保存されているキャプチャデータを取得せずに、前記仮想ハブの記憶領域に保存されているキャプチャデータを取得するモードの設定を可能とする手段とを具備し、
前記クライアント端末は、前記仮想ハブに対しデータのキャプチャ処理に関する要求を行う処理要求手段を具備し、当該処理要求手段は、
前記仮想ハブ上の、当該クライアント端末を収容するポート以外の全ポート間、或いは一部のポート間のトラフィックを、当該クライアント端末を収容するポートへミラーリングするモードの設定を可能とする手段と、
前記仮想ハブ上の、当該クライアント端末を収容するポートで、フレームに対するフィルタ設定および当該設定に基づくフィルタリングを行なうモードの設定を可能とする手段と、
前記仮想ハブ上の、当該クライアント端末を収容するポートで、キャプチャデータを当該クライアント端末へ送出せずに、前記仮想ハブの記憶領域に保存するリダイレクトを行なうモードの設定を可能とする手段と、
前記仮想ハブ上の、当該クライアント端末を収容するポートでキャプチャ処理を行なわずに、既にキャプチャされ前記仮想ハブの記憶領域に保存されているキャプチャデータを当該クライアント端末に送信するモードの設定を可能とする手段とを具備し、
前記仮想ハブは、任意のクライアント端末からの要求に応じたキャプチャ処理を行う第2のキャプチャ処理手段を具備し、この第2のキャプチャ処理手段は、
要求元のクライアント端末を収容するポートへ、他の全てのポート間、或いは一部のポート間のトラフィックをミラーリングする手段と、
要求元のクライアント端末を収容するポートで、要求元のクライアント端末へ送出する前のフレーム、或いは、当該仮想ハブの記憶領域に保存する前のフレームに対するフィルタ設定および当該設定に基づくフィルタリングを行なう手段と、
要求元のクライアント端末を収容するポートで、キャプチャデータを要求元のクライアント端末へ送出する手段と、
要求元のクライアント端末を収容するポートで、キャプチャデータを要求元のクライアント端末へ送出せずに、当該仮想ハブの記憶領域に保存するリダイレクトを行なう手段と、
要求元のクライアント端末を収容するポートから当該仮想ハブに流入するトラフィックに対しては、キャプチャデータを当該仮想ハブの記憶領域に保存するリダイレクトを行う場合を除いては、キャプチャ処理の対象外とする手段と、
要求元のクライアント端末へ、既にキャプチャされ当該仮想ハブの記憶領域に保存されているキャプチャデータを送信する手段と、
要求元のクライアント端末へ、要求元のクライアント端末宛のユニキャストフレーム、ブロードキャストフレーム、マルチキャストフレームを、要求元のクライアント端末が要求するフィルタリングもしくはリダイレクトの設定に関わらず、送信する手段とを具備する
ことを特徴とするネットワーク仮想化システム。 In a network virtualization system comprising a relay device that forms a virtual hub by software, and a plurality of client terminals that perform virtual network communication via the virtual hub,
At least one client terminal includes first capture processing means for performing data capture processing, and the first capture processing means includes:
Means for outputting the result of the capture process to a display device;
Means for enabling setting of a mode for outputting capture data stored in a storage area of the client terminal to a display device without performing the capture process;
Means for enabling setting of a mode for acquiring capture data stored in the storage area of the virtual hub without acquiring capture data stored in the storage area of the client terminal;
The client terminal includes processing request means for making a request for data capture processing to the virtual hub, and the processing request means includes:
Means for enabling setting of a mode for mirroring traffic between all ports other than the port accommodating the client terminal or a part of the ports on the virtual hub to a port accommodating the client terminal;
Means for enabling setting of a filter setting for a frame and filtering based on the setting at a port accommodating the client terminal on the virtual hub;
Means for enabling setting of a mode for performing redirection to be stored in the storage area of the virtual hub without sending capture data to the client terminal at a port accommodating the client terminal on the virtual hub;
It is possible to set a mode in which capture data that has already been captured and stored in the storage area of the virtual hub is transmitted to the client terminal without performing capture processing at the port that accommodates the client terminal on the virtual hub. And means for
The virtual hub includes a second capture processing unit that performs a capture process in response to a request from an arbitrary client terminal, and the second capture processing unit includes:
Means for mirroring traffic between all other ports or between some ports to the port containing the requesting client terminal;
Means for performing a filter setting on a frame before sending to the requesting client terminal at a port accommodating the requesting client terminal or a frame before saving in the storage area of the virtual hub, and filtering based on the setting; ,
Means for sending capture data to the requesting client terminal at the port accommodating the requesting client terminal;
Means for performing a redirect to store in the storage area of the virtual hub without sending capture data to the requesting client terminal at a port accommodating the requesting client terminal;
For traffic that flows into the virtual hub from the port that accommodates the requesting client terminal, it is excluded from capture processing unless it is redirected to save the capture data in the storage area of the virtual hub. Means,
Means for transmitting captured data already captured and stored in the storage area of the virtual hub to the requesting client terminal;
Means for transmitting, to the requesting client terminal, unicast frames, broadcast frames, and multicast frames addressed to the requesting client terminal regardless of the filtering or redirection setting requested by the requesting client terminal. A network virtualization system characterized by
前記クライアント端末のカーネルに備えられるトンネルインタフェース、および、前記クライアント端末のユーザランドに備えられる仮想ネットワークインタフェースユーザプログラム部によって、前記仮想ネットワーク通信を行なうための仮想ネットワークインタフェースが実現され、
前記クライアント端末のユーザランドに備えられるプログラム群によって、前記仮想ハブに対する前記フィルタリング、前記ミラーリング、前記リダイレクトの各設定およびこれら設定の解除の各要求、並びに、前記仮想ハブの記憶領域に保存されているキャプチャデータの取得が実現され、
前記ユーザランドに備えられるラッパプログラムによって、前記プログラム群が呼び出され、
前記ラッパプログラムは、
前記プログラム群を起動し、これらプログラム群の動作の結果に応じて、処理を終了するか否かの判断、および当該クライアント端末でのキャプチャ処理の設定および指示を行なうキャプチャプログラムを起動するか否かの判断を行なう手段と、
前記キャプチャプログラムを起動する場合に、前記フィルタ設定の結果として得られるパラメータもしくはオペレータが指定するパラメータを用いて前記キャプチャプログラムを起動する手段と、
オペレータからの終了指示があった場合に、前記仮想ハブ上の各設定を解除するための所定の終了プログラムを起動し、上記仮想ハブ上の設定を解除し、前記キャプチャプログラムを終了させる手段と
を具備することを特徴とするネットワーク仮想化システム。 The network virtualization system according to claim 1,
A virtual network interface for performing the virtual network communication is realized by a tunnel interface provided in a kernel of the client terminal and a virtual network interface user program unit provided in a user land of the client terminal,
By the program group provided in the user land of the client terminal, the filtering, the mirroring, the redirect settings and the cancellation requests for the virtual hub are stored in the storage area of the virtual hub. Capture data acquisition is realized,
The program group is called by a wrapper program provided in the userland,
The wrapper program is
Start up the program group, determine whether to end the process according to the result of the operation of the program group, and whether to start a capture program for setting and instructing capture processing in the client terminal Means for making a judgment of
Means for starting the capture program using a parameter obtained as a result of the filter setting or a parameter designated by an operator when starting the capture program;
Means for activating a predetermined end program for canceling each setting on the virtual hub, canceling the setting on the virtual hub, and ending the capture program when there is an end instruction from an operator; A network virtualization system comprising:
前記クライアント端末のカーネルに備えられるトンネルインタフェース、および、前記クライアント端末のユーザランドに備えられる仮想ネットワークインタフェースユーザプログラム部によって、前記仮想ネットワーク通信を行なうための仮想ネットワークインタフェースが実現され、
前記クライアント端末のユーザランドに備えられるプログラム群によって、前記仮想ハブに対する前記フィルタリング、前記ミラーリング、前記リダイレクトの各設定およびこれら設定の解除の各要求、並びに、前記仮想ハブの記憶領域に保存されているキャプチャデータの取得が実現され、
前記ユーザランドには、当該クライアント端末でのキャプチャ処理の設定および指示を行なうキャプチャプログラムと、前記仮想ネットワークインタフェースを構成する仮想ネットワークインタフェースユーザプログラム部とが備えられ、前記カーネルには、当該クライアント端末でのキャプチャ処理を実行するパケットキャプチャモジュールが備えられ、
前記キャプチャプログラムは、
前記仮想ハブ上での前記ミラーリングの設定もしくは前記リダイレクトの設定を行なうためのパラメータを起動時に指定可能とする手段と、
前記ミラーリングの設定もしくは前記リダイレクトの設定を行なうためのパラメータが指定された場合、当該パラメータを前記パケットキャプチャモジュールへ伝達する手段と、
前記仮想ハブの記憶領域に保存されているキャプチャデータを前記ユーザランドに備えられる所定のプログラムを通じて取得する手段と、
前記仮想ハブの記憶領域に保存するリダイレクトが設定されている場合、当該クライアント端末の記憶領域への保存処理を抑制する手段とを具備し、
前記パケットキャプチャモジュールは、
前記キャプチャプログラムから、前記ミラーリングの設定、前記リダイレクトの設定、もしくは前記フィルタ設定の伝達を受けた場合、前記トンネルインタフェースに対して待機している前記仮想ネットワークインタフェースユーザプログラム部を、前記伝達されたパラメータを用いて起動する手段と、
前記キャプチャプログラムが終了した場合、その旨をパラメータとして、前記トンネルインタフェースに対して待機している前記仮想ネットワークインタフェースユーザプログラム部を起動する手段とを具備し、
前記仮想ネットワークインタフェースユーザプログラム部は、
前記トンネルインタフェースに対して待機し、起動された場合に、前記パケットキャプチャモジュールから渡されるパラメータを元に、前記プログラム群を起動する手段を具備する
ことを特徴とするネットワーク仮想化システム。 The network virtualization system according to claim 1,
A virtual network interface for performing the virtual network communication is realized by a tunnel interface provided in a kernel of the client terminal and a virtual network interface user program unit provided in a user land of the client terminal,
By the program group provided in the user land of the client terminal, the filtering, the mirroring, the redirect settings and the cancellation requests for the virtual hub are stored in the storage area of the virtual hub. Capture data acquisition is realized,
The userland is provided with a capture program for setting and instructing capture processing at the client terminal, and a virtual network interface user program unit constituting the virtual network interface, and the kernel is provided with the client terminal. A packet capture module that performs the capture process of
The capture program is
Means for enabling specification of a parameter for performing the mirroring setting or the redirect setting on the virtual hub at startup;
When a parameter for performing the mirroring setting or the redirect setting is designated, means for transmitting the parameter to the packet capture module;
Means for acquiring capture data stored in a storage area of the virtual hub through a predetermined program provided in the userland;
When redirection to be stored in the storage area of the virtual hub is set, the storage unit of the client terminal to suppress storage processing,
The packet capture module
When receiving the mirroring setting, the redirect setting, or the filter setting from the capture program, the virtual network interface user program unit waiting for the tunnel interface is notified of the transmitted parameter. Means to start using,
Means for starting the virtual network interface user program unit waiting for the tunnel interface, using the parameter as a parameter when the capture program is terminated,
The virtual network interface user program unit is:
A network virtualization system comprising: means for activating the program group based on parameters passed from the packet capture module when the tunnel interface is activated after waiting.
前記クライアント端末のカーネルに備えられる擬似ネットワークインタフェース、および、IPトンネリングの仕組みによって、前記仮想ネットワーク通信を行なうための仮想ネットワークインタフェースが実現され、
前記クライアント端末のカーネルスレッドによって、前記仮想ハブに対する前記フィルタリング、前記ミラーリング、前記リダイレクトの各設定およびこれら設定の解除の各要求が実現され、一方、前記クライアント端末のユーザランドに備えられるプログラム群によって、前記仮想ハブの記憶領域に保存されているキャプチャデータの取得が実現され、
前記ユーザランドには、当該クライアント端末でのキャプチャ処理の設定および指示を行なうキャプチャプログラムが備えられ、前記カーネルには、当該クライアント端末でのキャプチャ処理を実行するパケットキャプチャモジュールと、前記仮想ネットワーク通信を行なうための仮想ネットワークインタフェースを実現する擬似ネットワークインタフェースとが備えられ、
前記キャプチャプログラムは、
前記仮想ハブ上での前記ミラーリングの設定もしくは前記リダイレクトの設定を行なうためのパラメータを起動時に指定可能とする手段と、
前記ミラーリングの設定もしくは前記リダイレクトの設定を行なうためのパラメータが指定された場合、当該パラメータを前記パケットキャプチャモジュールへ伝達する手段と、
前記仮想ハブの記憶領域に保存されているキャプチャデータを前記ユーザランドに備えられる所定のプログラムを通じて取得する手段と、
前記仮想ハブの記憶領域に保存するリダイレクトが設定されている場合、当該クライアント端末の記憶領域への保存処理を抑制する手段とを具備し、
前記パケットキャプチャモジュールは、
前記キャプチャプログラムから、前記ミラーリングの設定、前記リダイレクトの設定、もしくは前記フィルタ設定の伝達を受けた場合、それを前記擬似ネットワークインタフェースに伝達する手段と、
前記パケットキャプチャモジュールが終了した場合、その旨を前記擬似ネットワークインタフェースに伝達する手段とを具備し、
前記擬似ネットワークインタフェースは、
前記キャプチャプログラムから、前記ミラーリングの設定、前記リダイレクトの設定、もしくは前記フィルタ設定の終了の伝達を受けた場合、前記カーネルスレッドを起動する手段を具備する
ことを特徴とするネットワーク仮想化システム。 The network virtualization system according to claim 1,
A virtual network interface for performing the virtual network communication is realized by a pseudo network interface provided in a kernel of the client terminal and an IP tunneling mechanism,
By the kernel thread of the client terminal, the filtering, the mirroring, the redirection settings and the cancellation of the settings for the virtual hub are realized. On the other hand, by the program group provided in the user land of the client terminal, Acquisition of capture data stored in the storage area of the virtual hub is realized,
The userland includes a capture program for setting and instructing capture processing at the client terminal, and the kernel includes a packet capture module that executes capture processing at the client terminal and the virtual network communication. And a pseudo network interface that realizes a virtual network interface for performing,
The capture program is
Means for enabling specification of a parameter for performing the mirroring setting or the redirect setting on the virtual hub at startup;
When a parameter for performing the mirroring setting or the redirect setting is designated, means for transmitting the parameter to the packet capture module;
Means for acquiring capture data stored in a storage area of the virtual hub through a predetermined program provided in the userland;
When redirection to be stored in the storage area of the virtual hub is set, the storage unit of the client terminal to suppress storage processing,
The packet capture module
Means for transmitting the mirroring setting, the redirect setting, or the filter setting from the capture program to the pseudo network interface;
When the packet capture module is completed, means for notifying the pseudo network interface to that effect,
The pseudo network interface is:
A network virtualization system comprising: means for starting the kernel thread when receiving the mirroring setting, the redirect setting, or the completion of the filter setting from the capture program.
要求元のクライアント端末を収容するポートへ、他の全てのポート間、或いは一部のポート間のトラフィックをミラーリングする手段と、
要求元のクライアント端末を収容するポートで、要求元のクライアント端末へ送出する前のフレーム、或いは、当該仮想ハブの記憶領域に保存する前のフレームに対するフィルタ設定および当該設定に基づくフィルタリングを行なう手段と、
要求元のクライアント端末を収容するポートで、キャプチャデータを要求元のクライアント端末へ送出する手段と、
要求元のクライアント端末を収容するポートで、キャプチャデータを要求元のクライアント端末へ送出せずに、当該仮想ハブの記憶領域に保存するリダイレクトを行なう手段と、
要求元のクライアント端末を収容するポートから当該仮想ハブに流入するトラフィックに対しては、キャプチャデータを当該仮想ハブの記憶領域に保存するリダイレクトを行う場合を除いては、キャプチャ処理の対象外とする手段と、
要求元のクライアント端末へ、既にキャプチャされ当該仮想ハブの記憶領域に保存されているキャプチャデータを送信する手段と、
要求元のクライアント端末へ、要求元のクライアント端末宛のユニキャストフレーム、ブロードキャストフレーム、マルチキャストフレームを、要求元のクライアント端末が要求するフィルタリングもしくはリダイレクトの設定に関わらず、送信する手段と
を具備することを特徴とする中継装置。 In a relay device that forms a virtual hub by software and performs a capture process in response to a request from any client terminal among a plurality of client terminals that perform virtual network communication via the virtual hub,
Means for mirroring traffic between all other ports or between some ports to the port containing the requesting client terminal;
Means for performing filter setting on a frame before sending to the requesting client terminal or a frame before saving in the storage area of the virtual hub and filtering based on the setting at the port accommodating the requesting client terminal; ,
Means for sending capture data to the requesting client terminal at the port accommodating the requesting client terminal;
Means for performing a redirect to store in the storage area of the virtual hub without sending capture data to the requesting client terminal at a port accommodating the requesting client terminal;
For traffic that flows into the virtual hub from the port that accommodates the requesting client terminal, it is not subject to capture processing unless it is redirected to save the capture data in the storage area of the virtual hub. Means,
Means for transmitting captured data already captured and stored in the storage area of the virtual hub to the requesting client terminal;
Means for transmitting to the requesting client terminal a unicast frame, broadcast frame, or multicast frame addressed to the requesting client terminal, regardless of the filtering or redirection setting requested by the requesting client terminal. A relay device characterized by
要求元のクライアント端末を収容するポートへ、他の全てのポート間、或いは一部のポート間のトラフィックをミラーリングする機能と、
要求元のクライアント端末を収容するポートで、要求元のクライアント端末へ送出する前のフレーム、或いは、当該仮想ハブの記憶領域に保存する前のフレームに対するフィルタ設定および当該設定に基づくフィルタリングを行なう機能と、
要求元のクライアント端末を収容するポートで、キャプチャデータを要求元のクライアント端末へ送出する機能と、
要求元のクライアント端末を収容するポートで、キャプチャデータを要求元のクライアント端末へ送出せずに、当該仮想ハブの記憶領域に保存するリダイレクトを行なう機能と、
要求元のクライアント端末を収容するポートから当該仮想ハブに流入するトラフィックに対しては、キャプチャデータを当該仮想ハブの記憶領域に保存するリダイレクトを行う場合を除いては、キャプチャ処理の対象外とする機能と、
要求元のクライアント端末へ、既にキャプチャされ当該仮想ハブの記憶領域に保存されているキャプチャデータを送信する機能と、
要求元のクライアント端末へ、要求元のクライアント端末宛のユニキャストフレーム、ブロードキャストフレーム、マルチキャストフレームを、要求元のクライアント端末が要求するフィルタリングもしくはリダイレクトの設定に関わらず、送信する機能と
をコンピュータに実現させることを特徴とするプログラム。 A program applied to a relay device that forms a virtual hub by software and performs a capture process in response to a request from an arbitrary client terminal among a plurality of client terminals that perform virtual network communication via the virtual hub. And
A function that mirrors traffic between all other ports or between some ports to the port that houses the requesting client terminal;
A function for performing filter setting and filtering based on the frame before sending to the requesting client terminal or the frame before saving in the storage area of the virtual hub at the port accommodating the requesting client terminal; ,
A function for sending capture data to the requesting client terminal at the port that accommodates the requesting client terminal;
A function for performing a redirect to save the captured data in the storage area of the virtual hub without sending the capture data to the requesting client terminal at a port accommodating the requesting client terminal;
For traffic that flows into the virtual hub from the port that accommodates the requesting client terminal, it is not subject to capture processing unless it is redirected to save the capture data in the storage area of the virtual hub. Function and
A function of transmitting captured data already captured and stored in the storage area of the virtual hub to the requesting client terminal;
A computer that can send unicast frames, broadcast frames, and multicast frames addressed to the requesting client terminal to the requesting client terminal regardless of the filtering or redirection settings requested by the requesting client terminal. A program characterized by letting
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007302053A JP4417993B2 (en) | 2007-11-21 | 2007-11-21 | Network virtualization system, relay device, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007302053A JP4417993B2 (en) | 2007-11-21 | 2007-11-21 | Network virtualization system, relay device, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009130527A JP2009130527A (en) | 2009-06-11 |
JP4417993B2 true JP4417993B2 (en) | 2010-02-17 |
Family
ID=40821035
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007302053A Expired - Fee Related JP4417993B2 (en) | 2007-11-21 | 2007-11-21 | Network virtualization system, relay device, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4417993B2 (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4703689B2 (en) * | 2008-06-12 | 2011-06-15 | 株式会社東芝 | Network virtualization system and program |
JP2013223191A (en) * | 2012-04-18 | 2013-10-28 | Nec Corp | Communication system, control device, packet collection method and program |
JP6011109B2 (en) * | 2012-07-26 | 2016-10-19 | 日本電気株式会社 | Information processing system and information processing method |
JP6248763B2 (en) | 2014-03-31 | 2017-12-20 | 富士通株式会社 | Capture point determination method, capture point determination system, and capture point determination program |
JP6733147B2 (en) | 2015-10-07 | 2020-07-29 | 富士通株式会社 | Communication system, relay method, and relay program |
JP2016096578A (en) * | 2016-01-19 | 2016-05-26 | ニフティ株式会社 | Relay device, information processing method, and program |
-
2007
- 2007-11-21 JP JP2007302053A patent/JP4417993B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2009130527A (en) | 2009-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11856065B2 (en) | Data transmission for service integration between a virtual private cloud and an intranet | |
JP4417993B2 (en) | Network virtualization system, relay device, and program | |
US9596178B2 (en) | Relay server and relay communication system | |
CN102483702A (en) | Network traffic processing pipeline for virtual machines in network devices | |
EP3576347B1 (en) | Network device snapshots | |
CN104919762B (en) | Control method in software defined network, controls equipment and processor | |
US9344399B2 (en) | Relay server and relay communication system | |
US9407529B2 (en) | Relay server and relay communication system | |
JP4498406B2 (en) | Network virtualization system, relay device, and program | |
US8554935B2 (en) | Relay server and relay communication system | |
US8259324B2 (en) | Printer/storage integrate system, controller, control method, and control program for automatic installation of control software | |
JP5488094B2 (en) | COMMUNICATION DEVICE, NETWORK ACCESS METHOD, AND COMPUTER PROGRAM | |
US9197557B2 (en) | Relay server and relay communication system | |
US20130136130A1 (en) | Relay server and relay communication system | |
Cisco | Configuring IBM Channel Attach | |
Cisco | Configuring IBM Channel Attach | |
Cisco | Configuring IBM Channel Attach | |
Cisco | Configuring IBM Channel Attach | |
Cisco | Configuring IBM Channel Attach | |
Cisco | Configuring IBM Channel Attach | |
Cisco | Configuring IBM Channel Attach | |
CN114189485A (en) | Network port management method and system of switch and computer readable storage medium | |
CN114268578A (en) | Data transmission method, device and equipment for switching line and storage medium | |
JP2007213129A (en) | PPPoE communication system | |
JP7456624B2 (en) | Network management device, initial setting method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091013 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20091104 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091126 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121204 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |