KR101152958B1 - 계층적 패킷 처리 장치 및 방법 - Google Patents
계층적 패킷 처리 장치 및 방법 Download PDFInfo
- Publication number
- KR101152958B1 KR101152958B1 KR1020080130631A KR20080130631A KR101152958B1 KR 101152958 B1 KR101152958 B1 KR 101152958B1 KR 1020080130631 A KR1020080130631 A KR 1020080130631A KR 20080130631 A KR20080130631 A KR 20080130631A KR 101152958 B1 KR101152958 B1 KR 101152958B1
- Authority
- KR
- South Korea
- Prior art keywords
- packet
- analysis
- attribute
- processing
- lower layer
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000007689 inspection Methods 0.000 title abstract description 4
- 238000004458 analytical method Methods 0.000 claims abstract description 73
- 238000012545 processing Methods 0.000 claims abstract description 56
- 238000007726 management method Methods 0.000 claims description 40
- 238000005111 flow chemistry technique Methods 0.000 claims description 18
- 238000003672 processing method Methods 0.000 claims description 10
- 238000004148 unit process Methods 0.000 claims 1
- 239000002699 waste material Substances 0.000 abstract description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000000275 quality assurance Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
Images
Classifications
-
- 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
-
- 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
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- 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/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Abstract
계층적 패킷 처리 장치 및 방법이 개시된다. 본 발명의 일 양상에 의하면, 패킷을 상위 계층과 하위 계층으로 구분하여 분석하며, 상위 계층 및 하위 계층에 대해 각각 분석 대상 패킷의 속성이 기 분석된 것이 있는지 아니면 다시 분석해야 하는 것이 있는지 구별하여 처리하는 것이 가능하다. 따라서 상세 분석이 필요한 경우에만 패킷을 상세 분석하기 때문에 불필요한 자원 낭비를 줄임과 동시에 패킷 처리 시에 QoS를 보장할 수 있는 장점이 있다.
계층적, 패킷 상세 분석, DPI(Deep Packet Inspection), 플로우(flow)
Description
본 발명은 패킷 처리 기술과 관련된다. 특히, 라우터와 같은 패킷 기반의 통신 시스템에 있어서 사용자에게 응용 서비스의 속성에 따라 트래픽을 적절히 전달할 수 있도록 패킷을 처리하고 분류하는 기술과 관련된다.
본 출원은 지식경제부 및 정보통신연구진흥원의 IT성장동력기술개발의 일환으로 수행한 연구로부터 도출된 것이다.[과제관리번호:2008-S-009-01, 패킷-광 통합 스위치 기술 개발]
통상적으로, 라우터 시스템은 응용 서비스 등과는 무관하게 입력된 모든 패킷을 동일한 방식으로 처리하는 최선형 (Best-Effort) 서비스를 원칙으로 한다.
그러나, IPTV, 스트리밍 서비스, P2P 서비스, VoIP 전화 등 다양한 서비스 들이 등장하고, 이들 서비스를 통합된 하나의 망에서 처리하고자 하면서, 각 서비스의 트래픽 속성을 만족하면서 전달할 필요성이 대두되면서 최선형 서비스 만으로는 사용자의 요구를 만족시키지 못하게 되었다.
이에 실시간 전송을 목표로 하는 트래픽을 통합된 망에서 전달하고자 하는 경우 트래픽을 마이크로 플로우 단위로 분류하여 처리하는 방법이 제안되었다. 마이크로 플로우 단위의 패킷 처리 기술은 하위 계층 (네트워크 계층과 트랜스포트 계층)의 속성이 동일한 패킷들을 마이크로 플로우로 정의하고, 이 마이크로 플로우 단위로 품질 보장을 위한 요소들을 설정하고 보장하는 방식을 이용한다. 따라서, 다양한 형태의 서비스가 통합되어 혼재되어 있는 망의 경우에서도 마이크로 플로우 단위로 패킷을 처리할 경우에 각각의 마이크로 플로우에 대한 서비스 품질 보장이 가능한 장점이 있다.
그러나 이러한 방식의 경우 마이크로 플로우 단위의 분석만으로는 모든 응용 서비스의 종류를 파악할 수 없는 문제점이 있기 때문에, 더 상위 계층의 정보를 이용하여 트래픽 속성을 완전하게 파악하는 기술이 등장하게 되었다.
그 대표적인 것이 패킷 상세 분석 (Deep Packet Inspection: DPI) 기술이다. 패킷 상세 분석은 상위 계층 정보를 이용하여 패킷을 처리하는 기술로써, 주로 계층 4에서 계층 7의 패킷 정보를 분석하는 방식이다. 이러한 패킷 상세 분석 기술은 보안이나 필터링 등의 특화된 기능을 위해서 많이 사용되는데, 패킷 상세 분석을 통해서 패킷의 속성을 분석하고, 분석된 결과를 이용하여 패킷을 적절한 형태로 전달하기 위해서 소프트웨어로 구현하기 때문에 패킷 처리 성능의 저하가 발생할 수 있다는 문제점이 있다.
본 명세서에서는, 패킷을 상세하게 분석하면서도 패킷 처리 성능이 저하되지 않도록 하는 계층적 패킷 처리 장치 및 방법이 개시된다. 더욱 상세하게는 패킷을 상위 계층과 하위 계층으로 구분하여 분석하며, 상위 계층 및 하위 계층에 대해 각각 분석 대상 패킷의 속성이 기 분석된 것이 있는지 아니면 다시 분석해야 하는 것이 있는지 구별하여 처리하는 계층적 패킷 처리 장치 및 방법에 관한 것이다.
본 발명의 일 양상에 따른 계층적 패킷 처리 장치는 입력되는 패킷의 하위 계층 헤더에 기초하여 패킷의 속성 파악이 가능한지 여부를 판단하는 헤더 분석부; 및 속성 파악이 가능한 경우 하위 계층 헤더 분석을 통해 패킷을 분류하고, 속성 파악이 불가능한 경우 하위 계층 헤더 분석 및 상세 분석을 통해 패킷을 분류하는 플로우 처리부; 를 포함할 수 있다.
또한, 본 발명의 일 양상에 따른 계층적 패킷 처리 방법은 입력되는 패킷의 속성에 따라 패킷을 분류하는 패킷 처리 방법에 있어서, 패킷의 하위 계층 헤더 분석만으로 속성 파악이 가능한 경우, 하위 계층 헤더 정보에 기초하여 패킷을 분류하고, 분류된 패킷 중에서 첫 번째로 도착한 패킷에 대해서는 패킷 전달과 관련된 자료 모두를 이용하여 패킷을 처리하고 첫 번째 이후에 도착한 패킷에 대해서는 상기 자료 중 일부를 이용하여 패킷을 처리하는 하위 계층 플로우 처리 과정; 및 패킷의 하위 계층 헤더 분석만으로 속성 파악이 불가능한 경우, 하위 계층 헤더 정보 및 패킷 상세 분석을 이용하여 패킷을 분류하고, 분류된 패킷 중에서 첫 번째로 도착한 패킷에 대해서는 상기 자료 모두를 이용하여 패킷을 처리하고 첫 번째 이후에 도착한 패킷에 대해서는 상기 자료 중 일부를 이용하여 패킷을 처리하는 상위 계층 플로우 처리 과정; 을 포함할 수 있다.
본 발명의 일 양상에 따라, 패킷의 헤더 분석을 통해 속성이 파악되는 경우란 패킷의 TCP 헤더 또는 UDP 헤더의 목적지 포트 번호 또는 송신지 포트 번호가 잘 알려진 포트 번호(well known port number)이고, 이를 통해 응용 서비스의 종류 또는 QoS 등급을 파악할 수 있는 경우가 될 수 있다.
또한, 본 발명의 일 양상에 따라, 패킷 전달과 관련된 자료는 플로우 관리 테이블 또는 프로토콜 관리 테이블을 포함하며, 패킷의 분류는 플로우 관리 테이블 룩업을 통해 수행되는 것이 가능하다. 또한, 상세 분석은 패킷의 상위 계층 헤더 또는 페이로드 정보를 이용한 패턴 매칭에 의하여 응용 서비스 또는 응용 프로토콜을 포함하는 속성을 얻고 이를 기초로 패킷을 분류하는 과정이 포함될 수 있다.
또한, 본 발명의 일 양상에 따라, 상세 분석을 통해서도 패킷의 속성 파악이 불가능한 경우 패킷의 암호화 여부를 판단하여, 암호 해석이 가능한 경우 암호 해석 절차를 수행하고 암호 해석이 불가능한 경우 패킷을 폐기하는 것이 가능하다.
개시된 내용에 의하면, 패킷의 처리 절차를 하위 계층 플로우 처리 과정과 상위 계층 플로우 처리 과정으로 구분하여 처리하고, 거기에 더해서 동일하게 분류된 패킷들에 대해서 속성 분석이 된 경우와 속성 분석 필요한 경우를 구분하여 처 리하기 때문에, 상세 분석이 필요한 패킷들에 대해서만 패킷 상세 분석을 수행함으로써 불필요한 자원 낭비를 방지할 수 있다. 또한, 플로우 관리 테이블을 두고 동일 속성의 패킷들에 대해서 한번의 완전한 분석 절차만을 수행함으로써, 플로우 내의 다른 패킷들의 분석에 대한 부하를 줄일 수 있는 장점이 있다.
이하, 첨부된 도면을 참조하여 본 발명의 실시를 위한 구체적인 예를 상세히 설명한다. 후술되는 실시 예들은 본 발명을 예시적으로 설명하기 위한 것으로 본 발명의 권리범위가 특정 실시 예에 한정되지 아니한다.
도 1은 본 발명의 일 실시예에 따른 라우터(100) 구조를 도시한다.
도 1을 참조하면, 라우터(100)는 송신 단말(101)과 수신 단말(102)을 서로연결하고, 송신 단말(101) 측의 패킷을 처리하여 수신 단말(102)로 전달하는 기능을 수행할 수 있다.
이러한 라우터(100)는 입력 물리 계층(105), 입력 패킷 처리부(106), 출력 패킷 처리부(107), 출력 물리 계층(108) 등으로 구성되는 라인 카드(104)와, 패킷 처리에 관련된 정보를 저장 및 처리하여 라인 카드(104)로 전달하는 프로세서 블록(103), 및 입/출력 라인카드(104) 사이의 스위칭 패브릭부(109) 등을 포함하여 구성될 수 있다.
라우터(100)는 송신 단말(101)로부터 수신된 패킷을 처리하여 수신 단말(102) 쪽으로 전달하게 되는데, 처리 과정 중에는 패킷이 가지고 있는 트래픽 속성에 따라 패킷을 분류하는 과정이 포함될 수 있다. 예컨대, 입력되는 패킷이 IPTV, 스트리밍 서비스와 같은 실시간 패킷인 경우, QoS 보장을 위해 그 속성을 파악하고 파악된 속성에 따라 패킷 처리에 우선 순위를 설정하거나 설정된 우선 순위 별로 패킷을 분류하는 것이 가능하다.
본 발명의 일 실시예에 따른 계층적 패킷 처리 장치 및 방법은 이러한 라우터(100)에 있어서 입력 패킷 처리부(106) 및 프로세서 블록(103)과 관련된다.
도 2는 본 발명의 일 실시예에 따른 계층적 패킷 처리 장치(200)를 도시한다.
도 2를 참조하면, 본 실시예에 따른 계층적 패킷 처리 장치(200)는 헤더 분석부(201) 및 플로우 처리부(202)를 포함할 수 있다.
헤더 분석부(201)는 입력되는 패킷의 하위 계층 헤더의 일부 필드를 분석하여 패킷의 속성 파악이 가능한지 여부를 판단한다.
예컨대, 인터넷 프로토콜(internet protocol, IP) 프레임의 헤더에 있는 프로토콜 필드 값이 6(즉, 상위 프로토콜이 TCP임을 의미함) 또는 17(즉, 상위 프로토콜이 UDP임을 의미함)인 경우에, 헤더 분석부(201)는 전송 제어 프로토콜(transmission control protocol, TCP) 헤더나 사용자 데이터그램 프로토콜(user datagram protocol, UDP) 헤더의 목적지 포트 번호나 송신지 포트 번호가 잘 알려진 포트 번호(well known port number)이고, 이를 통해서 응용 서비스의 종류 또는 QoS 속성 등을 파악할 수 있는 경우 속성 파악이 가능한 것으로 판단할 수 있다.
플로우 처리부(202)는 일반적인 패킷들에 대해서는 패킷의 하위 계층 헤더의 일부 정보만을 이용하여 패킷의 속성을 분석하지만, 상세 분석이 필요하다고 판단 된 패킷에 대해서는 패킷의 하위 계층 헤더뿐만 아니라 상세 분석의 결과를 함께 이용하여 패킷의 속성을 분석하여 출력한다.
예컨대, 플로우 처리부(202)는 헤더 분석부(201)의 분석 결과에 따라 속성 파악이 가능한 경우 하위 계층 헤더 분석만을 통해 패킷을 분류하고, 속성 파악이 불가능한 경우 하위 계층 헤더 분석 및 상세 분석을 통해 패킷을 분류하는 것이 가능하다. 이를 위해, 플로우 처리부(202)는 하위 계층 플로우 처리부(203), 상위 계층 플로우 처리부(204), 테이블 저장부(205) 등을 포함할 수 있다.
테이블 저장부(205)에는 패킷 처리와 관련된 정보들이 저장된다.
예컨대, 목적지 IP 주소, 송신지 IP 주소, 프로토콜 ID, 목적 포트 번호, 송신 포트 번호 등의 5-tuple 정보를 기준으로 차단 여부, 서비스 등급, 포트 정보 등의 속성 정보가 저장된 플로우 관리 테이블(206)이 테이블 저장부(205)에 저장될 수 있다. 또한, 패킷 상세 분석(Deep Packet Inspection, DPI)을 위한 프로토콜 관리 테이블(207)도 테이블 저장부(205)에 저장될 수 있다.
헤더 분석부(101)의 분석 결과, 하위 계층 헤더 정보만으로 속성 분류가 가능한 경우, 하위 계층 플로우 처리부(203)가 동작한다.
하위 계층 플로우 처리부(203)는 플로우 관리 테이블(206) 룩업을 수행하여 패킷을 분류하는 것이 가능하다.
그런데, 입력 패킷이 첫 번째로 도착한 것이어서 플로우 관리 테이블(206)에 동일한 트래픽 정보가 존재하지 않는 경우가 있을 수 있다. 이러한 경우, 하위 계층 플로우 처리부(203)는 이것을 새로운 플로우로 간주하여 테이블 저장부(205)에 저장된 모든 자료(즉, 패킷 처리와 관련된 모든 정보)를 이용하여 패킷 처리를 수행하는 것이 가능하다. 예컨대, 프로토콜 관리 테이블(207)을 검색하여 해당 응용 서비스에 적합한 속성을 확인하고 이를 플로우 관리 테이블(206)에 저장하거나 갱신하는 것이 가능하다. 이렇게 되면, 이후 패킷에 대해서는 플로우 관리 테이블(206)만으로 패킷 처리를 할 수가 있다.
헤더 분석부(101)의 분석 결과, 하위 계층 헤더 정보만으로 속성 분류가 불가능한 경우, 상위 계층 플로우 처리부(203)가 동작한다.
상위 계층 플로우 처리부(204)는 패킷의 하위 계층 헤더 정보뿐만 아니라 패킷 상세 분석(DPI)을 통해 패킷 처리를 하는 것이 가능하다.
예컨대, 상위 계층 플로우 처리부(204)는 패킷의 상위 계층 헤더 또는 페이로드 정보를 이용한 패턴 매칭에 의하여 응용 서비스 또는 응용 프로토콜을 포함하는 속성을 얻고 이를 기초로 패킷을 분류하는 것이 가능하다.
또한, 상위 계층 플로우 처리부(204) 역시 플로우 관리 테이블(206) 룩업을 수행하여 패킷을 분류하는 것이 가능한데, 입력 패킷이 첫 번째로 도착한 것이어서 플로우 관리 테이블(206)에 동일한 트래픽 정보가 존재하지 않는 경우, 프로토콜 관리 테이블(207)을 검색하여 해당 응용 서비스에 적합한 속성을 확인하고 이를 플로우 관리 테이블(206)에 저장하거나 갱신하는 것이 가능하다. 이렇게 되면, 이후 패킷에 대해서는 플로우 관리 테이블(206)만으로 패킷 처리를 할 수가 있다.
이와 같이, 본 실시예에 따른 패킷 처리 장치(200)는 라우터(100) 등의 통신시스템에서 최선형(Best-Effort) 서비스에서 벗어나서 QoS 보장형 서비스를 제공하 는 것이 가능하다.
다시 말해, 패킷이 입력되면 하위 계층 헤더의 일부 필드만을 이용하여 패킷을 일차적으로 처리한 후, 포트 번호만을 이용하여 응용 서비스가 확인되고 트래픽 속성 분석이 가능한 경우, 플로우 관리 테이블이라는 데이터베이스를 이용하여 현재 입력된 패킷과 동일하게 분류되는 패킷들에 대한 정보가 있는지를 확인하여 패킷을 분류하는 것이 가능하다. 그러나 플로우 관리 테이블에 동일한 트래픽 정보가 존재하지 않는다면, 새로운 플로우로 간주하여 여러 가지 데이터베이스 등에 대한 룩업 절차를 수행하여 해당 응용 서비스에 접합한 속성을 확인하고, 이를 플로우 관리 테이블에 갱신함으로써 플로우내의 다음 패킷들이 이 정보를 이용하여 패킷 전송을 할 수 있도록 하는 것이 가능하다.
또한, 패킷을 일차적으로 처리한 결과, 포트 번호가 잘 알려진 포트 번호가 아닌 경우에는 패킷 상세 분석을 통해서 응용 서비스의 종류를 파악하고, 프로토콜 관리 테이블 검색 등의 과정을 통해서 속성 정보를 얻게 된다. 그리고, 이렇게 얻어진 속성 정보를 플로우 관리 테이블에 저장함으로써, 동일한 플로우의 다른 패킷에 대한 처리 부하를 줄이는 것이 가능하다.
또한, 선택적으로, 본 발명의 실시예에 따른 패킷 처리 장치(200)는 상세 분석을 통해서도 패킷의 속성을 분석할 수 없는 경우, 암호화된 트래픽인지 확인하고, 암호가 해석될 경우에는 해석된 정보를 이용하여 패킷을 전송하고, 암호 해석이 불가능한 경우에는 패킷을 폐기하는 것이 가능하다.
도 3은 본 발명의 일 실시예에 따른 계층적 처리 방법을 나타낸 것이다.
먼저, S301과 같이, 입력된 패킷에 대하여 하위 계층 헤더의 일부 필드를 이용하여 패킷을 분석한다.
이어서, S302와 같이, 패킷의 속성 파악이 가능한지 여부를 판단한다.
판단 결과, 속성 파악이 불가능하여 상세 분석이 필요한 경우, 후술할 S400 과정으로 넘어가고, 속성 파악이 가능한 경우, S303 과정이 수행된다.
S303 과정에서는 플로우 관리 테이블을 확인하는 절차가 수행된다. 즉, 입력된 패킷의 속성 정보가 플로우 관리 테이블에 있는지 여부를 확인한다. 이어서, S304와 같이 해당 패킷이 첫 번째로 도착한 패킷인지 여부를 판단한다. 만약, 테이블 엔트리 상에 관련 정보가 없다면 입력된 패킷은 최초로 입력된 패킷인 것으로 볼 수 있다.
플로우 관리 테이블 확인 결과 패킷이 첫 번째로 도착한 패킷인 경우, 상세 분석(S400을 통해서 응용 계층의 특성을 확인하는 것이 가능하며, 첫 번째로 도착한 패킷이 아닌 경우 플로우 관리 테이블 룩업을 수행하여 패킷을 분류 및 처리(S305)하는 것이 가능하다.
도 4는 본 발명의 일 실시예에 따른 상세 분석 과정을 도시한 것이다. 이것은 도 3의 S400 과정에 관한 일 예가 될 수 있다.
도 4를 참조하면, 패킷 상세 분석은 먼저, S401과 같이, 상세 분석을 통해서 패킷 분석이 가능한지 여부를 판단한다.
상세 분석을 통해서 패킷 속성 분석이 가능한 경우, S402와 같이, 플로우 관리 테이블을 확인하여 동일한 플로우가 존재하는지 검색한다. 만약, 테이블 엔트리 상에 관련 정보가 없다면 입력된 패킷은 최초로 입력된 패킷인 것으로 볼 수 있다.
즉, S403과 같이, 해당 패킷이 첫 번째로 도착한 패킷인지 여부를 판단하여, 첫 번째 패킷인 경우, S404와 같이, 패턴 매칭을 통해 속성을 파악하고 이 정보를 이용하여 플로우 관리 테이블을 갱신하는 것이 가능하다. 또한, 첫 번째 패킷이 아닌 경우, 이미 S404와 같은 과정을 통해 관련 정보가 갱신되어 있을 것이므로 S405와 같이 플로우 관리 테이블 룩업을 통해 패킷을 분류 및 처리하는 것이 가능하다.
한편, S401 과정에서, 상세 분석을 통해서도 패킷 분석이 불가능한 경우, S406과 같이, 해당 패킷이 암호화되어 있는지 여부를 판단한다. 암호화 패킷인 경우, S407과 같이, 암호 해석 가능 여부를 판단한다. 위 S406 또는 S407 과정에서 암호화 패킷이 아님에도 불구하고 패킷 분석이 불가능하거나 암호 해석이 불가능한 경우 S408과 같이 패킷을 폐기한다. 그러나 암호 해석이 가능한 경우, 다시 S402 과정으로 진행되며 이후의 내용은 전술한 바와 같다.
도 5는 본 발명의 일 실시예에 따른 패킷 처리 상태를 도시한다.
도 5를 참조하면, 501과 502는 하위 계층 플로우 처리 과정을 나타낸 것이다. 501은 동일 속성으로 분류된 패킷 중에서 첫 번째 이후의 패킷에 대한 처리 과정을 나타낸 것으로, 플로우 상태 처리 결과와 라인 카드의 플로우 관리 테이블의 정보를 이용하여 경로와 QoS 관련 정보를 확인 및 전송할 수 있다.
502는 동일 속성으로 분류된 패킷 중에서 첫 번째 패킷에 대한 처리 과정을 나타낸 것이다. 이것은 응용 서비스의 종류는 알려져 있지만, 플로우 관리 테이블에서 해당 플로우의 정보를 찾을 수 없는 경우가 될 수 있다. 알려진 응용 서비스 와 동일한지의 여부를 확인하기 위하여 상세 분석을 수행하고, 이와 관련된 정보를 프로토콜 관리 테이블에서 수집한다. 수집된 정보를 플로우 관리 테이블에 저장함으로써, 이후 동일한 플로우 내의 패킷 처리는 이를 기준으로 수행하도록 한다.
따라서, 하위 계층 플로우 처리 과정에서는 동일 속성의 패킷 중에서 첫 번째 패킷은 과정 502를 거치고, 나머지 패킷들은 501의 과정을 통해서 출력될 수 있다.
503, 504, 505는 상위 계층 플로우 처리 과정을 이용하여 처리는 과정을 나타낸 것이다. 그 중에서 503과 504는 패킷의 상세 분석을 통해서 속성 확인이 가능한 경우를 나타낸 것이다.
503은 동일 속성으로 분류된 패킷 중에서 첫 번째 이후의 패킷에 대한 처리 과정을 나타낸 것이다. 응용 서비스의 종류를 상세 분석을 통해서만 파악할 수 있기 때문에, 501과는 다르게 처리된다. 상세 분석 후에 패킷의 속성 부여가 가능하기 때문에 응용 서비스의 종류가 확인된 후에는 플로우 관리 테이블에 저장된 정보를 이용하여 전송이 가능하다.
504는 동일 속성으로 분류된 패킷 중에서 첫 번째 패킷의 처리 절차이다. 즉, 하위 계층 분석을 통해서 속성 구분이 되지 않고, 상세 분석에 의해서 속성 구분이 되는 플로우의 경우에는 504의 절차로 첫 번째 패킷이 처리되고, 나머지 패킷들은 503의 절차를 거치게 된다.
505는 상세 분석에 의해서 속성 분석이 되지 않는 경우의 패킷 처리 절차이다. 상세 분석에 의해서도 속성 분석이 되지 않으면, 암호화된 것으로 간주하여 암 호 해석 작업을 진행한다. 이 과정에서 암호가 해석되면 패킷을 전송할 수 있고, 아니면 패킷을 폐기하게 된다.
이상에서 상세히 설명한 바와 같이, 본 발명의 실시예에 따른 장치 및 방법에 의하면, 필요한 경우에만 패킷 상세 분석을 수행하기 때문에 불필요한 자원 낭비를 방지할 수 있고 패킷 분석에 대한 부하를 줄이는 것이 가능하다.
도 1은 본 발명의 일 실시예에 따른 라우터를 도시한다.
도 2는 본 발명의 일 실시예에 따른 계층적 패킷 처리 장치를 도시한다.
도 3 및 도 4는 본 발명의 일 실시예에 따른 계층적 패킷 처리 방법을 도시한다.
도 5는 본 발명의 일 실시예에 따른 패킷 처리 상태를 도시한다.
Claims (13)
- 입력되는 패킷의 하위 계층 헤더에 기초하여 상기 패킷의 속성 파악이 가능한지 여부를 판단하는 헤더 분석부; 및상기 속성 파악이 가능한 경우 상기 하위 계층 헤더 분석을 통해 상기 패킷을 분류하고, 상기 속성 파악이 불가능한 경우 상기 하위 계층 헤더 분석 및 상세 분석을 통해 상기 패킷을 분류하는 플로우 처리부; 를 포함하되,상기 하위 계층 헤더 분석은 상기 패킷의 하위 계층 헤더 정보를 이용하여 상기 패킷의 목적지 포트 또는 QoS 정보를 포함하는 속성을 얻고 이를 기초로 패킷을 분류하는 것을 특징으로 하는 계층적 패킷 처리 장치.
- 제 1 항에 있어서,상기 헤더 분석부는 상기 패킷의 TCP 헤더 또는 UDP 헤더의 목적지 포트 번호 또는 송신지 포트 번호가 잘 알려진 포트 번호(well known port number)이고, 이를 통해 응용 서비스의 종류 또는 QoS 등급을 파악할 수 있는 경우 상기 속성 파악이 가능한 것으로 판단하는 것을 특징으로 하는 계층적 패킷 처리 장치.
- 제 1 항에 있어서,상기 플로우 처리부는 상기 패킷이 첫 번째로 도착한 패킷인 경우 패킷 전달과 관련된 자료 모두를 이용하여 상기 패킷을 처리하고, 상기 패킷이 그 이후에 도착한 패킷인 경우 상기 자료 중 일부 자료를 이용하여 상기 패킷을 처리하는 것을 특징으로 하는 계층적 패킷 처리 장치.
- 제 3 항에 있어서,상기 패킷 전달과 관련된 자료는 플로우 관리 테이블 또는 프로토콜 관리 테이블을 포함하며, 상기 패킷의 분류는 상기 플로우 관리 테이블 룩업을 통해 수행되는 것을 특징으로 하는 계층적 패킷 처리 장치.
- 제 4 항에 있어서,상기 플로우 처리부는 첫 번째로 도착한 패킷에 대해서는 패킷 상세 분석 또는 패턴 매칭을 통해 속성을 파악하고 이를 상기 플로우 관리 테이블에 저장 또는 갱신하는 것을 특징으로 하는 계층적 패킷 처리 장치.
- 삭제
- 제 1 항에 있어서,상기 상세 분석은 상기 패킷의 상위 계층 헤더 또는 페이로드 정보를 이용한 패턴 매칭에 의하여 응용 서비스 또는 응용 프로토콜을 포함하는 속성을 얻고 이를 기초로 패킷을 분류하는 것을 특징으로 하는 계층적 패킷 처리 장치.
- 제 1 항에 있어서,상기 플로우 처리부는 상기 상세 분석을 통해서도 상기 패킷의 속성 파악이 불가능한 경우 상기 패킷의 암호화 여부를 판단하며, 암호 해석이 가능한 경우 암호 해석 절차를 수행하고 암호 해석이 불가능한 경우 상기 패킷을 폐기하는 것을 특징으로 하는 계층적 패킷 처리 장치.
- 입력되는 패킷의 속성에 따라 상기 패킷을 분류하는 패킷 처리 방법에 있어서,상기 패킷의 하위 계층 헤더 분석만으로 속성 파악이 가능한 경우, 상기 하위 계층 헤더 정보에 기초하여 상기 패킷을 분류하고, 분류된 패킷 중에서 첫 번째로 도착한 패킷에 대해서는 패킷 전달과 관련된 자료 모두를 이용하여 상기 패킷을 처리하고 첫 번째 이후에 도착한 패킷에 대해서는 상기 자료 중 일부를 이용하여 상기 패킷을 처리하는 하위 계층 플로우 처리 과정; 및상기 패킷의 하위 계층 헤더 분석만으로 속성 파악이 불가능한 경우, 상기 하위 계층 헤더 정보 및 패킷 상세 분석을 이용하여 상기 패킷을 분류하고, 분류된 패킷 중에서 첫 번째로 도착한 패킷에 대해서는 상기 자료 모두를 이용하여 상기 패킷을 처리하고 첫 번째 이후에 도착한 패킷에 대해서는 상기 자료 중 일부를 이용하여 상기 패킷을 처리하는 상위 계층 플로우 처리 과정; 을 포함하는 계층적 패킷 처리 방법.
- 제 9 항에 있어서,상기 패킷의 하위 계층 헤더의 일부 필드를 분석하여 상기 속성 파악이 가능한지 여부를 판단하는 과정; 을 더 포함하는 계층적 패킷 처리 방법.
- 제 9 항에 있어서,상기 첫 번째로 도착한 패킷은 플로우 관리 테이블에 상기 패킷의 정보가 없는 상태에서 입력된 패킷이고, 상기 첫 번째 이후에 도착한 패킷은 상기 플로우 관리 테이블에 상기 패킷의 정보가 있는 상태에서 입력된 패킷인 것을 특징으로 하는 계층적 패킷 처리 방법.
- 제 9 항에 있어서,상기 상세 분석은 상기 패킷의 상위 계층 헤더 또는 페이로드 정보를 이용한 패턴 매칭에 의하여 응용 서비스 또는 응용 프로토콜을 포함하는 속성을 얻고 이를 기초로 패킷을 분류하는 것을 특징으로 하는 계층적 패킷 처리 방법.
- 제 9 항에 있어서,상기 상위 계층 플로우 처리 과정은 상기 상세 분석을 통해서도 상기 패킷의 속성 파악이 불가능한 경우 상기 패킷의 암호화 여부를 판단하며, 암호 해석이 가능한 경우 암호 해석 절차를 수행하고 암호 해석이 불가능한 경우 상기 패킷을 폐 기하는 과정을 포함하는 계층적 패킷 처리 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080130631A KR101152958B1 (ko) | 2008-12-19 | 2008-12-19 | 계층적 패킷 처리 장치 및 방법 |
US12/626,009 US20100158009A1 (en) | 2008-12-19 | 2009-11-25 | Hierarchical packet process apparatus and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080130631A KR101152958B1 (ko) | 2008-12-19 | 2008-12-19 | 계층적 패킷 처리 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100071792A KR20100071792A (ko) | 2010-06-29 |
KR101152958B1 true KR101152958B1 (ko) | 2012-06-08 |
Family
ID=42266002
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080130631A KR101152958B1 (ko) | 2008-12-19 | 2008-12-19 | 계층적 패킷 처리 장치 및 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20100158009A1 (ko) |
KR (1) | KR101152958B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150049286A (ko) | 2013-10-29 | 2015-05-08 | 에스케이플래닛 주식회사 | 패킷 전송 시스템, 그 시스템에서의 패킷 분석을 회피하기 위한 방법 및 이를 위한 장치 |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101010248B1 (ko) * | 2009-07-02 | 2011-01-21 | 충남대학교산학협력단 | 패킷검사장치의 부하조절방법 및 장치 |
CN102143035B (zh) * | 2010-06-04 | 2013-06-12 | 华为技术有限公司 | 数据业务处理方法、网络设备和网络系统 |
US8520672B2 (en) * | 2010-07-29 | 2013-08-27 | Cisco Technology, Inc. | Packet switching device using results determined by an application node |
US8990380B2 (en) | 2010-08-12 | 2015-03-24 | Citrix Systems, Inc. | Systems and methods for quality of service of ICA published applications |
US8792491B2 (en) | 2010-08-12 | 2014-07-29 | Citrix Systems, Inc. | Systems and methods for multi-level quality of service classification in an intermediary device |
US8638795B2 (en) * | 2010-08-12 | 2014-01-28 | Citrix Systems, Inc. | Systems and methods for quality of service of encrypted network traffic |
IL210900A (en) | 2011-01-27 | 2015-08-31 | Verint Systems Ltd | System and method for efficient classification and processing of network traffic |
KR101280910B1 (ko) * | 2011-12-15 | 2013-07-02 | 한국전자통신연구원 | 고속 패킷 처리를 위한 네트워크 프로세서 기반 2단계 침입탐지장치 및 방법 |
US20140020102A1 (en) * | 2012-07-16 | 2014-01-16 | Infosys Limited | Integrated network architecture |
CN102833327B (zh) * | 2012-08-16 | 2016-03-02 | 瑞斯康达科技发展股份有限公司 | 基于http的客户端类型的识别方法和装置 |
US9055004B2 (en) | 2012-09-18 | 2015-06-09 | Cisco Technology, Inc. | Scalable low latency multi-protocol networking device |
US9001830B2 (en) * | 2012-09-18 | 2015-04-07 | Cisco Technology, Inc. | Ultra low latency multi-protocol network device |
US9232028B2 (en) * | 2013-03-15 | 2016-01-05 | Oracle International Corporation | Parallelizing packet classification and processing engines |
US9629018B2 (en) * | 2014-02-05 | 2017-04-18 | Ibasis, Inc. | Method and apparatus for triggering management of communication flow in an inter-network system |
US10263903B2 (en) * | 2014-02-05 | 2019-04-16 | Ibasis, Inc. | Method and apparatus for managing communication flow in an inter-network system |
CN103873464B (zh) * | 2014-02-27 | 2017-05-10 | 华为技术有限公司 | 报文处理的方法及转发设备 |
US10270699B2 (en) | 2014-07-28 | 2019-04-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Automated flow devolvement in an aggregate flow environment |
US10289384B2 (en) | 2014-09-12 | 2019-05-14 | Oracle International Corporation | Methods, systems, and computer readable media for processing data containing type-length-value (TLV) elements |
US10469343B2 (en) * | 2016-05-04 | 2019-11-05 | Telefonaktiebolaget Lm Ericsson (Publ) | Path continuity determination in an aggregate flow environment |
US10979890B2 (en) | 2016-09-09 | 2021-04-13 | Ibasis, Inc. | Policy control framework |
US10193802B2 (en) | 2016-09-13 | 2019-01-29 | Oracle International Corporation | Methods, systems, and computer readable media for processing messages using stateful and stateless decode strategies |
US10341411B2 (en) | 2017-03-29 | 2019-07-02 | Oracle International Corporation | Methods, systems, and computer readable media for providing message encode/decode as a service |
EP3603141B1 (en) | 2017-03-30 | 2021-02-17 | iBasis, Inc. | Esim profile switching without sms |
US10476629B2 (en) * | 2017-05-02 | 2019-11-12 | Juniper Networks, Inc. | Performing upper layer inspection of a flow based on a sampling rate |
US10524116B2 (en) | 2017-06-27 | 2019-12-31 | Ibasis, Inc. | Internet of things services architecture |
US10862613B2 (en) | 2018-02-01 | 2020-12-08 | T-Mobile Usa, Inc. | Dynamic numerology based on services |
US11310246B2 (en) * | 2018-08-10 | 2022-04-19 | Cisco Technology, Inc. | Endpoint-assisted inspection of encrypted network traffic |
US11095691B2 (en) | 2019-06-26 | 2021-08-17 | Oracle International Corporation | Methods, systems, and computer readable media for establishing a communication session between a public switched telephone network (PSTN) endpoint and a web real time communications (WebRTC) endpoint |
US20230239227A1 (en) * | 2020-07-15 | 2023-07-27 | Telefonaktiebolaget Lm Ericsson (Publ) | User Plane Function Selection Based on Per Subscriber CPU and Memory Footprint for Packet Inspection |
US20230095149A1 (en) * | 2021-09-28 | 2023-03-30 | Fortinet, Inc. | Non-interfering access layer end-to-end encryption for iot devices over a data communication network |
KR20240030757A (ko) * | 2022-08-31 | 2024-03-07 | 삼성전자주식회사 | 셀룰러 통신 시스템에서 응용 성능을 위한 응용 계층 정보/전송 계층 정보 전달 방법 및 장치 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070115825A1 (en) | 2000-04-19 | 2007-05-24 | Caspian Networks, Inc. | Micro-Flow Management |
US20080192740A1 (en) | 2005-03-04 | 2008-08-14 | Nokia Siemens Networks Gmbh & Co. Kg | Processing Realtime Media Streams |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6182146B1 (en) * | 1997-06-27 | 2001-01-30 | Compuware Corporation | Automatic identification of application protocols through dynamic mapping of application-port associations |
US6862622B2 (en) * | 1998-07-10 | 2005-03-01 | Van Drebbel Mariner Llc | Transmission control protocol/internet protocol (TCP/IP) packet-centric wireless point to multi-point (PTMP) transmission system architecture |
US6567408B1 (en) * | 1999-02-01 | 2003-05-20 | Redback Networks Inc. | Methods and apparatus for packet classification with multi-level data structure |
US6654373B1 (en) * | 2000-06-12 | 2003-11-25 | Netrake Corporation | Content aware network apparatus |
US7685254B2 (en) * | 2003-06-10 | 2010-03-23 | Pandya Ashish A | Runtime adaptable search processor |
US7774461B2 (en) * | 2004-02-18 | 2010-08-10 | Fortinet, Inc. | Mechanism for determining a congestion metric for a path in a network |
US20070171825A1 (en) * | 2006-01-20 | 2007-07-26 | Anagran, Inc. | System, method, and computer program product for IP flow routing |
US20080077694A1 (en) * | 2006-07-20 | 2008-03-27 | Sun Microsystems, Inc. | Method and system for network security using multiple virtual network stack instances |
-
2008
- 2008-12-19 KR KR1020080130631A patent/KR101152958B1/ko not_active IP Right Cessation
-
2009
- 2009-11-25 US US12/626,009 patent/US20100158009A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070115825A1 (en) | 2000-04-19 | 2007-05-24 | Caspian Networks, Inc. | Micro-Flow Management |
US20080192740A1 (en) | 2005-03-04 | 2008-08-14 | Nokia Siemens Networks Gmbh & Co. Kg | Processing Realtime Media Streams |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150049286A (ko) | 2013-10-29 | 2015-05-08 | 에스케이플래닛 주식회사 | 패킷 전송 시스템, 그 시스템에서의 패킷 분석을 회피하기 위한 방법 및 이를 위한 장치 |
Also Published As
Publication number | Publication date |
---|---|
US20100158009A1 (en) | 2010-06-24 |
KR20100071792A (ko) | 2010-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101152958B1 (ko) | 계층적 패킷 처리 장치 및 방법 | |
US10454790B2 (en) | System and method for efficient classification and processing of network traffic | |
CN104348716B (zh) | 一种报文处理方法及设备 | |
US9825868B2 (en) | Incremental application of resources to network traffic flows based on heuristics and business policies | |
KR101409563B1 (ko) | 애플리케이션 프로토콜 식별 방법 및 장치 | |
US7644157B2 (en) | Statistical information collecting system and apparatus thereof | |
US8767551B2 (en) | System and method for flow table management | |
US20160219131A1 (en) | L2/l3 multi-mode switch including policy processing | |
US7957396B1 (en) | Targeted flow sampling | |
US7729279B2 (en) | Traffic analysis on high-speed networks | |
US20080192753A1 (en) | METHOD AND SYSTEM FOR PROVIDING QoS SERVICE | |
US20060268876A1 (en) | Packet classification acceleration using spectral analysis | |
US20130294449A1 (en) | Efficient application recognition in network traffic | |
WO2017218264A1 (en) | Flow classification for information centric network protocols | |
EP1241843A2 (en) | Multi-contract rate policing | |
US7953017B2 (en) | Application specific service ping packet | |
KR101344398B1 (ko) | 애플리케이션 인지와 트래픽 제어를 위한 라우터 장치 및 그 방법 | |
WO2014148613A1 (ja) | ネットワーク統計情報の提供システム、ネットワーク統計情報の提供方法及びプログラム | |
KR100770643B1 (ko) | Tcam을 이용한 고성능 패킷 분류 방법 및 그 장치 | |
KR100429542B1 (ko) | 인터넷에서의 실시간 멀티미디어 패킷 분석 방법 | |
RU2691192C1 (ru) | Система межсетевого экранирования | |
US8351341B1 (en) | Filtering to protect class of service | |
Chokkanathan et al. | A study on flow based classification models using machine learning techniques | |
RU2697698C2 (ru) | Способ обработки сетевого трафика с использованием межсетевого экранирования | |
KR101087146B1 (ko) | 선행 분석을 이용한 패킷 상세 분석 장치 및 방법 |
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 | ||
LAPS | Lapse due to unpaid annual fee |