KR20200080416A - Data processing apparatus for mobile edge computing - Google Patents

Data processing apparatus for mobile edge computing Download PDF

Info

Publication number
KR20200080416A
KR20200080416A KR1020180165149A KR20180165149A KR20200080416A KR 20200080416 A KR20200080416 A KR 20200080416A KR 1020180165149 A KR1020180165149 A KR 1020180165149A KR 20180165149 A KR20180165149 A KR 20180165149A KR 20200080416 A KR20200080416 A KR 20200080416A
Authority
KR
South Korea
Prior art keywords
memory
manager
network
allocating
content
Prior art date
Application number
KR1020180165149A
Other languages
Korean (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 KR1020180165149A priority Critical patent/KR20200080416A/en
Publication of KR20200080416A publication Critical patent/KR20200080416A/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • 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/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3063Pipelined operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9047Buffering arrangements including multiple buffers, e.g. buffer pools

Abstract

The present invention relates to a data processing device for mobile edge computing. According to the present invention, an IT-based server is operated by the technological concept of cloud computing being applied to a network edge in the process of super multi-view content processing. As a result, massive ultra-realistic content can be effectively processed so that personalized interaction services can be provided on a hologram/super multi-view basis anytime and anywhere. The data processing device includes a data plane library and an NIC driver executing packet processing with the data plane library. The data plane library includes: a memory manager allocating a pool of objects in a memory; a buffer manager pre-allocating and managing fixed-length buffers stored in a memory pool in order to reduce the buffer allocation/release time of an OS; a queue manager realizing a secure lockless queue in order to avoid unnecessary latency when different software elements process network packets in parallel; a flow classification generating hash information on a network packet header using Intel streaming SIMD extension technology so that the network packets are allocated to the same flow and processed at high speed; and a poll mode driver increasing the packet pipeline speed using synchronous poll mode interrupt processing routine.

Description

모바일 엣지 컴퓨팅을 위한 데이터처리장치{Data processing apparatus for mobile edge computing}Data processing apparatus for mobile edge computing

본 발명은 모바일 엣지 컴퓨팅을 위한 데이터처리장치에 관한 것으로, 특히 초다시점 콘텐츠 처리과정에서 클라우드 컴퓨팅 기술 개념을 네트워크 엣지(edge)에 적용하여 IT 기반의 서버를 동작하게 하여, 언제 어디서나 홀로그램/초다시점 기반으로 개인별 상호작용 서비스를 제공하도록 대용량 초실감 콘텐츠를 효과적으로 처리하도록 한 모바일 엣지 컴퓨팅을 위한 데이터처리장치에 관한 것이다.The present invention relates to a data processing device for mobile edge computing, and in particular, in the ultra-multi-point content processing process, the cloud computing technology concept is applied to a network edge to operate an IT-based server, thereby hologram/second anytime, anywhere It relates to a data processing device for mobile edge computing that effectively processes large-capacity ultra-realistic content to provide individual interaction services based on multi-view.

모바일 엣지 컴퓨팅(MEC)은 통신 서비스를 이용하려는 사용자와 가까운 곳에 서버를 위치시켜 사용자의 데이터를 처리하는 기술을 말한다. 이는 사용자가 모바일 네트워크가 전송하는 데이터에 언제든 접근할 수 있도록 안개 모양처럼 분산돼 퍼져 있다는 의미로, 포그(Fog) 컴퓨팅이라고도 불린다.Mobile edge computing (MEC) refers to a technology that processes a user's data by placing a server close to a user who intends to use a communication service. This means that it is spread like a fog so that users can access the data transmitted by the mobile network at any time. It is also called fog computing.

MEC가 적용되면 데이터 전송 시간이 비약적으로 단축되는 것은 물론 맞춤형 서비스가 가능해진다. 예컨대, 고속도로 주변 기지국이 MEC를 적용할 경우 중앙서버에 보내는 절차를 생략할 수 있기 때문에, 각종 교통 정보를 사용자 차량에 곧바로 전송할 수 있게 된다. 다시 말해 부산에서 발생한 교통사고 정보를 서울에서 처리하지 않고 근접한 지역에 설치된 서버에 저장해 신속하게 배포할 수 있다. When MEC is applied, data transmission time is drastically shortened and customized service is possible. For example, when the MEC is applied to the base station around the highway, the procedure for sending to the central server can be omitted, so that various traffic information can be directly transmitted to the user vehicle. In other words, traffic accident information that occurred in Busan can be quickly distributed by storing it on a server installed in a nearby area without processing it in Seoul.

이러한 특성 때문에 MEC는 2020년 상용화될 예정인 5G 네트워크의 핵심 기술로 주목받고 있다. MEC가 5G에 적용되면 네트워크에 연결된 디바이스들이 중앙 서버를 거치지 않고 기지국과 인접한 서버가 실시간으로 데이터를 처리하기 때문에 초저지연을 달성할 수 있다.Because of these characteristics, MEC is attracting attention as a core technology for 5G networks that will be commercialized in 2020. When MEC is applied to 5G, ultra-low latency can be achieved because devices connected to the network do not go through a central server, and servers adjacent to the base station process data in real time.

모바일 엣지 컴퓨팅에 대하여 종래에 제안된 기술이 하기의 <특허문헌 1 > 내지 <특허문헌 12> 에 개시되어 있다.Conventionally proposed technologies for mobile edge computing are disclosed in <Patent Document 1> to <Patent Document 12>.

<특허문헌 1> 에 개시된 종래기술은 사용자 장치와 근접해 있는 POP(point of presence)와 같은 network edge에 위치하는 Cache Server가 콘텐츠 제공자(source)로부터 제공되는 미디어 콘텐츠를 수신하고, POP는 트랜스코딩 서비스를 포함하고, 수신한 미디어 콘텐츠를 트랜스 코딩한다. 이때, 사용자 장치로부터 수신한 Request에 기초하여, 예컨대 애플리케이션, OS, 브라우저 타입 등의 정보에 기초하여 트랜스코딩된 미디어 콘텐츠를 사용자 장치에 스트리밍으로 제공한다.In the prior art disclosed in <Patent Document 1>, a cache server located at a network edge such as a point of presence (POP) adjacent to a user device receives media content provided from a content provider, and POP is a transcoding service. And transcode the received media content. At this time, based on the request received from the user device, for example, the transcoded media content is provided to the user device as streaming based on information such as an application, an OS, and a browser type.

또한, <특허문헌 2> 에 개시된 종래기술은 cloud edge단의 MEC(multimedia edge cloud)와 사용자 장치가 직접 통신하며, 서비스 레벨 퀄리티, 사용자 장치의 개별 능력 등을 평가하여, 멀티미디어 유형에 적합한 멀티미디어 데이터를 사용자 장치에 제공하고, 또한 사용자 장치의 이동에 따라 제2 MEC로의 핸드오버 기능을 제공하는 load balancing 서버를 제공한다.In addition, in the prior art disclosed in <Patent Document 2>, the multimedia edge cloud (MEC) of the cloud edge stage directly communicates with the user device, and evaluates service level quality, individual capabilities of the user device, and the like, and provides multimedia data suitable for the multimedia type. It provides a load balancing server that provides a user device, and also provides a handover function to a second MEC according to the movement of the user device.

또한, <특허문헌 3> 에 개시된 종래기술은 각각의 컴퓨팅 장치가 cloud-based 리소스와 통하여 서로 간접적으로 통신하며, 직접적인 통신이 없이 구성되며, cloud edge topologies에 대한 자원 사용량에 기반하여 질의(query) 데이터의 연산자들을 어느 컴퓨팅 장치에서 실행시킬지에 대한 여부를 결정하는 기술을 제공한다.Further, in the prior art disclosed in <Patent Document 3>, each computing device communicates indirectly with each other through cloud-based resources, is configured without direct communication, and queries based on resource usage for cloud edge topologies. Provides a technique for deciding on which computing device to run operators of data.

또한, <특허문헌 4> 에 개시된 종래기술은 컴퓨터 네트워크 에지에 위치한 "콘텐츠 프로세서"는 콘텐츠 데이터를 저장하는 단계, 사용자 요청의 속성에 따라 저장된 콘텐츠 데이터를 처리하는 단계, 복수의 "콘텐츠 프로세서", 즉 에지 컴퓨터들 사이에서 컴퓨팅 리소스를 공유하게 함으로써, 컴퓨터 네트워크 에지에 전송된 서비스를 맞춤화하는 프로세서를 구비한 기술을 제공한다.In addition, in the prior art disclosed in <Patent Document 4>, the "content processor" located at the edge of a computer network stores content data, processes the stored content data according to attributes of a user request, and a plurality of "content processors", That is, by providing computing resources among edge computers, a technology provided with a processor that personalizes a service transmitted to a computer network edge is provided.

또한, <특허문헌 5> 에 개시된 종래기술은 디지털 멀티미디어 스트리밍 콘텐츠를 배포하기 위한 복수의 서버로 구성되며, 데이터센터는 추가로 복수의 콘텐츠 레코드를 가지는 데이터베이스를 포함하고, 데이터 센터에 저장된 각각의 데이터베이스 콘텐츠 레코드는 콘텐츠와 하나 이상의 intermediate POP(points of presence) 사이에 결합관계를 제공한다.In addition, the prior art disclosed in <Patent Document 5> is composed of a plurality of servers for distributing digital multimedia streaming content, and the data center further includes a database having a plurality of content records, and each database stored in the data center. Content records provide a link between content and one or more intermediate points of presence (POP).

또한, <특허문헌 6> 에 개시된 종래기술은 모바일 에지 서비스(MES)를 활성화하기 위한 장치로서, 무선 애플리케이션 중 적어도 하나를 수신하도록 구성되는 GGSN interface, 패킷의 송신을 결정하는 switch, 패킷을 적어도 하나의 mobile edge service에 적용하기 위해 패킷과 연관된 요청을 활용하는 core service layer 및 서비스 간의 통신을 제어하기 위한 protocol stack을 포함한다. 이동통신 네트워크에서 이동 에지 서비스(MES)를 허용하도록 지시하는 시스템 및 방법에 관한 기술로, 콘텐츠 포털 및 부가 가치 서비스를 제공하여 사용자의 가치를 극대화할 수 있다.In addition, the prior art disclosed in <Patent Document 6> is an apparatus for activating a mobile edge service (MES), a GGSN interface configured to receive at least one of wireless applications, a switch for determining transmission of a packet, and at least one packet. It includes a core service layer that utilizes requests associated with packets to apply to the mobile edge service of and a protocol stack for controlling communication between services. As a technology for a system and a method instructing a mobile communication network to allow a mobile edge service (MES), a content portal and a value-added service can be provided to maximize a user's value.

또한, <특허문헌 7> 에 개시된 종래기술은 위성 방송 콘텐츠 분배 네트워크를 통해 Network Operations Center(NOC)로부터 콘텐츠를 수신하고 마지막 마일 공급자에 배포하는 edge node에 관한 기술을 제공한다. 미디어서버는 public 및 private VLAN에 접속이 되고, 하나의 컴퓨터 내에 미디어서버, private VLAN and public VLAN이 존재한다.In addition, the prior art disclosed in <Patent Document 7> provides a technique for an edge node that receives content from a Network Operations Center (NOC) through a satellite broadcast content distribution network and distributes it to the last mile provider. Media servers are connected to public and private VLANs, and media servers, private VLANs and public VLANs exist in one computer.

또한, <특허문헌 8> 에 개시된 종래기술은 enterprise 밖에서 송신되고 intranet content의 일부와 연관된 접속 요청은 enterprise CDN 영역으로부터 intranet content에 접속하는 것을 막기 위해 상기 접속요청이 enterprise CDN 영역에서 처리되는 것을 방지한다. 동일한 소프트웨어와 ICDN을 기업 내부 시스템에 구축함으로써, 기업에 인터넷 콘텐츠를 효율적으로 제공할 수 있다.In addition, the prior art disclosed in <Patent Document 8> prevents the connection request from being processed in the enterprise CDN area in order to prevent the connection request transmitted from outside the enterprise and associated with a part of intranet content from accessing the intranet content from the enterprise CDN area. . By building the same software and ICDN in the company's internal system, it is possible to efficiently provide Internet content to the company.

또한, <특허문헌 9> 에 개시된 종래기술은 DNS를 이용하여 미지의 호스트 헤더를 포함한 리퀘스트에 대해서 서비스할 것인지를 판단하기 전에, 호스트 헤더에 포함되는 이름이 인식되지 않는다고 가정한다. 그 후 에지 서버(edge server)에서 DNS CNAME의 리스트를 취득하여, 에지 서버(edge server)로 되돌아온 CNAME 체인을 분석해 응답의 방법을 결정한다.In addition, the prior art disclosed in <Patent Document 9> assumes that the name included in the host header is not recognized before determining whether to service a request including an unknown host header using DNS. Then, a list of DNS CNAMEs is obtained from the edge server, and the CNAME chain returned to the edge server is analyzed to determine the response method.

또한, <특허문헌 10> 에 개시된 종래기술은 네트워크 에지 캐시로부터 콘텐츠를 수신하는 사용자 장치 그룹으로 할당하는 단계, 사용자 장치에 전달될 콘텐츠와 사용자 장치 그룹에 전달될 콘텐츠의 차이를 식별하는 단계, 식별된 하나 이상의 차이에 기초하여 사용자 장치에 전송될 콘텐츠의 일부를 선택하여 전송하는 단계를 포함하고, 사용자 그룹 장치에서 콘텐츠를 수신하고 사용자 장치에 전달된 콘텐츠의 차이를 통해 수신되지 않은 부분을 미리 전달하는 기술을 제공한다.In addition, in the prior art disclosed in <Patent Document 10>, allocating content from a network edge cache to a user device group, identifying a difference between content to be delivered to the user device and content to be delivered to the user device group, identification And selecting and transmitting a part of the content to be transmitted to the user device based on the one or more differences, and receiving the content from the user group device and pre-delivering the unreceived portion through the difference in the content delivered to the user device. It provides the technology to do.

또한, <특허문헌 11> 에 개시된 종래기술은 미디어 객체를 스트리밍시키기 위한 방법에 관한 것으로서, 프리픽스 사이즈를 결정하는 단계, 비트 레이트에 있는 스트리밍을 위해 프리픽스의 사이즈를 기반으로 전송률을 결정하는 단계, 필요한 전송률을 달성하기 위해 서버 간의 대역폭을 제공하는 단계를 포함한다.In addition, the prior art disclosed in <Patent Document 11> relates to a method for streaming a media object, determining a prefix size, determining a transmission rate based on the size of the prefix for streaming at a bit rate, necessary And providing bandwidth between servers to achieve transfer rates.

또한, <특허문헌 12> 에 개시된 종래기술은 복수의 ES(edge server)를 이용하여 Overlay Network를 구축하는 단계, 각각의 ES에 서비스 리소스를 할당하는 단계, 사용자 장치에 의해 요청된 서비스 리소스를 담당할 제2 ES를 선택 및 공급하는 단계를 포함한다. In addition, the prior art disclosed in <Patent Document 12> constructs an Overlay Network using a plurality of edge servers (ESs), allocates service resources to each ES, and handles service resources requested by the user device. And selecting and supplying a second ES to be performed.

미국 등록특허 US 9088634(2015.07.21. 등록)(Dynamic media transcoding at network edge)US registered patent US 9088634 (Registered on July 21, 2015) (Dynamic media transcoding at network edge) 미국 등록특허 US 9088577(2015.07.21. 등록)( Multimedia aware cloud for mobile device computing)US registered patent US 9088577 (registered on July 21, 2015) (Multimedia aware cloud for mobile device computing) 미국 등록특허 US 9088344(2015.08.04. 등록)(Cloud-edge topologies)US registered patent US 9088344 (2015.08.04. registered) (Cloud-edge topologies) 미국 등록특허 US 8243596(2012.08.14. 등록)(Distributing intelligence across networks)US registered patent US 8243596 (registered on August 14, 2012) (Distributing intelligence across networks) 유럽 등록특허 1269714(2006.08.30. 등록)(METHOD AND DEVICE FOR DISTRIBUTED CACHING)European Registered Patent 1269714 (Registered on August 30, 2006) (METHOD AND DEVICE FOR DISTRIBUTED CACHING) 미국 등록특허 US 6891842(2005.05.10. 등록)(System and method for enabling mobile edge services)US registered patent US 6891842 (registered on May 10, 2005) (System and method for enabling mobile edge services) 미국 등록특허 US 7237071(2007.06.26. 등록)(Micronode in a satellite based content delivery system)US registered patent US 7237071 (registered on June 26, 2007) (Micronode in a satellite based content delivery system) 미국 등록특허 US 7600025(2009.10.06. 등록)(Extending an internet content delivery network into an enterprise)U.S. registered patent US 7600025 (Registered on October 6, 2009) (Extending an internet content delivery network into an enterprise) 미국 공개특허 US 2013-0191499(2013.07.25. 공개)(Multi-domain configuration handling in an edge network server)US Patent Publication US 2013-0191499 (published July 25, 2013) (Multi-domain configuration handling in an edge network server) 유럽 공개특허 2973352(2016.01.20. 공개)(PRE-DELIVERY OF CONTENT TO DEVICES)European Patent No. 2973352 (published on January 20, 2016) (PRE-DELIVERY OF CONTENT TO DEVICES) 미국 공개특허 US 2005-0071496(2005.03.31. 공개)(PRE-DELIVERY OF CONTENT TO DEVICES)US Patent Publication No. 2005-0071496 (published on March 31, 2005) (PRE-DELIVERY OF CONTENT TO DEVICES) 유럽 공개특허 2063598(2009.05.27. 공개)(PRE-DELIVERY OF CONTENT TO DEVICES)European Patent Publication No. 2063598 (published on May 27, 2009) (PRE-DELIVERY OF CONTENT TO DEVICES)

그러나 상기와 같은 종래기술들은 모바일 엣지 컴퓨팅을 위해 다양한 데이터 처리 방식을 제공하지만, 고성능 패킷 처리에는 한계가 있다.However, such prior arts provide various data processing methods for mobile edge computing, but there are limitations in high performance packet processing.

따라서 본 발명은 상기와 같은 일반적인 모바일 엣지 컴퓨팅에서 요구하는 고성능 패킷처리와 종래기술에서 발생하는 제반 문제점을 해결하기 위해서 제안된 것으로서, 초다시점 콘텐츠 처리과정에서 클라우드 컴퓨팅 기술 개념을 네트워크 엣지(edge)에 적용하여 IT 기반의 서버를 동작하게 하여, 언제 어디서나 홀로그램/초다시점 기반으로 개인별 상호작용 서비스를 제공하도록 대용량 초실감 콘텐츠를 효과적으로 처리하도록 한 모바일 엣지 컴퓨팅을 위한 데이터처리장치를 제공하는 데 그 목적이 있다.Therefore, the present invention has been proposed to solve all the problems encountered in the high-performance packet processing and the prior art required by the general mobile edge computing as described above, and the concept of cloud computing technology in the process of ultra-multi-point content network edge (edge) It provides a data processing device for mobile edge computing that effectively handles large-capacity ultra-realistic content to provide personal interaction service based on hologram/ultra-view point by operating IT-based server by applying to There is a purpose.

상기한 바와 같은 목적을 달성하기 위하여, 본 발명에 따른 모바일 엣지 컴퓨팅을 위한 데이터처리장치는, 데이터 플랜 라이브러리(Data Plane Library); 상기 데이터 플랜 라이브러리를 이용하여 패킷 처리를 수행하는 NIC 드라이버를 포함하고,In order to achieve the above object, a data processing apparatus for mobile edge computing according to the present invention includes: a data plan library; It includes a NIC driver for performing packet processing using the data plan library,

상기 데이터 플랜 라이브러리는 메모리 매니저(Memory Manager), 버퍼 매니저(Buffer Manager), 큐 매니저(Queue Manager), Flow classification, Poll mode Driver를 포함하는 것을 특징으로 한다.The data plan library is characterized by including a memory manager, a buffer manager, a queue manager, flow classification, and a poll mode driver.

본 발명에 따르면 초다시점 콘텐츠 처리과정에서 클라우드 컴퓨팅 기술 개념을 네트워크 엣지(edge)에 적용하여 IT 기반의 서버를 동작하게 하여, 언제 어디서나 홀로그램/초다시점 기반으로 개인별 상호작용 서비스를 제공하도록 대용량 초실감 콘텐츠를 효과적으로 처리할 수 있는 장점이 있다.According to the present invention, the cloud computing technology concept is applied to the network edge in the process of ultra-multi-point content processing to operate the IT-based server to provide individual interaction services based on the hologram/ultra-multipoint point anytime, anywhere. It has the advantage of being able to effectively process ultra-realistic content.

도 1은 본 발명에 따른 모바일 엣지 컴퓨팅을 위한 데이터처리장치의 전체 구성도,
도 2는 도 1의 Poll Mode Driver의 실시 예 구성도이다.
1 is an overall configuration diagram of a data processing apparatus for mobile edge computing according to the present invention,
FIG. 2 is a block diagram of an embodiment of the Poll Mode Driver of FIG. 1.

이하 본 발명의 바람직한 실시 예에 따른 모바일 엣지 컴퓨팅을 위한 데이터처리장치를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, a data processing apparatus for mobile edge computing according to a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 바람직한 실시 예에 따른 모바일 엣지 컴퓨팅을 위한 데이터처리장치의 전체 구성도로서, 데이터 플랜 라이브러리(Data Plane Library), 상기 데이터 플랜 라이브러리를 이용하여 패킷 처리를 수행하는 NIC 드라이버를 포함하고, 상기 데이터 플랜 라이브러리는 메모리 매니저(Memory Manager), 버퍼 매니저(Buffer Manager), 큐 매니저(Queue Manager), Flow classification, Poll mode Driver를 포함한다.1 is an overall configuration diagram of a data processing apparatus for mobile edge computing according to a preferred embodiment of the present invention, including a data plan library (Data Plane Library), a NIC driver performing packet processing using the data plan library The data plan library includes a memory manager, a buffer manager, a queue manager, flow classification, and a poll mode driver.

DPDK는 Data Plane Development Kit의 약자로, Intel 아키텍처 기반 고성능 패킷처리 최적화를 위한 시스템이다. DPDK는 크게 Data Plane Library들과 패킷 처리 최적화를 위한 NIC 드라이버의 집합으로 구성되어 있다.DPDK stands for Data Plane Development Kit and is a system for optimizing high-performance packet processing based on Intel architecture. DPDK consists of a set of data plane libraries and a set of NIC drivers for packet processing optimization.

DPDK의 가장 큰 특징은 도 1에 도시한 바와 같이, 기존 리눅스 기반의 패킷처리과정과는 다르게 커널(kernel)에서 패킷처리과정을 거치는 게 아니라 애플리케이션(Customer Application)이 User Space의 Intel DPDK 라이브러리 API와 EAL(Environment Abstraction Layer)을 사용하여 리눅스 커널을 통과하여 직접 NIC에 엑세스 할 수 있는 통로를 제공한다는 것이다.As shown in FIG. 1, the biggest feature of the DPDK is that, unlike the existing Linux-based packet processing process, the packet processing process is not performed in the kernel, but the application (Customer Application) uses the Intel DPDK library API of the User Space. It uses EAL (Environment Abstraction Layer) to provide a path to directly access the NIC through the Linux kernel.

또한, DPDK는 리눅스 User Space의 Data Plane API뿐만 아니라, 패킷처리에 최적화된 NIC 드라이버를 제공한다.In addition, DPDK provides a NIC driver optimized for packet processing as well as the Data Plane API of the Linux User Space.

상기 DPDK 구성 요소인 라이브러리는 크게 Memory Manager, Buffer Manager, Queue Manager, Flow classification, Poll mode Driver로 나눌 수 있는데, 각 라이브러리들의 역할은 다음과 같다.The library, which is a component of the DPDK, can be largely divided into Memory Manager, Buffer Manager, Queue Manager, Flow classification, and Poll mode Driver. The roles of each library are as follows.

메모리 매니저(Memory Manager)는 메모리에서 객체들의 풀을 할당하는 기능을 수행하는데, 각 객체들의 풀은 huge page 메모리 공간에 생성되고, 사용 가능한 객체를 저장하기 위해서 Ring을 사용한다. 이러한 메모리 매니저는 객체들이 DRAM Channel에 균등하게 저장되고 객체들이 Padding되도록 보장하는 정렬 도움 기능을 제공한다.The memory manager performs a function of allocating a pool of objects in memory. Each object pool is created in a huge page memory space and uses a ring to store usable objects. This memory manager provides an alignment help function to ensure that objects are evenly stored in the DRAM Channel and that the objects are padded.

버퍼 매니저(Buffer Manager)는 OS가 버퍼를 할당하고 해제하는데 보내는 시간을 줄이기 위해, 메모리 풀에 저장되는 고정 길이의 버퍼들을 사전할당하여 관리한다.The buffer manager manages pre-allocated fixed-length buffers stored in the memory pool in order to reduce the time that the OS spends allocating and releasing buffers.

큐 매니저(Queue Manager)는 기존의 spinlock을 사용하는 대신에 서로 다른 소프트웨어 요소들이 네트워크 패킷을 병렬 처리할 때 불필요한 대기시간이 발생하지 않도록 하기 위해 안전한 lockless Queue를 구현한다.Instead of using the existing spinlock, the Queue Manager implements a secure lockless queue to prevent unnecessary latency when different software elements process network packets in parallel.

Flow Classification은 Intel 스트리밍 SIMD 확장 기술을 사용하여 네트워크 패킷 헤더에 대한 hash 정보를 효과적으로 생성하여, 네트워크 패킷들이 동일 flow에 할당되어 고속처리되도록 한다.Flow Classification effectively generates hash information for the network packet header using Intel streaming SIMD extension technology, so that network packets are allocated to the same flow and processed at high speed.

Poll Mode Driver는 기존의 비동기식 인터럽트를 기반으로 네트워크 패킷을 처리하는 대신에 최적화된 동기식 폴 모드 인터럽트 처리 루틴을 사용하여 패킷 파이프 라인 속도를 높인다.The Poll Mode Driver speeds up the packet pipeline by using an optimized synchronous poll mode interrupt handling routine instead of processing network packets based on the existing asynchronous interrupt.

도 2에 Poll Mode Driver의 구체적인 실시 예 아키텍처가 도시되어 있다.2 shows a specific embodiment architecture of the Poll Mode Driver.

도 2에서, rte_timer는 Timer 기능을 수행한다 EAL에서 제공되는 타이머 인터페이스 기반으로 DPDK 실행 단위로 타이머 서비스를 제공한다. rte_malloc는 hugepages에 메모리 할당 기능을 수행하고, rte_mempool은 메모리에 있는 객체의 풀을 할당하는 기능을 수행하며, rte_eal + libc은 응용 프로그램 로딩, 메모리 할당, 시간 인터페이스, PCI 접근 및 로딩을 지원하는 기능을 수행한다. 아울러 rte_mbuf는 IP 트래픽 및 메시지 데이터 패킷의 버퍼를 지원하는 기능을 수행하며, rte_ring은 크기가 고정된 객체를 저장하거나 코어 사이의 통신을 허용하는 FIFO를 고정하는 기능을 수행한다.In FIG. 2, rte_timer performs a Timer function. Based on a timer interface provided by EAL, a timer service is provided in a DPDK execution unit. rte_malloc performs memory allocation for hugepages, rte_mempool allocates a pool of objects in memory, and rte_eal + libc supports application loading, memory allocation, time interface, PCI access and loading. Perform. In addition, rte_mbuf performs a function of supporting a buffer of IP traffic and message data packets, and rte_ring stores a fixed object or fixes a FIFO that allows communication between cores.

이상 본 발명자에 의해서 이루어진 발명을 상기 실시 예에 따라 구체적으로 설명하였지만, 본 발명은 상기 실시 예에 한정되는 것은 아니고 그 요지를 이탈하지 않는 범위에서 여러 가지로 변경 가능한 것은 이 기술분야에서 통상의 지식을 가진 자에게 자명하다.The invention made by the present inventors has been described in detail according to the above embodiment, but the present invention is not limited to the above embodiment and can be changed in various ways without departing from the gist thereof. It is obvious to those who have it.

Claims (2)

데이터 플랜 라이브러리(Data Plane Library); 및
상기 데이터 플랜 라이브러리를 이용하여 패킷 처리를 수행하는 NIC 드라이버를 포함하는 것을 특징으로 하는 모바일 엣지 컴퓨팅을 위한 데이터처리장치.
Data Plane Library; And
And a NIC driver that performs packet processing using the data plan library.
청구항 1에서, 상기 데이터 플랜 라이브러리는 메모리에서 객체들의 풀을 할당하는 기능을 수행하는 메모리 매니저(Memory Manager); OS가 버퍼를 할당하고 해제하는데 보내는 시간을 줄이기 위해, 메모리 풀에 저장되는 고정 길이의 버퍼들을 사전할당하여 관리하는 버퍼 매니저(Buffer Manager); 서로 다른 소프트웨어 요소들이 네트워크 패킷을 병렬 처리할 때 불필요한 대기시간이 발생하지 않도록 하기 위해 안전한 lockless Queue를 구현하는 큐 매니저(Queue Manager); Intel 스트리밍 SIMD 확장 기술을 사용하여 네트워크 패킷 헤더에 대한 hash 정보를 생성하여, 네트워크 패킷들이 동일 flow에 할당되어 고속처리되도록 하는 Flow Classification; 동기식 폴 모드 인터럽트 처리 루틴을 사용하여 패킷 파이프 라인 속도를 높이는 Poll Mode Driver를 포함하는 것을 특징으로 하는 모바일 엣지 컴퓨팅을 위한 데이터처리장치.

The method according to claim 1, The data plan library is a memory manager for performing a function of allocating a pool of objects in memory (Memory Manager); A buffer manager for pre-allocating and managing fixed-length buffers stored in a memory pool in order to reduce the time that the OS spends in allocating and freeing buffers; A queue manager that implements a secure lockless queue to prevent unnecessary latency when different software elements process network packets in parallel; Flow classification to generate hash information for a network packet header using Intel streaming SIMD extension technology so that network packets are allocated to the same flow and processed at high speed; And a Poll Mode Driver for increasing the packet pipeline speed using a synchronous poll mode interrupt processing routine.

KR1020180165149A 2018-12-19 2018-12-19 Data processing apparatus for mobile edge computing KR20200080416A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180165149A KR20200080416A (en) 2018-12-19 2018-12-19 Data processing apparatus for mobile edge computing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180165149A KR20200080416A (en) 2018-12-19 2018-12-19 Data processing apparatus for mobile edge computing

Publications (1)

Publication Number Publication Date
KR20200080416A true KR20200080416A (en) 2020-07-07

Family

ID=71602830

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180165149A KR20200080416A (en) 2018-12-19 2018-12-19 Data processing apparatus for mobile edge computing

Country Status (1)

Country Link
KR (1) KR20200080416A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113515333A (en) * 2021-04-25 2021-10-19 山东新一代信息产业技术研究院有限公司 Remote desktop system based on cloud edge-side architecture
WO2022087177A1 (en) * 2020-10-20 2022-04-28 L3Vel, Llc Edge computing platform based on wireless mesh architecture

Non-Patent Citations (12)

* Cited by examiner, † Cited by third party
Title
미국 공개특허 US 2005-0071496(2005.03.31. 공개)(PRE-DELIVERY OF CONTENT TO DEVICES)
미국 공개특허 US 2013-0191499(2013.07.25. 공개)(Multi-domain configuration handling in an edge network server)
미국 등록특허 US 6891842(2005.05.10. 등록)(System and method for enabling mobile edge services)
미국 등록특허 US 7237071(2007.06.26. 등록)(Micronode in a satellite based content delivery system)
미국 등록특허 US 7600025(2009.10.06. 등록)(Extending an internet content delivery network into an enterprise)
미국 등록특허 US 8243596(2012.08.14. 등록)(Distributing intelligence across networks)
미국 등록특허 US 9088344(2015.08.04. 등록)(Cloud-edge topologies)
미국 등록특허 US 9088577(2015.07.21. 등록)( Multimedia aware cloud for mobile device computing)
미국 등록특허 US 9088634(2015.07.21. 등록)(Dynamic media transcoding at network edge)
유럽 공개특허 2063598(2009.05.27. 공개)(PRE-DELIVERY OF CONTENT TO DEVICES)
유럽 공개특허 2973352(2016.01.20. 공개)(PRE-DELIVERY OF CONTENT TO DEVICES)
유럽 등록특허 1269714(2006.08.30. 등록)(METHOD AND DEVICE FOR DISTRIBUTED CACHING)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022087177A1 (en) * 2020-10-20 2022-04-28 L3Vel, Llc Edge computing platform based on wireless mesh architecture
US11595850B2 (en) 2020-10-20 2023-02-28 L3Vel, Llc Edge computing platform based on wireless mesh architecture
CN113515333A (en) * 2021-04-25 2021-10-19 山东新一代信息产业技术研究院有限公司 Remote desktop system based on cloud edge-side architecture
CN113515333B (en) * 2021-04-25 2023-06-20 山东新一代信息产业技术研究院有限公司 Remote desktop system based on cloud edge end architecture

Similar Documents

Publication Publication Date Title
WO2020228469A1 (en) Method, apparatus and system for selecting mobile edge computing node
WO2020228505A1 (en) Method, device, and system for selecting mobile edge computing node
US10700979B2 (en) Load balancing for a virtual networking system
US10411956B2 (en) Enabling planned upgrade/downgrade of network devices without impacting network sessions
US8739244B1 (en) Configuring and authenticating WAN optimization devices for accessing content delivery networks
JP6388609B2 (en) Quantization congestion notification in virtual networking systems
CN102263828B (en) Load balanced sharing method and equipment
US20150333930A1 (en) Dynamic service function chaining
US20160191600A1 (en) Methods and systems for an end-to-end solution to deliver content in a network
US20130144984A1 (en) Systems and Methods for Connection Pooling for Video Streaming in Content Delivery Networks
US11095716B2 (en) Data replication for a virtual networking system
US20210243227A1 (en) Detecting attacks using handshake requests systems and methods
CN102067094A (en) Cache optimzation
US20180091631A1 (en) Systems and methods for writing prioritized http/2 data to a socket buffer
US20160191296A1 (en) Methods and systems for an end-to-end solution to deliver content in a network
US11102114B2 (en) Method, apparatus, and computer-readable storage medium for network optimization for accessing cloud service from on-premises network
CN103455439A (en) Local caching device, system and method for providing content caching service
US20200112510A1 (en) Redirecting data packets between overlay network and underlay network
EP3529919B1 (en) Distributed gateways with centralized data center for high throughput satellite (hts) spot beam network
KR20200080416A (en) Data processing apparatus for mobile edge computing
US10887236B2 (en) Method, network interface card, and computer program product for load balance
CN112491066A (en) Load balancing method, device and system, target load balancing equipment and medium
Ivanisenko Methods and Algorithms of load balancing
US20090106395A1 (en) Satellite Data Network Acceleration
US20230171286A1 (en) Bridging between client and server devices using proxied network metrics

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application