KR20170057770A - Method for controlling transsion of packet in virtual switch - Google Patents

Method for controlling transsion of packet in virtual switch Download PDF

Info

Publication number
KR20170057770A
KR20170057770A KR1020150161344A KR20150161344A KR20170057770A KR 20170057770 A KR20170057770 A KR 20170057770A KR 1020150161344 A KR1020150161344 A KR 1020150161344A KR 20150161344 A KR20150161344 A KR 20150161344A KR 20170057770 A KR20170057770 A KR 20170057770A
Authority
KR
South Korea
Prior art keywords
packet transmission
hardware
virtual switch
switching
network interface
Prior art date
Application number
KR1020150161344A
Other languages
Korean (ko)
Other versions
KR102174979B1 (en
Inventor
이동헌
박민철
Original Assignee
에스케이텔레콤 주식회사
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 에스케이텔레콤 주식회사 filed Critical 에스케이텔레콤 주식회사
Priority to KR1020150161344A priority Critical patent/KR102174979B1/en
Publication of KR20170057770A publication Critical patent/KR20170057770A/en
Application granted granted Critical
Publication of KR102174979B1 publication Critical patent/KR102174979B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9063Intermediate storage in different physical parts of a node or terminal
    • H04L49/9068Intermediate storage in different physical parts of a node or terminal in the network interface card
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/20Traffic policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • 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)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The present invention relates to a method for controlling packet transmission performed by a virtual switch. The method comprises: a step of receiving, from a network interface card, hardware switching port information which supports packet transmission between virtual machines; a step of transmitting, to a software defined networking (SDN) controller, the received hardware switching port information and software switching port information for the packet transmission between the virtual machines; a step of receiving a packet transmission rule from the SDN controller; and a step of transmitting the received packet transmission rule to the network interface card. The packet transmission rule can determine hardware switching based on traffic priority information, or hardware switching through the hardware switching port for a specific flow according to a policy on distribution of software switching. Therefore, an SDN controller outside a server can control switching of a virtual switch and a hardware off-load function by the network interface card, and a hardware off-load function can be dynamically changed or managed by the outside of the server.

Description

가상 스위치의 패킷 전송 제어 방법{METHOD FOR CONTROLLING TRANSSION OF PACKET IN VIRTUAL SWITCH}TECHNICAL FIELD [0001] The present invention relates to a packet transfer control method for a virtual switch,

본 발명은 가상 스위치의 패킷 전송 제어 방법에 관한 것으로, 더욱 상세하게는 가상머신들 사이의 통신을 지원하는 가상 스위치에서 수행하는 패킷 전송 제어 방법에 관한 것이다.The present invention relates to a packet transmission control method for a virtual switch, and more particularly, to a packet transmission control method performed by a virtual switch supporting communication between virtual machines.

주지하는 바와 같이, 가상 스위치는 하나의 물리 서버 내부에 존재하는 여러 가상머신들을 연결하고, 가상머신과 네트워크 인터페이스 카드를 연결하는 기능을 수행한다.As is known, a virtual switch connects a plurality of virtual machines existing in one physical server, and connects a virtual machine and a network interface card.

그런데, 이러한 가상 스위치는 소트프웨어로 구동되기 때문에 하드웨어 스위치에 비하여 성능 열화가 존재한다. 특히 가상머신들 사이에 전송되는 트래픽이 증가하고, 작은 크기의 패킷이 자주 전송될 때에 스루풋(throughput) 성능 열화가 심각하다. 아울러, 패킷 처리 및 전송을 위해 CPU 자원을 점유하게 되는데 이는 어플리케이션의 처리에 사용되어야 할 CPU 자원을 낭비하는 단점이 있다.However, since such a virtual switch is driven by software, there is performance deterioration as compared with a hardware switch. Particularly, traffic to be transmitted between virtual machines increases, and deterioration of throughput performance is serious when small size packets are frequently transmitted. In addition, CPU resources are occupied for packet processing and transmission. This has the disadvantage of wasting CPU resources to be used for processing the application.

종래에는 이러한 가상 스위치의 단점을 보완하기 위하여 하드웨어 VEB(Virtual Ethernet Bridge)라는 기술을 사용하였다. 하드웨어 VEB는 가상 스위치의 스위칭 기능을 물리 네트워크 인터페이스 카드에 오프로드(offload)하는 기술이다. SR-IOV(Single Root I/O Virtualization) 기술을 이용하여 가상머신과 네트워크 인터페이스 카드가 직접 패킷을 전송할 수 있도록 연결하면 하드웨어 VEB 기술을 통해 네트워크 인터페이스 카드에서 레이어2(L2) 스위칭을 지원하여 가상머신들 사이에 패킷을 전송할 수 있도록 한다.In order to overcome the drawbacks of such a virtual switch, a hardware VEB (Virtual Ethernet Bridge) technology has been used. Hardware VEB is a technology that offloads the switching function of a virtual switch to a physical network interface card. Using Virtual Role I / O Virtualization (SR-IOV) technology, virtual machines and network interface cards can be directly connected to transmit packets, enabling Layer 2 (L2) switching on the network interface card via hardware VEB technology, Lt; RTI ID = 0.0 > a < / RTI >

그러나, 이러한 종래 기술은 네트워크 인터페이스 카드에 의한 하드웨어 오프로드 기능을 서버 외부에서 동적으로 변경하거나 관리할 수 없고, 하드웨어 VEB를 가상 스위치와 동시에 사용할 수 없다. 또한, 하드웨어 VEB를 통해 스위칭할 수 있는 용량이 네트워크 인터페이스 카드의 테이블 크기와 VF(Virtual Function)의 개수에 따라 제한적인 문제점이 있었다.However, this conventional technology can not dynamically change or manage the hardware offload function by the network interface card outside the server, and can not use the hardware VEB at the same time with the virtual switch. In addition, there is a problem that the capacity that can be switched through the hardware VEB is limited depending on the table size of the network interface card and the number of virtual functions (VF).

대한민국 공개특허공보 제10-2013-0039626호, 공개일자 2013년 04월 22일.Korean Patent Publication No. 10-2013-0039626, published on April 22, 2013.

본 발명은 전술한 바와 같은 종래 기술의 문제점을 해결하기 위해 제안한 것으로서, 가상 스위치의 스위칭과 네트워크 인터페이스 카드에 의한 하드웨어 오프로드 기능을 서버 외부의 SDN(Software-Defined Networking) 컨트롤러가 제어할 수 있도록 가상 스위치에서 수행하는 패킷 전송 제어 방법을 제공한다.DISCLOSURE Technical Problem The present invention has been proposed in order to solve the problems of the related art as described above, and it is an object of the present invention to provide a system and method for switching a virtual switch and a hardware offload function by a network interface card, And a packet transmission control method performed by the switch.

본 발명의 해결하고자 하는 과제는 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 해결하고자 하는 과제는 아래의 기재로부터 본 발명이 속하는 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to those mentioned above, and another problem to be solved can be clearly understood by those skilled in the art from the following description.

본 발명의 일 관점에 따른 가상 스위치에서 수행하는 패킷 전송 제어 방법은, 네트워크 인터페이스 카드로부터 가상머신들 사이의 패킷 전송을 지원하는 하드웨어 스위칭 포트 정보를 수신하는 단계와, 상기 수신된 하드웨어 스위칭 포트의 정보와 상기 가상머신들 사이의 패킷 전송을 위한 소프트웨어 스위칭 포트 정보를 SDN 컨트롤러로 전송하는 단계와, 패킷 전송 규칙을 상기 SDN 컨트롤러로부터 수신하는 단계와, 상기 수신된 패킷 전송 규칙을 상기 네트워크 인터페이스 카드로 전송하는 단계를 포함하며, 상기 패킷 전송 규칙은, 트래픽 우선순위 정보에 기초한 하드웨어 스위칭과 소프트웨어 스위칭의 분배 정책에 따라 특정 플로우에 대해 상기 하드웨어 스위칭 포트를 통한 하드웨어 스위칭을 결정할 수 있는 것일 수 있다.According to an aspect of the present invention, there is provided a packet transfer control method performed by a virtual switch, the method comprising: receiving hardware switching port information for supporting packet transmission between virtual machines from a network interface card; And transmitting software switching port information for packet transmission between the virtual machines to an SDN controller, receiving a packet transmission rule from the SDN controller, transmitting the received packet transmission rule to the network interface card Wherein the packet forwarding rule can determine hardware switching over the hardware switching port for a particular flow according to hardware switching based on traffic priority information and a distribution policy of software switching.

본 발명의 실시예에 따르면, 가상 스위치의 스위칭과 네트워크 인터페이스 카드에 의한 하드웨어 오프로드 기능을 서버 외부의 SDN 컨트롤러가 제어할 수 있으며, 하드웨어 오프로드 기능을 트래픽에 따라 서버 외부에서 동적으로 변경하거나 관리할 수 있다. 그러므로, 우선순위가 높은 트래픽의 패킷을 하드웨어 스위치로 동적 할당하여 패킷 전송 속도를 가속화할 수 있다. 뿐만 아니라, 소프트웨어 스위치가 CPU를 사용하여 처리해야 할 스위칭을 하드웨어 스위치가 대신해 주기 때문에, 가상머신에서 동작하는 어플리케이션에 더 많은 CPU 자원을 할당할 수 있다.According to the embodiment of the present invention, the switching of the virtual switch and the hardware offload function by the network interface card can be controlled by the SDN controller outside the server, and the hardware offload function can be dynamically changed can do. Therefore, packets of high priority traffic can be dynamically allocated to hardware switches to accelerate packet transmission speed. In addition, because the hardware switch takes care of the switching that the software switch needs to process using the CPU, more CPU resources can be allocated to applications running in the virtual machine.

도 1은 본 발명의 실시예에 따른 패킷 전송 제어 방법을 수행하는 가상 스위치가 포함된 컴퓨트 노드와 SDN 컨트롤러의 시스템 구성도이다.
도 2는 본 발명의 실시예에 따라 가상 스위치에서 수행하는 패킷 전송 제어 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 실시예에 따라 네트워크 인터페이스 카드에서 수행하는 패킷 전송 과정을 설명하기 위한 흐름도이다.
1 is a system configuration diagram of a compute node and a SDN controller including a virtual switch for performing a packet transmission control method according to an embodiment of the present invention.
2 is a flowchart illustrating a packet transmission control method performed by a virtual switch according to an embodiment of the present invention.
3 is a flowchart illustrating a packet transmission process performed by a network interface card according to an embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. To fully disclose the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims.

본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. The following terms are defined in consideration of the functions in the embodiments of the present invention, which may vary depending on the intention of the user, the intention or the custom of the operator. Therefore, the definition should be based on the contents throughout this specification.

이하, 첨부된 도면들을 참조하여 본 발명의 실시예들에 대해 살펴보기로 한다.Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 패킷 전송 제어 방법을 수행하는 가상 스위치가 포함된 컴퓨트 노드와 SDN 컨트롤러의 시스템 구성도이다.1 is a system configuration diagram of a compute node and a SDN controller including a virtual switch for performing a packet transmission control method according to an embodiment of the present invention.

이에 나타낸 바와 같이, 컴퓨트 노드(100)는 게스트 OS(110), 호스트 OS(120), 네트워크 인터페이스 카드(130)를 포함한다.As shown, the compute node 100 includes a guest OS 110, a host OS 120, and a network interface card 130.

게스트 OS(110)은 복수의 가상머신(111, 112, 113, 114)을 포함한다. 도 1에는 총 4개의 가상머신을 도시하였으나 이러한 가상머신의 개수는 실시예에 불과하며, 서버 성능과 네트워크 인터페이스 카드가 제공하는 용량 내에서 제한이 없다.The guest OS 110 includes a plurality of virtual machines 111, 112, 113, Although a total of four virtual machines are shown in FIG. 1, the number of virtual machines is only an example, and there is no limitation within the capacity provided by the server performance and the network interface card.

호스트 OS(120)는 가상 스위치(121)를 포함하며, 가상 스위치(121)는 제 2 오프로드 드라이버(121a)를 포함한다.The host OS 120 includes a virtual switch 121 and the virtual switch 121 includes a second offload driver 121a.

네트워크 인터페이스 카드(130)는 하드웨어 오프로드 모듈(131)을 포함하며, 하드웨어 오프로드 모듈(131)은 가상 이더넷 브리지(131a)를 포함한다.The network interface card 130 includes a hardware offload module 131 and the hardware offload module 131 includes a virtual Ethernet bridge 131a.

SDN 컨트롤러(200)는 트래픽 분류기(210), 하드웨어 오프로드 관리기(220), 제 1 오프로드 드라이버(230)를 포함한다.The SDN controller 200 includes a traffic classifier 210, a hardware offload manager 220, and a first offload driver 230.

SDN 컨트롤러(200)와 가상 스위치(121) 사이의 인터페이스(10) 및 가상 스위치(121)와 네트워크 인터페이스 카드(130) 사이의 인터페이스(20)를 위하여 다수의 API가 정의된다.A plurality of APIs are defined for the interface 10 between the SDN controller 200 and the virtual switch 121 and the interface 20 between the virtual switch 121 and the network interface card 130.

이와 같이 구성된 네트워크에서 SDN 컨트롤러(200)는 컴퓨트 노드(100)에 포함된 가상머신들(111, 112, 113, 114) 사이를 가상 스위치(121)가 소프트웨어 스위칭(30)을 통해 연결할 것인지 가상 이더넷 브리지(131a)가 하드웨어 스위칭(40)을 통해 연결할 것인지를 결정할 때에 이용하는 패킷 전송 규칙을 제공한다.In the network thus configured, the SDN controller 200 determines whether the virtual switch 121 connects between the virtual machines 111, 112, 113, and 114 included in the compute node 100 through the software switching 30, And provides a packet transmission rule used when the Ethernet bridge 131a determines whether to connect through the hardware switching 40. [

컴퓨터 노드(100)의 가상 스위치(121)는 가상머신들(111, 112, 113, 114) 사이의 연결을 소프트웨어 스위칭(30)을 통해 연결하며, SDN 컨트롤러(200)로부터 제공받은 패킷 전송 규칙을 네트워크 인터페이스 카드(130)에게 전달한다.The virtual switch 121 of the computer node 100 connects the connection between the virtual machines 111, 112, 113 and 114 via the software switching 30 and transmits the packet transmission rule provided from the SDN controller 200 To the network interface card (130).

컴퓨터 노드(100)의 가상 이더넷 브리지(131a)는 가상머신들(111, 112, 113, 114) 사이의 연결을 하드웨어 스위칭(40)을 통해 연결한다. 즉 가상 스위치(121)의 스위칭 연결 기능을 오프로드한다.The virtual Ethernet bridge 131a of the computer node 100 connects the connection between the virtual machines 111, 112, 113 and 114 via the hardware switching 40. [ That is, the switching connection function of the virtual switch 121 is offloaded.

SDN 컨트롤러(200)의 트래픽 분류기(210)에는 가입자들에 대한 우선순위 정보와 가입자별로 정의된 어플리케이션 우선순위 정보 및 플로우 특성에 따라 정의된 우선순위 정보에 따라 패킷 전송을 하기 위한 트래픽 우선순위 정보가 저장된다.The traffic classifier 210 of the SDN controller 200 stores traffic priority information for packet transmission according to priority information defined for subscribers, application priority information defined for each subscriber, and flow characteristics .

SDN 컨트롤러(200)의 하드웨어 오프로드 관리기(220)는 컴퓨트 노드(100)에 포함된 하드웨어 오프로드 모듈(131)이 가상 스위치(121)의 일부 기능을 오프로드하도록 제어하며, 이러한 오프로드 기능을 동적으로 변경하여 관리한다. 이를 위해 하드웨어 오프로드 관리기(220)는 제 1 오프로드 드라이버(230) 및 제 2 오프로드 드라이버(121a)를 통해 네트워크 인터페이스 카드(130)에게 패킷 전송 규칙을 제공한다. 또, 하드웨어 오프로드 관리기(220)는 컴퓨트 노드의 CPU 자원을 점유하는 기능에 대한 하드웨어 오프로드 활성화 신호를 제 1 오프로드 드라이버(230) 및 제 2 오프로드 드라이버(121a)를 통해 네트워크 인터페이스 카드(130)에게 제공한다.The hardware offload manager 220 of the SDN controller 200 controls the hardware offload module 131 included in the compute node 100 to offload some functions of the virtual switch 121, And manages them dynamically. To this end, the hardware offload manager 220 provides a packet transmission rule to the network interface card 130 through the first offload driver 230 and the second offload driver 121a. In addition, the hardware offload manager 220 transmits a hardware offload activation signal for the function occupying the CPU resources of the compute node to the network interface card 210 via the first offload driver 230 and the second offload driver 121a. (130).

컴퓨트 노드(100)에 포함된 가상 스위치(121)는 네트워크 인터페이스 카드(130)로부터 가상머신들(111, 112, 113, 114) 사이의 패킷 전송을 지원하는 하드웨어 스위칭 포트의 정보를 수신하며, 가상머신들 사이의 패킷 전송을 위한 소프트웨어 스위칭 포트의 정보와 수신된 하드웨어 스위칭 포트의 정보를 SDN 컨트롤러(200)에게 전달한다.The virtual switch 121 included in the compute node 100 receives information of a hardware switching port that supports packet transmission between the network interface card 130 and the virtual machines 111, 112, 113, and 114, Information of the software switching port for packet transmission between the virtual machines and information of the received hardware switching port to the SDN controller 200.

또, 가상 스위치(121)는 트래픽 우선순위 정보에 기초한 하드웨어 스위칭과 소프트웨어 스위칭의 분배 정책에 따라 특정 플로우에 대해 하드웨어 스위칭 포트를 통한 하드웨어 스위칭을 결정할 수 있는 패킷 전송 규칙을 SDN 컨트롤러(200)로부터 수신하며, 수신된 패킷 전송 규칙을 네트워크 인터페이스 카드(130)에게 전달한다.The virtual switch 121 also receives a packet transmission rule from the SDN controller 200 that can determine hardware switching through a hardware switching port for a specific flow according to hardware switching based on traffic priority information and distribution policy of software switching And transmits the received packet transmission rule to the network interface card 130.

도 2는 본 발명의 실시예에 따라 가상 스위치에서 수행하는 패킷 전송 제어 방법을 설명하기 위한 흐름도이다.2 is a flowchart illustrating a packet transmission control method performed by a virtual switch according to an embodiment of the present invention.

이에 나타낸 바와 같이, 본 방법은 하드웨어 오프로드 모듈에 신규 플로우가 도착된 후에 네트워크 인터페이스 카드로부터 가상머신들 사이의 패킷 전송을 지원하는 하드웨어 스위칭 포트의 정보를 수신하는 단계(303, 305)를 포함한다.As shown, the method includes receiving (303,305) information of a hardware switching port that supports packet transmission between virtual machines from a network interface card after a new flow arrives at a hardware offload module .

이어서, 가상머신들 사이의 패킷 전송을 위한 소프트웨어 스위칭 포트의 정보와 수신된 하드웨어 스위칭 포트의 정보를 SDN 컨트롤러에게 전달하는 단계(307)를 포함한다.Then, the step of transmitting (307) the information of the software switching port for packet transmission between the virtual machines and the information of the received hardware switching port to the SDN controller.

이후, 트래픽 분류기에 의해 트래픽 우선순위 정책이 획득된 상태에서 트래픽 우선순위 정보에 기초한 하드웨어 스위칭과 소프트웨어 스위칭의 분배 정책에 따라 특정 플로우에 대해 하드웨어 스위칭 포트를 통한 하드웨어 스위칭을 결정할 수 있는 패킷 전송 규칙을 SDN 컨트롤러로부터 수신하는 단계(301, 309, 311, 313)를 포함한다.Then, according to the hardware switching based on the traffic priority information and the distribution policy of the software switching in a state where the traffic priority policy is acquired by the traffic classifier, a packet transmission rule that can determine the hardware switching through the hardware switching port (301, 309, 311, 313) from the SDN controller.

이어서, 수신된 패킷 전송 규칙을 네트워크 인터페이스 카드에게 전달하여 패킷 전송 규칙에 따라 하드웨어 스위칭 또는 소프트웨어 스위칭이 이루어지도록 하는 단계(315, 317, 319, 321)를 포함한다.Next, the method includes transmitting the received packet transmission rule to the network interface card so that hardware switching or software switching is performed according to the packet transmission rule (315, 317, 319, 321).

도 3은 본 발명의 실시예에 따라 네트워크 인터페이스 카드에서 수행하는 패킷 전송 과정을 설명하기 위한 흐름도이다.3 is a flowchart illustrating a packet transmission process performed by a network interface card according to an embodiment of the present invention.

이에 나타낸 바와 같이, 도착된 패킷이 기존 패킷 전송 규칙에 포함되지 않은 신규 플로우이면 SDN 컨트롤러와의 협업을 통해 패킷 전송 규칙을 갱신하는 단계(401, 403, 405)를 포함한다.As shown, if the arrived packet is a new flow that is not included in the existing packet transmission rule, it includes steps 401, 403, and 405 for updating the packet transmission rules through cooperation with the SDN controller.

그리고, 도착된 패킷이 기존 패킷 전송 규칙에 포함된 것으로 확인되면 패킷 전송 규칙에 기초하여 하드웨어 스위칭 대상인지를 판정하는 단계(S407, 409)를 포함한다.If it is determined that the received packet is included in the existing packet transmission rule, step (S407, 409) is performed to determine whether the packet is a hardware switching object based on the packet transmission rule.

이어서, 하드웨어 스위칭 대상이면 하드웨어 스위칭 포트를 통해 패킷을 가상머신에게 전송하는 단계(411)를 포함한다.Then, if the object is a hardware switching object, transmitting (411) a packet to the virtual machine through a hardware switching port.

이하, 도 1 내지 도 3을 참조하여 본 발명의 실시예에 따른 패킷 전송 제어 방법을 수행하는 가상 스위치가 포함된 컴퓨트 노드 내의 패킷 전송 과정을 더 자세히 살펴보기로 한다.Hereinafter, a packet transmission process in a compute node including a virtual switch for performing a packet transmission control method according to an embodiment of the present invention will be described in more detail with reference to FIG. 1 to FIG.

먼저, SDN 컨트롤러(200)와 가상 스위치(121) 사이의 인터페이스(10) 및 가상 스위치(121)와 네트워크 인터페이스 카드(130) 사이의 인터페이스(20)를 위하여 기능 활성화 API, 포트 구성 API, 하드웨어 가상 이더넷 브리지 API가 정의된다. 기능 활성화 API는 VXLAN 터널링(tunneling), 세그먼테이션(segmentation), 체크섬(checksum) 검사 등과 같이 컴퓨트 노드(100)의 CPU 자원을 점유하는 기능을 대한 하드웨어 오프로드 활성화 신호를 제어하기 위한 API이다. 포트 구성 API는 네트워크 인터페이스 카드(130)의 VF(Virtual Function) 및 PF(Physical Function)의 연결 구성을 관리하기 위한 API이다. 하드웨어 가상 이더넷 브리지 API는 네트워크 인터페이스 카드(130)의 플로우 테이블에 스위칭을 위해서 패킷 전송 규칙을 반영하기 위한 API이다.First, for the interface 10 between the SDN controller 200 and the virtual switch 121 and the interface 20 between the virtual switch 121 and the network interface card 130, a function activation API, a port configuration API, An Ethernet bridge API is defined. The function activation API is an API for controlling a hardware offload activation signal for occupying the CPU resources of the compute node 100 such as VXLAN tunneling, segmentation, and checksum checking. The port configuration API is an API for managing the connection configuration of VF (Virtual Function) and PF (Physical Function) of the network interface card 130. The hardware virtual Ethernet bridge API is an API for reflecting the packet transmission rule for switching to the flow table of the network interface card 130.

트래픽 분류기(210)에는 가입자(tenant)들에 대한 우선순위 정보와 가입자별로 정의된 어플리케이션 우선순위 정보 및 플로우 특성에 따라 정의된 우선순위 정보에 따라 패킷 전송을 하기 위한 트래픽 우선순위 정보가 저장된다. 가입자들의 우선순위가 차등하여 정의될 수 있으며, 각 가입자별로 어플리케이션 우선순위에 따른 트래픽 우선순위가 정의될 수 있다. 또, 플로우 특성에 따라 우선순위가 정의될 수 있다. 예컨대, 엘리펀트(elephant) 플로우로 인해 마이스(mice) 플로우의 전송 지연이 늘어나기 때문에, 선정된 엘리펀트 플로우에 대해 높은 우선순위를 부여하여 전송 속도를 증가시키기 위해 하드웨어 스위칭이나 소프트웨어 스위칭에 관계없이 전용 스위칭 레인(lane)을 생성해 스케쥴링(scheduling)해 줄 수 있다. 인터넷 트래픽 통계 특성을 살펴보면 일반적으로 적은 수의 엘리펀트 플로우가 전체 트래픽 양의 약80%를 차지하고 많은 수의 마이스 플로우가 나머지 트래픽 양을 차지하는 헤비 테일(heavy-tailed) 분포를 가진다고 알려져 있다. 장시간 지속(long-lived) 플로우를 엘리펀트 플로우라고 할 수 있고, 폭주성(bursty) 플로우 또는 단시간 지속(short-lived) 플로우를 마이스 플로우라고 할 수 있다. 예컨대, 세션 지속시간이 15분 이상이면 엘리펀트 플로우로 분류한다든지, 특정 플로우가 링크 효율(link utilization)의 10%이상의 대역폭(bandwidth)를 차지한다면 엘리펀트 플로우로 분류할 수 있다.The traffic classifier 210 stores traffic priority information for packet transmission according to priority information for tenants, application priority information defined for each subscriber, and priority information defined according to flow characteristics. The priorities of subscribers can be defined differently, and traffic priority according to application priority can be defined for each subscriber. In addition, a priority order can be defined according to the flow characteristics. For example, since the elephant flow increases the transmission delay of the mice flow, a high priority is given to the selected elephant flow to increase the transmission speed. In this case, regardless of hardware switching or software switching, dedicated switching You can create and schedule lanes. Internet traffic statistics show that a small number of elephant flows generally account for about 80% of the total traffic volume and a large number of meal flows have a heavy-tailed distribution that accounts for the remaining traffic volume. A long-lived flow may be referred to as an " eliptant flow ", and a bursty flow or a short-lived flow may be referred to as a " meal flow ". For example, if the session duration is 15 minutes or longer, it can be classified as an element flow, and if the specific flow occupies 10% or more of the bandwidth of the link utilization, it can be classified as an element flow.

이렇게 트래픽 분류기(210)에 의해 시스템의 초기 셋업 시 미리 사용자나 관리자에 의한 우선순위 책정 규칙이 입력 및 획득된다(301).In the initial setup of the system, the traffic classifier 210 inputs and obtains a priority ranking rule by a user or an administrator in advance (301).

그리고, 네트워크 인터페이스 카드(130)에 기존 패킷 전송 규칙에 포함되지 않은 신규 플로우가 도착(303)하면 하드웨어 오프로드 모듈(131)은 가상 이더넷 브리지(131a)의 하드웨어 스위칭 포트의 정보를 가상 스위치(121)에게 제공한다(305).When a new flow not included in the existing packet transmission rule arrives at the network interface card 130, the hardware offload module 131 transmits the information of the hardware switching port of the virtual Ethernet bridge 131a to the virtual switch 121 (305).

이어서, 가상 스위치(121)는 제 2 오프로드 드라이버(121a) 및 제 1 오프로드 드라이버(230)를 통해 하드웨어 오프로드 관리기(220)에게 가상 이더넷 브리지(131a)의 하드웨어 스위칭 포트의 정보를 전달한다. 여기서, 가상 스위치(121)는 가상머신들(111, 112, 113, 114) 사이의 패킷 전송을 위한 소프트웨어 스위칭 포트의 정보를 하드웨어 오프로드 관리기(220)에게 함께 전달한다(307).Subsequently, the virtual switch 121 transmits the information of the hardware switching port of the virtual Ethernet bridge 131a to the hardware offload manager 220 through the second offload driver 121a and the first offload driver 230 . Here, the virtual switch 121 conveys the information of the software switching port for packet transmission between the virtual machines 111, 112, 113, and 114 to the hardware offload manager 220 together (307).

그러면, 하드웨어 오프로드 관리기(220)는 트래픽 분류기(210)로부터 트래픽 우선순위 정보를 제공받고(309), 하드웨어 스위칭 포트 정보와 트래픽 우선순위 정보를 바탕으로 하여 스위칭 분배 정책에 따라 특정 플로우에 대해 하드웨어 스위칭 포트를 통한 하드웨어 스위칭을 결정할 수 있는 패킷 전송 규칙을 생성한다(311).Then, the hardware offload manager 220 receives the traffic priority information from the traffic classifier 210 (309), and based on the hardware switching port information and the traffic priority information, (311) a packet transmission rule that can determine hardware switching through a switching port.

이렇게 생성된 패킷 전송 규칙은 제 1 오프로드 드라이버(230) 및 제 2 오프로드 드라이버(121a)를 통해 가상 스위치(121)에게 전달되며(313), 가상 스위치(1210는 패킷 전송 규칙을 네트워크 인터페이스 카드(130)의 하드웨어 오프로드 모듈(131)에게 전달한다(315).The generated packet transmission rule is transmitted to the virtual switch 121 through the first offload driver 230 and the second offload driver 121a 313 and the virtual switch 1210 transmits the packet transmission rule to the network interface card To the hardware offload module 131 of the controller 130 (315).

여기서, 하드웨어 오프로드 모듈(131)은 기존 패킷 전송 규칙을 가상 스위치(121)로부터 전달받은 패킷 전송 규칙으로 갱신하며(317), 갱신된 패킷 전송 규칙에 따라 하드웨어 스위칭을 하여 가상머신들(111, 112, 113, 114) 사이에 패킷을 전송한다(319).Here, the hardware offload module 131 updates the existing packet transmission rule to the packet transmission rule received from the virtual switch 121 (317), performs hardware switching according to the updated packet transmission rule, 112, 113, and 114 (319).

아울러, 하드웨어 오프로드 모듈(131)은 단계 317에서 갱신된 패킷 전송 규칙에 따라 패킷 플로우가 하드웨어 스위칭 대상이 아닐 경우에는 가상 스위치(121)에 의한 소프트웨어 스위칭을 통해 가상머신들(111, 112, 113, 114) 사이에 패킷이 전송된다(321).If the packet flow is not a hardware switching object according to the packet transmission rule updated in step 317, the hardware offload module 131 may transmit the virtual machines 111, 112, 113 , 114 (321).

또한, SDN 컨트롤러(200)의 하드웨어 오프로드 관리기(220)는 제 1 오프로드 드라이버(230) 및 제 2 오프로드 드라이버(121a)를 통해 가상 스위치(121)에게 VXLAN 터널링, 세그먼테이션, 체크섬 검사 등과 같이 컴퓨트 노드(100)의 CPU 자원을 점유하는 기능을 대한 하드웨어 오프로드 활성화 신호를 전송할 수 있으며, 이는 가상 스위치(121)에 의해 네트워크 인터페이스 카드(130) 내의 하드웨어 오프로드 모듈(131)에게 전달된다. 그러면, 이더넷 패킷의 앞에 헤더를 추가로 붙여서 VXLAN 패킷을 만드는 터널링 기능, 큰 사이즈의 패킷을 물리적으로 전송할 때에 작은 사이즈로 잘라주는 세그먼테이션 기능, VXLAN 패킷에 대한 체크섬 검사 기능 등을 하드웨어 오프로드 모듈(131)에서 담당하여 수행 및 처리한다.In addition, the hardware offload manager 220 of the SDN controller 200 transmits the VXLAN tunneling, segmentation, checksum check, etc. to the virtual switch 121 through the first offload driver 230 and the second offload driver 121a It can transmit a hardware offload enable signal for a function that occupies the CPU resources of the compute node 100 and is transmitted to the hardware offload module 131 in the network interface card 130 by the virtual switch 121 . Then, a tunneling function for forming a VXLAN packet by attaching a header before an Ethernet packet, a segmentation function for cutting a small size packet when a large packet is physically transmitted, and a checksum check function for a VXLAN packet are provided in a hardware offload module 131 ), And perform and process it.

지금까지 설명한 바와 같이, 본 발명의 실시예에 따르면 가상 스위치의 스위칭과 네트워크 인터페이스 카드에 의한 하드웨어 오프로드 기능을 서버 외부의 SDN 컨트롤러가 제어할 수 있으며, 하드웨어 오프로드 기능을 서버 외부에서 동적으로 변경하거나 관리할 수 있다. 그러므로, 우선순위가 높은 트래픽의 패킷을 하드웨어 스위치로 동적 할당하여 전송 속도를 가속화할 수 있다. 이로써, 소프트웨어 스위치가 CPU를 사용하여 처리해야 할 스위칭을 하드웨어 스위치가 대신해 주기 때문에, 가상머신에서 동작하는 어플리케이션에 더 많은 CPU 자원을 할당할 수 있다.As described above, according to the embodiment of the present invention, the SDN controller outside the server can control the switching of the virtual switch and the hardware offload function by the network interface card, and the hardware offload function can be dynamically changed Or management. Therefore, the packet of high priority traffic can be dynamically allocated to the hardware switch to accelerate the transmission speed. This allows the hardware switch to do the switching that the software switch needs to process using the CPU, so that more CPU resources can be allocated to applications running in the virtual machine.

본 명세서에 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행하는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다. Each block of the block diagrams attached hereto and combinations of steps of the flowchart diagrams may be performed by computer program instructions. These computer program instructions may be embedded in a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus so that the instructions, which may be executed by a processor of a computer or other programmable data processing apparatus, And means for performing the functions described in each step are created. These computer program instructions may also be stored in a computer usable or computer readable memory capable of directing a computer or other programmable data processing apparatus to implement the functionality in a particular manner so that the computer usable or computer readable memory It is also possible for the instructions stored in the block diagram to produce a manufacturing item containing instruction means for performing the functions described in each block or flowchart of the block diagram. Computer program instructions may also be stored on a computer or other programmable data processing equipment so that a series of operating steps may be performed on a computer or other programmable data processing equipment to create a computer- It is also possible that the instructions that perform the processing equipment provide the steps for executing the functions described in each block of the block diagram and at each step of the flowchart.

또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행하는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행하는 것도 가능하다.Also, each block or each step may represent a module, segment, or portion of code that includes one or more executable instructions for executing the specified logical function (s). It should also be noted that in some alternative embodiments, the functions mentioned in the blocks or steps may occur out of order. For example, two blocks or steps shown in succession may in fact be performed substantially concurrently, or the blocks or steps may sometimes be performed in reverse order according to the corresponding function.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The foregoing description is merely illustrative of the technical idea of the present invention, and various changes and modifications may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.

본 발명의 실시예에 의하면, 가상 스위치의 스위칭과 네트워크 인터페이스 카드에 의한 하드웨어 오프로드 기능을 서버 외부의 SDN 컨트롤러가 제어할 수 있으며, 하드웨어 오프로드 기능을 서버 외부에서 동적으로 변경하거나 관리할 수 있다.According to the embodiment of the present invention, the SDN controller outside the server can control the switching of the virtual switch and the hardware offload function by the network interface card, and the hardware offload function can be dynamically changed or managed outside the server .

이러한 본 발명은 가상 스위치가 물리 서버 내부에 존재하는 여러 가상머신들을 연결함과 아울러 가상머신과 네트워크 인터페이스 카드를 연결하는 컴퓨트 노드를 포함하는 각종 시스템에서 이용할 수 있다.The present invention can be used in various systems including a virtual node connecting a plurality of virtual machines existing in a physical server and connecting a virtual machine and a network interface card.

100 : 컴퓨트 노드 111, 112, 113, 114 : 가상머신
121 : 가상 스위치 130 : 네트워크 인터페이스 카드
131 : 하드웨어 오프로드 모듈 131a : 가상 이더넷 브리지
200 : SDN 컨트롤러 210 : 트래픽 분류기
220 : 하드웨어 오프로드 관리기
100: compute node 111, 112, 113, 114: virtual machine
121: virtual switch 130: network interface card
131: hardware offload module 131a: virtual Ethernet bridge
200: SDN controller 210: traffic classifier
220: Hardware offload manager

Claims (6)

네트워크 인터페이스 카드로부터 가상머신들 사이의 패킷 전송을 지원하는 하드웨어 스위칭 포트 정보를 수신하는 단계와,
상기 수신된 하드웨어 스위칭 포트의 정보와 상기 가상머신들 사이의 패킷 전송을 위한 소프트웨어 스위칭 포트 정보를 SDN(Software-Defined Networking) 컨트롤러로 전송하는 단계와,
패킷 전송 규칙을 상기 SDN 컨트롤러로부터 수신하는 단계와,
상기 수신된 패킷 전송 규칙을 상기 네트워크 인터페이스 카드로 전송하는 단계를 포함하며,
상기 패킷 전송 규칙은, 트래픽 우선순위 정보에 기초한 하드웨어 스위칭과 소프트웨어 스위칭의 분배 정책에 따라 특정 플로우에 대해 상기 하드웨어 스위칭 포트를 통한 하드웨어 스위칭을 결정할 수 있는 것인
가상 스위치에서 수행하는 패킷 전송 제어 방법.
Receiving hardware switching port information to support packet transmission between virtual machines from a network interface card;
Sending information of the received hardware switching port and software switching port information for packet transmission between the virtual machines to a Software-Defined Networking (SDN) controller;
Receiving a packet transmission rule from the SDN controller;
And transmitting the received packet transmission rule to the network interface card,
Wherein the packet transfer rules are capable of determining hardware switching over the hardware switching port for a particular flow according to hardware switching based on traffic priority information and a distribution policy of software switching
A method for controlling packet transmission performed by a virtual switch.
제 1 항에 있어서,
상기 트래픽 우선순위 정보는, 가입자들에 대한 우선순위 정보 또는 가입자별로 정의된 어플리케이션 우선순위 정보를 포함하는
가상 스위치에서 수행하는 패킷 전송 제어 방법.
The method according to claim 1,
The traffic priority information includes priority information for subscribers or application priority information defined for each subscriber
A method for controlling packet transmission performed by a virtual switch.
제 1 항에 있어서,
상기 트래픽 우선순위 정보는, 플로우 특성에 따라 정의된 우선순위 정보를 포함하는
가상 스위치에서 수행하는 패킷 전송 제어 방법.
The method according to claim 1,
The traffic priority information includes priority information defined according to flow characteristics
A method for controlling packet transmission performed by a virtual switch.
제 3 항에 있어서,
상기 플로우 특성에 따라 선정된 특정 플로우는 상기 하드웨어 스위칭과 상기 소프트웨어 스위칭 중에서 어느 하나의 전용 스위칭 레인으로 스위칭하는
가상 스위치에서 수행하는 패킷 전송 제어 방법.
The method of claim 3,
Wherein the specific flow selected in accordance with the flow characteristic is switched to any one of the hardware switching and the software switching
A method for controlling packet transmission performed by a virtual switch.
제 1 항에 있어서,
상기 가상머신 및 상기 가상 스위치를 포함하는 컴퓨트 노드의 CPU 자원을 점유하는 기능에 대한 하드웨어 오프로드 활성화 신호를 상기 SDN 컨트롤러로부터 수신하여 상기 네트워크 인터페이스 카드에게 전달하는 단계를 더 포함하는
가상 스위치에서 수행하는 패킷 전송 제어 방법.
The method according to claim 1,
Further comprising receiving from the SDN controller a hardware offload enable signal for a function that occupies CPU resources of the compute node including the virtual machine and the virtual switch and forwarding the hardware offload enable signal to the network interface card
A method for controlling packet transmission performed by a virtual switch.
제 1 항 내지 제 5 항 중 어느 한 항의 패킷 전송 제어 방법을 프로세서가 수행하도록 하기 위하여
컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
In order for the processor to perform the packet transmission control method of any one of claims 1 to 5
A computer program stored on a computer readable recording medium.
KR1020150161344A 2015-11-17 2015-11-17 Method for controlling transsion of packet in virtual switch KR102174979B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150161344A KR102174979B1 (en) 2015-11-17 2015-11-17 Method for controlling transsion of packet in virtual switch

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150161344A KR102174979B1 (en) 2015-11-17 2015-11-17 Method for controlling transsion of packet in virtual switch

Publications (2)

Publication Number Publication Date
KR20170057770A true KR20170057770A (en) 2017-05-25
KR102174979B1 KR102174979B1 (en) 2020-11-05

Family

ID=59051113

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150161344A KR102174979B1 (en) 2015-11-17 2015-11-17 Method for controlling transsion of packet in virtual switch

Country Status (1)

Country Link
KR (1) KR102174979B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021048513A (en) * 2019-09-19 2021-03-25 富士通株式会社 Information processing device, information processing method, and virtual machine connection management program
CN113965521A (en) * 2021-10-19 2022-01-21 京东科技信息技术有限公司 Data packet transmission method, server and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110110843A (en) * 2009-02-27 2011-10-07 브로드콤 코포레이션 Method and system for virtual machine networking
KR20130039626A (en) 2011-10-12 2013-04-22 주식회사센트루소프트웨어 Method of transmitting data between virtual machines using virtual machine communication interface, and recording medium thereof
KR20150000420A (en) * 2013-06-24 2015-01-02 한국전자통신연구원 Method and apparatus for network functions virtualization
KR20150071533A (en) * 2013-12-18 2015-06-26 삼성전자주식회사 Method and Apparatus for Controlling Virtual Switching

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110110843A (en) * 2009-02-27 2011-10-07 브로드콤 코포레이션 Method and system for virtual machine networking
KR20130039626A (en) 2011-10-12 2013-04-22 주식회사센트루소프트웨어 Method of transmitting data between virtual machines using virtual machine communication interface, and recording medium thereof
KR20150000420A (en) * 2013-06-24 2015-01-02 한국전자통신연구원 Method and apparatus for network functions virtualization
KR20150071533A (en) * 2013-12-18 2015-06-26 삼성전자주식회사 Method and Apparatus for Controlling Virtual Switching

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021048513A (en) * 2019-09-19 2021-03-25 富士通株式会社 Information processing device, information processing method, and virtual machine connection management program
CN113965521A (en) * 2021-10-19 2022-01-21 京东科技信息技术有限公司 Data packet transmission method, server and storage medium
CN113965521B (en) * 2021-10-19 2024-03-01 京东科技信息技术有限公司 Data packet transmission method, server and storage medium

Also Published As

Publication number Publication date
KR102174979B1 (en) 2020-11-05

Similar Documents

Publication Publication Date Title
US10581729B2 (en) Network interface card, computing device, and data packet processing method
US10452422B2 (en) Method and apparatus for deploying virtual machine instance, and device
US11005747B2 (en) Method for implementing network virtualization and related apparatus and communications system
CN112217746B (en) Message processing method, host and system in cloud computing system
US10623310B2 (en) Network interface card, computing device, and data packet processing method
CN107278362B (en) The method of Message processing, host and system in cloud computing system
US8855116B2 (en) Virtual local area network state processing in a layer 2 ethernet switch
CN104320350B (en) Method and system for providing fiduciary flow control
US10587494B2 (en) Network control method and apparatus
EP3182648A1 (en) Method, apparatus and system for implementing software-defined networking (sdn)
US20100287262A1 (en) Method and system for guaranteed end-to-end data flows in a local networking domain
US20170099215A1 (en) Link aggregation group (lag) support on a software-defined network (sdn)
WO2015058698A1 (en) Data forwarding
CN105745883B (en) Forwarding table synchronous method, the network equipment and system
US10050906B2 (en) Virtual node having separate control and data planes
EP3522463A1 (en) Method and software-defined networking (sdn) controller for providing multicast service
CN111371694B (en) Shunting method, device and system, processing equipment and storage medium
CN112753198B (en) Load balancing and message reordering method and device in network
US20180246772A1 (en) Method and apparatus for allocating a virtual resource in network functions virtualization network
EP3672171A1 (en) Message transmission method and device
KR20170057770A (en) Method for controlling transsion of packet in virtual switch
US20190036827A1 (en) Traffic control method and device in software defined network
CN108092787B (en) Cache adjusting method, network controller and system
CN110086676B (en) Configuration method of distributed router and related equipment
KR101576518B1 (en) Method and apparatus for expansion and utilization of openflow protocol

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right