KR101560819B1 - 어플리케이션 식별을 위한 하이브리드 분류 장치 및 방법 - Google Patents

어플리케이션 식별을 위한 하이브리드 분류 장치 및 방법 Download PDF

Info

Publication number
KR101560819B1
KR101560819B1 KR1020130150819A KR20130150819A KR101560819B1 KR 101560819 B1 KR101560819 B1 KR 101560819B1 KR 1020130150819 A KR1020130150819 A KR 1020130150819A KR 20130150819 A KR20130150819 A KR 20130150819A KR 101560819 B1 KR101560819 B1 KR 101560819B1
Authority
KR
South Korea
Prior art keywords
flow
application
payload
packet
classification
Prior art date
Application number
KR1020130150819A
Other languages
English (en)
Other versions
KR20150065463A (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 KR1020130150819A priority Critical patent/KR101560819B1/ko
Publication of KR20150065463A publication Critical patent/KR20150065463A/ko
Application granted granted Critical
Publication of KR101560819B1 publication Critical patent/KR101560819B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 어플리케이션 식별을 위한 하이브리드 분류 장치로, 플로어의 포트 넘버를 분석하여, 해당 포트 넘버와 일치하는 어플리케이션에 매핑하는 포트 기반 분류부와, 상기 포트 기반 분류에 실패한 플로우를 페이로드 정보 및 플로우 통계 정보 중 적어도 하나 이상을 이용하여 분석한 후, 그 분석 결과에 따라 특정 어플리케이션에 매핑하는 하이브리드부를 포함한다.

Description

어플리케이션 식별을 위한 하이브리드 분류 장치 및 방법{Appratus and Method for Hybrid classifying using Payload Encoding and Flow Statistics for Application Identification}
본 발명은 네트워크 트래픽 분류 기술에 관한 것으로, 특히 네트워크 트래픽에 해당하는 어플리케이션 서비스를 식별하는 장치 및 방법에 관한 것이다.
최근 스마트폰 보급이 급속히 증가함에 따라, 빠른 속도로 새로운 어플리케이션이 생겨나고 있을 뿐만 아니라, 기존의 어플리케이션들도 매우 신속하게 업버전되고 있다. 이는 WWW, FTP, 이메일 등의 전통적인 인터넷 어플리케이션 프로그램들뿐만 아니라, 음성 망의 통합, 새로운 스트리밍(streaming), P2P(peer-to-peer) 파일 공유, 게임 등 많은 서비스와 어플리케이션 프로그램들이 인터넷 기반으로 운용되고 있기 때문이다. 이에 따라 네트워크 트래픽을 분석하여 어플리케이션 서비스별로 분류하는 것은 네트워크 관리, 리소스(resource) 제공 및 어플리케이션 개발을 위해 매우 중요한 이슈가 되고 있다.
이러한 트래픽 분석 및 분류 방식으로 포트 넘버(port number)를 이용하는 방식이 널리 이용되고 있다. 포트 넘버를 이용하는 방식은 수신 패킷에서 트랜스포트 계층(transport layer)의 포트 넘버만을 검사하여 트래픽 정체를 파악하는 것이다. 일 예로, 인터넷 홈페이지에 접속할 때는 포트 넘버가 80번, FTP를 이용해서 파일을 받아올 때는 20, 21번, 영화 패킷 데이터를 수신할 때는 포트 넘버 554번, 1755번 등으로, 대부분의 패킷(packet)들은 미리 설정된 포트를 통해서 패킷 송/수신이 이루어지고 있어 트랜스포트 계층의 포트 넘버를 파악하여 패킷의 어플리케이션을 알아낸다. 그런데, P2P 어플리케이션 서비스는 자신의 트래픽을 숨기기 위해서 임의의 랜덤 포트 넘버를 사용하거나, 혹은 다른 어플리케이션 서비스의 포트 넘버를 이용하여 P2P 어플리케이션 서비스를 제공하고 있기 때문에, 포트 넘버로 패킷의 어플리케이션들을 식별하는 것을 어렵게 만든다.
이러한 포트 넘버 기반 방식의 한계를 극복하기 위해, 페이로드 정보 및 플로우 통계 정보를 이용하는 새로운 트래픽 분류 방법이 개발되었다.
우선, 수집된 패킷의 페이로드 정보를 이용한 방법은 어플리케이션을 식별하기 위해 패킷의 페이로드 전체 또는 특정 부분을 조사한다. 이 방법의 경우, 어플리케이션 식별 정확도가 비교적 큰 편이나, 큰 스토리지(storage)를 요구하고, 시그니처(signature)을 찾고 매핑하는 것이 매우 복잡하며, 스케일러빌러티(scalability)와 콘텐츠 보호에서 문제를 가지고 있다. 또한, 시그니처가 없거나 암호화되어 있는 패킷에 대해서는 이 방법으로 패킷에 매핑되는 어플리케이션을 식별할 수 없다. 예를 들어, 게임 서비스들의 경우 대부분의 게임 프로토콜들이 개방되지 않았으므로 해당 어플리케이션의 시그니처를 찾기 어려워 페이로드 정보 기반 방법으로 게임 어플리케이션들을 분류하는 것은 매우 어렵다.
한편, 플로우 통계 정보 기반의 식별 방식은 종단 간 송수신되는 트래픽의 패킷 크기, 패킷 발생 빈도, 패킷 발생 간격과 같은 어플리케이션 고유의 트래픽 특징들을 통계적으로 정형화하는 방법이다. 이는 암호화 또는 변형된 패킷에 대해서는 분류가 가능한 방법이긴 하나, 페이로드 정보 기반 방식에 비해 그 정확도가 낮다.
본 발명은 포트 기반 분석의 한계를 극복하기 위해, 포트 넘버 뿐만 아니라, 페이로드 정보 및 플로우 통계 정보를 이용하여 패킷에 매핑되는 어플리케이션을 식별을 하는 하이브리드 분류 장치 및 방법을 제공한다.
본 발명은 어플리케이션 식별을 위한 하이브리드 분류 장치로, 플로우의 포트 넘버를 분석하여, 해당 포트 넘버와 일치하는 어플리케이션에 매핑하는 포트 기반 분류부와, 상기 포트 기반 분류에 실패한 플로우를 페이로드 정보 및 플로우 통계 정보 중 적어도 하나 이상을 이용하여 분석한 후, 그 분석 결과에 따라 특정 어플리케이션에 매핑하는 하이브리드부를 포함한다.
본 발명은 어플리케이션 분류 정확성이 향상되면서도, 스토리지를 적게 요구하고 그 프로세싱 과정의 복잡성이 줄어든다는 이점이 있다.
도 1은 본 발명의 일 실시 예에 따른 어플리케이션 식별을 위한 하이브리드 분류 장치를 포함하는 시스템 구성도이다.
도 2는 본 발명의 일 실시 예에 따른 어플리케이션 식별을 위한 하이브리드 분류 장치의 상세 구성도이다.
도 3은 본 발명의 일 실시 예에 따른 어플리케이션 식별을 위한 하이브리드 분류 방법을 설명하기 위한 순서도이다.
도 4는 본 발명의 어플리케이션 식별을 위한 하이브리드 분류에 따른 성능 향상을 보여주는 실험 결과를 도시한 도면이다.
이하, 첨부된 도면을 참조하여 기술되는 바람직한 실시 예를 통하여 본 발명을 당업자가 용이하게 이해하고 재현할 수 있도록 상세히 기술하기로 한다.
본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명 실시 예들의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.
명세서 전반에 걸쳐 사용되는 용어들은 본 발명 실시 예에서의 기능을 고려하여 정의된 용어들로서, 사용자 또는 운용자의 의도, 관례 등에 따라 충분히 변형될 수 있는 사항이므로, 이 용어들의 정의는 본 발명의 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 본 발명의 일 실시 예에 따른 어플리케이션 식별을 위한 하이브리드 분류 장치를 포함하는 시스템 구성도이다.
도 1을 참조하면, 어플리케이션 식별을 위한 하이브리드 분류 장치(이하 '장치'로 기재함)(100)는 라우터를 통해 인터넷에 접속되고, 유무선 이더넷을 통해 PC, 랩탑, 스마트 폰을 포함하는 사용자 단말(1)에 접속 가능하여, 사용자 단말(1)에 의해 요청 및 송수신되는 어플리케이션 서비스에 따른 패킷을 캡쳐한다. 또한, 이동 단말(2)은 3G, LTE에 접속하여 패킷 스니핑 어플리케이션(sniffing application)을 사용하여 어플리케이션에 대한 트래픽을 캡쳐하고, 이와 같이 수집된 데이터가 장치(120)로 복사될 수도 있다.
장치(120)는 네트워크의 특정 지점을 경유하여 송수신되고 있는 트래픽을 분석하여 시그니처를 찾아내고, 찾아낸 시그니처에 매칭되는 시그니처를 가진 어플리케이션 프로그램을 알아낼 수 있다. 본 발명의 실시 예에 따라, 장치(120)는 포트 넘버 기반 분류 방식 뿐만 아니라 페이로드 정보 기반 및 플로우 통계 정보 기반 방식들을 조합하여 분석 성능을 향상시킨다.
도 2는 본 발명의 일 실시 예에 따른 어플리케이션 식별을 위한 하이브리드 분류 장치의 상세 구성도이다.
도 2를 참조하면, 장치(100)는 플로우 생성부(110), 포트 기반 분류부(120), 암호화 검사부(130), 플로우 통계 기반 분류부(140) 및 페이로드 기반 분류부(150)을 포함한다. 여기서, 암호화 검사부(130), 플로우 통계부(140) 및 페이로드 기반 분류부(250)는 하이브리드부(10)를 구성할 수 있다.
플로우 생성부(110)는 특정 통신 어플리케이션의 사용에 따라 발생되는 TCP 또는 UDP 패킷을 캡쳐하여 플로우로 생성한다. 각각의 플로우는 고유한 5튜플(tuple), 즉 송신자 IP(source IP), 수신자 IP(Destination IP), 송신자 포트(Source Port), 수신자 포트(Destination Port), 프로토콜(Protocol)의 결합으로 구별이 가능하다.
포트 기반 분류부(120)는 입력 패킷의 5 튜플 중에서 Source Port, Destination Port를 기반으로 플로우를 분석하여, 잘 알려진 포트 넘버와 일치하는지에 따라 플로우에 매핑되는 어플리케이션을 찾아낸다. 일 예로, 인터넷 홈페이지에 접속할 때는 포트 넘버가 80번, FTP를 이용해서 파일을 받아올 때는 20, 21번, 영화 패킷 데이터를 수신할 때는 포트 넘버 554번, 1755번 등으로, 대부분의 패킷(packet)들은 미리 설정된 포트를 통해서 패킷 송/수신이 이루어지고 있어 트랜스포트 계층의 포트 넘버를 파악하여 패킷의 어플리케이션을 분석한다. 또한, 포트 기반 분류부(120)는 포트 넘버 기반으로 분류되지 않은 어플리케이션 서비스를 프로토콜 기반으로 분류할 수 있다. 또한, 도면에는 도시되어 있지 않지만, 분류되었더라도 정확도를 위해 분석 결과가 검증되는 프로세싱이 더 수행될 수도 있다.
그런데, 전술한 바와 같이 자신의 트래픽을 숨기기 위해 임의의 포트 넘버를 사용하거나 또는 다른 어플리케이션 서비스의 포트 넘버를 이용하여 P2P 어플리케이션 서비스를 제공하고 있기 때문에, 포트 기반 분석 방식의 분석 정확도가 점차로 저하되고 있다. 예컨대, BitTorrent는 디폴트 서비스 포트 넘버(6881-6889)를 갖는데, 윈도우 라이브 메신저(Windows Live Messenger)에 의해 사용될 수 있는 6891-6900과 같은 디폴트를 제외한 다른 포트 넘버를 선택하는 것도 가능하다. 게다가, 디폴트 서비스 포트 넘버를 갖지 않는 P2P 어플리케이션도 가능하다. 이와 같은 이유로 포트 기반 분류부에 의한 분류 정확도는 70 퍼센트 이하이다.
따라서, 포트 넘버 기반 분류에 실패한 플로우는 하이브리드부(10)에 전송되어 페이로드 정보 기반 분류 방식 또는 플로우 통계 기반 분류부에 의해 분류될 수 있다. 그런데, 분류에 실패한 어플리케이션 플로우가 암호화되었거나 다른 사용자가 볼 수 없도록 변형되었을 경우에는 페이로드 정보를 통해 어플리케이션이 식별될 수 없다. 예컨대, 게임 서비스들의 경우 대부분의 게임 프로토콜들이 개방되지 않았으므로 해당 어플리케이션의 시그니처를 찾기 어려워 콘텐츠 기반 방법으로 게임 어플리케이션들을 분류하는 것은 매우 어렵다.
따라서, 하이브리드부(10)의 암호화 검사부(130)에서 플로우가 암호화 또는 변형되었는지의 여부를 미리 검사하고, 암호화 검사부(130)는 그 검사 결과에 따라 입력된 플로우를 플로우 통계 기반 분류부(140) 또는 페이로드 기반 분류부(150) 중 하나에 전달한다.
플로우 통계 기반 분류부(140)는 플로우 통계 기반으로 해당 플로우의 분류를 수행한다. 이를 위해, 플로우 통계 기반 분류부(140)는 사전에 어플리케이션 종단간 송수신되는 플로우별로 트래픽 특징들을 통계적으로 정형화하여, 이를 저장한다. 여기서, 플로우 통계 정보는 플로우 크기(Flow Size), 플로우 기간(Flow Duration), 패킷 길이 및 변이(Packet Length and Variation), 패킷간 도착 시간(Packet Inter-Arrival Time : PIAT) 및 상대적 도착 시간(Relative Inter-Arrival Time : PIAT) 중 적어도 하나 이상을 포함함 포함할 수 있다. 플로우 크기(Flow Size)는 플로우에서 전송된 전체 바이트를 나타내고, 플로우 기간(Flow Duration)은 플로우의 시작에서 종료되기까지의 시간을 나타낸다. 또한, 플로우는 상이한 크기를 가지는 다중 크기 패킷으로 구성될 수 있는데, 패킷 길이 및 변이(Packet Length and Variation) 정보로 패킷 길이의 최소(minimum), 최대(maximum), 평균(mean) 및 표준 편차가 계산될 수 있다.
페이로드 기반 분류부(150)는 암호화 또는 변형되지 않은 플로우로부터 페이로드를 알아내어, 페이로드에서 서비스를 구별할 수 있는 특정 데이터인 시그니처를 기반으로 매핑되는 어플리케이션을 알아낸다. 예컨대, MSN 메신저(messenger) 서비스 같은 경우, PNG(ping을 확인하는 코드), USR(사용자를 확인하는 코드), MSG(메세지 전송), JOI(새로운 사용자의 가입) 등과 같은 내용이 페이로드에 포함되어 있다. 일반적으로 이러한 페이로드를 확인하는 작업은 많은 양의 데이터 처리가 필요하지만, 본 발명에서는 포트 넘버 식별을 통하여 70퍼센트에 달하는 많은 어플리케이션 서비스가 이미 식별되었기 때문에, 페이로드 기반의 식별을 행하더라도 처리해야 할 데이터양이 상당히 줄어들게 되어 부담이 줄어든다.
페이로드 기반 분류부(150)는 상세하게는 페이로드의 특정 부분을 특징 벡터를 이용하여 부호화하고, 이를 대상으로 하여 Machine Learning 알고리즘을 적용한 후 그 결과를 이용하여 본 발명에서는 어플리케이션 식별을 수행한다. 여기서, ML(Machine Learning) 알고리즘으로 Naive Bayes, AdaBoosting, J48 Decision Tree, Bayesian Network 및 Support Vector Machine과 같은 Supervised Machine Learning 알고리즘 적용이 가능하다. 또한, 일반적으로 데이터 스트림의 초기 n-bytes 데이터를 256 elements의 사이즈를 가진 2진 특징 벡터로 부호화하는데, 이를 통해 페이로드의 n-bytes 데이터는 n*256 elements를 가진 벡터로 변환된다. 그러나, 본 발명의 실시 예에 따라, 각각의 바이트에 대한 129 elements를 가진 보다 작은 사이즈의 벡터를 사용하여 n-bytes의 데이터를 n*129 elements를 가진 벡터로 변환한다.
또한, 본 발명의 일 실시 예에 따라 페이로드 기반 분류부(150)는 해당 플로우를 플로우 통계 기반 분류부(140)에 입력한다. 이를 통해, 비암호화된 플로우에 대해서는 페이로드 기반 분류 방식 및 플로우 통계 정보 기반 분류 방식이 모두 적용되어, 분류 성능이 향상될 수 있다.
도 3은 본 발명의 일 실시 예에 따른 어플리케이션 식별을 위한 하이브리드 분류 방법을 설명하기 위한 순서도이다.
도 3을 참조하면, 특정 어플리케이션의 사용에 따라 발생되는 TCP 또는 UDP 패킷이 플로우로 생성됨에 따라, 포트 기반 분류부(120)는 입력 패킷의 5 튜플 중에서 Source Port, Destination Port를 기반으로 플로우를 분석하여, 잘 알려진 포트 넘버와 일치하는지에 따라 플로우에 매핑되는 어플리케이션을 찾아낸다. 일 예로, 인터넷 홈페이지에 접속할 때는 포트 넘버가 80번, FTP를 이용해서 파일을 받아올 때는 20, 21번, 영화 패킷 데이터를 수신할 때는 포트 넘버 554번, 1755번 등으로, 대부분의 패킷(packet)들은 미리 설정된 포트를 통해서 패킷 송/수신이 이루어지고 있어 트랜스포트 계층의 포트 넘버를 파악하여 패킷의 어플리케이션을 분석한다. 또한, 도면에는 도시되어 있지 않지만, 포트 기반 분류부(120)는 포트 기반으로 분류되지 않은 어플리케이션 서비스를 프로토콜 기반으로 분류할 수 있다. 또한, 도면에는 도시되어 있지 않지만, 분류되었더라도 정확도를 위해 분석 결과가 검증될 수도 있다.
그런데, 전술한 바와 같이 자신의 트래픽을 숨기기 위해 임의의 포트 넘버를 사용하거나 또는 다른 어플리케이션 서비스의 포트 넘버를 이용하여 P2P 어플리케이션 서비스를 제공하고 있기 때문에, 포트 기반 분석 방식의 분석 정확도가 점차로 저하되고 있다.
따라서, S320 판단 결과 포트 넘버 기반 분류에 실패한 플로우는 S330 내지 S350에서 페이로드 정보 기반 분류 방식 및 플로우 통계 기반 분류 방식 중 적어도 하나 이상에 의해 분류될 수 있다.
그런데, 분류에 실패한 플로우가 암호화되었거나 다른 사용자가 볼 수 없도록 변형되었을 경우에는 페이로드 정보를 통해 어플리케이션이 식별될 수 없다. 예컨대, 게임 서비스들의 경우 대부분의 게임 프로토콜들이 개방되지 않았으므로 해당 어플리케이션의 시그니처을 찾기 어려워 콘텐츠 기반 방법으로 게임 어플리케이션들을 분류하는 것은 매우 어렵다.
따라서, 하이브리드부(10)의 암호화 검사부(130)는 S330에서 플로우가 암호화 또는 변형되었는지의 여부를 미리 검사한다.
S330의 검사 결과 플로우가 암호화 또는 변형되었을 경우, 플로우 통계 기반 분류부(140)는 S340에서 플로우 통계 기반으로 해당 플로우의 분류를 수행한다. 이를 위해, 도면에는 도시되어 있지 않지만, 어플리케이션 종단간 송수신되는 플로우별로 트래픽 특징들을 통계적으로 정형화하는 과정이 선행될 수 있다. 또한, 플로우 통계 정보는 플로우 크기(Flow Size), 플로우 기간(Flow Duration), 패킷 길이 및 변이(Packet Length and Variation), 패킷간 도착 시간(Packet Inter-Arrival Time : IAT) 및 상대적 도착 시간(Relative Packet Inter-Arrival Time : RIAT) 중 적어도 하나 이상을 포함할 수 있다. 여기서, 플로우 크기(Flow Size)는 플로우에서 전송된 전체 바이트를 나타내고, 플로우 기간(Flow Duration)은 플로우의 시작에서 종료되기까지의 시간을 나타낸다. 또한, 플로우는 상이한 크기를 가지는 다중 크기 패킷으로 구성될 수 있는데, 패킷 길이 및 변이(Packet Length and Variation) 정보로 패킷 길이의 최소(minimum), 최대(maximum), 평균(mean) 및 표준 편차가 계산될 수 있다.
따라서, 플로우 통계 기반 분류부(140)는 플로우 통계 정보를 참조하여, 입력된 플로우에 매핑되는 어플리케이션 서비스를 알아낸다.
반면, S330 판단 결과 플로우가 암호화 또는 변형되지 않았을 경우, 페이로드 기반 분류부(150)는 S350에서 플로우로부터 페이로드를 알아내어, 페이로드에서 서비스를 구별할 수 있는 특정 데이터인 시그니처를 기반으로 매핑되는 어플리케이션을 알아낸다. 페이로드 기반 분류부(150)는 상세하게는 페이로드의 특정 부분을 특징 벡터를 이용하여 부호화하고, 이를 대상으로 본 발명에서는 지도 기계 학습(Supervised Machine Learning) 방식의 ML 알고리즘을 적용한다.
여기서, ML 알고리즘으로 Naive Bayes, AdaBoosting, J48 Decision Tree, Bayesian Network 및 Support Vector Machine이 가능하다. 또한, 일반적으로 데이터 스트림의 초기 n-bytes 데이터를 256 elements의 사이즈를 가진 2진 특징 벡터로 부호화하는데, 이를 통해 페이로드의 n-bytes 데이터는 n*256 elements를 가진 벡터로 변환된다. 그러나, 본 발명의 실시 예에 따라, 각각의 바이트에 대한 129 elements를 가진 보다 작은 사이즈의 벡터를 사용하여 n-bytes의 데이터를 n*129 elements를 가진 벡터로 변환한다. 또한, 본 발명의 일 실시 예에 따라 S350이 수행된 후에는, 해당 플로우에 대하여 S340이 다시 수행된다. 이와 같이 비암호화된 플로우에 대해서는 페이로드 기반 분류 방식 및 플로우 통계 정보 기반 분류 방식이 모두 적용되어, 분류 성능이 향상될 수 있다.
도 4는 본 발명의 어플리케이션 식별을 위한 하이브리드 분류에 따른 성능 향상을 보여주는 실험 결과를 도시한 도면이다.
도 4를 참조하면, ML 알고리즘인 Naive Bayes, AdaBoosting, J48 Decision Tree, Bayesian Network 각각에 대한 분류 성공 비율에 대한 실험 결과가 도시되어 있는데, 플로우 통계 기반으로 분류한 경우, 페이로드 인코딩 기반으로 분류한 경우 및 플로우 통계와 페이로드 인코딩이 모두 수행된 경우 각각에 따른 실험 결과가 도시되어 있다. 도 4에 나타난 바와 같이, 본 발명의 하이브리드 분류에 따라 분류 성능이 최고 95 퍼센트까지 향상된 것을 볼 수 있다.

Claims (9)

  1. 삭제
  2. 플로우의 포트 넘버를 분석하여, 상기 포트 넘버와 일치하는 플로우를 발생시키는 어플리케이션에 상기 플로우를 매핑하는 포트 기반 분류부와,
    상기 포트 기반 분류부에 의해 분류에 실패한 플로우의 암호화 또는 변형 여부를 판단하는 암호화 검사부와,
    상기 암호화 검사부로부터 출력되는 비암호화된 플로우의 페이로드를 인코딩하여, 상기 페이로드에서 추출된 시그니처를 기반으로 상기 플로우에 매핑되는 어플리케이션을 식별하고, 상기 플로우를 출력하는 페이로드 기반 분류부와,
    상기 암호화 검사부 및 상기 페이로드 기반 분류부 중 적어도 하나 이상으부터 출력되는 플로우를 어플리케이션 종단간 송수신되는 플로우별로 트래픽 특징들을 미리 정형화한 플로우 통계 정보와 비교하여, 상기 플로우와 일치하는 트래픽 특징들을 포함하는 어플리케이션에 상기 플로우를 매핑하는 플로우 통계 기반 분류부
    를 포함함을 특징으로 하는 어플리케이션 식별을 위한 하이브리드 분류 장치.
  3. 제 2항에 있어서, 상기 플로우 통계 정보는
    플로우 크기(Flow Size), 플로우 기간(Flow Duration), 패킷 길이(Packet Length), 길이 변화(Length Variation), 패킷간 도착 시간(Packet Inter-Arrival Time : IAT) 및 상대적 도착 시간(Relative PACKET Inter-Arrival Time : RIAT) 중 적어도 하나 이상을 포함함을 특징으로 하는 어플리케이션 식별을 위한 하이브리드 분류 장치.
  4. 제 2항에 있어서, 상기 페이로드 기반 분류부는
    지도 기계 학습(Supervised Machine Learning) 기반으로 훈련됨을 특징으로 하는 어플리케이션 식별을 위한 하이브리드 분류 장치.
  5. 제 2항에 있어서, 상기 페이로드 기반 분류부는
    플로우 패킷의 초기 n 바이트의 데이터를 2진 특징 벡터로 부호화하는데, 상기 특징 벡터는 n*129 elements 사이즈임을 특징으로 하는 어플리케이션 식별을 위한 하이브리드 분류 장치.
  6. 삭제
  7. 플로우를 포트 넘버 기반으로 분류하는 단계와,
    상기 포트 넘버 기반으로 분류에 실패한 플로우의 암호화 또는 변형 여부를 판단하는 단계와,
    상기 판단 결과, 암호화된 플로우를 어플리케이션 종단간 송수신되는 플로우별로 트래픽 특징들을 미리 정형화한 플로우 통계 정보와 비교하여, 상기 플로우와 일치하는 트래픽 특징들을 포함하는 어플리케이션으로 상기 플로우를 분류하는 단계와,
    상기 판단 결과, 비암호화된 플로우의 페이로드를 인코딩하여 상기 페이로드에서 추출된 시그니처를 기반으로 상기 플로우에 매핑되는 어플리케이션을 식별하는 단계와,
    상기 식별된 플로우를 상기 플로우 통계 정보와 비교하여, 상기 플로우와 일치하는 트래픽 특징들을 포함하는 어플리케이션으로 상기 플로우를 분류하는 단계를 포함함을 특징으로 하는 어플리케이션 식별을 위한 하이브리드 분류 방법.
  8. 제 7항에 있어서,
    플로우 크기(Flow Size), 플로우 기간(Flow Duration), 패킷 길이(Packet Length), 길이 변화(Length Variation), 패킷 상호간 도착 시간(Packet Inter-Arrival Time : PIAT) 및 상대적 도착 시간(Relative Inter-Arrival Time : RIAT) 중 적어도 하나 이상을 포함하는 플로우 통계 정보를 수집하는 단계를 더 포함함을 특징으로 하는 어플리케이션 식별을 위한 하이브리드 분류 방법.
  9. 제 7항에 있어서, 상기 식별하는 단계는
    플로우 패킷의 초기 n 바이트의 데이터를 2진 특징 벡터로 부호화하는데, 상기 특징 벡터는 n*129 elements 사이즈임을 특징으로 하는 어플리케이션 식별을 위한 하이브리드 분류 방법.
KR1020130150819A 2013-12-05 2013-12-05 어플리케이션 식별을 위한 하이브리드 분류 장치 및 방법 KR101560819B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130150819A KR101560819B1 (ko) 2013-12-05 2013-12-05 어플리케이션 식별을 위한 하이브리드 분류 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130150819A KR101560819B1 (ko) 2013-12-05 2013-12-05 어플리케이션 식별을 위한 하이브리드 분류 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20150065463A KR20150065463A (ko) 2015-06-15
KR101560819B1 true KR101560819B1 (ko) 2015-10-15

Family

ID=53504371

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130150819A KR101560819B1 (ko) 2013-12-05 2013-12-05 어플리케이션 식별을 위한 하이브리드 분류 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101560819B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090010259A1 (en) 2007-07-08 2009-01-08 Alexander Sirotkin Device, system, and method of classification of communication traffic

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090010259A1 (en) 2007-07-08 2009-01-08 Alexander Sirotkin Device, system, and method of classification of communication traffic

Also Published As

Publication number Publication date
KR20150065463A (ko) 2015-06-15

Similar Documents

Publication Publication Date Title
US10862871B2 (en) Hardware-accelerated payload filtering in secure communication
US10992691B2 (en) Method and an apparatus to perform multi-connection traffic analysis and management
Narayan et al. A survey of automatic protocol reverse engineering tools
US8149705B2 (en) Packet communications unit
US10547674B2 (en) Methods and systems for network flow analysis
KR101295708B1 (ko) 트래픽 수집장치, 트래픽 분석장치, 시스템 및 그 분석방법
US11800260B2 (en) Network telemetry with byte distribution and cryptographic protocol data elements
CN111247774A (zh) 高级网络分析
CN111064678A (zh) 基于轻量级卷积神经网络的网络流量分类方法
CN110417729B (zh) 一种加密流量的服务与应用分类方法及系统
WO2008061483A1 (fr) Procédé et appareil d'identification de contenu de données
Korczyński et al. Classifying service flows in the encrypted skype traffic
Niu et al. A heuristic statistical testing based approach for encrypted network traffic identification
CN102571946B (zh) 一种基于对等网络的协议识别与控制系统的实现方法
Huang et al. Early identifying application traffic with application characteristics
Li et al. Multimodality data analysis in information security ETCC: encrypted two-label classification using CNN
KR101437008B1 (ko) 트래픽 분석 장치 및 방법
US9356876B1 (en) System and method for classifying and managing applications over compressed or encrypted traffic
Oh et al. AppSniffer: Towards robust mobile app fingerprinting against VPN
CN113315678A (zh) 加密tcp流量采集方法与装置
KR101560819B1 (ko) 어플리케이션 식별을 위한 하이브리드 분류 장치 및 방법
CN114465786B (zh) 一种加密网络流量的监控方法
JP2007228217A (ja) トラフィック判定装置、トラフィック判定方法、及びそのプログラム
CN114338126A (zh) 一种网络应用识别方法和装置
KR101743471B1 (ko) 에이전트 기반 시그니처리스 애플리케이션 인지 시스템 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20181008

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20191008

Year of fee payment: 5