KR100545665B1 - Apparatus for guaranteeing Quality of Service in Internet - Google Patents

Apparatus for guaranteeing Quality of Service in Internet Download PDF

Info

Publication number
KR100545665B1
KR100545665B1 KR1020030054901A KR20030054901A KR100545665B1 KR 100545665 B1 KR100545665 B1 KR 100545665B1 KR 1020030054901 A KR1020030054901 A KR 1020030054901A KR 20030054901 A KR20030054901 A KR 20030054901A KR 100545665 B1 KR100545665 B1 KR 100545665B1
Authority
KR
South Korea
Prior art keywords
qos
packet
class
interrupt
manager
Prior art date
Application number
KR1020030054901A
Other languages
Korean (ko)
Other versions
KR20050017633A (en
Inventor
박정제
Original Assignee
주식회사 엔에스텍
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 엔에스텍 filed Critical 주식회사 엔에스텍
Priority to KR1020030054901A priority Critical patent/KR100545665B1/en
Publication of KR20050017633A publication Critical patent/KR20050017633A/en
Application granted granted Critical
Publication of KR100545665B1 publication Critical patent/KR100545665B1/en

Links

Images

Classifications

    • 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/2425Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
    • 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/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
    • 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]

Landscapes

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

Abstract

본 발명은 인터넷에서 서비스 품질을 보장하는 장비에 관한 것으로, 본 발명에 의한 인터넷 QoS 장비는 인터넷 회선에서 패킷을 전송받아 패킷 분류 규칙에 따라 클래스별로 분류하여 클래스별 패킷 큐에 저장하고, 전송 패킷 결정을 요청하는 제1 인터럽트를 생성하고, 제2 인터럽트에 따라 결정된 클래스의 패킷 큐에 저장된 패킷을 인터넷 회선으로 전송하는 ASIC 기반의 QoS 가속 관리자; 제1 인터럽트에 의해 QoS 알고리듬을 수행하여 전송될 패킷의 클래스를 결정하고, 제2 인터럽트를 생성하여 결정된 클래스에 대한 정보를 QoS 가속 관리자에 제공하는 CISC 기반의 QoS 코어 관리자; 및 QoS 가속 관리자와 QoS 코어 관리자 사이에서 데이터를 전송하는 버스 장치;를 포함하여 구성된다.The present invention relates to a device for guaranteeing a quality of service in the Internet. The Internet QoS equipment according to the present invention receives a packet from an Internet line, classifies it according to packet classification rules, stores it in a packet queue for each class, and determines a transport packet. An ASIC-based QoS Acceleration Manager for generating a first interrupt requesting the request and transmitting the packet stored in the packet queue of the class determined according to the second interrupt to the Internet line; A CISC-based QoS core manager for performing a QoS algorithm by the first interrupt to determine a class of a packet to be transmitted, and generating a second interrupt to provide information on the determined class to the QoS acceleration manager; And a bus device for transferring data between the QoS Acceleration Manager and the QoS Core Manager.

본 발명에 의하면, 전체 QoS 장비 중 가장 속도를 필요로 하는 부분은 ASIC 기반의 하드웨어로 구현하므로 기가급의 성능을 가지면서도, 가장 복잡한 대역폭 보장 제어를 위한 두뇌 부분인 QoS 알고리즘 처리 부분은 CISC 칩 기반의 소프트웨어로 구현함으로써 다양한 인터넷 QoS 정책에 유연하게 대처할 수 있고, 하드웨어 QoS 장비에 비하여 개발/유지 비용이 적게 요구된다.According to the present invention, since the most required portion of the entire QoS equipment is implemented in ASIC-based hardware, the QoS algorithm processing portion, which is the brain part for the most complex bandwidth guarantee control, has a giga-level performance and is based on the CISC chip. It is possible to flexibly cope with various Internet QoS policies by implementing the software of the software, and it requires less development / maintenance cost than hardware QoS equipment.

Description

인터넷 QoS 장비{Apparatus for guaranteeing Quality of Service in Internet}Internet service equipment {Apparatus for guaranteeing Quality of Service in Internet}

도 1은 본 발명에 의한 인터넷 QoS 장비의 전체적인 구성을 도시한 블록도이다.1 is a block diagram showing the overall configuration of the Internet QoS equipment according to the present invention.

도 2a 내지 도 2d는 본 발명에 의한 인터넷 QoS 장비의 하드웨어 부분과 소프트웨어 부분의 연계 과정을 설명하기 위한 도면들이다.2A to 2D are diagrams for explaining an association process between a hardware part and a software part of the Internet QoS equipment according to the present invention.

도 3은 본 발명에 의한 인터넷 QoS 장비의 하드웨어 부분의 시간의 흐름에 따른 동작 과정을 나타내는 흐름도이다.3 is a flowchart illustrating an operation process over time of a hardware portion of the Internet QoS equipment according to the present invention.

도 4는 본 발명에 의한 인터넷 QoS 장비의 소프트웨어 부분의 시간의 흐름에 따른 동작 과정을 나타내는 흐름도이다.4 is a flowchart illustrating an operation process over time of the software portion of the Internet QoS equipment according to the present invention.

♣도면의 주요 부분에 대한 부호의 설명 ♣♣ Explanation of symbols for the main parts of the drawing ♣

10 : QoS 가속 관리자 20 : QoS 코어 관리자10: QoS Acceleration Manager 20: QoS Core Manager

110 : 네트워크 인터페이스 120 : 포워딩부110: network interface 120: forwarding unit

130 : 메모리 140 : 콘텐츠 분류부130: memory 140: content classification unit

150 : 헤더 분류부 210 : QoS 메인 엔진150: header classifier 210: QoS main engine

220 : 세션/커넥션 제어부 230 : 사용자 인터페이스 220: session / connection control unit 230: user interface

본 발명은 인터넷 전송 장비에 관한 것으로, 특히 인터넷에서 서비스 품질(Quality of Service : 이하에서 "QoS"라 한다)을 보장하는 장비에 관한 것이다.The present invention relates to Internet transmission equipment, and more particularly to equipment that guarantees the quality of service (hereinafter referred to as "QoS") in the Internet.

QoS는 전송 품질과 서비스 가용성을 알려주는 전송 시스템의 수행 성능 척도이고, QoS 장비는 대역폭 분배와 트래픽 제어를 통해 중요 업무를 보장함으로써 네트워크 자원을 효율적으로 사용할 수 있도록 지원하는 장비이다.QoS is a performance measure of a transmission system that indicates transmission quality and service availability. QoS equipment is an equipment that enables efficient use of network resources by guaranteeing important tasks through bandwidth distribution and traffic control.

종래 기술에 의한 QoS 장비는 크게 소프트웨어 QoS 장비와 하드웨어 QoS 장비로 구분된다. 소프트웨어 QoS 장비는 다양한 QoS 알고리즘과 풍부한 하드웨어 자원(CPU, 메모리, 캐쉬 등)을 활용하여 다이내믹한 QoS 정책 수행이 가능하고, 업그레이드가 용이하며 상대적으로 개발 비용이 적게 들어 훨씬 경제적이라는 장점을 지니고 있다. 그러나, 소프트웨어 QoS 장비는 CPU의 처리속도 및 시스템 아키텍쳐로 인한 한계로 인해, 작은 사이즈의 패킷(64 ~ 256바이트) 처리에 대해서는 기가급의 성능을 내기 어렵다는 단점을 지니고 있다. 반면에, 하드웨어 QoS 장비는 작은 사이즈의 패킷의 경우에도 기가급의 성능을 낼 수 있다는 장점을 지니고 있다. 그러나, 하드웨어 QoS 장비는 자원 활용에 한계가 있으며, 복잡한 QoS 알고리즘을 하드웨어로 구현하기 위한 비용이 많이 들고, 차후의 인터넷 상황에 따라 유동적으로 변화하는 QoS 정책을 유연하게 적용하기 어렵다는 단점을 지니고 있다.Prior art QoS equipment is largely divided into software QoS equipment and hardware QoS equipment. Software QoS equipment has the advantage of being able to execute dynamic QoS policies by utilizing various QoS algorithms and abundant hardware resources (CPU, memory, cache, etc.), easy to upgrade, and relatively low in development cost. However, software QoS equipment has a disadvantage that it is difficult to achieve gigabytes of performance for processing small packets (64 to 256 bytes) due to limitations due to CPU processing speed and system architecture. Hardware QoS equipment, on the other hand, has the advantage of delivering gigabytes of performance even for small packets. However, hardware QoS equipment has limitations in resource utilization, it is expensive to implement complex QoS algorithms in hardware, and has a disadvantage in that it is difficult to flexibly apply a QoS policy that is dynamically changed according to the future Internet situation.

본 발명은 상기의 문제점을 해결하기 위하여 창안된 것으로, 전체 QoS 장비 중 가장 속도를 필요로 하는 부분은 주문형 집적회로(application-specific integrated circuit : 이하에서 "ASIC"이라 한다) 기반의 하드웨어로 구현하고, 가장 복잡한 대역폭 보장 제어를 위한 두뇌 부분인 QoS 알고리즘 처리 부분은 CISC(complex instruction set computer) 칩 기반의 소프트웨어로 구현함으로써, 하드웨어 QoS 장비에 비하여 훨씬 경제적이고, 다양한 인터넷 QoS 정책에 유연하게 대처할 수 있으면서도 기기급 성능을 낼 수 있는 인터넷 QoS 장비를 제공함을 그 목적으로 한다. The present invention was devised to solve the above problems, and the part which needs the most speed among the entire QoS equipment is implemented by hardware based on application-specific integrated circuit (hereinafter referred to as "ASIC"). In addition, the QoS algorithm processing part, which is the brain part for the most complex bandwidth guarantee control, is implemented by CISC (complex instruction set computer) chip-based software, which is more economical than hardware QoS equipment and can flexibly cope with various Internet QoS policies. Its purpose is to provide Internet QoS equipment that can deliver device-class performance.

상기의 목적들을 달성하기 위하여, 본 발명에 의한 인터넷 QoS 장비는 인터넷 회선에서 패킷을 전송받아 패킷 분류 규칙에 따라 클래스별로 분류하여 클래스별 패킷 큐에 저장하고, 전송 패킷 결정을 요청하는 제1 인터럽트를 생성하고, 제2 인터럽트에 따라 결정된 클래스의 패킷 큐에 저장된 패킷을 인터넷 회선으로 전송하는 ASIC 기반의 QoS 가속 관리자; 상기 제1 인터럽트에 의해 QoS 알고리즘을 수행하여 전송될 패킷의 클래스를 결정하고, 제2 인터럽트를 생성하여 결정된 클래스에 대한 정보를 QoS 가속 관리자에 제공하는 CISC 기반의 QoS 코어 관리자; 및 QoS 가속 관리자와 QoS 코어 관리자 사이에서 데이터를 전송하는 버스 장치;를 포함하여 구성된다.In order to achieve the above objects, the Internet QoS equipment according to the present invention receives a packet from the Internet line, classifies it according to packet classification rules, stores it in a packet queue for each class, and receives a first interrupt requesting transmission packet determination. An ASIC-based QoS Acceleration Manager for generating and transmitting a packet stored in a packet queue of a class determined according to the second interrupt to the Internet line; A CISC-based QoS core manager that performs a QoS algorithm by the first interrupt to determine a class of a packet to be transmitted, and generates a second interrupt to provide information on the determined class to a QoS acceleration manager; And a bus device for transferring data between the QoS Acceleration Manager and the QoS Core Manager.

상기 인터넷 QoS 장비에서 QoS 가속 관리자는 패킷이 N개 유입된 경우와 제1 인터럽트 발생 후 M㎲ 이상 경과한 후에도 패킷 큐에 패킷이 남아있는 경우 새로운 제1 인터럽트를 생성하는 것을 특징으로 한다.In the Internet QoS equipment, the QoS acceleration manager generates a new first interrupt when N packets are introduced and when packets remain in the packet queue even after M㎲ or more elapses after the first interrupt occurs.

상기 인터넷 QoS 장비에서 QoS 가속 관리자는 제1 인터럽트 발생과 함께 제2 인터럽트에 따라 인터넷 회선으로 전송한 패킷 양을 QoS 코어 관리자에 제공하는 것을 특징으로 한다.In the Internet QoS equipment, the QoS acceleration manager provides the QoS core manager with the amount of packets transmitted to the Internet line according to the second interrupt with the occurrence of the first interrupt.

상기 인터넷 QoS 장비에서 QoS 가속 관리자는 인터넷 회선에 접속되어 인터넷 패킷을 입력하고 출력하는 네트워크 인터페이스; 네트워크 인터페이스를 통해 입력된 패킷을 헤더 분류부 및 콘텐츠 분류부의 패킷 분류 규칙에 따라 클래스별로 분류하여 메모리의 패킷 큐에 저장하고, 상기 제1 인터럽트를 생성하고, 상기 제2 인터럽트에 따라 결정된 클래스의 패킷 큐에 저장된 패킷을 네트워크 인터페이스를 통해 출력하는 포워딩부; 다수의 클래스별 패킷 큐를 구비한 메모리; 포워딩부의 요청에 따라 입력된 패킷의 헤더를 필터링하고 패킷 분류 규칙을 적용하여 클래스와 우선순위를 결정하는 헤더 분류부; 및 포워딩부의 요청에 따라 입력된 패킷의 프로토콜을 필터링하고 패킷 분류 규칙을 적용하여 클래스와 우선순위를 결정하는 콘텐츠 분류부;를 구비함을 특징으로 한다.In the Internet QoS equipment, the QoS Acceleration Manager includes a network interface connected to an Internet line to input and output Internet packets; The packets input through the network interface are classified into classes according to the packet classification rules of the header classifier and the content classifier, and stored in the packet queue of the memory, the first interrupt is generated, and the packets of the class determined according to the second interrupt. A forwarding unit configured to output a packet stored in a queue through a network interface; A memory having a plurality of class-specific packet queues; A header classification unit for filtering a header of an input packet according to a request of a forwarding unit and determining a class and a priority by applying a packet classification rule; And a content classifier for filtering the protocol of the input packet according to a request of the forwarding unit and determining a class and a priority by applying a packet classification rule.

상기 인터넷 QoS 장비에서 QoS 코어 관리자는 상기 제1 인터럽트에 의해 QoS 알고리즘을 수행하여 전송될 패킷의 클래스를 결정하고, 제2 인터럽트를 생성하여 결정된 클래스에 대한 정보를 QoS 가속 관리자에 제공하고, 사용자 인터페이스와 연계하여 QoS 정책을 수립하고, QoS 정책에 따라 QoS 클래스 및 클래스별 패킷 분류 규칙을 생성하여 QoS 가속 관리자에 제공하는 QoS 메인 엔진; QoS 가속 관리자에서 제공되는 패킷 정보 중 동적 세션 정보와 TCP 커넥션 정보를 관리하여 세션과 커넥션을 제어하는 세션/커넥션 제어부; 및 사용자의 제어명령을 QoS 메인 엔진에 제공하는 사용자 인터페이스;를 구비함을 특징으로 한다.In the Internet QoS equipment, a QoS core manager performs a QoS algorithm by the first interrupt to determine a class of a packet to be transmitted, generates a second interrupt, and provides information about the determined class to a QoS acceleration manager, and a user interface. A QoS main engine that establishes a QoS policy in association with the QoS policy and generates a QoS class and a packet classification rule for each class according to the QoS policy and provides the QoS acceleration manager to the QoS acceleration manager; A session / connection control unit controlling sessions and connections by managing dynamic session information and TCP connection information among packet information provided by a QoS acceleration manager; And a user interface for providing a control command of the user to the QoS main engine.

이하에서, 본 발명에 따른 인터넷 QoS 장비에 대한 바람직한 실시예를 첨부된 도면에 의거하여 상세하게 설명하기로 한다.Hereinafter, a preferred embodiment of the Internet QoS equipment according to the present invention will be described in detail with reference to the accompanying drawings.

도 1에 의하면, 본 발명에 의한 인터넷 QoS 장비(1)는 ASIC 기반의 QoS 가속 관리자(10), CISC 기반의 QoS 코어 관리자(20) 그리고 QoS 가속 관리자(10)와 QoS 코어 관리자(20) 사이에서 데이터를 전송하는 버스 장치(30)를 포함하여 구성된다.According to FIG. 1, the Internet QoS equipment 1 according to the present invention includes an ASIC-based QoS Acceleration Manager 10, a CISC-based QoS Core Manager 20, and a QoS Acceleration Manager 10 between a QoS Core Manager 20. Is configured to include a bus device 30 for transmitting data.

QoS 가속 관리자(10)는 인터넷 회선에서 패킷을 전송받아 패킷 분류 규칙에 따라 클래스별로 분류하여 메모리에 구비된 클래스별 패킷 큐에 저장하고, 전송 패킷 결정을 요청하는 제1 인터럽트를 생성한다. 또한, QoS 가속 관리자(10)는 QoS 코어 관리자(20)에 의해 생성된 제2 인터럽트에 따라 결정된 클래스의 패킷 큐에 저장된 패킷을 인터넷 회선으로 전송한다.The QoS acceleration manager 10 receives the packet from the Internet line, classifies the packet according to packet classification rules, stores the packet in a packet queue for each class included in the memory, and generates a first interrupt requesting transmission packet determination. In addition, the QoS acceleration manager 10 transmits the packet stored in the packet queue of the class determined according to the second interrupt generated by the QoS core manager 20 to the Internet line.

이와 같은 QoS 가속 관리자(10)는 네트워크 인터페이스(110), 포워딩부(120), 메모리(130), 헤더 분류부(140) 및 콘텐츠 분류부(150)를 구비하는데, 기가급의 회선 속도에 대응하기 위하여 ASIC으로 구현된다.The QoS acceleration manager 10 includes a network interface 110, a forwarding unit 120, a memory 130, a header classifier 140, and a content classifier 150. The QoS acceleration manager 10 corresponds to a gigabit line speed. It is implemented as an ASIC.

네트워크 인터페이스(110)는 인터넷 회선에 접속되어 인터넷 패킷을 입력하고 출력한다.The network interface 110 is connected to an Internet line to input and output Internet packets.

포워딩부(120)는 QoS 가속 관리자(10)의 다른 구성요소들을 총괄적으로 제어하는 구성요소로서, 네트워크 인터페이스(110)를 통해 입력된 패킷을 헤더 분류부(150) 및 콘텐츠 분류부(140)의 패킷 분류 규칙에 따라 클래스별로 분류하여 메모리(130)의 패킷 큐에 저장하고, 제1 인터럽트를 생성한다. 또한, 포워딩부(120)는 제2 인터럽트에 따라 결정된 클래스의 패킷 큐에 저장된 패킷을 네트워크 인터페이스(110)를 통해 출력한다.The forwarding unit 120 is a component that collectively controls other components of the QoS Acceleration Manager 10. The forwarding unit 120 transmits a packet input through the network interface 110 to the header classifier 150 and the content classifier 140. Classified according to the packet classification rules for each class and stored in the packet queue of the memory 130, and generates a first interrupt. In addition, the forwarding unit 120 outputs the packet stored in the packet queue of the class determined according to the second interrupt through the network interface 110.

QoS 가속 관리자(10)의 포워딩부(120)는 네트워크 인터페이스(110)를 통해 패킷이 N개 유입된 경우와 제1 인터럽트 발생 후 M㎲ 이상 경과한 후에도 패킷 큐에 패킷이 남아있는 경우 새로운 제1 인터럽트를 생성하게 된다. 여기서, N은 제1 인터럽트당 패킷의 제한 갯수로서, QoS 코어 관리자(20)에서 처리가 가능한 최대의 인터럽트 갯수를 참조하여 결정할 수 있다. 또한, M은 패킷 최대 전송 지연시간으로, 허용가능한 패킷 지연시간과 QoS 코어 관리자(20) 측에서 처리가 가능한 최대의 인터럽트 갯수를 참조하여 결정할 수 있다.The forwarding unit 120 of the QoS acceleration manager 10 receives a new first packet when N packets are introduced through the network interface 110 and when packets remain in the packet queue even after M㎲ or more elapses after the first interrupt occurs. Will generate an interrupt. Here, N is a limit number of packets per first interrupt, which may be determined by referring to the maximum number of interrupts that can be processed by the QoS core manager 20. In addition, M is a packet maximum transmission delay time, which may be determined by referring to an allowable packet delay time and the maximum number of interrupts that can be processed by the QoS core manager 20.

또한, 포워딩부(120)는 제2 인터럽트에 따라 인터넷 회선으로 전송한 패킷 양을 제1 인터럽트 발생과 함께 QoS 코어 관리자(20)에 제공한다. In addition, the forwarding unit 120 provides the QoS core manager 20 with the amount of packets transmitted to the Internet line according to the second interrupt with the occurrence of the first interrupt.

메모리(130)는 다수의 클래스별 패킷 큐를 구비한다.The memory 130 includes a plurality of class-specific packet queues.

헤더 분류부(150)는 포워딩부(120)의 요청에 따라 입력된 패킷의 헤더를 필터링하고 패킷 분류 규칙을 적용하여 클래스와 우선순위를 결정한다. 즉, 헤더 분류부(150)는 입력된 패킷을 다음과 같이 계층별로 구분한다. 첫째, 데이터링크 계층 분류로서, 이더넷 주소를 근원지(Source)와 목적지(Destination)에 따라 분류할 수 있으며, IEEE 802.1q 태그 타입의 경우 user_priority 또는 12비트 VID(Vlan ID)에 따라 분류 가능하다. 둘째, 네트워크 계층 분류로서, IP(Internet Protocol), ICMP(Internet Control Message Protocol), IGMP(Internet Group Management Protocol), RARP(Reverse Address Resolution Protocol) 등으로 구분하며, 전송 계층 분류가 가능한 프로토콜(IP, ICMP)에 대해서는 각각의 세부 분류를 결정짓는다. 또한, 근원지(Source)와 목적지(Destination)의 IP 주소를 분류할 수 있다. 셋째, 전송 계층 분류로서, 네트워크 계층 분류에서 결정된 프로토콜에 맞는 분류에 따라 전송 헤더를 분류한다. TCP, UDP와 근원지(Source)와 목적지(Destination) 포트 등을 분류할 수 있다.The header classifier 150 filters the header of the input packet according to the request of the forwarding unit 120 and applies a packet classification rule to determine the class and priority. That is, the header classifier 150 classifies the input packet into layers as follows. First, as the data link layer classification, Ethernet addresses can be classified according to source and destination, and in the case of IEEE 802.1q tag type, can be classified according to user_priority or 12-bit VID (Vlan ID). Second, as network layer classification, IP (Internet Protocol), ICMP (Internet Control Message Protocol), IGMP (Internet Group Management Protocol), RARP (Reverse Address Resolution Protocol), etc. are classified. ICMP) determines each subdivision. In addition, IP addresses of the source and destination can be classified. Third, as a transport layer classification, the transport header is classified according to a classification suitable for the protocol determined in the network layer classification. TCP, UDP and source and destination ports can be classified.

콘텐츠 분류부(140)는 포워딩부(120)의 요청에 따라 입력된 패킷의 프로토콜을 필터링하고 패킷 분류 규칙을 적용하여 클래스와 우선순위를 결정한다. 즉, 콘텐츠 분류부(140)는 패킷이 HTTP(Hypertext Transfer Protocol) 프로토콜에 의한 것인 경우 URL(Uniform Resource Locator), POST, GET, 콘텐츠 길이, mime(Multi-Purpose Internet Mail Extensions) 타입 등을 필터링하고, SMTP(Simple Mail Transfer Protocol) 프로토콜에 의한 것인 경우 body, 받는 사람, 보내는 사람, 첨부 파일 등을 필터링하고, 기타 필요한 프로토콜에 대한 필터링을 추가하거나, 오프셋을 이용한 콘텐츠 스트링 필터링을 수행할 수 있다.The content classifier 140 filters the protocol of the input packet according to the request of the forwarding unit 120 and applies a packet classification rule to determine the class and priority. That is, the content classifier 140 filters the URL (Uniform Resource Locator), POST, GET, content length, and multi-purpose internet mail extensions (MIME) type when the packet is based on the HTTP (Hypertext Transfer Protocol) protocol. And, if it is by the Simple Mail Transfer Protocol (SMTP) protocol, filter the body, recipients, senders, attachments, etc., add filtering for other necessary protocols, or perform content string filtering using offsets. have.

QoS 코어 관리자(20)는 제1 인터럽트에 의해 QoS 알고리즘을 수행하여 전송될 패킷의 클래스를 결정하고, 제2 인터럽트를 생성하여 결정된 클래스에 대한 정보를 QoS 가속 관리자에 제공한다.The QoS core manager 20 performs a QoS algorithm by the first interrupt to determine the class of the packet to be transmitted, and generates a second interrupt to provide the QoS acceleration manager with information about the determined class.

QoS 코어 관리자(20)는 QoS 메인 엔진(210), 세션/커넥션 제어부(220) 및 사용자 인터페이스(230)를 구비하는데, CISC 컴퓨터 상에서 동작하는 소프트웨어로 구현된다.The QoS core manager 20 has a QoS main engine 210, a session / connection controller 220, and a user interface 230, which is implemented in software running on a CISC computer.

QoS 메인 엔진(210)은 사용자 인터페이스(230)와 연계하여 QoS 정책을 수립하고, 시스템 초기화 과정에서 QoS 정책에 따라 QoS 클래스 및 클래스별 패킷 분류 규칙을 생성하여 QoS 가속 관리자(10)에 제공한다. 또한, QoS 메인 엔진(210)은 제1 인터럽트에 의해 QoS 알고리즘을 수행하여 전송될 패킷의 클래스를 결정하고, 제2 인터럽트를 생성하여 결정된 클래스에 대한 정보를 QoS 가속 관리자(10)에 제공한다. 본 발명의 일실시예에서는 QoS 메인 엔진(210)에 의해 수행되는 QoS 알고리즘으로 클래스 기반 최우선 계층형 가중치 보정 알고리즘(Hierarchical Weighted Class Based Queuing : HWCBQ)을 사용하는 것으로 한다. 그러나, 본 발명의 범위는 QoS 메인 엔진(210)에 의해 수행되는 QoS 알고리즘의 종류에 의해 한정되지는 아니한다.The QoS main engine 210 establishes a QoS policy in association with the user interface 230, and generates a QoS class and a packet classification rule for each class according to the QoS policy in the system initialization process and provides the QoS policy to the QoS acceleration manager 10. In addition, the QoS main engine 210 performs a QoS algorithm by the first interrupt to determine the class of the packet to be transmitted, and generates a second interrupt to provide the QoS acceleration manager 10 with information about the determined class. In an embodiment of the present invention, a class-based first-class hierarchical weighting algorithm (HWCBQ) is used as a QoS algorithm performed by the QoS main engine 210. However, the scope of the present invention is not limited by the type of QoS algorithm performed by the QoS main engine 210.

세션/커넥션 제어부(220)는 QoS 가속 관리자(10)에서 제공되는 패킷 정보 중 동적 세션 정보와 TCP 커넥션 정보를 관리하여 세션과 커넥션을 제어한다.The session / connection controller 220 controls the session and the connection by managing the dynamic session information and the TCP connection information among the packet information provided by the QoS acceleration manager 10.

사용자 인터페이스(230)는 사용자의 제어명령을 QoS 메인 엔진(210)에 제공하여 QoS 정책을 수립하도록 한다.The user interface 230 provides a control command of the user to the QoS main engine 210 to establish a QoS policy.

버스 장치(30)는 QoS 가속 관리자(10)와 QoS 코어 관리자(20) 사이에서 데이터를 전송한다. QoS 가속 관리자(10)에서 QoS 코어 관리자(20)로 전송되는 정보에는 제1 인터럽트의 생성과 함께 제2 인터럽트에 의해 인터넷 회선으로 전송된 패킷 양에 대한 정보를 비롯하여 헤더 분류 정보, 콘텐츠 분류 정보, 세션 정보 등이 포함된다. 이에 비하여, QoS 코어 관리자(20)에서 QoS 가속 관리자(10)로 전송되는 정보에는 제2 인터럽트의 생성과 함께 QoS 코어 관리자(20)의 QoS 정책에 따라 결 정된 클래스의 전송 우선 순위에 관한 정보를 비롯하여 QoS 클래스 및 클래스별 패킷 분류 규칙 정보 등이 포함된다. 본 발명의 일실시예에서는 버스 장치(30)로 PCI(Peripheral Component Interconnect) 버스 64비트/66MHz를 사용하기로 한다.The bus device 30 transfers data between the QoS Acceleration Manager 10 and the QoS Core Manager 20. The information transmitted from the QoS acceleration manager 10 to the QoS core manager 20 includes header classification information, content classification information, including information on the amount of packets transmitted to the Internet line by the second interrupt with the generation of the first interrupt. Session information and the like. On the contrary, the information transmitted from the QoS core manager 20 to the QoS acceleration manager 10 includes information on the transmission priority of the class determined according to the QoS policy of the QoS core manager 20 together with the generation of the second interrupt. In addition, QoS class and packet classification rule information for each class are included. In an embodiment of the present invention, the bus device 30 uses a Peripheral Component Interconnect (PCI) bus 64 bits / 66 MHz.

이하에서 도 2a 내지 도 2d를 참조하여 본 발명에 의한 인터넷 QoS 장비(1)의 하드웨어(QoS 가속 관리자)/소프트웨어(QoS 코어 관리자) 연계 과정을 상세히 설명하기로 한다.Hereinafter, a hardware (QoS acceleration manager) / software (QoS core manager) linking process of the Internet QoS equipment 1 according to the present invention will be described in detail with reference to FIGS. 2A to 2D.

도 2a에 의하면, 네트워크 인터페이스(110)를 통해 인터넷 패킷이 입력되면, 하드웨어 부분은 입력된 패킷을 패킷 분류 규칙에 따라 해당 클래스로 분류하고, 분류된 클래스에 대응하는 패킷 큐에 저장한다. 여기서 패킷 분류 규칙은 QoS 메인 엔진(210)에서 결정되어 시스템 초기화 과정에서 콘텐츠 분류부(140) 및 헤더 분류부(150)의 레지스터에 저장된다.According to FIG. 2A, when an internet packet is input through the network interface 110, the hardware part classifies the input packet into a corresponding class according to a packet classification rule and stores the received packet in a packet queue corresponding to the classified class. The packet classification rule is determined by the QoS main engine 210 and stored in the registers of the content classification unit 140 and the header classification unit 150 during system initialization.

도 2b에 의하면, 하드웨어 부분은 패킷이 예를 들어 10개 유입된 경우와 제1 인터럽트 발생 후 예를 들어 100㎲ 이상 경과한 후에도 패킷 큐에 패킷이 남아있는 경우 새로운 제1 인터럽트를 생성함으로써 패킷을 전송할 준비가 되었음을 소프트웨어 부분에 알리게 된다. 이와 더불어, 하드웨어 부분은 직전 제2 인터럽트 발생 이후 패킷 큐에서 인출되어 출력된 패킷의 양을 나타내는 정보(패킷 크기 및 패킷 큐의 식별자)를 소프트웨어 부분으로 전달한다.According to FIG. 2B, the hardware part generates a packet by generating a new first interrupt when 10 packets are introduced, for example, and when a packet remains in the packet queue even after 100 ms or more elapse after the first interrupt occurs. Notifies the software part that it is ready to transfer. In addition, the hardware portion delivers information (packet size and packet queue identifier) indicating the amount of packets fetched and output from the packet queue since the last second interrupt occurred to the software portion.

도 2c에 의하면, 소프트웨어 부분은 하드웨어 부분에서 전달된 정보를 QoS 알고리즘에 적용하여 어떤 클래스의 패킷 큐에 저장된 패킷을 전송시켜야 할 것인지를 결정하여, 결정된 정보를 하드웨어 부분으로 전달하면서 제2 인터럽트를 생성 한다.According to FIG. 2C, the software portion determines which class of packet queues should be transmitted by applying the information transferred from the hardware portion to the QoS algorithm, and generates a second interrupt while passing the determined information to the hardware portion. do.

도 2d에 의하면, 하드웨어 부분은 소프트웨어 부분에서 결정된 클래스의 패킷 큐에서 패킷을 인출하여 네트워크 인터페이스를 통해 출력한다. 예를 들어, 제1 내지 제4 클래스의 패킷 큐에 각각 2, 5, 4, 3개의 패킷이 저장되어 있고, 소프트웨어 부분에서 제2 클래스, 제1 클래스, 제3 클래스의 순으로 우선순위를 부여하여 10개의 패킷을 전송하도록 결정한 경우, 제2 클래스의 5개의 패킷, 제1 클래스의 2개의 패킷과 제3 클래스의 3개의 패킷이 전송된다. 이때, 하드웨어 부분은 실제 출력된 패킷의 크기 및 패킷 큐의 식별자를 기록하여 새로운 제1 인터럽트 발생과 더불어 소프트웨어 부분으로 전달한다.According to FIG. 2D, the hardware portion extracts the packet from the packet queue of the class determined by the software portion and outputs the packet through the network interface. For example, 2, 5, 4, and 3 packets are stored in the packet queues of the first to fourth classes, respectively, and the software portion gives priority to the second class, the first class, and the third class. If 10 packets are determined to be transmitted, five packets of the second class, two packets of the first class, and three packets of the third class are transmitted. At this time, the hardware part records the size of the packet actually output and the identifier of the packet queue and delivers the new first interrupt to the software part.

도 2a 내지 도 2d에서 설명한 하드웨어 부분(QoS 가속 관리자)의 동작 과정을 시간의 흐름에 따라 도시하면 도 3과 같다.FIG. 3 illustrates an operation process of the hardware part (QoS acceleration manager) described with reference to FIGS. 2A to 2D over time.

도 3에서, N은 제1 인터럽트 생성 이후 입력된 패킷의 갯수이고, N'은 허용 가능한 N의 최대값이고, M은 제1 인터럽트를 요청한 시간이고, M'은 전송할 패킷이 있는 경우 허용가능한 제1 인터럽트의 최대 간격이다.In FIG. 3, N is the number of packets input since the first interrupt is generated, N 'is the maximum value of N allowable, M is the time at which the first interrupt is requested, and M' is the allowable first when there is a packet to send. 1 Interval maximum interval.

S300의 시스템 초기화 단계에서는 QoS 메인 엔진(210)으로부터 클래스 정보를 전달받아 메모리(130)에 각 클래스에 대응하는 패킷 큐를 설정하고, 패킷 분류 규칙을 전달받아 콘텐츠 분류부(140) 및 헤더 분류부(150)의 레지스터에 저장한다.In the system initialization step of S300, the class information is received from the QoS main engine 210, the packet queue corresponding to each class is set in the memory 130, and the packet classification rule is received to receive the content classification unit 140 and the header classification unit. It is stored in the register of 150.

소프트웨어 부분에서 생성된 제2 인터럽트를 감지하면, 하드웨어 부분은 소프트웨어 부분에서 결정된 패킷 큐에서 패킷을 인출하여 네트워크 인터페이스(110)를 통해 출력한다(S310, S320). If the second interrupt generated by the software portion is detected, the hardware portion extracts the packet from the packet queue determined by the software portion and outputs the packet through the network interface 110 (S310 and S320).

네트워크 인터페이스(110)를 통해 패킷이 입력되면, 입력된 패킷을 패킷 분류 규칙에 따라 분류하여 대응하는 클래스의 패킷 큐에 저장하고, N을 1 증가시킨다(S330, S340). 이와 같이 증가된 N이 N'과 같거나 작은 경우에는 S310 단계 이하의 과정을 다시 진행하고, 큰 경우에는 소프트웨어 부분으로 제1 인터럽트를 생성하고, M과 N을 각각 현재시간과 0으로 초기화시킨다(S350, S380).When a packet is input through the network interface 110, the input packet is classified according to packet classification rules, stored in a packet queue of a corresponding class, and N is increased by one (S330 and S340). When the increased N is equal to or smaller than N ', the process proceeds to step S310 or less, and when the increased N is large, the first interrupt is generated by the software part, and M and N are initialized to the current time and 0, respectively ( S350, S380).

한편, 네트워크 인터페이스(110)를 통해 입력된 패킷도 없고 패킷 큐에 저장된 패킷도 없는 경우 또는 네트워크 인터페이스(110)를 통해 입력된 패킷이 없고 패킷 큐에 저장된 패킷은 있지만 제1 인터럽트가 발생한 후 M'이 경과하지 않은 경우에는 S310 단계 이하의 과정을 다시 진행한다(S330, S360, S370). 이에 비하여, 패킷 큐에 저장된 패킷이 있고 제1 인터럽트가 발생한 후 M'이 경과한 경우에는, 소프트웨어 부분으로 제1 인터럽트를 생성하고, M과 N을 각각 현재시간과 0으로 초기화시킨 다음 S310 단계 이하의 과정을 다시 진행한다(S360, S370, S380).On the other hand, if there is no packet input through the network interface 110 and no packet stored in the packet queue or there is no packet input through the network interface 110 and there is a packet stored in the packet queue, but after the first interrupt occurs M ' If this has not elapsed, the process of step S310 or less is performed again (S330, S360, and S370). On the other hand, if there is a packet stored in the packet queue and M 'has elapsed after the first interrupt has occurred, the first interrupt is generated by the software portion, and M and N are initialized to the current time and 0, respectively, and then S310 or less. The process of again proceeds (S360, S370, S380).

도 2a 내지 도 2d에서 설명한 소프트웨어 부분(QoS 코어 관리자)의 동작 과정을 시간의 흐름에 따라 도시하면 도 4와 같다.The operation of the software portion (QoS core manager) described with reference to FIGS. 2A to 2D is shown as FIG. 4 as time passes.

S400의 시스템 초기화 단계에서 소프트웨어 부분은 클래스 정보를 생성하여 하드웨어 부분의 포워딩부(120)로 전달하여 메모리(130)에 각 클래스에 대응하는 패킷 큐를 설정하도록 하고, 패킷 분류 규칙을 생성하여 하드웨어 부분의 콘텐츠 분류부(140) 및 헤더 분류부(150)에 전달한다.In the system initialization step of S400, the software portion generates class information and delivers the information to the forwarding unit 120 of the hardware portion to set a packet queue corresponding to each class in the memory 130, and generates a packet classification rule to generate the hardware portion. The content classifier 140 and the header classifier 150 are transmitted.

이후, 하드웨어 부분에서 제1 인터럽트가 발생하기를 대기하였다가 제1 인터럽트가 발생하면 하드웨어 부분에서 패킷 큐에서 인출되어 출력된 패킷의 양을 나 타내는 정보(패킷 전송 정보)가 전달되었는지를 확인한다(S410 내지 S430). 하드웨어 부분에서 전달된 패킷 전송 정보가 있으면 그 정보로 QoS 메인 엔진(210)의 QoS 알고리즘을 보정한다(S430, S440). 소프트웨어 부분은 하드웨어 부분에서 생성된 제1 인터럽트에 따라 QoS 알고리즘을 수행하여 네트워크 인터페이스를 통해 출력할 패킷이 저장된 패킷 큐를 결정하고(S450), 제2 인터럽트를 생성하여 결정된 패킷 큐에 대한 정보를 하드웨어 부분으로 전달한다(S460). 이후, 소프트웨어 부분은 S410 단계 이후를 진행하면서 새로운 제1 인터럽트가 발생되기를 대기하게 된다. Thereafter, the hardware unit waits for the first interrupt to occur, and when the first interrupt occurs, the hardware unit checks whether information (packet transmission information) indicating the amount of packets output from the packet queue and outputted has been delivered ( S410 to S430). If there is packet transmission information transmitted from the hardware part, the QoS algorithm of the QoS main engine 210 is corrected with the information (S430 and S440). The software part performs a QoS algorithm according to the first interrupt generated by the hardware part to determine a packet queue in which a packet to be output through the network interface is stored (S450), and generates information on the packet queue determined by generating the second interrupt. Transfer to the part (S460). Thereafter, the software part waits for a new first interrupt to be generated while proceeding after step S410.

이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far I looked at the center of the preferred embodiment for the present invention. Those skilled in the art will appreciate that the present invention can be implemented in a modified form without departing from the essential features of the present invention. Therefore, the disclosed embodiments should be considered in descriptive sense only and not for purposes of limitation. The scope of the present invention is shown in the claims rather than the foregoing description, and all differences within the scope will be construed as being included in the present invention.

본 발명에 의하면, 전체 QoS 장비 중 가장 속도를 필요로 하는 부분은 ASIC 기반의 하드웨어로 구현하므로 기가급의 성능을 가지면서도, 가장 복잡한 대역폭 보장 제어를 위한 두뇌 부분인 QoS 알고리즘 처리 부분은 CISC 칩 기반의 소프트웨어로 구현함으로써 다양한 인터넷 QoS 정책에 유연하게 대처할 수 있고, 하드웨어 QoS 장비에 비하여 개발/유지 비용이 적게 요구된다.According to the present invention, since the most required portion of the entire QoS equipment is implemented in ASIC-based hardware, the QoS algorithm processing portion, which is the brain part for the most complex bandwidth guarantee control, has a giga-level performance and is based on the CISC chip. It is possible to flexibly cope with various Internet QoS policies by implementing the software of the software, and it requires less development / maintenance cost than hardware QoS equipment.

Claims (5)

인터넷 회선에서 패킷을 전송받아 패킷 분류 규칙에 따라 클래스별로 분류하여 클래스별 패킷 큐에 저장하고, 전송 패킷 결정을 요청하는 제1 인터럽트를 생성하고, 제2 인터럽트에 따라 결정된 클래스의 패킷 큐에 저장된 패킷을 인터넷 회선으로 전송하는 ASIC 기반의 QoS 가속 관리자―여기서, 상기 QoS 가속 관리자는 인터넷 회선에 접속되어 인터넷 패킷을 입력하고 출력하는 네트워크 인터페이스; 네트워크 인터페이스를 통해 입력된 패킷을 헤더 분류부 및 콘텐츠 분류부의 패킷 분류 규칙에 따라 클래스별로 분류하여 메모리의 패킷 큐에 저장하고, 상기 제1 인터럽트를 생성하고, 상기 제2 인터럽트에 따라 결정된 클래스의 패킷 큐에 저장된 패킷을 네트워크 인터페이스를 통해 출력하는 포워딩부; 다수의 클래스별 패킷 큐를 구비한 메모리; 포워딩부의 요청에 따라 입력된 패킷의 헤더를 필터링하고 패킷 분류 규칙을 적용하여 클래스와 우선순위를 결정하는 헤더 분류부; 및 포워딩부의 요청에 따라 입력된 패킷의 프로토콜을 필터링하고 패킷 분류 규칙을 적용하여 클래스와 우선순위를 결정하는 콘텐츠 분류부를 구비함―;Receives packets from the Internet line, classifies them according to packet classification rules, stores them in a packet queue for each class, generates a first interrupt requesting transmission packet determination, and stores the packets in a packet queue of a class determined according to the second interrupt. An ASIC-based QoS Acceleration Manager for transmitting a CSI to an Internet line, wherein the QoS Acceleration Manager comprises: a network interface connected to the Internet line to input and output Internet packets; The packets input through the network interface are classified into classes according to the packet classification rules of the header classifier and the content classifier, and stored in the packet queue of the memory, the first interrupt is generated, and the packets of the class determined according to the second interrupt. A forwarding unit configured to output a packet stored in a queue through a network interface; A memory having a plurality of class-specific packet queues; A header classification unit for filtering a header of an input packet according to a request of a forwarding unit and determining a class and a priority by applying a packet classification rule; And a content classification unit for filtering the protocol of the input packet and applying a packet classification rule to determine a class and priority according to a request of the forwarding unit. 상기 제1 인터럽트에 의해 QoS 알고리즘을 수행하여 전송될 패킷의 클래스를 결정하고, 제2 인터럽트를 생성하여 결정된 클래스에 대한 정보를 QoS 가속 관리자에 제공하는 CISC 기반의 QoS 코어 관리자―여기서, 상기 QoS 코어 관리자는 상기 제1 인터럽트에 의해 QoS 알고리즘을 수행하여 전송될 패킷의 클래스를 결정하고, 제2 인터럽트를 생성하여 결정된 클래스에 대한 정보를 QoS 가속 관리자에 제공하고, 사용자 인터페이스와 연계하여 QoS 정책을 수립하고, QoS 정책에 따라 QoS 클래스 및 클래스별 패킷 분류 규칙을 생성하여 QoS 가속 관리자에 제공하는 QoS 메인 엔진; 상기 QoS 가속 관리자에서 제공되는 패킷 정보 중 동적 세션 정보와 TCP 커넥션 정보를 관리하여 세션과 커넥션을 제어하는 세션/커넥션 제어부; 및 사용자의 제어명령을 QoS 메인 엔진에 제공하는 사용자 인터페이스를 구비함―; 및A CISC-based QoS core manager for performing a QoS algorithm by the first interrupt to determine a class of a packet to be transmitted, and to generate a second interrupt to provide information about the determined class to a QoS acceleration manager, wherein the QoS core The administrator performs a QoS algorithm by the first interrupt to determine the class of the packet to be transmitted, generates a second interrupt, provides information on the determined class to the QoS Acceleration Manager, and establishes a QoS policy in association with the user interface. A QoS main engine for generating a QoS class and a packet classification rule for each class according to the QoS policy and providing the QoS class to the QoS acceleration manager; A session / connection control unit controlling sessions and connections by managing dynamic session information and TCP connection information among packet information provided by the QoS acceleration manager; And a user interface for providing a control command of the user to the QoS main engine; And QoS 가속 관리자와 QoS 코어 관리자 사이에서 데이터를 전송하는 버스 장치;를 포함함을 특징으로 하는 인터넷 QoS 장비.And a bus unit for transferring data between the QoS Acceleration Manager and the QoS Core Manager. 제1항에 있어서, 상기 QoS 가속 관리자는The method of claim 1, wherein the QoS Acceleration Manager 패킷이 N개 유입된 경우와 제1 인터럽트 발생 후 M㎲ 이상 경과한 후에도 패킷 큐에 패킷이 남아있는 경우 새로운 제1 인터럽트를 생성하는 것을 특징으로 하는 인터넷 QoS 장비(여기서, N과 M은 양의 수).Internet QoS equipment, wherein N and M are positive when N packets are introduced and when packets remain in the packet queue after M㎲ or more have elapsed after the first interrupt is generated. Number). 제1항에 있어서, 상기 QoS 가속 관리자는The method of claim 1, wherein the QoS Acceleration Manager 제1 인터럽트 발생과 함께 제2 인터럽트에 따라 인터넷 회선으로 전송한 패킷 양을 QoS 코어 관리자에 제공하는 것을 특징으로 하는 인터넷 QoS 장비.And an amount of packets transmitted to the Internet line according to the second interrupt with the occurrence of the first interrupt to the QoS core manager. 삭제delete 삭제delete
KR1020030054901A 2003-08-08 2003-08-08 Apparatus for guaranteeing Quality of Service in Internet KR100545665B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030054901A KR100545665B1 (en) 2003-08-08 2003-08-08 Apparatus for guaranteeing Quality of Service in Internet

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030054901A KR100545665B1 (en) 2003-08-08 2003-08-08 Apparatus for guaranteeing Quality of Service in Internet

Publications (2)

Publication Number Publication Date
KR20050017633A KR20050017633A (en) 2005-02-22
KR100545665B1 true KR100545665B1 (en) 2006-01-24

Family

ID=37227290

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030054901A KR100545665B1 (en) 2003-08-08 2003-08-08 Apparatus for guaranteeing Quality of Service in Internet

Country Status (1)

Country Link
KR (1) KR100545665B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100701156B1 (en) * 2005-12-08 2007-03-28 한국전자통신연구원 Ethernet line card and Method for providing various services therein

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5457679A (en) * 1993-12-08 1995-10-10 At&T Corp. Channel sharing and memory sharing in a packet switching system
KR970056214A (en) * 1995-12-28 1997-07-31 웨이스 엘리 Apparatus and method for scheduling communication traffic over asynchronous transmission network
KR20010001984A (en) * 1999-06-10 2001-01-05 정선종 Apparatus for Processing an ATM Layer Function
KR20030035327A (en) * 2001-10-31 2003-05-09 엘지전자 주식회사 Method for Processing Packet In Router of Shared Memory type

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5457679A (en) * 1993-12-08 1995-10-10 At&T Corp. Channel sharing and memory sharing in a packet switching system
KR970056214A (en) * 1995-12-28 1997-07-31 웨이스 엘리 Apparatus and method for scheduling communication traffic over asynchronous transmission network
KR20010001984A (en) * 1999-06-10 2001-01-05 정선종 Apparatus for Processing an ATM Layer Function
KR20030035327A (en) * 2001-10-31 2003-05-09 엘지전자 주식회사 Method for Processing Packet In Router of Shared Memory type

Also Published As

Publication number Publication date
KR20050017633A (en) 2005-02-22

Similar Documents

Publication Publication Date Title
US6611873B1 (en) Address-based service request distributing method and address converter
US7742474B2 (en) Virtual network interface cards with VLAN functionality
US8175116B2 (en) Multiprocessor system for aggregation or concatenation of packets
US11374858B2 (en) Methods and systems for directing traffic flows based on traffic flow classifications
US7764678B2 (en) Routing based on dynamic classification rules
US7684423B2 (en) System and method for virtual network interface cards based on internet protocol addresses
Varadarajan et al. EtheReal: A host-transparent real-time Fast Ethernet switch
US7792140B2 (en) Reflecting the bandwidth assigned to a virtual network interface card through its link speed
JP4454072B2 (en) IP communication network system and QoS guarantee device
US20120207158A1 (en) Method and system for classification and management of inter-blade network traffic in a blade server
US11314417B2 (en) Methods and systems for NVMe target load balancing based on real time metrics
US7613132B2 (en) Method and system for controlling virtual machine bandwidth
US8284789B2 (en) Methods and apparatus for providing dynamic data flow queues
US20060215697A1 (en) Protocol stack using shared memory
US11818022B2 (en) Methods and systems for classifying traffic flows based on packet processing metadata
JP2016528630A (en) Application-aware network management
US8630296B2 (en) Shared and separate network stack instances
US11375006B1 (en) Methods and systems for rating workloads based on network interface device resources and for optimal scheduling
Chuanxiong et al. Analysis and evaluation of the TCP/IP protocol stack of LINUX
KR100545665B1 (en) Apparatus for guaranteeing Quality of Service in Internet
US11621920B2 (en) Bandwidth-control policers in a network adapter
Ma et al. An INT-based TCP window modulator for congestion control in data center networks
Cisco Network-Based Application Recognition
Karrakchou et al. EP4: An application-aware network architecture with a customizable data plane
Doo et al. Multicore Flow Processor with Wire‐Speed Flow Admission Control

Legal Events

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

Payment date: 20130111

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140110

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150119

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170118

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20180108

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20181203

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20191217

Year of fee payment: 15