KR100501080B1 - 인터넷상 트래픽의 상위 계층 프로토콜들을 구분하는 방법및 장치 - Google Patents

인터넷상 트래픽의 상위 계층 프로토콜들을 구분하는 방법및 장치 Download PDF

Info

Publication number
KR100501080B1
KR100501080B1 KR10-2000-0078637A KR20000078637A KR100501080B1 KR 100501080 B1 KR100501080 B1 KR 100501080B1 KR 20000078637 A KR20000078637 A KR 20000078637A KR 100501080 B1 KR100501080 B1 KR 100501080B1
Authority
KR
South Korea
Prior art keywords
protocol
layer
arrival packet
basic information
upper layer
Prior art date
Application number
KR10-2000-0078637A
Other languages
English (en)
Other versions
KR20020049462A (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 KR10-2000-0078637A priority Critical patent/KR100501080B1/ko
Priority to US10/451,085 priority patent/US20040148417A1/en
Priority to PCT/KR2001/001043 priority patent/WO2002051077A1/en
Priority to AU2001274642A priority patent/AU2001274642A1/en
Publication of KR20020049462A publication Critical patent/KR20020049462A/ko
Application granted granted Critical
Publication of KR100501080B1 publication Critical patent/KR100501080B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/427Loop networks with decentralised control
    • H04L12/433Loop networks with decentralised control with asynchronous transmission, e.g. token ring, register insertion
    • 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
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols
    • 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/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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

본 발명은 인터넷을 통해 송수신되는 트래픽에서 트랜스포트 계층 상위의 프로토콜을 분류하는 방법 및 장치에 관한 것이다. 본 발명에 따른 상위 계층 프로토콜 분류 방법은 도착 패킷에서 기본 정보를 추출하는 단계, 추출된 기본 정보가 미리 설정된 관리 테이블에 존재하는 지를 판단하는 단계, 추출된 기본 정보가 미리 설정된 관리 테이블에 존재하지 않는 경우, 미리 설정된 복수의 대상 프로토콜 중 도착 패킷의 상위 계층 프로토콜에 상응하는 대상 프로토콜을 선택하여 관리 테이블에 등록하는 단계, 추출된 기본 정보가 미리 설정된 관리 테이블에 존재하는 경우, 기본 정보에 상응하는 관리 테이블을 갱신하는 단계를 포함한다.

Description

인터넷상 트래픽의 상위 계층 프로토콜들을 구분하는 방법 및 장치{A METHOD AND SYSTEM FOR DISTINGUISHING HIGHER LAYER PROTOCOLS OF THE INTERNET TRAFFIC}
본 발명은 인터넷을 통해 송수신되는 트래픽에서 트랜스포트 계층 상위의 프로토콜을 구분하는 방법 및 장치에 관한 것이다.
종래의 인터넷 프로토콜 및 프로토콜들을 구분하는 방법에 대해서는 도면을 참조하여 상세히 설명하기로 한다.
도 1은 인터넷에서 사용되는 TCP/IP 계층 모델과 각 계층에서 사용되는 대표 프로토콜들을 나타낸 도면이다.
도 1을 참조하면, TCP/IP 계층 모델은 데이터 링크 계층(101), 네트워크 계층(103), 트랜스포트 계층(105), 상위 계층(107) 등의 4개의 계층으로 구분된다. 데이터 링크 계층(101)은 네트워크상에서의 실제적인 데이터의 전송을 수행하는데, 이를 위하여 이더넷, 토큰버스, 토큰링, FDDI등과 같은 방법들(111)을 사용할 수 있다. 네트워크 계층(103)에서는 IP(Internet Protocol)(113)을 사용하여 데이터를 전달한다. 트랜스포트 계층(105)에서는 TCP(Trnasmission Control Protocol)(115) 또는 UDP(User Datagram Protocol)(117)를 사용한다. 상위 계층(107)에는 Telnet, FTP(File Transfer Protocol), SMTP(Simple Mail Transfer Protocol), DNS(Domain Name Server) 등과 같은 다양한 응용 서비스들(119)이 있다.
도 2는 사용자의 데이터가 인터넷을 통하여 전송되기 위하여 TCP/IP 계층에 따라 인캡슐레이션되는 과정을 보여주는 예시 도면이다.
도 2를 참조하면, 인터넷을 통하여 전달하려는 사용자 데이터(209)는 상위 계층에서 상위 계층 헤더(207)가 붙어 상위 계층 프로토콜 데이터가 생성된다. 상기 상위 계층 프로토콜 데이터는 트랜스포트 계층에서 트랜스포트 계층 헤더(205)가 붙여 트랜스포트 계층 프로토콜 데이터로 생성된다. 상기 트랜스포트 계층 프로토콜 데이터는 네트워크 계층에서 IP 헤더(203)가 붙어 IP 데이터그램이 생성된다. 데이터 링크 계층에서는 IP 데이터그램에 데이터 링크 계층 헤더(201) 및/또는 테일을 붙여 데이터 링크 계층 프레임을 생성하여 물리 매체를 통하여 전송한다. 데이터 링크 계층 프레임을 전송받은 네트워크는 위의 과정을 역으로 수행하여 사용자 데이터(290)를 추출한다.
도 3은 인터넷에서 데이터 전송의 기본이 되는 IP 데이터그램의 일반적인 구조를 나타낸 도면이다.
도 3을 참조하면, 인터넷 패킷은 상위 계층 데이터(301)에 상위 계층 헤더(303), 트랜스포트 계층 헤더(305) 및 IP 헤더(307)로 구성된다. IP 계층 데이터그램 헤더(307)에는 일반적으로 프로토콜(PROTOCOL) 필드, 송신측 주소(SRC ADDR) 필드, 수신측 주소(DEST ADDR) 필드, IDENTIFICATION 필드 등이 포함한다. 여기서, 송신측 주소는 송신측 IP 주소, 수신측 주소는 수신측 IP 주소를 나타낸다.
트랜스포트 계층 프로토콜 데이터 헤더(305)에는 UDP를 사용하는 경우 송신측 포트 번호(SRC PORT) 필드, 수신측 포트 번호(DEST PORT) 필드, 메시지 길이 필드, 체크섬 (CHECKSUM) 필드들이 포함되고, TCP를 사용하는 경우에는 이들 이외에 시퀀스 번호(SEQ NO.) 필드, 응답 번호(ACK NO.) 필드, 등이 추가로 포함된다.
트랜스포트 계층의 상위 계층 프로토콜(이하, 상위 계층 프로토콜이라 칭함) 데이터 헤더(303)에는 상위 계층의 프로토콜마다 서로 다른 필드들이 사용될 수 있다. 예를 들어, RTP(Real-Time Transport Protocol)인 경우를 예로 들면, 버전(VER) 필드, Payload 타입(PTYPE) 필드, 시퀀스 넘버(SEQ NO.) 필드, 타임 스탬프(TIME STAMP) 필드 등이 포함된다.
종래의 인터넷망을 관리하기 위하여, 인터넷 트래픽을 수집(capture)하여 프로토콜별로 분류하는 모니터링 방법들은 TCP/IP에서 IP 계층이나 TCP, UDP 등의 트랜스포트 계층을 대상으로 하였다. 이는, IETF(Internet Engineering Task Force)의 RFC 791에서 규정(상술한 것을 참고)한 바와 같이, IP 데이터그램의 헤더(307)에는 프로토콜 필드가 있어서, 상기 프로토콜 필드를 이용하여 IP 계층과 트랜스포트 계층상의 서로 다른 프로토콜들을 분류할 수 있기 때문이다.
트랜스포트 계층인 TCP 및 UDP는 IETF의 RFC 793 및 RFC 768에 각각 규정되어 있다. 상술한 바와 같이, 트랜스포트 계층인 TCP 및 UDP의 데이터 헤더(305)에는 송신측 포트 번호 필드와 수신측 포트 번호 필드가 포함되어 있다. 각각의 종단 단말기는 포트 정보와 IP 주소들을 이용하여 트랜스포트 계층의 상위 계층에서의 응용 프로그램 또는 응용 프로토콜과 연결시킨다.
IETF에서는 이른바 Well-known port라고 하여 자주 사용되거나 특별한 목적을 갖는 상위 계층 프로토콜들에 대해서 트랜스포트 계층의 프로토콜 헤더(305)의 포트 필드들에 상기 Well-known port를 사용하도록 하고 있다. 즉, Well-known port 번호를 사용하는 경우에는 TCP 또는 UDP의 헤더의 포트 필드의 번호만으로 상위 계층의 프로토콜들을 구분할 수 있다. 대표적인 Well-known port 번호는 도 4를 참조하여 설명하기로 한다.
도 4는 대표적인 Well-known port의 예시들을 나타낸 도면이다.
도 4를 참조하면, FTP의 경우, 데이터이면 20번, 컨트롤이면 21번을 사용하며, telnet은 23번, SMTP는 35번, DNS는 53 등으로 포트 번호가 할당되어 있어서, 해당 포트 번호만을 알면, 예를 들어, 포트 필드의 포트 번호가 23번이면 상위 계층의 응용 프로토콜이 telnet임을 알 수가 있다.
그러나, Well-known port 번호를 사용하지 않는 다른 프로토콜들은 포트 필드에 임의의 포트 번호가 할당된다. 이 경우, 단순히 IP 데이터그램 헤더(307)나 트랜스포트 계층인 TCP 또는 UDP 데이터 헤더(305) 정보만으로는 상위 계층에서 어떤 프로토콜을 사용하는 지를 직접적으로 알아낼 수가 없는 문제점이 있다.
종래에는 인터넷을 사용하는 응용 프로그램들이 대부분 문자나 파일 전송과 같은 데이터 응용들이 대부분이었으나, 최근에는 인터넷 전화, 인터넷 방송, 인터넷을 이용한 화상 채팅, 화상 회의, 네트워크 게임 등과 같은 다양한 응용들이 보편화되어 가고 있다. 근본적으로, 전통적인 텍스트 중심의 데이터 응용과 영상, 음성 등이 결합된 멀티미디어 응용들은 트래픽 발생 특성과 품질에 대한 요구 조건이 현저하게 다르다. 전통적인 텍스트 중심의 데이터 트래픽은 패킷의 발생 시간 간격과 패킷의 길이가 가변적인 특징을 갖고 있으며, 인터넷상에서 다소의 지연(delay)을 감수하더라도 손실 또는 유실(loss)이 없이 전달되어야 하는 품질 요구 조건이 가장 큰 목표였다. 이에 비해, 멀티미디어 트래픽은 보다 복잡한 트래픽 발생 특성과 데이터 트래픽과는 다른 품질 요구 조건을 갖고 있다. 특히, 음성 트래픽은 고정 길이의 패킷들이 일정한 시간 간격을 갖고 발생되는 특징을 갖고 있으며, 영상 트래픽은 패킷의 길이가 가변적일 수도 있고, 고정적일 수도 있다. 이들 멀티미디어 트래픽들은 지연과 지연 변이의 정도에 따라 우선적으로 서비스 품질이 좌우되는 특성을 가지며, 다소의 손실은 감수할 수 있다.
따라서, 인터넷 전화 등을 포함하는 멀티미디어 응용들의 서비스 품질 향상을 위하여는 인터넷 상에서 이들 멀티미디어 트래픽이 어느 정도로 인터넷 망 자원을 사용하는 지와 어느 정도의 전송 품질을 갖고 있는 지를 프로토콜별로 또는 응용별로 분류하여야 한다. 그러나, 종래의 망관리 또는 트래픽 관리를 위한 방법이나 시스템들은 인터넷 상의 트래픽을 모두 데이터의 한 범주로 간주하여 망자원 이용도나 전송 품질에 대한 자료를 제공하였다. 이는 종래의 망관리 또는 트래픽 관리를 위한 방법이나 시스템들은 Well-known port를 사용하는 데이터 응용과 관련된 일부 상위 계층 프로토콜만을 분류해낼 수 있고, 멀티미디어 트래픽들이 사용하는 RTP(Real-Time Transport Protocol)와 같은 상위 계층 프로토콜을 분류해 낼 수가 없었다는 것이 가장 큰 문제점이었다.
따라서, 본 발명의 목적은 인터넷상의 트래픽들에 대하여 IP 계층 헤더나 트랜스포트 계층 헤더의 정보만으로 분류할 수 없는 상위 계층에서 사용되는 프로토콜들을 효율적으로 분류하는 방법 및 장치를 제공하는 것이다.
본 발명의 다른 목적은, 응용 계층의 프로토콜들을 분류해 냄으로써 이들 상위 프로토콜들의 인터넷망 자원 사용도와 트래픽 특성에 대한 통계 자료들을 산출해 낼 수 있는 기본 수단을 제공하여, 인터넷 망관리나 트래픽 관리 시스템들이 새로운 품질 요구를 갖는 트래픽들에 대하여 효율적으로 관리 할 수 있는 방법 및 장치를 제공하는 것이다.
본 발명의 또 다른 목적은, 인터넷 전화, 인터넷 방송과 같이 특별한 품질이 요구되는 서비스별로 응용 계층 프로토콜들을 분리해 내어 이들 서비스의 품질을 향상시킬 수 있는 방안을 제공할 수 있는 상위 계층 프로토콜 방법 및 장치를 제공하는 것이다.
본 발명의 또 다른 목적은, 인터넷 연결이 유지되는 동안에는 기본 정보가 유지되는 상태를 이용하여, 상위 계층 프로토콜의 분류에 있어서 많은 시간과 계산량이 요구되는 상세 비교는 학습전 과정에서만 수행하여 이후의 학습후 과정에서는 단순하게 기본 정보만으로 응용 계층 프로토콜을 분류하는 간략 비교를 통해, 상위 계층의 프로토콜 분류의 정확도를 높임과 동시에 분류 속도를 높일 수 있는 상위 계층 프로토콜 분류 방법 및 장치를 제공하는 것이다.
상기 목적들을 달성하기 위하여 본 발명의 일 측면에 따르면, 도착 패킷의 상위 계층-여기서, 상위 계층은 트랜스포트 계층의 상위 계층임-의 프로토콜을 분류하는 데에 있어서, 상기 도착 패킷에서 기본 정보를 추출하고, 상기 추출된 기본 정보가 관리 테이블에 등록되었는 지를 판단하고, 상기 추출된 기본 정보가 상기 관리 테이블에 등록되지 않은 경우, 미리 설정된 복수의 대상 프로토콜 중 상기 도착 패킷의 상위 계층 프로토콜에 상응하는 대상 프로토콜을 추출하고, 상기 기본 정보 및 추출한 대상 프로토콜을 상기 관리 테이블에 등록하고, 상기 추출된 기본 정보가 상기 관리 테이블에 미리 등록되어 있는 경우, 상기 기본 정보에 상응하는 상기 관리 테이블을 갱신하는 상위 계층 프로토콜 분류 방법, 상기 방법에 상응하는 장치 및 시스템을 제공할 수 있다.
바람직한 일 실시예에서, 상기 복수의 도착 패킷을 상기 단계들을 이용하여 상위 계층 프로토콜별로 분류한 통계 자료는 망관리 시스템에서 망관리를 수행하기 위해 이용될 수 있다. 또한, 상기 상위 계층 프로토콜별 통계 자료에 대한 MIB(Management Information Base)가 추가로 정의되거나 상기 상위 계층 프로토콜별 통계 자료가 미리 정해진 고유의 형식으로 구성될 수 있다. 여기서, 상기 상위 계층 프로토콜이 RTP, RTCP 및 사업자별 비표준의 인터넷 전화용 프로토콜 중 적어도 어느 하나이며, 인터넷 전화용 트래픽과 비인터넷 전화용 트래픽의 통계 자료를 분류하기 위해서 이용될 수 있다. 그리고, 상기 인터넷 전화용 트래픽과 비인터넷 전화용 트래픽의 통계 자료가 시간별, 프로토콜별, 송신측 IP 주소별, 수신측 IP 주소별 및 송신측 IP 주소, 수신측 IP 주소쌍 중 적어도 하나에 대해서 표현되며, 그래픽 기반, 텍스트 기반 중 적어도 하나로 표현될 수 있다.
바람직한 다른 실시예에서, 상기 기본 정보는 IP 데이터그램 헤더 또는 트랜스포트 계층 프로토콜 데이터 헤더에 지정된 복수의 필드중 적어도 하나를 포함할 수 있다.
바람직한 또 다른 실시예에서, 상기 복수의 대상 프로토콜은 상세 비교를 위한 필드들이 미리 설정되어 저장될 수 있다.
바람직한 또 다른 실시예에서, 상기 상위 계층 프로토콜 분류 방법은 상기 도착 패킷의 IP 데이터그램 헤더의 프로토콜 필드에서 지정된 프로토콜이 규정되거나 트랜스포트 계층 프로토콜 데이터 헤더의 프로토콜 필드에서 Well-known port를 사용하는 경우, 상기 지정된 프로토콜 또는 상기 Well-known port에 상응하는 프로토콜로 분류하는 단계를 더 포함한다.
바람직한 또 다른 실시예에서, 상기 관리 테이블은 적어도 기본 정보를 기재하는 기본 정보 항목, 프로토콜을 기재하는 프로토콜 항목, 부가 정보를 기재하는 부가 정보 항목, 시간 정보를 기재하는 시간 정보항목, 분류 상태-여기서, 상기 상태는 적어도 학습전 과정 및 학습후 과정을 포함함-를 기재하는 상태 항목, 상기 상태 항목에 상응하는 카운터 항목을 포함한다. 여기서, 상기 상위 계층 프로토콜 분류 방법은 상기 대상 프로토콜이 부가 정보를 요구하는 프로토콜인 경우, 부가 정보를 추출하여 상기 관리 테이블에 등록하는 단계를 더 포함한다.
바람직한 또 다른 실시예에서, 상기 추출된 기본 정보가 상기 관리 테이블에 등록되지 않은 경우, 미리 설정된 복수의 대상 프로토콜 중 상기 도착 패킷의 상위 계층 프로토콜에 상응하는 대상 프로토콜을 추출하는 것은 상기 대상 프로토콜의 헤더의 미리 지정된 필드의 내용이 상응하는 상기 도착 패킷의 상위 계층의 프로토콜 데이터 헤더의 필드의 내용과 일치 또는 일관성있게 일치하는 경우, 상기 대상 프로토콜을 추출하는 것이다. 여기서, 상기 미리 지정된 필드는 모든 필드 또는 상기 대상 프로토콜을 식별할 수 있는 핵심적인 일부 필드이다. 상기 추출된 기본 정보가 상기 관리 테이블에 미리 등록되어 있는 경우, 상기 기본 정보에 상응하는 상기 관리 테이블을 갱신하는 단계는 상기 상태가 학습전 상태인 경우, 상세 비교를 수행하는 단계, 상기 상태가 학습후 상태인 경우, 간략 비교를 수행하는 단계를 포함한다. 그리고, 상기 상세 비교를 수행하는 단계는 상기 관리 테이블의 프로토콜 항목의 프로토콜을 대상 프로토콜로 지정하는 단계, 상기 도착 패킷의 상위 계층 프로토콜 데이터 헤더와 상기 지정된 대상 프로토콜 헤더가 상응하는 지를 판단하는 단계, 상기 판단 결과 상응하면, 상기 지정된 대상 프로토콜로 분류하고, 카운터를 1 증가시키고, 증가시킨 카운터가 미리 설정된 일정한 제1 양의 정수(N)보다 작지 않으면 상기 상태를 상기 학습후 상태로 갱신하고, 카운터를 초기값으로 갱신하는 단계, 상기 판단 결과 상응하지 않으면. 상기 관리 테이블내의 상기 기본 정보에 상응하는 모든 항목을 삭제하는 단계를 포함한다. 그리고, 상기 도착 패킷의 상위 계층 프로토콜 데이터 헤더와 상기 지정된 대상 프로토콜 헤더가 상응하는 지를 판단하는 것은 상기 지정된 대상 프로토콜의 헤더의 미리 지정된 필드의 내용이 상응하는 상기 도착 패킷의 상위 계층의 프로토콜 데이터 헤더의 필드의 내용과 일치 또는 일관성있게 일치하는 지를 판단하는 것이다. 또한, 상기 미리 지정된 필드는 모든 필드 또는 상기 대상 프로토콜을 식별할 수 있는 핵심적인 일부 필드이다.
본 발명의 바람직한 또 다른 실시예에서, 간략 비교를 수행하는 단계는 상기 관리 테이블에 기재된 상기 기본 정보 항목 상의 기본 정보와 상응하는 지를 판단하는 단계, 상기 판단 결과 상응하면, 상기 추출한 기본 정보와 상응하는 상기 관리 테이블에 기재된 카운터가 제2 양의 정수(M)보다 작은 지 여부를 판단하는 단계, 상기 판단 결과, 상기 카운터가 제2 양의 정수(M)보다 작다면, 상기 관리 테이블내의 프로토콜 항목에서 기재된 프로토콜로 분류하고, 카운터를 1 증가시키는 단계, 상기 판단 결과 상기 카운터가 상기 제2 양의 정수(M)보다 작지 않으면, 상기 카운터를 초기화하고 상기 상세 비교를 수행하는 단계, 상기 판단 결과 상응하지 않으면, 상기 관리 테이블내의 상기 기본 정보에 상응하는 모든 항목을 삭제하고, 초기 상세 비교를 수행하는 단계를 포함한다.
바람직한 또 다른 실시예에서, 상기 통계 자료는 상기 도착 패킷과 상기 도착 패킷의 분류된 프로토콜에 대하여 이전에 도착한 복수의 패킷들 중 상기 분류된 프로토콜에 속하는 복수의 패킷 또는 상기 도착패킷과 동일한 기본 정보를 갖는 복수의 이전 패킷으로부터 산출한 도착 패킷 수, 지연, 지연 변이, 손실 패킷 수, 손실율, 오류 패킷 수, 오류율, 전송율 중 적어도 하나이며, 상기 통계 자료는 송신측 IP 주소, 수신측 IP 주소, 송신측 포트 번호, 수신측 포트 번호 및 프로토콜 항목 중 적어도 하나와 연관되어 작성될 수 있다.
상술한 목적들을 달성하기 위하여 본 발명의 다른 측면에 따르면, 도착 패킷의 상위 계층-여기서, 상위 계층은 트랜스포트 계층의 상위 계층임-의 데이터 타입을 분류하는 데에 있어서, 상기 도착 패킷에서 기본 정보를 추출하고, 상기 추출된 기본 정보가 관리 테이블에 등록되었는 지를 판단하고, 상기 추출된 기본 정보가 상기 관리 테이블에 등록되지 않은 경우, 미리 설정된 복수의 대상 프로토콜 중 상기 도착 패킷의 상위 계층 프로토콜에 상응하는 대상 프로토콜에 상응하는 데이터 타입-여기서, 상기 데이터 타입은 프로토콜 및 부가 정보를 포함함-을 추출하고, 상기 기본 정보 및 추출한 데이터 타입을 상기 관리 테이블에 등록하고, 상기 추출된 기본 정보가 관리 테이블에 미리 등록되어 있는 경우, 상기 기본 정보에 상응하는 상기 관리 테이블을 갱신하는 상위 계층 데이터 타입 분류 방법, 상기 방법에 상응하는 장치 및 시스템을 제공할 수 있다.
이어서, 첨부한 도면들을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다.
다시 도 3을 참조하면, 인터넷을 통해 송수신되는 패킷의 데이터 구조가 나타나는데, IP 계층과 관련된 프로토콜들 (예를 들어, ICMP, IGMP, RIP, BGP등의 라우팅 프로토콜 등) 이나 트랜스포트 계층에서 어떤 프로토콜을 사용하는 지를 알려면 IP 계층 데이터그램 헤더(307)의 프로토콜 필드를 보고 판단할 수 있다. 상위 계층에서 어떤 프로토콜을 사용하는 지를 알려면 Well-known port인 경우에 한하여, 트랜스포트 계층 프로토콜 데이터 헤더(305)의 송신측 포트 필드 또는 수신측 포트 필드를 보고 판단할 수 있다.
여기서, 상위 계층 데이터(301)에 상위 계층 프로토콜 데이터 헤더가 붙은 것이 상위 계층 프로토콜 데이터, 상기 상위 계층 프로토콜 데이터에 트랜스포트 계층 프로토콜 데이터 헤더(305)가 붙은 것을 트랜스포트 계층 프로토콜 데이터 및 상기 트랜스포트 계층 프로토콜 데이터에 IP 계층 데이터그램 헤더(307)가 붙은 것을 IP 데이터그램이라 칭한다.
도 5는 본 발명의 바람직한 일 실시예에 따른 상위 계층 프로토콜 분류 과정들 및 상기 과정들 사이의 천이 관계를 나타낸 도면이다.
도 5를 참조하면, 상위 계층 프로토콜을 분류하기 위하여 학습전 과정(S1)(501)과 학습후 과정(S2)(503)을 행한다. 도 5는 도착한 패킷이 IP 계층과 과련된 프로토콜이나 Well-known port를 사용하는 상위 계층의 프로토콜들이 아닌 경우의 상위 계층 프로토콜들을 분류하는 경우에 적용된다. 학습전 단계(S1)에서는 본 발명의 바람직한 일 실시예에 따른 상위 프로토콜 분류(구분) 장치에 도착한 패킷에서 상위 계층 프로토콜 데이터 중 상위 계층 프로토콜 데이터 헤더(303)의 모든 필드의 내용이 비교를 위한 대상 상위 계층 프로토콜 헤더(이하, 대상 프로토콜이라 칭함)의 모든 필드의 내용과 일관성을 가지고 일치하는 지를 판단한다. 본 발명의 바람직한 다른 실시예에서는, 상위 계층 프로토콜 데이터 헤더(303)의 핵심적인 일부 필드의 내용이 대상 프로토콜의 상응하는 필드의 내용과 일관성을 가지고 일치하는 지를 판단할 수 있다. 각각에 대해서는 후술하기로 한다. 여기서, 상기 상위 프로토콜 분류(구분) 장치는 라우터와 같은 인터넷 접속 장치 내에 설치되거나 상기 인터넷 접속 장치에 결합되는 별도의 컴퓨터와 같은 장치 등이 될 수 있다. 또한, 대상 프로토콜은 미리 설정 및 저장되어 필요한 경우에 추출되어 사용될 수 있다. 그리고, 비교의 정확성을 유지하기 위해서, 도착 패킷에 상응하는 특정한 연결에 대해서, 일정한 회수(N번)로 연속하여 대상 프로토콜과의 비교가 성공한 경우 학습후 과정(S2)(503)으로 천이할 수 있다. 학습전 과정(S1)(501)에서의 비교 결과는 도 6을 참조하여 설명할 관리 테이블에 등록된다.
학습후 과정(S2)(503)은 학습전 과정(S1)(501)에서 등록한 송수신되는 패킷에 상응하는 특정한 연결에 대한 일정한 정보(특히, 기본 정보)만을 이용하여 관리 테이블에 등록된 프로토콜로 분류하는 과정이다. 분류의 정확성을 향상시키기 위해서, 학습후 과정(S2)(503)을 일정한 회수(M번)로 수행할 때마다 상기 학습전 과정에서와 같은 상세 비교를 수행할 수 있다. 각각에 대해서는 후술하기로 한다.
도 6은 본 발명의 바라직한 일 실시예에 따른 관리 테이블을 나타낸 도면이다.
도 6을 참조하면, 관리 테이블은 기본 정보(601), 상태(603), 카운터(605), 프로토콜(607), 부가 정보(609), 시간 정보(611) 등의 항목으로 구성된다. 인터넷 상에서 호스트와 호스트 사이의 통신 연결이 유지되는 동안에는 상기 연결에 상응하는 IP 어드레스, 사용되고 있는 트랜스포트 계층 프로토콜 및 트랜스포트 계층 프로토콜 데이터 헤더내의 송신측 및 수신측 포트 필드의 내용은 변하지 않는다. 관리 테이블은 이러한 특성을 이용한 것이다. 관리 테이블의 항목중 기본 정보(601)는 상위 프로토콜 분류(구분) 장치에 도착되는 패킷이 현재 관리 테이블내에서 관리중인 연결인 지의 여부를 판단하는데 사용된다. 상술한 바와 같이, 기본 정보(601)는 인터넷 연결이 유지되는 동안에 변하지 않는 정보들인, 송신측 및 수신측 IP 어드레스, 송신측 및 수신측 포트 번호 등이 사용될 수 있다.
관리 테이블상의 상태(603) 항목은 상술한 기본 정보(601)에 해당하는 연결이 어떠한 상태에 있는 지를 나타낸다. 구체적으로는 학습전 과정은 S1, 학습후 과정은 S2 등으로 나타낼 수 있다.
카운터(605) 항목은 상술한 상태(603) 항목에서의 해당하는 비교 과정의 성공 회수(k)를 나타낸다. 여기서, N은 해당 상태(603) 항목에 해당하는 비교 과정을 수행할 회수를 미리 설정한 값이다. 즉, 성공 회수(k)가 미리 설정한 회수(N) 이상이면 다음 과정으로 전이할 것이다.
프로토콜(607) 항목은 상술한 비교 과정을 통해 판단된 도착 패킷의 상위 계층 프로토콜이 등록되는 부분으로 예를 들어, RTP(Real-time Transfer Protocol) 등이 될 수 있다.
부가 정보(609) 항목은 상술한 해당 프로토콜에서 부가적으로 지정이 더 필요한 정보를 나타낸다. 이는 각 프로토콜에 따라서 필요할 수도 있고, 그렇지 않을 수도 있는 선택적인 사항이다. 예를 들어, 상위 계층의 프로토콜(607)이 RTP를 사용할 때, 이 프로토콜을 통하여 음성 트래픽이 전달되는지 또는 영상 트래픽이 전달되는 지는 RTP 헤더 정보에 포함(RTP 헤더중에 PTYPE 필드가 있는데, PTYPE 필드는 Payload Type으로서 RTP가 전송하는 데이터가 어떤 방식으로 만들어졌는 지를 나타내는데, (예를 들어, PT가 18인 경우에는 G.729라는 방식으로 음성 신호가 압축되었음을 나타냄) 부가 정보에는 이와 관련된 정보를 적어 놓음으로써 트래픽의 분류를 보다 세분화할 수 있다.
시간 정보(611) 항목은 해당하는 인터넷 응용이 관련된 정보를 새로이 작성할 필요가 있는 지의 여부를 판단하기 위해서 필요한 시간 정보가 포함된다.
인터넷 상에서 호스트와 호스트간의 통신 연결이 유지되면, 예를 들어 호스트a와 호스트b가 RTP를 사용한 패킷을 교환하고 있는 경우, 그 사이에, 기본 정보, 프로토콜은 변하지 않는다. 부가 정보가 필요한 프로토콜의 경우 상기 관리 테이블에 부가 정보가 함께 표시되며 부가 정보도 통신 연결이 유지되는 동안에는 변하지 않는다. 부가 정보가 필요한 경우에 프로토콜과 부가 정보를 합하여 데이터 타입 정보라 칭하기로 한다. 또한, 하나의 연결에 대한 기본 정보, 프로토콜, 부가 정보 등을 포함한 것을 트래픽 연결 정보라 칭한다.
다시 도 5를 참조하면, 학습전 과정(S1)(501)에서 N번의 연속 상세 비교 수행을 성공적으로 마치면 학습후 과정(S2)(503)으로 천이하고 학습후 과정(S2)(503)을 M번 수행한 후 상세 비교 상태(505)로 천이한다. 상세 비교 상태(505)에서 비교 과정을 성공적으로 수행하면 다시 학습후 과정(S2)(503)으로 천이하고, 실패하면 학습전 과정(S1)(501)으로 천이한다. 또한, 학습후 과정(S2)(503)에서 미리 설정된 시간을 초과하면 비교의 정확성을 유지하기 위해서 다시 학습전 과정(S1)(501)으로 천이한다.
도 7은 본 발명의 바람직한 일 실시예에 따른 상위 계층 프로토콜을 분류하는 과정을 나타낸 순서도이다.
도 7을 참조하면, 먼저 상위 프로토콜 분류(구분) 장치는 인터넷망을 통하여 패킷이 도착하면 이를 수신(단계 701)한 후, 해당 패킷의 IP 계층 데이터그램의 헤더중 송신측 및 수신측 IP 어드레스 및/또는 식별자 및/또는 트랜스포트 계층 프로토콜 데이터 헤더에서 송신측 및 수신측 포트 번호를 포함하는 기본 정보를 추출(단계 703)한다.
그 후, 상기 추출한 기본 정보를 이용하여, ICMP, IGMP, 라우팅 프로토콜 등 IP 계층과 관련하여 특별히 미리 지정한 프로토콜 또는 Well-known port를 사용하는 프로토콜인지를 판단(단계 705)한다. 단계 705에서의 판단 결과, IP 계층과 관련된 프로토콜 또는 Well-known port를 사용하는 경우이면 단계 707로 진행하고, 그렇지 않은 경우에는 단계 709로 진행한다.
단계 707에서는 기본 정보를 이용하여 분석한 결과, IP 계층과 관련된 프로토콜 또는 Well-known port를 사용하는 프로토콜인 경우에 도착 패킷이 분류되는 프로토콜은 상기 프로토콜들중의 하나에 해당하는 프로토콜로 분류할 수 있다.
단계 709에서는 추출된 기본 정보가 관리 테이블(도 6 참조)의 복수의 기본 정보 항목중에 포함되는 지 여부를 판단한다. 상기 판단 결과, 추출된 기본 정보가 관리 테이블내에 존재하면 단계 713으로 진행하고, 그렇지 않은 경우에는 단계 711로 진행한다. 단계 711에서는 초기 상세 비교를 수행하는데, 이에 대해서는 도 8을 참조하여 후술하기로 한다.
단계 713에서는 추출된 기본 정보가 관리 테이블내에 존재하는 경우에, 해당 패킷에 대한 학습전 상태인 지를 판단한다. 학습전 상태인 경우에는 단계 715로 진행하고, 그렇지 않은 경우에는 단계 717로 진행한다.
단계 715의 상세 비교 수행 과정은 도 9를 참조하여 상세히 설명하기로 하고, 단계 717의 간략 비교 수행 과정은 도 10을 참조하여 상세히 설명하기로 한다.
도 8은 본 발명의 바람직한 일 실시예에 따른 도착 패킷의 상위 계층 프로토콜의 초기 상세 비교를 위한 과정을 나타낸 순서도이다.
도 8을 참조하면, 상위 프로토콜 분류(구분) 장치는 단계 711(도 7 참조) 이후에, 도착 패킷의 상위 계층 프로토콜을 비교하기 위한 미리 설정된 대상 프로토콜을 추출(단계 801)한다. 대상 프로토콜과 상기 대상 프로토콜을 구분하는데 필요한 필드들에 대한 정보들은 미리 설정되어 저장되는 것이 바람직하며, 인터넷망에 송수신되는 패킷의 상위 계층 프로토콜을 모니터링하기 위하여 되도록 다양하게 설정되는 것이 바람직하다.
단계 803에서는 도착 패킷의 상위 계층 프로토콜 데이터 헤더와 대상 프로토콜 헤더의 일치 여부를 판단한다. 상기 판단 결과, 도착 패킷의 상위 계층 프로토콜 데이터 헤더와 대상 프로토콜 헤더가 일치하면 단계 805로 진행하고, 그렇지 않으면 단계 811로 진행한다. 일치 여부의 판단은 프로토콜의 종류에 따라서 다양하게 설정될 수 있다. 예를 들어, 도착 패킷의 상위 계층의 프로토콜 중 대상 프로토콜과 비교할 때 모든 필드의 내용을 비교할 수 있다. 바람직하게는 프로토콜의 종류에 따라서, 비교 과정의 로드를 줄이기 위해서 해당 프로토콜로 판단하기 위한 핵심적인 일부 필드의 내용만을 비교할 수 있다. 따라서, 상위 프로토콜 분류(구분) 장치를 이용하는 사용자에게 모든 필드의 내용을 비교할 수 있게 하거나 핵심적인 일부 필드의 내용만으로 비교할 수 있도록 상기 상위 프로토콜 분류(구분) 장치를 구성할 수 있다. 바람직하게는 프로토콜 종류별로 미리 상위 프로토콜 분류(구분) 장치를 설정하여 제공할 수 있다. 또한, 일치의 의미를 살펴보면, 비교 필드의 모든 내용이 일치인 경우도 있을 수 있겠지만, 프로토콜의 종류에 따라서 각 필드의 내용이 서로 연관성을 가지는 경우에 이런 연관성까지 체크를 하는 경우도 있을 수 있는 데, 이를 일관성있는 일치라고 칭하기로 한다. 예를 들어, RTP 헤더에는 VER, P, X, CC, M, PTYPE, SEQUENCE NUM, TIME STAMP, SS1, CS1, 데이터 등의 필드로 구성되어 있다. 이 경우에, VER 필드는 RTP의 버전을 나타내는데, 현재는 2를 사용하며, 만약 이 VER 필드의 내용이 2보다 크면 RTP가 아닌 것으로 판단할 수 있다. 또한, PTYPE은 Payload Type으로서 RTP로서 송수신되는 데이터가 어떤 방식으로 만들어졌는 지를 나타내며, PT-8인 경우에 G.729라는 방식으로 음성 신호가 압축되었음을 나타내는데, 이 경우에 데이터 필드의 길이는 10 바이트가 되어야 한다. 그리고, SEQUENCE NUM은 손실이 없는 경우에 이전에 도착한 RTP 패킷과 1씩 차이가 나도록 되어있다. 예를 들어 설명한 바와 같이, 일부 프로토콜의 경우에 일치 여부를 판단할 때, 단순히 필드 내용의 일치뿐만 아니라 각 필드의 연관성까지 판단하는 일관성있는 일치 여부를 판단할 필요성이 있다.
단계 805에서는 일치된 비교 대상의 프로토콜로 분류하고 이를 관리 테이블에 등록한다. 이때, 카운터(k) 항목은 1로 초기화하며, 상태 항목을 학습후 과정으로 지정하고 시간 정보를 등록한다.
단계 807에서는 부가 정보가 필요한 프로토콜인 지를 판단한다. 부가 정보가 필요한 프로토콜에 대한 설명은 상술한 바와 같으므로 그 설명을 생략하기로 한다. 단계 807의 판단 결과, 부가 정보가 요구되는 프로토콜인 경우에는 단계 809로 진행하고, 그렇지 않으면 과정을 종료한다.
단계 809에서는 필요한 또는 미리 설정된 부가 정보를 추출하여 관리 테이블에 등록한다.
단계 803의 판단 결과, 도착 패킷의 상위 계층 프로토콜 데이터 헤더와 대상 프로토콜 헤더의 내용이 일치하지 않으면, 다른 대상 프로토콜이 존재하는 지를 판단(단계 811)한다. 즉, 단계 811은 도착 패킷의 상위 계층 프로토콜 데이터 헤더의 내용과 일치하는 경우의 대상 프로토콜을 순차적으로 찾아내는 등의 다양한 방식으로 검색하는 과정이 될 수 있다. 상기 단계 811의 판단 결과, 다른 대상 프로토콜이 존재하면 단계 801로 되돌아가고, 그렇지 않으면 즉, 모든 분류 대상 프로토콜과 일치하는 패턴이 없는 경우에는 Unknown 프로토콜로 분류(단계 813)한 후 과정을 종료한다.
도 9는 본 발명의 바람직한 일 실시예에 따른 도착 패킷의 상위 계층 프로토콜의 일반 상세 비교를 위한 과정을 나타낸 순서도이다.
도 9를 참조하면, 상위 프로토콜 분류(구분) 장치는 단계 715(도 7 참조)에 따라서, 관리 테이블내의 프로토콜 항목상의 프로토콜을 대상 프로토콜로 지정(단계 901)한다. 단계 903에서, 도착 패킷의 상위 계층 프로토콜 데이터 헤더와 대상 프로토콜 헤더가 분류를 위한 핵심적인 일부 또는 모든 필드에 대해서 일치 또는 일관성있게 일치하는 지의 여부를 상세히 비교한다. 각각에 대한 설명은 상술한 바와 같으므로 그 설명을 생략하기로 한다.
단계 903의 판단 결과, 도착 패킷의 상위 계층 프로토콜 데이터 헤더와 대상 프로토콜 헤더가 일치하는 경우에는 단계 907로 진행하고, 그렇지 않으면 관리 테이블에서 기본 정보에 상응하는 전체 항목을 삭제(905)한 후 다시 단계 711(도 7 참조)로 진행한다.
단계 907에서는 관리 테이블내의 프로토콜 항목에 지정된 프로토콜로 분류하고 카운터(k)의 값을 1 증가시키며, 갱신된 카운터(k)가 미리 지정된 N값보다 작으면 단계를 종료하고, 그렇지 않으면 상태 항목을 학습후 상태로 그리고 카운터 항목의 카운터(k)를 1로 초기화하는 갱신 과정(단계 911)을 수행한 후 과정을 종료한다.
도 10은 본 발명의 바람직한 일 실시예에 따른 도착 패킷의 상위 계층 프로토콜의 간략 비교를 위한 과정을 나타낸 순서도이다.
도 10을 참조하면, 상위 프로토콜 분류(구분) 장치는 단계 717(도 7 참조)에 따라서, 카운터(k)가 미리 설정된 M값보다 작은 지의 여부를 판단(단계 1001)하여, 작은 경우에는 카운터(k)를 1 증가시키는 갱신 과정을 수행(단계 1005)하고, 그렇지 않은 경우에는 카운터(k)를 0으로 갱신(단계 1003)한 후, 도 9의 단계 901과 동일한 단계 1009와 도 9의 단계 903과 동일한 단계 1011을 수행한다. 단계 1011의 판단 결과 일치하지 않으면 도 9의 단계 905와 동일한 단계를 수행한후 단계 711(도 7 참조)로 진행하며, 단계 1011의 판단 결과 일치하면, 단계 1005를 수행한다.
단계 1007에서는 도착 패킷을 분석하여 기본 항목이 관리 테이블내의 프로토콜 항목에서 지정된 프로토콜과 일치하면 해당 프로토콜로 분류한다. 그 후의 과정은 종료된다.
본 발명의 바람직한 일 실시예에서, 상기 상위 프로토콜 분류 방법은 인터넷 전화 서비스 응용에 적용될 수 있다. 즉, 인터넷 전화 서비스 사업자가 서비스 품질을 향상시키기 위해서 인터넷 상에서 인터넷 전화에 대한 음성 트래픽의 특정 인터넷 세그먼트에서의 인터넷망 자원 이용 현황과 지연, 지연 변이와 같은 전송 품질을 알아낼 수 있다. 인터넷 전화를 위한 음성 트래픽의 송수신을 위해서, 상위 계층에서 RTP와 RTCP를 사용하는데, 이들은 Well-known port로 지정되지 않는다. 그러나, 본 발명에 따른 상위 프로토콜 분류 방법에 따라서, 비교 대상인 상위 계층 프로토콜로 RTP와 RTCP를 지정하고, 부가 정보항목에서 인터넷 전화에서 사용하는 항목 값들을 갖는 패킷들에 대하여 통계 정보를 추출하거나, RTP를 사용하지 않고 다른 상위 계층 프로토콜을 사용하는 인터넷 전화 응용들은 상기 사용하는 프로토콜을 구분하기 위한 정보들을 지정하고 도착 패킷들을 이와 비교하여 인터넷 전화 사용 프로토콜을 구분하여 통계 정보를 추출함으로써 이들에 대한 트래픽의 특성을 알 수가 있다.
도 11은 인터넷 전화용 트래픽과 비인터넷 전화용 트래픽의 분류 방법을 나타내는 도면이다.
단계 1101은 도 7의 과정을 통하여 구분된 상위 계층 프로토콜의 정보 항목을 가져오는 단계이고, 단계 1103은 분류된 프로토콜이 인터넷 전화용 패킷을 전달하는 프로토콜 항목에 해당하는 지를 판단하는 단계이다. 상기의 판단 결과 인터넷 전화용 패킷을 전달하는 프로토콜에 해당하면 인터넷 전화용 트래픽과 관련된 통계 정보들을 산출하고 적절한 형태로 저장하는 과정(단계 1105)을 수행하고, 상기의 판단 결과 인터넷 전화용 패킷을 전달하는 프로토콜에 해당하지 않으면, 비인터넷 전화용 트래픽과 관련된 통계 정보들을 산출하고 적절한 형태로 저장하는 과정(단계 1107)을 수행한다. 단계 1105와 단계 1107에서 산출되고 저장되는 정보들은 특별한 형태를 가질 수도 있고, 추가로 정의된 MIB의 형태를 가질 수도 있다.
도 12는 도 11의 과정을 통하여 산출된 통계 정보를 표현하는 한 일 예를 도시하고 있다.
도 12는 통계 정보를 그래프로 형상화하여 나타내는 예를 보여주며, 가로축은 시간 또는 다른 항목이 가능하며, 세로축은 가로축의 항목에 대하여 산출된 통계 정보 항목의 값을 나타내게 된다. 도 12는 특별한 예로서 시간에 따라 인터넷 전화용 트래픽과 비인터넷 전화용 트래픽의 특성인 지연, 망자원 점유율, 지연변이, 도착 패킷수, 손실 패킷수, 오류 패킷수, 전송율, 손실률 등을 보여준다. 통계 정보를 표현하는 방법은 도 12에서와 같은 형상화된 정보이외에 텍스트 형식으로 표현하는 것도 가능하다. 도 12에서 전체 트래픽으로 나타낸 것이 종래의 방법을 통하여 구할 수 있는 유일한 표현 형식이고, 본 발명을 통하여 이들을 인터넷 전화 트래픽과 비 인터넷 전화 트래픽과 같이 다양한 응용별로 트래픽의 형태를 구분하여 표현할 수 있다.
상위 프로토콜 분류(구분) 장치는 상술한 바와 같이, 라우터 등과 같은 인터넷 접속 장치에 상관없이 상위 프로토콜 분류 소프트웨어를 포함하여 Standalone 형태로 존재할 수 있을 뿐만 아니라, 상기 라우터 등과 같은 인터넷 접속 장치에 내장될 수 있다. 다만, 내장형인 경우에는 라우터 등과 같은 인터넷 접속 장치 고유의 역할을 방해하는 결과를 초래할 수도 있을 것이다. 상기 상위 프로토콜 분류(구분) 장치에서는 상술한 분류 방법에 따른 통계 결과를 이용하여 인터넷망을 통해 송수신되는 프로토콜의 종류 및 각 종류별로 차지하는 비율 등을 알 수 있으며, 이를 이용하여 망관리 시스템에서는 특정한 프로토콜에 대해서 우회 선로를 개설하여 송수신되도록 하는 등의 일정한 망관리를 할 수 있다. 구체적으로 설명하면, 본 발명에 따른 상위 프로토콜 분류 장치는 RMON(Remote Monitoring)을 수행하는 장치와 연동하여 사용할 수 있다. RMON은 트래픽을 수집, 분석하는 방식으로서 분석된 자료는 정의된 MIB(Management Information Base)에 따라 산출되어 저장된다. 종래의 RMON MIB에, 본 발명에 따른 상위 계층의 프로토콜을 구분하여, 예를 들어, 음성, 비디오 등과 같이 서비스별로 구분되는 통계 자료에 대한 항목을 추가로 정의하는 것이 가능하다. 이러한 모니터링을 통해 수집한 통계 자료는 상위 프로토콜 분류 장치내의 데이터베이스에 저장된다. 그 후, 망관리 시스템(NMS: Network Management System)에서 일정한 시간(예를 들어, 3분) 간격에 상기 상위 계층 프로토콜 분류 장치에 통계 자료를 요청하면, 상기 상위 계층 프로토콜 분류 장치는 해당하는 통계 자료를 망관리 시스템(NMS)으로 전송한다. 요청 항목은 특정 항목을 지정할 수도 있고, 모든 항목을 지정할 수도 있다. 통계 자료의 송수신 프로토콜로는 SNMP(Simple Network Management Protocol)이나 RMON 혹은 NMS 고유의 프로토콜을 사용할 수가 있다. 망관리 시스템(NMS)은 수신한 통계 자료를 기초로 일정한 망관리를 수행한다.
본 발명은 상기 실시예에 한정되지 않으며, 많은 변형이 본 발명의 사상 내에서 당 분야에서 통상의 지식을 가진 자에 의하여 가능함은 물론이다.
본 발명에 의하면, 인터넷 응용들과 직접 관련이 있는 상위 계층의 프로토콜들을 구분해 내어, 전통적인 텍스트 데이터 교환용 응용 이외에 최근 보편화되고 있는 인터넷 전화나 네트워크 게임과 같은 다양한 상위 계층 응용들에 대한 트래픽의 특성을 분석할 수 있는 상위 계층 프로토콜 분류 방법 및 장치를 제공할 수 있다.
본 발명에 의하면, 프로토콜이 분류된 멀티미디어 응용 등이 인터넷망 자원을 어느 정도 사용하는 지와 어떤 통계적인 특징을 갖고 있는지에 대한 기본 자료를 제공하여 효율적인 인터넷망 관리나 트래픽 관리가 가능한 상위 계층 프로토콜 분류 방법 및 장치를 제공할 수 있다.
본 발명에 의하면, 인터넷 전화, 인터넷 방송과 같이 특별한 품질이 요구되는 서비스들의 특성과 전송 품질을 분리하여 추출하여 이들 서비스의 품질을 향상시킬 수 있는 방안을 제공할 수 있는 상위 계층 프로토콜 분류 방법 및 장치를 제공할 수 있다.
본 발명에 의하면, 인터넷 연결이 유지되는 동안에는 기본 정보가 유지되는 상태를 이용하여, 상위 계층 프로토콜의 분류에 있어서 많은 시간과 계산량이 요구되는 상세 비교는 학습전 과정에서만 수행하여 이후의 학습후 과정에서는 단순하게 기본 정보만으로 상위 계층 프로토콜을 분류하는 간략 비교를 통해, 상위 계층의 프로토콜 분류의 정확도를 높임과 동시에 분류 속도를 높일 수 있는 상위 계층 프로토콜 분류 방법 및 장치를 제공할 수 있다.
도 1은 인터넷에서 사용되는 TCP/IP 계층 모델과 각 계층에서 사용되는 대표 프로토콜들을 나타낸 도면.
도 2는 사용자의 데이터가 인터넷을 통하여 전송되기 위하여 TCP/IP 계층에 따라 인캡슐레이션되는 과정을 보여주는 예시 도면.
도 3은 인터넷에서 데이터 전송의 기본이 되는 IP 데이터그램의 일반적인 구조를 나타낸 도면.
도 4는 대표적인 Well-known port의 예시들을 나타낸 도면.
도 5는 본 발명의 바람직한 일 실시예에 따른 상위 계층 프로토콜 분류 과정들 및 상기 과정들 사이의 천이 관계를 나타낸 도면.
도 6은 본 발명의 바라직한 일 실시예에 따른 관리 테이블을 나타낸 도면.
도 7은 본 발명의 바람직한 일 실시예에 따른 상위 계층 프로토콜을 분류하는 과정을 나타낸 순서도.
도 8은 본 발명의 바람직한 일 실시예에 따른 도착 패킷의 상위 계층 프로토콜의 초기 비교를 위한 과정을 나타낸 순서도.
도 9는 본 발명의 바람직한 일 실시예에 따른 도착 패킷의 상위 계층 프로토콜의 상세 비교를 위한 과정을 나타낸 순서도.
도 10은 본 발명의 바람직한 일 실시예에 따른 도착 패킷의 상위 계층 프로토콜의 간략 비교를 위한 과정을 나타낸 순서도.
도 11은 본 발명의 상위 계층 분류 방법을 활용하여 인터넷 전화 트래픽과 비 인터넷 전화 트래픽을 분리하여 통계 특성을 추출하는 과정을 나타낸 순서도.
도 12는 도 11의 과정을 통하여 구한 통계 특성을 형상화하여 표현한 예시도.
<도면의 주요 부분에 대한 부호의 설명>
301…상위 계층 데이터 303…상위 계층 프로토콜 데이터 헤더
305…트랜스포트 계층 프로토콜 데이터 헤더
307…IP 계층 데이터그램 헤더 501…학습전 과정
503…학습후 과정 505…상세 비교 상태
601…기본 정보 항목 603…상태 항목
605…카운터 항목 607…프로토콜 항목
609…부가 정보 항목 611…시간 정보 항목

Claims (43)

  1. 도착 패킷의 상위 계층 프로토콜을 분류하는 방법에 있어서-여기서, 상위 계층은 인터넷 프로토콜 구조상 트랜스포트 계층의 상위에 위치한 응용 계층임-,
    (a) 실시간 스트리밍 응용을 위한 프로토콜을 사용한 도착 패킷으로부터 기본 정보를 추출하는 단계-여기서, 상기 기본 정보는 상기 도착 패킷의 IP 계층 데이터그램 헤더(header)내의 송신측 IP 어드레스, 수신측 IP 어드레스, 식별자 중 적어도 어느 하나를 포함하는 IP 계층 정보와 트랜스포트 계층 프로토콜 데이터 헤더 내의 송신측 포트 번호, 수신측 포트 번호 중 적어도 어느 하나를 포함하는 트랜스포트 계층 정보 중 적어도 어느 하나를 포함하는 정보임-;
    (b) 상기 기본 정보를 이용하여, 상기 도착 패킷의 프로토콜이 상기 도착 패킷의 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜인지를 판단하는 단계;
    (c) 상기 도착 패킷의 프로토콜이 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜인 경우, 상기 지정된 프로토콜 또는 상기 well-known port에 상응하는 프로토콜을 상기 도착 패킷의 상위 계층 프로토콜로 분류하는 단계;
    (d) 상기 도착 패킷의 프로토콜이 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜이 아닌 경우, 상기 추출된 기본 정보가 관리 테이블에 등록되었는지를 판단하는 단계;
    (e) 상기 추출된 기본 정보가 상기 관리 테이블에 등록되어 있지 않은 경우, 미리 설정된 복수의 대상 프로토콜의 상위 계층 프로토콜 헤더를 추출하는 단계-여기서, 상기 복수의 대상 프로토콜은 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 비교되는 필드들이 미리 설정되어 저장됨-;
    (f) 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 상기 복수의 대상 프로토콜의 상위 계층 프로토콜 헤더 데이터를 미리 설정된 제1 회수 이상 비교하는 단계;
    (g) 상기 미리 설정된 제1 회수 동안 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 일치하는 대상 프로토콜이 존재하는 경우, 상기 대상 프로토콜을 상기 도착 패킷의 상위 계층 프로토콜로, 상기 기본 정보를 상기 대상 프로토콜의 기본 정보로 하여 상기 관리 테이블에 등록하는 단계; 및
    (h) 상기 추출된 기본 정보가 상기 관리 테이블에 등록되어 있는 경우, 상기 관리 테이블로부터 상기 기본 정보에 상응하는 상기 대상 프로토콜을 추출하여 상기 도착 패킷의 상위 계층 프로토콜로 분류하는 단계를 포함하는 것
    을 특징으로 하는 상위 계층 프로토콜 분류 방법.
  2. 제1항에 있어서,
    상기 도착 패킷이 복수인 경우, 상기 단계(a) 내지 단계 (h)를 통해 상위 계층 프로토콜별로 분류된 통계 자료는 망관리 시스템에서 망관리를 수행하기 위해 이용되는 것
    을 특징으로 하는 상위 계층 프로토콜 분류 방법.
  3. 제2항에 있어서,
    상기 상위 계층 프로토콜별 통계 자료에 대한 MIB(Management Information Base)가 추가로 정의되거나 상기 상위 계층 프로토콜별 통계 자료가 미리 정해진 고유의 형식으로 구성되는 것
    을 특징으로 하는 상위 계층 프로토콜 분류 방법.
  4. 제1항에 있어서,
    상기 상위 계층 프로토콜은 RTP, RTCP 및 사업자별 비표준 실시간 멀티미디어 스트리밍을 위한 프로토콜 중 적어도 어느 하나이며, 인터넷 전화용 트래픽과 비인터넷 전화용 트래픽의 통계 자료를 분류하기 위해서 이용되는 것
    을 특징으로 하는 상위 계층 프로토콜 분류 방법.
  5. 제4항에 있어서,
    상기 인터넷 전화용 트래픽과 비인터넷 전화용 트래픽의 통계 자료가 시간별, 프로토콜별, 송신측 IP 주소별, 수신측 IP 주소별 및 송신측 IP 주소, 수신측 IP 주소쌍 중 적어도 하나에 대해서 표현되는 것
    을 특징으로 하는 상위 계층 프로토콜 분류 방법.
  6. 제5항에 있어서,
    상기 인터넷 전화용 트래픽과 비인터넷 전화용 트래픽의 통계 자료는 그래픽 기반, 텍스트 기반 중 적어도 하나로 표현되는 것
    을 특징으로 하는 상위 계층 프로토콜 분류 방법.
  7. 삭제
  8. 삭제
  9. 삭제
  10. 제1항에 있어서,
    상기 관리 테이블은
    적어도 기본 정보가 기록되는 기본 정보 항목, 프로토콜이 기록되는 프로토콜 항목, 부가 정보가 기록되는 부가 정보 항목, 시간 정보가 기록되는 시간 정보항목, 분류 상태를 기재하는 상태 항목, 상기 상태 항목에 상응하는 카운터 항목-여기서, 상기 상태는 적어도 학습전 과정 또는 학습후 과정을 포함함-
    을 포함하는 것을 특징으로 하는 상위 계층 프로토콜 분류 방법.
  11. 제1항 또는 제10항에 있어서,
    상기 대상 프로토콜이 부가 정보를 요구하는 프로토콜인 경우, 부가 정보를 추출하여 상기 관리 테이블에 등록하는 단계
    가 더 포함되는 것을 특징으로 하는 상위 계층 프로토콜 분류 방법.
  12. 제1항에 있어서,
    상기 단계 (h)는
    상위 계층 프로토콜 분류의 정확도를 검증하기 위해 미리 설정된 제2 회수마다 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 상기 복수의 대상 프로토콜의 상위 계층 프로토콜 헤더 데이터를 비교하는 단계를 후행하는 것
    을 특징으로 하는 상위 계층 프로토콜 분류 방법.
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 제2항 또는 제4항에 있어서,
    상기 통계 자료는
    상기 도착 패킷과 상기 도착 패킷의 분류된 프로토콜에 대하여 이전에 도착한 복수의 패킷들 중 상기 분류된 프로토콜에 속하는 복수의 패킷 또는 상기 도착패킷과 동일한 기본 정보를 갖는 복수의 이전 패킷으로부터 산출한 도착 패킷 수, 지연, 지연 변이, 손실 패킷 수, 손실률, 오류 패킷 수, 오류율, 전송률 중 적어도 하나인 것
    을 특징으로 하는 상위 계층 프로토콜 분류 방법.
  20. 제19항에 있어서,
    상기 통계 자료는
    송신측 IP 주소, 수신측 IP 주소, 송신측 포트 번호, 수신측 포트 번호 및 프로토콜 항목 중 적어도 하나와 연관되어 작성되는 것
    을 특징으로 하는 상위 계층 프로토콜 분류 방법.
  21. 도착 패킷의 상위 계층 데이터 타입을 분류하는 방법에 있어서-여기서, 상위 계층은 인터넷 프로토콜 구조상 트랜스포트 계층의 상위에 위치한 응용 계층임-,
    (a) 실시간 스트리밍 응용을 위한 프로토콜을 사용한 도착 패킷으로부터 기본 정보를 추출하는 단계-여기서, 상기 기본 정보는 상기 도착 패킷의 IP 계층 데이터그램 헤더(header)내의 송신측 IP 어드레스, 수신측 IP 어드레스, 식별자 중 적어도 어느 하나를 포함하는 IP 계층 정보와 트랜스포트 계층 프로토콜 데이터 헤더 내의 송신측 포트 번호, 수신측 포트 번호 중 적어도 어느 하나를 포함하는 트랜스포트 계층 정보 중 적어도 어느 하나를 포함하는 정보임-;
    (b) 상기 기본 정보를 이용하여, 상기 도착 패킷의 프로토콜이 상기 도착 패킷의 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜인지를 판단하는 단계;
    (c) 상기 도착 패킷의 프로토콜이 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜인 경우, 상기 지정된 프로토콜 또는 상기 well-known port에 상응하는 프로토콜에 상응하는 상위 계층 데이터 타입으로 분류하는 단계;
    (d) 상기 도착 패킷의 프로토콜이 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜이 아닌 경우, 상기 추출된 기본 정보가 관리 테이블에 등록되었는지를 판단하는 단계;
    (e) 상기 추출된 기본 정보가 상기 관리 테이블에 등록되어 있지 않은 경우, 미리 설정된 복수의 대상 프로토콜의 상위 계층 프로토콜 헤더를 추출하는 단계-여기서, 상기 복수의 대상 프로토콜은 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 비교되는 필드들이 미리 설정되어 저장됨-;
    (f) 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 상기 복수의 대상 프로토콜의 상위 계층 프로토콜 헤더 데이터를 미리 설정된 제1 회수 이상 비교하는 단계;
    (g) 상기 미리 설정된 제1 회수 동안 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 일치하는 대상 프로토콜이 존재하는 경우, 상기 대상 프로토콜의 상위 계층 데이터 타입을 추출하여 상기 상위 계층 데이터 타입을 상기 도착 패킷의 상위 계층 데이터 타입으로, 상기 기본 정보를 상기 상위 계층 데이터 타입의 기본 정보로 하여 상기 관리 테이블에 등록하는 단계-여기서, 상기 상위 계층 데이터 타입은 프로토콜 및 부가 정보를 포함함-; 및
    (h) 상기 추출된 기본 정보가 상기 관리 테이블에 등록되어 있는 경우, 상기 관리 테이블로부터 상기 기본 정보에 상응하는 상기 데이터 타입을 추출하여 상기 도착 패킷의 상위 계층 데이터 타입으로 분류하는 단계를 포함하는 것
    을 특징으로 하는 상위 계층 데이터 타입 분류 방법.
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
  38. 삭제
  39. 삭제
  40. 도착 패킷의 상위 계층 프로토콜을 분류하는 장치에 있어서-여기서, 상위 계층은 인터넷 프로토콜 구조상 트랜스포트 계층의 상위에 위치한 응용 계층임-,
    실시간 스트리밍 응용을 위한 프로토콜을 사용한 도착 패킷으로부터 기본 정보를 추출하고, 상기 추출된 기본 정보가 관리 테이블에 등록되어 있지 않은 경우, 미리 설정된 복수의 대상 프로토콜의 상위 계층 프로토콜 헤더를 추출하는 수단-여기서, 상기 기본 정보는 상기 도착 패킷의 IP 계층 데이터그램 헤더(header)내의 송신측 IP 어드레스, 수신측 IP 어드레스, 식별자 중 적어도 어느 하나를 포함하는 IP 계층 정보와 트랜스포트 계층 프로토콜 데이터 헤더 내의 송신측 포트 번호, 수신측 포트 번호 중 적어도 어느 하나를 포함하는 트랜스포트 계층 정보 중 적어도 어느 하나를 포함하는 정보이고, 상기 복수의 대상 프로토콜은 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 비교되는 필드들이 미리 설정되어 저장됨-;
    상기 기본 정보를 이용하여, 상기 도착 패킷의 프로토콜이 상기 도착 패킷의 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜인지를 판단하고, 상기 도착 패킷의 프로토콜이 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜이 아닌 경우, 상기 추출된 기본 정보가 상기 관리 테이블에 등록되었는지를 판단하는 수단;
    상기 도착 패킷의 프로토콜이 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜인 경우, 상기 지정된 프로토콜 또는 상기 well-known port에 상응하는 프로토콜을 상기 도착 패킷의 상위 계층 프로토콜로 분류하고, 상기 추출된 기본 정보가 상기 관리 테이블에 등록되어 있는 경우 상기 관리 테이블로부터 상기 기본 정보에 상응하는 상기 대상 프로토콜을 추출하여 상기 도착 패킷의 상위 계층 프로토콜로 분류하는 수단;
    상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 상기 복수의 대상 프로토콜의 상위 계층 프로토콜 헤더 데이터를 미리 설정된 제1 회수 이상 비교하는 수단; 및
    상기 미리 설정된 제1 회수 동안 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 일치하는 대상 프로토콜이 존재하는 경우, 상기 대상 프로토콜을 상기 도착 패킷의 상위 계층 프로토콜로, 상기 기본 정보를 상기 대상 프로토콜의 기본 정보로 하여 상기 관리 테이블에 등록하는 수단
    을 구비하는 것을 특징으로 하는 상위 계층 프로토콜 분류 장치.
  41. 도착 패킷의 상위 계층 프로토콜을 분류하는 장치에 있어서-여기서, 상위 계층은 인터넷 프로토콜 구조상 트랜스포트 계층의 상위에 위치한 응용 계층임-,
    실시간 스트리밍 응용을 위한 프로토콜을 사용한 도착 패킷으로부터 기본 정보를 추출하고, 상기 추출된 기본 정보가 관리 테이블에 등록되어 있지 않은 경우, 미리 설정된 복수의 대상 프로토콜의 상위 계층 프로토콜 헤더를 추출하는 수단-여기서, 상기 기본 정보는 상기 도착 패킷의 IP 계층 데이터그램 헤더(header)내의 송신측 IP 어드레스, 수신측 IP 어드레스, 식별자 중 적어도 어느 하나를 포함하는 IP 계층 정보와 트랜스포트 계층 프로토콜 데이터 헤더 내의 송신측 포트 번호, 수신측 포트 번호 중 적어도 어느 하나를 포함하는 트랜스포트 계층 정보 중 적어도 어느 하나를 포함하는 정보이고, 상기 복수의 대상 프로토콜은 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 비교되는 필드들이 미리 설정되어 저장됨-;
    상기 기본 정보를 이용하여, 상기 도착 패킷의 프로토콜이 상기 도착 패킷의 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜인지를 판단하고, 상기 도착 패킷의 프로토콜이 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜이 아닌 경우, 상기 추출된 기본 정보가 상기 관리 테이블에 등록되었는지를 판단하는 수단;
    상기 도착 패킷의 프로토콜이 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜인 경우, 상기 지정된 프로토콜 또는 상기 well-known port에 상응하는 프로토콜에 상응하는 상위 계층 데이터 타입으로 분류하고, 상기 추출된 기본 정보가 상기 관리 테이블에 등록되어 있는 경우 상기 관리 테이블로부터 상기 기본 정보에 상응하는 상기 데이터 타입을 추출하여 상기 도착 패킷의 상위 계층 데이터 타입으로 분류하는 수단;
    상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 상기 복수의 대상 프로토콜의 상위 계층 프로토콜 헤더 데이터를 미리 설정된 제1 회수 이상 비교하는 수단; 및
    상기 미리 설정된 제1 회수 동안 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 일치하는 대상 프로토콜이 존재하는 경우, 상기 대상 프로토콜의 상위 계층 데이터 타입을 추출하여 상기 상위 계층 데이터 타입을 상기 도착 패킷의 상위 계층 데이터 타입으로, 상기 기본 정보를 상기 상위 계층 데이터 타입의 기본 정보로 하여 상기 관리 테이블에 등록하는 수단-여기서, 상기 상위 계층 데이터 타입은 프로토콜 및 부가 정보를 포함함-
    을 구비하는 것을 특징으로 하는 상위 계층 프로토콜 분류 장치.
  42. 컴퓨터에 의해 판독가능한 프로그램을 저장하고 있는 기록매체로서,
    (a) 실시간 스트리밍 응용을 위한 프로토콜을 사용한 도착 패킷으로부터 기본 정보를 추출하는 단계-여기서, 상기 기본 정보는 상기 도착 패킷의 IP 계층 데이터그램 헤더(header)내의 송신측 IP 어드레스, 수신측 IP 어드레스, 식별자 중 적어도 어느 하나를 포함하는 IP 계층 정보와 트랜스포트 계층 프로토콜 데이터 헤더 내의 송신측 포트 번호, 수신측 포트 번호 중 적어도 어느 하나를 포함하는 트랜스포트 계층 정보 중 적어도 어느 하나를 포함하는 정보임-;
    (b) 상기 기본 정보를 이용하여, 상기 도착 패킷의 프로토콜이 상기 도착 패킷의 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜인지를 판단하는 단계;
    (c) 상기 도착 패킷의 프로토콜이 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜인 경우, 상기 지정된 프로토콜 또는 상기 well-known port에 상응하는 프로토콜을 상기 도착 패킷의 상위 계층 프로토콜로 분류하는 단계;
    (d) 상기 도착 패킷의 프로토콜이 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜이 아닌 경우, 상기 추출된 기본 정보가 관리 테이블에 등록되었는지를 판단하는 단계;
    (e) 상기 추출된 기본 정보가 상기 관리 테이블에 등록되어 있지 않은 경우, 미리 설정된 복수의 대상 프로토콜의 상위 계층 프로토콜 헤더를 추출하는 단계-여기서, 상기 복수의 대상 프로토콜은 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 비교되는 필드들이 미리 설정되어 저장됨-;
    (f) 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 상기 복수의 대상 프로토콜의 상위 계층 프로토콜 헤더 데이터를 미리 설정된 제1 회수 이상 비교하는 단계;
    (g) 상기 미리 설정된 제1 회수 동안 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 일치하는 대상 프로토콜이 존재하는 경우, 상기 대상 프로토콜을 상기 도착 패킷의 상위 계층 프로토콜로, 상기 기본 정보를 상기 대상 프로토콜의 기본 정보로 하여 상기 관리 테이블에 등록하는 단계; 및
    (h) 상기 추출된 기본 정보가 상기 관리 테이블에 등록되어 있는 경우, 상기 관리 테이블로부터 상기 기본 정보에 상응하는 상기 대상 프로토콜을 추출하여 상기 도착 패킷의 상위 계층 프로토콜로 분류하는 단계를 실행시키기 위한 프로그램을 기록한 기록매체.
  43. 컴퓨터에 의해 판독가능한 프로그램을 저장하고 있는 기록매체로서,
    (a) 실시간 스트리밍 응용을 위한 프로토콜을 사용한 도착 패킷으로부터 기본 정보를 추출하는 단계-여기서, 상기 기본 정보는 상기 도착 패킷의 IP 계층 데이터그램 헤더(header)내의 송신측 IP 어드레스, 수신측 IP 어드레스, 식별자 중 적어도 어느 하나를 포함하는 IP 계층 정보와 트랜스포트 계층 프로토콜 데이터 헤더 내의 송신측 포트 번호, 수신측 포트 번호 중 적어도 어느 하나를 포함하는 트랜스포트 계층 정보 중 적어도 어느 하나를 포함하는 정보임-;
    (b) 상기 기본 정보를 이용하여, 상기 도착 패킷의 프로토콜이 상기 도착 패킷의 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜인지를 판단하는 단계;
    (c) 상기 도착 패킷의 프로토콜이 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜인 경우, 상기 지정된 프로토콜 또는 상기 well-known port에 상응하는 프로토콜에 상응하는 상위 계층 데이터 타입으로 분류하는 단계;
    (d) 상기 도착 패킷의 프로토콜이 IP 계층에 관련하여 미리 지정된 프로토콜 또는 well-known port를 사용하는 프로토콜이 아닌 경우, 상기 추출된 기본 정보가 관리 테이블에 등록되었는지를 판단하는 단계;
    (e) 상기 추출된 기본 정보가 상기 관리 테이블에 등록되어 있지 않은 경우, 미리 설정된 복수의 대상 프로토콜의 상위 계층 프로토콜 헤더를 추출하는 단계-여기서, 상기 복수의 대상 프로토콜은 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 비교되는 필드들이 미리 설정되어 저장됨-;
    (f) 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 상기 복수의 대상 프로토콜의 상위 계층 프로토콜 헤더 데이터를 미리 설정된 제1 회수 이상 비교하는 단계;
    (g) 상기 미리 설정된 제1 회수 동안 상기 도착 패킷의 상위 계층 프로토콜 헤더 데이터와 일치하는 대상 프로토콜이 존재하는 경우, 상기 대상 프로토콜의 상위 계층 데이터 타입을 추출하여 상기 상위 계층 데이터 타입을 상기 도착 패킷의 상위 계층 데이터 타입으로, 상기 기본 정보를 상기 상위 계층 데이터 타입의 기본 정보로 하여 상기 관리 테이블에 등록하는 단계-여기서, 상기 상위 계층 데이터 타입은 프로토콜 및 부가 정보를 포함함-; 및
    (h) 상기 추출된 기본 정보가 상기 관리 테이블에 등록되어 있는 경우, 상기 관리 테이블로부터 상기 기본 정보에 상응하는 상기 데이터 타입을 추출하여 상기 도착 패킷의 상위 계층 데이터 타입으로 분류하는 단계를 실행시키기 위한 프로그램을 기록한 기록매체.
KR10-2000-0078637A 2000-12-19 2000-12-19 인터넷상 트래픽의 상위 계층 프로토콜들을 구분하는 방법및 장치 KR100501080B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR10-2000-0078637A KR100501080B1 (ko) 2000-12-19 2000-12-19 인터넷상 트래픽의 상위 계층 프로토콜들을 구분하는 방법및 장치
US10/451,085 US20040148417A1 (en) 2000-12-19 2001-06-19 Method and system for distinguishing higher layer protocols of the internet traffic
PCT/KR2001/001043 WO2002051077A1 (en) 2000-12-19 2001-06-19 A method and system for distinguishing higher layer protocols of the internet traffic
AU2001274642A AU2001274642A1 (en) 2000-12-19 2001-06-19 A method and system for distinguishing higher layer protocols of the internet traffic

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2000-0078637A KR100501080B1 (ko) 2000-12-19 2000-12-19 인터넷상 트래픽의 상위 계층 프로토콜들을 구분하는 방법및 장치

Publications (2)

Publication Number Publication Date
KR20020049462A KR20020049462A (ko) 2002-06-26
KR100501080B1 true KR100501080B1 (ko) 2005-07-18

Family

ID=19703273

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2000-0078637A KR100501080B1 (ko) 2000-12-19 2000-12-19 인터넷상 트래픽의 상위 계층 프로토콜들을 구분하는 방법및 장치

Country Status (4)

Country Link
US (1) US20040148417A1 (ko)
KR (1) KR100501080B1 (ko)
AU (1) AU2001274642A1 (ko)
WO (1) WO2002051077A1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030034534A (ko) * 2001-10-26 2003-05-09 주식회사 케이티 Ip 네트워크에서 서비스별 트래픽 분석을 위한 포트번호선택방법
KR100429542B1 (ko) * 2001-11-23 2004-04-29 삼성전자주식회사 인터넷에서의 실시간 멀티미디어 패킷 분석 방법
FR2844938B1 (fr) * 2002-09-23 2005-01-14 Cit Alcatel Procede d'interception de donnees de controle, notamment de qualite de service, et dispositif associe
JP3783142B2 (ja) * 2003-08-08 2006-06-07 ティー・ティー・ティー株式会社 通信システム、通信装置、通信方法、及びそれを実現するための通信プログラム
US20080212590A1 (en) * 2007-03-02 2008-09-04 Imagestream Internet Solutions Flexible protocol engine for multiple protocol processing
CN101692674B (zh) * 2009-10-30 2012-10-17 杭州华三通信技术有限公司 双栈接入的方法和设备
CN102098272B (zh) 2009-12-10 2014-02-19 华为技术有限公司 一种协议识别的方法、装置和系统
CN102546548B (zh) * 2010-12-22 2015-04-01 中兴通讯股份有限公司 一种分层协议的识别方法和装置
US10430404B2 (en) * 2012-05-22 2019-10-01 Nitin Gambhir System and method for tracking events
US10582022B2 (en) * 2016-05-20 2020-03-03 Citrix Systems, Inc. Adaptive session reliability over multiple transports
EP3486830A1 (en) * 2017-11-21 2019-05-22 Gemalto Sa Method of managing profiles in a secure element comprising several software containers
JP7047894B2 (ja) * 2018-03-02 2022-04-05 住友電気工業株式会社 スイッチ装置、監視方法および監視プログラム
CN110855602B (zh) * 2018-08-21 2022-02-25 国家计算机网络与信息安全管理中心 物联网云平台事件识别方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR930020897A (ko) * 1992-03-18 1993-10-20 경상현 고정길이 패킷 수신기능 처리용 통신 프로토콜 처리장치
KR19980030010A (ko) * 1996-10-28 1998-07-25 김광호 데이터베이스 관리 시스템에서의 테이블에 대한 계층 관리 장치
KR19980036707A (ko) * 1996-11-19 1998-08-05 김영환 에이티엠(atm)망에서의 신경망제어기
KR19990036478A (ko) * 1997-10-02 1999-05-25 즈치야겐이치 엔진 제어장치
KR19990050547A (ko) * 1997-12-17 1999-07-05 이계철 인터넷 프로토콜의 다양한 서비스 프로토콜과 네트워크 인터페이스 첨가 및 삭제 방법
KR20010019840A (ko) * 1999-08-31 2001-03-15 박원배 다단계 프로토콜 처리 장치

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5204961A (en) * 1990-06-25 1993-04-20 Digital Equipment Corporation Computer network operating with multilevel hierarchical security with selectable common trust realms and corresponding security protocols
JP2520563B2 (ja) * 1993-05-19 1996-07-31 日本電気株式会社 パケット交換網
US5787248A (en) * 1996-01-02 1998-07-28 Racal-Datacom, Inc. System for selecting network management protocol by setting protocol handler index based on newly selected protocol and selecting protocol handler address using protocol handler index
US6041051A (en) * 1996-06-14 2000-03-21 Lucent Technologies, Inc. Method and apparatus enabling multiple access for multiple services and multiple transmission modes over a broadband communication network utilizing an adaptive digital access protocol
US5999979A (en) * 1997-01-30 1999-12-07 Microsoft Corporation Method and apparatus for determining a most advantageous protocol for use in a computer network
US5943481A (en) * 1997-05-07 1999-08-24 Advanced Micro Devices, Inc. Computer communication network having a packet processor with subsystems that are variably configured for flexible protocol handling
US6032190A (en) * 1997-10-03 2000-02-29 Ascend Communications, Inc. System and method for processing data packets
US6704311B1 (en) * 1999-06-25 2004-03-09 Lucent Technologies Inc. Application-level switching server for internet protocol (IP) based networks
JP2001045061A (ja) * 1999-08-02 2001-02-16 Hitachi Ltd 通信ノード装置
US6658481B1 (en) * 2000-04-06 2003-12-02 International Business Machines Corporation Router uses a single hierarchy independent routing table that includes a flag to look-up a series of next hop routers for routing packets
US6973102B2 (en) * 2000-07-31 2005-12-06 Telefonaktiebolaget Lm Ericsson (Publ) Jitter reduction in differentiated services (DiffServ) networks

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR930020897A (ko) * 1992-03-18 1993-10-20 경상현 고정길이 패킷 수신기능 처리용 통신 프로토콜 처리장치
KR19980030010A (ko) * 1996-10-28 1998-07-25 김광호 데이터베이스 관리 시스템에서의 테이블에 대한 계층 관리 장치
KR19980036707A (ko) * 1996-11-19 1998-08-05 김영환 에이티엠(atm)망에서의 신경망제어기
KR19990036478A (ko) * 1997-10-02 1999-05-25 즈치야겐이치 엔진 제어장치
KR19990050547A (ko) * 1997-12-17 1999-07-05 이계철 인터넷 프로토콜의 다양한 서비스 프로토콜과 네트워크 인터페이스 첨가 및 삭제 방법
KR20010019840A (ko) * 1999-08-31 2001-03-15 박원배 다단계 프로토콜 처리 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
전기전자용어사전 660페이지(98.1.5), 정보통신용어사전 1246페이지(94.12월) *

Also Published As

Publication number Publication date
AU2001274642A1 (en) 2002-07-01
US20040148417A1 (en) 2004-07-29
WO2002051077A1 (en) 2002-06-27
KR20020049462A (ko) 2002-06-26

Similar Documents

Publication Publication Date Title
USRE49126E1 (en) Real-time adaptive processing of network data packets for analysis
JP3717836B2 (ja) ダイナミック・ロード・バランサ
US6415313B1 (en) Communication quality control system
US7440409B2 (en) Network traffic monitoring system and monitoring method
US7623466B2 (en) Symmetric connection detection
EP1924028B1 (en) Method and system for providing qos service
CN1279717C (zh) 面向分组的网络的网元的分类方法
CN105591973B (zh) 应用识别方法及装置
KR100501080B1 (ko) 인터넷상 트래픽의 상위 계층 프로토콜들을 구분하는 방법및 장치
CN113169937B (zh) 用户数据业务处理的方法、装置、网络节点及介质
KR100997182B1 (ko) 플로우 정보 제한장치 및 방법
EP1928127A1 (en) Method and system for tunneling MACSEC packets through non-MACSEC nodes
CN103139315A (zh) 一种适用于家庭网关的应用层协议解析方法
US20130294449A1 (en) Efficient application recognition in network traffic
US7522530B2 (en) Method for protocol recognition and analysis in data networks
CN111953552B (zh) 数据流的分类方法和报文转发设备
EP3369212A1 (en) Length control for packet header sampling
CN110691007A (zh) 一种精确测量quic连接丢包率的方法
JP2007228217A (ja) トラフィック判定装置、トラフィック判定方法、及びそのプログラム
KR100710047B1 (ko) Ip 네트워크 환경에서의 트래픽 분석장치
CN111614633B (zh) 一种针对l2tp协议的解析方法及系统
JP3596478B2 (ja) トラフィック分類装置およびトラフィック分類方法
KR100621996B1 (ko) 인터넷 서비스 트래픽의 분석방법 및 시스템
KR100429542B1 (ko) 인터넷에서의 실시간 멀티미디어 패킷 분석 방법
JP3834157B2 (ja) サービス属性割り当て方法とネットワーク機器

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B601 Maintenance of original decision after re-examination before a trial
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20030724

Effective date: 20050531

S901 Examination by remand of revocation
GRNO Decision to grant (after opposition)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20090706

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee