[go: up one dir, main page]

JP6605713B2 - クラウドコンピューティングシステムにおけるパケット処理方法、ホスト及びシステム - Google Patents

クラウドコンピューティングシステムにおけるパケット処理方法、ホスト及びシステム Download PDF

Info

Publication number
JP6605713B2
JP6605713B2 JP2018510708A JP2018510708A JP6605713B2 JP 6605713 B2 JP6605713 B2 JP 6605713B2 JP 2018510708 A JP2018510708 A JP 2018510708A JP 2018510708 A JP2018510708 A JP 2018510708A JP 6605713 B2 JP6605713 B2 JP 6605713B2
Authority
JP
Japan
Prior art keywords
virtual
data packet
mac address
virtual machine
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018510708A
Other languages
English (en)
Other versions
JP2019503599A (ja
Inventor
洲 于
磊▲強▼ ▲張▼
毓新 庄
浩 ▲羅▼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2019503599A publication Critical patent/JP2019503599A/ja
Application granted granted Critical
Publication of JP6605713B2 publication Critical patent/JP6605713B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches

Landscapes

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

Description

本発明は、IT技術の分野に関し、特にクラウドコンピューティングシステムにおけるパケット処理方法、ホスト及びシステムに関する。
仮想化技術は、クラウドコンピューティング分野において鍵となる技術の1つである。仮想化技術によれば、ホストの物理リソースは、ホスト上で実行する仮想マシン(Virtual Machine, VM)により使用される共有リソースプールに抽象化できる。ホスト上で実行する仮想マシンは、ホストの外部ネットワークと通信するために、ホストのネットワークインタフェースカードを共有し得る。従来技術では、ネットワークインタフェースカードは、ネットワークインタフェースカード仮想化を用いて、使用のために仮想マシンに割り当てられ得る。ネットワークインタフェースカード仮想化は、シングルルート入出力仮想化(Single-Root I/O Virtualization, SR-IOV)又はマルチルート入出力仮想化(Multi Root Input/Output Virtualization, MR-IOV)を用いて実現され得る。ネットワークインタフェースカード仮想化はまた、ネットワークインタフェースカード・パススルーとも呼ばれる。SR-IOVパススルーが例として使用される。ネットワークインタフェースカードがSR-IOVをサポートするときに、ホスト上で実行する仮想マシンは、SR-IOV技術を使用することにより、ホスト上でネットワークインタフェースカードを共有し得る。
SR-IOV能力をサポートするネットワークインタフェースカードがホスト上で使用されるときに、ネットワークインタフェースカードのネットワークポートは、少なくとも1つの物理機能(Physical Function, PF)及び複数の仮想機能(Virtual Function, VF)に仮想化される。ホスト上の仮想マシンは、少なくとも1つのVFに接続される。ネットワークインタフェースカードは、スイッチとして機能するスイッチング機器の内部に備えられる。スイッチング機器は、媒体アクセス制御(MediaAccessControl, MAC)テーブルに従ってデータパケットを転送し、物理ネットワークポートとPFとVFとの間でデータパケットを転送する。限られた処理及び記憶能力のため、スイッチング機器は、セキュリティグループ、サービス品質(Quality of Service, QoS)、レイヤ2トンネルカプセル化及び分散ルーティングのような豊富なネットワーク機能をユーザに提供できない。
この明細書は、ネットワークインタフェースカード・パススルーのシナリオにおいて豊富なネットワーク機能が提供できないという問題を解決するための、クラウドコンピューティングシステムにおけるパケット処理方法、ホスト及びシステムを記載する。
第1の態様によれば、本発明の実施例は、ホストを提供する。少なくとも1つのネットワークインタフェースカードがホストに接続される。仮想マシンモニタVMMがホスト上で実行し、第1の仮想マシンがVMM上で実行する。VMMは、仮想ブリッジと仮想ネットワーク機能モジュールとを含み、仮想ネットワーク機能モジュールは、ネットワーク機能処理能力を提供できる。ネットワークインタフェースカードは、スイッチング機器と少なくとも2つのネットワークポートとを含む。第1のネットワークポートは、ネットワークインタフェースカード仮想化能力をサポートし、第1のネットワークポートは、少なくとも1つの物理機能PF及び複数の仮想機能VFに対応しており、第1のネットワークポートの少なくとも1つのVFは、パススルー方式で第1の仮想マシンに対して提供される。
第1の仮想マシンは、第1の仮想マシンに接続されたVFからデータパケットを送出する。データパケットの宛先MACアドレスは、仮想ブリッジのアップリンクポートのMACアドレスである。第1のネットワークポートのスイッチング機器は、データパケットの宛先MACアドレスに従ってデータパケットを転送し、データパケットをVMM上の仮想ブリッジに送出する。仮想ブリッジは、データパケットを仮想ネットワーク機能モジュールに転送する。仮想ネットワーク機能モジュールは、データパケットに対して豊富なネットワーク機能を提供する。ネットワークインタフェースカード・パススルーのシナリオでは、パススルーVFからデータパケットを送出した後に、仮想マシンは、前述の方式でネットワークインタフェースカードからのデータパケットをVMM上の仮想ネットワーク機能モジュールに導き、ソフトウェアモジュールを使用することにより、ユーザに対して豊富なネットワーク機能を提供してもよい。
可能な設計では、複数の仮想マシンがホスト上で実行してもよく、各仮想マシンが第1のネットワークポートの少なくとも1つのVFに接続され、第1のネットワークポートの複数のVFが異なる仮想ローカルエリアネットワークVLAN識別子を有する。他のVFのVLAN識別子と異なるVLAN識別子がVF毎に設定される。これは、VLAN識別子を搬送するブロードキャストパケットがVLAN識別子に対応する仮想ローカルエリアネットワーク上のみで伝搬され、異なるVLAN識別子を有する他のVFに送出されないことを確保する。
可能な設計では、第1の仮想マシンは、ARPプロセスを使用することにより、送出対象のデータパケットの宛先MACアドレスを取得する。具体的には、
第1の仮想マシンは、第1の仮想マシンに接続されたVFを使用することにより、ARP要求パケットを送出し、ARP要求パケットは、ARP要求パケットを送出するVFのVLAN識別子を搬送し、
ARP要求パケットを受信した後に、第1のネットワークポートのスイッチング機器は、ARP要求パケットをブロードキャストし、スイッチング機器によりブロードキャストされたARP要求パケットを受信した後に、VMM上の仮想ブリッジは、ARP要求パケットをSDNコントローラに転送し、SDNコントローラは、クラウドコンピューティングシステムのネットワークトポロジ情報を記録し、ARP要求パケットを受信したときに、SDNコントローラは、フローエントリを構築し、フローエントリを仮想ブリッジに返信し、フローエントリは、ARP取得設定を含み、ARP取得設定は、仮想ブリッジに対してARP応答パケットを構築するように命令するために使用され、ARP応答パケットは、送出対象のデータパケットの宛先MACアドレスとして使用される仮想ブリッジのアップリンクポートのMACアドレスを搬送し、
仮想ブリッジは、フローエントリに従ってARP応答パケットを第1の仮想マシンに返信し、ARP応答パケットは、送出対象のデータパケットの宛先MACアドレスとして使用される仮想ブリッジのアップリンクポートのMACアドレスを搬送する。
本発明のこの実施例では、新たなARPプロセスが規定される。送出対象のデータパケットの宛先MACアドレスは、仮想ブリッジのアップリンクポートのMACアドレスに設定され、これにより、第1の仮想マシンにより送出されたデータパケットは、レイヤ2転送を用いて仮想ブリッジに転送され、データパケットは、ネットワークインタフェースカードからVMMにリダイレクトされて戻される。
可能な設計では、フローエントリは、MACアドレス設定を更に含み、MACアドレス設定は、仮想ブリッジが第1の仮想マシンにより第2の仮想マシンに送出されたデータパケットを受信したときに、データパケットの宛先MACアドレスを第2の仮想マシンのMACアドレスに変更するように、仮想ブリッジに対して命令するために使用される。第1の仮想マシンにより送出されたデータパケットの宛先MACアドレスは、仮想ブリッジのアップリンクポートのMACアドレスである。したがって、データパケットを受信したときに、仮想ブリッジは、データパケットの宛先MACアドレスを第2の仮想マシンのMACアドレスに置換する必要があり、これにより、仮想ブリッジにより送出されたデータパケットは、第2の仮想マシンの実際のアドレスに従って第2の仮想マシンにルーティングできる。
可能な設計では、仮想ブリッジのアップリンクポートは、第1のネットワークポートのPFであり、仮想ブリッジは、PFを使用することにより、ネットワークインタフェースカードに接続されるか、或いは仮想ブリッジのアップリンクポートは、第1のネットワークポートの選択されたVFであり、仮想ブリッジは、選択されたVFを使用することにより、ネットワークインタフェースカードに接続され、仮想ブリッジに接続された選択されたVFは、プロミスキャスモードに設定される。仮想ブリッジがPF又はVFを使用することによりネットワークインタフェースカードに接続されることは、仮想ブリッジがネットワークインタフェースカードに論理的に接続されること、すなわち、データパケットがPF又はVFを使用することにより仮想ブリッジとネットワークインタフェースカードとの間で送信されることを意味する点に留意すべきである。
可能な設計では、データパケットの送信元仮想マシン(第1の仮想マシン)及び宛先仮想マシン(第2の仮想マシン)は、同じホスト上にある。この場合、データパケットを処理した後に、仮想ネットワーク機能モジュールは、処理されたデータパケットを仮想ブリッジに返信する。仮想ブリッジは、処理されたデータパケットを受信し、スイッチング機器を使用することにより、データパケットの宛先MACアドレスに従って処理されたデータパケットを第2の仮想マシンに送出する。
或いは、第2の仮想マシン及び第1の仮想マシンは、異なるホスト上で実行してもよい。この場合、仮想ネットワーク機能モジュールは、仮想ネットワーク機能モジュールと、第2の仮想マシンが位置するホスト上の他の仮想ネットワーク機能モジュールとの間にトンネルを確立し、処理されたデータパケットをネットワークインタフェースカードの第2のネットワークポートに送出し、次に、トンネルを使用することにより、処理されたデータパケットを第2の仮想マシンが位置するホストに送出し、これにより、他の仮想ネットワーク機能モジュールは、処理されたデータパケットを第2の仮想マシンに送出する。
第2の態様によれば、本発明の実施例は、クラウドコンピューティングシステムにおけるパケット処理方法を更に提供する。クラウドコンピューティングシステム内の少なくとも1つのホストは、仮想マシンモニタVMMと少なくとも1つのネットワークインタフェースカードとを含む。第1の仮想マシンがホスト上で実行する。VMMは、仮想ブリッジと仮想ネットワーク機能モジュールとを含む。ネットワークインタフェースカードは、スイッチング機器と少なくとも2つのネットワークポートとを含む。第1のネットワークポートは、ネットワークインタフェースカード仮想化能力をサポートする。第1のネットワークポートは、少なくとも1つのPF及び複数のVFに対応している。第1の仮想マシンは、第1のネットワークポートの少なくとも1つのVFに接続される。方法は、
第1の仮想マシンにより、送出対象のデータパケットの宛先MACアドレスを決定するステップであり、送出対象のデータパケットのMACアドレスは、仮想ブリッジのアップリンクポートのMACアドレスであるステップと、
第1の仮想マシンにより、第1の仮想マシンに接続されたVFを使用することにより、データパケットを第2の仮想マシンに送出するステップであり、データパケットで搬送される宛先IPアドレスは、第2の仮想マシンのIPアドレスであり、データパケットで搬送される宛先MACアドレスは、仮想ブリッジのアップリンクポートのMACアドレスであるステップと、
スイッチング機器により、データパケットを受信し、仮想ブリッジのアップリンクポートを使用することにより、データパケットの宛先MACアドレスに従ってデータパケットを仮想ブリッジに送出するステップと、
仮想ブリッジにより、データパケットを受信し、データパケットの宛先MACアドレスを第2の仮想マシンのMACアドレスに変更し、変更されたデータパケットを仮想ネットワーク機能モジュールに送出するステップと、
仮想ネットワーク機能モジュールにより、変更されたデータパケットに対してネットワーク機能処理を実行し、処理されたデータパケットを送出するステップであり、処理されたデータパケットの宛先MACアドレスは、第2の仮想マシンのMACアドレスであるステップと
を含む。
可能な設計では、第1のネットワークポートの複数のVFは、異なる仮想ローカルエリアネットワークVLAN識別子を有する。
他の可能な設計では、第1の仮想マシンは、ARPプロセスを使用することにより、SDNコントローラから送出対象のデータパケットの宛先MACアドレスを取得する。宛先MACアドレスは、仮想ブリッジのアップリンクポートのMACアドレスである。具体的な取得方式は、第1の態様における説明のものと同じである。
第3の態様によれば、本発明の実施例は、クラウドコンピューティングシステムを提供する。クラウドコンピューティングシステムは、第1の態様に記載のホストとSDNコントローラとを含む。SDNコントローラは、仮想ブリッジにより転送された第1の仮想マシンからのARP要求パケットを受信し、フローエントリを仮想ブリッジに返信するように構成される。フローエントリは、ARP取得設定とMACアドレス設定とを含み、ARP取得設定は、仮想ブリッジに対してARP要求に基づいてARP応答パケットを構築するように命令するために使用される。ARP応答パケットは、送出対象のデータパケットの宛先MACアドレスとして使用される仮想ブリッジのアップリンクポートのMACアドレスを搬送する。
第4の態様によれば、前述の装置、方法及びシステムに対応して、本発明の実施例は、ホストを提供する。ホストは、第1の態様に規定されたホストを実現する機能を有する。機能は、ハードウェアにより実現されてもよく、或いはハードウェアにより対応するソフトウェアを実行することにより実現されてもよい。ハードウェア又はソフトウェアは、前述の機能に対応する1つ以上のモジュールを含む。具体的には、ホストは、第1のプロセッサと、第1のメモリと、少なくとも1つのネットワークインタフェースカードとを含む。ネットワークインタフェースカードは、第2のプロセッサと、第2のメモリと、少なくとも2つのネットワークポートとを含む。第1のネットワークポートは、ネットワークインタフェースカード仮想化能力をサポートする。第1のネットワークポートは、少なくとも1つのPF及び複数のVFに対応している。第1の仮想マシンは、第1のネットワークポートの少なくとも1つのVFに接続される。第1のメモリ及び第2のメモリは、命令を記憶する。
第1のプロセッサは、第1のメモリ内の命令を実行し、第1の態様における第1の仮想マシン、仮想ブリッジ及び仮想ネットワーク機能モジュールの機能を実現するように構成される。
第2のプロセッサは、第2のメモリ内の命令を実行し、第1の態様におけるスイッチング機器の機能を実現するように構成される。
可能な設計では、ホスト及びSDNコントローラは、汎用又は専用サーバにより実現される。サーバは、プロセッサと、メモリと、システムバスと、入出力インタフェースとを含む。プロセッサは、システム内のホストの対応する機能をサポートするように構成される。入出力インタフェースは、クラウドコンピューティングシステム内の他のコンポーネントと通信するように構成される。プロセッサは、メモリに記憶された命令を実行する。
第5の態様によれば、本発明の実施例は、前述のホストにより使用されるコンピュータソフトウェア命令を記憶するように構成されたコンピュータ記憶媒体を提供する。コンピュータソフトウェア命令は、前述の態様を実行するように設計されたプログラムを含む。
第6の態様によれば、本発明の実施例は、前述のネットワークインタフェースカード内のスイッチング機器により使用されるコンピュータソフトウェア命令を記憶するように構成された他のコンピュータ記憶媒体を提供する。コンピュータソフトウェア命令は、前述の態様を実行するように設計されたプログラムを含む。
第7の態様によれば、本発明の実施例は、コンピュータプログラムを提供する。物理サーバがコンピュータプログラムを実行したときに、物理サーバは、ホスト内の仮想マシン、仮想ブリッジ及び仮想ネットワーク機能モジュールの機能を実行する。
第8の態様によれば、本発明の実施例は、コンピュータプログラムを提供する。ネットワークインタフェースカード内のプロセッサ又はプログラム可能論理回路がコンピュータプログラムを実行したときに、ネットワークインタフェースカードは、前述の態様におけるスイッチング機器の機能を実行する。
本発明の実施例又は従来技術における技術的解決策をより明確に説明するために、以下に、実施例又は従来技術を説明するために必要な添付図面を簡単に説明する。明らかに、以下の説明における添付図面は、本発明の単にいくつかの実施例を示しているに過ぎず、当業者は、創造的取り組みなしにこれらの添付図面から他の実現を導くことができる。全てのこれらの実施例又は実現は、本発明の保護範囲内に入る。
本発明の実施例によるホスト上の仮想化された構造の概略図である。 本発明の実施例によるネットワークインタフェースカード・パススルーのシナリオにおけるホスト上の仮想化された構造の概略図である。 本発明の実施例によるホスト上の他の仮想化されたアーキテクチャの概略図である。 本発明の実施例によるARPプロセスの概略図である。 本発明の実施例に従ってデータパケットをVM1によりVM2に送出する概略フローチャートである。 本発明の実施例によるコンピュータデバイスのハードウェアの概略構成図である。 本発明の実施例によるクラウドコンピューティングシステムの概略構成図である。
本発明の実施例において記載されるネットワークアーキテクチャ及びサービスシナリオは、本発明の実施例における技術的解決策をより明確に説明するために使用されており、本発明の実施例において提供される技術的解決策への制限を全く構成しない。当業者は、ネットワークアーキテクチャの進化及び新たなサービスシナリオの出現により、本発明の実施例において提供される技術的解決策がまた、同様の技術的課題にも適用可能であることを習得し得る。
図1Aに示すように、図1Aは、本発明の実施例によるホスト上の仮想化された構造の概略図である。ホストは、物理サーバである。物理サーバの下部レイヤは、ハードウェアレイヤである。ハードウェアレイヤは、中央処理装置(CPU, Central Processing Unit)、メモリ、ハードディスク及びネットワークインタフェースカードのようなハードウェアリソースを主に含む。サーバ仮想化は、仮想化ソフトウェア(例えば、VMWare ESX又はCitrix XEN)を使用することにより、物理サーバ上に複数の仮想マシン(Virtual Machine, VM)の仮想化された実行環境を実現する。仮想化された環境を実現するためにサーバ上にインストールされたソフトウェアレイヤは、仮想マシンモニタ(Virtual Machine Monitor, VMM)と呼ばれる。ハードウェアレイヤ上で実行するVMMは、ハードウェアレイヤにおけるハードウェアリソースをスケジューリングし、割り当て、管理する役目をする。複数の仮想マシンVMがVMM上で実行する。VMMは、複数の仮想マシンが互いに隔離した方式で実行することを確保するように、仮想化されたCPU、メモリ、ストレージ、IOデバイス(ネットワークインタフェースカード等)及びイーサーネットスイッチのようなハードウェア環境を各仮想マシンに提供する。
仮想化された実行環境では、VMMは、仮想マシン毎に仮想ネットワークインタフェースカード(Virtual Network Interface Card, vNIC)を作成し、仮想スイッチvSwitchは、仮想マシンの間及び仮想マシンと外部ネットワークとの間の通信の能力を提供する。各仮想マシンの仮想ネットワークインタフェースカードは、vSwitchの論理ポートに対応している。ホストの物理ネットワークインタフェースカードは、vSwitchを外部物理スイッチに接続するポートに対応している。仮想マシンにより送出又は受信されるデータパケットがVMMを通過するときに、VMM上の仮想ネットワーク機能モジュールは、VMMを通過するデータパケットに対してネットワーク機能処理を実行する。仮想ネットワーク機能モジュールは、ソフトウェアモジュールであり、必要に応じてアップデートできる。したがって、VMM上の仮想ネットワーク機能モジュールは、ユーザに対して豊富なネットワーク機能を提供できる。
物理ネットワークインタフェースカードのネットワークポートは、仮想化能力をサポートする。これは、シングルルート入出力仮想化(Single Root Input/Output Virtualization, SR-IOV)又はマルチルート入出力仮想化(Multi Root Input/Output Virtualization, MR-IOV)を用いて実現できる。本発明のこの実施例では、SR-IOV技術が説明のための例として使用される。SR-IOV技術は、ハードウェアに基づく仮想化解決策である。PCIe(Peripheral Component Interconnect Express, ペリフェラル・コンポーネント・インターコネクト・エクスプレス)デバイスは、仮想マシンの間で効率的に共有できる。さらに、SR-IOV技術は、ハードウェアで実現され、これにより、効率的なI/O性能が取得できる。
標準化組織PCI-SIG(Peripheral Component Interconnect Special Interest Group, ペリフェラル・コンポーネント・インターコネクト・スペシャル・インタレスト・グループ)は、SR-IOV仕様を規定している。SR-IOV仕様については、http://www.pcisig.comを参照する。
SR-IOV技術を使用することにより、単一のI/Oリソースは、ホスト上の複数の仮想マシンにより共有されてもよい。このように、各仮想マシンは、同じハードウェアリソースにアクセスできる。したがって、有効化されたSR-IOVを有するPCIeデバイス(例えば、物理ネットワークインタフェースカードのネットワークポート)は、複数の別個のデバイスとして表示されてもよい。表示されたそれぞれの別個のデバイスは、独立したPCIe構成空間を有する。SR-IOVをサポートする物理ネットワークインタフェースカードが例として使用される。物理ネットワークインタフェースカードは、ネットワークポートを含み、ネットワークポート毎にSR-IOV能力を有効化/無効化できる。SR-IOV能力が有効化されたネットワークポートは、少なくとも1つの物理機能(Physical Function, PF)及び複数の仮想機能(Virtual Function, VF)に対応している。既存のSR-IOV仕様によれば、各PFは、PFに関連する最大で64,000個のVFを有してもよい。VFが作成された後に、VFは、使用のためにホスト上の仮想マシンに直接割り振られてもよく、これにより、複数の仮想マシンは、複数の仮想マシンに接続された少なくとも1つのVFを使用することにより、PCIeデバイスを共有する。
図1Bに示すように、図1Bは、本発明の実施例によるネットワークインタフェースカード・パススルーのシナリオにおけるホスト上の仮想化された構造の概略図である。図1Aと図1Bとの間の違いは、物理ネットワークインタフェースカードがシングルルートIO仮想化をサポートし、物理ネットワークインタフェースカードのネットワークポートが少なくとも1つのPF及び複数のVFに対応しており、VFが物理ネットワークインタフェースカードの物理リソース(例えば、ネットワークインタフェースカードのポート)を共有できる点にある。
ホスト上の仮想マシンがパススルーVFを使用することによりデータパケットを送出したときに、仮想マシンにより送出されたデータパケットは、仮想マシン上にインストールされたVFドライバを使用することにより、ネットワークインタフェースカードのVFに直接転送される。その結果、データパケットは、VMM上の仮想ネットワーク機能モジュールを通過できない。ネットワークインタフェースカードのスイッチング機器は、限られたMACテーブル容量及び限られた処理能力を有し、制約のない機能拡張を実行できない。したがって、ネットワークインタフェースカードは、豊富なネットワーク機能を提供できない。可能なシナリオでは、スイッチング機器は、virtual Ethernet bridge & classifierである。
本発明のこの実施例は、ネットワークインタフェースカード・パススルーのシナリオに基づく点に留意すべきである。前述のネットワークインタフェースカード・パススルーは、SR-IOV又はMR-IOVを用いて実現されてもよく、本発明のこの実施例は、これに対して制限を課さない。
図2に示すように、図2は、本発明の実施例によるホスト上の他の仮想化されたアーキテクチャの概略図である。ホストは、仮想マシンモニタVMMと少なくとも1つの物理ネットワークインタフェースカードとを含む。少なくとも1つの仮想マシンは、ホスト上で実行する。少なくとも1つの物理ネットワークインタフェースカードは、少なくとも2つのネットワークポート、すなわち、第1のネットワークポート及び第2のネットワークポートを含む。第1のネットワークポートは、ネットワークインタフェースカード仮想化能力をサポートし、第2のネットワークポートは、ホストの外部物理スイッチに接続される。第1のネットワークポートは、少なくとも1つのPF及び少なくとも2つのVFに仮想化される(図2では、2つのVFが説明のための例として使用される)。VFドライバは、第1の仮想マシン及び第2の仮想マシン上にインストールされる。第1の仮想マシン及び第2の仮想マシンは、少なくとも1つのVFに別個に接続される。PFは、VMM上の仮想ブリッジに接続される。仮想ブリッジは、VMM上の仮想ネットワーク機能モジュールに接続され、仮想ネットワーク機能モジュールは、第2のネットワークポートを使用することにより、ホストの外部物理スイッチに接続される。
具体的なシナリオでは、VMM上の仮想ブリッジは、Open vSwitchブリッジでもよく、第1のネットワークポートのPFは、仮想ブリッジのアップリンクポートとして機能する。或いは、第1のネットワークポートのVFが仮想ブリッジのアップリンクポートとして選択されてもよく、すなわち、第1のネットワークポートは、選択されたVFを使用することにより、VMM上の仮想ブリッジに接続される点に留意すべきである。この場合、VFドライバは、VMM上にロードされる必要があり、仮想ブリッジに接続されたVFは、プロミスキャスモードに設定される必要がある。PFと同様に、プロミスキャスモードに設定されたVFは、宛先アドレスがVFのMACアドレスではないデータパケットを受信できる。プロミスキャスモードについての具体的な説明については、https://en.wikipedia.org/wiki/Promiscuous_modeを参照する。本発明の実施例では、第1のネットワークポートのPFが仮想ブリッジに接続される例が説明のために使用される。当業者は、前述の設定方式で、プロミスキャスモード(promiscuous mode)のVFもまた、仮想ブリッジに接続するために使用されてもよいことを理解し得る。
可能な実現では、第1のネットワークポート及び第2のネットワークポートは、同じネットワークインタフェースカードに位置してもよく、或いは異なるネットワークインタフェースカードに独立して位置してもよい。本発明のこの実施例は、これに対して制限を課さない。
本発明の実施例では、ネットワークインタフェースカード仮想化は、具体的には、ネットワークインタフェースカードのハードウェア仮想化でもよい。
第1の仮想マシン及び第2の仮想マシンは、第1のネットワークポートの少なくとも1つのVFに別個に接続される。異なる仮想ローカルエリアネットワーク(Virtual Local Area Network, VLAN)識別子が第1のネットワークポートのVFに対して設定される。VLANは、ブロードキャストドメインである。したがって、ブロードキャストパケットは、VLAN上の仮想マシンのみに送出できる。したがって、異なるVLAN識別子がVFに対して設定され、これにより、仮想マシンは、異なるブロードキャストドメインに位置し、仮想マシンにより送出されたブロードキャストパケットは、仮想マシン自体及びPFのみにより受信できる。VFに対するVLAN識別子の設定中に、VLAN識別子がホスト範囲内で一意であることが確保される必要がある。異なるホスト上のVLAN識別子は、同じでもよい。
図2に示す実施例において、データパケットを第1の仮想マシンにより第2の仮想マシンに送出することは、同じホスト内の2つの仮想マシンの間の通信である点に留意すべきである。或いは、第2の仮想マシン及び第1の仮想マシンが異なるホストに位置してもよいことを当業者は理解し得る。この場合、第1の仮想マシンは、ホスト間方式で第2の仮想マシンと通信する。図2では、2つのVF及び2つのVLANサブインタフェースのみが説明のための例として使用される。実際の製品の実現では、ネットワークインタフェースカード仮想化機能をサポートするネットワークインタフェースカードは、少なくとも1つのPF及び複数のVFに仮想化されてもよい。VFの数量は2つに限定されず、対応して、VLANサブインタフェースの数量も2つに限定されない。
本発明のこの実施例では、VM1(第1の仮想マシン)がデータパケットをVM2(第2の仮想マシン)に送出する例が、データパケット処理プロセスを説明するための例として使用される。ネットワークインタフェースカード内のスイッチング機器は、処理のためにVM1からのデータパケットをVMM上の仮想ネットワーク機能モジュールに送出する必要がある。データパケットを送出する前に、第1の仮想マシンは、送出対象のデータパケットの宛先媒体アクセス制御MACアドレスがVMM上の仮想ブリッジのアップリンクポートのMACアドレスであると決定する。第1の仮想マシンは、第1の仮想マシンに接続されたVFを使用することにより、データパケットを第2の仮想マシンに送出する。データパケットで搬送される宛先IPアドレスは、第2の仮想マシンのIPアドレスであり、データパケットで搬送される宛先MACアドレスは、仮想ブリッジのアップリンクポートのMACアドレスである。第1のネットワークポートのスイッチング機器は、VFを使用することにより、第1の仮想マシンにより送出されたデータパケットを受信し、仮想ブリッジのアップリンクポートを使用することにより、データパケットを仮想ブリッジに送出するために、データパケットの宛先MACアドレスに従ってデータパケットに対してレイヤ2転送を実行する。仮想ブリッジは、データパケットを受信し、データパケットの宛先MACアドレスを第2の仮想マシンのMACアドレスに変更し、変更されたデータパケットを仮想ネットワーク機能モジュールに送出する。データパケットの宛先MACアドレスが変更され、これにより、変更されたMACアドレスがデータパケットの以降の送信プロセスにおいて使用されてもよい。これは、データパケットが第2の仮想マシンに送出できることを確保する。変更されたデータパケットを受信した後に、仮想ネットワーク機能モジュールは、ユーザに対して豊富なネットワーク機能サービスを提供するために、変更されたデータパケットに対してネットワーク機能処理を実行し、次に、第2の仮想マシンのMACアドレスに従って処理されたデータパケットを第2の仮想マシンに送出する。
本発明のこの実施例では、仮想マシンは、仮想マシンに接続されたVFからデータパケットを送出する。第1のネットワークポートのスイッチング機器は、データパケットを転送し、データパケットをVMM上の仮想ブリッジに送出する。仮想ブリッジは、データパケットを仮想ネットワーク機能モジュールに転送する。仮想ネットワーク機能モジュールは、データパケットに対して豊富なネットワーク機能を提供する。ネットワークインタフェースカード・パススルーのシナリオでは、パススルーVFからデータパケットを送出した後に、仮想マシンは、前述の方式でデータパケットをVMM上の仮想ネットワーク機能モジュールに送出してもよい。ソフトウェアモジュールは、ユーザに対して豊富なネットワーク機能を提供するために使用され、これにより、データパケットに対して仮想ネットワーク機能処理を実行する。
さらに、本発明の実施例は、アドレス解決プロトコル(Address Resolution Protocol, ARP)プロセスを提供し、これにより、データパケットを送出する前に、第1の仮想マシンは、仮想ブリッジのアップリンクポートのMACアドレスを取得し、データパケットの宛先MACアドレスを仮想ブリッジのアップリンクポートのMACアドレスに設定してもよい。本発明のこの実施例において提供されるARPプロセスでは、ソフトウェア・デファインド・ネットワーキング(Software Defined Network, SDN)コントローラは、VM1により開始されたARP要求の取得を実行し、VMM上の仮想ブリッジのアップリンクポートのMACアドレスをARP応答に追加し、VM1により送出されたデータパケットを、MACアドレスがデータパケットの宛先IPアドレスに対応することを可能にすることにより、仮想ブリッジに接続されたPF又はVFに導く。SDNコントローラは、クラウドコンピューティングネットワークのネットワークトポロジを取得してもよく、すなわち、前述のARPプロセスを実現してもよい点に留意すべきである。
具体的には、図3に示すように、図3は、本発明の実施例によるARPプロセスの概略図である。
ステップ301:VM1は、VM2のIPアドレスを搬送し、且つVM2のMACアドレスを取得するために使用されるARP要求パケットを送出する。ARP要求パケットは、VM1に接続されたVFから送出される。ネットワークインタフェースカード上のスイッチング機器は、ARP要求パケットを受信する。ARP要求パケットは、ARP要求パケットを送出するVFのVLAN識別子を搬送する。
ステップ302:スイッチング機器は、ARP要求パケットをブロードキャストする。ホスト上の各仮想マシンに接続されたVFは、異なるVLAN識別子を有するため、ARP要求パケットは、PFを使用することにより、仮想ブリッジに送出される。
可能な設計では、仮想ブリッジがVFを使用することによりネットワークインタフェースカードに接続されるときに、ARP要求パケットは、AFを使用することにより、仮想ブリッジに送出される。
ステップ303:仮想ブリッジは、ARP要求パケットをSDNコントローラに転送する。
具体的には、仮想ブリッジは、packet-inメッセージを使用することにより、ARP要求パケットをSDNコントローラに送出してもよい。
ステップ304:SDNコントローラは、仮想ブリッジのためのフローエントリを設定し、フローエントリを仮想ブリッジに配信する。
フローエントリは以下を含む。
(1)ARP取得設定:ARP取得設定は、VM1により送出され、且つVM2のMACアドレスを取得するために使用されるARPパケット要求を受信したときに、仮想ブリッジがARP応答パケットを構築することを示し、ARP応答パケットは、VM2のMACアドレスとして使用される仮想ブリッジのアップリンクポートのMACアドレスを搬送し、仮想ブリッジのアップリンクポートのMACアドレスは、仮想ブリッジに接続されたPF又はVFのMACアドレスである。
(2)VLAN識別子処理設定:VM1により送出されたユニキャストパケットについて、ユニキャストパケットで搬送されたVLAN識別子が除去される。及び
(3)MACアドレス設定:VM1によりVM2に送出されたユニキャストパケットについて、ユニキャストパケットの宛先MACアドレスがVM2のMACアドレスに変更され、変更されたユニキャストパケットが、仮想ネットワーク機能モジュールに接続されたポートを使用することにより、仮想ネットワーク機能モジュールに送出される。
前述のフローエントリの設定原理は、OpenFlowプロトコルに基づいてもよい点に留意すべきである。
ステップ305:仮想ブリッジは、フローエントリを構成し、ARP取得設定に従ってARP応答パケットをVM1に返信し、ARP応答パケットは、仮想ブリッジのアップリンクポートのMACアドレスを搬送し、アップリンクポートを使用することにより、ARP応答パケットをスイッチング機器に送出する。
ステップ306:スイッチング機器は、ARP応答パケットをVM1に転送する。
ステップ307:VM1は、ARP応答パケットを受信し、VM2のMACアドレスを仮想ブリッジのアップリンクポートのMACアドレスに設定する。
本発明のこの実施例では、前述のARPプロセスが規定され、これにより、VMトラヒックのレイヤ2転送制御は、MAC転送テーブルの自動学習なしに実現される。前述のARPプロセスによれば、VM1により送出されたデータパケットの宛先MACアドレスは、仮想ブリッジのアップリンクポートのMACアドレスである。これは、データパケットがアップリンクポートを使用することにより仮想ブリッジに送出されることを確保する。次に、仮想ブリッジは、処理のためにデータパケットを仮想ネットワーク機能モジュールに転送する。
図4を参照すると、図4は、本発明の実施例に従ってデータパケットをVM1によりVM2に送出する概略フローチャートである。本発明のこの実施例では、ホスト1上のVM1は、データパケットをホスト2上のVM2に送出する。ホスト1のVMMは、第1の仮想ブリッジと第1の仮想ネットワーク機能モジュールとを含む。ホスト1のネットワークインタフェースカードは、少なくとも2つのネットワークポートと第1のスイッチング機器とを含む。ホスト2のVMMは、第2の仮想ブリッジと第2の仮想ネットワーク機能モジュールとを含む。ホスト2のネットワークインタフェースカードは、少なくとも2つのネットワークポートと第2のスイッチング機器とを含む。具体的には、ホスト1及びホスト2の構造並びにコンポーネントの機能は、図2に示される。詳細はここでは再び説明しない。データパケットをVM1によりVM2に送出するプロセスは以下を含む。
ステップ401:VM1は、VM1に接続されたVFを使用することにより、宛先がVM2であるデータパケットを送出する。データパケットの宛先IPアドレスは、VM2のIPアドレスであり、データパケットの宛先MACアドレスは、ホスト1上の第1の仮想ブリッジのアップリンクポートのMACアドレスである。データパケットは、VFのVLAN識別子を搬送する。
ステップ402:ホスト1のネットワークインタフェースカードの第1のスイッチング機器は、データパケットを受信し、アップリンクポートを使用することにより、データパケットの宛先MACアドレスに従ってデータパケットを第1の仮想ブリッジに送出する。
ステップ403:第1の仮想ブリッジは、予め設定されたフローエントリに従ってデータパケットを処理し、データパケット内のVLAN識別子を除去し、データパケットの宛先MACアドレスをVM2のMACアドレスに変更する。
ステップ404:第1の仮想ブリッジは、変更されたデータパケットを第1の仮想ネットワーク機能モジュールに送出する。
ステップ405:第1の仮想ネットワーク機能モジュールは、セキュリティグループ、QoS、レイヤ2トンネルカプセル化、分散ルーティング等を含むネットワーク機能処理をデータパケットに対して実行する。
第1の仮想ネットワーク機能モジュールは、従来技術における様々な実現を使用することにより、ネットワーク機能処理を実行してもよい点に留意すべきである。本発明のこの実施例は、これに対して制限を課さない。
ステップ406:第1の仮想ネットワーク機能モジュールは、第2のネットワークポートを使用することにより、処理されたデータパケットをホスト1の外部物理スイッチに送出し、物理スイッチは、ネットワークを通じてデータパケットをVM2が位置するホスト2にルーティングする。
データパケットは、VM2のIPアドレス及びMACアドレスを搬送し、データパケットは、既存のルーティング方式で、VM2が位置するホスト2にルーティングされてもよい点に留意すべきである。本発明のこの実施例は、ネットワーク上のデータパケットの送信プロセスを限定しない。例えば、VM1が位置するホスト1とVM2が位置するホスト2との間にトンネルが確立されてもよく、トンネルのエンドポイントがそれぞれホスト1の仮想ネットワーク機能モジュール及びホスト2の仮想ネットワーク機能モジュールであり、これにより、データ送信に必要なトンネルがVM1及びVM2のための2つのホストの間に確立される。
ステップ407:VM2が位置するホスト2の第2の仮想ネットワーク機能モジュールは、受信したデータパケットに対してネットワーク機能処理を実行し、処理されたデータパケットを第2の仮想ブリッジに送出する。
ステップ408:第2の仮想ブリッジは、VM2のMACアドレスに従ってレイヤ2転送を実行し、第2のスイッチング機器を使用することにより、データパケットをVM2に接続されたVFに送出し、これにより、データパケットをVM2に送出する。
ホストの外部からホスト上の宛先仮想マシンに送出されたデータパケットについて、データパケットは、まず、第2のネットワークポートから仮想ネットワーク機能モジュールに転送され、次に、仮想ネットワーク機能処理を受けた後に、データパケットは、第1のネットワークポートを使用することにより、データパケットの宛先仮想マシンに転送される。
図4に示す実施例は、仮想マシンの間のホスト間通信を記載する。データパケットの送信元仮想マシン及び宛先仮想マシンは、同じホストに位置してもよいことが理解され得る。この場合、データパケット送信プロセスは、図4のプロセスと同様である。違いは、データパケットの送信元仮想マシン及び宛先仮想マシンが同じホストに位置するときに、ホストの仮想ネットワーク機能モジュールが、ネットワーク機能処理を完了した後に処理されたデータパケットを仮想ブリッジに送出し、仮想ブリッジが、宛先仮想マシンのMACアドレスに従って処理されたデータパケットを宛先仮想マシンに送出する点にある。
ホスト及びSDNコントローラは、汎用コンピュータデバイスを使用してもよい。例えば、図5に示すように、図5は、本発明の実施例によるコンピュータデバイスのハードウェアの概略構成図である。コンピュータデバイス500は、少なくとも1つのプロセッサ501と、通信バス502と、メモリ503と、少なくとも1つの通信インタフェース504とを含む。
プロセッサ501は、汎用中央処理装置(CPU)、マイクロプロセッサ、特定用途向け集積回路(application-specific integrated circuit, ASIC)、又は本発明の解決策におけるプログラム実行を制御するように構成された1つ以上の集積回路でもよい。
通信バス502は、前述のコンポーネントの間で情報を転送するためのパスを含んでもよい。通信インタフェース504は、他のデバイス、又はイーサーネット、無線アクセスネットワーク(RAN)若しくは無線ローカルエリアネットワーク(Wireless Local Area Network, WLAN)のような通信ネットワークと通信するために、トランシーバのような装置を使用する。
メモリ503は、読み取り専用メモリ(read-only memory, ROM)若しくは静的情報及び命令を記憶できる他の種類の静的記憶デバイス、ランダムアクセスメモリ(random access memory, RAM)若しくは情報及び命令を記憶できる他の種類の動的記憶デバイス、電気的消去可能プログラム可能読み取り専用メモリ(Electrically Erasable Programmable Read-Only Memory, EEPROM)、コンパクトディスク読み取り専用メモリ(Compact Disc Read-Only Memory, CD-ROM)若しくは他のコンパクトディスクストレージ、光ディスクストレージ(コンパクトディスク、レーザーディスク、光ディスク、デジタル多用途ディスク、Blue-rayディスク等を含む)、磁気ディスク記憶媒体若しくは他の磁気記憶デバイス、又は命令若しくはデータ構造の形式で想定されるプログラムコードを搬送又は記憶するために使用でき、且つコンピュータによりアクセスできる他の媒体でもよい。これに対して制限は課されない。メモリは、単独で存在してもよく、バスを使用することにより、プロセッサに接続される。或いは、メモリは、プロセッサと統合されてもよい。
メモリ503は、本発明における解決策を実行するためのアプリケーションプログラムコードを記憶するように構成され、プロセッサ501は、実行を制御する。プロセッサ501は、メモリ503に記憶されたアプリケーションプログラムコードを実行するように構成される。
具体的な実現では、実施例において、プロセッサ501は、1つ以上のCPU、例えば、図5のCPU0及びCPU1を含んでもよい。
具体的な実現では、実施例において、コンピュータデバイス500は、複数のプロセッサ、例えば、図5のプロセッサ501及びプロセッサ508を含んでもよい。プロセッサのそれぞれは、シングルコア(single-core CPU)プロセッサでもよく、或いはマルチコア(multi-core CPU)プロセッサでもよい。ここでのプロセッサは、データ(例えば、コンピュータプログラム命令)を処理するように構成された1つ以上のデバイス、回路及び/又は処理コアでもよい。
具体的な実現では、実施例において、コンピュータデバイス500は、出力デバイス505と入力デバイス506とを更に含んでもよい。出力デバイス505は、プロセッサ501と通信し、複数の方式で情報を表示できる。例えば、出力デバイス505は、液晶ディスプレイ(liquid crystal display, LCD)、発光ダイオード(light emitting diode, LED)表示デバイス、陰極線管(cathode ray tube, CRT)表示デバイス、プロジェクタ(projector)等でもよい。入力デバイス506は、プロセッサ501と通信し、複数の方式でユーザ入力を受信してもよい。例えば、入力デバイス506は、マウス、キーボード、タッチスクリーンデバイス、センシングデバイス等でもよい。
コンピュータデバイス500は、汎用コンピュータデバイス又は専用コンピュータデバイスでもよい。具体的な実現では、コンピュータデバイス500は、デスクトップコンピュータ、ポータブルコンピュータ、ネットワークサーバ、パーソナルデジタルアシスタント(Personal Digital Assistant, PDA)、移動電話、タブレットコンピュータ、無線端末デバイス、通信デバイス、埋め込み式デバイス、又は図5の構造と同様の構造を有するデバイスでもよい。本発明のこの実施例は、コンピュータデバイス500の種類に制限を課さない。
SDNコントローラ及び図2のホストは、図5に示すデバイスでもよい。メモリは、ホスト及びSDNコントローラの機能を実現するための1つ以上のソフトウェアモジュールを記憶する。ホスト及びSDNコントローラは、プロセッサ及びメモリ内のプログラムコードを使用することにより、本発明の実施例に開示されたパケット処理方法を実現してもよい。
図5に示すコンピュータデバイスは、クラウドコンピューティングシステム内の部分の可能なハードウェア実現のみを提供している点に留意すべきである。システム内の部分の機能の違い又は変化に従って、コンピュータデバイスのハードウェアコンポーネントが、システム内の部分の機能に合致するように追加又は削除されてもよい。
さらに、図5に示すハードウェア装置と同様に、前述の実施例におけるネットワークインタフェースカードは、プロセッサとメモリとを含む。ネットワークインタフェースカード内のプロセッサは、前述のスイッチング機器の機能を実現するために、メモリ内の命令を実行する。本発明のこの実施例では、詳細は再び説明しない。
なおいっそう、図6に示すように、図6は、本発明の実施例によるクラウドコンピューティングシステムの概略構成図である。クラウドコンピューティングシステムは、少なくとも1つのホスト601とSDNコントローラ602とを含む。ホストは、少なくとも1つのネットワークインタフェースカードを含む。ホストの構造は、図2に示される。
ホスト601は、仮想マシンモニタVMMと少なくとも1つのネットワークインタフェースカードとを含む。第1の仮想マシンは、ホスト601上で実行する。VMMは、仮想ブリッジと仮想ネットワーク機能モジュールとを含む。ネットワークインタフェースカードは、スイッチング機器と少なくとも2つのネットワークポートとを含む。第1のネットワークポートは、シングルルート入出力仮想化をサポートする。第1のネットワークポートは、少なくとも1つのPF及び複数のVFに対応している。第1の仮想マシンは、第1のネットワークポートの少なくとも1つのVFに接続される。
SDNコントローラ602は、仮想ブリッジにより転送された第1の仮想マシンからのARP要求パケットを受信し、フローエントリを仮想ブリッジに返信するように構成される。フローエントリは、ARP取得設定とMACアドレス設定とを含む。ARP取得設定は、仮想ブリッジに対して第1の仮想マシンのためのARP応答パケットを構築するように命令するために使用される。ARP応答パケットは、送出対象のデータパケットの宛先MACアドレスとして使用される仮想ブリッジのアップリンクポートのMACアドレスを搬送する。
第1の仮想マシンは、第1の仮想マシンに接続されたVFを使用することにより、データパケットを第2の仮想マシンに送出するように構成される。データパケットで搬送される宛先IPアドレスは、第2の仮想マシンのIPアドレスであり、データパケットで搬送される宛先MACアドレスは、仮想ブリッジのアップリンクポートのMACアドレスである。
スイッチング機器は、データパケットを受信し、仮想ブリッジのアップリンクポートを使用することにより、データパケットの宛先MACアドレスに従ってデータパケットを仮想ブリッジに送出するように構成される。
仮想ブリッジは、データパケットを受信し、データパケットの宛先MACアドレスを第2の仮想マシンのMACアドレスに変更し、変更されたデータパケットを仮想ネットワーク機能モジュールに送出するように構成される。
仮想ネットワーク機能モジュールは、変更されたデータパケットに対してネットワーク機能処理を実行し、第2の仮想マシンのMACアドレスに従って処理されたデータパケットを第2の仮想マシンに送出するように構成される。
第1のネットワークポートの複数のVFは、異なる仮想ローカルエリアネットワークVLAN識別子を有する。
第1の仮想マシンは、第1の仮想マシンに接続されたVFを使用することにより、ARP要求パケットを送出するように更に構成される。ARP要求パケットは、ARP要求パケットを送出するVFのVLAN識別子を搬送する。
スイッチング機器は、ARP要求パケットをブロードキャストするように更に構成される。ARP要求パケットは、アップリンクポートを使用することにより、仮想ブリッジに送出される。
仮想ブリッジは、ARP要求パケットをSDNコントローラに転送し、SDNコントローラにより返信されたフローエントリを受信し、ARP応答パケットを第1の仮想マシンに返信するように更に構成される。ARP応答パケットは、送出対象のデータパケットの宛先MACアドレスとして使用される仮想ブリッジのアップリンクポートのMACアドレスを搬送する。
フローエントリは、MACアドレス設定を更に含む。MACアドレス設定は、仮想ブリッジが第1の仮想マシンにより第2の仮想マシンに送出されたユニキャストパケットを受信したときに、ユニキャストパケットの宛先MACアドレスを第2の仮想マシンのMACアドレスに変更するように、仮想ブリッジに対して命令するために使用される。
さらに、フローエントリは、出力設定を更に含む。出力設定は、仮想ネットワーク機能モジュールに接続されたポートを使用することにより、変更されたデータパケットを送出するように命令するために使用される。
仮想ブリッジのアップリンクポートは、第1のネットワークポートのPFであり、仮想ブリッジは、PFを使用することにより、ネットワークインタフェースカードに接続されるか、或いは仮想ブリッジのアップリンクポートは、第1のネットワークポートの選択されたVFであり、仮想ブリッジは、選択されたVFを使用することにより、ネットワークインタフェースカードに接続され、仮想ブリッジに接続された選択されたVFは、プロミスキャスモードに設定される。
第2の仮想マシン及び第1の仮想マシンが同じホスト上で実行するときに、仮想ブリッジは、処理されたデータパケットを受信し、スイッチング機器を使用することにより、データパケットの宛先MACアドレスに従って処理されたデータパケットを第2の仮想マシンに送出するように更に構成される。
第2の仮想マシン及び第1の仮想マシンが異なるホスト上で実行するときに、第1の仮想マシンが位置するホストの仮想ネットワーク機能モジュールと、第2の仮想マシンが位置するホストの仮想ネットワーク機能モジュールとの間にトンネルが確立される。処理されたデータパケットは、第2のネットワークポートから、第2の仮想マシンが位置するホストの仮想ネットワーク機能モジュールに送信される。データパケットに対してネットワーク機能処理が完了した後に、第2の仮想マシンが位置するホストの仮想ネットワーク機能モジュールは、第2の仮想マシンが位置するホストの仮想ブリッジを使用することにより、データパケットを第2の仮想マシンに送出する。
本発明の実施例は、図2〜図6におけるデバイスにより使用されるコンピュータソフトウェア命令を記憶するように構成されたコンピュータ記憶媒体を更に提供する。コンピュータソフトウェア命令は、前述の方法の実施例を実行するように設計されたプログラムを含む。クラウドコンピューティングシステムにおけるパケット処理方法は、記憶されたプログラムを実行することにより実現されてもよい。
要するに、本発明の実施例において提供されるクラウドコンピューティングシステムにおけるパケット処理方法、ホスト及びシステムによれば、パススルーVFを使用する仮想マシンにより送出されたパケットは、VMM上の仮想ブリッジに導かれることができ、さらに、VMM上の仮想ネットワーク機能モジュールは、データパケットに対してネットワーク機能処理を実行し、これにより、ユーザに対して豊富なネットワーク機能を提供する。
実施例を参照して本発明について説明したが、保護を請求する本発明の実施例を実現するプロセスにおいて、当業者は、添付図面、開示された内容及び添付の特許請求の範囲を見ることにより、開示された実施例の他の変形を理解及び実現し得る。特許請求の範囲において、「含む」(comprising)という用語は、他の構成要素の部分又はステップを除外しない。単一のプロセッサ又は他のユニットは、特許請求の範囲に列挙されたいくつかの機能を実現してもよい。いくつかの手段は、互いに異なる従属請求項に記録されるが、これは、これらの手段がより良い効果を生成するように結合できないことを意味するのではない。
当業者は、本発明の実施例が方法、装置(デバイス)又はコンピュータプログラム製品として提供されてもよいことを理解すべきである。したがって、本発明は、ハードウェアのみの実施例、ソフトウェアのみの実施例、又はソフトウェアとハードウェアとの組み合わせを有する実施例の形式を使用してもよい。さらに、本発明の実施例は、コンピュータ使用可能プログラムコードを含む1つ以上のコンピュータ使用可能記憶媒体(ディスクメモリ、CD-ROM、光メモリ等を含むが、これらに限定されない)上に実現されたコンピュータプログラム製品の形式を使用してもよい。コンピュータプログラムは、適切な媒体に記憶/分配され、他のハードウェアと共にハードウェアの一部として提供又は使用され、或いはInternet又は他の有線若しくは無線電気通信システムを使用すること等により、他の割り当て形式を使用してもよい。
本発明の実施例におけるコンピュータプログラム命令は、コンピュータ又は他のプログラム可能データ処理デバイスに対して特定の方式で動作するように命令できるコンピュータ読み取り可能メモリに記憶されてもよい。コンピュータプログラム命令は、前述の実施例におけるコンポーネントの機能を実現するように実行されてもよい。
これらのコンピュータプログラム命令はまた、コンピュータ又は他のプログラム可能データ処理デバイスにロードされてもよく、これにより、一連の動作及びステップがコンピュータ又は他のプログラム可能デバイス上で実行され、これにより、コンピュータにより実現される処理を生成する。したがって、コンピュータ又は他のプログラム可能デバイス上で実行される命令は、フローチャート内の1つ以上のプロセス及び/又はブロック図内の1つ以上のブロックにおける特定の機能を実現するためのステップを提供する。
具体的な特徴及びその実施例を参照して本発明について説明したが、明らかに、本発明の真意及び範囲を逸脱することなく、様々な変更及び組み合わせがこれらに対して行われてもよい。対応して、明細書及び添付図面は、添付の特許請求の範囲により規定される本発明の単に例示的な説明に過ぎず、本発明の範囲をカバーする変更、変形、組み合わせ又は均等物のいずれか又は全てとして考えられる。明らかに、当業者は、本発明の真意及び範囲を逸脱することなく、本発明に対して様々な変更及び変形を行うことができる。本発明は、以下の特許請求の範囲及びその均等技術により規定される保護の範囲内に入るという条件で、これらの変更及び変形をカバーすることを意図する。

Claims (24)

  1. 仮想マシンモニタVMMと少なくとも1つのネットワークインタフェースカードとを含むホストであり、第1の仮想マシンが前記ホスト上で実行し、前記VMMは、仮想ブリッジと仮想ネットワーク機能モジュールとを含み、前記少なくとも1つのネットワークインタフェースカードは、スイッチング機器と少なくとも2つのネットワークポートとを含み、第1のネットワークポートは、ネットワークインタフェースカード仮想化能力をサポートし、前記第1のネットワークポートは、少なくとも1つの物理機能PF及び複数の仮想機能VFに対応しており、前記第1の仮想マシンは、前記第1のネットワークポートの少なくとも1つのVFに接続される、ホストであって、
    前記第1の仮想マシンは、送出対象のデータパケットの宛先媒体アクセス制御MACアドレスを決定するように構成され、前記送出対象のデータパケットの前記宛先MACアドレスは、前記仮想ブリッジのアップリンクポートのMACアドレスであり、
    前記第1の仮想マシンは、前記第1の仮想マシンに接続された前記VFを使用することにより、前記データパケットを第2の仮想マシンに送出するように更に構成され、前記データパケットで搬送される宛先IPアドレスは、前記第2の仮想マシンのIPアドレスであり、前記データパケットで搬送される前記宛先MACアドレスは、前記仮想ブリッジの前記アップリンクポートの前記MACアドレスであり、
    前記スイッチング機器は、前記データパケットを受信し、前記仮想ブリッジの前記アップリンクポートを使用することにより、前記データパケットの前記宛先MACアドレスに従って前記データパケットを前記仮想ブリッジに送出するように構成され、
    前記仮想ブリッジは、前記データパケットを受信し、前記データパケットの前記宛先MACアドレスを前記第2の仮想マシンのMACアドレスに変更し、変更されたデータパケットを前記仮想ネットワーク機能モジュールに送出するように構成され、
    前記仮想ネットワーク機能モジュールは、前記変更されたデータパケットに対してネットワーク機能処理を実行し、前記処理されたデータパケットを送出するように構成され、前記処理されたデータパケットの宛先MACアドレスは、前記第2の仮想マシンの前記MACアドレスである、ホスト。
  2. 前記第1のネットワークポートの前記複数のVFは、異なる仮想ローカルエリアネットワークVLAN識別子を有する、請求項1に記載のホスト。
  3. 前記第1の仮想マシンは、前記第1の仮想マシンに接続された前記VFを使用することにより、アドレス解決プロトコルARP要求パケットを送出するように更に構成され、前記ARP要求パケットは、前記ARP要求パケットを送出する前記VFのVLAN識別子を搬送し、
    前記スイッチング機器は、前記ARP要求パケットをブロードキャストするように更に構成され、前記ARP要求パケットは、前記アップリンクポートを使用することにより、前記仮想ブリッジに送出され、
    前記仮想ブリッジは、前記ARP要求パケットをソフトウェア・デファインド・ネットワーキングSDNコントローラに転送し、前記SDNコントローラにより返信されたフローエントリを受信するように更に構成され、前記フローエントリは、ARP取得設定を含み、前記ARP取得設定は、前記仮想ブリッジに対して前記ARP要求パケットに基づいてARP応答パケットを構築するように命令するために使用され、前記ARP応答パケットは、前記送出対象のデータパケットの前記宛先MACアドレスとして使用される前記仮想ブリッジの前記アップリンクポートの前記MACアドレスを搬送し、
    前記仮想ブリッジは、前記ARP応答パケットを前記第1の仮想マシンに返信するように更に構成され、前記ARP応答パケットは、前記送出対象のデータパケットの前記宛先MACアドレスとして使用される前記仮想ブリッジの前記アップリンクポートの前記MACアドレスを搬送する、請求項2に記載のホスト。
  4. 前記フローエントリは、MACアドレス設定を更に含み、前記MACアドレス設定は、前記仮想ブリッジが前記第1の仮想マシンにより前記第2の仮想マシンに送出された前記データパケットを受信したときに、前記データパケットの前記宛先MACアドレスを前記第2の仮想マシンの前記MACアドレスに変更するように、前記仮想ブリッジに対して命令するために使用される、請求項3に記載のホスト。
  5. 前記仮想ブリッジの前記アップリンクポートは、前記第1のネットワークポートのPFであり、前記仮想ブリッジは、前記PFを使用することにより、前記ネットワークインタフェースカードに接続されるか、或いは
    前記仮想ブリッジの前記アップリンクポートは、前記第1のネットワークポートの選択されたVFであり、前記仮想ブリッジは、前記選択されたVFを使用することにより、前記ネットワークインタフェースカードに接続され、前記仮想ブリッジに接続された前記選択されたVFは、プロミスキャスモードに設定される、請求項1乃至4のうちいずれか1項に記載のホスト。
  6. 前記第2の仮想マシン及び前記第1の仮想マシンは、同じホスト上で実行し、
    前記仮想ブリッジは、前記処理されたデータパケットを受信し、前記スイッチング機器を使用することにより、前記データパケットの前記宛先MACアドレスに従って前記処理されたデータパケットを前記第2の仮想マシンに送出するように更に構成される、請求項1乃至4のうちいずれか1項に記載のホスト。
  7. 前記第2の仮想マシン及び前記第1の仮想マシンは、異なるホスト上で実行し、
    前記仮想ネットワーク機能モジュールは、前記仮想ネットワーク機能モジュールと、前記第2の仮想マシンが位置するホスト上の他の仮想ネットワーク機能モジュールとの間にトンネルを確立し、前記処理されたデータパケットを前記ネットワークインタフェースカードの第2のネットワークポートに送出し、前記トンネルを使用することにより、前記処理されたデータパケットを前記第2の仮想マシンが位置する前記ホストに送出するように構成され、これにより、前記他の仮想ネットワーク機能モジュールは、前記処理されたデータパケットを前記第2の仮想マシンに送出する、請求項1乃至4のうちいずれか1項に記載のホスト。
  8. クラウドコンピューティングシステムにおけるパケット処理方法であり、前記クラウドコンピューティングシステム内の少なくとも1つのホストは、仮想マシンモニタVMMと少なくとも1つのネットワークインタフェースカードとを含み、第1の仮想マシンが前記ホスト上で実行し、前記VMMは、仮想ブリッジと仮想ネットワーク機能モジュールとを含み、前記ネットワークインタフェースカードは、スイッチング機器と少なくとも2つのネットワークポートとを含み、第1のネットワークポートは、ネットワークインタフェースカード仮想化能力をサポートし、前記第1のネットワークポートは、少なくとも1つのPF及び複数のVFに対応しており、前記第1の仮想マシンは、前記第1のネットワークポートの少なくとも1つのVFに接続される、方法であって、
    前記第1の仮想マシンにより、送出対象のデータパケットの宛先MACアドレスを決定するステップであり、前記送出対象のデータパケットの前記宛先MACアドレスは、前記仮想ブリッジのアップリンクポートのMACアドレスであるステップと、
    前記第1の仮想マシンにより、前記第1の仮想マシンに接続された前記VFを使用することにより、前記データパケットを第2の仮想マシンに送出するステップであり、前記データパケットで搬送される宛先IPアドレスは、前記第2の仮想マシンのIPアドレスであり、前記データパケットで搬送される前記宛先MACアドレスは、前記仮想ブリッジの前記アップリンクポートの前記MACアドレスであるステップと、
    前記スイッチング機器により、前記データパケットを受信し、前記仮想ブリッジの前記アップリンクポートを使用することにより、前記データパケットの前記宛先MACアドレスに従って前記データパケットを前記仮想ブリッジに送出するステップと、
    前記仮想ブリッジにより、前記データパケットを受信し、前記データパケットの前記宛先MACアドレスを前記第2の仮想マシンのMACアドレスに変更し、変更されたデータパケットを前記仮想ネットワーク機能モジュールに送出するステップと、
    前記仮想ネットワーク機能モジュールにより、前記変更されたデータパケットに対してネットワーク機能処理を実行し、前記処理されたデータパケットを送出するステップであり、前記処理されたデータパケットの宛先MACアドレスは、前記第2の仮想マシンの前記MACアドレスであるステップと
    を含む方法。
  9. 前記第1のネットワークポートの前記複数のVFは、異なる仮想ローカルエリアネットワークVLAN識別子を有する、請求項8に記載の方法。
  10. 前記第1の仮想マシンにより、送出対象のデータパケットの宛先MACアドレスを決定するステップは、
    前記第1の仮想マシンにより、前記第1の仮想マシンに接続された前記VFを使用することにより、ARP要求パケットを送出するステップであり、前記ARP要求パケットは、前記ARP要求パケットを送出する前記VFのVLAN識別子を搬送するステップと、
    前記スイッチング機器により、前記ARP要求パケットをブロードキャストするステップであり、前記ARP要求パケットは、前記アップリンクポートを使用することにより、前記仮想ブリッジに送出されるステップと、
    前記仮想ブリッジにより、前記ARP要求パケットをSDNコントローラに転送し、前記SDNコントローラにより返信されたフローエントリを受信するステップであり、前記フローエントリは、ARP取得設定を含み、前記ARP取得設定は、前記仮想ブリッジに対して前記ARP要求パケットに基づいてARP応答パケットを構築するように命令するために使用され、前記ARP応答パケットは、前記送出対象のデータパケットの前記宛先MACアドレスとして使用される前記仮想ブリッジの前記アップリンクポートの前記MACアドレスを搬送するステップと、
    前記仮想ブリッジにより、前記ARP応答パケットを前記第1の仮想マシンに返信するステップであり、前記ARP応答パケットは、前記送出対象のデータパケットの前記宛先MACアドレスとして使用される前記仮想ブリッジの前記アップリンクポートの前記MACアドレスを搬送するステップと
    を含む、請求項9に記載の方法。
  11. 前記フローエントリは、MACアドレス設定を更に含み、前記MACアドレス設定は、前記仮想ブリッジが前記第1の仮想マシンにより前記第2の仮想マシンに送出された前記データパケットを受信したときに、前記データパケットの前記宛先MACアドレスを前記第2の仮想マシンの前記MACアドレスに変更するように、前記仮想ブリッジに対して命令するために使用される、請求項10に記載の方法。
  12. 前記仮想ブリッジの前記アップリンクポートは、前記第1のネットワークポートのPFであり、前記仮想ブリッジは、前記PFを使用することにより、前記ネットワークインタフェースカードに接続されるか、或いは
    前記仮想ブリッジの前記アップリンクポートは、前記第1のネットワークポートの選択されたVFであり、前記仮想ブリッジは、前記選択されたVFを使用することにより、前記ネットワークインタフェースカードに接続され、前記仮想ブリッジに接続された前記選択されたVFは、プロミスキャスモードに設定される、請求項8乃至11のうちいずれか1項に記載の方法。
  13. 前記第2の仮想マシン及び前記第1の仮想マシンは、同じホスト上で実行し、前記方法は、
    前記仮想ブリッジにより、前記処理されたデータパケットを受信し、前記スイッチング機器を使用することにより、前記データパケットの前記宛先MACアドレスに従って前記処理されたデータパケットを前記第2の仮想マシンに送出するステップを更に含む、請求項8乃至11のうちいずれか1項に記載の方法。
  14. 前記第2の仮想マシン及び前記第1の仮想マシンは、異なるホスト上で実行し、前記方法は、
    前記仮想ネットワーク機能モジュールにより、前記仮想ネットワーク機能モジュールと、前記第2の仮想マシンが位置するホスト上の他の仮想ネットワーク機能モジュールとの間にトンネルを確立し、前記処理されたデータパケットを前記ネットワークインタフェースカードの第2のネットワークポートに送出し、前記トンネルを使用することにより、前記処理されたデータパケットを前記第2の仮想マシンが位置する前記ホストに送出し、これにより、前記他の仮想ネットワーク機能モジュールは、前記処理されたデータパケットを前記第2の仮想マシンに送出するステップを更に含む、請求項8乃至11のうちいずれか1項に記載の方法。
  15. ソフトウェア・デファインド・ネットワーキングSDNコントローラと少なくとも1つのホストとを含むクラウドコンピューティングシステムであり、前記ホストは、仮想マシンモニタVMMと少なくとも1つのネットワークインタフェースカードとを含み、第1の仮想マシンが前記ホスト上で実行し、前記VMMは、仮想ブリッジと仮想ネットワーク機能モジュールとを含み、前記ネットワークインタフェースカードは、スイッチング機器と少なくとも2つのネットワークポートとを含み、第1のネットワークポートは、ネットワークインタフェースカード仮想化能力をサポートし、前記第1のネットワークポートは、少なくとも1つのPF及び複数のVFに対応しており、前記第1の仮想マシンは、前記第1のネットワークポートの少なくとも1つのVFに接続される、システムであって、
    前記SDNコントローラは、前記仮想ブリッジにより転送された前記第1の仮想マシンからのARP要求パケットを受信し、フローエントリを前記仮想ブリッジに返信するように構成され、前記フローエントリは、ARP取得設定とMACアドレス設定とを含み、前記ARP取得設定は、前記仮想ブリッジに対して前記第1の仮想マシンのためのARP応答パケットを構築するように命令するために使用され、前記ARP応答パケットは、送出対象のデータパケットの宛先MACアドレスとして使用される前記仮想ブリッジのアップリンクポートのMACアドレスを搬送し、
    前記第1の仮想マシンは、前記第1の仮想マシンに接続された前記VFを使用することにより、前記データパケットを第2の仮想マシンに送出するように構成され、前記データパケットで搬送される宛先IPアドレスは、前記第2の仮想マシンのIPアドレスであり、前記データパケットで搬送される前記宛先MACアドレスは、前記仮想ブリッジの前記アップリンクポートの前記MACアドレスであり、
    前記スイッチング機器は、前記データパケットを受信し、前記仮想ブリッジの前記アップリンクポートを使用することにより、前記データパケットの前記宛先MACアドレスに従って前記データパケットを前記仮想ブリッジに送出するように構成され、
    前記仮想ブリッジは、前記データパケットを受信し、前記データパケットの前記宛先MACアドレスを前記第2の仮想マシンのMACアドレスに変更し、変更されたデータパケットを前記仮想ネットワーク機能モジュールに送出するように構成され、
    前記仮想ネットワーク機能モジュールは、前記変更されたデータパケットに対してネットワーク機能処理を実行し、前記処理されたデータパケットを送出するように構成され、前記処理されたデータパケットの宛先MACアドレスは、前記第2の仮想マシンの前記MACアドレスである、システム。
  16. 前記第1のネットワークポートの前記複数のVFは、異なる仮想ローカルエリアネットワークVLAN識別子を有する、請求項15に記載のシステム。
  17. 前記第1の仮想マシンは、前記第1の仮想マシンに接続された前記VFを使用することにより、前記ARP要求パケットを送出するように更に構成され、前記ARP要求パケットは、前記ARP要求パケットを送出する前記VFのVLAN識別子を搬送し、
    前記スイッチング機器は、前記ARP要求パケットをブロードキャストするように更に構成され、前記ARP要求パケットは、前記アップリンクポートを使用することにより、前記仮想ブリッジに送出され、
    前記仮想ブリッジは、前記ARP要求パケットを前記SDNコントローラに転送し、前記SDNコントローラにより返信された前記フローエントリを受信するように更に構成され、前記フローエントリは、前記ARP取得設定を含み、前記ARP取得設定は、前記仮想ブリッジに対して前記ARP要求パケットに基づいて前記ARP応答パケットを構築するように命令するために使用され、前記ARP応答パケットは、前記送出対象のデータパケットの前記宛先MACアドレスとして使用される前記仮想ブリッジの前記アップリンクポートの前記MACアドレスを搬送し、
    前記仮想ブリッジは、前記ARP応答パケットを前記第1の仮想マシンに返信するように更に構成され、前記ARP応答パケットは、前記送出対象のデータパケットの前記宛先MACアドレスとして使用される前記仮想ブリッジの前記アップリンクポートの前記MACアドレスを搬送する、請求項16に記載のシステム。
  18. 前記フローエントリは、前記MACアドレス設定を更に含み、前記MACアドレス設定は、前記仮想ブリッジが前記第1の仮想マシンにより前記第2の仮想マシンに送出された前記データパケットを受信したときに、前記データパケットの前記宛先MACアドレスを前記第2の仮想マシンの前記MACアドレスに変更するように、前記仮想ブリッジに対して命令するために使用される、請求項17に記載のシステム。
  19. 前記仮想ブリッジの前記アップリンクポートは、前記第1のネットワークポートのPFであり、前記仮想ブリッジは、前記PFを使用することにより、前記ネットワークインタフェースカードに接続されるか、或いは
    前記仮想ブリッジの前記アップリンクポートは、前記第1のネットワークポートの選択されたVFであり、前記仮想ブリッジは、前記選択されたVFを使用することにより、前記ネットワークインタフェースカードに接続され、前記仮想ブリッジに接続された前記選択されたVFは、プロミスキャスモードに設定される、請求項15乃至18のうちいずれか1項に記載のシステム。
  20. 前記第2の仮想マシン及び前記第1の仮想マシンは、同じホスト上で実行し、
    前記仮想ブリッジは、前記処理されたデータパケットを受信し、前記スイッチング機器を使用することにより、前記データパケットの前記宛先MACアドレスに従って前記処理されたデータパケットを前記第2の仮想マシンに送出するように更に構成される、請求項15乃至18のうちいずれか1項に記載のシステム。
  21. 前記第2の仮想マシン及び前記第1の仮想マシンは、異なるホスト上で実行し、
    前記仮想ネットワーク機能モジュールは、前記仮想ネットワーク機能モジュールと、前記第2の仮想マシンが位置するホスト上の他の仮想ネットワーク機能モジュールとの間にトンネルを確立し、前記処理されたデータパケットを前記ネットワークインタフェースカードの第2のネットワークポートに送出し、前記トンネルを使用することにより、前記処理されたデータパケットを前記第2の仮想マシンが位置する前記ホストに送出するように構成され、これにより、前記他の仮想ネットワーク機能モジュールは、前記処理されたデータパケットを前記第2の仮想マシンに送出する、請求項15乃至18のうちいずれか1項に記載のシステム。
  22. 第1のプロセッサと、第1のメモリと、少なくとも1つのネットワークインタフェースカードとを含むホストであり、前記ネットワークインタフェースカードは、第2のプロセッサと、第2のメモリと、少なくとも2つのネットワークポートとを含み、第1のネットワークポートは、ネットワークインタフェースカード仮想化能力をサポートし、前記第1のネットワークポートは、少なくとも1つのPF及び複数のVFに対応しており、前記第1のメモリ及び前記第2のメモリは、命令を記憶し、前記第1のプロセッサは、第1の仮想マシンの機能を実現するために、前記第1のメモリ内の第1の命令を実行し、前記第1の仮想マシンは、前記第1のネットワークポートの少なくとも1つのVFに接続され、前記第1のプロセッサは、仮想ブリッジの機能を実現するために、前記第1のメモリ内の第2の命令を実行し、前記第1のプロセッサは、仮想ネットワーク機能モジュールの機能を実現するために、前記第1のメモリ内の第3の命令を実行し、前記第2のプロセッサは、スイッチング機器の機能を実現するために、前記第2のメモリ内の命令を実行するように構成される、ホストであって、
    前記第1のプロセッサは、前記第1のメモリ内の前記第1の命令を実行し、以下のステップ、すなわち、送出対象のデータパケットの宛先MACアドレスを決定するステップであり、前記送出対象のデータパケットの前記宛先MACアドレスは、前記仮想ブリッジのアップリンクポートのMACアドレスであるステップ、及び前記第1の仮想マシンに接続された前記VFを使用することにより、前記データパケットを第2の仮想マシンに送出するステップであり、前記データパケットで搬送される宛先IPアドレスは、前記第2の仮想マシンのIPアドレスであり、前記データパケットで搬送される前記宛先MACアドレスは、前記仮想ブリッジの前記アップリンクポートの前記MACアドレスであるステップを実行するように構成され、
    前記第2のプロセッサは、前記第2のメモリ内の前記命令を実行し、以下のステップ、すなわち、前記データパケットを受信し、前記仮想ブリッジの前記アップリンクポートを使用することにより、前記データパケットの前記宛先MACアドレスに従って前記データパケットを前記仮想ブリッジに送出するステップを実行するように構成され、
    前記第1のプロセッサは、前記第1のメモリ内の前記第2の命令を実行し、以下のステップ、すなわち、前記データパケットを受信し、前記データパケットの前記宛先MACアドレスを前記第2の仮想マシンのMACアドレスに変更するステップを実行するように更に構成され、
    前記第1のプロセッサは、前記第1のメモリ内の前記第3の命令を実行し、以下のステップ、すなわち、変更されたデータパケットに対してネットワーク機能処理を実行し、前記処理されたデータパケットを送出するステップであり、前記処理されたデータパケットの宛先MACアドレスは、前記第2の仮想マシンの前記MACアドレスであるステップを実行するように更に構成される、ホスト。
  23. 前記第1のネットワークポートの前記複数のVFは、異なる仮想ローカルエリアネットワークVLAN識別子を有し、
    前記第1のプロセッサは、前記第1のメモリ内の前記第1の命令を実行し、以下のステップ、すなわち、前記第1の仮想マシンに接続された前記VFを使用することにより、ARP要求パケットを送出するステップであり、前記ARP要求パケットは、前記ARP要求パケットを送出する前記VFのVLAN識別子を搬送するステップを実行するように更に構成され、
    前記第2のプロセッサは、前記第2のメモリ内の前記命令を実行し、以下のステップ、すなわち、前記ARP要求パケットをブロードキャストし、前記アップリンクポートを使用することにより、前記ARP要求パケットを前記仮想ブリッジに送出するステップを実行するように構成され、
    前記第1のプロセッサは、前記第1のメモリ内の前記第2の命令を実行し、以下のステップ、すなわち、前記ARP要求パケットをSDNコントローラに転送し、前記SDNコントローラにより返信されたフローエントリを受信するステップであり、前記フローエントリは、ARP取得設定を含み、前記ARP取得設定は、前記仮想ブリッジに対して前記ARP要求パケットに基づいてARP応答パケットを構築するように命令するために使用され、前記ARP応答パケットは、前記送出対象のデータパケットの前記宛先MACアドレスとして使用される前記仮想ブリッジの前記アップリンクポートの前記MACアドレスを搬送するステップ、及び前記ARP応答パケットを前記第1の仮想マシンに返信するステップであり、前記ARP応答パケットは、前記送出対象のデータパケットの前記宛先MACアドレスとして使用される前記仮想ブリッジの前記アップリンクポートの前記MACアドレスを搬送するステップを実行するように更に構成される、請求項22に記載のホスト。
  24. 前記フローエントリは、MACアドレス設定を更に含み、前記MACアドレス設定は、前記仮想ブリッジが前記第1の仮想マシンにより前記第2の仮想マシンに送出された前記データパケットを受信したときに、前記データパケットの前記宛先MACアドレスを前記第2の仮想マシンの前記MACアドレスに変更するように、前記仮想ブリッジに対して命令するために使用される、請求項23に記載のホスト。
JP2018510708A 2016-11-09 2016-11-09 クラウドコンピューティングシステムにおけるパケット処理方法、ホスト及びシステム Active JP6605713B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/105228 WO2018086014A1 (zh) 2016-11-09 2016-11-09 云计算系统中报文处理的方法、主机和系统

Publications (2)

Publication Number Publication Date
JP2019503599A JP2019503599A (ja) 2019-02-07
JP6605713B2 true JP6605713B2 (ja) 2019-11-13

Family

ID=60052234

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018510708A Active JP6605713B2 (ja) 2016-11-09 2016-11-09 クラウドコンピューティングシステムにおけるパケット処理方法、ホスト及びシステム

Country Status (9)

Country Link
US (1) US11005755B2 (ja)
EP (1) EP3525423B1 (ja)
JP (1) JP6605713B2 (ja)
CN (2) CN112217746B (ja)
AU (1) AU2016414390B2 (ja)
BR (1) BR112018000116A2 (ja)
CA (1) CA2991359C (ja)
SG (1) SG11201800020UA (ja)
WO (1) WO2018086014A1 (ja)

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9825913B2 (en) 2014-06-04 2017-11-21 Nicira, Inc. Use of stateless marking to speed up stateful firewall rule processing
US9692698B2 (en) 2014-06-30 2017-06-27 Nicira, Inc. Methods and systems to offload overlay network packet encapsulation to hardware
US10749808B1 (en) 2015-06-10 2020-08-18 Amazon Technologies, Inc. Network flow management for isolated virtual networks
US11038845B2 (en) 2016-02-23 2021-06-15 Nicira, Inc. Firewall in a virtualized computing environment using physical network interface controller (PNIC) level firewall rules
SG11201800020UA (en) 2016-11-09 2018-06-28 Huawei Tech Co Ltd Packet processing method in cloud computing system, host, and system
AU2016414391B2 (en) 2016-11-09 2019-01-17 Huawei Technologies Co., Ltd. Packet processing method in cloud computing system, host, and system
CN107643938A (zh) * 2017-08-24 2018-01-30 中国科学院计算机网络信息中心 数据传输方法、装置及存储介质
CN110519147A (zh) * 2018-05-22 2019-11-29 中兴通讯股份有限公司 数据帧传输方法、装置、设备和计算机可读存储介质
CN110636036A (zh) * 2018-06-22 2019-12-31 复旦大学 一种基于SDN的OpenStack云主机网络访问控制的方法
US11563677B1 (en) * 2018-06-28 2023-01-24 Cable Television Laboratories, Inc. Systems and methods for secure network management of virtual network function
US11822946B2 (en) * 2018-06-28 2023-11-21 Cable Television Laboratories, Inc. Systems and methods for secure network management of virtual network functions
CN108965169B (zh) * 2018-07-12 2020-09-25 联想(北京)有限公司 一种报文传输方法、网卡控制器、网卡及电子设备
CN108833305B (zh) * 2018-07-17 2024-04-05 北京西普阳光科技股份有限公司 主机的虚拟网络装置
US11108687B1 (en) * 2018-09-12 2021-08-31 Amazon Technologies, Inc. Scalable network function virtualization service
US10897417B2 (en) 2018-09-19 2021-01-19 Amazon Technologies, Inc. Automated route propagation among networks attached to scalable virtual traffic hubs
US10834044B2 (en) 2018-09-19 2020-11-10 Amazon Technologies, Inc. Domain name system operations implemented using scalable virtual traffic hub
CN109525515B (zh) * 2018-10-23 2021-04-30 郑州云海信息技术有限公司 一种云平台中网卡的管理方法和装置
CN111147369B (zh) * 2018-11-05 2022-02-08 中国电信股份有限公司 路由系统、路由方法和服务器
CN109587063B (zh) * 2018-12-29 2021-08-31 奇安信科技集团股份有限公司 一种数据的引流方法及装置
US10698853B1 (en) 2019-01-03 2020-06-30 SambaNova Systems, Inc. Virtualization of a reconfigurable data processor
CN111698141B (zh) * 2019-03-13 2022-12-02 中兴通讯股份有限公司 报文的转发方法及装置
CN110149231B (zh) * 2019-05-21 2022-05-31 优刻得科技股份有限公司 更新虚拟交换机的方法、装置、存储介质和设备
CN110688237B (zh) * 2019-06-25 2024-02-09 华为技术有限公司 转发报文的方法、中间设备和计算机设备
CN110677344A (zh) * 2019-09-27 2020-01-10 亚信科技(成都)有限公司 一种数据处理方法及服务器
CN112714073B (zh) * 2019-10-24 2024-04-30 中兴通讯股份有限公司 基于sr-iov网卡的报文分流方法、系统及存储介质
CN110912836B (zh) * 2019-11-14 2023-05-30 优刻得科技股份有限公司 使转发设备转发数据的方法、控制设备、存储介质和系统
CN111092876B (zh) * 2019-12-12 2021-10-01 北京首都在线科技股份有限公司 多主机系统、电子设备、存储介质、用于多主机系统的信息处理方法及装置
CN113132200B (zh) * 2019-12-30 2024-01-19 中兴通讯股份有限公司 数据转发方法、转发器、系统、服务器和存储介质
CN111211982B (zh) * 2019-12-30 2022-05-17 视联动力信息技术股份有限公司 数据转发方法及装置、电子设备、存储介质
US11153261B2 (en) 2020-01-22 2021-10-19 Cisco Technology, Inc. Routing traffic for virtualized/containerized network functions
CN111510365B (zh) * 2020-03-31 2021-12-17 杭州博联智能科技股份有限公司 基于Wi-Fi数据包的设备桥接云端方法、装置、设备及介质
US11677583B2 (en) * 2020-04-06 2023-06-13 Cisco Technology, Inc. Dynamic cellular connectivity between the hypervisors and virtual machines
US11689455B2 (en) 2020-05-28 2023-06-27 Oracle International Corporation Loop prevention in virtual layer 2 networks
US11962518B2 (en) 2020-06-02 2024-04-16 VMware LLC Hardware acceleration techniques using flow selection
US12495104B2 (en) * 2020-06-26 2025-12-09 Ntt, Inc. Data node, data node management method, and data node management program
CN116235484A (zh) 2020-07-14 2023-06-06 甲骨文国际公司 层2网络中的基于接口的acl
US11792134B2 (en) 2020-09-28 2023-10-17 Vmware, Inc. Configuring PNIC to perform flow processing offload using virtual port identifiers
US11593278B2 (en) 2020-09-28 2023-02-28 Vmware, Inc. Using machine executing on a NIC to access a third party storage not supported by a NIC or host
US11824931B2 (en) * 2020-09-28 2023-11-21 Vmware, Inc. Using physical and virtual functions associated with a NIC to access an external storage through network fabric driver
US12021759B2 (en) 2020-09-28 2024-06-25 VMware LLC Packet processing with hardware offload units
US11636053B2 (en) 2020-09-28 2023-04-25 Vmware, Inc. Emulating a local storage by accessing an external storage through a shared port of a NIC
US11829793B2 (en) 2020-09-28 2023-11-28 Vmware, Inc. Unified management of virtual machines and bare metal computers
CN114531405B (zh) * 2020-10-31 2023-06-06 华为技术有限公司 一种流表处理方法及相关设备
CN112565113A (zh) * 2020-12-23 2021-03-26 科东(广州)软件科技有限公司 多虚拟机间的网卡共享系统、方法、装置、设备及介质
CN112631726B (zh) * 2020-12-25 2022-05-24 苏州浪潮智能科技有限公司 一种虚拟机数据处理方法、系统、设备以及介质
JP2024503318A (ja) 2020-12-30 2024-01-25 オラクル・インターナショナル・コーポレイション 仮想化されたクラウド環境においてアクセス制御リストを使用するレイヤ2ネットワーキング
US11652743B2 (en) 2020-12-30 2023-05-16 Oracle International Corporation Internet group management protocol (IGMP) of a layer-2 network in a virtualized cloud environment
US11671355B2 (en) 2021-02-05 2023-06-06 Oracle International Corporation Packet flow control in a header of a packet
JP7783287B2 (ja) 2021-02-13 2025-12-09 オラクル・インターナショナル・コーポレイション サービスプロバイダプライベートネットワークを顧客プライベートネットワークに接続するためのクラウドインフラストラクチャリソース
US11777897B2 (en) 2021-02-13 2023-10-03 Oracle International Corporation Cloud infrastructure resources for connecting a service provider private network to a customer private network
CN114980038B (zh) * 2021-02-24 2025-05-16 京东科技信息技术有限公司 机器人系统、用于数据通信的方法和装置
DE102021113670A1 (de) * 2021-05-27 2022-12-01 Dspace Gmbh Verfahren zur Datenübertragung in einem Netzwerksystem sowie Netzwerksystem
CN113630265B (zh) * 2021-06-30 2023-04-07 济南浪潮数据技术有限公司 一种基于智能网卡的虚拟网络冗余备份方法及装置
CN113965521B (zh) * 2021-10-19 2024-03-01 京东科技信息技术有限公司 数据包的传输方法、服务器及存储介质
US12229578B2 (en) 2021-12-22 2025-02-18 VMware LLC Teaming of smart NICs
US11863376B2 (en) 2021-12-22 2024-01-02 Vmware, Inc. Smart NIC leader election
US11995024B2 (en) 2021-12-22 2024-05-28 VMware LLC State sharing between smart NICs
WO2023154411A1 (en) 2022-02-10 2023-08-17 SambaNova Systems, Inc. Aribitration for a network in a reconfigurable data processor
US12328222B2 (en) 2022-03-25 2025-06-10 Red Hat, Inc. Reverse virtual ethernet port aggregator bridging for single root I/O virtualization
CN114844745B (zh) * 2022-03-29 2024-03-15 西安广和通无线软件有限公司 数据转发装置、方法、电子设备及存储介质
US12373237B2 (en) 2022-05-27 2025-07-29 VMware LLC Logical memory addressing by smart NIC across multiple devices
US11928367B2 (en) 2022-06-21 2024-03-12 VMware LLC Logical memory addressing for network devices
US11928062B2 (en) 2022-06-21 2024-03-12 VMware LLC Accelerating data message classification with smart NICs
US12481444B2 (en) 2022-06-21 2025-11-25 VMware LLC Smart NIC responding to requests from client device
US11899594B2 (en) 2022-06-21 2024-02-13 VMware LLC Maintenance of data message classification cache on smart NIC
CN115150327B (zh) * 2022-06-29 2024-06-14 郑州浪潮数据技术有限公司 一种接口设置方法、装置、设备及介质
US12206579B2 (en) * 2022-07-15 2025-01-21 SambaNova Systems, Inc. Reconfigurable dataflow unit with remote read/write functionality
US12306788B2 (en) 2022-07-15 2025-05-20 SambaNova Systems, Inc. Reconfigurable dataflow unit with streaming write functionality
CN115421412B (zh) * 2022-08-16 2025-03-18 南京赛宁信息技术有限公司 一种网络靶场流量多路复用监控系统及方法
CN115361204B (zh) * 2022-08-18 2024-09-24 派欧云计算(上海)有限公司 边缘场景下共享公网ip的网络隔离方法及装置
CN116055312B (zh) * 2022-12-20 2025-03-21 西安四叶草信息技术有限公司 虚拟化平台的融合方法、装置、设备及存储介质
CN115834296B (zh) * 2023-02-16 2023-04-18 北京融为科技有限公司 一种数据传输方法、装置、电子设备和存储介质
CN120389996B (zh) * 2025-06-30 2025-10-24 山东云海国创云计算装备产业创新中心有限公司 数据访问方法、交换子系统、数据访问系统及电子设备

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2459433B (en) * 2008-03-07 2012-06-06 Hewlett Packard Development Co Distributed network connection policy management
GB2458154B (en) * 2008-03-07 2012-06-27 Hewlett Packard Development Co Routing across a virtual network
CN101309180B (zh) * 2008-06-21 2010-12-08 华中科技大学 一种适用于虚拟机环境的安全网络入侵检测系统
US8442048B2 (en) 2009-11-04 2013-05-14 Juniper Networks, Inc. Methods and apparatus for configuring a virtual network switch
CN102457586B (zh) * 2010-10-18 2015-06-03 中兴通讯股份有限公司 一种实现二层网络的扩展方法及扩展的二层网络
US8533285B2 (en) 2010-12-01 2013-09-10 Cisco Technology, Inc. Directing data flows in data centers with clustering services
US8462780B2 (en) * 2011-03-30 2013-06-11 Amazon Technologies, Inc. Offload device-based stateless packet processing
US8935457B2 (en) * 2011-07-29 2015-01-13 International Business Machines Corporation Network filtering in a virtualized environment
US8867403B2 (en) * 2011-08-18 2014-10-21 International Business Machines Corporation Virtual network overlays
KR20130050156A (ko) * 2011-11-07 2013-05-15 한국전자통신연구원 가상 주소 공간 전환 장치
US9928107B1 (en) * 2012-03-30 2018-03-27 Amazon Technologies, Inc. Fast IP migration in a hybrid network environment
US8964735B2 (en) * 2012-05-18 2015-02-24 Rackspace Us, Inc. Translating media access control (MAC) addresses in a network hierarchy
US9059868B2 (en) 2012-06-28 2015-06-16 Dell Products, Lp System and method for associating VLANs with virtual switch ports
CN102790777B (zh) 2012-08-07 2016-06-15 华为技术有限公司 网络接口适配器注册方法及驱动设备、服务器
JPWO2014065315A1 (ja) 2012-10-24 2016-09-08 日本電気株式会社 通信システム、仮想マシンサーバ、仮想ネットワーク管理装置、ネットワーク制御方法及びプログラム
US10341263B2 (en) 2012-12-10 2019-07-02 University Of Central Florida Research Foundation, Inc. System and method for routing network frames between virtual machines
CN103051529B (zh) 2012-12-20 2016-03-30 华为技术有限公司 一种报文的处理方法和装置
JP6024474B2 (ja) 2013-01-23 2016-11-16 富士通株式会社 マルチテナントシステム、管理装置、管理プログラム、およびマルチテナントシステムの制御方法
CN105144652A (zh) * 2013-01-24 2015-12-09 惠普发展公司,有限责任合伙企业 软件定义的网络中的地址解析
US9432287B2 (en) * 2013-03-12 2016-08-30 International Business Machines Corporation Virtual gateways and implicit routing in distributed overlay virtual environments
CN103621026B (zh) 2013-04-01 2017-06-13 华为技术有限公司 虚拟机的数据交换方法、装置和系统
CN103609077B (zh) * 2013-06-18 2017-02-22 华为技术有限公司 用于数据传输的方法、装置和系统以及物理网卡
CN103346981B (zh) * 2013-06-28 2016-08-10 华为技术有限公司 虚拟交换方法、相关装置和计算机系统
KR101644678B1 (ko) 2013-06-28 2016-08-01 주식회사 케이티 네크워크 입출력 가상화 환경에서 가상 머신의 이동성 지원 방법 및 이를 수행하는 장치
US9577845B2 (en) * 2013-09-04 2017-02-21 Nicira, Inc. Multiple active L3 gateways for logical networks
US9634948B2 (en) * 2013-11-07 2017-04-25 International Business Machines Corporation Management of addresses in virtual machines
CN103916314A (zh) * 2013-12-26 2014-07-09 杭州华为数字技术有限公司 报文转发控制方法和相关装置及物理主机
WO2015100656A1 (zh) * 2013-12-31 2015-07-09 华为技术有限公司 一种实现虚拟机通信的方法和装置
EP2911347B1 (en) * 2014-02-24 2019-02-13 Hewlett-Packard Enterprise Development LP Providing policy information
CN103873374B (zh) * 2014-03-27 2017-08-11 新华三技术有限公司 虚拟化系统中的报文处理方法及装置
CN104506408B (zh) * 2014-12-31 2018-02-06 新华三技术有限公司 基于sdn的数据传输的方法及装置
CN105812340B (zh) * 2014-12-31 2019-01-08 新华三技术有限公司 一种虚拟网络访问外网的方法和装置
US10812632B2 (en) * 2015-02-09 2020-10-20 Avago Technologies International Sales Pte. Limited Network interface controller with integrated network flow processing
CN105978828B (zh) 2016-05-16 2019-07-23 锐捷网络股份有限公司 一种实现虚拟机报文转发的方法和交换机
SG11201800020UA (en) 2016-11-09 2018-06-28 Huawei Tech Co Ltd Packet processing method in cloud computing system, host, and system
AU2016414391B2 (en) 2016-11-09 2019-01-17 Huawei Technologies Co., Ltd. Packet processing method in cloud computing system, host, and system

Also Published As

Publication number Publication date
SG11201800020UA (en) 2018-06-28
AU2016414390A1 (en) 2018-05-24
CN107278359B (zh) 2020-09-18
AU2016414390B2 (en) 2019-06-20
WO2018086014A1 (zh) 2018-05-17
US20190158396A1 (en) 2019-05-23
CA2991359A1 (en) 2018-05-17
EP3525423A1 (en) 2019-08-14
CN112217746A (zh) 2021-01-12
JP2019503599A (ja) 2019-02-07
EP3525423A4 (en) 2019-08-14
US11005755B2 (en) 2021-05-11
CA2991359C (en) 2021-12-07
CN107278359A (zh) 2017-10-20
BR112018000116A2 (pt) 2018-09-04
EP3525423B1 (en) 2021-04-07
CN112217746B (zh) 2024-06-18

Similar Documents

Publication Publication Date Title
JP6605713B2 (ja) クラウドコンピューティングシステムにおけるパケット処理方法、ホスト及びシステム
CN110099014B (zh) 云计算系统中报文处理的方法和主机
CN110088732B (zh) 一种数据包处理方法、主机和系统
US20220377045A1 (en) Network virtualization of containers in computing systems
EP3370158B1 (en) Network interface card switching for virtual networks
US9031081B2 (en) Method and system for switching in a virtualized platform
CN107078923B (zh) 使用物理位置修改分布式虚拟网元的行为的设备和方法
US20100287262A1 (en) Method and system for guaranteed end-to-end data flows in a local networking domain
WO2015149253A1 (zh) 数据中心的虚拟网络管理方法及数据中心系统
EP3125504B1 (en) Resource allocation method, packet communication method and device
HK1250189A1 (en) Method for message processing in cloud computing system, host and system
Tholeti Hypervisors, virtualization, and networking
HK1250189B (zh) 云计算系统中报文处理的方法、主机和系统
BR112018000362B1 (pt) Método de processamento de pacote em sistema de computação em nuvem, hospedeiro e sistema

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180226

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190212

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191016

R150 Certificate of patent or registration of utility model

Ref document number: 6605713

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250