KR102112270B1 - 다중계층 네트워크 환경에서 패킷을 처리하는 방법 및 그 장치 - Google Patents

다중계층 네트워크 환경에서 패킷을 처리하는 방법 및 그 장치 Download PDF

Info

Publication number
KR102112270B1
KR102112270B1 KR1020190010661A KR20190010661A KR102112270B1 KR 102112270 B1 KR102112270 B1 KR 102112270B1 KR 1020190010661 A KR1020190010661 A KR 1020190010661A KR 20190010661 A KR20190010661 A KR 20190010661A KR 102112270 B1 KR102112270 B1 KR 102112270B1
Authority
KR
South Korea
Prior art keywords
packet
network
channel
sub
processing module
Prior art date
Application number
KR1020190010661A
Other languages
English (en)
Other versions
KR20200044642A (ko
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 US16/372,821 priority Critical patent/US10992601B2/en
Priority to CN201910264936.8A priority patent/CN111083064A/zh
Publication of KR20200044642A publication Critical patent/KR20200044642A/ko
Application granted granted Critical
Publication of KR102112270B1 publication Critical patent/KR102112270B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • 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
    • H04L47/2483Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/60Queue scheduling implementing hierarchical scheduling
    • 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

다중계층 네트워크 환경에서 패킷을 처리하는 방법 및 그 장치가 개시된다. 패킷처리장치는 제1 네트워크로부터 적어도 하나 이상의 제2 네트워크의 계층정보를 포함하는 패킷을 수신하면, 패킷에 포함된 제2 네트워크의 계층정보를 기초로 상기 패킷에 대한 딥플로우를 식별한다. 패킷처리장치는 제2 네트워크에 위치한 가상화 프로세싱 모듈에게 할당된 채널을 분할한 적어도 하나 이상의 서브 채널에 적어도 하나 이상의 딥플로우를 맵핑하고, 패킷 또는 상기 패킷을 가공하여 생성한 패킷을 서브 채널을 통해 가상화 프로세싱 모듈로 전송한다.

Description

다중계층 네트워크 환경에서 패킷을 처리하는 방법 및 그 장치{Packet processing method and apparatus in multi-layered network environment}
본 발명은 다중계층 네트워크 환경에서 패킷을 처리하는 방법 및 그 장치에 관한 것으로, 보다 상세하게는 두 네트워크 사이에서 패킷 플로우를 식별하고 처리하는 방법 및 그 장치에 관한 것이다.
최근 인터넷을 통하는 통신량이 급증하고, 이에 따라 서버의 대용량화, 고속화가 빠르게 진행되고 있다. 한편, 서버의 대용량화에 따르는 물리적 부피 증가를 해소하고 비용 절감 등을 꾀하기 위하여 서버의 가상화가 가속되고 있다. 서버의 대용량화, 고속화, 가상화에 따라 물리적 네트워크로부터 수신되는 대용량 데이터에 대한 병렬처리의 고효율화가 필수적으로 요구되고 있으며, 가상화 서버에서 가상스위치 기능이 수행될 때 서버의 부하 증가에 기인하는 성능 저하가 야기됨에 따라 가상스위치 기능에 따르는 서버의 부하를 물리적 네트워크 인터페이스 장치로 이전하는 기술 개념 실현이 요구되고 있다.
종래의 가상화 환경을 지원하는 NIC의 경우, 물리적 네트워크 인터페이스 장치에서 가상화 환경을 지원하는 방법으로 가상머신(virtual machine) 단위로 큐를 생성 관리하여 네트워크 인터페이스 장치와 서버의 가상스위치 사이의 병목 현상을 감소시키는 시도가 있다. 그러나 종래의 경우에는 수신된 데이터 패킷의 병렬처리를 위한 프로세서 할당 및 큐의 재분배 시 가상머신 단위로만 이루어진다. 즉 가상화 환경의 물리적 계층만이 고려된 프로세서 할당이 이루어진다. 따라서 가상화 네트워크 내의 병렬처리에서 프로세싱 효율을 높이는데 아주 중요한 요소 중 하나인 프로세서 친화도가 고려되기 어렵고, 프로세서의 사용 부하만을 고려하여 프로세서 할당 및 큐의 재분배가 일어나기 쉽다. 이는 병렬 처리의 효율을 감소시키는 요인으로 작용될 수 있다.
본 발명이 이루고자 하는 기술적 과제는, 다중계층 네트워크 환경에서 패킷을 딥플로우 단위로 식별하고 처리할 수 있는 방법 및 그 장치를 제공하는 데 있다.
상기의 기술적 과제를 달성하기 위한, 본 발명의 실시 예에 따른 패킷 처리 방법의 일 예는, 다중계층 네트워크에서의 패킷 처리 방법에 있어서, 제1 네트워크로부터 적어도 하나 이상의 제2 네트워크의 계층정보를 포함하는 패킷을 수신하는 단계; 상기 패킷에 포함된 제2 네트워크의 계층정보를 기초로 상기 패킷에 대한 딥플로우를 식별하는 단계; 상기 제2 네트워크에 위치한 가상화 프로세싱 모듈 기반으로 할당된 채널을 분할한 적어도 하나 이상의 서브 채널에 적어도 하나 이상의 딥플로우를 맵핑하는 단계; 및 상기 패킷 또는 상기 패킷을 가공하여 생성한 패킷을 상기 서브 채널을 통해 상기 가상화 프로세싱 모듈로 전송하는 단계;를 포함한다.
상기의 기술적 과제를 달성하기 위한, 본 발명의 실시 예에 따른 패킷 처리 장치의 일 예는, 제1 네트워크로부터 수신한 패킷에 포함된 제2 네트워크의 계층정보를 기초로 상기 패킷에 대한 딥플로우를 식별하는 패킷식별부; 상기 제2 네트워크에 위치한 가상화 프로세싱 모듈 기반으로 할당된 채널을 분할한 적어도 하나 이상의 서브 채널에 적어도 하나 이상의 딥플로우를 맵핑하는 스케줄러; 및 상기 패킷 또는 상기 패킷을 가공하여 생성한 패킷을 상기 서브 채널을 통해 상기 가상화 프로세싱 모듈로 전송하는 패킷분배부;를 포함한다.
본 발명의 실시 예에 따르면, 다중계층 네트워크 환경의 두 네트워크 사이에서 패킷을 플로우 단위로 식별하고 처리함으로써 프로세서 친화도를 높여 병렬 프로세싱 효율을 높일 수 있다. 또한, 가상스위치의 부하를 분산시켜 가상화 서버의 네트워크 프로세싱 효율을 높일 수 있다. 또한, 딥플로우 단위로 큐 및 채널을 할당하여 처리함으로써 가상화 서버의 종단간 QoS가 보장되는 스케일러블한 통신 처리를 구현할 수 있다.
도 1은 본 발명에 따른 패킷 처리 방법이 적용되는 다중계층 네트워크 환경의 일 예를 도시한 도면,
도 2는 본 발명의 실시 예에 따른 패킷처리장치가 구현되는 위치의 일 예를 도시한 도면,
도 3은 본 발명의 실시 예에 따라 물리 네트워크와 가상화 네트워크 사이에 구현된 패킷처리장치의 일 예를 도시한 도면,
도 4는 본 발명의 실시 예에 따른 패킷처리장치의 구성의 일 예를 도시한 도면,
도 5는 본 발명의 실시 예에 따른 패킷저장부의 구성의 일 예를 도시한 도면,
도 6은 본 발명의 실시 예에 따른 채널의 일 예를 도시한 도면,
도 7은 본 발명의 실시 예에 따른 딥플로우와 서브 채널 사이의 맵핑관계의 일 예를 도시한 도면,
도 8은 본 발명의 실시 예에 따른 서브 채널을 통해 가상화 서버 종단까지의 딥플로우 기반 단일 연결관계를 구성한 예를 도시한 도면,
도 9는 본 발명의 실시 예에 따른 서브 채널을 통해 패킷을 분배하는 패킷분배부의 구조의 일 예를 도시한 도면, 그리고,
도 10은 본 발명의 실시 예에 따른 다중계층 네트워크에서 패킷 처리 방법의 일 예를 도시한 흐름도이다.
이하에서, 첨부된 도면들을 참조하여 본 발명의 실시 예에 따른 다중계층 네트워크 환경에서 패킷을 처리하는 방법 및 그 장치에 대해 상세히 설명한다.
도 1은 본 발명에 따른 패킷 처리 방법이 적용되는 다중계층 네트워크 환경의 일 예를 도시한 도면이다.
도 1을 참조하면, 다중계층 네트워크 환경은 적어도 둘 이상의 네트워크(100,110,120)를 포함한다. 제1 네트워크(100)는 복수의 물리적 노드로 구성되고, 제2 내지 제N 네트워크(110,120)는 복수의 논리적 노드로 구성될 수 있다. 예를 들어, 제1 네트워크(100)는 물리적 서버(호스트)로 구성된 물리 네트워크(physical network)이고, 제2 내지 제N 네트워크(110,120)는 물리적 서버 내 가상머신(VM) 또는 컨테이너(container) 등으로 구성된 가상화 네트워크(virtualization network)일 수 있다.
제N 네트워크(120)에 위치한 노드 사이에 전송되는 패킷에는 제1 네트워크(100)부터 제N 네트워크(120)의 계층정보가 순차적으로 인캡슐레이션(encapsulation) 되어 있다. 제1 네트워크(100)의 노드들은 패킷에 포함된 제1 네트워크(100)의 계층 정보를 이용하여 서로 통신을 수행하고, 제2 네트워크(110)의 노드들은 제2 네트워크(110)의 계층정보, 제N 네트워크(120)의 노드들은 제N 네트워크(120)의 계층정보를 이용하여 각 계층 내에서 통신을 수행한다.
각 네트워크 계층마다 각 네트워크의 계층정보를 이용하여 패킷 플로우를 식별할 경우에, 패킷이 각 네트워크 계층별로 서로 다른 플로우로 식별될 수 있다. 본 실시 예는, 일 예로, 패킷이 전송되는 전체 네트워크 계층의 계층정보를 이용하여 하나의 공통된 플로우를 식별할 수 있다. 이 경우에, 제1 네트워크(100)부터 제N 네트워크(120)까지 동일 플로우를 기초로 일관된 프로세서 할당 등을 통해 병렬 프로세싱 효율을 높일 수 있으며, 가상화서버 종단의 플로우에 기초한 기능 구현 및 차별화된 서비스가 가능해 진다.
이하에서 설명의 편의를 위하여, 가상머신 또는 컨테이너 등과 같이 가상화 네트워크를 구성하는 노드를 가상화 프로세싱 모듈(VPM, virtual processing module)이라고 명명하고, 다중계층 네트워크 환경에서 본 실시 예에 따라 식별된 플로우를 딥플로우(deep flow)라고 명명한다.
도 2는 본 발명의 실시 예에 따른 패킷처리장치가 구현되는 위치의 일 예를 도시한 도면이다.
도 2를 참조하면, 패킷처리장치(200)는 다중계층 네트워크 환경에서 두 네트워크(210,220) 사이에 위치할 수 있다. 예를 들어, 패킷처리장치(200)는 물리 네트워크인 제1 네트워크와 가상화 프로세싱 모듈(VPM)로 이루어진 가상화 네트워크인 제2 네트워크 사이에서 패킷을 처리할 수 있다. 또 다른 예로, 패킷처리장치(200)는 도 3과 같이 가상화 네트워크를 포함하는 호스트(320,322)에 연결된 네트워크 인터페이스 카드(NIC, Network Interface Card) 형태로 구현될 수 있다.
또 다른 실시 예로, 패킷처리장치(200)는 도 1의 제2 네트워크와 제3 네트워크 사이와 같이 두 가상화 네트워크(210,220) 사이에 위치할 수 있다. 이 경우에, 패킷처리장치(200)는 가상머신처럼 가상화 모듈로 구현될 수 있다. 예를 들어, 호스트 내에 가상머신으로 구성된 제2 네트워크가 존재하고, 또한 가상머신 내에 또 다른 논리적 노드로 구성되는 제3 가상화 네트워크가 존재하는 경우에, 패킷처리장치(200)는 제2 네트워크와 제3 네트워크 사이에서 패킷을 처리하는 가상화 모듈로 구현될 수 있다.
도 3은 본 발명의 실시 예에 따라 물리 네트워크와 가상화 네트워크 사이에 구현된 패킷처리장치의 일 예를 도시한 도면이다.
도 3을 참조하면, 패킷처리장치(200,202)는 물리 네트워크(310)와 가상화 네트워크가 구현된 호스트(320,322) 사이에 위치한다. 본 실시 예는 설명의 편의를 위하여 호스트(320,322)와 물리 네트워크(310) 사이에 패킷처리장치(200,202)가 존재하는 경우를 도시하고 있으나, 실시 예에 따라 어느 하나의 호스트(320 또는 322)는 패킷처리장치(200,202) 없이 일반적 네트워크 접속장치에 의하여 물리 네트워크(310)에 연결될 수 있다.
패킷처리장치(200,202)는 호스트(320,322)의 연결슬롯(330)에 장착될 수 있는 형태로 구현될 수 있다. 예를 들어, 연결슬롯(330)은 PCIe(Peripheral Component Interconnect Express) 슬롯일 수 있다. 이 외에 종래의 다양한 연결슬롯이 본 실시 예에 적용될 수 있다. 또는 패킷처리장치(200,202)는 호스트(320,322)와 다양한 유무선 형태로 연결될 수 있다.
호스트(320,322)는 적어도 하나 이상의 가상화 프로세싱 모듈(350)을 포함한다. 호스트(320) 내 가상화 프로세싱 모듈들(352,354,356)은 가상화 네트워크를 구성한다. 호스트(320) 내 가상화 네트워크에서 가상화 네트워크를 위한 패킷 플로우 식별 과정을 수행할 경우에 플로우를 식별하는 과정이 물리적 네트워크 가상화 네트워크에서 이중적으로 발생할 뿐만 아니라 동일한 패킷이 물리 네트워크(310)와 가상화 네트워크에서 서로 다른 플로우로 식별될 수도 있다.
따라서, 본 실시 예는 가상화 네트워크 내에서 가상화 네트워크를 위한 패킷의 플로우를 식별하는 것이 아니라, 물리 네트워크(310)와 가상화 네트워크 사이에 위치한 패킷처리장치(200)가 가상화 네트워크로 패킷을 전달하기 전에 미리 가상화 네트워크 종단까지의 딥플로우를 식별한다. 즉, 하나의 가상화 네트워크가 오버레이(overlay)되어 있는 외부 네트워크의 입출력부에서 가상화 네트워크 종단의 플로우를 미리 식별하여 처리하는 엣지(Edge) 기능에 해당한다. 또한, 본 실시 예는 패킷처리장치(200)와 호스트(320) 사이의 채널을 딥플로우 기반의 서브 채널로 구분하여 패킷처리장치(200)에서 딥플로우 단위로 가상화 프로세싱 모듈들(352,354,356)까지 직접 연결되는 딥플로우 단위의 단일 채널 구조를 생성하여 채널에서의 병목 현상을 완화할 수 있다.
도 4는 본 발명의 실시 예에 따른 패킷처리장치의 구성의 일 예를 도시한 도면이다.
도 4를 참조하면, 패킷처리장치(200)는 패킷식별부(400), 패킷저장부(410), 패킷분배부(420) 및 스케줄러(430)를 포함한다. 여기서, 패킷분배부(420)는 일반적 개념의 가상스위치일 수 있다. 패킷처리장치(200)와 호스트(320) 사이에는 적어도 하나 이상의 채널(440)이 존재한다. 예를 들어, 패킷처리장치(200)와 호스트(320)는 PCIe 채널로 연결될 수 있다. 이 외에도 다양한 방법으로 패킷처리장치(200)와 호스트(320) 사이에 채널을 형성할 수 있다. 본 실시 예는 설명의 편의를 위하여 패킷처리장치(200)가 도 3과 같이 물리 네트워크(310)와 가상화 네트워크 사이에 위치하는 경우를 가정하여 설명하나, 이에 반드시 한정되는 것은 아니며 본 실시 예의 구성 등은 도 1 및 도 2에서 살핀 바와 같이 두 가상화 네트워크 사이의 가상화 모듈로 구현될 수 있다.
패킷식별부(400)는 물리 네트워크(310)로부터 패킷을 수신한다. 패킷은 적어도 둘 이상의 네트워크의 계층정보를 포함한다. 본 실시 예와 같이 물리 네트워크와 하나의 가상화 네트워크가 존재하는 경우에, 패킷은 물리 네트워크의 OSI(Open system Intercoonection) 7 계층 정보와 가상화 네트워크의 OSI 7 계층 정보를 포함할 수 있다.
가상화 네트워크의 계층정보는 터널링 기법 등을 통해 패킷에 인캡슐레이션될 수 있다. 이 경우, 패킷식별부(400)는 물리 네트워크(310)로부터 수신한 패킷에 가상화 네트워크 계층정보가 인캡슐레이션되어 있다는 것을 인식한다면 물리 네트워크에서 수신한 패킷에서 가상화 네트워크의 계층정보를 획득할 수 있다. 패킷에 인캡슐레이션된 네트워크 계층정보를 식별하기 위한 과정을 DPI(Deep Packet Inspection)라고 한다.
패킷식별부(400)는 물리 네트워크의 계층정보와 가상화 네트워크의 계층정보를 함께 이용하거나 또는 가상화 네트워크의 계층정보만을 이용하여 패킷의 딥플로우를 식별할 수 있다. 패킷식별부(400)는 가상화 네트워크의 L(Layer)2~L7의 계층정보를 분석하여 패킷의 딥플로우를 파악할 수 있다. 예를 들어, 패킷식별부(400)는 가상화 네트워크의 계층정보를 이용하여 패킷의 목적지 가상화 프로세싱 모듈을 파악하고, 동일 가상화 프로세싱 모듈을 향하는 패킷들을 가상화 네트워크의 L3 이상의 계층정보를 이용하여 파악된 트래픽 속성에 따라 적어도 하나 이상의 플로우로 구분할 수 있다. 네트워크의 계층정보를 이용하여 플로우를 식별하는 다양한 방법이 본 실시 예에 적용될 수 있다.
패킷저장부(410)는 메모리 등으로 구현되며, 적어도 하나 이상의 큐를 포함한다. 일 실시 예로, 패킷저장부(410)는 가상화 프로세싱 모듈별로 할당된 적어도 하나 이상의 큐 그룹을 포함할 수 있다. 또한, 큐 그룹에 속한 적어도 하나 이상의 서브큐는 딥플로우 단위로 구분된다. 또는 패킷저장부(410)는 큐 그룹의 구분 없이 딥를로우 단위로 구분되는 큐를 포함할 수 있다. 큐에 대한 일 예가 도 5에 도시되어 있다.
패킷저장부(410)는 패킷식별부(400)에 의해 식별된 딥플로우 단위로 패킷을 큐에 저장한다. 이때, 패킷저장부(410)는 물리 네트워크(310)로부터 수신한 패킷을 그대로 저장하거나, 디캡슐레이션된 패킷을 저장하거나 또는 가상화 네트워크에 전달하기 위한 다양한 형태로 가공한 패킷을 저장하는 등 실시 예에 따라 저장되는 패킷의 형태는 다양할 수 있다. 다만, 이하에서는 설명의 편의를 위하여 패킷처리장치 내에서 처리되는 '패킷'이라고 함은 이러한 모든 경우를 포함한다고 가정한다.
패킷분배부(420)는 패킷저장부(410)에 저장된 패킷을 채널(440)을 통해 호스트(320)로 전송한다. 이때 패킷분배부(420)는 패킷을 딥플로우와 맵핑된 서브 채널을 통해 호스트(320)로 전송한다. 패킷처리장치(200)와 호스트(320) 사이의 채널의 일 예가 도 6에 도시되어 있고, 서브 채널과 딥플로우 사이의 맵핑관계의 일 예가 도 7에 도시되어 있으며, 딥플로우 기반으로 서브 채널을 통해 패킷을 전송하는 방법의 일 예가 도 8 및 도 9에 도시되어 있다. 패킷분배부의 상세 구성에 대해서는 도 6 이하에서 다시 설명한다.
스케줄러(430)는 가상 프로세싱 모듈별 생성된 적어도 하나 이상의 딥플로우와 큐 사이의 맵핑관계를 생성하고 저장한다. 예를 들어, 패킷식별부(400)가 물리 네트워크(310)로부터 패킷을 수신하고 딥플로우를 파악한 후 스케줄러(430)에게 해당 딥플로우가 저장되어야 할 큐에 대한 정보를 요청한다. 스케줄러(430)는 요청받은 딥플로우와 맵핑된 큐 정보를 패킷식별부(400) 또는 패킷저장부(410)에 제공한다. 만약 맵핑관계가 존재하지 않으면, 스케줄러(430)는 딥플로우를 위한 새로운 맵핑관계를 생성하고 해당 큐 정보를 패킷식별부(400) 또는 패킷저장부(410)에 제공한다. 패킷저장부(410)는 맵핑관계를 기초로 패킷을 해당 큐에 저장한다.
스케줄러(430)는 또한 딥플로우와 서브 채널 사이의 맵핑관계를 파악하고 저장할 수 있다. 패킷분배부(420)는 스케줄러(430)에 저장된 맵핑관계를 이용하여 각 큐에 저장된 패킷을 딥플로우 단위로 서브 채널에 분배한다. 패킷분배부의 패킷분배 방법에 대해서는 도 9에서 다시 살펴본다. 다른 실시 예로, 패킷분배부(420)가 딥플로우와 서브 채널 사이의 맵핑관계를 파악하고 저장할 수 있다.
도 5는 본 발명의 실시 예에 따른 패킷저장부의 구성의 일 예를 도시한 도면이다.
도 5를 참조하면, 패킷저장부(410)는 적어도 하나 이상의 서브큐를 포함하는 적어도 하나 이상의 큐 그룹(510,520,530)을 포함한다. 각 큐 그룹(510,520,530)은 적어도 하나 이상의 가상화 프로세싱 모듈과 맵핑된다. 그리고 큐 그룹(510,520,530) 내 각 서브큐는 적어도 하나 이상의 딥플로우와 맵핑된다.
예를 들어, 제1 큐 그룹(510)은 제1 가상화 프로세싱 모듈과 맵핑되고, 제2 큐 그룹(520)은 제2 가상화 프로세싱 모듈과 맵핑되고, 제N 큐 그룹(530)은 제N 가상화 프로세싱 모듈과 맵핑될 수 있다. 이 경우에, 패킷의 목적지 가상화 프로세싱 모듈이 제2 가상화 프로세싱 모듈이고, 패킷의 딥플로우가 제2 딥플로우이면, 패킷은 제2 큐 그룹의 두 번째 서브큐(vQ5)에 저장될 수 있다.
다른 예로, 큐 그룹(510,520,530)의 개수와 가상화 프로세싱 모듈의 개수가 서로 다를 수 있으므로, 하나의 큐 그룹과 적어도 둘 이상의 가상화 프로세싱 모듈이 맵핑되거나, 하나의 가상화 프로세싱 모듈과 적어도 둘 이상의 큐 그룹이 맵핑될 수 있다.
하나의 가상화 프로세싱 모듈에 맵핑된 적어도 하나 이상의 큐 그룹 내의 서브큐가 큐 그룹에 맵핑된 가상화 프로세싱 모듈에 속하는 딥플로우에 기초하여 동적으로 생성 또는 삭제될 수 있다.
도 6은 본 발명의 실시 예에 따른 채널의 일 예를 도시한 도면이다.
도 6을 참조하면, 패킷처리장치와 호스트 사이에는 적어도 하나 이상의 채널(600,610,620)이 존재한다. 각 채널(600,610,620)은 적어도 하나 이상의 서브 채널(602,604,606)을 포함한다. 예를 들어, 패킷처리장치와 호스트 사이가 PCIe로 연결되고, 해당 연결이 N 개의 채널을 제공한다고 가정하자. 이 경우에, 본 실시 예는 N 개의 채널(600,610,620)을 그대로 사용하는 것이 아니라, N 개의 채널(600,610,620)의 각각을 다시 서브 채널(602,604,606)로 분할한다.
각 채널(600,610,620)은 모두 동일한 개수의 서브 채널로 분할되거나, 서로 다른 개수의 서브 채널로 분할될 수 있다. 예를 들어, 제1 채널(600)은 m개의 서브 채널을 포함하고, 제2 채널(610)은 k개의 서브 채널을 포함하고, 제N 채널(620)은 l개의 서브 채널을 포함할 수 있다.
도 7은 본 발명의 실시 예에 따른 딥플로우와 서브 채널 사이의 맵핑관계의 일 예를 도시한 도면이다. 본 실시 예는 설명의 편의를 위하여 하나의 채널을 도시하고 있다.
도 7을 참조하면, 제1 채널(600)에는 제1 가상화 프로세싱 모듈(352)이 할당되어 있다. 따라서 패킷처리장치(200)와 제1 가상화 프로세싱 모듈(352)은 패킷을 제1 채널(600)을 통해 송수신한다. 제1 채널(600)만을 이용하여 패킷을 송수신하면 패킷처리장치(200)와 제1 가상화 프로세싱 모듈(352) 사이에 송수신되는 딥플로우 단위의 QoS(Quality of Service)를 보장하기 어렵다.
QoS를 보장할 수 있도록, 본 실시 예는 제1 채널(600)을 도 6에서 살핀 바와 같이 복수 개의 서브 채널(602,604,606)로 분할하고, 서브 채널(602,604,606)과 딥플로우(710,712,714) 사이를 맵핑한다. 서브 채널(602,604,606)과 딥플로우(710,712,714) 사이의 맵핑관계는 스케줄러(430)에 의해 수행되거나 패킷분배부(420)에 의해 수행될 수 있다.
예를 들어, 제1 채널(600)이 m개의 서브채널을 포함하고, 제1 가상화 프로세싱 모듈(352)에 대한 m개의 딥플로우(710,712,714)가 존재하면, 각 딥플로우(710,712,714)와 각 서브 채널(602,604,606)이 1:1로 맵핑될 수 있다. 즉, 제1 가상화 프로세싱 모듈(352)에 대한 딥플로우 개수만큼 제1 채널(600)을 서브 채널(602,604,606)로 분할할 수 있다.
다른 실시 예로, 서브 채널의 개수와 딥플로우의 개수가 서로 다를 수 있다. 예를 들어, 제1 채널(600)은 미리 정의된 개수만큼 미리 서브 채널로 분할될 수 있다. 또는 제1 채널(600)은 물리적 또는 논리적 한계로 인해 딥플로우의 개수만큼 서브 채널을 생성할 수 없을 수 있다. 이와 같이 서브 채널의 개수와 딥플로우 개수가 서로 다르면, 하나의 서브 채널에 적어도 둘 이상의 딥플로우를 맵핑하거나, 하나의 딥플로우에 둘 이상의 서브 채널을 맵핑할 수 있다. 또 다른 예로, 서브 채널 중 일부는 다른 사용을 위해 비워 둘 수도 있다.
도 8은 본 발명의 실시 예에 따른 서브 채널을 통해 가상화 서버까지 딥플로우 단위의 단일 연결관계를 구성한 예를 도시한 도면이다.
도 8을 참조하면, 가상화 프로세싱 모듈(352)과 패킷처리장치(200)의 해당 큐 그룹(510)의 각 큐(512,514,516) 사이에 딥플로우 단위의 단일 연결관계가 형성된다. 본 실시 예는 설명의 편의를 위하여 제1 가상화 프로세싱 모듈(352)에 할당된 제1 채널(600)은 3개의 서브 채널(800,810,820)을 포함하고, 제1 가상화 프로세싱 모듈(352)에 할당된 큐 그룹(510) 또한 딥플로우에 할당된 세 개의 큐(512,514,516)를 포함한다고 가정한다.
이 경우에, 큐 그룹(510)의 제1 큐(512)는 제1 서브 채널(800)을 통해 제1 가상화 프로세싱 모듈(352)과 연결되고, 제2 큐(514)는 제2 서브 채널(810)을 통해 제1 가상화 프로세싱 모듈(352)과 연결되고, 제3 큐(516)는 제3 서브 채널(820)을 통해 제1 가상화 프로세싱 모듈(352)과 연결된다. 따라서 각 큐(512,514,516)에 딥플로우 단위로 저장된 패킷은 병목현상 없이 각 서브 채널(800,810,820)을 통해 제1 가상화 프로세싱 모듈(352)로 전송될 수 있다. 즉, 가상화 서버까지 딥플로우 단위의 단일 연결 구조가 형성될 수 있다.
도 9는 본 발명의 실시 예에 따른 서브 채널을 통해 패킷을 분배하는 패킷분배부의 구조의 일 예를 도시한 도면이다.
도 9를 참조하면, 패킷분배부(420)는 적어도 하나 이상의 연결노드(900)와, 패킷분배제어부(910)를 포함한다. 연결노드(900)는 각 서브 채널을 통하여 딥플로우 단위로 각 가상화 프로세싱 모듈(352,354,356)의 연결노드(950,952,954,956)와 연결된다. 일 예로, 각 가상화 프로세싱 모듈(352,354,356)의 연결노드(950,952,954,956)는 서브채널의 수에 따라 동적으로 생성 또는 삭제될 수 있으며, 가상화 NIC(vNIC)로 구현될 수 있다. 본 실시 예는 설명의 편의를 위하여 각 연결노드(900)와 각 서브채널이 1:1 연결되는 구조를 도시하고 있으나, 실시 예에 따라 1:N 또는 N:1 또는 N:M 등 다양한 연결구조가 형성될 수 있다.
본 실시 예의 패킷분배부(420)는 물리적으로 구현되거나 논리적으로 구현될 수 있다. 물리적으로 구현될 경우에 연결노드(900)의 개수와 연결관계가 고정되므로, 가상화 프로세싱 모듈(352,354,356)의 개수나 딥플로우의 식별 개수에 따른 적용에 한계가 있을 수 있으므로 논리적으로 구현하는 것이 바람직하다. 다만, 본 실시 예는 패킷분배부(420)를 물리적으로 구현하는 것을 배제하는 것은 아니며, 물리적으로 구현하는 것도 포함한다. 다만, 이하에서는 논리적으로 형성된 패킷분배부(420)에 대해 설명한다.
패킷분배부(420) 또는 스케줄러(430)는 딥플로우와 각 채널의 서브 채널 사이의 맵핑관계를 기초로 연결노드(900) 사이의 맵핑관계를 파악하고 저장한다. 맵핑관계가 생성되면, 패킷분배제어부(910)는 저장된 맵핑관계에 기초하여 가상화 프로세싱 모듈 기반으로 할당된 채널을 분할한 서브 채널을 통하여 딥플로우 기반의 패킷 분배를 수행한다. 예를 들어, 제1 큐(960)가 제1 가상화 프로세싱 모듈(352)의 제2 딥플로우와 맵핑된 큐이면, 패킷분배제어부(910)는 제1 큐(960)에 저장된 패킷을 연결노드 1-2(902)로 분배한다. 제2 큐(962)가 제2 가상화 프로세싱 모듈(354)의 딥플로우와 맵핑된 큐이면, 패킷분배제어부(910)는 제2 큐(962)에 저장된 패킷을 연결노드2(904)로 분배한다.
각 가상 프로세싱 모듈(352,354,356)은 플로우 단위의 연결 구조 형성을 위하여 연결노드(950,952,954,956)를 포함할 수 있다. 연결노드(950,952,954,956)는 그 용어와 관계없이 다양한 형태로 구현될 수 있다. 다만, 가상 프로세싱 모듈(352,354,356)의 연결노드(950,952,954,956)는 본 발명의 범위를 벗어나므로 이에 대한 상세한 설명은 생략한다.
실시 예에 따라, 딥플로우의 개수나 종류, 큐 그룹의 개수, 각 큐 그룹당 서브 큐의 개수는 동적으로 변경될 수 있다. 예를 들어, 스케줄러(430)는 호스트의 부하, 패킷처리장치의 부하 등 다양한 조건을 고려하여 딥플로우의 개수나 큐 그룹의 개수, 각 큐 그룹당 서브큐의 개수, 각 채널당 서브 채널 개수 등을 생성 또는 삭제의 방법의 통해 동적으로 변경할 수 있다. 제1 가상화 프로세싱 모듈(352)에 대한 패킷의 양이 증가하면, 스케줄러(430)는 제1 가상화 프로세싱 모듈(352)에 해당하는 패킷저장부(410)의 큐 그룹의 서브 큐 개수를 늘릴 수 있다. 또는 스케줄러(430)는 우선순위를 부여하여 QoS를 보장할 수 있도록 해당 QoS를 위한 딥플로우를 새롭게 생성할 수도 있다.
이러한 딥플로우 등의 동적 변경에 따라, 패킷분배부(420)는 그에 맞도록 연결노드(900)를 동적으로 변경할 수 있다. 예를 들어, 패킷분배부(420)는 패킷저장부(410)의 큐 개수가 증감하고 서브 채널의 개수가 증감하면 그에 따라 연결노드(900)의 개수를 증감할 수 있다. 또한, 패킷분배부(420) 또는 스케줄러(430)는 연결노드의 증감 등에 따른 새로운 맵핑관계를 파악하여 저장하고 관리할 수 있다.
도 10은 본 발명의 실시 예에 따른 다중계층 네트워크에서 패킷 처리 방법의 일 예를 도시한 흐름도이다.
도 10을 참조하면, 패킷처리장치(200)는 제1 네트워크로부터 적어도 하나 이상의 제2 네트워크의 계층정보를 포함하는 패킷을 수신한다(S1000). 패킷처리장치(200)는 패킷에 포함된 제2 네트워크의 계층정보를 기초로 패킷에 대한 딥플로우를 식별한다(S1020). 예를 들어, 패킷처리장치(200)는 패킷에 포함된 제2 네트워크의 계층 정보를 기초로 목적지 가상화 프로세싱 모듈별로 패킷 그룹을 생성하고, 패킷 그룹 내에서 제2 네트워크의 계층 정보를 기초로 패킷을 딥플로우 단위로 식별할 수 있다. 패킷처리장치(200)는 딥플로우 식별을 위하여 제2 네트워크의 L3 이상의 계층정보를 사용할 수 있다.
이러한 딥플로우 식별방법은 제1 네트워크에 인캡슐레이션되어 있는 제2 네트워크의 계층정보만을 이용하는 것이 아니라, 제1 네트워크에 하나 이상의 네트워크가 순차적으로 인캡슐레이션되어 있을 때, 인캡슐레이션되어 있는 하나 이상의 네트워크 계층 정보 모두를 기초로 딥플로우를 식별할 수 있다. 또한 이러한 딥플로우 식별방법은 제1 네트워크와 제2 네트워크 사이에 위치한 패킷처리장치(200)에 구현되는 경우에 한정되는 것은 아니며, 실시 예에 따라 제1 네트워크에 인캡슐레이션되어 있는 두 가상화 네트워크 사이의 가상화 모듈에 구현될 수도 있다.
패킷처리장치(200)는 제2 네트워크에 위치한 가상화 프로세싱 모듈에게 할당된 채널을 분할한 적어도 하나 이상의 서브 채널에 적어도 하나 이상의 딥플로우를 맵핑하고(S1020), 패킷을 서브 채널을 통해 가상화 프로세싱 모듈로 전송한다(S1030).
패킷처리장치(200)는 큐에 저장된 패킷을 해당 서브 채널로 분배하기 위하여 패킷분배부를 이용할 수 있다. 예를 들어, 각 채널의 각 서브 채널과 맵핑되는 적어도 하나 이상의 연결노드를 패킷분배부에 생성하고, 각 연결노드와 적어도 하나 이상의 딥플로우 사이의 맵핑관계를 파악하고 저장할 수 있다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.

Claims (13)

  1. 다중계층 네트워크에서 패킷 처리 방법에 있어서,
    제1 네트워크로부터 적어도 하나 이상의 제2 네트워크의 계층정보를 포함하는 패킷을 수신하는 단계;
    상기 패킷에 포함된 제2 네트워크의 계층정보를 기초로 상기 패킷에 대한 딥플로우를 식별하는 단계;
    상기 제2 네트워크에 위치한 가상화 프로세싱 모듈 기반으로 할당된 채널을 분할한 적어도 하나 이상의 서브 채널에 적어도 하나 이상의 딥플로우를 맵핑하는 단계; 및
    상기 패킷 또는 상기 패킷을 가공하여 생성한 패킷을 상기 서브 채널을 통해 상기 가상화 프로세싱 모듈로 전송하는 단계;를 포함하고,
    가상화 프로세싱 모듈에 할당된 채널은 복수 개의 서브 채널을 포함하고,
    가상화 프로세싱 모듈을 향하는 패킷들에 대한 복수 개의 딥플로우 중 적어도 둘 이상의 딥플로우는 상기 복수 개의 서브 채널 중 서로 다른 서브채널에 각각 맵핑되고,
    상기 적어도 둘 이상의 딥플로우에 해당하는 각 패킷이 저장된 적어도 둘 이상의 서브큐와 가상화 프로세싱 모듈은 상기 적어도 둘 이상의 딥플로우와 각각 맵핑된 서브채널을 통해 단일 연결 구조를 형성하는 것을 특징으로 하는 패킷 처리 방법.
  2. 제 1항에 있어서,
    상기 채널은, 상기 가상화 프로세싱 모듈이 존재하는 호스트와 네트워크인터페이스장치 사이에 위치하는 것을 특징으로 하는 패킷 처리 방법.
  3. 제 1항에 있어서,
    상기 채널은 PCIe로 구현되는 것을 특징으로 하는 패킷 처리 방법.
  4. 제 1항에 있어서, 상기 패킷에 대한 딥플로우를 식별하는 단계는,
    패킷에 포함된 상기 제2 네트워크의 계층 정보를 기초로 목적지 가상화 프로세싱 모듈별로 패킷 그룹을 구분하는 단계; 및
    상기 패킷 그룹 내에서 상기 제2 네트워크의 계층 정보를 기초로 패킷의 딥플로우를 식별하는 단계;를 포함하는 것을 특징으로 하는 패킷 처리 방법.
  5. 제 4항에 있어서, 상기 딥플로우를 식별하는 단계는,
    상기 제2 네트워크의 L3 이상의 계층정보를 이용하여 서로 다른 딥플로우를 식별하는 단계;를 포함하는 것을 특징으로 하는 패킷 처리 방법.
  6. 제 1항에 있어서,
    가상 프로세싱 모듈별로 적어도 하나 이상의 큐를 포함하는 큐 그룹을 할당하는 단계; 및
    상기 딥플로우를 기초로 패킷을 저장할 큐 그룹 내 큐를 선택하는 단계;를 더 포함하는 것을 특징으로 하는 패킷 처리 방법.
  7. 제 1항에 있어서, 상기 서브 채널에 딥플로우를 맵핑하는 단계는,
    각 채널의 각 서브 채널과 맵핑되는 적어도 하나 이상의 연결노드를 생성하는 단계; 및
    각 연결노드와 적어도 하나 이상의 딥플로우를 맵핑하는 단계;를 포함하는 것을 특징으로 하는 패킷 처리 방법.
  8. 제 7항에 있어서, 상기 가상화 프로세싱 모듈로 전송하는 단계는,
    딥플로우를 기초로 패킷을 해당하는 연결노드로 분배하는 단계;를 포함하는 것을 특징으로 하는 패킷 처리 방법.
  9. 제1 네트워크로부터 수신한 패킷에 포함된 제2 네트워크의 계층정보를 기초로 상기 패킷에 대한 딥플로우를 식별하는 패킷식별부;
    상기 제2 네트워크에 위치한 가상화 프로세싱 모듈 기반으로 할당된 채널을 분할한 적어도 하나 이상의 서브 채널에 적어도 하나 이상의 딥플로우를 맵핑하는 스케줄러; 및
    상기 패킷 또는 상기 패킷을 가공하여 생성한 패킷을 상기 서브 채널을 통해 상기 가상화 프로세싱 모듈로 전송하는 패킷분배부;를 포함하고,
    상기 가상화 프로세싱 모듈에 할당된 채널은 복수 개의 서브 채널을 포함하고,
    상기 스케줄러는, 상기 가상화 프로세싱 모듈을 향하는 패킷들에 대한 복수 개의 딥플로우 중 적어도 둘 이상의 딥플로우는 상기 복수 개의 서브 채널 중 서로 다른 서브 채널에 각각 맵핑되고, 상기 적어도 둘 이상의 딥플로우에 해당하는 각 패킷이 저장된 적어도 둘 이상의 서브큐와 상기 가상화 프로세싱 모듈은 상기 적어도 둘 이상의 딥플로우와 각각 맵핑된 서브 채널을 통해 단일 연결 구조를 형성하는 것을 특징으로 하는 패킷 처리 장치.
  10. 제 9항에 있어서,
    가상 프로세싱 모듈별로 할당된 적어도 하나 이상의 큐를 포함하는 큐 그룹;을 포함하고,
    상기 패킷식별부는 딥플로우 단위로 패킷을 해당하는 큐 그룹 내 큐에 저장하는 것을 특징으로 하는 패킷 처리 장치.
  11. 제 9항에 있어서,
    상기 채널은, 상기 가상화 프로세싱 모듈이 존재하는 호스트와 가상스위치 사이에 위치하는 것을 특징으로 하는 패킷 처리 장치.
  12. 제 9항에 있어서, 상기 패킷분배부는,
    각 서브 채널과 맵핑되는 적어도 하나 이상의 연결노드; 및
    각 연결노드와 딥플로우 사이의 맵핑관계를 기초로 패킷 분배를 수행하는 패킷분배제어부;를 포함하는 것을 특징으로 하는 패킷 처리 장치.
  13. 제 1항 내지 제 8항 중 어느 한 항에 기재된 방법을 수행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020190010661A 2018-10-19 2019-01-28 다중계층 네트워크 환경에서 패킷을 처리하는 방법 및 그 장치 KR102112270B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US16/372,821 US10992601B2 (en) 2018-10-19 2019-04-02 Packet processing method and apparatus in multi-layered network environment
CN201910264936.8A CN111083064A (zh) 2018-10-19 2019-04-02 在多层网络环境中处理信息包的方法以及其装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180124927 2018-10-19
KR20180124927 2018-10-19

Publications (2)

Publication Number Publication Date
KR20200044642A KR20200044642A (ko) 2020-04-29
KR102112270B1 true KR102112270B1 (ko) 2020-05-19

Family

ID=70466712

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190010661A KR102112270B1 (ko) 2018-10-19 2019-01-28 다중계층 네트워크 환경에서 패킷을 처리하는 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR102112270B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101639797B1 (ko) * 2015-10-16 2016-07-14 주식회사 구버넷 가상머신 패킷을 처리하는 네트워크 인터페이스 장치 및 그 방법
JP2018029230A (ja) * 2016-08-15 2018-02-22 富士通株式会社 空き帯域測定プログラム、空き帯域測定方法、および空き帯域測定装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103917966B (zh) * 2011-12-23 2016-08-24 英派尔科技开发有限公司 设备集合中的资源利用优化
KR101448951B1 (ko) * 2013-02-27 2014-10-13 주식회사 시큐아이 패킷 처리 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101639797B1 (ko) * 2015-10-16 2016-07-14 주식회사 구버넷 가상머신 패킷을 처리하는 네트워크 인터페이스 장치 및 그 방법
JP2018029230A (ja) * 2016-08-15 2018-02-22 富士通株式会社 空き帯域測定プログラム、空き帯域測定方法、および空き帯域測定装置

Also Published As

Publication number Publication date
KR20200044642A (ko) 2020-04-29

Similar Documents

Publication Publication Date Title
KR101583325B1 (ko) 가상 패킷을 처리하는 네트워크 인터페이스 장치 및 그 방법
US9692706B2 (en) Virtual enhanced transmission selection (VETS) for lossless ethernet
US9686203B2 (en) Flow control credits for priority in lossless ethernet
Guo et al. Secondnet: a data center network virtualization architecture with bandwidth guarantees
US8385202B2 (en) Virtual switch quality of service for virtual machines
EP2880828B1 (en) System and method for virtual ethernet interface binding
KR102008551B1 (ko) 물리적 큐들로의 가상 머신 플로우들의 오프로딩 기법
US9813283B2 (en) Efficient data transfer between servers and remote peripherals
KR101639797B1 (ko) 가상머신 패킷을 처리하는 네트워크 인터페이스 장치 및 그 방법
KR19980070206A (ko) 통신 시스템의 통신 스택에 관련된 데이터를 전송하고 수신하기위한 시스템 및 그 방법
CN108804535B (zh) 具有网络分层的软件定义存储(sds)系统
US10348651B2 (en) Apparatus and method for virtual switching
US9584446B2 (en) Memory buffer management method and system having multiple receive ring buffers
JP2008181387A (ja) I/oバスシステム及びその管理方法
KR102112270B1 (ko) 다중계층 네트워크 환경에서 패킷을 처리하는 방법 및 그 장치
WO2018057165A1 (en) Technologies for dynamically transitioning network traffic host buffer queues
US9846658B2 (en) Dynamic temporary use of packet memory as resource memory
KR20180134219A (ko) 가상머신 패킷의 처리방법과 그 장치
US10992601B2 (en) Packet processing method and apparatus in multi-layered network environment
KR101773528B1 (ko) 가상머신 패킷을 처리하는 네트워크 인터페이스 장치 및 그 방법
KR102091152B1 (ko) 계층적 네트워크에서 다중코어를 이용한 패킷 처리 방법 및 그 장치
KR101850749B1 (ko) 멀티 코어 기반 nic에서 동적 패킷 버퍼 할당 방법
KR101787448B1 (ko) 단일 데이터 센터 클라우드 컴퓨팅 환경에서의 확률적 가상 네트워크 요청 방법, 이를 이용한 요청 수신 장치, 이를 이용한 자원 할당 방법, 자원 할당 장치, 이를 수행하는 프로그램 및 기록매체
CN113535370A (zh) 一种实现负载均衡的多rdma网卡虚拟化的方法、设备
KR20190069032A (ko) 가상플로우의 인식 방법과 그 장치

Legal Events

Date Code Title Description
GRNT Written decision to grant