KR20220120939A - 네트워크 장비에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램 - Google Patents

네트워크 장비에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20220120939A
KR20220120939A KR1020210024744A KR20210024744A KR20220120939A KR 20220120939 A KR20220120939 A KR 20220120939A KR 1020210024744 A KR1020210024744 A KR 1020210024744A KR 20210024744 A KR20210024744 A KR 20210024744A KR 20220120939 A KR20220120939 A KR 20220120939A
Authority
KR
South Korea
Prior art keywords
packet
storage space
packets
processing
thread
Prior art date
Application number
KR1020210024744A
Other languages
English (en)
Other versions
KR102503272B1 (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 KR1020210024744A priority Critical patent/KR102503272B1/ko
Publication of KR20220120939A publication Critical patent/KR20220120939A/ko
Application granted granted Critical
Publication of KR102503272B1 publication Critical patent/KR102503272B1/ko

Links

Images

Classifications

    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3851Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • 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/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9057Arrangements for supporting packet reassembly or resequencing
    • 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/9078Intermediate storage in different physical parts of a node or terminal using an external memory or storage device

Abstract

본 발명은 네트워크 장비에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램에 관한 것으로서, 보다 구체적으로는 대용량 네트워크 트래픽을 처리하기 위하여 멀티 쓰레드를 사용하는 네트워크 장비에서 패킷을 처리하거나 저장하는 순서를 보장하여 처리하기 위한 방법, 장치 및 컴퓨터 프로그램에 관한 것이다.
본 발명에서는, 네트워크 장비에서 패킷을 처리하거나 저장하는 방법에 있어서, 패킷을 수집하여 복수의 쓰레드를 가지는 멀티 쓰레드로 분산해 처리한 후 저장 공간에 저장하는 패킷 수집 단계; 및 상기 저장 공간에 저장된 패킷을 상기 수집된 순서에 따라 처리하거나 저장하는 패킷 처리 단계;를 포함하며, 상기 저장 공간에는 상기 패킷 및 상기 패킷이 상기 멀티 쓰레드로 유입되는 패킷 유입 시간이 매칭되어 저장되고, 상기 패킷 처리 단계에서는, 상기 패킷 유입 시간을 이용하여 상기 패킷을 처리하거나 저장하는 순서를 산출하는 것을 특징으로 하는 네트워크 장비에서의 패킷 프로세싱 방법을 개시한다.

Description

네트워크 장비에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램{METHOD, APPARAUTS AND COMPUTER PROGRAM FOR PROCESSING PACKET IN NETWORK EQUIPMENT}
본 발명은 네트워크 장비에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램에 관한 것으로서, 보다 구체적으로는 대용량 네트워크 트래픽을 처리하기 위하여 멀티 쓰레드를 사용하는 네트워크 장비에서 패킷을 처리하거나 저장하는 순서를 보장하여 처리하기 위한 방법, 장치 및 컴퓨터 프로그램에 관한 것이다.
[이 발명을 지원한 연구개발사업]
[과제고유번호]         D2020100
[부처명]               경기도
[연구관리전문기관]     (재)경기도경제과학진흥원
[연구사업명]            기업주도 일반
[연구과제명]         스마트 광 바이패스 탑재형 100GE NIC 개발
[기여율]                1/1
[주관연구기관]          (주)윈스
[연구기간]              2020. 2. 1. ~ 2021. 2. 28.
정보통신 기술의 발달과 함께 사용자가 다양한 온라인 서비스가 확산되고 있으며, 네트워크 장비에서 처리해야 하는 트래픽도 빠르게 증가하고 있다.
이에 따라, 최근에는 대용량의 트래픽을 처리하기 위한 하여 고성능 네트워크 장비가 폭넓게 사용되고 있다.
그런데, 종래의 저성능 네트워크 장비에서는 단일 쓰레드를 사용하여 패킷의 처리를 패킷 유입 시점에 복사 처리함으로써 패킷 순서를 보장할 수 있었으나, 대용량 트래픽을 처리하기 위한 고성능 네트워크 장비에서는 멀티 쓰레드 환경의 분산 처리를 수행하면서 트래픽이 각 쓰레드로 분산되어 처리된다.
이때, 각 쓰레드에서는 할당되는 패킷의 프로토콜이나 데이터 크기 등에 따라 처리 속도가 달라질 수 있으며, 이에 따라 고성능 네트워크 장비에서는 패킷의 인입 순서와 처리 순서가 보장되지 못하는 문제가 나타날 수 있다.
보다 구체적인 예를 들어, 고성능 네트워크 보안 장비에서 패킷의 인입 순서는 다양한 네트워크 위협에 대한 보안 분석을 위해 사용될 수 있으며, 나아가 패킷의 인입 시간은 이를 이용한 인과 관계 분석을 통해 트래픽의 특이점을 분석하는데도 사용될 수 있다.
그런데, 멀티 쓰레드 환경에서 고속의 트래픽이 병렬로 처리되는 환경에서 각 패킷의 인입 순서를 식별하기 위해서는 많은 자원(resource)이 요구되며, 나아가 이를 위해 별도의 프로세스를 수행하는 경우 네트워크 장비에서 상당한 성능 저하가 유발될 수도 있다.
대한민국 등록특허공보 제10-18143680000호 (2017.12.27)
본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위해 창안된 것으로, 대용량 네트워크 트래픽을 처리하기 위하여 멀티 쓰레드를 사용하는 네트워크 장비에서 패킷을 처리하거나 저장하는 순서를 보장할 수 있는 네트워크 장비에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램을 제공하는 것을 목적으로 한다.
상기 과제를 해결하기 위한 본 발명의 한 측면에 따른 네트워크 장비에서의 패킷 프로세싱 방법은, 네트워크 장비에서 패킷을 처리하거나 저장하는 방법에 있어서, 패킷을 수집하여 복수의 쓰레드를 가지는 멀티 쓰레드로 분산해 처리한 후 저장 공간에 저장하는 패킷 수집 단계; 및 상기 저장 공간에 저장된 패킷을 상기 수집된 순서에 따라 처리하거나 저장하는 패킷 처리 단계;를 포함하며, 상기 저장 공간에는 상기 패킷 및 상기 패킷이 상기 멀티 쓰레드로 유입되는 패킷 유입 시간이 매칭되어 저장되고, 상기 패킷 처리 단계에서는, 상기 패킷 유입 시간을 이용하여 상기 패킷을 처리하거나 저장하는 순서를 산출하는 것을 특징으로 한다.
여기서, 상기 패킷을 저장할 수 있는 저장 공간을 할당하여 제공하거나 반환받아 관리하는 패킷 관리 단계;를 더 포함할 수 있다.
이때, 상기 패킷 관리 단계에서는, 상기 저장 공간을 각 쓰레드 별로 나누어 상기 각 쓰레드에서 출력되는 패킷을 저장할 수 있다.
또한, 상기 패킷 수집 단계에서는, 순차 유입되는 패킷을 미리 정해진 규칙에 따라 나누어 멀티 쓰레드로 분산해 처리할 수 있다.
나아가, 상기 패킷 수집 단계에서는, 각 쓰레드 별로 나누어 상기 각 쓰레드에서 처리되어 출력되는 순서에 따라 상기 패킷을 상기 저장 공간에 저장할 수 있다.
더 나아가, 상기 패킷 처리 단계에서는, 상기 저장 공간에 각 쓰레드 별로 남아있는 패킷 중 가장 먼저 출력된 패킷들의 패킷 유입 시간을 비교하여 상기 패킷을 처리하거나 저장하는 순서를 산출할 수 있다.
또한, 상기 패킷 수집 단계에서는, 상기 패킷이 멀티 쓰레드 보안 엔진으로 분산되어 처리되며, 상기 패킷 처리 단계에서는, 미리 정해진 분량의 패킷을 상기 수집된 순서에 따라 정렬하여 저장할 수 있다.
또한, 상기 패킷 수집 단계에서는, 상기 패킷을 저장하고자 하는 쓰레드에 대한 저장 공간의 할당 여부를 판단하여, 할당되지 않은 경우에는 저장 공간을 요청하여 할당받을 수 있다.
이때, 상기 패킷 수집 단계에서는, 할당된 저장 공간의 여유 상태를 확인하여 부족한 경우 상기 할당된 저장 공간을 반환한 후, 필요한 저장 공간을 요청하여 할당받을 수 있다.
또한, 본 발명의 다른 측면에 따른 네트워크 장비는, 패킷을 수집하여 복수의 쓰레드를 가지는 멀티 쓰레드로 분산해 처리한 후 저장 공간에 저장하는 패킷 수집부; 및 상기 저장 공간에 저장된 패킷을 상기 수집된 순서에 따라 처리하거나 저장하는 패킷 처리부;를 포함하며, 상기 저장 공간에는 상기 패킷 및 상기 패킷이 상기 멀티 쓰레드로 유입되는 패킷 유입 시간이 매칭되어 저장되고, 상기 패킷 처리부에서는, 상기 패킷 유입 시간을 이용하여 상기 패킷을 처리하거나 저장하는 순서를 산출하는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 네트워크 장비에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램은, 대용량 네트워크 트래픽을 처리하기 위하여 멀티 쓰레드를 사용하는 네트워크 장비에서 패킷을 처리하거나 저장하는 순서를 보장할 수 있게 된다.
또한, 본 발명의 일 실시예에 따른 네트워크 장비에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램에서는, 패킷을 인입 순서에 따라 처리하면서도 이를 구현하는 과정에서 나타날 수 있는 네트워크 장비에서의 성능 저하 및 패킷 유실 등의 문제도 효과적으로 방지할 수 있게 된다.
본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부도면은 본 발명에 대한 실시예를 제공하고, 상세한 설명과 함께 본 발명의 기술적 사상을 설명한다.
도 1은 본 발명의 일 실시예에 따른 네트워크 장비에서의 패킷 프로세싱 방법의 순서도이다.
도 2는 본 발명의 일 실시예에 따른 네트워크 장비의 블록도이다.
도 3 내지 도 4는 본 발명의 일 실시예에 따른 네트워크 장비에서의 멀티 쓰레드 동작 환경을 설명하는 도면이다.
도 5는 본 발명의 일 실시예에 따른 네트워크 장비에서의 패킷 프로세싱 방법의 저장 공간 할당을 설명하는 순서도이다.
도 6은 본 발명의 일 실시예에 따른 네트워크 장비에서의 저장 공간의 구성을 예시하는 도면이다.
도 7 내지 도 8은 본 발명의 일 실시예에 따른 네트워크 장비에서의 패킷 프로세싱 방법에서 패킷 관리 단계에서의 저장 공간 관리를 설명하는 도면이다.
도 9는 본 발명의 일 실시예에 따른 네트워크 장비에서의 패킷 프로세싱 방법에서 패킷 처리 단계의 동작을 설명하는 도면이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 이하에서는 특정 실시예들을 첨부된 도면을 기초로 상세히 설명하고자 한다.
이하의 실시예는 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시 예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
또한, 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되는 것은 아니며, 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
이하에서는, 본 발명에 따른 네트워크 장비에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램의 예시적인 실시형태들을 첨부된 도면을 참조하여 상세히 설명한다.
먼저, 도 1에서는 본 발명의 일 실시예에 따른 네트워크 장비(100)에서의 패킷 프로세싱 방법의 순서도를 보여주고 있다. 도 1에서 볼 수 있는 바와 같이, 본 발명의 일 실시예에 따른 네트워크 장비(100)에서의 패킷 프로세싱 방법은, 네트워크 장비(100)에서 패킷을 처리하거나 저장하는 방법에 있어서, 패킷을 수집하여 복수의 쓰레드를 가지는 멀티 쓰레드(112)로 분산해 처리한 후 저장 공간(121)에 저장하는 패킷 수집 단계(S110) 및 상기 저장 공간(121)에 저장된 패킷을 상기 수집된 순서에 따라 처리하거나 저장하는 패킷 처리 단계(S130)를 포함할 수 있다.
이때, 상기 저장 공간(121)에는 상기 패킷 및 상기 패킷이 상기 멀티 쓰레드(112)로 유입되는 패킷 유입 시간이 매칭되어 저장되고, 상기 패킷 처리 단계(S130)에서는 상기 패킷 유입 시간을 이용하여 상기 패킷을 처리하거나 저장하는 순서를 산출해 적용할 수 있다.
나아가, 본 발명의 일 실시예에 따른 네트워크 장비(100)에서의 패킷 프로세싱 방법에서는, 도 1에서 볼 수 있는 바와 같이, 상기 패킷을 저장할 수 있는 저장 공간(121)을 할당하여 제공하거나 반환받아 관리하는 패킷 관리 단계(S120)를 더 포함할 수도 있다.
또한, 본 발명의 일 실시예에 따른 네트워크 장비(100)는, 도 2에서 볼 수 있는 바와 같이, 패킷을 수집하여 복수의 쓰레드를 가지는 멀티 쓰레드(112)로 분산해 처리한 후 저장 공간(121)에 저장하는 패킷 수집부(110) 및 상기 저장 공간(121)에 저장된 패킷을 상기 수집된 순서에 따라 처리하거나 저장하는 패킷 처리부(130)를 포함하여 구성될 수 있으며, 이때 상기 저장 공간(121)에는 상기 패킷 및 상기 패킷이 상기 멀티 쓰레드(112)로 유입되는 패킷 유입 시간이 매칭되어 저장될 수 있고, 또한 상기 패킷 처리부(130)에서는 상기 패킷 유입 시간을 이용하여 상기 패킷을 처리하거나 저장하는 순서를 산출하여 적용할 수 있다.
나아가, 본 발명의 일 실시예에 따른 네트워크 장비(100)에는, 도 2에서 볼 수 있는 바와 같이, 상기 패킷을 저장할 수 있는 저장 공간(121)을 할당하여 제공하거나 반환받아 관리하는 패킷 관리부(120)가 더 포함될 수도 있다.
이에 따라, 본 발명의 일 실시예에 따른 네트워크 장비(100)에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램에서는, 대용량 네트워크 트래픽을 처리하기 위하여 멀티 쓰레드(112)를 사용하는 네트워크 장비(100)에서 패킷을 처리하거나 저장하는 순서를 보장할 수 있으며, 나아가 패킷을 인입 순서에 따라 처리하면서도 이를 구현하는 과정에서 나타날 수 있는 네트워크 장비(100)에서의 성능 저하 및 패킷 유실 등의 문제도 효과적으로 방지할 수 있게 된다.
이하, 도 1 및 도 2를 참조하여 본 발명의 일 실시예에 따른 네트워크 장비(100)에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램을 각 구성 요소별로 나누어 보다 자세하게 살핀다.
먼저, 상기 패킷 수집 단계(S110)에서는, 상기 네트워크 장비(100)의 패킷 수집부(110)가 패킷을 수집하여 복수의 쓰레드를 가지는 멀티 쓰레드(112)로 분산해 처리한 후 저장 공간에 저장하게 된다.
보다 구체적으로, 도 3에서 볼 수 있는 바와 같이, 상기 패킷 수집 단계(S110)에서는 네트워크 인터페이스 카드(111)를 통해 순차 유입되는 패킷(예를 들어, 도 3의 1~9)을 미리 정해진 규칙에 따라 나누어 복수의 쓰레드(예를 들어, 도 3의 112a ~ 112n)를 가지는 멀티 쓰레드(112)로 분산해 처리할 수 있다.
예를 들어, 상기 멀티 쓰레드(112)는 멀티 쓰레드 보안 엔진으로 구성되어 각 보안 엔진으로 인입되는 패킷에 대안 보안 프로세스를 수행할 수 있다.
이후, 상기 각 쓰레드(예를 들어, 도 3의 112a ~ 112n)에서 처리된 패킷은 버퍼(113) 등을 거쳐 상기 네트워크 장비(100)로 유입된 순서로 다시 정렬되어 출력(114)될 수 있다.
즉, 종래의 저성능 네트워크 장비에서는 단일 쓰레드를 사용하여 패킷의 처리를 패킷 유입 시점에 복사 처리함으로써 패킷 순서를 보장할 수 있었으나, 도 4(a)에서 볼 수 있는 바와 같이, 대용량 트래픽을 처리하기 위한 고성능 네트워크 장비에서는 멀티 쓰레드(112) 환경의 분산 처리를 수행하면서 트래픽이 각 쓰레드로 분산되어 처리되면서, 각 쓰레드에서 소요되는 처리 시간이 달라질 수 있어 처리 후 출력되는 패킷의 순서가 달라지는 문제가 나타날 수 있었다.
이에 대하여, 본 발명의 일 실시예에 따른 네트워크 장비(100)에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램에서는, 도 4(b)에서 볼 수 있는 바와 같이, 상기 멀티 쓰레드(112)에서 출력되는 패킷을 상기 네트워크 장비(100)로 유입된 순서로 다시 정렬하여 출력(114)하게 된다.
보다 구체적으로, 상기 패킷 수집 단계(S110)에서는, 상기 멀티 쓰레드(112)에서 출력되는 패킷을 각 쓰레드 별로 나누어 상기 각 쓰레드에서 처리되어 출력되는 순서에 따라 상기 저장 공간(121)에 저장하게 된다.
보다 구체적인 예를 들어, 도 3에서 제1 쓰레드(112a)로 입력된 패킷(1, 2), 제2 쓰레드(112b)로 입력된 패킷(3, 4), 제3 쓰레드(112c)로 입력된 패킷(3), 제4 쓰레드(112d)로 입력된 패킷(6, 8), 제5 쓰레드(112e)로 입력된 패킷(7, 9)은, 출력되면서 다시 각 쓰레드 별로 나누어 출력되는 순서에 따라 저장 공간(121)에 저장된다(예를 들어, 도 9(a)에서 볼 수 있는 바와 같이, 제1 쓰레드(112a)에서는 패킷(1)이 먼저 출력되고 패킷(2)가 나중에 출력되므로 그 순서에 따라 저장).
즉, 상기 패킷 수집 단계(S110)에서, 상기 패킷 수집부(110)는 멀티 쓰레드(112)로 동시에 인입되는 다량의 트래픽을 처리하고 저장하게 된다. 이때, 상기 트래픽은 물리적인 네트워크 인터페이스 카드(NIC, Network Interface Card)(111)로 유입되어, 멀티 쓰레드(112)로 순서가 보장되지 않고 인입될 수 있다. 또한, 상기 네트워크 인터페이스 카드(111)에서는 네트워크의 각 흐름(Flow), 예를 들어 패킷의 소스(Source) IP, 목적(Destination) IP, 프로토콜(Protocol), 소스(Source) Port, 목적(Destination) Port의 값이 동일한 패킷은 동일한 쓰레드로 전달하여 처리할 수 있다.
이때, 상기 멀티 쓰레드(112)의 각 쓰레드에서는 입력되는 패킷을 순차 처리하여 입력된 순서에 따라 출력하게 된다.
또한, 상기 패킷 수집 단계(S110)에서, 상기 패킷 수집부(110)는 각 쓰레드에 대하여 패킷을 저장하기 위한 저장 공간(121)을 패킷 관리부(120)로 요청하여 할당받을 수 있다.
이에 따라, 동일한 쓰레드에서 수집된 패킷들은 순서가 보장되며, 보장된 순서의 패킷들은 할당 받은 저장 공간(121)의 여유가 존재하는 시점까지 저장된다. 또한, 저장 공간(121)이 부족하게 되면 상기 저장 공간(121)을 패킷 관리부(120)에 반환하고 새로운 저장 공간(121)을 요청하여 할당 받을 수 있다.
이때, 상기 패킷 수집 단계(S110)에서, 상기 패킷 수집부(110)는 상기 패킷을 저장하고자 하는 쓰레드에 대한 저장 공간의 할당 여부를 판단하여, 할당되지 않은 경우에는 저장 공간을 요청하여 할당받을 수 있다.
또한, 상기 패킷 수집 단계(S110)에서, 상기 패킷 수집부(110)는 할당된 저장 공간(121)의 여유 상태를 확인하여 부족한 경우 상기 할당된 저장 공간(121)을 반환한 후, 필요한 저장 공간(121)을 요청하여 할당받을 수 있다.
보다 구체적으로, 도 5에서는 본 발명의 일 실시예에 따른 네트워크 장비(100)에서의 저장 공간 할당을 설명하는 순서도를 도시하고 있다.
도 5에서 볼 수 있는 바와 같이, C11에서는 트래픽이 유입되어 처리되는 과정을 도시하고 있다. 이에 따라, 먼저 네트워크 인터페이스 카드(111)로 트래픽이 유입되면(S410), 상기 트래픽은 멀티 쓰레드(112)에서 분산되어 처리된다(S420).
또한, C12에서는 저장 공간(121)을 요청/반환하고 패킷을 상기 저장 공간(121)에 저장하는 과정을 도시하고 있다.
보다 구체적으로, 상기 패킷 수집부(110)에서는, 각 쓰레드 별 저장 공간(121)을 확인한다(S430).
이때, 상기 저장 공간(121)이 할당되어 있는 경우에는 각 쓰레드의 저장 공간(121)에서 남은 크기를 확인한다(S440).
이때, 상기 각 쓰레드의 저장 공간(121)에서 남은 크기가 미리 정해진 기준치보다 커서 충분하다면 패킷을 저장(S480)하게 되고, 반면 부족하다면 상기 저장 공간(121)을 반환(S450)한 후, 새로운 저장 공간(121)을 패킷 관리부(120)로 요청하게 된다(S460).
이어서, 상기 패킷 관리부(120)에서는 저장 공간(121)을 할당하여 상기 패킷 수집부(110)로 제공하게 된다(S470). 이에 따라, 상기 패킷 수집부(110)에서는 새로이 할당된 저장 공간(121)에 패킷을 저장하게 된다(S480).
또한, 도 6에서는 본 발명의 일 실시예에 따른 네트워크 장비(100)에서의 저장 공간(121)의 구성을 예시하고 있다.
먼저, 도 6(a)에서 볼 수 있는 바와 같이, 상기 저장 공간(121)은 각 쓰레드의 상태(예를 들어, 활성/비활성)를 나타내는 쓰레드 상태 정보(122a)와 상기 각 쓰레드에서 출력되는 패킷에 대한 정보를 저장하는 패킷 정보(122b)를 포함할 수 있다.
또한, 도 6(b)에서 볼 수 있는 바와 같이, 상기 패킷 정보(122b)는 다음 저장 공간(예를 들어, 도 6(b)에서 121a의 다음 저장 공간(122b)의 주소)와 할당된 쓰레드의 ID(고유 식별자), 저장 공간(121)의 상태(예를 들어, 미사용 상태 / 패킷 수집부(110)에서 사용하는 상태 / 패킷 처리부(130)에서 사용하는 상태), 저장 공간(121)의 총 크기와 현재 사용 중인 크기를 포함할 수 있으며, 특히 패킷과 상기 패킷의 유입 시간을 포함하는 데이터 정보를 포함할 수 있다.
또한, 상기 패킷 관리 단계(S120)에서, 상기 패킷 관리부(120)는 상기 패킷을 저장할 수 있는 저장 공간(121)을 할당하여 제공하거나 반환받아 관리하게 된다.
이때, 상기 패킷 관리 단계(S120)에서는 상기 저장 공간(121)을 각 쓰레드 별로 나누어 상기 각 쓰레드에서 출력되는 패킷을 저장하도록 할 수 있다.
이에 따라, 상기 패킷 관리부(120)에서는 패킷을 저장할 수 있는 저장 공간(121)을 할당하고, 상기 패킷 수집부(110)의 요청에 의해 저장 공간(121)을 제공하는 역할을 한다. 또한, 반환된 저장 공간(121)을 재사용할 수 있도록 관리한다.
보다 구체적으로, 도 7에서는 본 발명의 일 실시예에 따른 네트워크 장비(100)에서의 패킷 관리부(120)의 구체적인 동작을 예시하는 순서도를 도시하고 있다.
도 7에서 볼 수 있는 바와 같이, 먼저 상기 패킷 관리부(120)에서는 요청의 종류를 판단하게 된다(S610).
이에 따라, 상기 요청이 저장 공간(121) 할당에 대한 요청인 경우에는 도 7의 C21으로 처리하게 되고, 저장 공간(121) 반환에 대한 요청인 경우에는 도 7의 C22로 처리하게 된다.
이에 따라, 상기 패킷 관리부(120)에서 저장 공간 제공 요청을 확인하면(S620), 전달 가능한 저장 공간의 크기를 확인하여(S630) 미리 정해진 기준치보다 커서 충분하다면 해당 쓰레드로 저장 공간(121)을 전달(S640)하게 되고, 반면 부족하다면 저장 공간(121)을 확보하여 제공하게 된다(S650).
반면, 상기 패킷 관리부(120)에서 저장 공간 반환 요청을 확인하면(S660), 생성된 저장 공간(121)의 마지막 위치를 확인한 후(S670), 상기 마지막 위치에 반환된 저장 공간(121)을 연결하여 관리하게 된다(S680).
또한, 도 8에서는 본 발명의 일 실시예에 따른 네트워크 장비(100)에서 패킷 관리부(120)의 저장 공간(121)의 구조를 예시하고 있다.
도 8에서 볼 수 있는 바와 같이, 상기 패킷 관리부(120)에서는 저장 공간(121)을 관리하기 위한 패킷 저장 관리 구조(123)를 사용할 수 있다.
보다 구체적으로, 도 8에 도시된 바와 같이, 상기 패킷 저장 관리 구조(123)에는 최대 저장 공간(121)의 수, 생성된 저장 공간(121)의 수, 사용중인 저장 공간(121)의 수, 미사용 중인 저장 공간(121)의 수, 멀티 쓰레드(112)의 수, 쓰레드 별 관리 자료구조(123a) 및 저장 공간 관리 자료구조(123b) 영역이 포함될 수 있다.
이때, 도 8에서 볼 수 있는 바와 같이, 상기 쓰레드 별 관리 자료구조(123a)에는 각 쓰레드에 할당된 쓰레드 할당 자료구조(124a, 124b, 124c)들이 순차 연결될 수 있으며, 이때 상기 각 쓰레드에서는 상기 쓰레드 할당 자료구조(124a, 124b, 124c)를 각자 관리하면서 동작하게 된다.
또한, 상기 저장 공간 관리 자료구조(123b)는, 도 8에서 볼 수 있는 바와 같이, 상기 각 쓰레드에 할당된 저장 공간 내에서 저장 공간 (head)로부터 (used), (curPosition)을 거쳐 (tail)까지 순차 연결하여 관리하게 된다.
이에 따라, 상기 패킷 관리부(120)에서는 저장 공간(121)을 제공하거나 반환하면서 각 쓰레드 별로 효율적으로 관리할 수 있게 된다.
또한, 상기 패킷 처리 단계(S130)에서, 상기 패킷 처리부(130)에서는 상기 저장 공간(121)에 저장된 패킷을 상기 수집된 순서에 따라 처리하거나 저장하게 된다.
보다 구체적으로, 상기 패킷 처리 단계(S130)에서는, 상기 저장 공간(121)에 각 쓰레드 별로 남아있는 패킷 중 가장 먼저 출력된 패킷들의 패킷 유입 시간을 비교하여 상기 패킷을 처리하거나 저장하는 순서를 산출할 수 있다.
이에 따라, 상기 패킷 처리부(130)에서는 상기 패킷 관리부(120)에서 관리하는 저장 공간(121)에 각 쓰레드 별로 저장된 패킷의 유입 시간을 식별하여 저장 공간(121)에 저장된 전체 패킷 중 가장 빠른 유입 시간의 패킷을 산출하여 처리를 수행한다.
보다 구체적으로, 도 9에서는 본 발명의 일 실시예에 따른 네트워크 장비(100)에서 패킷 처리 단계(S130)의 동작을 설명하는 도면을 도시하고 있다.
도 9에서 볼 수 있는 바와 같이, 상기 패킷 처리부(130)에서는 멀티 쓰레드(112)의 M개의 쓰레드가 사용하는 저장 공간들을 개별로 관리하여, 상기 저장 공간의 전체 N개의 패킷을 모두 비교하지 않고, M 개의 패킷 만을 비교하여 유입 시간이 가장 빠른 패킷을 산출할 수 있다.
즉, 상기 패킷 처리부(130)에서는 M개의 각 쓰레드에 대하여 가장 먼저 입력되어 처리되고 출력된 M개의 패킷 만을 비교하여 전체 저장된 패킷 중 가장 유입 시간이 빠른 패킷을 산출할 수 있다.
보다 구체적인 예를 들어, 도 9(a)에서 볼 수 있는 바와 같이 패킷(1), 패킷(3), 패킷(5), 패킷(6), 패킷(7) 만을 비교하여 이중 패킷 유입 시간이 가장 빠른 패킷(1)을 산출하고, 이어서 도 9(b)에서 볼 수 있는 바와 같이 패킷(2), 패킷(3), 패킷(5), 패킷(6), 패킷(7) 만을 비교하여 이중 패킷 유입 시간이 가장 빠른 패킷(2)을 산출하게 된다.
이러한 과정을 반복하여 결국 상기 수집된 패킷이 멀티 쓰레드(112)를 거쳐 상기 저장 공간(121)에 저장된 각 패킷을 다시 수집된 순서에 따라 처리하거나 저장할 수 있게 된다.
또한, 상기 패킷 처리부(130)에서 사용 완료된 저장 공간(121)은 상기 패킷 관리부(120)로 반환된다. 이때, 상기 저장 공간(121) 내에 저장되어 있는 패킷은 모두 처리되어야 하며(도 9의 (a) 내지 (f)), 상기 저장 공간(121)은 초기화된 상태로 반환하게 된다.
나아가, 본 발명의 일 실시예에 따른 네트워크 장비(100)에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램에서는, 상기 패킷 수집 단계(S110)에서 상기 패킷이 멀티 쓰레드 보안 엔진으로 분산되어 처리될 수 있으며, 이에 따라 상기 패킷 처리 단계(S130)에서는 미리 정해진 분량의 패킷을 상기 수집된 순서에 따라 정렬하여 저장할 수 있다.
이에 따라, 본 발명의 일 실시예에 따른 네트워크 장비(100)는 관리자 등에 의하여 미리 정해진 분량의 패킷의 인입 순서를 보장하면서 저장하여 다양한 보안 분석 용도로 사용하거나 인과 관계 분석 등을 통해 트래픽의 특이점 등을 검출하는데 사용될 수 있으나, 본 발명이 반드시 이에 한정되는 것은 아니다.
또한, 본 발명의 또 다른 측면에 따른 컴퓨터 프로그램은 앞서 살핀 네트워크 장비(100)에서의 패킷 프로세싱 방법의 각 단계를 컴퓨터에서 실행시키기 위하여 컴퓨터로 판독 가능한 매체에 저장된 컴퓨터 프로그램인 것을 특징으로 한다. 상기 컴퓨터 프로그램은 컴파일러에 의해 만들어지는 기계어 코드를 포함하는 컴퓨터 프로그램뿐만 아니라, 인터프리터 등을 사용해서 컴퓨터에서 실행될 수 있는 고급 언어 코드를 포함하는 컴퓨터 프로그램일 수도 있다. 이때, 상기 컴퓨터로서는 퍼스널 컴퓨터(PC)나 노트북 컴퓨터 등에 한정되지 아니하며, 서버, 스마트폰, 태블릿 PC, PDA, 휴대전화 등 중앙처리장치(CPU)를 구비하여 컴퓨터 프로그램을 실행할 수 있는 일체의 정보처리 장치를 포함한다.
또한, 상기 컴퓨터로 판독 가능한 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수개 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 애플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.
이에 따라, 본 발명의 일 실시예에 따른 네트워크 장비(100)에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램은, 대용량 네트워크 트래픽을 처리하기 위하여 멀티 쓰레드(112)를 사용하는 네트워크 장비(100)에서 패킷을 처리하거나 저장하는 순서를 보장할 수 있게 된다.
또한, 본 발명의 일 실시예에 따른 네트워크 장비(100)에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램에서는, 패킷을 인입 순서에 따라 처리하면서도 이를 구현하는 과정에서 나타날 수 있는 네트워크 장비(100)에서의 성능 저하 및 패킷 유실 등의 문제도 효과적으로 방지할 수 있게 된다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서 본 발명에 기재된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의해서 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100 : 네트워크 장비
110 : 패킷 수집부
111 : 네트워크 인터페이스 카드
112 : 멀티 쓰레드
112a, 112b, 112c, 112d, 112e, 112n : 쓰레드
113 : 버퍼
114 : 출력
120 : 패킷 관리부
121, 121a, 121b, 121c : 저장 공간
122a : 쓰레드 상태 정보
122b : 패킷 정보
123 : 패킷 저장 관리 구조
123a : 쓰레드 별 관리 자료구조
123b : 저장 공간 관리 자료구조
124a, 124b, 124c : 쓰레드 할당 자료구조
130 : 패킷 처리부

Claims (10)

  1. 네트워크 장비에서 패킷을 처리하거나 저장하는 방법에 있어서,
    패킷을 수집하여 복수의 쓰레드를 가지는 멀티 쓰레드로 분산해 처리한 후 저장 공간에 저장하는 패킷 수집 단계; 및
    상기 저장 공간에 저장된 패킷을 상기 수집된 순서에 따라 처리하거나 저장하는 패킷 처리 단계;를 포함하며,
    상기 저장 공간에는 상기 패킷 및 상기 패킷이 상기 멀티 쓰레드로 유입되는 패킷 유입 시간이 매칭되어 저장되고,
    상기 패킷 처리 단계에서는,
    상기 패킷 유입 시간을 이용하여 상기 패킷을 처리하거나 저장하는 순서를 산출하는 것을 특징으로 하는 네트워크 장비에서의 패킷 프로세싱 방법.
  2. 제1항에 있어서,
    상기 패킷을 저장할 수 있는 저장 공간을 할당하여 제공하거나 반환받아 관리하는 패킷 관리 단계;를 더 포함하는 것을 특징으로 하는 네트워크 장비에서의 패킷 프로세싱 방법.
  3. 제2항에 있어서,
    상기 패킷 관리 단계에서는,
    상기 저장 공간을 각 쓰레드 별로 나누어 상기 각 쓰레드에서 출력되는 패킷을 저장하는 것을 특징으로 하는 네트워크 장비에서의 패킷 프로세싱 방법.
  4. 제1항에 있어서,
    상기 패킷 수집 단계에서는,
    순차 유입되는 패킷을 미리 정해진 규칙에 따라 나누어 멀티 쓰레드로 분산해 처리하는 것을 특징으로 하는 네트워크 장비에서의 패킷 프로세싱 방법.
  5. 제4항에 있어서,
    상기 패킷 수집 단계에서는,
    각 쓰레드 별로 나누어 상기 각 쓰레드에서 처리되어 출력되는 순서에 따라 상기 패킷을 상기 저장 공간에 저장하는 것을 특징으로 하는 네트워크 장비에서의 패킷 프로세싱 방법.
  6. 제5항에 있어서,
    상기 패킷 처리 단계에서는,
    상기 저장 공간에 각 쓰레드 별로 남아있는 패킷 중 가장 먼저 출력된 패킷들의 패킷 유입 시간을 비교하여 상기 패킷을 처리하거나 저장하는 순서를 산출하는 것을 특징으로 하는 네트워크 장비에서의 패킷 프로세싱 방법.
  7. 제1항에 있어서,
    상기 패킷 수집 단계에서는,
    상기 패킷이 멀티 쓰레드 보안 엔진으로 분산되어 처리되며,
    상기 패킷 처리 단계에서는,
    미리 정해진 분량의 패킷을 상기 수집된 순서에 따라 정렬하여 저장하는 것을 특징으로 하는 네트워크 장비에서의 패킷 프로세싱 방법.
  8. 제1항에 있어서,
    상기 패킷 수집 단계에서는,
    상기 패킷을 저장하고자 하는 쓰레드에 대한 저장 공간의 할당 여부를 판단하여,
    할당되지 않은 경우에는 저장 공간을 요청하여 할당받는 것을 특징으로 하는 네트워크 장비에서의 패킷 프로세싱 방법.
  9. 제7항에 있어서,
    상기 패킷 수집 단계에서는,
    할당된 저장 공간의 여유 상태를 확인하여 부족한 경우 상기 할당된 저장 공간을 반환한 후, 필요한 저장 공간을 요청하여 할당받는 것을 특징으로 하는 네트워크 장비에서의 패킷 프로세싱 방법.
  10. 패킷을 수집하여 복수의 쓰레드를 가지는 멀티 쓰레드로 분산해 처리한 후 저장 공간에 저장하는 패킷 수집부; 및
    상기 저장 공간에 저장된 패킷을 상기 수집된 순서에 따라 처리하거나 저장하는 패킷 처리부;를 포함하며,
    상기 저장 공간에는 상기 패킷 및 상기 패킷이 상기 멀티 쓰레드로 유입되는 패킷 유입 시간이 매칭되어 저장되고,
    상기 패킷 처리부에서는,
    상기 패킷 유입 시간을 이용하여 상기 패킷을 처리하거나 저장하는 순서를 산출하는 것을 특징으로 하는 네트워크 장비.
KR1020210024744A 2021-02-24 2021-02-24 네트워크 장비에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램 KR102503272B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210024744A KR102503272B1 (ko) 2021-02-24 2021-02-24 네트워크 장비에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210024744A KR102503272B1 (ko) 2021-02-24 2021-02-24 네트워크 장비에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램

Publications (2)

Publication Number Publication Date
KR20220120939A true KR20220120939A (ko) 2022-08-31
KR102503272B1 KR102503272B1 (ko) 2023-02-24

Family

ID=83061670

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210024744A KR102503272B1 (ko) 2021-02-24 2021-02-24 네트워크 장비에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램

Country Status (1)

Country Link
KR (1) KR102503272B1 (ko)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030026373A (ko) * 2001-09-06 2003-04-03 오정석 메모리 관리장치를 구비한 전송서버 및 그 방법
KR100473304B1 (ko) * 1995-08-10 2005-05-16 컴퓨터 어소시에이츠 싱크, 인코포레이티드 응답시간측정장치및방법
KR20130141326A (ko) * 2012-05-11 2013-12-26 주식회사 윈스테크넷 네트워크 데이터 고속 분석 방법 및 고속 분석 시스템
KR20140092439A (ko) * 2012-12-27 2014-07-24 주식회사 시큐아이 패킷 처리 장치 및 패킷 처리 방법
WO2016162828A1 (en) * 2015-04-08 2016-10-13 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for burst based packet processing
KR101814368B1 (ko) 2017-07-27 2018-01-04 김재춘 빅데이터 및 인공지능을 이용한 정보 보안 네트워크 통합 관리 시스템 및 그 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100473304B1 (ko) * 1995-08-10 2005-05-16 컴퓨터 어소시에이츠 싱크, 인코포레이티드 응답시간측정장치및방법
KR20030026373A (ko) * 2001-09-06 2003-04-03 오정석 메모리 관리장치를 구비한 전송서버 및 그 방법
KR20130141326A (ko) * 2012-05-11 2013-12-26 주식회사 윈스테크넷 네트워크 데이터 고속 분석 방법 및 고속 분석 시스템
KR20140092439A (ko) * 2012-12-27 2014-07-24 주식회사 시큐아이 패킷 처리 장치 및 패킷 처리 방법
WO2016162828A1 (en) * 2015-04-08 2016-10-13 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for burst based packet processing
KR101814368B1 (ko) 2017-07-27 2018-01-04 김재춘 빅데이터 및 인공지능을 이용한 정보 보안 네트워크 통합 관리 시스템 및 그 방법

Also Published As

Publication number Publication date
KR102503272B1 (ko) 2023-02-24

Similar Documents

Publication Publication Date Title
CN108537543B (zh) 区块链数据的并行处理方法、装置、设备和存储介质
US8595722B2 (en) Preprovisioning virtual machines based on request frequency and current network configuration
US10033816B2 (en) Workflow service using state transfer
US7680848B2 (en) Reliable and scalable multi-tenant asynchronous processing
US8190593B1 (en) Dynamic request throttling
US20030088672A1 (en) Apparatus and method for routing a transaction to a server
US20080320121A1 (en) System, computer program product and method of dynamically adding best suited servers into clusters of application servers
EP3346379A1 (en) Database management system with dynamic allocation of database requests
US10706027B2 (en) Database management system with dynamic allocation of database requests
CN102707985A (zh) 一种虚拟机系统的访问控制方法和系统
US20130254376A1 (en) Dynamic control over tracing of messages received by a message broker
US20100042723A1 (en) Method and system for managing load in a network
US10360057B1 (en) Network-accessible volume creation and leasing
US8832215B2 (en) Load-balancing in replication engine of directory server
US20130305245A1 (en) Methods for managing work load bursts and devices thereof
CN111343262B (zh) 分布式集群登录方法、装置、设备和存储介质
US20180349245A1 (en) Parallel task management
KR20110083084A (ko) 가상화를 이용한 서버 운영 장치 및 방법
US20150244626A1 (en) Identity-aware load balancing
US20140229586A1 (en) Dynamically allocating network resources for communication session
CN111722933A (zh) 分布式进程之间的死锁解决
US11863675B2 (en) Data flow control in distributed computing systems
RU2696299C2 (ru) Управление при инициировании элементарных задач на серверной платформе
CN112860421B (zh) 用于作业处理的方法、设备和计算机程序产品
KR20220120939A (ko) 네트워크 장비에서의 패킷 프로세싱 방법, 장치 및 컴퓨터 프로그램

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant