KR20060059493A - Apparatus for traffic identification on internet protocol network environment - Google Patents

Apparatus for traffic identification on internet protocol network environment Download PDF

Info

Publication number
KR20060059493A
KR20060059493A KR1020040098597A KR20040098597A KR20060059493A KR 20060059493 A KR20060059493 A KR 20060059493A KR 1020040098597 A KR1020040098597 A KR 1020040098597A KR 20040098597 A KR20040098597 A KR 20040098597A KR 20060059493 A KR20060059493 A KR 20060059493A
Authority
KR
South Korea
Prior art keywords
flow
application
tcp
information
port
Prior art date
Application number
KR1020040098597A
Other languages
Korean (ko)
Other versions
KR100710047B1 (en
Inventor
홍원기
김명섭
원영준
Original Assignee
학교법인 포항공과대학교
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 학교법인 포항공과대학교 filed Critical 학교법인 포항공과대학교
Priority to KR1020040098597A priority Critical patent/KR100710047B1/en
Publication of KR20060059493A publication Critical patent/KR20060059493A/en
Application granted granted Critical
Publication of KR100710047B1 publication Critical patent/KR100710047B1/en

Links

Images

Classifications

    • 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/04Processing captured monitoring data, e.g. for logfile generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/062Generation of reports related to network traffic

Landscapes

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

Abstract

본 발명은 TCP/IP 기반의 인터넷 네트워크 모니터링 지점을 지나는 패킷을 수집하여 플로우 단위로 압축하고, 압축된 플로우 정보의 근원지 포트번호와 목적지 포트번호 중에서 응용 프로그램의 결정에 중요한 영향을 미치는 중요 포트번호를 결정하고, 인터넷 응용 프로그램들의 트래픽 발생형태를 규정하는 트래픽 분류표를 만들며, 실재 응용 프로그램들을 조사하여 응용별 트래픽 타입 정보를 만들며, 이 플로우 정보를 바탕으로 이들 사이의 특성적 상관관계와 위치적 상관관계를 분석하여 응용별 트래픽 타입 정보를 바탕으로 플로우의 응용프로그램을 결정하여 IP 트래픽을 분석하기 위한 것으로, 이를 위한 구성은 네트워크 모니터링 지점을 지나는 패킷들을 수집하고, 수집된 패킷에 해당하는 플로우 정보를 생성하는 플로우 정보 생성부와, 수집된 패킷들로부터 서버 포트 정보를 생성하고, 생성된 서버 포트 정보를 바탕으로, 플로우 정보 중에서 TCP 플로우에 대한 서버 포트를 결정하는 플로우 중요 포트 결정부와, IP 트래픽을 발생시키는 응용들을 분석하며, 분석된 각 응용들의 트래픽 타입 정보를 트래픽 타입 정보 테이블에 저장하는 응용별 트래픽 타입 관리부와, 플로우 정보와 응용별 트래픽 타입 정보를 이용하여 플로우들 사이의 특성적 상관관계와 위치적 상관관계를 바탕으로 플로우들의 응용 프로그램을 결정하여 응용별 플로우 정보 테이블에 저장하는 응용별 트래픽 분류 결정부를 포함한다. 따라서, 기존에 국지적으로 사용되었던 포트번호를 기반으로 하는 전통적인 과정과 페이로드 분석 기반 및 시그니쳐 분석 기반의 응용 수준 트래픽 분 석의 한계를 극복할 수 있어 네트워크 트래픽 상태를 보다 명확히 파악할 수 있는 효과가 있다. The present invention collects packets passing through a TCP / IP-based Internet network monitoring point, compresses them in units of flows, and selects an important port number that has an important influence on the determination of an application program from a source port number and a destination port number of the compressed flow information. Make a traffic classification table that defines the traffic generation patterns of Internet applications, investigate the actual applications to create traffic type information for each application, and based on this flow information, characteristic and positional correlation between them It analyzes the relationship and analyzes the IP traffic by determining the application of the flow based on the traffic type information for each application. The configuration for this is to collect packets passing through the network monitoring point, and to obtain flow information corresponding to the collected packets. A flow information generation unit to generate and collect Generates server port information from the generated packets, analyzes the flow critical port determining unit that determines the server port for the TCP flow among the flow information, and the applications generating the IP traffic based on the generated server port information A traffic type management unit for storing the traffic type information of each of the applied applications in the traffic type information table, and the flow based on the characteristic correlation and the positional correlation between the flows using the flow information and the traffic type information for each application. It includes a traffic classification determination unit for each application to determine the application of the application to store in the flow information table for each application. Therefore, it is possible to overcome the limitations of the traditional process based on the port number and the application level traffic analysis based on the payload analysis and the signature analysis based on the previously used port number.

Description

IP 네트워크 환경에서의 트래픽 분석장치{APPARATUS FOR TRAFFIC IDENTIFICATION ON INTERNET PROTOCOL NETWORK ENVIRONMENT}Traffic analysis device in IP network environment {APPARATUS FOR TRAFFIC IDENTIFICATION ON INTERNET PROTOCOL NETWORK ENVIRONMENT}

도 1은 본 발명에 따른 IP 네트워크 환경에서의 트래픽 분석장치에 대한 블록 구성도이고,1 is a block diagram of an apparatus for analyzing traffic in an IP network environment according to the present invention;

도 2는 도 1에 도시된 플로우 정보 생성부를 상세하게 도시한 도면이며,2 is a view showing in detail the flow information generation unit shown in FIG.

도 3은 도 1에 도시된 플로우 중요 포트 결정부를 상세하게 도시한 도면이며,3 is a view showing in detail the flow critical port determination unit shown in FIG.

도 4는 도 1에 도시된 응용별 트래픽 타입 관리부를 상세하게 도시한 도면이며,4 is a view showing in detail the traffic type management unit for each application shown in FIG.

도 5는 도 4에 도시된 트래픽 타입 분류표를 상세하게 도시한 도면이며,5 is a view showing in detail the traffic type classification table shown in FIG.

도 6은 본 발명에 따른 인터넷 응용 프로그램들의 트래픽 타입 정보를 나타낸 도면이며,6 illustrates traffic type information of Internet applications according to the present invention.

도 7은 도 1에 도시된 응용별 트래픽 분류 결정부를 상세하게 도시한 도면이며,FIG. 7 is a diagram illustrating details of a traffic classification determining unit for each application illustrated in FIG. 1;

도 8은 본 발명에 따른 플로우 특성 기반 그룹화 블록에서 플로우들을 그룹화 하기 위해 스택을 반복적으로 이용하는 프로그램 예시를 도시한 도면이며,8 is a diagram illustrating a program example of repeatedly using a stack to group flows in a flow characteristic based grouping block according to the present invention;

도 9는 본 발명에 따른 변동 포트 응용 결정부에 의해 확률적 가정 정보를 구현하기 위한 도면이다. 9 is a diagram for implementing probabilistic hypothesis information by the variable port application determining unit according to the present invention.

<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>

100 : 플로우 정보 생성부 101 : 패킷 수집부100: flow information generation unit 101: packet collection unit

102 : 플로우 생성부 103 : 플로우 정보 테이블102: flow generation unit 103: flow information table

200 : 플로우 중요 포트 결정부 201 : SYN 패킷 수집부200: flow critical port determination unit 201: SYN packet collection unit

202 : 서버 포트 정보 테이블 203 : TCP 플로우 서버 포트 결정부202: server port information table 203: TCP flow server port determination unit

300 : 응용별 트래픽 타입 관리부 301 : 트래픽 타입 분류표300: traffic type management unit for each application 301: traffic type classification table

302 : 응용별 트래픽 타입 조사부 303 : 트래픽 타입 정보 테이블302: traffic type investigation unit by application 303: traffic type information table

400 : 응용별 트래픽 분류 결정부 401 : 플로우 특성 기반 그룹화 블록400: traffic classification determination unit for each application 401: flow characteristic based grouping block

402 : 플로우 위치 기반 그룹화 블록 402: Flow location based grouping block

403 : 응용별 플로우 정보 테이블403: Application Specific Flow Information Table

본 발명은 인터넷 프로토콜(Internet Protocol, IP) 네트워크 환경에서의 트래픽 분석장치에 관한 것으로, 보다 상세하게 설명하면, TCP/IP 기반의 인터넷 트래픽을 수집하고, 수집된 트래픽을 발생시킨 응용들의 응용 수준 프로토콜을 기준으로 IP 트래픽을 분석할 수 있는 장치에 관한 것이다. The present invention relates to a traffic analysis apparatus in an Internet Protocol (IP) network environment, and more specifically, to an application level protocol of applications that collect TCP / IP-based Internet traffic and generate collected traffic. It relates to a device that can analyze IP traffic based on the.

주지된 바와 같이, 인터넷이 발달하고 사용자가 급속도로 증가하면서 현재의 네트워크는 복잡하고 다양한 종류의 트래픽들로 포화상태에 이르고 있다. 이는 WWW, FTP, Mail 등의 전통적인 인터넷 응용 프로그램들뿐만 아니라, 음성망의 통합, 새로운 스트리밍, P2P 파일 공유, 게임 등 많은 서비스와 응용 프로그램들이 인터넷 기반으로 운용되고 있기 때문이다. As is well known, with the development of the Internet and the rapid increase in the number of users, the current network is getting saturated with complex and various kinds of traffic. This is because not only traditional Internet applications such as WWW, FTP, and Mail, but also many services and applications such as voice network integration, new streaming, P2P file sharing, and games are operated on the Internet.

이러한 인터넷은 TELNET, FTP, HTTP, SMTP 등의 통신 프로토콜들과 더불어 최근 인터넷 트래픽의 상당량을 차지하는 P2P 응용, 멀티미디어 서비스 응용, 게임 응용 등의 다양한 응용들이 복잡하게 사용되고 있다. In addition to the communication protocols such as TELNET, FTP, HTTP, SMTP, and the like, various applications such as P2P applications, multimedia service applications, and game applications, which take up a considerable amount of Internet traffic, are being used in a complex manner.

즉, 통상적인 인터넷 기반 응용들은, 첫째, 상당히 많은 인터넷 응용들이 사용되고, 이 사용하는 응용 수준 프로토콜 역시 그 수가 다양하다. 둘째, 표준화되어 있지 않은 응용 수준 프로토콜이 많고, 상당수의 응용들은 IANA(Internet Assigned Numbers Authority)에 등록되어 있지 않으면서 포트 번호만을 사용하고 있어 포트 번호만으로 응용을 구분하기 힘들다. 셋째, 최근에 나타난 P2P, 스트리밍, 게임 등의 응용들은 하나의 응용이 TCP와 UDP를 동시에 사용하고 동적으로 생성된 포트 번호를 사용하여 응용별 트래픽 분석을 더욱더 어렵게 한다. That is, conventional Internet-based applications, firstly, a large number of Internet applications are used, and the number of application level protocols used also varies. Second, there are many application level protocols that are not standardized, and many applications use only port numbers without being registered with the Internet Assigned Numbers Authority (IANA). Third, the recent P2P, streaming, and game applications make it more difficult to analyze traffic per application by using one application simultaneously using TCP and UDP and using dynamically generated port numbers.

상술한 종래 응용 수준 트래픽 분석 과정은 다음과 같다.The above-described conventional application level traffic analysis process is as follows.

먼저, 외부 인터넷 망으로부터 송/수신되는 트래픽의 응용 프로그램을 판별하기 위해 수신 패킷에서 트랜스포트 계층의 포트 번호만을 검사하여 트래픽 정체를 파악하는 전통적인 방법이 있다. 그 예로, 인터넷 홈페이지에 접속할 때는 포트 번호가 80번, FTP를 이용해서 파일을 받아올 때는 20, 21번, 영화 패킷 데이터 수신할 때는 포트번호 554번, 1755번 등으로, 대부분의 패킷들은 미리 설정된 포트를 통해서 패킷 송/수신이 이루어지고 있어 트랜스포트 계층의 포트번호를 파악하여 패킷의 응용을 분석한다. 그러나 이 방법은 동적으로 생성되는 포트 번호를 사용하는 응용의 경우에는 부적합하다. First, in order to determine an application program of traffic transmitted / received from an external Internet network, there is a conventional method of checking traffic congestion by checking only a port number of a transport layer in a received packet. For example, the port number is 80 when accessing the Internet homepage, 20 and 21 when receiving files using FTP, and port numbers 554 and 1755 when receiving movie packet data. Packet transmission / reception is performed through the port, and the application of the packet is analyzed by identifying the port number of the transport layer. However, this method is not suitable for applications that use dynamically generated port numbers.

다음으로, 수집된 패킷의 페이로드를 분석하여 동적 생성 포트를 알아내는 페이로드 분석 기반의 응용 수준 트래픽 분석 방법이 있다. 이 방법에서는 멀티미디어 서비스의 데이터 전송 포트를 알아내기 위해 컨트롤 세션 패킷의 페이로드를 분석하는 방법으로, 이를 위해서는 컨트롤 세션에 사용되는 응용 수준 프로토콜을 알고 있어야 하는 단점이 있다. 또한 공개되지 않은 응용 수준 프로토콜이나 암호화된 프로토콜에서는 사용할 수 없는 단점이 있다.Next, there is an application level traffic analysis method based on payload analysis, which analyzes the payload of collected packets and finds a dynamic generation port. In this method, the payload of the control session packet is analyzed to find out the data transmission port of the multimedia service, which requires a knowledge of the application level protocol used for the control session. It also has a drawback that it cannot be used in unpublished application level protocols or encrypted protocols.

마지막으로, 각 응용들이 사용하는 패킷들의 다른 응용 패킷들과 구분되는 독특한 부분을 조사하여 그 응용의 시그니쳐로 정의하고, 각각의 패킷과 시그니쳐의 비교를 통해 응용을 구분하는 시그니쳐 기반의 응용 수준 트래픽 분석 방법이 있다. 이 방법은 분석하기 위한 모든 응용들 각각의 시그니쳐를 찾아 내야하는 부담이 있고, 응용 수준 프로토콜이 계속 발전하는 경우에 적용하기에 힘들다는 문제점을 갖는다. Finally, signature-based application-level traffic analysis is performed by examining the unique parts of the packets used by each application from the other application packets, defining them as the signature of the application, and comparing the applications with each packet. There is a way. This method has the burden of finding the signature of each application for analysis and has a problem that it is difficult to apply when the application level protocol is continuously developed.

이에, 본 발명은 상기와 같은 문제점을 해결하기 위해 안출한 것으로서, 그 목적은 다양한 응용 수준 프로토콜과 동적 포트번호가 사용되는 인터넷 환경에서 발생되는 TCP/IP 기반의 인터넷 트래픽을 수집하여 트래픽을 발생시킨 응용 프로그램을 결정하는 것으로서, 즉, TCP/IP 기반의 인터넷 네트워크 모니터링 지점을 지나는 패킷을 수집하여 플로우 단위로 압축하고, 압축된 플로우 정보의 근원지 포트 번호와 목적지 포트번호 중에서 응용 프로그램의 결정에 중요한 영향을 미치는 중요 포트번호를 결정하고, 인터넷 응용 프로그램들의 트래픽 발생형태를 규정하는 트래픽 분류표를 만들며, 실재 응용 프로그램들을 조사하여 응용별 트래픽 타입 정보를 만들며, 이 플로우 정보를 바탕으로 이들 사이의 특성적 상관관계와 위치적 상관관계를 분석하여 응용별 트래픽 타입 정보를 바탕으로 플로우의 응용프로그램을 결정하여 IP 트래픽을 분석할 수 있는 IP 네트워크 환경에서의 트래픽 분석장치를 제공함에 있다. Accordingly, the present invention has been made to solve the above problems, its purpose is to generate traffic by collecting TCP / IP-based Internet traffic generated in the Internet environment using a variety of application-level protocols and dynamic port number Determining the application, that is, collecting packets that pass through TCP / IP-based Internet network monitoring points and compressing them in flow units, and having a significant impact on the application's decision among the source port number and destination port number of the compressed flow information. Determine the critical port number, create a traffic classification table that defines the traffic generation patterns of the Internet applications, investigate the actual applications to create the traffic type information for each application, and based on this flow information, Correlation and positional correlation Yongbyeol to a decision based on the application of the traffic flow type information, the traffic analyzing apparatus in the IP network environment that can be analyzed to provide the IP traffic.

이러한 목적을 달성하기 위한 본 발명에서 IP 네트워크 환경에서의 트래픽 분석장치는 네트워크 모니터링 지점을 지나는 패킷들을 수집하고, 수집된 패킷에 해당하는 플로우 정보를 생성하는 플로우 정보 생성부와, 수집된 패킷들로부터 서버 포트 정보를 생성하고, 생성된 서버 포트 정보를 바탕으로, 플로우 정보 중에서 TCP 플로우에 대한 서버 포트를 결정하는 플로우 중요 포트 결정부와, IP 트래픽을 발생시키는 응용들을 분석하며, 분석된 각 응용들의 트래픽 타입 정보를 트래픽 타입 정보 테이블에 저장하는 응용별 트래픽 타입 관리부와, 플로우 정보와 응용별 트래픽 타입 정보를 이용하여 플로우들 사이의 특성적 상관관계와 위치적 상관관계를 바탕으로 플로우들의 응용 프로그램을 결정하여 응용별 플로우 정보 테이블에 저장하는 응용별 트래픽 분류 결정부를 포함하는 것을 특징으로 한다.In the present invention for achieving this purpose, the traffic analysis apparatus in the IP network environment is a flow information generation unit for collecting the packets passing through the network monitoring point, and generates flow information corresponding to the collected packet, and from the collected packets Generates the server port information, and based on the generated server port information, the flow critical port determination unit for determining the server port for the TCP flow among the flow information, and analyzes the applications generating the IP traffic, A traffic type management unit for storing the traffic type information in the traffic type information table and an application program for the flows based on the characteristic correlation and the positional correlation between the flows using the flow information and the application-specific traffic type information. Application specific decisions that are determined and stored in the application specific flow information table It characterized in that it comprises a pick-classification decision.

이하, 본 발명의 실시 예는 다수개가 존재할 수 있으며, 이하에서 첨부한 도면을 참조하여 바람직한 실시 예에 대하여 상세히 설명하기로 한다. 이 기술 분야 의 숙련자라면 이 실시 예를 통해 본 발명의 목적, 특징 및 이점들을 잘 이해하게 될 것이다. Hereinafter, a plurality of embodiments of the present invention may exist, and a preferred embodiment will be described in detail with reference to the accompanying drawings. Those skilled in the art will appreciate the objects, features and advantages of the present invention through this embodiment.

도 1은 본 발명에 따른 IP 네트워크 환경에서의 트래픽 분석장치에 대한 블록 구성도로서, 네트워크 모니터링 지점(S1)을 지나는 패킷들을 수집하여 플로우 정보를 생성하는 플로우 정보 생성부(100)와, 네트워크 모니터링 지점(S1)을 지나는 패킷들을 수집하여 서버 포트 정보를 생성하고, 생성된 서버 포트 정보를 바탕으로 생성된 플로우 정보 중에서 TCP 플로우에 대하여 서버 포트를 결정하는 플로우 중요 포트 결정부(200)와, 실제 IP 트래픽을 발생시키는 응용들을 정의된 트래픽 타입 분류표를 기준으로 분석하여 각 응용들의 응용별 트래픽 특성 정보를 트래픽 타입 정보 테이블에 저장하는 응용별 트래픽 타입 관리부(300)와, 상술한 바와 같이, 생성된 플로우 정보와 응용별 트래픽 특성 정보를 바탕으로 플로우들 사이의 특성적 상관관계와 위치적 상관관계를 바탕으로 IP 트래픽 플로우들의 응용 프로그램을 판별하여 저장하는 응용별 트래픽 분류 결정부(400)를 포함한다.1 is a block diagram of an apparatus for analyzing traffic in an IP network environment according to the present invention, a flow information generation unit 100 for generating flow information by collecting packets passing through a network monitoring point S1, and network monitoring A flow critical port determination unit 200 which collects packets passing through the point S1 to generate server port information, and determines a server port with respect to the TCP flow among the generated flow information based on the generated server port information; An application-specific traffic type management unit 300 which analyzes applications generating IP traffic based on a defined traffic type classification table and stores the application-specific traffic characteristic information of each application in the traffic type information table. Characteristic and positional correlations between flows based on the flow information and application-specific traffic characteristics It includes a traffic classification determination unit 400 for each application for determining and storing the application of the IP traffic flows based on the relationship.

플로우 정보 생성부(100)는 도 2에 도시된 바와 같이, 패킷 수집부(101)와, 플로우 생성부(102)와, 플로우 정보 테이블(103)을 구비한다.As shown in FIG. 2, the flow information generating unit 100 includes a packet collecting unit 101, a flow generating unit 102, and a flow information table 103.

패킷 수집부(101)는 네트워크 모니터링 지점(S1)을 지나는 패킷을 캡쳐하여 수집하는 수집 필터부(111)와, 수집 필터부(111)에 의해 갭쳐된 패킷이 일반 패킷(예로, 단편화되지 않은 패킷)일 경우, 이 일반 패킷의 헤더를 분석해 트래픽 분석에 필요한 패킷 헤더 정보(S2)를 추출하여 플로우 생성부(102)에 인가하는 헤더 정보 추출부(112)와, 수집 필터부(111)에 의해 갭쳐된 패킷이 단편화된 패킷 (fragmented packet)일 경우, 이 패킷을 재조립하여 헤더 정보 추출부(112)에 인가하는 패킷 재조립부(113)를 구비한다. The packet collecting unit 101 collects a packet passing through the network monitoring point S1 and collects the packet collected by the collection filter unit 111, and a packet that is captured by the collection filter unit 111 is a normal packet (eg, an unfragmented packet). ), The header information extracting unit 112 and the collecting filter unit 111 which analyzes the header of the general packet, extracts the packet header information S2 necessary for traffic analysis, and applies it to the flow generating unit 102. When the gapped packet is a fragmented packet, the packet reassembly unit 113 is provided to reassemble the packet and apply it to the header information extracting unit 112.

플로우 생성부(102)는 패킷 수집부(101)로부터 제공되는 패킷 헤더 정보(S2)내의 플로우의 특성을 결정짓는 근원지 IP 주소, 목적지 IP 주소, 근원지 포트 번호, 목적지 포트 번호, 프로토콜 번호 등의 5개 항목을 검사하여 입력되는 패킷이 기존에 존재하는 플로우의 패킷인지를 판단한다. 판단결과, 입력되는 패킷이 기존에 존재하던 플로우의 패킷이면, 플로우 정보 테이블(103)에 저장된 해당 플로우에 추가되는 패킷 수와 플로우 길이를 갱신시킨다. 반면에, 판단결과, 입력되는 패킷이 기존에 존재하지 않던 플로우의 패킷이면, 플로우 정보 테이블(103)에 2 패킷이 포함된 새로운 플로우를 생성시켜 플로우 정보 테이블(103)에 저장시킨다. 즉, 플로우 생성부(102)는 일정시간이 경과할 때마다 도 2에 도시된 바와 같이 모여진 플로우 정보(S3)들, 즉 근원지 IP 주소, 목적지 IP 주소, 근원지 포트 번호, 목적지 포트 번호, 프로토콜 번호, 패킷 갯수, 플로우 길이 등을 갱신하여 플로우 정보 테이블(103)에 데이터베이스나 파일 형태로 저장시키거나, 새로운 플로우 정보를 만드는 과정을 수행한다. The flow generating unit 102 includes 5 such as a source IP address, a destination IP address, a source port number, a destination port number, a protocol number, etc. for determining the characteristics of the flow in the packet header information S2 provided from the packet collecting unit 101. The items are examined to determine whether the input packet is a packet of an existing flow. As a result of the determination, if the input packet is a packet of an existing flow, the number of packets added to the corresponding flow stored in the flow information table 103 and the flow length are updated. On the other hand, if it is determined that the input packet is a packet of a flow that does not exist previously, a new flow including 2 packets is generated in the flow information table 103 and stored in the flow information table 103. That is, the flow generating unit 102, as shown in FIG. 2, every time a predetermined time elapses, the collected flow information S3, that is, source IP address, destination IP address, source port number, destination port number, and protocol number. , The number of packets, the flow length and the like are updated and stored in the database or file in the flow information table 103, or a new flow information is created.

플로우 중요 포트 결정부(200)는 도 3에 도시된 바와 같이, SYN 패킷 수집부(201)와, 서버 포트 정보 테이블(202)과, TCP 플로우 서버 포트 결정부(203)를 포함한다.As illustrated in FIG. 3, the flow critical port determining unit 200 includes a SYN packet collecting unit 201, a server port information table 202, and a TCP flow server port determining unit 203.

SYN 패킷 수집부(201)는 네트워크 모니터링 지점(S1)을 지나는 패킷을 캡쳐한 후, 캡쳐된 패킷이 TCP SYN 패킷, 혹은 TCP SYN-ACK 패킷일 경우에 2 패킷을 서 버 포트 정보 추출부(212)에 인가하는 SYN 수집 필터부(211)와, SYN 수집 필터부(211)로부터 인가되는 TCP SYN 패킷, 혹은 TCP SYN-ACK 패킷에서 서버 포트 정보(S4)인 서버 IP 주소, 서버 포트 번호, 패킷 탐지 시간을 추출하여 서버 포트 정보 테이블(202)에 제공하는 서버 포트 정보 추출부(212)와, 서버 포트 정보 테이블(202)에서 일정 시간 동안 해당 서버로 트래픽이 발생하지 않는 서버 포트 정보(S4)를 삭제하여 항상 유효한 서버 포트 정보(S4)만을 유지하도록 측정하는 타이머(213)와, 서버 포트 정보 테이블(202)의 서버 포트 정보(S4)를 검사하여 정해진 갱신 시간을 초과하면, 서버 포트 정보(S4)를 삭제하고, 갱신 시간 이내에 있으면 갱신 처리를 마치고 다음 서버 포트 정보를 검사하는 서버 포트 정보 갱신부(214)를 구비한다. 여기서, TCP SYN 패킷에서 추출된 서버 IP 주소는 목적지 IP 주소가 되고, 서버 포트 번호는 목적지 포트 번호가 되며, 또한 TCP SYN-ACK 패킷에서 추출된 서버 IP 주소는 근원지 IP 주소가 되며, 서버 포트 번호는 근원지 포트 번호가 된다. The SYN packet collection unit 201 captures a packet passing through the network monitoring point S1, and then, if the captured packet is a TCP SYN packet or a TCP SYN-ACK packet, the SYN packet collection unit 201 extracts 2 packets from the server port information extraction unit 212. Server IP address, server port number, and packet which are server port information (S4) in the SYN collection filter unit 211 and the TCP SYN packet or TCP SYN-ACK packet applied from the SYN collection filter unit 211. The server port information extracting unit 212 which extracts a detection time and provides the server port information table 202 to the server port information table 202 and the server port information S4 in which traffic does not occur to the server for a predetermined time. The timer 213 and the server port information S4 of the server port information table 202 are inspected to measure and maintain only the valid server port information S4 at all times. Delete S4) and within renewal time A server port information updating unit 214 for completing the update process and checking the next server port information. Here, the server IP address extracted from the TCP SYN packet becomes the destination IP address, the server port number becomes the destination port number, and the server IP address extracted from the TCP SYN-ACK packet becomes the source IP address and the server port number. Becomes the source port number.

서버 포트 정보 테이블(202)은 자체 테이블내의 서버 포트 정보의 존재 여부를 검색 판단하며, 판단결과, 기존 서버 포트 정보가 존재하면, 서버 포트 정보(S4)중에 패킷 탐지 시간을 갱신하며, 판단결과, 기존 서버 포트 정보가 존재하지 않으면, 새로운 서버 포트정보(S4)를 생성한다. The server port information table 202 searches and determines whether the server port information exists in its own table. If the existing server port information exists, the server port information table 202 updates the packet detection time in the server port information S4. If the existing server port information does not exist, a new server port information (S4) is generated.

TCP 플로우 서버 포트 결정부(203)는 서버 포트 정보 테이블(202)내 서버 포트 정보(S4)에서 TCP 플로우들을 추출하는 TCP 플로우 추출부(221)와, TCP 플로우 추출부(221)에 의해 추출된 TCP 플로우(fa,fb,rfa)의 포트를 하술한 중요 포트의 가정(SS1)을 기준으로 판단하여 중요 포트를 결정하여 적용한 다음에, 중요하지 않은 포트를 "0"의 값으로 적용하는 가정 적용부(222)와, 가정 적용부(222)에 의해 처리된 TCP 플로우들을 검사하여 플로우들 사이에 플로우 내용이 중복된 정보가 있을 경우, 중복된 정보를 하나의 정보로 통합하여 플로우 정보 생성부(100)내 플로우 정보 테이블(103)에 제공하는 중복성 검사 및 저장부(223)를 구비한다. The TCP flow server port determining unit 203 extracts the TCP flow extracting unit 221 for extracting the TCP flows from the server port information S4 in the server port information table 202 and the TCP flow extracting unit 221. Based on the assumption of the critical port (SS1) described below, the ports of the TCP flow (f a , f b , r f a ) are determined and applied, and then the non-critical ports are assigned a value of "0". The hypothesis applying unit 222 to be applied and the TCP flows processed by the hypothesis applying unit 222 are inspected, and when there is information in which the flow contents are duplicated between the flows, the duplicate information is integrated into one information flow. The redundancy check and storage unit 223 provided to the flow information table 103 in the information generating unit 100 is provided.

여기서, 가정 적용부(222)에 의해 결정되는 중요 포트의 가정(SS1)은 다음과 같다. Here, the assumption SS1 of the critical port determined by the assumption application unit 222 is as follows.

즉, 1. TCP 플로우(fa)의 근원지 IP 주소와 근원지 포트 번호가 서버 포트 정보 테이블에 존재하면 TCP 플로우(fa)의 근원지 포트 번호가 중요 포트 번호이다.That is, a TCP flow 1 (f a) If the source IP address and source port number exists in the server port information table TCP flows (f a) the source port number of important port numbers.

2. TCP 플로우(fa)의 목적지 IP 주소와 목적지 포트 번호가 서버 포트 정보 테이블에 존재하면 TCP 플로우(fa)의 목적지 포트 번호가 중요 포트 번호이다.2. The TCP flow (f a) If the destination IP address and destination port numbers that exist on the server port information table TCP flows (f a) a destination port number of important port numbers.

3. TCP 플로우(fa)의 중요포트가 결정되어 있으면, TCP 플로우(rfa)의 역방향 TCP 플로우의 중요포트도 결정된다. 3. If the important port of the TCP flow f a is determined, the important port of the reverse TCP flow of the TCP flow r f a is also determined.

4. TCP 플로우(fa)의 중요 포트가 근원지 포트이고, TCP 플로우(fb)의 근원지 IP 주소와 근원지 포트 번호가 TCP 플로우(fa)의 근원지 IP 주소와 근원지 포트번호와 같다면 TCP 플로우의 중요포트는 근원지 포트이다.4. If the critical port of the TCP flow (f a ) is the source port, and the source IP address and source port number of the TCP flow (f b ) are the same as the source IP address and source port number of the TCP flow (f a ), then the TCP flow An important port of is the source port.

5. TCP 플로우(fa)의 중요 포트가 목적지 포트이고, TCP 플로우(fb)의 목적지 IP 주소와 목적지 포트 번호가 TCP 플로우(fa)의 목적지 IP 주소와 목적지 포트번호와 같다면 TCP 플로우의 중요포트는 목적지 포트이다.5. If the critical port of the TCP flow (f a ) is the destination port, and the destination IP address and destination port number of the TCP flow (f b ) are the same as the destination IP address and the destination port number of the TCP flow (f a ), then the TCP flow Important port of is destination port.

6. TCP 플로우(fa)의 근원지 IP 주소와 근원지 포트번호가 TCP 플로우(fb)의 근원지 IP 주소와 근원지 포트 번호와 같으면, TCP 플로우(fa)와 TCP 플로우(fb)의 중요포트는 근원지 포트이다. 6. TCP flows (f a) is a source IP address and source port number the same as the source IP address and source port number of a TCP flow (f b) of, TCP flows (f a) and the TCP port of the critical flow (f b) Is the source port.

7. TCP 플로우(fa)의 목적지 IP 주소와 목적지 포트번호가 TCP 플로우(fb)의 목적지 IP 주소와 목적지 포트번호와 같다면, TCP 플로우(fa)와 TCP 플로우(fb)의 중요포트는 목적지 포트이다. 7. TCP flow if the destination IP address and destination port number of the (f a) equal to the destination IP address and destination port number of the TCP flow (f b), TCP flows (f a) and the importance of the TCP flow (f b) The port is the destination port.

한편, 응용별 트래픽 타입 관리부(300)는 도 4에 도시된 바와 같이, 트래픽 타입 분류표(301)와, 응용별 트래픽 타입 조사부(302)와, 트래픽 타입 정보 테이블(303)을 포함한다.Meanwhile, as illustrated in FIG. 4, the traffic type management unit 300 for each application includes a traffic type classification table 301, an application type traffic type investigation unit 302, and a traffic type information table 303.

트래픽 타입 분류표(301)는 도 4 및 도 5에 도시된 바와 같이, 현재 인터넷 응용 프로그램들의 트래픽 발생 형태를 5가지 타입, 즉 Type S-F-2, Type M-F-2, Type M-D-2, Type M-F-3, Type M-D-3으로 분류하고 있다. As shown in FIGS. 4 and 5, the traffic type classification table 301 shows five types of traffic generation patterns of current Internet applications, namely Type SF-2, Type MF-2, Type MD-2, and Type MF. -3, Type MD-3.

이러한 5가지 트래픽 타입 분류표는 일반 사용자 설치 프로그램의 입장에서 분류한 것으로, 분류에 필요한 항목으로는 "얼마나 많은 세션을 여는가", 그리고, "포트 번호의 사용은 고정/변동인가", 더불어 "얼마나 많은 호스트와 통신을 하는 가" 의 기준으로 분류하고 있다. These five traffic type classification tables are classified from the point of view of the general user installation program. The items required for classification are "how many sessions are opened", and "how is the use of port numbers fixed / variable", and "how many Are communicating with many hosts. "

즉, 도 5를 참조하면, Type S-F-2는 고정된 포트 번호를 사용하여 하나의 상대 호스트와 하나의 세션을 열어서 서비스를 제공하는 응용 프로그램으로서, 세션 수는 싱글(Single)이고, 고정 포트를 사용하며, 서비스를 위한 통신 호스트 수는 두 호스트 사이이며, 적용 예로는 Web, telnet, ssh, smtp, snmp, nntp 등의 통신 프로토콜을 이용하는 전통적인 인터넷 기반 응용 프로그램들이 여기에 속한다. That is, referring to FIG. 5, Type SF-2 is an application program that provides a service by opening a session with one partner host using a fixed port number. The number of sessions is single and a fixed port is used. The number of communication hosts for the service is between two hosts. Examples of applications include traditional Internet-based applications using communication protocols such as Web, telnet, ssh, smtp, snmp, and nntp.

다음으로, Type M-F-2는 고정된 포트번호를 하나의 상태 호스트와 2개 이상의 세션을 열어서 서비스를 제공하는 응용 프로그램으로서, 세션 수는 멀티(Multiple)이고, 고정 포트를 사용하며, 서비스를 위한 통신 호스트 수는 두 호스트 사이이며, 적용 예로는 active-mode FTP 서비스이다. 여기서, active-mode FTP 서비스는 컨트롤 세션으로 21번 포트를 사용하고, 20번 포트를 데이터 전송 세션으로 사용한다. Next, Type MF-2 is an application that provides a service by opening two or more sessions with a single host and a fixed port number. The number of sessions is multiple, uses a fixed port, The number of communication hosts is between two hosts. An example application is the active-mode FTP service. Here, the active-mode FTP service uses port 21 as the control session and port 20 as the data transfer session.

다음으로, Type M-D-2는 하나의 상대 호스트와 연결하여 두개 이상의 세션을 열고, 동적으로 생성된 포트 번호를 사용하여 서비스를 제공하는 응용 프로그램으로서, 세션 수는 멀티(Multiple)이고, 변동 포트를 사용하며, 서비스를 위한 통신 호스트 수는 두 호스트 사이이며, 적용 예로는 Passive mode FTP 서비스와, Streaming Applications(Quicktime), 마이크로 소프트의 Windows Media Streaming 서비스를 들 수 있다. 이중 Windows Media Streaming 서비스는 TCP 포트 1755번을 컨트롤 세션으로 사용하여 멀티미디어 전송을 위한 데이터 세션의 포트 번호를 동적으로 결정하고, 결정된 데이터 세션을 통하여 멀티미디어 데이터를 전송하는 방 식으로 서비스를 제공한다. Next, Type MD-2 is an application program that connects with one partner host to open two or more sessions and provides services using dynamically generated port numbers. The number of sessions is multiple, The number of communication hosts for the service is between two hosts. Examples include passive mode FTP service, Streaming Applications (Quicktime), and Microsoft's Windows Media Streaming service. The Windows Media Streaming service uses TCP port 1755 as a control session to dynamically determine the port number of the data session for multimedia transmission and to provide multimedia services through the determined data session.

다음으로, Type M-F-3은 둘 이상의 상대 호스트와 통신을 하고, 고정된 포트 번호를 사용하며, 둘 이상의 세션을 형성하는 응용 프로그램으로서, 세션 수는 멀티(Multiple)이고, 고정 포트를 사용하며, 서비스를 위한 통신 호스트 수는 세 호스트 이상이며, 적용 예로는 Instant messaging P2P application(Soribada), File sharing P2P(Gnutella Direct Connect), Game application(starcraft, Diablo)등과 같이 P2P 응용 프로그램, 인터넷 게임들이 이러한 형태를 취하고 있다. Next, Type MF-3 is an application that communicates with two or more counterpart hosts, uses a fixed port number, and establishes two or more sessions. The number of sessions is multiple, uses a fixed port, The number of communication hosts for the service is more than three hosts. Examples of applications include P2P applications and Internet games such as Instant messaging P2P application (Soribada), File sharing P2P (Gnutella Direct Connect), and Game application (starcraft, Diablo). Is taking.

마지막으로, Type M-D-3은 보다 발전된 P2P 응용 프로그램으로서, 세션 수는 멀티(Multiple)이고, 변동 포트를 사용하며, 서비스를 위한 통신 호스트 수는 세 호스트 이상이며, 적용 예로는 Instant messaging P2P(MSN messenger), File sharing P2P(Kazaa, Kazaa Lite), Game application(Counter-Strike), Internet Disk(popdisk, webhard) 등의 형태를 취하고 있다. Finally, Type MD-3 is a more advanced P2P application, where the number of sessions is multiple, uses variable ports, the number of communication hosts for the service is three or more hosts, and the application example is Instant messaging P2P (MSN). messenger), File sharing P2P (Kazaa, Kazaa Lite), Game application (Counter-Strike), Internet Disk (popdisk, webhard) and the like.

상술한 바와 같이, 규정된 트래픽 타입 분류표(301)를 바탕으로 응용별 트래픽 타입 조사부(302)는 현재 사용되는 다양한 인터넷 기반 응용 프로그램들의 동작 및 트래픽 발생 형태를 패킷 캡쳐 및 분석 도구를 이용하여 응용별 트래픽 타입의 조사를 실시하여 트래픽 타입 정보 테이블(303)에 제공한다. As described above, based on the defined traffic type classification table 301, the application-specific traffic type investigation unit 302 applies the operation and traffic generation forms of various Internet-based applications currently used by using a packet capture and analysis tool. Investigation of each traffic type is provided to the traffic type information table 303.

트래픽 타입 정보 테이블(303)은 응용별 트래픽 타입 조사부(302)에 의해 조사된 각 응용 프로그램 별로 조사된 트래픽 타입 정보(S5), 즉 응용 프로그램 이름, 대표 포트 번호, TCP 고정 포트 번호, UDP 고정 포트 번호, 트래픽 타입 등을 기록한다. 여기서, TCP 고정 포트 번호는 응용 프로그램이 고정적으로 사용하는 TCP 포트 번호이고, UDP 고정 포트 번호는 응용 프로그램이 고정적으로 사용하는 UDP 포트번호이며, 대표 포트번호는 각 응용 프로그램을 대표할 수 있는 포트 번호로 임의로 정하되, 다른 응용 프로그램의 대표 포트번호와 중복되지 않게 정한다. The traffic type information table 303 includes traffic type information S5 investigated for each application surveyed by the application-specific traffic type research unit 302, that is, application name, representative port number, TCP fixed port number, and UDP fixed port. Record the number, traffic type, etc. Here, the TCP fixed port number is a TCP port number fixedly used by the application, the UDP fixed port number is a UDP port number fixedly used by the application, and the representative port number is a port number that can represent each application. Set arbitrarily, but do not overlap with the representative port number of other applications.

도 6을 참조하면, 앞서 설명한 대표적인 인터넷 응용 프로그램들의 트래픽 타입 정보(S5)를 나타낸 것이다. 즉 응용 프로그램 이름이 WWW, Telnet, FTP, MSN Messenger, Yahoo Messenger, Windows Media, Real Media, KaZaA, Soribada, eDonkey, Guruguru, V-share, Shareshare 등과 같이 많지만, 이중 WWW의 경우만 설명하면, 대표 포트 번호는 80이고, TCP 고정 포트 번호는 80, 8080, 443을 고정으로 사용하며, 트래픽 타입은 Type S-F-2이다. Referring to FIG. 6, traffic type information S5 of representative Internet applications described above is shown. In other words, there are many application names such as WWW, Telnet, FTP, MSN Messenger, Yahoo Messenger, Windows Media, Real Media, KaZaA, Soribada, eDonkey, Guruguru, V-share, Shareshare, etc. The number is 80, the TCP fixed port number is 80, 8080, 443, and the traffic type is Type SF-2.

응용별 트래픽 분류 결정부(400)는 도 7에 도시된 바와 같이, 플로우 특성 기반 그룹화 블록(401)과, 플로우 위치 기반 그룹화 블록(402), 응용별 플로우 정보 테이블(403)을 포함한다.As illustrated in FIG. 7, the traffic classification determiner 400 for each application includes a flow characteristic based grouping block 401, a flow location based grouping block 402, and an application specific flow information table 403.

플로우 특성 기반 그룹화 블록(401)은 플로우 정보 생성부(100)내 플로우 정보 테이블(103)에 저장된 중요 포트로 결정된 플로우 정보(S3)와, 응용별 트래픽 타입 관리부(300)내 트래픽 타입 정보 테이블(303)에 저장된 트래픽 타입 정보(S5) 간의 플로우들의 특성적, 위치적 상관관계와 3가지 가정(SS2)을 기반으로 그룹화를 실시한다. 여기서, 3가지 가정(SS2)은, 첫째, 플로우(fa)가 어떤 응용 프로그램(Aa)에 속한다면, 그 플로우(fa)의 역방향 플로우(rfa) 역시 같은 응용 프로그램(A a)에 속하는 가정이고, 둘째, 플로우(fa)와 플로우(fb)가 서로 근원지 IP 주소, 근원지 포트번호, 트랜스포트 프로토콜이 같다면, 두 플로우(fa)(fb)는 같은 응용 프로그램에 속하는 가정이며, 셋째, 플로우(fa)와 플로우(fb)가 서로 목적지 IP 주소, 목적지 포트번호, 트랜스포트 프로토콜이 같다면, 두 플로우(fa)(fb)는 같은 응용 프로그램에 속하는 가정이다. The flow characteristic based grouping block 401 includes the flow information S3 determined as an important port stored in the flow information table 103 in the flow information generation unit 100 and the traffic type information table in the application-specific traffic type management unit 300 ( Grouping is performed based on the characteristic and positional correlation of the flows between the traffic type information S5 stored in 303 and three assumptions SS2. Here, three assumptions (SS2) is, first, the flow (f a) that if in a certain application (A a), the flow (f a) reverse flow (r f a) is also the same application (A a of ), And second, if flows (f a ) and (f b ) are the same source IP address, source port number, and transport protocol, then both flows (f a ) (f b ) are the same application. If the flows (f a ) and (f b ) are the same destination IP address, destination port number, and transport protocol, then the two flows (f a ) (f b ) must be in the same application. It is a family belonging.

즉, 플로우 특성 기반 그룹화 블록(401)은 상술한 바와 같은 가정에 따라 플로우들을 그룹화 하는데, 그 과정은, 도 8의 프로그램 예시와 같이 스택을 이용하여 반복적 방식으로 구현한다. 여기서, 반복적 방식은 재귀적 방식에 비해 많은 수의 플로우 정보들을 그룹화 하는데 시간적 절약을 할 수 있다. That is, the flow characteristic based grouping block 401 groups the flows according to the assumptions described above, and the process is implemented in an iterative manner using a stack as in the program example of FIG. 8. Here, the iterative method can save time in grouping a large number of flow information as compared to the recursive method.

한편, 상술한 3가지 가정(SS2)은 UDP 플로우들에게는 그대로 적용이 되나 TCP 플로우들은 중요포트를 제외한 나머지 포트를 "0"으로 설정되었기 때문에 그대로 적용할 수 없다. 또한 UDP 통신의 특징이 하나의 응용 프로그램이 UDP 포트를 열고 이를 통하여 여러 호스트와 패킷의 수신 및 발신을 동시에 할 수 있기 때문에 적용할 수 있지만, TCP 통신의 경우 서버 포트는 동시에 다수의 호스트와 통신을 할 수 있지만 클라이언트 포트는 하나의 호스트와만 통신 할 수 있기 때문에 3가지 가정(SS2)을 그대로 적용할 수 없다.Meanwhile, the above three assumptions (SS2) are applied to UDP flows as they are, but TCP flows cannot be applied as they are set to "0" except for the important ports. Also, the characteristics of UDP communication can be applied because a single application can open a UDP port and receive and send packets with multiple hosts at the same time. However, in the case of TCP communication, the server port can communicate with multiple hosts at the same time. Although the client port can communicate with only one host, the three assumptions (SS2) cannot be applied as it is.

이에, 플로우 특성 기반 그룹화 블록(401)은 TCP 플로우의 경우에서 변화된 5가지 가정(SS3)을 바탕으로 TCP 플로우들 사이의 그룹화를 실시한다. 여기서, 5가지 가정(SS3)은, 첫째, TCP 플로우(fa)가 어떤 응용 프로그램(Aa)에 속한다면, 그 TCP 플로우(fa)의 역방향 TCP 플로우(rfa) 역시 같은 응용 프로그램(Aa )에 속한다는 가정이고, 둘째, TCP 플로우(fa)의 근원지 포트번호가 "0"이고, TCP 플로우(fa )와 TCP 플로우(fb)가 근원지 IP 주소, 근원지 포트번호, 목적지 포트번호가 같다면, 두 TCP 플로우(fa)(fb)는 같은 응용 프로그램에 속한다는 가정이며, 셋째, TCP 플로우(fa)의 근원지 포트번호가 "0"이고, TCP 플로우(fa)와 TCP 플로우(fb )가 목적지 IP 주소, 근원지 포트번호, 목적지 포트번호가 같다면, 두 TCP 플로우(fa)(fb)는 같은 응용 프로그램에 속한다는 가정이며, 넷째, TCP 플로우(fa)의 목적지 포트번호가 "0"이고, TCP 플로우(fa)와 TCP 플로우(fb)가 근원지 IP 주소, 근원지 포트번호, 목적지 포트번호가 같다면, 두 TCP 플로우(fa)(fb)는 같은 응용 프로그램에 속한다는 가정이며, 다섯째, TCP 플로우(fa)의 목적지 포트번호가 "0"이고, TCP 플로우(fa )와 TCP 플로우(fb)가 목적지 IP 주소, 근원지 포트번호, 목적지 포트번호가 같다면, 두 TCP 플로우(fa)(fb)는 같은 응용 프로그램에 속한다는 가정이다. Accordingly, the flow characteristic based grouping block 401 performs grouping between TCP flows based on five assumptions SS3 changed in the case of TCP flows. Here, the five assumptions (SS3) are: First, if the TCP flow (f a ) belongs to a certain application (A a ), the reverse TCP flow ( r f a ) of that TCP flow (f a ) is also the same application program (A a ), secondly, the source port number of the TCP flow (f a ) is "0", and the TCP flow (f a ) and the TCP flow (f b ) are the source IP address, the source port number, If the destination port number is the same, it is assumed that the two TCP flows (f a ) (f b ) belong to the same application program. Third, the source port number of the TCP flow (f a ) is "0", and the TCP flow (f If a ) and the TCP flow (f b ) have the same destination IP address, source port number, and destination port number, the assumption is that the two TCP flows (f a ) (f b ) belong to the same application. (f a) of the destination port number is set to "0", and, TCP flows (f a) and TCP flow (f b) is the source IP address, source port number, destination port number If it is the same, two TCP flows (f a) (f b) is the home, and the fifth, TCP flows (f a) destination port number is set to "0", the belong to the same application, TCP flows (f a) and TCP If flow f b has the same destination IP address, source port number, and destination port number, it is assumed that two TCP flows f a (f b ) belong to the same application.

플로우 위치 기반 그룹화 블록(402)은 플로우 특성 기반 그룹화 블록(401)에 의해 생성된 각각의 그룹들에 속하는 플로우들은 같은 응용 프로그램에 의해 생성된 플로우들이지만, 이러한 그룹들이 독립된 응용 프로그램에 의해 생성된 것으로 볼 수 없다. 즉, 하나의 응용프로그램이 TCP와 UDP 프로토콜을 동시에 사용하는 경 우도 있고, 다수의 포트 번호를 사용하는 경우도 많기 때문에, 응용 프로그램에 의해 생성된 플로우들이지만 서로 다른 그룹으로 만들어진 것들을 통합하기 위하여 필요한 그룹화 블록이다. Flow position based grouping block 402 is a flow belonging to each of the groups generated by flow characteristic based grouping block 401 are flows generated by the same application, but these groups are generated by an independent application. Can not be seen as. In other words, one application can use both the TCP and UDP protocols at the same time, and many port numbers can be used. Therefore, the flows generated by the application are necessary to integrate the different groups. Is a grouping block.

플로우 위치기반 그룹화 블록(402)은 플로우 특성 기반 그룹화 블록(401)에 의해 그룹화된 플로우 그룹들을 전달받고, 응용 트래픽 타입 관리부(300)의 트래픽 타입 정보 테이블(303)로부터 트래픽 타입 정보(S5)를 전달받아 고정 포트 응용 결정부(251)와 변동 포트 응용 결정부(252)를 순차적으로 수행하여 같은 응용 프로그램에 의해 생성된 그룹들을 구분하여 그룹화한다. The flow location based grouping block 402 receives the flow groups grouped by the flow characteristic based grouping block 401 and receives the traffic type information S5 from the traffic type information table 303 of the application traffic type management unit 300. The fixed port application determiner 251 and the variable port application determiner 252 are sequentially executed to classify and group the groups generated by the same application.

고정 포트 응용 결정부(251)는 트래픽 타입 정보(S5)중 Type S-F-2, Type M-F-2, Type M-F-3에 속하는 응용 프로그램 트래픽을 구분하여 응용 프로그램의 이름을 결정한다. 즉 3가지 타입들은 고정 포트번호를 사용하기 때문에 트래픽 타입 정보의 TCP 고정 포트번호와 UDP 고정 포트 번호를 이용하여 결정하므로, 이렇게 응용 프로그램이 결정된 플로우들은 그 응용 프로그램의 이름을 기록한 응용 플로우 정보(S6)로 갱신하여 응용 플로우 정보 테이블(403)에 제공한다. The fixed port application determination unit 251 determines the name of the application program by classifying application program traffic belonging to Type S-F-2, Type M-F-2, and Type M-F-3 among the traffic type information S5. That is, since the three types use the fixed port number, the TCP type is determined using the TCP fixed port number and the UDP fixed port number of the traffic type information. Thus, the flows determined by the application are the application flow information (S6) recording the name of the application. ) Is provided to the application flow information table 403.

변동 포트 응용 결정부(252)는 변동 포트번호를 사용하는 응용 프로그램들의 플로우를 결정하는 블록으로서, 2가지 확률적 가정 정보(SS4)를 바탕으로 결정한다. 즉, 고정 포트 응용 결정부(251)에 의해 응용 프로그램이 결정되지 않은 플로우 그룹들과 2가지 확률적 가정 정보(SS4)와 트래픽 타입 정보(S5)내 Type M-D-2 및 Type M-D-3의 내용을 바탕으로 응용 프로그램들의 플로우를 결정하여 응용별 플로우 정보 테이블(403)에 제공한다. 여기서, 2가지 확률적 가정 정보(SS4)는, 첫 째, 같은 시간에 서로 다른 두 호스트에서 생성된 두 플로우는 같은 응용 프로그램에 의해 생성될 확률이 제일 높은 것으로 가정하며, 둘째, 같은 시간에 하나의 호스트에서 생성된 두 플로우는 같은 응용 프로그램에 의해 생성될 확률이 제일 높은 것으로 가정한다. The variable port application determiner 252 is a block for determining the flow of application programs using the variable port number, and is determined based on two probabilistic assumption information SS4. That is, the contents of Type MD-2 and Type MD-3 in the flow groups and two probabilistic hypothesis information SS4 and traffic type information S5 for which the application is not determined by the fixed port application determination unit 251. Based on this, the flow of application programs is determined and provided to the application-specific flow information table 403. Here, two probabilistic assumption information (SS4), first, assume that two flows generated by two different hosts at the same time are most likely to be generated by the same application, and second, one at the same time. It is assumed that the two flows generated by the host of are most likely to be generated by the same application.

또한, 변동 포트 응용 결정부(252)는 확률적 가정 정보(SS4)를 구현하기 위하여 도 9에 도시된 바와 같이 각 플로우 그룹들 사이의 그룹 가중치(351)(W(Ga, Gb))를 계산하는데, 이 그룹 가중치(351)는 두 그룹에 속한 플로우들 사이의 플로우 가중치(352)(w(fa, fb))를 기반으로 계산한다. 여기서, 플로우 가중치(352)는 수학식 1에 의해 계산되며, 그룹 가중치(351)는 수학식 2에 의해 계산된다. In addition, the variable port application determining unit 252 calculates the group weight 351 (W (Ga, Gb)) between the flow groups as shown in FIG. 9 to implement the stochastic hypothesis information SS4. This group weight 351 is calculated based on the flow weight 352 (w (fa, fb)) between flows belonging to the two groups. Here, the flow weight 352 is calculated by Equation 1, and the group weight 351 is calculated by Equation 2.

Figure 112004055900131-PAT00001
Figure 112004055900131-PAT00001

Figure 112004055900131-PAT00002
Figure 112004055900131-PAT00002

한편, 모든 플로우 그룹들 사이에 그룹 가중치(351)를 계산한 다음에, 수학식 3을 만족할 경우, 임계치를 정하여 그룹 가중치(351)가 특정 임계치를 넘으면 두 그룹을 하나의 플로우 그룹(Ga, Gb)으로 합한다.On the other hand, after calculating the group weight 351 between all flow groups, if the equation (3) is satisfied, if the threshold is determined by the group weight 351 exceeds a certain threshold, the two groups in one flow group (Ga, Gb Sum).

Figure 112004055900131-PAT00003
Figure 112004055900131-PAT00003

여기서, 임계치를 정하는 것은 네트워크 상황에 따라 약간의 차이를 두고 달라질 수 있지만, 기본 값으로 "50"을 사용하며, 플로우 그룹들을 그룹 가중치를 기반으로 통합한 다음 트래픽 타입 정보를 바탕으로 그룹들의 응용 프로그램을 결정한다.  Here, setting the threshold may vary with a slight difference depending on the network situation, but using "50" as a default value, integrating flow groups based on group weight, and then applying the group's application based on traffic type information. Determine.

응용별 플로우 정보 테이블(403)은 플로우 위치 기반 그룹화 블록(402)으로부터 제공되는 응용 프로그램이 결정된 플로우 그룹의 플로우들은 플로우 시작 시간, 플로우 끝 시간, 근원지 IP 주소, 목적지 IP 주소, 근원지 포트 번호, 목적지 포트 번호, 프로토콜 번호, 패킷 개수, 플로우 길이, 대표 포트 번호등으로 이루어진 응용 플로우 정보(S6)로 내용을 갱신하여 저장한다. 이와 같은 과정을 통하여 변통 포트를 사용하는 응용 프로그램들의 트래픽을 정확하게 결정할 수 있다. 즉, 응용별 플로우 정보 테이블(403)에 저장된 플로우 정보들은 응용 프로그램의 대표 포트 정보를 가지고 있기 때문에 향후 플로우 정보의 응용 수준 상세 분석을 위한 기초 자료로 활용될 수 있다. The application-specific flow information table 403 indicates that flows in the flow group for which the application provided from the flow location based grouping block 402 are determined include flow start time, flow end time, source IP address, destination IP address, source port number, and destination. The contents are updated and stored with the application flow information (S6) consisting of a port number, a protocol number, a packet number, a flow length, a representative port number, and the like. Through this process, it is possible to accurately determine the traffic of application programs using the variable port. That is, since the flow information stored in the application-specific flow information table 403 has representative port information of the application program, it can be used as basic data for further analysis of the application level of the flow information in the future.

또한, 본 발명의 사상 및 특허청구범위 내에서 권리로서 개시하고 있으므로, 본원 발명은 일반적인 원리들을 이용한 임의의 변형, 이용 및/또는 개작을 포함할 수도 있으며, 본 명세서의 설명으로부터 벗어나는 사항으로서 본 발명이 속하는 업계에서 공지 또는 관습적 실시의 범위에 해당하고 또한 첨부된 특허청구범위의 제한 범위 내에 포함되는 모든 사항을 포함한다. In addition, since the present invention is disclosed as a right within the spirit and claims of the present invention, the present invention may include any modification, use and / or adaptation using general principles, and the present invention as a matter deviating from the description herein It includes everything that falls within the scope of known or customary practice in the art to which it belongs and falls within the scope of the appended claims.

이상, 상기에서 설명한 바와 같이, 본 발명은 TCP/IP 기반의 인터넷 네트워크 모니터링 지점을 지나는 패킷을 수집하여 플로우 단위로 압축하고, 압축된 플로우 정보의 근원지 포트번호와 목적지 포트번호 중에서 응용 프로그램의 결정에 중요한 영향을 미치는 중요 포트번호를 결정하고, 인터넷 응용 프로그램들의 트래픽 발생형태를 규정하는 트래픽 분류표를 만들며, 실재 응용 프로그램들을 조사하여 응용별 트래픽 타입 정보를 만들며, 이 플로우 정보를 바탕으로 이들 사이의 특성적 상관관계와 위치적 상관관계를 분석하여 응용별 트래픽 타입 정보를 바탕으로 플로우의 응용프로그램을 결정하여 IP 트래픽을 분석함으로써, 기존에 국지적으로 사용되었던 포트번호를 기반으로 하는 전통적인 과정과 페이로드 분석 기반 및 시그니쳐 분석 기반의 응용 수준 트래픽 분석의 한계를 극복할 수 있어 네트워크 트래픽 상태를 보다 명확히 파악할 수 있는 효과가 있다. As described above, the present invention collects packets passing through a TCP / IP-based Internet network monitoring point and compresses them in flow units, and determines the application program from the source port number and the destination port number of the compressed flow information. Determining important port numbers that have a significant impact, creating a traffic classification table defining the traffic generation patterns of Internet applications, surveying actual applications to create application-specific traffic type information, and based on this flow information Traditional process and payload based on the port number previously used locally by analyzing the characteristic correlation and positional correlation and analyzing the IP traffic by determining the application of the flow based on the traffic type information for each application. Analysis based and signature analysis based response Overcoming the limitations of content-level traffic analysis can provide a clearer picture of network traffic conditions.

Claims (22)

인터넷 프로토콜(IP) 네트워크 환경에서의 트래픽 분석장치로서, As a traffic analysis device in an Internet protocol (IP) network environment, 상기 네트워크 모니터링 지점을 지나는 패킷들을 수집하고, 상기 수집된 패킷에 해당하는 플로우 정보를 생성하는 플로우 정보 생성부와,A flow information generator for collecting packets passing through the network monitoring point and generating flow information corresponding to the collected packets; 상기 수집된 패킷들로부터 서버 포트 정보를 생성하고, 상기 생성된 서버 포트 정보를 바탕으로, 상기 플로우 정보 중에서 TCP 플로우에 대한 서버 포트를 결정하는 플로우 중요 포트 결정부와,A flow critical port determination unit which generates server port information from the collected packets and determines a server port for a TCP flow among the flow information based on the generated server port information; IP 트래픽을 발생시키는 응용들을 분석하며, 상기 분석된 각 응용들의 트래픽 타입 정보를 트래픽 타입 정보 테이블에 저장하는 응용별 트래픽 타입 관리부와, An application-specific traffic type management unit for analyzing applications generating IP traffic and storing traffic type information of each analyzed application in a traffic type information table; 상기 플로우 정보와 응용별 트래픽 타입 정보를 이용하여 플로우들 사이의 특성적 상관관계와 위치적 상관관계를 바탕으로 상기 플로우들의 응용 프로그램을 결정하여 응용별 플로우 정보 테이블에 저장하는 응용별 트래픽 분류 결정부Traffic classification determination unit for each application that determines the application program of the flows based on the characteristic correlation and positional correlation between the flows using the flow information and application-specific traffic type information and store in the application-specific flow information table 를 포함하는 IP 네트워크 환경에서의 트래픽 분석장치.Traffic analysis device in the IP network environment comprising a. 제 1 항에 있어서, The method of claim 1, 상기 플로우 정보 생성부는, The flow information generation unit, 상기 네트워크 모니터링 지점을 통해 수신되는 패킷의 헤더 정보를 추출하는 패킷 수집부와,A packet collector extracting header information of a packet received through the network monitoring point; 상기 추출된 패킷 헤더 정보를 이용하여 일정 시간동안 같은 근원지 IP주소, 목적지 IP 주소, 근원지 포트번호, 목적지 포트번호, 프로토콜 번호를 갖는 패킷별 정보를 통합시켜 플로우 정보를 생성하는 플로우 생성부와, A flow generation unit for generating flow information by integrating packet-specific information having the same source IP address, destination IP address, source port number, destination port number, and protocol number for a predetermined time using the extracted packet header information; 상기 생성된 플로우 정보를 저장하는 플로우 정보 테이블을 포함하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.And a flow information table for storing the generated flow information. 제 2 항에 있어서, The method of claim 2, 상기 패킷 수집부는, The packet collection unit, 상기 네트워크 모니터링 지점을 지나는 패킷을 캡쳐하여 수집하는 수집 필터부와,A collection filter unit for capturing and collecting packets passing through the network monitoring point; 상기 수집된 패킷이 단편화되지 않은 패킷일 경우, 상기 패킷의 헤더를 분석해 트래픽 분석에 필요한 패킷 헤더 정보를 추출하는 헤더 정보 추출부와,A header information extracting unit for extracting packet header information necessary for traffic analysis by analyzing a header of the packet when the collected packet is an unfragmented packet; 상기 수집된 패킷이 단편화된 패킷일 경우, 상기 패킷을 재조립하는 패킷 재조립부를 포함하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.And a packet reassembly unit for reassembling the packet when the collected packet is a fragmented packet. 제 2 항에 있어서, The method of claim 2, 상기 플로우 생성부는, 상기 수집된 패킷이 기존 플로우에 존재할 경우, 상기 플로우 정보 테이블에 해당 플로우의 패킷 수와 플로우 길이 정보를 갱신하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.The flow generating unit, when the collected packet exists in the existing flow, traffic analysis apparatus in the IP network environment, characterized in that for updating the packet number and flow length information of the flow in the flow information table. 제 4 항에 있어서, The method of claim 4, wherein 상기 플로우 생성부는, 상기 수집된 패킷이 기존 플로우에 존재하지 않으면, 상기 수집된 패킷을 새로운 플로우로 생성시킨 플로우 정보를 상기 플로우 정보 테이블에 등록하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.The flow generating unit, if the collected packet does not exist in the existing flow, traffic analysis apparatus in the IP network environment, characterized in that for registering the flow information generated by the collected packet as a new flow in the flow information table. 제 5 항에 있어서, The method of claim 5, 상기 플로우 정보 테이블은, 상기 플로우 생성부에 의해 생성된 플로우별 플로우 시작 시간, 플로우 끝 시간, 근원지 IP 주소, 목적지 IP 주소, 근원지 포트 번호, 목적지 포트 번호, 프로토콜 번호, 패킷 갯수, 플로우 길이의 플로우 정보를 등록 저장하는 것을 특징으로 IP 네트워크 환경에서의 트래픽 분석장치.The flow information table includes flow start time, flow end time, source IP address, destination IP address, source port number, destination port number, protocol number, number of packets, and flow length for each flow generated by the flow generating unit. Traffic analysis device in the IP network environment, characterized in that for registering and storing information. 제 1 항에 있어서, The method of claim 1, 상기 플로우 중요 포트 결정부는, The flow critical port determination unit, 상기 네트워크 모니터링 지점을 지나는 패킷들을 수집하여 서버 포트 정보를 추출하는 SYN 패킷 수집부와, A SYN packet collector for extracting server port information by collecting packets passing through the network monitoring point; 상기 추출된 서버 포트 정보를 저장하는 서버 포트 정보 테이블과, A server port information table for storing the extracted server port information; 상기 서버 포트 정보 및 기 세팅된 임의의 가정을 바탕으로 상기 플로우 정보 테이블의 플로우의 근원지 포트번호와 목적지 포트번호 중에서 응용 프로그램을 결정하기 위한 중요포트를 결정하는 TCP 플로우 서버 포트 결정부를 포함하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.And a TCP flow server port determining unit for determining an important port for determining an application program among a source port number and a destination port number of the flow of the flow information table based on the server port information and predetermined assumptions. Traffic analysis device in an IP network environment. 제 7 항에 있어서, The method of claim 7, wherein 상기 SYN 패킷 수집부는, The SYN packet collection unit, 상기 네트워크 모니터링 지점을 지나는 패킷 중 TCP SYN 패킷, 혹은 TCP SYN-ACK 패킷을 수집하는 SYN 수집 필터부와,A SYN collection filter unit for collecting a TCP SYN packet or a TCP SYN-ACK packet among packets passing through the network monitoring point; 상기 SYN 수집 필터부로부터 인가되는 TCP SYN 패킷, 혹은 TCP SYN-ACK 패킷에서 서버 포트 정보를 추출하는 서버 포트 정보 추출부와, A server port information extracting unit extracting server port information from a TCP SYN packet or a TCP SYN-ACK packet applied from the SYN collection filter unit; 상기 서버 포트 정보만을 유지하도록 측정하는 타이머와,A timer measuring only to maintain the server port information; 상기 서버 포트 정보를 검사하여 정해진 갱신 시간을 초과할 경우, 갱신 처리를 마치고 다음 서버 포트 정보를 검사하는 서버 포트 정보 갱신부를 포함하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.And a server port information update unit for completing the update process and inspecting the next server port information when the server port information is inspected and the renewal time is exceeded. 제 7 항에 있어서, The method of claim 7, wherein 상기 서버 포트 정보 테이블은, 자체 테이블내의 서버 포트 정보의 존재 여부에 따라, 기존 서버 포트 정보가 존재하면 상기 서버 포트 정보 중에 패킷 탐지 시간을 갱신하며, 기존 서버 포트 정보가 존재하지 않으면 새로운 서버 포트정보를 생성하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.The server port information table updates the packet detection time in the server port information if the existing server port information exists according to the presence or absence of server port information in its own table, and if the existing server port information does not exist, the new server port information. Traffic analysis device in the IP network environment, characterized in that for generating a. 제 7 항에 있어서, The method of claim 7, wherein 상기 TCP 플로우 서버 포트 결정부는, The TCP flow server port determination unit, 상기 서버 포트 정보에서 TCP 플로우들을 추출하는 TCP 플로우 추출부와,A TCP flow extracting unit extracting TCP flows from the server port information; 상기 추출된 TCP 플로우의 포트를 상기 기 세팅된 임의의 가정, 즉 TCP 플로우(fa)의 근원지 IP 주소와 근원지 포트 번호가 서버 포트 정보 테이블에 존재하면 TCP 플로우(fa)의 근원지 포트 번호가 중요 포트 번호이고, TCP 플로우(fa)의 목적지 IP 주소와 목적지 포트 번호가 서버 포트 정보 테이블에 존재하면 TCP 플로우(fa)의 목적지 포트 번호가 중요 포트 번호이며, TCP 플로우(fa)의 중요포트가 결정되어 있으면, TCP 플로우(rfa)의 역방향 TCP 플로우의 중요포트도 결정되며, TCP 플로우(fa)의 중요 포트가 근원지 포트이며, TCP 플로우(fb)의 근원지 IP 주소와 근원지 포트 번호가 TCP 플로우(fa)의 근원지 IP 주소와 근원지 포트번호와 같다면 TCP 플로우의 중요포트는 근원지 포트이며, TCP 플로우(fa)의 중요 포트가 목적지 포트이고 TCP 플로우(fb)의 목적지 IP 주소와 목적지 포트 번호가 TCP 플로우(fa)의 목적지 IP 주소와 목적지 포트번호와 같다면 TCP 플로우의 중요포트는 목적지 포트이며, TCP 플로우(fa)의 근원지 IP 주소와 근원지 포트번호가 TCP 플로우(fb)의 근원지 IP 주소와 근원지 포트 번호와 같으면, TCP 플로우(fa)와 TCP 플로우(fb)의 중요포트는 근원지 포트이며, TCP 플로우(fa)의 목적지 IP 주소와 목적지 포트번호가 TCP 플로우(fb)의 목적지 IP 주소와 목적지 포트번호와 같다면, TCP 플로우(fa)와 TCP 플로우(fb)의 중요포트는 목적지 포트인 가정을 기준으로 판단하여 중요 포트를 결정하여 적용하는 가정 적용부와,The extracted home of said group setting the port any TCP flows, i.e., the TCP flows (f a) a source IP address and the source if the port number is present in the server port information table TCP flow source port number in (f a) of important is the port number, the TCP flow (f a) the destination IP address, and if the destination port number is present in the server's port information table TCP flows (f a) destination port number is important, the port number of the of the TCP flow (f a) If the critical port is determined, the critical port of the reverse TCP flow of the TCP flow ( r f a ) is also determined, and the critical port of the TCP flow (f a ) is the source port, and the source IP address of the TCP flow (f b ) if the source port number the same as the source IP address and source port number of TCP flows (f a) is important port of TCP flows and the source port, TCP flows (f a) is important port is the destination port in a TCP flow (f b) Destination If the IP address and destination port number are the same as the destination IP address and destination port number of the TCP flow (f a ), the critical port of the TCP flow is the destination port, and the source IP address and source port number of the TCP flow (f a ) are TCP. If the source IP address and source port number of the flow (f b ) are the same, the important ports of the TCP flow (f a ) and TCP flow (f b ) are the source port, and the destination IP address and destination port of the TCP flow (f a ) if number is equal to the destination IP address and destination port number of the TCP flow (f b), TCP flows (f a) and TCP flow (f b) of the important ports determine the critical port is determined based on the assumption of the destination port A home application unit that applies by 상기 적용된 TCP 플로우들을 검사하여 플로우들 사이에 플로우 내용이 중복된 경우, 상기 중복된 정보를 하나의 정보로 통합하여 상기 플로우 정보 테이블에 제공하는 중복성 검사 및 저장부를 포함하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.When the flow is duplicated between the flow by inspecting the applied TCP flows, IP network environment comprising a redundancy check and storage unit for integrating the duplicated information into a single information to provide to the flow information table Traffic analyzer at. 제 1 항에 있어서, The method of claim 1, 상기 응용별 트래픽 타입 관리부는, The traffic type management unit for each application, 인터넷 기반의 응용 프로그램들이 트래픽을 발생시키는 타입을 분류하는 트래픽 타입 분류표와,A traffic type classification table for classifying the types of traffic generated by Internet-based applications; 상기 응용 프로그램들이 고유의 서비스를 수행하기 위해 발생시키는 트래픽 타입 정보를 조사하는 응용별 트래픽 타입 조사부와, An application-specific traffic type investigation unit for examining traffic type information generated by the applications to perform a unique service; 상기 조사된 트래픽 타입 정보를 기록 저장하는 트래픽 타입 정보 테이블을 포함하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.And a traffic type information table for recording and storing the surveyed traffic type information. 제 11 항에 있어서, The method of claim 11, 상기 트래픽 타입 분류표는, 고정된 포트 번호를 사용하여 하나의 상대 호스트 및 세션을 열어 서비스하는 응용 프로그램 타입인 Type S-F-2와, 고정된 포트번 호를 사용하여 하나의 상태 호스트와 2개 이상의 세션을 열어 서비스하는 응용 프로그램 타입인 Type M-F-2와, 하나의 상대 호스트와 연결하여 두개 이상의 세션을 열고, 동적으로 생성된 포트 번호를 사용하여 서비스하는 응용 프로그램 타입인 Type M-D-2와, 둘 이상의 상대 호스트와 통신을 하고, 고정된 포트 번호를 사용하며, 둘 이상의 세션을 형성하는 응용 프로그램 타입인 Type M-F-3과, 둘 이상의 상태 호스트와 통신하고, 둘 이상의 세션을 형성하며, 동적으로 생성된 포트 번호를 사용하는 응용 프로그램 타입인 Type M-D-3으로 분류하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.The traffic type classification table is a type SF-2, which is an application type that opens and services a counterpart host and a session using a fixed port number, and a state host and two or more using a fixed port number. Type MF-2, the type of application that opens and services sessions, Type MD-2, the type of application that opens two or more sessions by connecting to one partner host and uses the dynamically generated port number. Type MF-3, an application type that communicates with more than one partner host, uses a fixed port number, and establishes more than one session, communicates with more than one state host, establishes more than one session, and dynamically creates Traffic analysis device in the IP network environment, characterized in that classified as Type MD-3, an application type using the port number. 제 11 항에 있어서, The method of claim 11, 상기 응용별 트래픽 타입 조사부는, 상기 트래픽 타입 분류표를 바탕으로, 인터넷 기반 응용 프로그램들의 동작 및 트래픽 발생 형태를 패킷 캡쳐 및 분석 도구를 이용하여 응용별 트래픽 타입 조사를 실시하여 트래픽 타입 정보 테이블에 기록하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.The traffic type investigation unit for each application conducts a traffic type investigation for each application by using a packet capture and analysis tool to record the operation and traffic generation patterns of Internet-based applications based on the traffic type classification table, and records them in a traffic type information table. Traffic analysis device in the IP network environment, characterized in that. 제 11 항에 있어서, The method of claim 11, 상기 트래픽 타입 정보는, 응용 프로그램 이름과, 상기 응용 프로그램을 대표하기 위한 포트번호인 대표 포트 번호와, 상기 응용 프로그램을 고정적으로 사용하기 위한 TCP 포트번호인 TCP 고정 포트 번호와, 상기 응용 프로그램을 고정적으로 사용하기 위한 UDP 포트번호인 UDP 고정 포트 번호와, 트래픽 타입으로 이루어 진 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.The traffic type information includes an application program name, a representative port number that is a port number for representing the application program, a TCP fixed port number that is a TCP port number for fixedly using the application program, and a fixed application program. Traffic analysis device in the IP network environment, characterized in that consisting of a UDP fixed port number, a UDP port number for use as a traffic type. 제 1 항에 있어서, The method of claim 1, 상기 응용별 트래픽 분류 결정부는,The traffic classification determination unit for each application, 상기 플로우 정보 테이블에 저장된 플로우 정보와, 트래픽 타입 정보 테이블에 저장된 트래픽 타입 정보간의 플로우들의 특성적, 위치적 상관관계를 기반으로 응용 프로그램별로 플로우들을 분류하여 그룹화하는 플로우 특성 기반 그룹화 블록과, A flow characteristic based grouping block for classifying and grouping flows by application based on characteristic and positional correlations of flows between flow information stored in the flow information table and traffic type information stored in a traffic type information table; 상기 플로우 특성 기반 그룹화 블록에 의해 그룹화된 플로우 그룹과, 상기 트래픽 타입 정보 테이블로부터 제공받은 트래픽 타입 정보를 이용하여 동일한 응용 프로그램별로 플로우 그룹을 통합하는 플로우 위치 기반 그룹화 블록과, A flow group grouped by the flow characteristic based grouping block, a flow location based grouping block for integrating flow groups for the same application by using the traffic type information provided from the traffic type information table; 상기 플로우 위치 기반 그룹화 블록에 의해 통합된 플로우 그룹의 플로우들을 응용 플로우 정보로 갱신하여 저장하는 응용별 플로우 정보 테이블을 포함하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.And an application-specific flow information table for updating and storing the flows of the flow group integrated by the flow location-based grouping block with application flow information. 제 15 항에 있어서, The method of claim 15, 상기 플로우 특성 기반 그룹화 블록은, 기 세팅된 임의의 제2가정, 즉 플로우(fa)가 어떤 응용 프로그램(Aa)에 속한다면, 그 플로우(fa)의 역방향 플로우(rfa) 역시 같은 응용 프로그램(Aa)에 속하는 가정이고, 플로우(fa)와 플로우(fb)가 서로 근원지 IP 주소, 근원지 포트번호, 트랜스포트 프로토콜이 같다면, 두 플로우(fa)(fb)는 같은 응용 프로그램에 속하는 가정이며, 플로우(fa)와 플로우(f b)가 서로 목적지 IP 주소, 목적지 포트번호, 트랜스포트 프로토콜이 같다면, 두 플로우(fa)(fb)는 같은 응용 프로그램에 속하는 가정을 기반으로 플로우들을 그룹화하며, 스택을 이용하여 반복적인 방식으로 그룹화하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.The flow characteristic-based grouping block may be configured such that if a second preset assumption, that is, flow f a belongs to a certain application A a , the reverse flow r f a of the flow f a is also If the flow belongs to the same application (A a ), and flows (f a ) and (f b ) are the same source IP address, source port number, and transport protocol, the two flows (f a ) (f b ) Are assumptions belonging to the same application, and if flows (f a ) and (f b ) have the same destination IP address, destination port number, and transport protocol, then both flows (f a ) (f b ) are the same application. A flow analysis apparatus in an IP network environment, wherein flows are grouped based on assumptions belonging to a program and grouped in a repetitive manner using a stack. 제 16 항에 있어서, The method of claim 16, 상기 플로우 특성 기반 그룹화 블록은, TCP 플로우의 경우, 변화된 임의의 제3가정, 즉 TCP 플로우(fa)가 어떤 응용 프로그램(Aa)에 속한다면, 그 TCP 플로우(fa)의 역방향 TCP 플로우(rfa) 역시 같은 응용 프로그램(Aa)에 속한다는 가정이고, TCP 플로우(fa)의 근원지 포트번호가 "0"이고, TCP 플로우(fa)와 TCP 플로우(f b)가 근원지 IP 주소, 근원지 포트번호, 목적지 포트번호가 같다면, 두 TCP 플로우(fa)(fb)는 같은 응용 프로그램에 속한다는 가정이며, TCP 플로우(fa)의 근원지 포트번호가 "0"이고, TCP 플로우(fa)와 TCP 플로우(fb)가 목적지 IP 주소, 근원지 포트번호, 목적지 포트번호가 같다면, 두 TCP 플로우(fa)(fb)는 같은 응용 프로그램에 속한다는 가정이며, TCP 플로우(fa)의 목적지 포트번호가 "0"이고, TCP 플로우(fa ) 와 TCP 플로우(fb)가 근원지 IP 주소, 근원지 포트번호, 목적지 포트번호가 같다면, 두 TCP 플로우(fa)(fb)는 같은 응용 프로그램에 속한다는 가정이며, TCP 플로우(fa )의 목적지 포트번호가 "0"이고, TCP 플로우(fa)와 TCP 플로우(fb)가 목적지 IP 주소, 근원지 포트번호, 목적지 포트번호가 같다면, 두 TCP 플로우(fa)(fb)는 같은 응용 프로그램에 속한다는 가정을 바탕으로 TCP 플로우들 사이의 그룹화를 실시하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.The flow characteristic based grouping block, in the case of a TCP flow, is a reverse TCP flow of the TCP flow f a if any third assumption changed, i.e., if the TCP flow f a belongs to an application A a . It is assumed that ( r f a ) belongs to the same application (A a ), the source port number of the TCP flow (f a ) is "0", and the TCP flow (f a ) and the TCP flow (f b ) originate. If the IP address, source port number, and destination port number are the same, it is assumed that the two TCP flows (f a ) (f b ) belong to the same application, and the source port number of the TCP flow (f a ) is "0". If the TCP flows (f a ) and TCP flows (f b ) have the same destination IP address, source port number, and destination port number, then the two TCP flows (f a ) (f b ) are assumed to belong to the same application. , The destination port number of the TCP flow (f a ) is "0", the IP address where the TCP flow (f a ) and the TCP flow (f b ) originates, If the source port number and the destination port number are the same, it is assumed that the two TCP flows (f a ) (f b ) belong to the same application, the destination port number of the TCP flow (f a ) is "0", and the TCP flow If (f a ) and TCP flow (f b ) have the same destination IP address, source port number, and destination port number, TCP flows based on the assumption that two TCP flows (f a ) (f b ) belong to the same application. Traffic analysis apparatus in an IP network environment, characterized in that grouping between flows. 제 15 항에 있어서, The method of claim 15, 상기 플로우 위치 기반 그룹화 블록은, 상기 트래픽 타입 정보 중 Type S-F-2, Type M-F-2, Type M-F-3에 속하는 응용 프로그램 트래픽을 구분하여 응용 프로그램의 이름을 결정하는 고정 포트 응용 결정부와, The flow location based grouping block may include a fixed port application determining unit configured to determine application names by classifying application traffic belonging to Type S-F-2, Type M-F-2, and Type M-F-3 among the traffic type information; 상기 고정 포트 응용 결정부에 의해 응용 프로그램이 결정되지 않은 플로우 그룹들과 기 세팅된 확률적 임의의 제4가정, 즉 같은 시간에 서로 다른 두 호스트에서 생성된 두 플로우는 같은 응용 프로그램에 의해 생성될 확률이 제일 높은 것으로 가정하며, 같은 시간에 하나의 호스트에서 생성된 두 플로우는 같은 응용 프로그램에 의해 생성될 확률이 제일 높은 것으로 가정하는 것을 적용하여 상기 트래픽 타입 정보 내 Type M-D-2 및 Type M-D-3의 내용을 바탕으로 응용 프로그램들의 플로우를 결정하는 변동 포트 응용 결정부를 포함하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.The flow groups for which the application is not determined by the fixed port application determiner and a predetermined random fourth assumption, that is, two flows generated at two different hosts at the same time, may be generated by the same application. It is assumed that the probability is the highest, and that two flows generated by one host at the same time are assumed to have the highest probability of being generated by the same application, thereby applying Type MD-2 and Type MD- in the traffic type information. Traffic analysis apparatus in the IP network environment comprising a variable port application determination unit for determining the flow of the application program based on the content of 3. 제 18 항에 있어서, The method of claim 18, 상기 변동 포트 응용 결정부는, 각 플로우 그룹들 사이의 그룹 가중치를 계산하고, 특정 임계치를 두어 그룹 가중치가 특정 임계치를 넘을 경우, 플로우 그룹들을 통합하는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.The variable port application determination unit calculates a group weight between each flow group, and sets a specific threshold, when the group weight exceeds a specific threshold, the traffic analysis apparatus in the IP network environment, characterized in that for merging the flow groups. 제 19 항에 있어서, The method of claim 19, 상기 그룹 가중치는, 두 그룹에 속한 플로우들 사이의 플로우 가중치를 기반으로 계산되는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.The group weight is calculated based on the flow weight between flows belonging to two groups. 제 20 항에 있어서, The method of claim 20, 상기 플로우 가중치는, The flow weight is,
Figure 112004055900131-PAT00004
Figure 112004055900131-PAT00004
의 수학식에 의해 계산되며, Is calculated by
Figure 112004055900131-PAT00005
상 기 그룹 가중치는,
Figure 112004055900131-PAT00005
The group weight is
의 수학식에 의해 계산되는 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.Traffic analysis apparatus in the IP network environment, characterized in that calculated by the equation.
제 15 항에 있어서, The method of claim 15, 상기 응용 플로우 정보는, 플로우 시작 시간, 플로우 끝 시간, 근원지 IP 주소, 목적지 IP 주소, 근원지 포트 번호, 목적지 포트 번호, 프로토콜 번호, 패킷 개수, 플로우 길이, 대표 포트 번호로 이루어진 것을 특징으로 하는 IP 네트워크 환경에서의 트래픽 분석장치.The application flow information is an IP network comprising a flow start time, flow end time, source IP address, destination IP address, source port number, destination port number, protocol number, packet number, flow length, and representative port number. Traffic analysis device in the environment.
KR1020040098597A 2004-11-29 2004-11-29 Apparatus for traffic identification on internet protocol network environment KR100710047B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040098597A KR100710047B1 (en) 2004-11-29 2004-11-29 Apparatus for traffic identification on internet protocol network environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040098597A KR100710047B1 (en) 2004-11-29 2004-11-29 Apparatus for traffic identification on internet protocol network environment

Publications (2)

Publication Number Publication Date
KR20060059493A true KR20060059493A (en) 2006-06-02
KR100710047B1 KR100710047B1 (en) 2007-04-20

Family

ID=37156678

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040098597A KR100710047B1 (en) 2004-11-29 2004-11-29 Apparatus for traffic identification on internet protocol network environment

Country Status (1)

Country Link
KR (1) KR100710047B1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100965452B1 (en) * 2009-10-16 2010-06-24 서울대학교산학협력단 An internet application traffic classification and benchmarks framework
KR101005856B1 (en) * 2008-11-17 2011-01-05 한국과학기술원 Method and apparatus for classifying traffic at transport layer
KR101230001B1 (en) * 2010-06-28 2013-02-05 주식회사 케이티 Apparatus for detecting the servers of file sharing solution provider based on flow information analysis and method thereof
KR20160123903A (en) * 2015-04-17 2016-10-26 (주) 시스메이트 Apparatus and Method for Automatically Extracting Network Traffic Signature
WO2021112344A1 (en) * 2019-12-05 2021-06-10 포항공과대학교 산학협력단 Traffic categorization method and device
KR20220067834A (en) * 2020-11-18 2022-05-25 한국전자통신연구원 Intelligent server health check device based on machine learning of network packets

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101005755B1 (en) 2008-09-18 2011-01-06 고려대학교 산학협력단 Apparatus and method for managing application for traffic analysis

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030034534A (en) * 2001-10-26 2003-05-09 주식회사 케이티 A port number selection method for network traffic data analysis on Internet Protocol network
KR100523486B1 (en) * 2002-12-13 2005-10-24 한국전자통신연구원 Traffic measurement system and traffic analysis method thereof

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101005856B1 (en) * 2008-11-17 2011-01-05 한국과학기술원 Method and apparatus for classifying traffic at transport layer
KR100965452B1 (en) * 2009-10-16 2010-06-24 서울대학교산학협력단 An internet application traffic classification and benchmarks framework
KR101230001B1 (en) * 2010-06-28 2013-02-05 주식회사 케이티 Apparatus for detecting the servers of file sharing solution provider based on flow information analysis and method thereof
KR20160123903A (en) * 2015-04-17 2016-10-26 (주) 시스메이트 Apparatus and Method for Automatically Extracting Network Traffic Signature
WO2021112344A1 (en) * 2019-12-05 2021-06-10 포항공과대학교 산학협력단 Traffic categorization method and device
KR20220067834A (en) * 2020-11-18 2022-05-25 한국전자통신연구원 Intelligent server health check device based on machine learning of network packets

Also Published As

Publication number Publication date
KR100710047B1 (en) 2007-04-20

Similar Documents

Publication Publication Date Title
USRE49126E1 (en) Real-time adaptive processing of network data packets for analysis
EP1742416B1 (en) Method, computer readable medium and system for analyzing and management of application traffic on networks
CN102307123B (en) NAT (Network Address Translation) flow identification method based on transmission layer flow characteristic
US8806189B2 (en) Apparatus for analyzing traffic
KR101122210B1 (en) Systems and processes of identifying p2p applications based on behavioral signatures
CN102045363B (en) Establishment, identification control method and device for network flow characteristic identification rule
KR101295708B1 (en) Apparatus for capturing traffic and apparatus, system and method for analyzing traffic
Tammaro et al. Exploiting packet‐sampling measurements for traffic characterization and classification
US7010592B2 (en) Method for collecting statistical traffic data
CN112039904A (en) Network traffic analysis and file extraction system and method
Alshammari et al. Investigating two different approaches for encrypted traffic classification
CN102724317A (en) Network data flow classification method and device
US7907543B2 (en) Apparatus and method for classifying network packet data
CN106330584A (en) Identification method and identification device of business flow
JP2008219127A (en) Network quality measuring instrument, network quality measuring method, and network quality measuring program
Mellia et al. Tstat: TCP statistic and analysis tool
KR100710047B1 (en) Apparatus for traffic identification on internet protocol network environment
KR100501080B1 (en) A method and system for distinguishing higher layer protocols of the internet traffic
KR100548923B1 (en) A system for monitoring multi-media service traffic and method thereof
KR20100024723A (en) System and method for analyzing alternative internet traffic using routing based on policy
JP3596478B2 (en) Traffic classification device and traffic classification method
KR100869887B1 (en) Traffic identification system and method with analysis on signature of packets
CN108076070A (en) A kind of FASP agreements blocking-up method, device and analysis system
Zhang et al. High fidelity off-path round-trip time measurement via TCP/IP side channels with duplicate SYNs
Salem et al. Transforming voluminous data flow into continuous connection vectors for IDS

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