KR101152958B1 - 계층적 패킷 처리 장치 및 방법 - Google Patents

계층적 패킷 처리 장치 및 방법 Download PDF

Info

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
Application number
KR1020080130631A
Other languages
English (en)
Other versions
KR20100071792A (ko
Inventor
이상민
이정희
이범철
김봉태
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020080130631A priority Critical patent/KR101152958B1/ko
Priority to US12/626,009 priority patent/US20100158009A1/en
Publication of KR20100071792A publication Critical patent/KR20100071792A/ko
Application granted granted Critical
Publication of KR101152958B1 publication Critical patent/KR101152958B1/ko

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/026Capturing of monitoring data using flow identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Abstract

계층적 패킷 처리 장치 및 방법이 개시된다. 본 발명의 일 양상에 의하면, 패킷을 상위 계층과 하위 계층으로 구분하여 분석하며, 상위 계층 및 하위 계층에 대해 각각 분석 대상 패킷의 속성이 기 분석된 것이 있는지 아니면 다시 분석해야 하는 것이 있는지 구별하여 처리하는 것이 가능하다. 따라서 상세 분석이 필요한 경우에만 패킷을 상세 분석하기 때문에 불필요한 자원 낭비를 줄임과 동시에 패킷 처리 시에 QoS를 보장할 수 있는 장점이 있다.
계층적, 패킷 상세 분석, DPI(Deep Packet Inspection), 플로우(flow)

Description

계층적 패킷 처리 장치 및 방법{apparatus and method for hierarchical packet inspection}
본 발명은 패킷 처리 기술과 관련된다. 특히, 라우터와 같은 패킷 기반의 통신 시스템에 있어서 사용자에게 응용 서비스의 속성에 따라 트래픽을 적절히 전달할 수 있도록 패킷을 처리하고 분류하는 기술과 관련된다.
본 출원은 지식경제부 및 정보통신연구진흥원의 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)

  1. 입력되는 패킷의 하위 계층 헤더에 기초하여 상기 패킷의 속성 파악이 가능한지 여부를 판단하는 헤더 분석부; 및
    상기 속성 파악이 가능한 경우 상기 하위 계층 헤더 분석을 통해 상기 패킷을 분류하고, 상기 속성 파악이 불가능한 경우 상기 하위 계층 헤더 분석 및 상세 분석을 통해 상기 패킷을 분류하는 플로우 처리부; 를 포함하되,
    상기 하위 계층 헤더 분석은 상기 패킷의 하위 계층 헤더 정보를 이용하여 상기 패킷의 목적지 포트 또는 QoS 정보를 포함하는 속성을 얻고 이를 기초로 패킷을 분류하는 것을 특징으로 하는 계층적 패킷 처리 장치.
  2. 제 1 항에 있어서,
    상기 헤더 분석부는 상기 패킷의 TCP 헤더 또는 UDP 헤더의 목적지 포트 번호 또는 송신지 포트 번호가 잘 알려진 포트 번호(well known port number)이고, 이를 통해 응용 서비스의 종류 또는 QoS 등급을 파악할 수 있는 경우 상기 속성 파악이 가능한 것으로 판단하는 것을 특징으로 하는 계층적 패킷 처리 장치.
  3. 제 1 항에 있어서,
    상기 플로우 처리부는 상기 패킷이 첫 번째로 도착한 패킷인 경우 패킷 전달과 관련된 자료 모두를 이용하여 상기 패킷을 처리하고, 상기 패킷이 그 이후에 도착한 패킷인 경우 상기 자료 중 일부 자료를 이용하여 상기 패킷을 처리하는 것을 특징으로 하는 계층적 패킷 처리 장치.
  4. 제 3 항에 있어서,
    상기 패킷 전달과 관련된 자료는 플로우 관리 테이블 또는 프로토콜 관리 테이블을 포함하며, 상기 패킷의 분류는 상기 플로우 관리 테이블 룩업을 통해 수행되는 것을 특징으로 하는 계층적 패킷 처리 장치.
  5. 제 4 항에 있어서,
    상기 플로우 처리부는 첫 번째로 도착한 패킷에 대해서는 패킷 상세 분석 또는 패턴 매칭을 통해 속성을 파악하고 이를 상기 플로우 관리 테이블에 저장 또는 갱신하는 것을 특징으로 하는 계층적 패킷 처리 장치.
  6. 삭제
  7. 제 1 항에 있어서,
    상기 상세 분석은 상기 패킷의 상위 계층 헤더 또는 페이로드 정보를 이용한 패턴 매칭에 의하여 응용 서비스 또는 응용 프로토콜을 포함하는 속성을 얻고 이를 기초로 패킷을 분류하는 것을 특징으로 하는 계층적 패킷 처리 장치.
  8. 제 1 항에 있어서,
    상기 플로우 처리부는 상기 상세 분석을 통해서도 상기 패킷의 속성 파악이 불가능한 경우 상기 패킷의 암호화 여부를 판단하며, 암호 해석이 가능한 경우 암호 해석 절차를 수행하고 암호 해석이 불가능한 경우 상기 패킷을 폐기하는 것을 특징으로 하는 계층적 패킷 처리 장치.
  9. 입력되는 패킷의 속성에 따라 상기 패킷을 분류하는 패킷 처리 방법에 있어서,
    상기 패킷의 하위 계층 헤더 분석만으로 속성 파악이 가능한 경우, 상기 하위 계층 헤더 정보에 기초하여 상기 패킷을 분류하고, 분류된 패킷 중에서 첫 번째로 도착한 패킷에 대해서는 패킷 전달과 관련된 자료 모두를 이용하여 상기 패킷을 처리하고 첫 번째 이후에 도착한 패킷에 대해서는 상기 자료 중 일부를 이용하여 상기 패킷을 처리하는 하위 계층 플로우 처리 과정; 및
    상기 패킷의 하위 계층 헤더 분석만으로 속성 파악이 불가능한 경우, 상기 하위 계층 헤더 정보 및 패킷 상세 분석을 이용하여 상기 패킷을 분류하고, 분류된 패킷 중에서 첫 번째로 도착한 패킷에 대해서는 상기 자료 모두를 이용하여 상기 패킷을 처리하고 첫 번째 이후에 도착한 패킷에 대해서는 상기 자료 중 일부를 이용하여 상기 패킷을 처리하는 상위 계층 플로우 처리 과정; 을 포함하는 계층적 패킷 처리 방법.
  10. 제 9 항에 있어서,
    상기 패킷의 하위 계층 헤더의 일부 필드를 분석하여 상기 속성 파악이 가능한지 여부를 판단하는 과정; 을 더 포함하는 계층적 패킷 처리 방법.
  11. 제 9 항에 있어서,
    상기 첫 번째로 도착한 패킷은 플로우 관리 테이블에 상기 패킷의 정보가 없는 상태에서 입력된 패킷이고, 상기 첫 번째 이후에 도착한 패킷은 상기 플로우 관리 테이블에 상기 패킷의 정보가 있는 상태에서 입력된 패킷인 것을 특징으로 하는 계층적 패킷 처리 방법.
  12. 제 9 항에 있어서,
    상기 상세 분석은 상기 패킷의 상위 계층 헤더 또는 페이로드 정보를 이용한 패턴 매칭에 의하여 응용 서비스 또는 응용 프로토콜을 포함하는 속성을 얻고 이를 기초로 패킷을 분류하는 것을 특징으로 하는 계층적 패킷 처리 방법.
  13. 제 9 항에 있어서,
    상기 상위 계층 플로우 처리 과정은 상기 상세 분석을 통해서도 상기 패킷의 속성 파악이 불가능한 경우 상기 패킷의 암호화 여부를 판단하며, 암호 해석이 가능한 경우 암호 해석 절차를 수행하고 암호 해석이 불가능한 경우 상기 패킷을 폐 기하는 과정을 포함하는 계층적 패킷 처리 방법.
KR1020080130631A 2008-12-19 2008-12-19 계층적 패킷 처리 장치 및 방법 KR101152958B1 (ko)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150049286A (ko) 2013-10-29 2015-05-08 에스케이플래닛 주식회사 패킷 전송 시스템, 그 시스템에서의 패킷 분석을 회피하기 위한 방법 및 이를 위한 장치

Families Citing this family (31)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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