KR101344398B1 - Router and method for application awareness and traffic control on flow based router - Google Patents
Router and method for application awareness and traffic control on flow based router Download PDFInfo
- Publication number
- KR101344398B1 KR101344398B1 KR1020110108235A KR20110108235A KR101344398B1 KR 101344398 B1 KR101344398 B1 KR 101344398B1 KR 1020110108235 A KR1020110108235 A KR 1020110108235A KR 20110108235 A KR20110108235 A KR 20110108235A KR 101344398 B1 KR101344398 B1 KR 101344398B1
- Authority
- KR
- South Korea
- Prior art keywords
- packet
- application
- received packet
- flow block
- received
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
- H04L43/026—Capturing of monitoring data using flow identification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
- H04L43/028—Capturing of monitoring data by filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/43—Assembling or disassembling of packets, e.g. segmentation and reassembly [SAR]
Abstract
라우터 장치 및 라우터 장치의 애플리케이션 인지 및 트래픽 제어방법이 개시된다. 본 발명의 일 실시예에 따르면, 정밀 패킷 분석(Deep Packet Inspection: DPI) 장비가 별도의 장비가 아닌, 네트워크 구성요소 중에 하나인 라우터에 탑재되어 DPI 기능이 수행된다.Disclosed are a router device and an application recognition and traffic control method of the router device. According to an embodiment of the present invention, the Deep Packet Inspection (DPI) equipment is mounted on a router which is one of network components, rather than a separate equipment, to perform a DPI function.
Description
본 발명의 일 양상은 네트워크의 패킷 처리 기술에 관한 것으로, 보다 상세하게는 데이터 패킷과 연관된 애플리케이션 인지 및 트래픽 제어 기술에 관한 것이다.One aspect of the present invention relates to packet processing techniques in a network, and more particularly, to application awareness and traffic control techniques associated with data packets.
정밀 패킷 분석(Deep Packet Inspection: 이하 'DPI'라 칭함) 장비는 라우터와 같은 네트워크 구성요소와는 별도로 설치되는 구성요소이다. 즉, DPI 장치는 망 구성시에 라우터와 함께 사용되고, 별도의 장비로 구성되어 DPI 기능을 수행한다. DPI 기능이란, 데이터 또는 패킷의 헤더 검색은 물론 콘텐츠 검색을 가능하게 하는 컴퓨터 네트워크 패킷 필터링 기술을 말한다.Deep Packet Inspection (DPI) equipment is a component that is installed separately from network components such as routers. In other words, the DPI device is used together with a router when the network is configured, and is configured as a separate device to perform the DPI function. The DPI function refers to a computer network packet filtering technique that enables content retrieval as well as header retrieval of data or packets.
DPI 장비는 서비스 요구에 따라 망의 여러 곳에 위치할 수 있다. 예를 들면, 사용자 단말로부터 생성된 트래픽은 네트워크 상의 라우터와 DPI 장비 등을 거쳐 서버로 전달된다. 네트워크 관리자의 요구에 의해 전송되는 트래픽을 정밀하게 분석하기 위하여는 별도의 DPI 장비를 두어야 한다.DPI devices can be located in different places in the network depending on service needs. For example, the traffic generated from the user terminal is delivered to the server via a router and DPI equipment on the network. In order to precisely analyze the traffic transmitted at the request of the network administrator, a separate DPI device should be provided.
그러나, 전술한 방식은 여러 장비를 이용하여 인라인으로 네트워크를 구성해야하므로, 네트워크 관리자 측면에서 관리해야 하는 장비의 숫자가 많아져 장비 관리의 부담이 커지게 된다. 또한 DPI 장비에서 정밀분석을 통해서 찾아낸 특정 애플리케이션 혹은 플로우에 관리자가 원하는 트래픽 제어를 수행하기 위해서는, 외부의 트래픽 제어 장비로 해당 플로우 정보를 전송한 후 비로소 트래픽 제어를 수행할 수 있다.However, in the above-described method, since the network must be configured in-line using a plurality of devices, the number of devices to be managed from the network administrator side increases the burden of equipment management. In addition, in order to control traffic desired by an administrator for a specific application or flow found through the precision analysis in the DPI device, the traffic control may be performed after transmitting the flow information to an external traffic control device.
선행기술 미국 공개특허 2009-0238192에는 별도의 장비를 이용하여 DPI 기능을 수행하는 네트워크 기술에 대해, 미국 공개특허 2009-0252041에는 통계정보 수집을 위한 라우터 기술에 대해 각각 개시하고 있다.Prior art US Patent Publication No. 2009-0238192 discloses a network technology for performing a DPI function using a separate equipment, US Patent Publication No. 2009-0252041 discloses a router technology for collecting statistical information.
일 양상에 따라, 애플리케이션 인지와 트래픽 제어를 위한 라우터 장치 및 라우터 장치의 애플리케이션 인지 및 트래픽 제어방법을 제안한다.According to an aspect, a router device for application recognition and traffic control and an application recognition and traffic control method of the router device are proposed.
일 양상에 따른 라우터 장치는, 네트워크 패킷을 수신하는 패킷 수신부와, 수신 패킷으로부터 플로우 블록을 생성하고, 플로우 블록 내 수신 패킷을 정밀분석(Deep Packet Inspection)하여 수신 패킷과 연관된 애플리케이션을 식별하고, 이후 패킷 수신부를 통해 수신되는 동일 플로우의 패킷들에 대해서는 애플리케이션 식별 정보를 이용하여 패킷 처리하는 패킷 제어부와, 애플리케이션 식별 정보를 포함하는 플로우 블록을 저장하는 메모리를 포함한다.According to an aspect, a router apparatus may include: a packet receiving unit receiving a network packet, a flow block from the received packet, deep packet inspection of the received packet in the flow block, and identifying an application associated with the received packet; The packets of the same flow received through the packet receiver include a packet controller configured to process packets using application identification information, and a memory configured to store a flow block including the application identification information.
다른 양상에 따른 라우터의 애플리케이션 인지 및 트래픽 제어방법은, 네트워크 패킷을 수신하는 단계와, 수신 패킷으로부터 플로우 블록을 생성하는 단계와, 플로우 블록 내 수신 패킷을 정밀분석하여 수신 패킷과 연관된 애플리케이션을 식별하고, 애플리케이션 식별 정보를 플로우 블록에 저장하는 단계와, 이후 수신되는 동일 플로우의 패킷들에 대해서는 플로우 블록에 저장된 애플리케이션 식별 정보를 이용하여 패킷 처리하는 단계를 포함한다.According to another aspect, an application recognition and traffic control method of a router includes: receiving a network packet, generating a flow block from the received packet, precisely analyzing the received packet in the flow block, and identifying an application associated with the received packet; Storing the application identification information in the flow block, and then processing the packet using the application identification information stored in the flow block for packets of the same flow received thereafter.
일 실시예에 따르면, 네트워크 구성요소 중에 하나인 라우터에서 정밀 패킷 분석(Deep Packet Inspection: 이하 'DPI'라 칭함) 기능을 수행함에 따라 별도의 DPI 장비가 불필요하게 되어, 여러 장비를 인라인으로 배치하여 DPI 기능을 수행하는 불편함과 문제점을 해결할 수 있다.According to an embodiment of the present invention, as a deep packet inspection function is performed in a router which is one of the network components, a separate DPI device is unnecessary, and multiple devices are arranged inline. It can solve the inconvenience and problem of performing DPI function.
나아가, DPI 기능의 사용 여부는 CLI(Command Line Interface)와 같은 인터페이스를 이용하여 설정할 수 있으므로, 필요시에만 DPI 기능을 동작하도록 구현할 수 있어서 네트워크 구축 비용을 절약할 수 있다.Furthermore, since the DPI function can be set using an interface such as a command line interface (CLI), the DPI function can be implemented to operate only when necessary, thereby reducing the network construction cost.
나아가, 플로우 블록을 생성한 이후 패킷 관련 애플리케이션을 인지하기 위해서 동일한 플로우의 처음 몇 개의 패킷만을 분석하면 되므로, 네트워크에 많은 부하를 발생시키지 않을 수 있다. 나아가, 1단계인 간단한 애플리케이션 인지 단계와 2단계인 복잡한 애플리케이션 인지 단계를 포함하는 단계별 애플리케이션 인지를 통해 DPI 기능을 보다 정밀하고 원활하게 수행할 수 있다.Furthermore, since the first few packets of the same flow need to be analyzed in order to recognize a packet-related application after generating the flow block, it may not cause a heavy load on the network. Furthermore, DPI application can be performed more precisely and smoothly through step-by-step application recognition, which includes a simple application recognition step of 1 and a complex application recognition step of 2.
나아가, 정밀 분석을 통한 애플리케이션의 인지와 인지된 애플리케이션에 대한 트래픽 제어가 하나의 라우터에서 수행될 수 있다. 따라서, 외부 시스템으로 인지된 애플리케이션 정보를 전달할 필요가 없으므로 네트워크 관리의 일관성과 편리성이 증대된다. 나아가, 플로우 기반 라우터에서 플로우별 통계 정보를 수집함으로 DPI 기능이 수행된 이후의 플로우에서도 통계정보 수집이 용이하다.Furthermore, the perception of the application through precise analysis and traffic control for the recognized application can be performed in one router. Therefore, there is no need to convey the application information recognized by the external system, thereby increasing the consistency and convenience of network management. Furthermore, by collecting the statistical information for each flow in the flow-based router, it is easy to collect statistical information in the flow after the DPI function is performed.
도 1은 본 발명의 일 실시예에 따라 DPI 기능을 수행하는 라우터를 포함하는 네트워크의 구성도,
도 2는 본 발명의 일 실시예에 따른 라우터의 구성도,
도 3은 본 발명의 일 실시예에 따른 패킷 제어부의 세부 구성도,
도 4는 본 발명의 일 실시예에 따른 라우터의 애플리케이션 인지 및 트래픽 제어방법을 도시한 흐름도이다.1 is a configuration diagram of a network including a router performing a DPI function according to an embodiment of the present invention;
2 is a block diagram of a router according to an embodiment of the present invention;
3 is a detailed configuration diagram of a packet control unit according to an embodiment of the present invention;
4 is a flowchart illustrating an application recognition and traffic control method of a router according to an embodiment of the present invention.
이하에서는 첨부한 도면을 참조하여 본 발명의 실시예들을 상세히 설명한다. 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. In addition, the terms described below are defined in consideration of the functions of the present invention, and this may vary depending on the intention of the user, the operator, or the like. Therefore, the definition should be based on the contents throughout this specification.
도 1은 본 발명의 일 실시예에 따라 DPI 기능을 수행하는 라우터(10)를 포함하는 네트워크의 구성도이다.1 is a block diagram of a network including a
도 1을 참조하면, 정밀 패킷 분석(Deep Packet Inspection:이하 'DPI'라 칭함) 장비가 별도의 장비가 아닌, 네트워크 구성요소 중에 하나인 라우터(10)에 탑재되어 DPI 기능이 수행된다. DPI 기능이란, 데이터 또는 패킷의 헤더 검색은 물론 콘텐츠 검색을 가능하게 하는 컴퓨터 네트워크 패킷 필터링 기술을 말한다. DPI 기능의 사용 여부는 CLI(Command Line Interface) 등과 같은 인터페이스를 이용하여 선택할 수 있으므로, 필요시에만 DPI 기능이 동작하도록 설정할 수 있다.Referring to FIG. 1, a deep packet inspection (hereinafter referred to as 'DPI') equipment is mounted on a
도 1은 DPI 기능을 수행하는 라우터(10)를 포함하는 네트워크 중에 일반적이고 간단한 구성을 도시한 것으로, 네트워크는 사용자 단말(12), 라우터(10) 및 서버(14)를 포함한다. 도 1에서는 본 발명의 설명을 용이하게 하기 위해 단순화된 네트워크를 도시하였으나, DPI 기능을 수행하는 라우터(10)를 다양한 네트워크에 적용될 수 있음은 자명하다. 또한, 구성요소를 라우터(10)로 한정하였으나, 라우터(10)는 스위치와 브리지 등 데이터 패킷을 수신하고 포워딩하기에 적합한 다른 네트워크 구성요소로 대체되거나 이를 포함할 수 있다.1 illustrates a general and simple configuration of a network including a
사용자 단말(12)은 네트워크에 대한 액세스를 가능하게 하는 사용자에 의해 작동되는 장치이다. 보다 구체적으로, 다양한 예시적인 실시예에서, 사용자 단말(12)은 셀폰, PDA, 개인 또는 랩탑 컴퓨터, 무선 이메일 장치 또는 무선 통신을 지원하는 임의의 다른 장치이다. 또한, 다양한 예시적인 실시예에서, 사용자 단말(12)은 하나 이상의 애플리케이션에 관한 데이터 패킷을 생성하고 전송한다.The
사용자 단말(12)로부터 생성된 트래픽은 인터넷 서비스 제공자(Internet Service Provider: ISP) 네트워크를 통해 라우터(10)를 거쳐 서버(14)로 전달된다. 라우터(10)는 네트워크 관리자의 요구에 의해 전송되는 트래픽의 정밀분석을 수행한다. 즉, 라우터(10)는 사용자 단말(12)로부터 수신한 패킷을 정밀분석하여 해당 플로우가 어떤 애플리케이션에 해당되는지를 인지하고, 분석 결과에 따라 획득한 애플리케이션 식별 정보를 플로우 블록에 기록해 둔다. 그리고, 라우터(10)는 이후 수신되는 동일 플로우의 패킷부터는 플로우 블록을 참조하여 패킷을 처리한다. 나아가, 라우터(10)는 관리자에 의해 해당되는 애플리케이션별로 트래픽 제어 기능까지 수행한다.Traffic generated from the
이하, 라우터(10)의 애플리케이션 식별 및 트래픽 제어 프로세스를 후술한다.The application identification and traffic control process of the
라우터(10)는 첫 번째 패킷이 수신되면 5-tuple을 기반으로 플로우 블록을 생성한다. 그리고, 플로우 블록 내 수신 패킷을 정밀 분석하여 애플리케이션을 인지한다. 이어서, 해당 플로우 블록에 패킷을 처리하는 방법을 기록해 둔다. 이후 라우터(10)는 동일한 플로우의 두 번째 패킷이 들어오면 FIB(Forwarding Information Base) 테이블 룩업(table lookup)을 수행하지 않고 해당 플로우 블록을 참조하여 패킷을 처리한다. 나아가, 라우터(10)는 인지된 플로우 블록 내 QoS 정보를 기초로 하여 패킷에 대한 트래픽 제어를 수행한다.The
이에 따라, 여러 장비를 인라인으로 배치하여 DPI 기능을 수행하는 불편과 문제점을 해결할 수 있다. 나아가, 플로우가 생성되고 애플리케이션을 인지하기 위해서 동일한 플로우의 처음 몇 개의 패킷만을 분석하면 되므로, 네트워크에 많은 부하를 발생시키지 않을 수 있다.Accordingly, it is possible to solve the inconvenience and problem of performing the DPI function by placing a number of equipment inline. Furthermore, since the flow is generated and only the first few packets of the same flow need to be analyzed in order to recognize the application, it may not create a heavy load on the network.
도 2는 본 발명의 일 실시예에 따른 라우터(10)의 구성도이다.2 is a block diagram of a
도 2를 참조하면, 라우터(10)는 패킷 수신부(100), 패킷 제어부(102) 및 메모리(104)를 포함한다.Referring to FIG. 2, the
패킷 수신부(100)는 네트워크 패킷을 수신한다. 패킷 제어부(102)는 수신 패킷으로부터 플로우 블록을 생성한다. 즉, 패킷 제어부(102)는 패킷 수신부(100)로부터 패킷을 입력받아, 입력되는 패킷으로부터 패킷 정보를 이용하여 플로우 블록을 생성한다. 패킷 정보는 헤더 정보와 페이로드 정보를 포함한다. 헤더 정보를 이용하여 플로우를 생성하는 경우 규칙에 일관성을 유지할 수 있다. 플로우 생성은 생성된 플로우 간 독립성이 유지되도록 하는 것이 중요하다. 따라서 패킷 제어부(102)는 패킷 헤더 정보를 이용하여 플로우를 생성할 수 있다.The
패킷 제어부(102)는 플로우 블록 내 수신 패킷을 정밀분석(Deep Packet Inspection)하여 수신 패킷과 연관된 애플리케이션을 식별한다. 패킷 제어부(102)는 OSI(Open Systems Interconnection) 모델의 계층 2 내지 계층 7 내의 정보의 임의의 조합을 검사한다. 따라서, 다양한 예시적인 실시예에서, 패킷 제어부(102)는 수신 패킷과 연관된 애플리케이션을 식별하도록 하나 이상의 수신 패킷의 정밀분석을 수행한다. 예를 들면, 패킷 제어부(102)는 수신 패킷을 분석하여, 수신 패킷이 이메일, 스트리밍 비디오, 웹 브라우징, 피어투피어 전송 또는 서비스 공급자에 대해 관심 있는 임의의 다른 애플리케이션에 관한 것인지 여부를 판단할 수 있다.The
수신 패킷 정밀분석은, 기호 매칭, 패턴 매칭, 상태 기반 모니터링, 성향 분석 및 통계적 분석을 포함한다. 패턴 매칭을 예를 들면, 패킷 제어부(102)는 수신 패킷의 페이로드 정보를, 미리 저장된 애플리케이션의 시그너쳐와 비교하여 매칭 여부를 판단하고 판단 결과에 따라 매칭되는 애플리케이션을 식별한다.Receive packet deep analysis includes symbol matching, pattern matching, state based monitoring, propensity analysis and statistical analysis. For example, for pattern matching, the
패킷 제어부(102)는 이후 패킷 수신부(100)를 통해 수신되는 동일 플로우의 패킷들에 대해서는 플로우 블록에 기록된 애플리케이션 식별 정보를 이용하여 패킷 처리한다. 메모리(104)는 애플리케이션 식별 정보를 포함하는 플로우 블록을 저장한다. 또한, 메모리(104)는 플로우 블록에 플로우 별로 통계정보를 저장할 수 있다.The
다양한 예시적인 실시예에서, 애플리케이션 식별 정보는 이름, 문자숫자(alphanumerical) 식별자 또는 패킷과 연관된 애플리케이션을 식별하는 다른 정보를 나타내는 하나 이상의 유형 길이 값(TLV)으로 구성된다. 애플리케이션을 식별하기에 적합한 임의의 정보가 애플리케이션 식별 정보 내에 배치될 수 있음은 분명하다.In various example embodiments, the application identification information consists of one or more type length values (TLVs) representing names, alphanumerical identifiers, or other information identifying the application associated with the packet. It is clear that any information suitable for identifying the application may be placed within the application identification.
본 발명의 추가 양상에 따르면, 라우터(10)는 패킷 전송부(106)를 포함한다. 패킷 전송부(106)는 패킷 제어부(102)를 통해 식별된 애플리케이션별로 미리 설정된 제어방식에 따라 수신 패킷을 포워딩한다. 제어방식을 예를 들면, 패킷을 허용할지 또는 드롭할지를 결정하는 방식, 특정 대역폭 이상의 트래픽이 인가되지 못하게 하는 방식 등을 포함한 다양한 서비스 품질 처리(QoS) 방식이 존재할 수 있다.According to a further aspect of the invention, the
도 3은 본 발명의 일 실시예에 따른 패킷 제어부(102)의 세부 구성도이다.3 is a detailed block diagram of the
도 2 및 도 3을 참조하면, 패킷 제어부(102)는 제1 DPI 분석부(1020)와 제2 DPI 분석부(1022)를 포함한다. 패킷 제어부(102)의 DPI 기능 수행은 제1 DPI 분석부(1020)와 제2 DPI 분석부(1022)의 정밀분석 2단계로 구성된다. 이들 기능은 CLI를 이용하여 선택적으로 설정할 수도 있다.2 and 3, the
제1 DPI 분석부(1020)는 패킷 수신부(100)로부터 수신한 패킷을 정밀분석하여 수신 패킷과 연관된 애플리케이션을 식별하고, 애플리케이션 식별 정보를 메모리(104)의 플로우 블록에 기록한다. 제1 DPI 분석부(1020)는 라우터(10)의 라인카드 내 패킷 처리를 위한 ASIC에 형성될 수 있다. 이 ASIC은 플로우 블록 생성과FIB 테이블 룩업 기능을 수행하는 구성요소이다.The
일 실시예에 따르면, 제1 DPI 분석부(1020)는 플로우 블록을 생성한 후 1단계 DPI 기능 수행을 위하여, 미리 정의되어 있는 애플리케이션의 시그너쳐를 수신 패킷의 페이로드와 비교하여 매칭 여부를 확인한다. 수신 패킷의 특정 위치의 페이로드 내용이 미리 정의된 시그너쳐와 동일하면 그 플로우가 특정 애플리케이션임을 식별할 수 있다. 제1 DPI 분석부(1020)는 애플리케이션 식별정보를 메모리(104)의 플로우 블록에 기록한다. 이후 수신되는 동일 플로우의 패킷들은 해당 플로우 블록 정보를 기반으로 패킷을 처리함으로 특정 애플리케이션에 따른 트래픽 제어를 수행할 수 있다.According to an embodiment, the
한편, 고속으로 수신 패킷을 처리하는 ASIC에서 복잡한 시그너쳐를 비교하여 패킷의 애플리케이션을 모두 인지하는 것은 전체적인 시스템 성능에 영향을 줄 수 있다. 따라서 간단한 애플리케이션 인지를 위해서는 제1 DPI 분석부(1020)의 1단계 DPI 기능을 이용하고, 많은 패킷의 시그너쳐 비교가 필요한 복잡한 애플리케이션 인지를 위해서는 제2 DPI 분석부(1022)의 2단계 DPI 기능을 이용한다.On the other hand, in ASICs that process incoming packets at high speed, comparing the complex signatures and recognizing the application of the packets can affect overall system performance. Therefore, the first stage DPI function of the
구체적으로, 제2 DPI 분석부(1022)는 제1 DPI 분석부(1020)로부터 수신 패킷을 복사한 패킷을 제공받아 이를 정밀분석하여 수신 패킷과 연관된 애플리케이션을 식별하고, 메모리(104)의 플로우 블록에서 애플리케이션 식별 정보를 갱신한다. 제2 DPI 분석부(1022)는 라우터(10)의 라인카드 내 CPU에 형성될 수 있다.In detail, the
일 실시예에 따르면, 제1 DPI 분석부(1020)는 복수의 수신 패킷들 중에서 미리 설정된 개수의 패킷을 복사하여 제2 DPI 분석부(1022)에 제공한다. 예를 들면, CPU에서 애플리케이션을 인지하기 위해서, ASIC은 처음 N개(예:5개)의 수신 패킷을 복사하여 CPU로 전달한다. 이 이상의 패킷은 시스템 부하 증가의 이유로 CPU로 전달하지 않는다.According to an embodiment, the
CPU는 ASIC으로부터 복사되어 전달된 처음 N개의 수신 패킷을 대상으로 패킷의 페이로드를 미리 정의된 시그너쳐와 비교한다. 비교 결과, 패킷이 시그너쳐와 매칭되지 않는 경우 일반적인 트래픽으로 판단하고 일반적인 패킷처리와 동일하게 처리한다. 이에 비하여, 수신 패킷이 특정 애플리케이션에 매칭되는 결과가 나오면 메모리(104) 내 해당 플로우 블록의 애플리케이션 식별정보를 갱신한다. 갱신된 정보로 이 플로우가 어떠한 애플리케이션과 연관되어 있는지를 인지할 수 있으며, 이후 수신되는 패킷을 대상으로 플로우 블록의 갱신된 정보를 이용하여 어떠한 애플리케이션과 연관되어 있는지를 인지할 수 있다.The CPU compares the payload of the packet against a predefined signature for the first N received packets copied from the ASIC. As a result of the comparison, if the packet does not match the signature, it is determined as normal traffic and processed in the same manner as general packet processing. In contrast, when a result of matching a received packet to a specific application is obtained, the application identification information of the corresponding flow block in the
나아가, CPU에서 인지된 애플리케이션에 맞게 설정된 트래픽 제어 방법대로 패킷을 전달할 수 있다. 트래픽 제어 방법은 패킷을 버리는 방법, 특정 대역폭 이상의 트래픽이 인가되지 못하게 하는 방법 등 다양한 방법이 존재할 수 있다.Furthermore, the packet can be delivered according to the traffic control method set for the application recognized by the CPU. The traffic control method may include various methods such as a method of discarding a packet and a method of preventing traffic over a specific bandwidth from being applied.
도 4는 본 발명의 일 실시예에 따른 라우터(10)의 애플리케이션 인지 및 트래픽 제어방법을 도시한 흐름도이다.4 is a flowchart illustrating an application recognition and traffic control method of the
도 1 및 도 4를 참조하면, 라우터(10)는 네트워크 패킷을 수신(400)하고, 수신 패킷으로부터 플로우 블록을 생성한다(410). 이어서, 라우터(10)는 플로우 블록 내 수신 패킷을 정밀분석(420)하여 수신 패킷과 연관된 애플리케이션을 식별(430)하고, 애플리케이션 식별 정보를 플로우 블록에 저장한다(440).1 and 4, the
일 실시예에 따르면, 라우터(10)는 수신 패킷을 1차 정밀분석하여 수신 패킷과 연관된 애플리케이션을 식별하고, 애플리케이션 식별 정보를 플로우 블록에 기록한다. 그리고, 수신 패킷을 복사한 패킷을 2차 정밀분석하여 수신 패킷과 연관된 애플리케이션을 식별하고, 플로우 블록에서 애플리케이션 식별 정보를 갱신한다. 1차 정밀분석은 라우터(10)의 라인카드 내 패킷 처리를 위한 ASIC에서, 2차 정밀분석은 라우터(10)의 라인카드 내 CPU에서 각각 수행될 수 있다.According to one embodiment, the
수신 패킷 정밀분석은, 기호 매칭, 패턴 매칭, 상태 기반 모니터링, 성향 분석 및 통계적 분석을 포함한다. 패턴 매칭은, 수신 패킷의 페이로드 정보를, 미리 저장된 애플리케이션의 시그너쳐와 비교하여 매칭 여부를 판단하고 판단 결과에 따라 매칭되는 애플리케이션을 식별하는 방식이다.Receive packet deep analysis includes symbol matching, pattern matching, state based monitoring, propensity analysis and statistical analysis. Pattern matching is a method of comparing the payload information of a received packet with a signature of a pre-stored application to determine whether to match, and to identify the matching application according to the determination result.
이어서, 라우터(10)는 이후 수신되는 동일 플로우의 패킷들에 대해서는 플로우 블록에 저장된 애플리케이션 식별 정보를 이용하여 패킷 처리한다(450). 나아가, 라우터(10)는 식별된 애플리케이션별로 미리 설정된 제어방식에 따라 수신 패킷을 포워딩할 수 있다.Subsequently, the
이제까지 본 발명에 대하여 그 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.The embodiments of the present invention have been described above. 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 an illustrative rather than a restrictive sense. The scope of the present invention is defined by the appended claims rather than by the foregoing description, and all differences within the scope of equivalents thereof should be construed as being included in the present invention.
10 : 라우터 12 : 사용자 단말
14 : 서버 100 : 패킷 수신부
102 : 패킷 제어부 104 : 메모리
106 : 패킷 전송부 1020 : 제1 DPI 분석부
1022 : 제2 DPI 분석부10: router 12: user terminal
14
102: packet controller 104: memory
106: packet transmission unit 1020: first DPI analysis unit
1022: second DPI analysis unit
Claims (12)
상기 수신 패킷으로부터 플로우 블록을 생성하고, 상기 플로우 블록 내 수신 패킷을 정밀분석(Deep Packet Inspection:DPI)하여 상기 수신 패킷과 연관된 애플리케이션을 식별하고, 이후 상기 패킷 수신부를 통해 수신되는 동일 플로우의 패킷들에 대해서는 애플리케이션 식별 정보를 이용하여 패킷 처리하는 패킷 제어부;
상기 패킷 제어부에서 식별된 애플리케이션별로 미리 설정된 제어방식에 따라 수신 패킷을 포워딩하는 패킷 전송부; 및
상기 애플리케이션 식별 정보를 포함하는 플로우 블록을 저장하는 메모리;
를 포함하는 것을 특징으로 하는 라우터 장치.A packet receiver for receiving a network packet;
Generate a flow block from the received packet, deep packet inspection (DPI) of the received packet in the flow block to identify the application associated with the received packet, then packets of the same flow received through the packet receiver A packet controller configured to process the packet using the application identification information;
A packet transmitter configured to forward received packets according to a control method preset for each application identified by the packet controller; And
A memory storing a flow block containing the application identification information;
Router device comprising a.
상기 수신 패킷을 정밀분석하여 상기 수신 패킷과 연관된 애플리케이션을 식별하고, 애플리케이션 식별 정보를 상기 메모리의 플로우 블록에 기록하는 제1 DPI 분석부; 및
상기 수신 패킷을 복사한 패킷을 상기 제1 DPI 분석부로부터 제공받아 이를 정밀분석하여 상기 수신 패킷과 연관된 애플리케이션을 식별하고, 상기 메모리의 플로우 블록에서 애플리케이션 식별 정보를 갱신하는 제2 DPI 분석부;
중 적어도 하나를 포함하는 것을 특징으로 하는 라우터 장치.The method of claim 1, wherein the packet control unit,
A first DPI analyzer configured to precisely analyze the received packet to identify an application associated with the received packet and to record application identification information in a flow block of the memory; And
A second DPI analyzer configured to receive the packet copied from the received packet from the first DPI analyzer to precisely analyze the packet, identify an application associated with the received packet, and update application identification information in a flow block of the memory;
And at least one of the router apparatus.
상기 라우터 장치의 라인카드 내 패킷 처리를 위한 ASIC에 형성되고,
상기 제2 DPI 분석부는,
상기 라우터 장치의 라인카드 내 CPU에 형성되는 것을 특징으로 하는 라우터 장치.The method of claim 2, wherein the first DPI analyzer,
Is formed in the ASIC for packet processing in the line card of the router device,
The second DPI analyzer,
Router device characterized in that formed in the CPU in the line card of the router device.
복수의 수신 패킷들 중에서 미리 설정된 개수의 패킷을 복사하여 상기 제2 DPI 분석부에 제공하는 것을 특징으로 하는 라우터 장치.The method of claim 2, wherein the first DPI analyzer,
The router apparatus, characterized in that for copying a predetermined number of packets from a plurality of received packets provided to the second DPI analyzer.
상기 수신 패킷 정밀분석은, 기호 매칭, 패턴 매칭, 상태 기반 모니터링, 성향 분석 및 통계적 분석 중 적어도 하나를 포함하며,
상기 패턴 매칭은, 상기 수신 패킷의 페이로드 정보를, 미리 저장된 애플리케이션의 시그너쳐와 비교하여 매칭 여부를 판단하고 판단 결과에 따라 매칭되는 애플리케이션을 식별하는 것을 특징으로 하는 라우터 장치.The method of claim 1,
The received packet deep analysis includes at least one of symbol matching, pattern matching, state based monitoring, propensity analysis, and statistical analysis,
In the pattern matching, the payload information of the received packet is compared with a signature of a pre-stored application to determine whether to match and to identify a matching application according to the determination result.
상기 플로우 블록에 플로우 별로 통계정보를 저장하는 것을 특징으로 하는 라우터 장치.The method of claim 1, wherein the memory,
Router device, characterized in that for storing the statistical information for each flow in the flow block.
네트워크 패킷을 수신하는 단계;
상기 수신 패킷으로부터 플로우 블록을 생성하는 단계;
상기 플로우 블록 내 수신 패킷을 정밀분석하여 상기 수신 패킷과 연관된 애플리케이션을 식별하고, 애플리케이션 식별 정보를 상기 플로우 블록에 저장하는 단계;
이후 수신되는 동일 플로우의 패킷들에 대해서는 상기 플로우 블록에 저장된 애플리케이션 식별 정보를 이용하여 패킷 처리하는 단계; 및
상기 식별된 애플리케이션별로 미리 설정된 제어방식에 따라 수신 패킷을 포워딩하는 단계;
를 포함하는 것을 특징으로 하는 애플리케이션 인지 및 트래픽 제어방법.In the application recognition and traffic control method of the router,
Receiving a network packet;
Generating a flow block from the received packet;
Deeply analyzing the received packet in the flow block to identify an application associated with the received packet and storing application identification information in the flow block;
Packet processing using the application identification information stored in the flow block for packets of the same flow received thereafter; And
Forwarding a received packet according to a control scheme preset for each identified application;
Application recognition and traffic control method comprising a.
상기 수신 패킷을 정밀분석하여 상기 수신 패킷과 연관된 애플리케이션을 식별하고, 애플리케이션 식별 정보를 상기 플로우 블록에 기록하는 단계; 및
상기 수신 패킷을 복사한 패킷을 제공받아 이를 정밀분석하여 상기 수신 패킷과 연관된 애플리케이션을 식별하고, 상기 플로우 블록에서 애플리케이션 식별 정보를 갱신하는 단계;
중 적어도 하나를 포함하는 것을 특징으로 하는 애플리케이션 인지 및 트래픽 제어방법.The method of claim 8, wherein the detailed analysis of the received packet in the flow block to identify an application associated with the received packet and storing application identification information in the flow block include:
Carefully analyzing the received packet to identify an application associated with the received packet, and writing application identification information to the flow block; And
Receiving a packet obtained by copying the received packet and analyzing the received packet for detailed analysis to identify an application associated with the received packet, and updating application identification information in the flow block;
Application recognition and traffic control method comprising at least one of.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110108235A KR101344398B1 (en) | 2011-10-21 | 2011-10-21 | Router and method for application awareness and traffic control on flow based router |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110108235A KR101344398B1 (en) | 2011-10-21 | 2011-10-21 | Router and method for application awareness and traffic control on flow based router |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130044002A KR20130044002A (en) | 2013-05-02 |
KR101344398B1 true KR101344398B1 (en) | 2013-12-23 |
Family
ID=48656625
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110108235A KR101344398B1 (en) | 2011-10-21 | 2011-10-21 | Router and method for application awareness and traffic control on flow based router |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101344398B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160026219A (en) | 2014-08-29 | 2016-03-09 | 주식회사 케이티 | Apparatus for deep packet inspection based on software |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102171348B1 (en) * | 2014-01-08 | 2020-10-29 | 삼성전자주식회사 | Method and apparatus for application detection |
KR20170014449A (en) | 2015-07-30 | 2017-02-08 | 주식회사 엘지유플러스 | Apparatus and Method for Location-based QoS analysis and control in LTE System |
US20180198704A1 (en) * | 2015-09-25 | 2018-07-12 | Hewlett Packard Enterprise Development Lp | Pre-processing of data packets with network switch application -specific integrated circuit |
WO2017099793A1 (en) * | 2015-12-11 | 2017-06-15 | Hewlett Packard Enterprise Development Lp | Subscription to a subset of switching events |
-
2011
- 2011-10-21 KR KR1020110108235A patent/KR101344398B1/en not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160026219A (en) | 2014-08-29 | 2016-03-09 | 주식회사 케이티 | Apparatus for deep packet inspection based on software |
Also Published As
Publication number | Publication date |
---|---|
KR20130044002A (en) | 2013-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
USRE49126E1 (en) | Real-time adaptive processing of network data packets for analysis | |
US9210122B2 (en) | System and method for inspecting domain name system flows in a network environment | |
US9100268B2 (en) | Application-aware MPLS tunnel selection | |
CN103314557B (en) | Network system, controller, switch, and traffic monitoring method | |
US20100158009A1 (en) | Hierarchical packet process apparatus and method | |
EP2482497B1 (en) | Data forwarding method, data processing method, system and device thereof | |
Tsilimantos et al. | Classifying flows and buffer state for YouTube's HTTP adaptive streaming service in mobile networks | |
US20130294449A1 (en) | Efficient application recognition in network traffic | |
US20110149793A1 (en) | Traffic capture apparatus and traffic analysis apparatus, system and method | |
JP2006352831A (en) | Network controller and method of controlling the same | |
KR101344398B1 (en) | Router and method for application awareness and traffic control on flow based router | |
KR101106891B1 (en) | In-bound mechanism that monitors end-to-end qoe of services with application awareness | |
CN108206788B (en) | Traffic service identification method and related equipment | |
US20120110012A1 (en) | Estimating User-Perceived TCP Throughput | |
KR101292873B1 (en) | Network interface card device and method of processing traffic by using the network interface card device | |
US20160248652A1 (en) | System and method for classifying and managing applications over compressed or encrypted traffic | |
KR101684456B1 (en) | System and providing method for network inspection saving packet | |
JP2007228217A (en) | Traffic decision device, traffic decision method, and program therefor | |
Dubin et al. | Video quality representation classification of encrypted http adaptive video streaming | |
US11265372B2 (en) | Identification of a protocol of a data stream | |
Oztoprak et al. | A hybrid asymmetric traffic classifier for deep packet inspection systems with route asymmetry | |
Yoon et al. | Header signature maintenance for Internet traffic identification | |
KR101003505B1 (en) | Dynamic control method of traffic according to network congestion and Apparatus | |
Mai et al. | Fast filtered sampling |
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: 20161121 Year of fee payment: 4 |
|
LAPS | Lapse due to unpaid annual fee |