JP2020027961A - ミラーパケット転送プログラム及びミラーパケット転送方法 - Google Patents

ミラーパケット転送プログラム及びミラーパケット転送方法 Download PDF

Info

Publication number
JP2020027961A
JP2020027961A JP2018150323A JP2018150323A JP2020027961A JP 2020027961 A JP2020027961 A JP 2020027961A JP 2018150323 A JP2018150323 A JP 2018150323A JP 2018150323 A JP2018150323 A JP 2018150323A JP 2020027961 A JP2020027961 A JP 2020027961A
Authority
JP
Japan
Prior art keywords
packet
mirror packet
port
mirror
transfer
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.)
Granted
Application number
JP2018150323A
Other languages
English (en)
Other versions
JP7104317B2 (ja
Inventor
鈴木 和宏
Kazuhiro Suzuki
和宏 鈴木
幸洋 渡辺
Koyo Watanabe
幸洋 渡辺
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2018150323A priority Critical patent/JP7104317B2/ja
Priority to US16/530,220 priority patent/US20200053024A1/en
Publication of JP2020027961A publication Critical patent/JP2020027961A/ja
Application granted granted Critical
Publication of JP7104317B2 publication Critical patent/JP7104317B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/208Port mirroring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • H04L12/4675Dynamic sharing of VLAN information amongst network nodes
    • H04L12/4679Arrangements for the registration or de-registration of VLAN attribute values, e.g. VLAN identifiers, port VLAN membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】特定の転送先にミラーパケットを転送することを可能とするミラーパケット転送プログラム及びミラーパケット転送方法を提供する。【解決手段】ミラーパケットに付加されるVLANID毎に、各VLANIDが付加されたミラーパケットの通過を許可するポートを特定し、特定したポートの数が1であるVLANIDが付加されたミラーパケットを、特定したポートに転送することと、特定したポートの数が2であるVLANIDが付加されたミラーパケットを、特定したポートのうち、接続している仮想マシンの数が1であるポートに転送することとを示す転送情報を生成し、仮想マシンによって送信されたパケットから第1ミラーパケットが生成された場合、転送情報を記憶した記憶部を参照し、第1ミラーパケットに対応する第1ポートに第1ミラーパケットを転送する。【選択図】図11

Description

本発明は、ミラーパケット転送プログラム及びミラーパケット転送方法に関する。
例えば、利用者にサービスを提供する事業者(以下、単に事業者とも呼ぶ)は、利用者に対してサービスの提供を行うための情報処理システムを構築して稼働させる。具体的に、事業者は、例えば、物理マシンに生成した仮想マシン(以下、VM:Virtual Machineとも呼ぶ)や仮想スイッチを用いた情報処理システムの構築を行う。
上記のような情報処理システムにおいて、仮想スイッチは、例えば、各VMと接続しているポートにおいて入出力が行われるパケットからミラーパケットを生成し、生成したミラーパケットを他のVM(以下、監視VMとも呼ぶ)に転送する。そして、監視VMは、例えば、仮想スイッチから転送されたミラーパケットのそれぞれを解析する。これにより、監視VMは、仮想スイッチを経由するパケットについての監視を行うことが可能になる(例えば、特許文献1及び2参照)。
特開2009−088936号公報 特開2009−033719号公報
ここで、例えば、VMが生成されている各物理マシン間のネットワークがトンネルによって接続される場合、各物理マシンには、他の物理マシンに送信するパケットに対してトンネル処理を行う仮想スイッチが生成される。
具体的に、トンネル処理を行う仮想スイッチでは、この場合、パケットに対するトンネル処理に加え、監視VMが生成されている物理マシンを示す情報の生成が行われる。そして、トンネル処理を行う仮想スイッチは、生成した情報を参照することにより、トンネル処理が行われたミラーパケットを監視VMに送信する。
これに対し、例えば、DPDK(Data Plane Development Kit)が用いられているネットワークのように、VMが生成されている各物理マシン間のネットワークがVLAN(Virtual Local Area Network)によって接続されている場合、各物理マシンでは、トンネル処理を行う必要がないため、トンネル処理を行う仮想スイッチが生成されない。したがって、各物理マシンでは、この場合、監視VMが生成されている物理マシンを特定することができず、監視VMに対するミラーパケットの送信を行うことができない。
そこで、一つの側面では、本発明は、特定の転送先にミラーパケットを転送することを可能とするミラーパケット転送プログラム及びミラーパケット転送方法を提供することを目的とする。
実施の形態の一態様では、仮想マシンによって送信されたパケットから生成されるミラーパケットの転送処理を仮想スイッチに実行させるミラーパケット転送プログラムであって、前記ミラーパケットに付加されるVLANID毎に、各VLANIDが付加された前記ミラーパケットの通過を許可するポートを特定し、特定した前記ポートの数が1である前記VLANIDが付加された前記ミラーパケットを、特定した前記ポートに転送することと、特定した前記ポートの数が2である前記VLANIDが付加されたミラーパケットを、特定した前記ポートのうち、接続している仮想マシンの数が1であるポートに転送することとを示す転送情報を生成し、前記仮想マシンによって送信されたパケットから第1ミラーパケットが生成された場合、前記転送情報を記憶した記憶部を参照し、前記第1ミラーパケットに対応する第1ポートに前記第1ミラーパケットを転送する。
一つの側面によれば、特定の転送先にミラーパケットを転送することを可能とする。
図1は、情報処理システム10の構成について説明する図である。 図2は、情報処理システム10の構成について説明する図である。 図3は、情報処理システム10の構成について説明する図である。 図4は、情報処理システム10の構成について説明する図である。 図5は、物理マシン1のハードウエア構成を説明する図である。 図6は、物理マシン2のハードウエア構成を説明する図である。 図7は、SW21の機能のブロック図である。 図8は、SW23の機能のブロック図である。 図9は、第1の実施の形態におけるミラーパケット転送処理の概略を説明するフローチャート図である。 図10は、第1の実施の形態におけるミラーパケット転送処理の概略を説明する図である。 図11は、第1の実施の形態におけるミラーパケット転送処理の概略を説明する図である。 図12は、第1の実施の形態におけるミラーパケット転送処理の詳細を説明するフローチャート図である。 図13は、第1の実施の形態におけるミラーパケット転送処理の詳細を説明するフローチャート図である。 図14は、第1の実施の形態におけるミラーパケット転送処理の詳細を説明するフローチャート図である。 図15は、第1の実施の形態におけるミラーパケット転送処理の詳細を説明するフローチャート図である。 図16は、第1の実施の形態におけるミラーパケット転送処理の詳細を説明するフローチャート図である。 図17は、情報生成処理の具体例について説明する図である。 図18は、情報生成処理の具体例について説明する図である。 図19は、アドレス情報131の具体例について説明する図である。 図20は、転送情報132の具体例について説明する図である。 図21は、VLANIDが付加されたミラーパケットの具体例を説明する図である。
[情報処理システムの構成]
初めに、情報処理システム10の構成について説明を行う。図1から図4は、情報処理システム10の構成について説明する図である。具体的に、情報処理システム10は、物理マシン1と物理マシン2とを含む複数の物理マシンを有する。
物理マシン1及び物理マシン2は、例えば、CPU(Central Processing Unit)、メモリ(DRAM:Dynamic Random Access Memory)、ハードディスク(HDD:Hard Disk Drive)及びネットワーク等からなるハードウエア(図示しない)をそれぞれ有する。そして、物理マシン1及び物理マシン2のハードウエア上では、それぞれ仮想化ソフトウエア(図示しない)が動作する。
物理マシン1の仮想化ソフトウエアは、物理マシン1のハードウエアの一部を割り当てることによって、例えば、図1に示すように、VM11、監視VM12、仮想スイッチ21(以下、SW21または第1SW21とも呼ぶ)及び仮想スイッチ22(以下、SW22とも呼ぶ)をそれぞれ生成する。
物理マシン2の仮想化ソフトウエアは、物理マシン2のハードウエアの一部を割り当てることによって、例えば、図1に示すように、VM13、仮想スイッチ23(以下、SW23または第2SW23とも呼ぶ)及び仮想スイッチ24(以下、SW24とも呼ぶ)をそれぞれ生成する。
SW21は、例えば、ポート21a、ポート21bと、ポート21cと、ポート21dとを含む複数のポートを有し、VM11から送信されたパケットを複製することによってミラーパケットを生成する。そして、SW21は、例えば、パケットの転送を制御するプロトコルであるオープンフロー(Open Flow)の設定に従って、生成したミラーパケットをSW22に送信する。また、SW21は、例えば、物理マシン1と異なる物理マシン(例えば、物理マシン2)からパケット(ミラーパケット)を受信した場合についても同様に、受信したパケットをSW22に送信する。その後、SW21は、例えば、SW22から転送されたパケットを監視VM12に送信する。なお、図1に示す例において、ポート21a、ポート21b、ポート21c及びポート21dは、VM11、監視VM12、物理マシン1のNIC(Network Interface Card)31及びSW22とそれぞれ接続している。
SW22は、例えば、ポート22aを含む複数のポートを有し、オープンフローの設定に従って、SW21から送信されたミラーパケットを監視VM12と接続する仮想スイッチに送信する。具体的に、SW22は、例えば、SW21から送信されたミラーパケットをSW21に送信する。なお、図1に示す例において、ポート22aは、SW21と接続している。
SW23は、例えば、ポート23a、ポート23bと、ポート23cと、ポート23dとを含む複数のポートを有し、VM13から送信されたパケットを複製することによってミラーパケットを生成する。そして、SW23は、例えば、オープンフローの設定に従って、生成したミラーパケットをSW24に送信する。また、SW23は、例えば、物理マシン2と異なる物理マシン(例えば、物理マシン1)からパケット(ミラーパケット)を受信した場合についても同様に、受信したパケットをSW24に送信する。その後、SW23は、例えば、SW24から転送されたパケットを監視VM12に送信する。なお、図1に示す例において、ポート23a、ポート23c及びポート23dは、VM13、物理マシン2のNIC32及びSW24とそれぞれ接続している。
SW24は、例えば、ポート24aを含む複数のポートを有し、SW23から送信されたミラーパケットを監視VM12と接続する仮想スイッチに送信する。具体的に、SW24は、例えば、SW23から送信されたミラーパケットをSW23に送信する。なお、図1に示す例において、ポート24aは、SW23と接続している。
ここで、例えば、物理マシン1と物理マシン2との間のネットワークがトンネルによって接続される場合、物理マシン1及び2には、他の物理マシンに対して送信するミラーパケットに対してトンネル処理を行う仮想スイッチがそれぞれ生成される。具体的に、物理マシン1及び物理マシン2には、例えば、図2に示すように、トンネル処理を行う仮想スイッチとして仮想スイッチ41(以下、SW41とも呼ぶ)と仮想スイッチ42(以下、SW42とも呼ぶ)とがそれぞれ生成される。
そして、SW41及びSW42では、この場合、他の物理マシンに送信されるパケットに対するトンネル処理に加え、監視VM12が生成されている物理マシンを示す情報の生成が行われる。具体的に、例えば、図2に示すように、監視VM12が物理マシン1に生成されている場合、SW42は、VM13から送信されたパケットのミラーパケットを監視VM12に送信するために、監視VM12が物理マシン1に生成されていることを示す情報の生成を行う。また、例えば、図3に示すように、監視VM12が物理マシン2に生成されている場合、SW41は、VM11から送信されたパケットのミラーパケットを監視VM12に送信するために、監視VM12が物理マシン2に生成されていることを示す情報の生成を行う。
これにより、監視VM12は、異なる物理マシンに生成されたVMから送信されたミラーパケットについても収集することが可能になる。
これに対し、図1に示すように、物理マシン1と物理マシン2との間のネットワークがVLANによって接続されている場合、物理マシン1及び2では、トンネル処理を行う必要がないため、SW41やSW42の生成が行われない。したがって、SW22は、この場合、SW21から送信されたパケットをそのままSW21に送信する。また、SW24は、この場合、SW23から送信されたパケットをそのままSW23に送信する。
しかしながら、SW21及びSW23は、SW41及びSW42と異なり、監視VM12が生成されている物理マシンを特定することができない。そのため、SW21及びSW23は、SW22及びSW24から送信されたミラーパケットを監視VM12に対して送信できない場合がある。
具体的に、SW21は、SW41が物理マシン1に生成されていない場合、SW22からミラーパケットを受信した場合であっても、図1に示すように、監視VM12が物理マシン1に生成されているのか、または、図4に示すように、監視VM12が物理マシン2に生成されているのかを判定することができない。同様に、SW23は、SW42が物理マシン2に生成されていない場合、SW24からミラーパケットを受信した場合であっても、図1に示すように、監視VM12が物理マシン1に生成されているのか、または、図4に示すように、監視VM12が物理マシン2に生成されているのかを判定することができない。そのため、SW21及びSW23は、監視VM12に対するミラーパケットの送信を行うことができない場合がある。
そこで、例えば、本実施の形態におけるSW21は、ミラーパケットに付加されるVLANID毎に、各VLANIDが付加されたミラーパケットの通過を許可するポートを特定する。そして、SW21は、特定したポートの数が1であるVLANIDが付加されたミラーパケットを、特定したポートに転送することと、特定したポートの数が2であるVLANIDが付加されたミラーパケットを、特定したポートのうち、接続している仮想マシンの数が1であるポートに転送することとを示す転送情報を生成する。
その後、SW21は、VM11からのパケットの受信に伴って新たなミラーパケット(以下、第1ミラーパケットとも呼ぶ)が生成された場合、転送情報を記憶した記憶部を参照し、第1ミラーパケットに対応するポート(以下、第1ポートとも呼ぶ)に第1ミラーパケットを転送する。
すなわち、SW21は、VLAN毎に、各VLANに対応するポートの数を特定し、さらに、各ポートの先に接続されているVMの数を特定する。そして、SW21は、対応するポートの数が1であったVLANが存在した場合、そのVLANの監視VM12がSW21と異なる物理マシンである物理マシン2に生成されていると判定する。また、SW21は、対応するポートの数が2であったVLANが存在した場合、そのVLANの監視VM12が生成されている物理マシンを、各ポートの先に接続されているVMの数に従って判定する。
これにより、SW21は、トンネル処理を行う仮想スイッチ(監視VM12が生成されている物理マシンを特定する情報を生成する仮想スイッチ)が同じ物理マシンに存在していない場合であっても、ミラーパケットを監視VM12に転送することが可能になる。
[情報処理システムのハードウエア構成]
次に、情報処理システム10のハードウエア構成について説明する。図5は、物理マシン1のハードウエア構成を説明する図である。また、図6は、物理マシン2のハードウエア構成を説明する図である。
物理マシン1は、図5に示すように、プロセッサであるCPU101と、メモリ102と、外部インターフェース(I/Oユニット)103と、記憶媒体104とを有する。各部は、バス105を介して互いに接続される。
記憶媒体104は、例えば、ミラーパケットを監視VM12に対して転送する処理(以下、ミラーパケット転送処理とも呼ぶ)を行うためのプログラム110を記憶するプログラム格納領域(図示しない)を有する。また、記憶媒体104は、例えば、ミラーパケット転送処理を行う際に用いられる情報を記憶する記憶部130(以下、情報格納領域130とも呼ぶ)を有する。なお、記憶媒体104は、例えば、HDDであってよい。
CPU101は、記憶媒体104からメモリ102にロードされたプログラム110を実行してミラーパケット転送処理を行う。
外部インターフェース103は、例えば、物理マシン2と通信を行う。
また、物理マシン2は、図6に示すように、プロセッサであるCPU201と、メモリ202と、外部インターフェース(I/Oユニット)203と、記憶媒体204とを有する。各部は、バス205を介して互いに接続される。
記憶媒体204は、例えば、ミラーパケット転送処理を行うためのプログラム210を記憶するプログラム格納領域(図示しない)を有する。また、記憶媒体204は、例えば、ミラーパケット転送処理を行う際に用いられる情報を記憶する記憶部230(以下、情報格納領域230とも呼ぶ)を有する。なお、記憶媒体204は、例えば、HDDであってよい。
CPU201は、記憶媒体204からメモリ202にロードされたプログラム210を実行してミラーパケット転送処理を行う。
外部インターフェース203は、例えば、物理マシン1と通信を行う。
[情報処理システムの機能]
次に、情報処理システム10の機能について説明を行う。図7は、SW21の機能のブロック図である。また、図8は、SW23の機能のブロック図である。
SW21は、図7に示すように、物理マシン1のCPU101やメモリ102等のハードウエアとプログラム110とが有機的に協働することにより、パケット受信部111と、パケット複製部112と、パケット送信部113と、ポート検出部114と、情報管理部115と、パケット転送部116とを含む各種機能を実現する。
また、SW21は、図7に示すように、アドレス情報131と、転送情報132とを情報格納領域130に記憶する。
パケット受信部111は、SW21の外部から送信されたパケットを受信する。具体的に、パケット受信部111は、例えば、VM11から送信されたパケットやSW22から送信されたパケットを受信する。また、パケット受信部111は、例えば、NIC31を介して、物理マシン2(VM13)から送信されたパケットを受信する。
パケット複製部112は、例えば、VM11から送信されたパケットを複製することによってミラーパケットを生成する。
パケット送信部113は、SW21の外部に対してパケットを送信する。具体的に、パケット送信部113は、例えば、SW22に対してパケットを送信する。また、パケット送信部113は、例えば、NIC31を介して、物理マシン2(VM13)に対してパケットを送信する。
ポート検出部114は、ミラーパケットに付加されるVLANID毎に、各VLANIDが付加されたミラーパケットの通過を許可するポートを特定する。そして、ポート検出部114は、特定したポートの数が1であるVLANIDが付加されたミラーパケットを、特定したポートに転送することと、特定したポートの数が2であるVLANIDが付加されたミラーパケットを、特定したポートのうち、接続しているVMの数が1であるポートに転送することとを示す転送情報132を生成する。
具体的に、ポート検出部114は、各ポートと接続しているVMのMACアドレス(Media Access Control Address)を示すアドレス情報131を参照し、特定したポート毎に、接続しているVMの数の特定を行う。
情報管理部115は、ポート検出部114が生成した転送情報132を情報格納領域130に記憶する。
パケット転送部116は、VM11から受信したパケットを複製することによって第1ミラーパケットが生成された場合、転送情報132を記憶した情報格納領域130を参照し、第1ミラーパケットに対応する第1ポートを特定する。そして、パケット転送部116は、特定した第1ポートに対して第1ミラーパケットを転送する。
そして、SW23は、図8に示すように、物理マシン2のCPU201やメモリ202等のハードウエアとプログラム210とが有機的に協働することにより、パケット受信部211と、パケット複製部212と、パケット送信部213と、ポート検出部214と、情報管理部215と、パケット転送部216とを含む各種機能を実現する。
また、SW23は、図8に示すように、アドレス情報231と、転送情報232とを情報格納領域230に記憶する。
なお、パケット受信部211、パケット複製部212、パケット送信部213、ポート検出部214、情報管理部215及びパケット転送部216の機能は、パケット受信部111、パケット複製部112、パケット送信部113、ポート検出部114、情報管理部115及びパケット転送部116の機能と同じであるため説明を省略する。また、アドレス情報231及び転送情報232の内容は、アドレス情報131及び転送情報132の内容と同じであるため説明を省略する。
[第1の実施の形態の概略]
次に、第1の実施の形態の概略について説明する。図9は、第1の実施の形態におけるミラーパケット転送処理の概略を説明するフローチャート図である。また、図10及び図11は、第1の実施の形態におけるミラーパケット転送処理の概略を説明する図である。以下、SW21において行われるパケット転送処理について説明を行う。なお、SW23において行われるパケット転送処理については、SW21において行われるパケット転送処理と同じ内容であるため説明を省略する。
SW21は、図9に示すように、情報生成タイミングまで待機する(S1のNO)。情報生成タイミングは、転送情報132を生成するタイミングであって、例えば、事業者が物理マシン1に対して転送情報132を生成する旨の情報を入力したタイミングであってよい。
そして、情報生成タイミングになった場合(S1のYES)、SW21は、ミラーパケットに付加されるVLANID毎に、各VLANIDが付加されたミラーパケットの通過を許可するポートを特定する(S2)。
続いて、SW21は、S2の処理で特定したポート数が1であるVLANIDが付加されたミラーパケットを、S2の処理で特定したポートに転送することと、S2の処理で特定したポート数が2であるVLANIDが付加されたミラーパケットを、S2の処理で特定したポートのうち、接続しているVMの数が1であるポートに転送することとを示す転送情報132を生成する(S3)。
具体的に、SW21は、図10に示すように、例えば、VM11からのパケットの送信が開始される前に、転送情報132を生成して情報格納領域130に記憶する。
その後、SW21は、VM11によって送信されたパケットからミラーパケットが生成されるまで待機する(S4のNO)。
そして、VM11によって送信されたパケットからミラーパケットを生成した場合(S4のYES)、SW21は、S3の処理で生成した転送情報132を記憶した情報格納領域130を参照し、S4の処理で取得したミラーパケットに対する第1ポートに、S4の処理で取得したミラーパケットを転送する(S5)。
具体的に、SW21のポート21aは、図11に示すように、VM11から送信されたパケットを受信した場合、受信したパケットからミラーパケットを生成する。そして、SW21は、転送情報132を記憶した情報格納領域130を参照し、例えば、生成したミラーパケット(ミラーパケットに付加されたVLANID)に対応するポート21cを特定する。その後、SW21は、生成したミラーパケットをポート21cに対して転送する。
これにより、SW21は、トンネル処理を行う仮想スイッチ(監視VM12が生成されている物理マシンを特定する情報を生成する仮想スイッチ)が同じ物理マシンに存在していない場合であっても、監視VM12に対してミラーパケットを転送することが可能になる。
[第1の実施の形態の詳細]
次に、第1の実施の形態の詳細について説明する。図12から図16は、第1の実施の形態におけるミラーパケット転送処理の詳細を説明するフローチャート図である。また、図17から図21は、第1の実施の形態におけるミラーパケット転送処理の詳細を説明する図である。
[情報生成処理]
初めに、ミラーパケット転送処理のうち、転送情報132の生成を行う処理(以下、情報生成処理とも呼ぶ)について説明を行う。図12及び図13は、情報生成処理を説明するフローチャート図である。
SW21のポート検出部114は、図12に示すように、VLANIDの入力があるまで待機する(S11のNO)。具体的に、ポート検出部114は、例えば、事業者が物理マシン1に対してVLANID(転送情報132の生成を行うVLANID)の入力を行うまで待機する。
そして、VLANIDの入力があった場合(S11のYES)、ポート検出部114は、情報格納領域130に記憶されたアドレス情報131を参照し、S11の処理で入力されたVLANIDに対応するポートを特定する(S12)。以下、アドレス情報131の具体例について説明を行う。
[アドレス情報の具体例]
図19は、アドレス情報131の具体例について説明する図である。
図19に示すアドレス情報131は、アドレス情報131に含まれる各情報を記憶する「項番」と、ミラーパケットに付加されるVLANIDを記憶する「VLANID」と、SW21のポートの識別情報が記憶される「ポートID」と、各VMのMACアドレスが設定される「MACアドレス」とを項目として有する。なお、以下、図1等で説明したポート21b及びポート21cを、それぞれPT21b及びPT21cとも呼ぶ。
具体的に、図19に示すアドレス情報131において、「項番」が「1」である情報には、「VLANID」として「0x400」が記憶され、「ポートID」として「PT21c」が記憶され、「MACアドレス」として「MAC0」が記憶されている。
また、図19に示すアドレス情報131において、「項番」が「2」である情報には、「VLANID」として「0x400」が記憶され、「ポートID」として「PT21c」が記憶され、「MACアドレス」として「MAC1」が記憶されている。
また、図19に示すアドレス情報131において、「項番」が「3」である情報には、「VLANID」として「0x400」が記憶され、「ポートID」として「PT21c」が記憶され、「MACアドレス」として「MAC2」が記憶されている。
さらに、図19に示すアドレス情報131において、「項番」が「4」である情報には、「VLANID」として「0x400」が記憶され、「ポートID」として「PT21b」が記憶され、「MACアドレス」として「MAC3」が記憶されている。図19に含まれる他の情報についての説明は省略する。
そして、図19に示すアドレス情報131において、「VLANID」に「0x400」が設定された情報(「項番」が「1」から「4」である情報)の「ポートID」には、それぞれ「PT21c」、「PT21c」、「PT21c」及び「PT21b」が記憶されている。そのため、ポート検出部114は、S12の処理において、S11の処理で入力されたVLANIDに対応するポートとして「PT21c」及び「PT21b」を特定する。
図12に戻り、ポート検出部114は、S12の処理で特定したポートの数が1であるか否かを判定する(S13)。
その結果、S12の処理で特定したポートの数が1であると判定した場合(S13のYES)、ポート検出部114は、S11の処理で入力されたVLANIDと、S12の処理で特定したポートとを対応付けた転送情報132を生成する(S14)。
すなわち、ミラーパケットが転送される可能性があるポートの数が1である場合、ポート検出部114は、SW21と異なる物理マシンに監視VM12が生成されていると判断できる。そして、ポート検出部114は、この場合、ミラーパケットが転送される可能性がある1のポートが監視VM21と接続するポートであると判断できる。
そのため、ポート検出部114は、S14の処理において、S11の処理で入力されたVLANIDと、S12の処理で特定したポート(ミラーパケットが転送される可能性があるポート)とを対応付けた転送情報132の生成を行う。以下、転送情報132の具体例について説明を行う。
[転送情報の具体例]
図20は、転送情報132の具体例について説明する図である。具体的に、図20は、SW21のポートについての転送情報132の具体例について説明する図である。
図20に示す転送情報132は、転送情報132に含まれる各情報を記憶する「項番」と、ミラーパケットに付加されるVLANIDを記憶する「VLANID」と、SW21のポートの識別情報が記憶される「ポートID」とを項目として有する。
具体的に、図20に示す転送情報132において、「項番」が「1」である情報には、「VLANID」として「0x400」が記憶され、「ポートID」として「PT21b」が記憶されている。すなわち、「項番」が「1」である情報は、「VLANID」として「0x400」が付加されているミラーパケットが生成された場合、生成されたミラーパケットを「ポートID」が「PT21b」であるポートに転送すべきことを示している。
また、図20に示す転送情報132において、「項番」が「2」である情報には、「VLANID」として「0x401」が記憶され、「ポートID」として「PT21c」が記憶されている。すなわち、「項番」が「2」である情報は、「VLANID」として「0x401」が付加されているミラーパケットが生成された場合、生成されたミラーパケットを「ポートID」が「PT21c」であるポートに転送すべきことを示している。
さらに、図20に示す転送情報132において、「項番」が「3」である情報には、「VLANID」として「0x402」が記憶され、「ポートID」として「PT21c」が記憶されている。すなわち、「項番」が「3」である情報は、「VLANID」として「0x402」が付加されているミラーパケットが生成された場合、生成されたミラーパケットを「ポートID」が「PT21c」であるポートに転送すべきことを示している。
図12に戻り、ポート検出部114は、S14の処理で生成した転送情報132を情報格納領域130に記憶する(S15)。
一方、S12の処理で特定したポートの数が1以外(ポートの数が2)であると判定した場合(S13のNO)、ポート検出部114は、図13に示すように、S12の処理で特定したポートのうちの1つ特定する(S21)。
そして、ポート検出部114は、情報格納領域130に記憶されたアドレス情報131を参照し、S11の処理で入力されたVLANIDと、S21の処理で特定したポートとに対応するMACアドレスを特定する(S22)。
具体的に、図19で説明したアドレス情報131において、「VLANID」が「0x400」であって「ポートID」が「PT21c」である情報(「項番」が「1」から「3」である情報)の「MACアドレス」は、「MAC0」、「MAC1」及び「MAC2」である。
そのため、S11の処理で入力された「VLANID」が「0x400」であって、S21の処理で特定した「ポートID」が「PT21c」である場合、ポート検出部114は、S22の処理において、MACアドレスとして「MAC0」、「MAC1」及び「MAC2」を特定する。
一方、図19で説明したアドレス情報131において、「VLANID」が「0x400」であって「ポートID」が「PT21b」である情報(「項番」が「4」である情報)の「MACアドレス」は、「MAC3」である。
そのため、S11の処理で入力された「VLANID」が「0x400」であって、S21の処理で特定した「ポートID」が「PT21b」である場合、ポート検出部114は、S22の処理において、MACアドレスとして「MAC3」を特定する。
そして、S22の処理で特定されたMACアドレスの数が1以外である場合(S23のNO)、ポート検出部114は、S21以降の処理を再度行う。
一方、S22の処理で特定されたMACアドレスの数が1である場合(S23のYES)、ポート検出部114は、S11の処理で入力されたVLANIDと、S21の処理において最後に特定したポートとを対応付けた転送情報132を生成する(S24)。
その後、SW11の情報管理部115は、S24の処理で生成した転送情報132を情報格納領域130に記憶する(S25)。そして、SW11は、情報生成処理を終了する。
すなわち、ミラーパケットが転送される可能性があるポートの数が2である場合、ポート検出部114は、SW21と同じ物理マシン(物理マシン1)に監視VM12が生成されていると判断できる。また、ポート検出部114は、この場合、ミラーパケットが転送される可能性がある2のポートのうち、一方が監視VM12に接続するポートであり、他方が物理マシン1の外部に接続するポートであると判断できる。
さらに、対応するMACアドレスの数が2以上であるポートは、物理マシン1の外部に接続されたポートであると判断できる。一方、対応するMACアドレスの数が1であるポートは、SW21と同じ物理マシン(物理マシン1)に生成された1のVMに接続するポートであると判断できる。
そのため、ポート検出部114は、S24の処理において、S11の処理で入力されたVLANIDと、S21の処理において最後に特定したポート(対応するMACアドレスの数が1であるポート)とを対応付けた転送情報132の生成を行う。以下、情報生成処理の具体例について説明を行う。
[情報生成処理の具体例]
図17及び図18は、情報生成処理の具体例について説明する図である。
初めに、監視VM12が物理マシン2に生成されている場合の具体例について説明を行う。図17は、監視VM12が物理マシン2に生成されている場合の具体例を説明する図である。以下、VM11から送信されたパケットのミラーパケットには、VLANIDとして0x400が付加されるものとして説明を行う。また、以下、図17に示す例において、ポート21c、ポート23b及びポート23cのそれぞれには、VLANIDが0x400であるミラーパケットの中継を行う旨の設定が行われているものとして説明を行う。
図17に示す例において、SW21のポートのうち、ポート21aにおいてVLANIDとして0x400が付加されたミラーパケット(VM11から送信されたパケットのミラーパケット)の中継を行うポートは、ポート21cのみである。
そのため、ポート検出部114は、この場合、VLANIDとして0x400が付加されたミラーパケットをポート21cに送信することを示す転送情報132を生成する。
次に、監視VM12が物理マシン1に生成されている場合の具体例について説明を行う。図18は、監視VM12が物理マシン1に生成されている場合の具体例を説明する図である。以下、図18に示す例において、ポート21b、ポート21c及びポート23cのそれぞれにおいて、VLANIDが0x400であるミラーパケットの中継を行う旨の設定(VLANの設定)が行われているものとする。
図18に示す例において、SW21のポートのうち、ポート21aにおいてVLANIDとして0x400が付加されたミラーパケット(VM11から送信されたパケットのミラーパケット)の中継を行うポートは、ポート21bまたはポート21cである。
また、図19で説明したアドレス情報131には、ポート21cに対応するMACアドレスの数が3であり、ポート21bに対応するMACアドレスが1である旨の情報が含まれている。
そのため、ポート検出部114は、VLANIDとして0x400が付加されたミラーパケットの中継を行うポートであるポート21b及びポート21cのうち、対応するMACアドレスの数が1であるポート21bを、監視VM21と接続するポートとして特定することが可能になる。したがって、ポート検出部114は、この場合、VLANIDとして0x400が付加されたミラーパケットをポート21bに送信することを示す転送情報132を生成する。
これにより、SW21は、トンネル処理を行う仮想スイッチが同じ物理マシン(物理マシン1)に存在していない場合であっても、監視VM12に対してミラーパケットを転送することが可能になる。
[ミラーパケット転送処理の詳細]
次に、ミラーパケット転送処理のうち、情報生成処理以外の処理について説明を行う。図14から図16は、ミラーパケット転送処理のうち、情報生成処理以外の処理を説明するフローチャート図である。
SW21のパケット受信部111は、図14に示すように、SW21の外部から送信されたパケットを受信するまで待機する(S31のNO)。具体的に、パケット受信部111は、例えば、VM11から送信されたパケットをポート21aが受信するまで待機する。また、パケット受信部111は、例えば、SW22から送信されたパケットをポート21dが受信するまで待機する。さらに、パケット受信部111は、例えば、物理マシン2等の他の物理マシン(他の物理マシンに生成されたVM)から送信されたパケットをポート21cが受信するまで待機する。
そして、SW21の外部から送信されたパケットを受信した場合(S31のYES)、パケット受信部111は、受信したパケットがSW22から送信されたパケットであるか否かを判定する(S32)。
さらに、S31の処理で受信したパケットがSW22から送信されたパケットでないと判定した場合(S32のNO)、パケット受信部111は、S31の処理で受信したパケットが物理マシン2等の他の物理マシンから送信されたパケットであるか否かを判定する(S33)。
その結果、S31の処理で受信したパケットが物理マシン2等の他の物理マシンから送信されたパケットであると判定した場合(S33のYES)、SW21のパケット転送部116は、S31の処理で受信したパケットを、同じ物理マシン1で動作するSW22に転送する(S34)。そして、SW21は、ミラーパケット転送処理を終了する。
一方、S31の処理で受信したパケットが他の物理マシンから送信されたパケットでないと判定した場合、すなわち、S31の処理で受信したパケットがVM11から送信されたパケットであると判定した場合(S33のNO)、SW21のパケット複製部112は、図16に示すように、S31の処理で受信したパケットを複製することによってミラーパケットを生成する(S51)。
続いて、SW21のパケット送信部113は、S31の処理で受信したパケットを宛先に送信する(S52)。
そして、パケット転送部116は、S51の処理で生成したミラーパケットに対し、S31の処理で受信したパケットの送信元のVMに対応するVLANIDを付加する(S53)。
具体的に、パケット転送部116は、S31の処理で受信したパケットの送信元のVMがVM11である場合、S51の処理で生成したミラーパケットに対してVM11に対応するVLANIDを付加する。以下、VLANIDが付加されたミラーパケットの具体例について説明を行う。
[VLANIDが付加されたミラーパケットの具体例]
図21は、VLANIDが付加されたミラーパケットの具体例を説明する図である。
図21に示すように、ミラーパケットの「イーサネット(登録商標)ヘッダ」に含まれる「VLANタグ」に対応する領域には、「VLANID」に対応する領域が含まれている。そのため、パケット転送部116は、S53の処理において、例えば、S31の処理で受信したパケットの送信元のVMに対応するVLANIDを「VLANID」に対応する領域に設定する。
図16に戻り、パケット転送部116は、S53の処理でVLANIDを付加したミラーパケットを、同じ物理マシン1で動作するSW22に転送する(S54)。そして、SW21は、ミラーパケット転送処理を終了する。
また、S32の処理において、S31の処理で受信したパケットがSW22から送信されたパケットであると判定した場合(S32のYES)、パケット転送部116は、図15に示すように、情報格納領域130に記憶された転送情報132を参照し、S31の処理で受信したパケットに付加されたVLANIDに対応するポートを特定する(S41)。
具体的に、図20で説明した転送情報132において、「VLANID」が「0x400」である情報(「項番」が「1」である情報)に対応する「ポートID」には、「PT21b」が記憶されている。そのため、VM11に対応する「VLANID」が「0x400」である場合、パケット転送部116は、S41の処理において、ポートIDとして「PT21b」を特定する。
すなわち、パケット転送部116は、この場合、監視VM12がSW21と同じ物理マシン(物理マシン1)に生成されており、かつ、監視VM12がポート21bに接続されていることを特定する。
そして、パケット転送部116は、S31の処理で受信したパケットを、S41の処理で特定したポートに転送する(S42)。
これにより、SW21は、予め生成した転送情報132を参照することで、監視VM12に対してミラーパケットを転送することが可能になる。そのため、SW21は、トンネル処理を行う仮想スイッチが物理マシン1に生成されていない場合であっても、監視VM12に対してミラーパケットを転送することが可能になる。
このように、本実施の形態におけるSW11は、ミラーパケットに付加されるVLANID毎に、各VLANIDが付加されたミラーパケットの通過を許可するポートを特定する。そして、SW21は、特定したポートの数が1であるVLANIDが付加されたミラーパケットを、特定したポートに転送することと、特定したポートの数が2であるVLANIDが付加されたミラーパケットを、特定したポートのうち、接続している仮想マシンの数が1であるポートに転送することとを示す転送情報132を生成する。
その後、SW21は、VM11からのパケットの受信に伴って第1ミラーパケットが生成された場合、転送情報132を記憶した情報格納領域130を参照し、第1ミラーパケットに対応する第1ポートに第1ミラーパケットを転送する。
すなわち、SW21は、VLAN毎に、各VLANに対応するポートの数を特定し、さらに、各ポートの先に接続されているVMの数を特定する。そして、SW21は、対応するポートの数が1であったVLANが存在した場合、そのVLANの監視VM12がSW21と異なる物理マシンである物理マシン2に生成されていると判定する。また、SW21は、対応するポートの数が2であったVLANが存在した場合、そのVLANの監視VM12が生成されている物理マシンを、各ポートの先に接続されているVMの数に従って判定する。
これにより、SW21は、トンネル処理を行う仮想スイッチ(監視VM12が生成されている物理マシンを特定する情報を生成する仮想スイッチ)が同じ物理マシンである物理マシン1に存在していない場合であっても、監視VM12に対してミラーパケットを転送することが可能になる。
以上の実施の形態をまとめると、以下の付記のとおりである。
(付記1)
仮想マシンによって送信されたパケットから生成されるミラーパケットの転送処理を仮想スイッチに実行させるミラーパケット転送プログラムであって、
前記ミラーパケットに付加されるVLANID毎に、各VLANIDが付加された前記ミラーパケットの通過を許可するポートを特定し、
特定した前記ポートの数が1である前記VLANIDが付加された前記ミラーパケットを、特定した前記ポートに転送することと、特定した前記ポートの数が2である前記VLANIDが付加されたミラーパケットを、特定した前記ポートのうち、接続している仮想マシンの数が1であるポートに転送することとを示す転送情報を生成し、
前記仮想マシンによって送信されたパケットから第1ミラーパケットが生成された場合、前記転送情報を記憶した記憶部を参照し、前記第1ミラーパケットに対応する第1ポートに前記第1ミラーパケットを転送する、
ことを特徴とするミラーパケット転送プログラム。
(付記2)
付記1において、
前記転送情報を生成する処理では、各ポートと接続している仮想マシンのMACアドレスを示すアドレス情報を記憶した記憶部を参照し、特定した前記ポートの数が2である前記VLANIDが付加されたミラーパケットを、特定した前記ポートのうち、対応する前記MACアドレスの数が1であるポートに転送することを示す前記転送情報を生成する、
ことを特徴とするミラーパケット転送プログラム。
(付記3)
付記1において、
前記転送する処理では、
前記仮想スイッチと異なる他の仮想スイッチと接続している第2ポートに前記第1ミラーパケットを転送し、
前記他の仮想スイッチから前記第2ポートに前記第1ミラーパケットが転送されたことに応じて、前記転送情報を記憶した記憶部を参照し、前記第1ポートに前記第1ミラーパケットを転送する、
ことを特徴とするミラーパケット転送プログラム。
(付記4)
付記1において、
前記第1ミラーパケットは、前記仮想スイッチと同じ物理マシンで動作する仮想マシンから送信されたパケットを複製することによって生成されたミラーパケットである、
ことを特徴とするミラーパケット転送プログラム。
(付記5)
付記1において、
前記第1ミラーパケットは、前記仮想スイッチと異なる物理マシンで動作する仮想マシンから送信されたパケットを複製することによって生成されたミラーパケットである、
ことを特徴とするミラーパケット転送プログラム。
(付記6)
付記1において、
前記転送する処理では、前記転送情報を記憶した記憶部を参照し、取得した前記第1ミラーパケットと同じVLANIDが付加されたミラーパケットの通過を許可するポートを前記第1ポートとして特定する、
ことを特徴とするミラーパケット転送プログラム。
(付記7)
仮想マシンによって送信されたパケットから生成されるミラーパケットを転送するミラーパケット転送方法であって、
前記ミラーパケットに付加されるVLANID毎に、各VLANIDが付加された前記ミラーパケットの通過を許可するポートを特定し、
特定した前記ポートの数が1である前記VLANIDが付加された前記ミラーパケットを、特定した前記ポートに転送することと、特定した前記ポートの数が2である前記VLANIDが付加されたミラーパケットを、特定した前記ポートのうち、接続している仮想マシンの数が1であるポートに転送することとを示す転送情報を生成し、
前記仮想マシンによって送信されたパケットから第1ミラーパケットが生成された場合、前記転送情報を記憶した記憶部を参照し、前記第1ミラーパケットに対応する第1ポートに前記第1ミラーパケットを転送する、
ことを特徴とするミラーパケット転送方法。
(付記8)
付記7において、
前記転送情報を生成する処理では、各ポートと接続している仮想マシンのMACアドレスを示すアドレス情報を記憶した記憶部を参照し、特定した前記ポートの数が2である前記VLANIDが付加されたミラーパケットを、特定した前記ポートのうち、対応する前記MACアドレスの数が1であるポートに転送することを示す前記転送情報を生成する、
ことを特徴とするミラーパケット転送方法。
(付記9)
付記7において、
前記転送する処理では、前記転送情報を記憶した記憶部を参照し、取得した前記第1ミラーパケットと同じVLANIDが付加されたミラーパケットの通過を許可するポートを前記第1ポートとして特定する、
ことを特徴とするミラーパケット転送方法。
1:物理マシン 2:物理マシン
11:VM 12:監視VM
13:VM 21:SW
21a:ポート 21b:ポート
21c:ポート 21d:ポート
22:SW 22a:ポート
23:SW 23a:ポート
23b:ポート 23c:ポート
23d:ポート 24:SW
24a:ポート 31:NIC
32:NIC

Claims (7)

  1. 仮想マシンによって送信されたパケットから生成されるミラーパケットの転送処理を仮想スイッチに実行させるミラーパケット転送プログラムであって、
    前記ミラーパケットに付加されるVLANID毎に、各VLANIDが付加された前記ミラーパケットの通過を許可するポートを特定し、
    特定した前記ポートの数が1である前記VLANIDが付加された前記ミラーパケットを、特定した前記ポートに転送することと、特定した前記ポートの数が2である前記VLANIDが付加されたミラーパケットを、特定した前記ポートのうち、接続している仮想マシンの数が1であるポートに転送することとを示す転送情報を生成し、
    前記仮想マシンによって送信されたパケットから第1ミラーパケットが生成された場合、前記転送情報を記憶した記憶部を参照し、前記第1ミラーパケットに対応する第1ポートに前記第1ミラーパケットを転送する、
    ことを特徴とするミラーパケット転送プログラム。
  2. 請求項1において、
    前記転送情報を生成する処理では、各ポートと接続している仮想マシンのMACアドレスを示すアドレス情報を記憶した記憶部を参照し、特定した前記ポートの数が2である前記VLANIDが付加されたミラーパケットを、特定した前記ポートのうち、対応する前記MACアドレスの数が1であるポートに転送することを示す前記転送情報を生成する、
    ことを特徴とするミラーパケット転送プログラム。
  3. 請求項1において、
    前記転送する処理では、
    前記仮想スイッチと異なる他の仮想スイッチと接続している第2ポートに前記第1ミラーパケットを転送し、
    前記他の仮想スイッチから前記第2ポートに前記第1ミラーパケットが転送されたことに応じて、前記転送情報を記憶した記憶部を参照し、前記第1ポートに前記第1ミラーパケットを転送する、
    ことを特徴とするミラーパケット転送プログラム。
  4. 請求項1において、
    前記第1ミラーパケットは、前記仮想スイッチと同じ物理マシンで動作する仮想マシンから送信されたパケットを複製することによって生成されたミラーパケットである、
    ことを特徴とするミラーパケット転送プログラム。
  5. 請求項1において、
    前記第1ミラーパケットは、前記仮想スイッチと異なる物理マシンで動作する仮想マシンから送信されたパケットを複製することによって生成されたミラーパケットである、
    ことを特徴とするミラーパケット転送プログラム。
  6. 請求項1において、
    前記転送する処理では、前記転送情報を記憶した記憶部を参照し、取得した前記第1ミラーパケットと同じVLANIDが付加されたミラーパケットの通過を許可するポートを前記第1ポートとして特定する、
    ことを特徴とするミラーパケット転送プログラム。
  7. 仮想マシンによって送信されたパケットから生成されるミラーパケットを転送するミラーパケット転送方法であって、
    前記ミラーパケットに付加されるVLANID毎に、各VLANIDが付加された前記ミラーパケットの通過を許可するポートを特定し、
    特定した前記ポートの数が1である前記VLANIDが付加された前記ミラーパケットを、特定した前記ポートに転送することと、特定した前記ポートの数が2である前記VLANIDが付加されたミラーパケットを、特定した前記ポートのうち、接続している仮想マシンの数が1であるポートに転送することとを示す転送情報を生成し、
    前記仮想マシンによって送信されたパケットから第1ミラーパケットが生成された場合、前記転送情報を記憶した記憶部を参照し、前記第1ミラーパケットに対応する第1ポートに前記第1ミラーパケットを転送する、
    ことを特徴とするミラーパケット転送方法。
JP2018150323A 2018-08-09 2018-08-09 ミラーパケット転送プログラム及びミラーパケット転送方法 Active JP7104317B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018150323A JP7104317B2 (ja) 2018-08-09 2018-08-09 ミラーパケット転送プログラム及びミラーパケット転送方法
US16/530,220 US20200053024A1 (en) 2018-08-09 2019-08-02 Method of transferring mirror packet and system for transferring mirror packet

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018150323A JP7104317B2 (ja) 2018-08-09 2018-08-09 ミラーパケット転送プログラム及びミラーパケット転送方法

Publications (2)

Publication Number Publication Date
JP2020027961A true JP2020027961A (ja) 2020-02-20
JP7104317B2 JP7104317B2 (ja) 2022-07-21

Family

ID=69406542

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018150323A Active JP7104317B2 (ja) 2018-08-09 2018-08-09 ミラーパケット転送プログラム及びミラーパケット転送方法

Country Status (2)

Country Link
US (1) US20200053024A1 (ja)
JP (1) JP7104317B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021141399A (ja) * 2020-03-04 2021-09-16 富士通株式会社 ネットワーク管理システム、ネットワーク管理装置、及びネットワーク管理プログラム
JP2021182689A (ja) * 2020-05-19 2021-11-25 富士通株式会社 スイッチ特定方法、及びスイッチ特定プログラム
US11722436B2 (en) 2021-08-24 2023-08-08 International Business Machines Corporation Transport control word architecture for physical port mirroring

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110103259A1 (en) * 2009-11-04 2011-05-05 Gunes Aybay Methods and apparatus for configuring a virtual network switch
WO2011130423A1 (en) * 2010-04-16 2011-10-20 Cisco Technology, Inc. Method of identifying destination in a virtual environment
CN102790792A (zh) * 2011-05-19 2012-11-21 株式会社日立制作所 基于vlan标识的网络交换机和服务器之间的连接发现的方法和装置
US20140122704A1 (en) * 2012-10-26 2014-05-01 Hangzhou H3C Technologies Co., Ltd. Remote port mirroring

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106233673B (zh) * 2014-04-29 2019-07-19 慧与发展有限责任合伙企业 用于网络服务插入的设备和方法
US10205648B1 (en) * 2014-05-30 2019-02-12 EMC IP Holding Company LLC Network monitoring using traffic mirroring and encapsulated tunnel in virtualized information processing system
US9860309B2 (en) * 2014-12-22 2018-01-02 Vmware, Inc. Hybrid cloud network monitoring system for tenant use
US20160212048A1 (en) * 2015-01-15 2016-07-21 Hewlett Packard Enterprise Development Lp Openflow service chain data packet routing using tables
US9912536B2 (en) * 2015-04-01 2018-03-06 Brocade Communications Systems LLC Techniques for facilitating port mirroring in virtual networks
US20170048312A1 (en) * 2015-08-12 2017-02-16 Brocade Communications Systems, Inc. Sdn-based mirroring of traffic flows for in-band network analytics
CN107317832B (zh) * 2016-04-27 2020-01-03 新华三技术有限公司 报文转发方法及装置
US10887386B2 (en) * 2016-10-31 2021-01-05 Nicira, Inc. Adaptive data mirroring in virtual networks
JP6740911B2 (ja) * 2017-01-16 2020-08-19 富士通株式会社 ポート切替プログラム、ポート切替方法、および情報処理装置
US10432426B2 (en) * 2017-02-21 2019-10-01 Nicira, Inc. Port mirroring in a virtualized computing environment
US10296370B2 (en) * 2017-05-30 2019-05-21 Nicira, Inc. Port mirroring in a virtualized computing environment
US10673761B2 (en) * 2017-09-29 2020-06-02 Vmware, Inc. Methods and apparatus to improve packet flow among virtualized servers
US10785189B2 (en) * 2018-03-01 2020-09-22 Schweitzer Engineering Laboratories, Inc. Selective port mirroring and in-band transport of network communications for inspection

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110103259A1 (en) * 2009-11-04 2011-05-05 Gunes Aybay Methods and apparatus for configuring a virtual network switch
WO2011130423A1 (en) * 2010-04-16 2011-10-20 Cisco Technology, Inc. Method of identifying destination in a virtual environment
CN102845035A (zh) * 2010-04-16 2012-12-26 思科技术公司 在虚拟环境中识别目的地的方法
CN102790792A (zh) * 2011-05-19 2012-11-21 株式会社日立制作所 基于vlan标识的网络交换机和服务器之间的连接发现的方法和装置
JP2012244621A (ja) * 2011-05-19 2012-12-10 Hitachi Ltd ネットワークスイッチ及びサーバのvlanidによる接続の発見方法及び装置
US20140122704A1 (en) * 2012-10-26 2014-05-01 Hangzhou H3C Technologies Co., Ltd. Remote port mirroring
CN103780486A (zh) * 2012-10-26 2014-05-07 杭州华三通信技术有限公司 一种trill网络中的镜像报文传输方法和设备

Also Published As

Publication number Publication date
US20200053024A1 (en) 2020-02-13
JP7104317B2 (ja) 2022-07-21

Similar Documents

Publication Publication Date Title
KR102084243B1 (ko) 논리적 라우터
CN103200069B (zh) 一种报文处理的方法和设备
US9871720B1 (en) Using packet duplication with encapsulation in a packet-switched network to increase reliability
JP4799118B2 (ja) 情報処理装置、情報処理システム、通信中継装置および通信制御方法
US10855655B2 (en) System and method for providing secure and redundant communications and processing for a collection of internet of things (IOT) devices
EP3282649B1 (en) Data packet forwarding
US9560016B2 (en) Supporting IP address overlapping among different virtual networks
US20150180959A1 (en) Network interface controller supporting network virtualization
EP3544237B1 (en) Sdn-based remote stream mirroring control method, implementation method, and related device
CN104221331B (zh) 用于以太网交换机的没有查找表的第2层分组交换
EP2920940B1 (en) Method and device for data flow processing
JP2018139448A5 (ja)
JP2017098935A (ja) 仮想ルータクラスタ、データ転送方法および装置
US20170359198A1 (en) Non-transitory computer-readable storage medium, communication control method, and communication control device
WO2017000593A1 (zh) 报文处理方法及装置
JP7104317B2 (ja) ミラーパケット転送プログラム及びミラーパケット転送方法
JP2019515553A (ja) パケット伝送
WO2014079005A1 (zh) Mac地址强制转发装置及方法
US20230421487A1 (en) Reflection route for link local packet processing
US20150200910A1 (en) Control apparatus and transfer control method
US10574573B2 (en) Connecting a PVLAN switch to a non-PVLAN device
WO2018171722A1 (zh) Mac地址同步
CN109246016B (zh) 跨vxlan的报文处理方法和装置
WO2019165805A1 (zh) 一种报文处理方法、装置及存储介质
CN116248595B (zh) 一种云内网与物理网通信的方法、装置、设备以及介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210513

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220315

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220506

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: 20220607

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220620

R150 Certificate of patent or registration of utility model

Ref document number: 7104317

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150