KR101954306B1 - 패킷 처리 장치 및 방법 - Google Patents

패킷 처리 장치 및 방법 Download PDF

Info

Publication number
KR101954306B1
KR101954306B1 KR1020160075336A KR20160075336A KR101954306B1 KR 101954306 B1 KR101954306 B1 KR 101954306B1 KR 1020160075336 A KR1020160075336 A KR 1020160075336A KR 20160075336 A KR20160075336 A KR 20160075336A KR 101954306 B1 KR101954306 B1 KR 101954306B1
Authority
KR
South Korea
Prior art keywords
packet
group
processing
control unit
packets
Prior art date
Application number
KR1020160075336A
Other languages
English (en)
Other versions
KR20170142072A (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 KR1020160075336A priority Critical patent/KR101954306B1/ko
Publication of KR20170142072A publication Critical patent/KR20170142072A/ko
Application granted granted Critical
Publication of KR101954306B1 publication Critical patent/KR101954306B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • 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
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6522Intended application, e.g. transmission or communication standard
    • H03M13/6552DVB-T2
    • 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/38Flow control; Congestion control by adapting coding or compression rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 빌명은 패킷 처리 장치 및 방법에 관한 것 이다. 본 발명의 제1 측면에 따르면, 본 발명의 실시예에 따른 이종 시스템에서 패킷을 처리 하는 장치는, 수신된 각각의 패킷을 적용 알고리즘에 따라 그룹핑하고, 그룹핑된 패킷 그룹을 패킷 그룹 수집을 위한 제1 그룹 및 패킷 그룹 처리를 위한 제2 그룹 중 적어도 하나의 그룹으로 그룹핑하는 제1 제어부 및 제1 제어부의 제어에 기초하여, 제2 그룹의 패킷 그룹을 각각 개별적으로 처리하는 제2 제어부를 포함하여, 효율적으로 패킷을 처리할 수 있게 한다.

Description

패킷 처리 장치 및 방법{APPARATUS FOR PROCESSING PACKET AND METHOD THEREOF}
본 발명은 패킷 처리 장치 및 방법에 관한 것이다. 보다 상세하게는 이종 시스템 환경에서 패킷을 처리하는 장치 및 방법에 관한 것이다.
최근 들어, 일반적인 데스크톱에도 고성능 컴퓨팅을 위한 쿼드 혹은 헥사 코어 이상의 CPU (Central Processing Unit)가 장착되어 있다. 또한, 그래픽 처리뿐만 아니라 일반적인 계산까지 가능한 GPU (Graphics Processing Unit)도 CUDA (Compute Unified Device Architecture)나 OpenCL (Open Computing Language)을 이용하여 고성능 컴퓨팅을 처리할 수 있게 되었다.
또한 최근에는 이러한 CPU 및 GPU 등의 복수의 컴퓨팅 장치가 상호 협력하여 동작을 수행하는 이종 시스템(이종 컴퓨팅 시스템) 환경에 대한 연구가 활발히 진행되고 있으며, 그 중에서도 CPU 및 GPU가 하나의 칩에 탑재되는 이종 멀티코어 프로세서(Heterogeneous Multicore Processor)가 등장하여 각광받고 있다.
이러한 이종 시스템이 효율적으로 동작하기 위해서는 CPU 및 GPU간의 협업이 중요하다. 이와 관련한 종래기술로는 한국 등록특허 제10-144263호가 있다.
특히 이종 시스템을 효율적으로 동작시키기 위해서는 워크 그룹을 효율적으로 스케쥴링 하는 것이 중요하다. 예를 들어 네트워크 패킷을 암호화 하는 경우 각각의 패킷을 GPU 내의 각각의 CU(Compute Unit)에 어떻게 배분할 것인지가 중요하다.
이와 관련하여 최근에는 워크 그룹을 효율적으로 분배하고, 처리하는 장치 및 방법이 요구되고 있는 실정이다.
한편, 전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.
본 발명의 일실시예는 패킷 처리 장치 및 방법을 제공하는데 목적이 있다. 보다 상세하게는 적용 알고리즘 별로 그룹핑 된 패킷 그룹을 각각 처리하여 패킷 처리의 효율을 높일 수 있는 패킷 처리 장치 및 방법을 제공하는데 목적이 있다. 또한 패킷 그룹의 그룹핑 위치를 나누고, 나눠진 그룹핑 위치 별로 별개의 동작을 수행시켜 패킷 처리 효율을 높일 수 있는 패킷 처리 장치 및 방법을 제공하는데 목적이 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따르면, 이종 시스템에서 패킷을 처리 하는 장치는, 수신된 각각의 패킷을 적용 알고리즘에 따라 그룹핑하고, 그룹핑된 패킷 그룹을 패킷 그룹 수집을 위한 제1 그룹 및 패킷 그룹 처리를 위한 제2 그룹 중 적어도 하나의 그룹으로 그룹핑하는 제1 제어부 및 상기 제1 제어부의 제어에 기초하여, 상기 제2 그룹의 패킷 그룹을 각각 개별적으로 처리하는 제2 제어부를 포함한다.
본 발명의 제 2 측면에 따르면, 이종 시스템에서 패킷을 처리 하는 장치가 패킷을 처리하는 방법은 제1 제어부가 수신된 각각의 패킷을 적용 알고리즘에 따라 그룹핑하고, 그룹핑된 패킷 그룹을 패킷 그룹 수집을 위한 제1 그룹 및 패킷 그룹 처리를 위한 제2 그룹 중 적어도 하나의 그룹으로 그룹핑하는 단계 및 제2 제어부가 상기 제1 제어부의 제어에 기초하여, 상기 제2 그룹의 패킷 그룹을 각각 개별적으로 처리하는 단계를 포함한다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 본 발명의 일실시예는 패킷 처리 장치 및 방법을 제공할 수 있다.
또한, 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 적용 알고리즘 별로 그룹핑 된 패킷 그룹을 각각의 처리부가 처리하여 패킷 처리에 효율을 높일 수 있다.
또한, 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 패킷 그룹의 그룹핑 위치를 나누고, 나눠진 그룹핑 위치 별로 별개의 동작을 수행시켜, 패킷 처리에 효율을 높일 수 있다.
또한, 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 제2 그룹에 패킷 그룹이 처리되는 동안, 제1 그룹에 패킷 그룹을 그룹핑하여, 패킷 처리에 효율을 높일 수 있다.
또한, 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 처리 시간이 오래 걸리는 패킷 그룹을 우선적으로 처리하여, 패킷 처리에 효율을 높일 수 있다.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일실시예에 따른 패킷 처리 장치를 설명하기 위한 구성도이다.
도 2는 본 발명의 실시예에 따른 패킷 처리 방법을 설명하기 위한 흐름도이다.
도 3 및 도 4는 본 발명의 실시예에 따른 패킷 처리 방법을 설명하기 위한 참고도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.
먼저 도 1을 참조하여 본 발명의 실시예에 따른 패킷 처리 장치에 대하여 설명한다.
본 발명의 실시예에 따른 패킷 처리 장치는 수신된 패킷을 소정의 기준으로 그룹핑하고, 그룹핑된 패킷 그룹을 분배하는 제1 제어부(100)를 포함한다. 본 발명의 실시예에 따른 패킷은 네트워크 패킷을 포함한다. 한편 본 발명의 실시예에 따른 제1 제어부(100)는 CPU일 수 있다. 제1 제어부(100)는 패킷 처리 장치의 전반적인 동작을 제어할 수 있다.
본 발명의 실시예에 따른 제1 제어부(100)는 각각의 패킷을 각각의 패킷의 적용 알고리즘에 따라 그룹핑할 수도 있다. 본 발명의 일 실시예에 따르면 패킷의 적용 알고리즘은 패킷의 소스 IP 및 목적 IP에 따라 기 설정되어 있을 수 있다. 또한 각각의 패킷의 적용 알고리즘은 소스 맥 주소(MAC address) 및 목적 맥 주소(MAC address)에 따라 기 설정될 수도 있다. 또한 각각의 패킷의 적용 알고리즘은 각각의 패킷에 적용된 보안 프로토콜에 따라 기 설정될 수도 있다.
본 발명의 실시예에 따른 적용 알고리즘은 패킷을 처리하는데 사용되는 알고리즘이다. 적용 알고리즘은 패킷에 따라 같을 수도, 상이할 수도 있다. 또한 처리 형태에 따라 상이할 수 있다. 예를 들어 암호화 및 인증을 수행하기 위한 알고리즘은 서로 상이할 수 있다.
예를 들어 암호화를 위한 알고리즘으로는 3DES-CBC, AES-CBC, AES-CTR, AES-GCM 등이 있으며, 인증을 위한 알고리즘으로는 HMAC-SHA1/SHA2, MD5 등이 있을 수 있다. 그러나 이러한 적용 알고리즘은 실시예에 불과하며 본 발명은 얼마든지 다른 알고리즘의 경우에도 적용이 가능하다.
한편 본 발명의 실시예에 따른 적용 알고리즘은 OpenCL 또는 CUDA 커널 코드 등 다양한 이종 병렬 프로그래밍 언어로 구현 될 수도 있다. 본 명세서에서 패킷 그룹은 제1 제어부(100)의 제어에 기초하여 생성되는 큐일 수도 있으며, 워크 그룹(work group)일 수도 있다.
본 발명의 일 실시예에 따르면 제1 제어부(100)는 패킷이 수신되면, 수신된 패킷의 적용 알고리즘이 무엇인지 판별하고, 해당 적용 알고리즘으로 그룹핑 된 패킷 그룹의 존부를 판단할 수 있다. 이후 제1 제어부(100)는 해당 패킷 그룹이 존재하지 않는 경우, 새로운 패킷 그룹을 만들어 수신된 패킷을 할당할 수도 있다. 또한 본 발명의 실시예에 따른 제1 제어부(100)는 수신된 패킷의 적용 알고리즘으로 그룹핑 된 패킷 그룹이 존재한다고 하더라도, 수신된 패킷의 크기가 패킷 그룹에 기 설정된 크기 범위를 벗어나는 경우, 새로운 패킷 그룹을 만들어 수신된 패킷을 할당할 수도 있다. 본 발명에 실시예에 따르면 제1 제어부(100)는 패킷 그룹을 생성하여 포함된 패킷의 크기 범위를 기 설정할 수도 있다. 본 발명은 패킷 그룹에 포함될 패킷의 크기 범위를 기 설정하여 패킷 그룹 처리 예상 시간을 보다 정확하게 산출할 수 있다.
본 발명의 일 실시예에 따른 제1 제어부(100)는 패킷 그룹을 제1 그룹 및 제2 그룹 중 적어도 하나의 그룹으로 그룹핑할 수 있다. 여기서 제1 그룹은 패킷 그룹 수집을 위한 그룹이며, 제2 그룹은 패킷 그룹 처리를 위한 그룹일 수 있다.
한편 제1 제어부(100)는 패킷 그룹이 생성되면, 제1 그룹으로 그룹핑할 수 있다.
또한 제1 제어부(100)는 제2 그룹의 패킷 그룹을 제2 제어부(300)가 처리할 수 있도록 제어할 수 있다. 제1 제어부(100)는 제2 제어부(300)가 제2 그룹의 패킷 그룹을 처리할 때, 새롭게 생성된 패킷 그룹을 제1 그룹에 추가시켜 그룹핑할 수도 있다.
본 발명의 실시예에 따르면, 특정 그룹에 포함된 패킷 그룹을 처리함과 동시에 생성된 패킷 그룹을 그룹핑하여 패킷 처리에 대한 효율을 높일 수 있다. 다시 말해 본 발명은, 패킷 그룹의 패킷 처리와 동시에 패킷 그룹 수집 또는 분류를 함으로써, 패킷 그룹 그룹핑과 패킷 그룹 처리를 이시에 하는 경우보다 빠르게 패킷을 처리할 수 있다.
또한 제1 제어부(100)는 소정의 기준에 따라 제1 그룹에 포함된 패킷 그룹을 제2 그룹으로 그룹핑할 수 있다. 즉 제1 그룹에 포함된 패킷 그룹의 그룹핑 위치를 제2 그룹으로 변경시킬 수도 있다.
본 발명의 실시예에 따르면 제1 제어부(100)는 제2 제어부(300)가 분배된 패킷 그룹을 모두 처리한 경우, 제1 그룹에 포함된 패킷 그룹을 제2 그룹으로 그룹핑할 수도 있다. 이후 제1 그룹에 포함되어 있던 패킷 그룹이 처리되기 시작하면 제1 제어부(100)는 생성된 패킷 그룹을 제1 그룹으로 그룹핑할 수 있다. 본 발명의 실시예에 따르면, 생성된 패킷 그룹은 이상에서 설명한 과정을 통해 제1 그룹으로 최초 그룹핑되고, 이후 제2 그룹으로 그룹핑 위치가 변경되며, 제2 제어부(300)에 분배되어 처리된다.
한편 본 발명의 실시예에 따른 제2 제어부(300)는 커널 단위로 분배된 패킷 그룹을 처리할 수도 있다. 한편 제1 제어부(100)는 제2 제어부(300)가 패킷 처리를 종료하면, 즉 제2 그룹의 패킷 처리가 종료되면 제1 그룹에 포함된 패킷 그룹을 제2 그룹으로 그룹핑할 수도 있다.
또한 본 발명의 실시예에 따른 제1 제어부(100)는 소정의 기준에 따라 제2 그룹에 그룹핑된 패킷 그룹의 처리에 대한 처리 일정을 스케쥴링을 할 수도 있다. 이때 제1 제어부(100)는 제2 그룹에 패킷 그룹 중 처리 시간이 긴 패킷 그룹이 우선적으로 처리될 수 있도록 스케쥴링할 수도 있다.
본 발명은 패킷 그룹 중 처리 시간이 긴 패킷 그룹을 우선적으로 처리함으로써, 보다 효율적으로 패킷을 처리할 수 있다. 처리 시간이 긴 패킷 그룹을 우선적으로 처리하는 것에 관해서는 아래에서 상세하게 설명하겠다.
본 발명의 실시예에 따르면 제1 제어부(100)는 각각의 패킷 그룹의 처리 예상시간을 산출할 수 있다. 패킷 그룹의 처리 시간은 패킷 그룹에 설정된 크기 범위 및 패킷 그룹에 적용되는 적용 알고리즘에 기초한다. 제1 제어부(100)는 각각의 패킷 그룹에 설정된 크기 범위 및 적용 알고리즘에 기초하여 각각의 패킷 그룹의 처리 예상시간을 산출할 수 있다. 여기서 패킷 그룹에 설정된 크기 범위는 패킷 그룹에 포함되는 패킷의 크기(길이)의 범위 일 수 있다.
본 발명의 실시예에 따른 패킷 처리 장치는 수신된 패킷을 저장하는 메모리(200)를 포함한다. 수신된 패킷은 메모리(200)에 큐(queue)로 저장될 수 있다. 또한 메모리(200)에는 패킷 처리 장치의 구동을 위한 프로그램 및 패킷 처리 장치로 입력되거나, 패킷 처리 장치가 출력할 데이터가 저장될 수도 있다.
본 발명의 일 실시예에 따르면, 제1 제어부(100) 및 아래서 설명할 제2 제어부(300)는 메모리(200)의 주소 공간을 공유할 수 있다. 따라서 본 발명의 일실시예에 따르면 제1 제어부(100) 및 제2 제어부(300) 사이에 데이터 전송을 줄여 패킷 처리 장치의 효율을 높일 수 있다. 본 발명은 제2 제어부(300)가 제1 제어부(100)와 독립적으로 배치된 경우에도 하드웨어적으로 또는 소프트웨어적으로 제1 제어부(100)와 메모리를 공유하는 경우라면 적용이 가능하다. 한편 제1 제어부(100) 및 제2 제어부(300)의 메모리 공유는 패킷 처리의 효율을 높이기 위한 구성일 뿐이어서, 제1 제어부(100) 및 제2 제어부(300)가 메모리를 공유하지 않은 경우에도 이하에서 설명할 내용의 적용이 가능하다.
제2 제어부(300)는 제1 제어부(100)의 제어를 받아 패킷을 처리한다. 제2 제어부(300)는 하나 이상의 처리부(310)를 포함할 수 있다. 각각의 처리부(310)는 제1 제어부(100)에서 분배된 패킷을 처리한다. 각각의 처리부(310)는 분배된 패킷을 병렬적으로 처리할 수 있다. 본 발명의 실시예에 따르면 제1 제어부(100)는 패킷 그룹 단위로 각각의 처리부(310)에 패킷을 분배할 수 있다. 본 발명의 실시예에 따른 제2 제어부(300)는 제1 제어부(100)의 동작을 보조하는 보조 처리 장치일 수 있으며, 대표적인 실시예로 GPU일 수 있다. 또한 본 발명의 실시예에 따른 처리부(310)는 CU 이거나 SM(Streaming Multiprocessor) 일 수도 있다.
한편 각각의 처리부(310)는 각각의 패킷 그룹을 분배 받아, 각각의 패킷 그룹 그룹핑의 기초가 되는 적용 알고리즘으로 패킷 그룹의 패킷을 처리한다.
또한 도 1에서는 설명의 편의를 위해, 제2 제어부(300)가 제1 제어부(100)와 동일한 구성에 포함되어 있는 것으로 도시되어 있으나, 본 발명은 이에 한정되지 않는다. 즉 제1 제어부(100) 및 제2 제어부(300)가 별도로 분리되어 구성된 경우에도, 제1 제어부(100) 및 제2 제어부(300)가 상호간 협력하여 동작을 수행하는 경우에는 본 발명의 적용이 가능하다.
본 발명의 실시예에 따르면 패킷 처리의 실시예로 패킷의 암호 처리를 들 수 있다. 패킷의 암호 처리는 패킷 전처리, 패킷 암호화, 패킷 인증 및 패킷 후처리 단계를 거쳐 수행된다.
특히 본 발명은 제1 제어부(100) 및 제2 제어부(300)가 포함된 이종 시스템을 이용하여 이용하여 IPSec(Internet Protocol Security)과 SSL(Secure Socket Layer)의 암호화 또는 인증을 가속화할 수 있다.
인증 및 보안이 필요한 IPSec 및 SSL에서, 본 발명은 패킷의 암호화 또는 인증을 별도의 보조 처리 장치인 제2 제어부(300)가 맡아 처리하므로 암호화 또는 인증에 효율을 높일 수 있다.
다음은 도 2 내지 도 4를 참조하여 본 발명의 실시예에 따른 패킷 처리 방법을 설명하겠다.
도 2는 본 발명의 실시예에 따른 패킷 처리 방법을 설명하기 위한 흐름도이고, 도 3 및 도 4는 본 발명의 실시예에 따른 패킷 처리 방법을 설명하기 위한 참고도이다.
도 2에 도시된 실시예에 따른 패킷 처리 방법은 도 1에 도시된 장치에서 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하에서 생략된 내용이라고 하더라도 도 1에 도시된 장치에 관하여 이상에서 기술한 내용은 도 2에 도시된 실시예에 따른 패킷 처리 방법에도 적용될 수 있다.
제1 제어부(100)는 수신된 각각의 패킷을 패킷 그룹으로 그룹핑한다(S201).
제1 제어부(100)는 수신된 각각의 패킷의 적용 알고리즘별로 패킷 그룹으로 그룹핑한다. 패킷의 적용 알고리즘은 패킷의 소스 IP 및 목적 IP에 따라 기 설정되어 있을 수 있으며, 소스 IP 및 목적 IP와 매칭되어 테이블 형태로 기 저장되어 있을 수도 있다. 또한 각각의 패킷의 적용 알고리즘은 소스 맥 주소(MAC address) 및 목적 맥 주소(MAC address)에 따라 기 설정될 수도 있다. 또한 각각의 패킷의 적용 알고리즘은 각각의 패킷에 적용된 보안 프로토콜에 따라 기 설정될 수도 있다.
도 3 을참조하여 제1 제어부(100)가 패킷을 그룹핑하는 것을 설명하겠다.
도 3을 참조하면, 수신된 패킷은 메모리(200)에 수신 큐의 형태로 저장될 수 있다.
제1 제어부(100)는 수신된 패킷의 소스 IP 및 목적 IP를 검출하고, 소스 IP 및 목적 IP에 기초하여 해당 패킷의 적용 알고리즘을 판별한다. 이상에서 설명한 바와 같이 제1 제어부(100)는 수신된 패킷의 소스 맥 주소(MAC address) 및 목적 맥 주소(MAC address)에 기초하여 해당 패킷의 적용 알고리즘을 판별할 수도 있으며, 수신된 패킷의 보안 프로토콜에 기초하여 적용 알고리즘을 판별할 수도 있다. 패킷 1의 적용 알고리즘이 제1 알고리즘인 경우, 제1 제어부(100)는 패킷 1을 제1 알고리즘 적용 패킷 그룹에 할당한다. 또한 패킷 2의 적용 알고리즘이 제2 알고리즘인 경우, 제1 제어부(100)는 패킷 2를 제2 알고리즘 적용 패킷 그룹에 할당한다.
만일 패킷 3의 적용 알고리즘이 제3 알고리즘인 경우, 도 3에 도시된 바와 같이 제3 알고리즘 적용 패킷 그룹이 없는 경우, 제1 제어부(100)는 제3 알고리즘 적용 패킷 그룹을 생성하고, 패킷 3을 제3 알고리즘 적용 패킷 그룹에 할당한다.
만일 패킷 1을 제1 알고리즘 적용 패킷 그룹에 할당할 시, 제1 알고리즘 적용 패킷 그룹에서 설정된 크기 범위가 기 설정치를 벗어나는 경우, 제1 제어부(100)는 별도의 제1 알고리즘 적용 패킷 그룹을 생성하고 패킷 1을 별도로 생성된 제1 알고리즘 적용 패킷 그룹에 할당할 수 있다.
상기와 같은 방식으로 제1 제어부(100)는 각각의 패킷을 각각의 패킷 그룹에 할당하는 방식으로 각각의 패킷을 그룹핑할 수 있다.
다시 도 2를 참조하여 본 발명의 실시예에 따른 패킷 처리 방법을 설명한다. 또한 이하에서는 도 4를 추가적으로 참조하여, 본 발명의 실시예에 따른 패킷 처리 방법을 설명하도록 하겠다.
제1 제어부(100)는 패킷 그룹을 제1 그룹(410)으로 그룹핑할 수 있다(S203). 도 4에는 패킷 그룹을 제1 그룹(410)으로 그룹핑하는 것이 도시되어 있다. 본 발명의 일 실시예에 따르면 제1 제어부(100)는 패킷 그룹을 생성 순서에 따라 순차적으로 제1 그룹(410)에 포함시킬 수도 있다.
S203과 동시에 제1 제어부(100)는 현재 제2 그룹(420)에 포함된 패킷 그룹을 제2 제어부(300)에 분배할 수 있다(S205).
제1 제어부(100)는 제2 그룹(420)에 포함되어 있는 각각의 패킷 그룹을 각각의 제2 제어부(300)의 처리부(310)에 분배할 수 있다. 본 발명의 실시예에 따른 제1 제어부(100)는 패킷 그룹 단위로 처리부(310)에게 패킷을 분배할 수 있다.
도 4를 참조하면, 제1 제어부(100)는 제2 그룹(420)에 각각의 패킷 그룹을 각각의 처리부(310)가 처리 할 수 있도록 분배할 수도 있다.
본 발명은 각각의 처리부(310)가 패킷 그룹 단위로 패킷을 처리하여, 효율적인 패킷 처리가 가능하다.
하나의 처리부(310)가 복수의 패킷을 처리하는 것을 예를 들어 설명하면, 처리부(310)가 각각의 패킷을 처리함에 있어서 각각 적용 알고리즘을 달리하며 패킷을 처리하는 경우, 다이버전스(divergence)가 발생되어 처리부(310)의 성능 저하가 발생하게 된다. 본 발명은 동일한 알고리즘이 적용되는 패킷 그룹 단위로 패킷을 처리하므로 성능 저하 없이 패킷을 처리할 수 있다.
한편 본 발명의 일 실시예에 따르면 제1 제어부(100)는 각각의 처리부(310)가 각각의 패킷 그룹의 중 크기가 유사한(크기의 차가 소정의 범위 이내인) 패킷을 함께 처리할 수 있도록 각각의 패킷을 각각의 패킷 그룹에 분배할 수 있다. 함께 처리되는 패킷의 크기가 차이가 날 경우 다이버전스가 발생하여 처리부(310)의 성능 저하가 발생할 수 있다.
한편 본 발명의 일 실시예에 따르면 제1 제어부(100)는 각각의 패킷 그룹에서 설정된 크기 범위 및 적용 알고리즘에 기초하여 각각의 패킷 그룹의 처리 예상시간을 산출하고, 가장 긴 처리 예상시간에 맞춰 패킷이 처리되도록 복수의 패킷 그룹을 하나의 처리부(310)에 분배할 수도 있다. 예를 들어 제1 제어부(100)는 제1 처리부(310)에 분배된 제1 패킷 그룹의 처리 시간이 3초인 경우, 제2 처리부(310)에 처리 시간이 1초인 제2 패킷 그룹과 처리 시간이 2초인 제3 패킷 그룹이 순차적으로 처리되도록 분배할 수 있다. 본 발명은 이러한 방식을 통해 각각의 처리부(310)가 계속적으로 패킷 그룹을 처리하게 할 수 있다.
또한 본 발명의 실시예에 따른 제1 제어부(100)는 패킷 그룹의 처리 일정에 대해서 스케쥴링할 수도 있다. 제1 제어부(100)는 제2 그룹(420)에 패킷 그룹 중 우선적으로 처리될 패킷 그룹을 선별할 수 있으며, 선별된 패킷 그룹이 우선적으로 처리되도록 할 수 있다. 즉 제1 제어부(100)는 소정의 기준에 따라 선별된 패킷이 우선적으로 처리부(310)에 분배되도록 조정할 수도 있다.
제2 제어부(300)는 분배된 패킷 그룹의 패킷을 처리한다(S207). 본 발명의 실시예에 따르면 제2 제어부(300)는 커널 단위로 분배된 패킷 그룹을 처리할 수도 있다. 1 제어부(100)는 제2 제어부(300)가 패킷 처리를 종료하면, 즉 제2 그룹의 패킷 처리가 종료되면 제1 그룹에 포함된 패킷 그룹을 제2 그룹으로 그룹핑할 수도 있다.
제2 제어부(300)의 각각의 처리부(310)는 각각의 패킷 그룹을 분배 받아, 각각의 패킷 그룹 그룹핑의 기초가 되는 알고리즘으로 패킷 그룹의 패킷을 처리한다.
패킷 그룹의 처리 일정에 대한 스케쥴링에 대해서 다시 설명하면, 본 발명의 일 실시예에 따른 제1 제어부(100)는 패킷 그룹의 처리 시간이 긴 패킷 그룹이 우선적으로 처리될 수 있도록 패킷 그룹의 처리 일정을 스케쥴링할 수도 있다.
본 발명의 실시예에 따르면, 본 발명은 처리 시간이 긴 패킷 그룹을 우선적으로 처리시켜 보다 효율적으로 패킷을 처리할 수 있다.
이에 대해서 구체적으로 설명하면, 패킷을 처리할 수 있는 처리부(310)가 2개이고, 각각 10분, 5분, 2분, 및 7분의 처리 시간이 걸리는 패킷 그룹이 제2 그룹(420)에 그룹핑되어 있다고 가정하면, 제1 제어부(100)는 처리 시간이 10분 및 7분인 패킷 그룹부터 처리부(310)에 분배하여 처리되도록 할 수 있다.
만일 처리부(310)가 각각 10분, 5분, 2분, 및 7분의 처리 시간이 걸리는 패킷 그룹을 순차적으로 처리하는 경우, 제1 처리부(310)가 10분의 처리 시간이 걸리는 패킷 그룹을 처리하는 동안, 또 다른 하나의 제2 처리부(310)가 5분, 2분, 및 7분의 처리 시간이 걸리는 패킷 그룹을 처리하게 되므로, 모든 패킷 그룹을 처리하는데 총 14분이 소요될 수 있다.
그러나, 처리부(310)가 처리 시간이 긴 패킷 그룹부터 처리하는 경우, 제1처리부(310)는 10분의 처리 시간이 걸리는 패킷 그룹을 처리하게 되고, 제2 처리부(310)는 7분의 처리 시간이 걸리는 패킷 그룹을 처리하게 된다, 7분의 처리 시간이 걸리는 패킷 그룹에 대해서 처리가 끝난 경우, 제2처리부(310)는 계속하여 5분의 처리 시간이 걸리는 패킷 그룹을 처리하게 된다. 10분의 처리 시간이 걸리는 패킷 그룹을 처리하던 제1 처리부(310)는 10분의 처리 시간이 걸리는 패킷 그룹의 처리가 끝나면 2분의 처리 시간이 걸리는 패킷 그룹을 처리하게 된다. 이 경우 모든 패킷 그룹을 처리하는데 총 12분이 소요될 수 있다.
이상에서 비교 설명한 바와 같이, 패킷 그룹 중 처리 시간이 오래 걸리는 패킷 그룹부터 우선적으로 처리하는 경우 보다 빠르게 패킷의 처리가 가능하다. 본 발명은 상기 방식을 통해 패킷 처리를 보다 효율적으로 수행할 수 있다.
제1 제어부(100)는 제2 그룹(420)에 포함된 패킷 그룹이 모두 처리된 경우, 현재 제1 그룹(410)에 포함된 패킷 그룹의 그룹핑 위치를 제2 그룹(420)으로 변경시킬 수도 있다(S209). 또한 본 발명의 실시예에 따른 제1 제어부(100)는 커널의 실행이 종료되면, 제1 그룹(410)에 포함된 패킷 그룹의 그룹핑 위치를 제2 그룹(420)으로 변경시킬 수도 있다. 본 발명의 실시예에 따른 제1 제어부(100)는 패킷이 계속 수신 중인지 판단할 수 있다(S211). 제1 제어부(100)는 계속 패킷이 수신되는 경우, 수신된 패킷을 패킷 그룹으로 그룹핑할 수 있다.
본 실시예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 CPU 및 GPU와 같은 프로세서, FPGA(field programmable gate array) 또는 ASIC 등과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램특허 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다.
구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로부터 분리될 수 있다.
본 발명의 실시예에 따르면 패킷 처리의 실시예로 패킷의 암호 처리를 들 수 있다. 패킷의 암호 처리는 패킷 전처리, 패킷 암호화, 패킷 인증 및 패킷 후처리 단계를 거쳐 수행된다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: 제1 제어부 200: 메모리
300: 제2 제어부 310: 처리부

Claims (18)

  1. 이종 시스템에서 패킷을 처리 하는 장치에 있어서,
    수신된 각각의 패킷을 적용 알고리즘에 따라 그룹핑하고, 그룹핑된 패킷 그룹을 패킷 그룹 수집을 위한 제1 그룹 및 패킷 그룹 처리를 위한 제2 그룹 중 적어도 하나의 그룹으로 그룹핑하는 제1 제어부; 및
    상기 제1 제어부의 제어에 기초하여, 상기 제2 그룹의 패킷 그룹을 각각 개별적으로 처리하는 제2 제어부를 포함하고,
    상기 제1 제어부는,
    수신된 제1 패킷의 소스IP 및 목적 IP, 각각의 패킷의 소스 맥 주소 및 목적 맥 주소 및 각각의 패킷의 보안 프로토콜 중 적어도 하나에 기초하여 상기 제 1 패킷에 적용된 알고리즘을 판별하고, 판별된 상기 제1 패킷의 적용 알고리즘에 기초하여 그룹핑 된 패킷 그룹이 존재하지 않거나 상기 제1 패킷이 상기 제1 패킷에 적용 알고리즘에 기초하여 그룹핑 된 패킷 그룹에 기 설정된 크기 범위를 벗어나는 경우, 새로운 패킷 그룹을 생성하여 상기 제1 패킷을 할당하고, 각각의 패킷 그룹에서 설정된 크기 범위 및 적용 알고리즘에 기초하여 각각의 패킷 그룹의 처리 예상시간을 산출하고, 상기 제2 그룹에 포함된 패킷 그룹 중 처리 예상시간이 긴 패킷이 우선적으로 처리될 수 있도록 패킷 그룹 처리 일정을 스케쥴링하는, 패킷 처리 장치.
  2. 제1항에 있어서,
    상기 제1 제어부는,
    소정의 기준에 따라, 상기 제1 그룹에 포함된 패킷 그룹의 그룹핑 위치를 상기 제2 그룹으로 변경시키는, 패킷 처리 장치.
  3. 제1항에 있어서,
    상기 제1 제어부는,
    상기 제2 그룹의 패킷 처리가 종료되면, 상기 제1 그룹에 포함된 패킷 그룹의 그룹핑 위치를 상기 제2 그룹으로 변경시키는, 패킷 처리 장치.
  4. 제1항에 있어서,
    상기 제1 제어부는,
    상기 제2 제어부가 상기 제2 그룹의 패킷 그룹을 처리하는 동안, 새롭게 그룹핑된 패킷 그룹을 제1 그룹으로 그룹핑하는, 패킷 처리 장치.
  5. 삭제
  6. 삭제
  7. 삭제
  8. 제1항에 있어서,
    상기 제2 제어부는,
    각각의 패킷을 병렬적으로 처리하는 복수의 처리부를 포함하고,
    각각의 처리부는 각각의 패킷 그룹을 분배 받아, 각각의 패킷 그룹의 패킷을 처리하는, 패킷 처리 장치.
  9. 제8항에 있어서,
    상기 제1 제어부는,
    각각의 패킷 그룹을 각각의 처리부에 분배하는, 패킷 처리 장치.
  10. 제8항에 있어서,
    상기 제1 제어부는,
    각각의 처리부가 크기가 유사한 각각의 패킷을 함께 처리할 수 있도록 상기 제2 그룹에 포함된 패킷 그룹의 처리 일정을 스케쥴링하는, 패킷 처리 장치.
  11. 삭제
  12. 이종 시스템에서 패킷을 처리 하는 장치가 패킷을 처리하는 방법에 있어서,
    제1 제어부가 수신된 각각의 패킷의 소스IP 및 목적 IP, 각각의 패킷의 소스 맥 주소 및 목적 맥 주소 및 각각의 패킷의 보안 프로토콜 중 적어도 하나에 기초하여 각각의 패킷에 적용된 알고리즘을 판별하고, 판별된 각각의 패킷의 적용 알고리즘에 기초하여 그룹핑 된 패킷 그룹이 존재하지 않거나 각각의 패킷이 각각의 패킷에 적용 알고리즘에 기초하여 그룹핑 된 패킷 그룹에 기 설정된 크기 범위를 벗어나는 경우, 새로운 패킷 그룹을 생성하여 적용 알고리즘에 따라 그룹핑하고, 그룹핑된 패킷 그룹을 패킷 그룹 수집을 위한 제1 그룹 및 패킷 그룹 처리를 위한 제2 그룹 중 적어도 하나의 그룹으로 그룹핑하는 단계; 및
    제2 제어부가 상기 제1 제어부의 제어에 기초하여, 상기 제2 그룹의 패킷 그룹을 각각 개별적으로 처리하는 단계를 포함하고,
    상기 패킷을 처리하는 방법은,
    상기 제2 그룹에 포함된 각각의 패킷 그룹에서 설정된 크기 범위 및 적용 알고리즘에 기초하여 각각의 패킷 그룹의 처리 예상시간을 산출하는 단계; 및
    상기 제2 그룹에 포함된 패킷 그룹 중 처리 예상시간이 긴 패킷이 우선적으로 처리될 수 있도록 패킷 그룹 처리 일정을 스케쥴링하는 단계를 더 포함하는, 패킷 처리 방법.
  13. 제12항에 있어서,
    상기 그룹핑하는 단계는,
    상기 제2 그룹의 패킷 처리가 종료되면, 상기 제1 그룹에 포함된 패킷 그룹의 그룹핑 위치를 상기 제2 그룹으로 변경시키는 단계를 포함하는, 패킷 처리 방법.
  14. 제12항에 있어서,
    상기 처리하는 단계는,
    상기 제2 그룹의 패킷 그룹을 처리하는 동안, 새롭게 그룹핑된 패킷 그룹을 제1 그룹으로 그룹핑하는 단계를 포함하는, 패킷 처리 방법.
  15. 삭제
  16. 삭제
  17. 제12항에 있어서,
    상기 제2 제어부는,
    각각의 패킷을 병렬적으로 처리하는 복수의 처리부를 포함하고,
    각각의 처리부는 각각의 패킷 그룹을 분배 받아, 각각의 패킷 그룹의 패킷을 처리하는, 패킷 처리 방법.
  18. 제17항에 있어서,
    상기 패킷 처리 방법은,
    상기 제1 제어부가, 각각의 처리부가 크기가 유사한 각각의 패킷을 함께 처리할 수 있도록 상기 제2 그룹에 포함된 패킷 그룹의 처리 일정을 스케쥴링하는 단계를 더 포함하는, 패킷 처리 방법.
KR1020160075336A 2016-06-16 2016-06-16 패킷 처리 장치 및 방법 KR101954306B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160075336A KR101954306B1 (ko) 2016-06-16 2016-06-16 패킷 처리 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160075336A KR101954306B1 (ko) 2016-06-16 2016-06-16 패킷 처리 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20170142072A KR20170142072A (ko) 2017-12-27
KR101954306B1 true KR101954306B1 (ko) 2019-03-05

Family

ID=60938566

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160075336A KR101954306B1 (ko) 2016-06-16 2016-06-16 패킷 처리 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101954306B1 (ko)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7974191B2 (en) * 2004-03-10 2011-07-05 Alcatel-Lucent Usa Inc. Method, apparatus and system for the synchronized combining of packet data
KR102121947B1 (ko) * 2013-09-27 2020-06-11 삼성전자주식회사 신호 처리 장치 및 그의 신호 처리 방법

Also Published As

Publication number Publication date
KR20170142072A (ko) 2017-12-27

Similar Documents

Publication Publication Date Title
EP3491799B1 (en) Channel data encapsulation system and method for use with client-server data channels
US20140130059A1 (en) Lattice Computing
US20140373020A1 (en) Methods for managing threads within an application and devices thereof
US10263809B2 (en) Selecting an optimal network device for reporting flow table misses upon expiry of a flow in a software defined network
Yi et al. Gpunfv: a gpu-accelerated nfv system
US20200341812A1 (en) Aggregated virtualized compute accelerators
EP3100436B1 (en) Maintaining routing information for a distributed service provided by service instances
Fotohi et al. A cluster based job scheduling algorithm for grid computing
KR101827540B1 (ko) 패킷 처리 장치 및 방법
KR101954306B1 (ko) 패킷 처리 장치 및 방법
US20100306553A1 (en) High-throughput cryptographic processing using parallel processing
JP7180424B2 (ja) 並列処理装置、データ転送先決定方法およびデータ転送先決定プログラム
US10171570B2 (en) Information processing apparatus
US11171881B2 (en) Multiplexed resource allocation architecture
Li et al. An parallelized deep packet inspection design in software defined network
JP6370230B2 (ja) 秘密計算制御装置、秘密計算制御方法及び秘密計算制御プログラム
US10348744B2 (en) Stateful backend drivers for security processing through stateless virtual interfaces
Birke et al. Power of redundancy: Designing partial replication for multi-tier applications
CN105338098A (zh) 一种基于改进pso算法的云计算负载均衡方法
Woishe et al. Optimizing IoT Based Parallel Server in a Low Power Operational Environment
RU2625046C2 (ru) Способ многопоточной защиты сетевого трафика и система для его осуществления
US10630957B2 (en) Scalable distributed computation framework for data-intensive computer vision workloads
WO2017041509A1 (zh) 一种基于多处理单元的报文采样方法和装置
KR101595062B1 (ko) 그래프 극대 매칭 방법
US11489776B2 (en) Multicore offloading of network processing

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant