KR20110044680A - 트래픽 분류 장치 및 방법 - Google Patents

트래픽 분류 장치 및 방법 Download PDF

Info

Publication number
KR20110044680A
KR20110044680A KR1020100019109A KR20100019109A KR20110044680A KR 20110044680 A KR20110044680 A KR 20110044680A KR 1020100019109 A KR1020100019109 A KR 1020100019109A KR 20100019109 A KR20100019109 A KR 20100019109A KR 20110044680 A KR20110044680 A KR 20110044680A
Authority
KR
South Korea
Prior art keywords
traffic data
traffic
user list
skype
node
Prior art date
Application number
KR1020100019109A
Other languages
English (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 고려대학교 산학협력단
Publication of KR20110044680A publication Critical patent/KR20110044680A/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/19Flow control; Congestion control at layers above the network layer
    • H04L47/196Integration of transport layer protocols, e.g. TCP and UDP
    • 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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2475Traffic characterised by specific attributes, e.g. priority or QoS for supporting traffic characterised by the type of applications

Landscapes

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

Abstract

트래픽 분류 장치는 플로우 데이터 단위로 트래픽 데이터를 수신하는 트래픽 데이터 수신부와, 트래픽 데이터의 속성 정보에 기초하여, 트래픽 데이터가 특정 어플리케이션의 로그인 패턴 특성을 갖는지 여부에 따라 해당 트래픽 데이터를 발생시킨 노드를 사용자 리스트에 추가시키는 사용자 리스트 관리부 및 트래픽 데이터의 고유 패턴이 미리 설정된 패턴과 일치하는지 여부 및 트래픽 데이터를 발생시킨 노드가 사용자 리스트에 포함되어 있는지 여부에 따라 트래픽 데이터를 특정 어플리케이션의 트래픽 데이터로 분류하는 트래픽 데이터 분류부를 포함한다.

Description

트래픽 분류 장치 및 방법{APPARATUS AND METHOD FOR CLASSIFING TRAFFIC}
본 발명은 트래픽 분류 장치 및 방법에 관한 것으로, 보다 상세하게는 응용 프로그램 별로 트래픽을 분류하는 트래픽 분류 장치 및 방법에 관한 것이다.
효율적인 네트워크 관리를 위해 응용 프로그램 별 트래픽 데이터 분류의 중요성이 커지고 있다. 응용 프로그램 별 트래픽 데이터 분류를 위해 시그너쳐(Signature) 기반, 기계 학습(Machine learning) 방법들이 제안되고 있지만, p2p 방식의 메신저 프로그램에 대한 적용 결과는 그 신뢰성이 떨어지고 있다.
예를 들어, 스카이프(Skype) 어플리케이션(이하, “스카이프” 라고도 함)은 p2p 방식의 메신저로서 사용자간 채팅, 음성통화, 화상통화, 전화 교환망을 통한 일반 전화, 파일전송 등의 기능을 제공한다.
그러나, 스카이프의 트래픽 데이터들은 기본적으로 암호화가 되어있고, 인스톨(Install)시에 동적 포트를 할당하며, 일반적인 프로토콜을 사용하지 않아 네트워크 관리자의 입장에서 스카이프 응용프로그램의 트래픽 데이터 분류 기준을 정하기 어려운 문제점이 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명은 트래픽 데이터의 고유 패턴이 미리 설정된 패턴과 일치하는지 여부 및 트래픽 데이터를 발생시킨 노드가 사용자 리스트에 포함되어 있는지 여부에 따라 트래픽 데이터를 특정 어플리케이션의 트래픽 데이터로 분류하는 트래픽 분류 장치 및 방법을 제공하는 데에 그 목적이 있다.
그리고, 스카이프 어플리케이션의 트래픽 데이터를 효과적으로 분류하여 네트워크 관리의 효율성을 높이는 트래픽 분류 장치 및 방법을 제공하는 데에 그 목적이 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 트래픽 분류 장치는 플로우 데이터 단위로 트래픽 데이터를 수신하는 트래픽 데이터 수신부와, 트래픽 데이터의 속성 정보에 기초하여, 트래픽 데이터가 특정 어플리케이션의 로그인 패턴 특성을 갖는지 여부에 따라 해당 트래픽 데이터를 발생시킨 노드를 사용자 리스트에 추가시키는 사용자 리스트 관리부 및 트래픽 데이터의 고유 패턴이 미리 설정된 패턴과 일치하는지 여부 및 트래픽 데이터를 발생시킨 노드가 사용자 리스트에 포함되어 있는지 여부에 따라 트래픽 데이터를 특정 어플리케이션의 트래픽 데이터로 분류하는 트래픽 데이터 분류부를 포함한다.
또한, 본 발명의 제 2 측면에 따른 트래픽 분류 방법은 트래픽 데이터 수신부가 플로우 데이터 단위로 스카이프 어플리케이션의 트래픽 데이터를 수신하는 단계와, 사용자 리스트 관리부가 트래픽 데이터의 속성 정보에 기초하여, 트래픽 데이터가 스카이프 어플리케이션의 로그인 패턴 특성을 갖는지 여부에 따라 해당 트래픽 데이터를 발생시킨 노드를 사용자 리스트에 추가시키는 단계 및 트래픽 데이터 분류부가 트래픽 데이터의 고유 패턴이 미리 설정된 패턴과 일치하는지 여부 및 트래픽 데이터를 발생시킨 노드가 사용자 리스트에 포함되어 있는지 여부에 따라 트래픽 데이터를 스카이프 어플리케이션의 트래픽 데이터로 분류하는 단계를 포함한다.
전술한 본 발명의 과제 해결 수단에 의하면, 트래픽 데이터의 고유 패턴이 미리 설정된 패턴과 일치하는지 여부 및 트래픽 데이터를 발생시킨 노드가 사용자 리스트에 포함되어 있는지 여부에 따라 트래픽 데이터를 특정 어플리케이션의 트래픽 데이터로 분류할 수 있다.
그리고, 스카이프 어플리케이션의 트래픽 데이터를 효과적으로 분류하여 네트워크 관리의 효율성을 높일 수 있다.
도 1은 스카이프 어플리케이션의 로그인 과정에 대한 개념도이다.
도 2는 본 발명의 일 실시예에 따른 TMA 검증 시스템을 도시한다.
도 3은 본 발명의 일 실시예에 따른 트래픽 분류 장치의 블록도이다.
도 4 및 도 5는 본 발명의 일 실시예에 따른 스카이프 트래픽 분류를 위한 알고리즘에 대한 순서도이다.
도 6은 본 발명의 실시예에 따른 스카이프 트래픽 분류 방법의 순서도이다.
도 7은 본 발명의 실시예에 따른 트래픽 분류 장치을 이용한 실험 결과를 도시한다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
도 1은 스카이프 어플리케이션의 로그인 과정에 대한 개념도이다.
도 1에 도시된 바와 같이, 스카이프의 로그인 과정에서 스카이프의 로그인 패턴 특성을 알 수 있다.
먼저 스카이프의 로그인 과정에 있어서, SC(Skype Client)가 자신에 저장되어 있던 SN(Super Node)의 리스트를 기반으로 하여 SN에게 UDP 패킷을 전송한다(S11). 다음으로, SC가 SN으로부터 응답 패킷을 수신한다(S21). 다음으로, SC가 응답 패킷을 전달해온 SN과 TCP(Transmission Control Protocol) 연결을 수행한다(S31).
여기서, 복수의 SN으로부터 응답이 온 경우 응답 패킷을 보낸 1번째 또는 2 번째 SN이 선택되어 TCP 연결이 이루어진다. 그리고 TCP 연결을 수행한 SN으로부터 뉴(new) SN 리스트를 전송 받는다고 추정될 수 있다. 또한, SC는 리스트를 수신하고 UDP(User Datagram Protocol) 패킷을 뉴 SN에게 전송한다. 이때, 응답을 전송한 뉴 SN에 한하여 최종 확정된 새로운 리스트를 저장한다고 추정될 수 있다. 그리고, 예컨대 dstport(Destination Port, 목적지 포트번호) 33033인 노드와의 TCP 연결이 이루어질 수 있다.
다음으로, SC가 예컨대 dstport 12350인 노드로 UDP 패킷을 전송한다(S41). 이때, SC의 스카이프 포트번호가 인지될 수 있고, 후술될 스카이프 트래픽 분류 알고리즘에 의해 SC의 IP(Internet Protocol)와 포트(Port)가 기록될 수 있다.
그리고, SC와 버디(Buddy)(스카이프 친구등록) 관계인 SC들에게 UDP 패킷이 전송되며, 프로필 변경, 사진 변경 등 갱신 정보가 있을 때 버디 관계의 SC와 TCP 연결이 이루어져 해당 데이터에 대한 전송이 수행될 수 있다.
다음으로, SC가 DNS 서버로 쿼리를 전송하여 스카이프 웹 서버의 IP를 수신한다(S51). 여기서, dstport 12350인 노드와 TCP 연결을 맺는 경우와 맺지 않는 경우의 두 가지 경우가 발생할 수 있다.
이때, S41에서 SC가 이전에 로그인하였던 노드에서 다시 로그인 하였을 경우, S51에서 dstport 12350인 노드와 TCP 연결을 맺지 않는다. 그리고, S41에서 SC가 이전에 다른 노드에서 로그인을 하였고 이번 로그인이 그전의 노드와 다를 경우, dstport 12350인 노드와 TCP 연결을 맺게 된다. 따라서 S41의 버디 SC에게 UDP 패킷을 전송하는 과정은 한 과정 뒤로 미루어지게 된다.
다음으로, SC가 DNS서버로부터 수신한 IP를 갖는 웹 서버와 TCP 연결을 맺고 버전을 체크한다(S61). 그리고, SC가 dstport 33033인 노드와 접속을 해제하며, S51에서 dstport 12350인 노드와 TCP 연결을 이루었을 경우 해당 접속을 해제한다(S71). 이후, SC가 버디 SC와 통신, 그 외 SC와 통신, 및 로그아웃할 경우 S31과정에서 SN과 맺었던 TCP 연결을 해제하게 된다.
도 2는 본 발명의 일 실시예에 따른 TMA 검증 시스템을 도시한다.
도 2에 도시된 바와 같이, TMA(Traffic Measurement Agent) 검증 시스템을 통해 트래픽 데이터가 응용프로그램 별로 분류될 수 있다. TMA(300)는 해당 노드의 현재 활성화된 소켓 정보를 토대로 TMA 정보(프로세스 네임, 소스 IP, 목적지 IP, 소스 포트, 목적지 포트, 프로토콜)를 제공한다. 이를 이용하여 KU-MON에서 생성된 패킷과 플로우 데이터를 서로 비교하여 해당 패킷과 플로우 데이터가 어떤 어플리케이션에 의해 실행되었는지 판단할 수 있다.
여기서, KU-MON(박상훈, 박진완, 김명섭, "Flow 기반 실시간 트래픽 수집 및 분석 시스템", 정보처리학회 추계학술대회, 목포대학교, 전주, Nov. 9-10, 2007, pp. 1061.)은 실시간 트래픽 모니터링 시스템으로서, 라우터(외부 인터넷 망과 연결되어있는)와 두 대의 코어스위치 사이에 있는 2개의 링크로부터 트래픽 데이터를 수집할 수 있다.
또한 TMA 검증 시스템에 포함된 TAS(Traffic Analysis Server)(100)는 TCS(Traffic Capture System)(200)으로부터 플로우 데이터 단위로 트래픽 데이터를 수신하여 스카이프의 트래픽 데이터를 분류하며, 후술될 도 3의 구성요소들을 포함할 수 있다. 그리고, 이후, TAS(100)를 통해 도출된 분류 결과 데이터와 TMS(Traffic Measurement Server)(400)를 통해 도출된 TMS 정보가 TVS(Traffic Verification System)(500)를 통해 상호 비교되어 검증된다.
도 3은 본 발명의 일 실시예에 따른 트래픽 분류 장치의 블록도이다.
도 3에 도시된 바와 같이, 트래픽 분류 장치(101)는 트래픽 데이터 수신부(110), 사용자 리스트 관리부(120) 및 트래픽 데이터 분류부(130)를 포함하며, 상술된 TAS(100)에 구성될 수 있다. 이하, 트래픽 분류 장치(101)의 각 구성요소에 대해서 보다 구체적으로 설명하기로 한다.
트래픽 데이터 수신부(110)는 플로우 데이터 단위로 트래픽 데이터를 수신한다. 여기서, 플로우 데이터는 일반적으로 사용되는 패킷 헤더의 5-튜플(tuple) 정보(소스 IP, 목적지 IP, 소스 포트, 목적지 포트, 프로토콜)가 동일한 단 방향(Uni-flow) 패킷들의 집합으로 정의될 수 있다.
사용자 리스트 관리부(120)는 수신된 트래픽 데이터의 속성 정보에 기초하여, 수신된 트래픽 데이터가 특정 어플리케이션의 로그인 패턴 특성을 갖는지 여부에 따라 해당 트래픽 데이터를 발생시킨 노드를 사용자 리스트에 추가시킨다. 트래픽 데이터의 속성 정보에는 소스 IP, 목적지 IP, 소스 포트, 목적지 포트, 프로토콜 등에 대한 정보가 포함될 수 있다.
예컨대, 사용자 리스트 관리부(120)는 스카이프의 로그인 패턴 특성을 갖는 노드에 대해서, 해당 노드가 사용자 리스트에 포함되어 있는지 여부를 판단한다. 그리고, 사용자 리스트 관리부(120)는 사용자 리스트에 해당 노드가 포함되어 있지 않은 경우, 해당 노드를 사용자 리스트에 추가하여, 사용자 리스트에 대한 갱신을 수행하게 된다. 구체적인 스카이프의 로그인 패턴 특성에 대해서는 상술된 도 1을 참조하기 바란다.
트래픽 데이터 분류부(130)는 수신된 트래픽 데이터의 고유 패턴이 미리 설정된 패턴과 일치하는지 여부 및 수신된 트래픽 데이터의 노드가 사용자 리스트에 포함되어 있는지 여부에 따라 수신된 트래픽 데이터를 특정 어플리케이션의 트래픽 데이터로 분류한다.
예컨대, 트래픽 데이터 분류부(130)는 수신된 트래픽 데이터의 고유 패턴이 미리 설정된 패턴과 일치하는지 여부 및 수신된 트래픽 데이터의 노드가 갱신된 사용자 리스트에 포함되어 있는지 여부를 판단한다. 그리고, 수신된 트래픽 데이터가 스카이프의 로그인 패턴 특성을 갖고 해당 노드가 사용자 리스트에 포함되어 있으면 수신된 트래픽 데이터를 스카이프의 트래픽 데이터로 분류하게 된다. 이하, 도 4 및 도 5를 통해서 스카이프 트래픽 데이터를 분류하는 알고리즘에 대해서 보다 구체적으로 설명하기로 한다.
도 4 및 도 5는 본 발명의 일 실시예에 따른 스카이프 트래픽 분류를 위한 알고리즘에 대한 순서도이다.
이어서 설명하자면, 예컨대 스카이프의 트래픽 데이터를 분류하기 위해 본 발명의 실시예에서는, 실시간으로 수신한 트래픽 데이터들을 저장하고 있는 플로우 파일을 사용하는 스카이프 트래픽 분류 관련 알고리즘들이 사용될 수 있다(도 4 및 도 5 참조).
이때 플로우 파일이 프로세싱됨으로서 내부 망 사용자와 외부 망 사용자, 후보자 모집단이 생성될 수 있으며, 모집단을 생성하게 되는 기준은 UDP 페이로드(Payload)의 시그니쳐(Signature), 플로우 데이터의 패턴, 특정 IP 및 포트 접속, 피어(Peer)들간의 접속, 로그인 유무 등이 판별하는 기준이 될 수 있다.
보다 구체적으로 후보자 모집단이란 본 발명의 실시 예에서 제안된 알고리즘에서 인바운드 트래픽 및 아웃바운드 트래픽과 관련된 기준 중 어느 하나의 기준만을 통과하게 된 모집단으로서 최종 모집단을 구성할 때에는 고려가 되지 않는다.
그리고, 외부 망 사용자, 내부 망 사용자 모집단은 후보자 모집단에서 인바운드 트래픽 및 아웃바운드 트래픽과 관련된 기준을 모두 통과한 모집단으로서 노드 IP와 해당 노드의 스카이프 어플리케이션에서 사용하는 포트, 타임 카운트(Time Count), 트래픽 발생유무 체크 플래그 등의 정보를 가지고 있다.
그리고, 트래픽 데이터를 분류하기 위해서, 바람직하게는 하기의 복수개의 리스트가 구성될 수 있다. 여기서, 모집단으로 학내 망의 스카이프 사용자를 예로 들어서 설명하기로 하지만 이에 한정되는 것은 아니다. 그리고, 엔터프라이즈 네트워크내의 스카이프 사용자를 “User”, 엔터프라이즈 네트워크 밖의 스카이프 사용자를 “Other”로 정의하기로 한다.
먼저, 사용자(User) 리스트는 유추된 학내 스카이프 사용자의 IP와 포트를 포함하는 리스트이며, 다른 사용자(Other) 리스트는 사용자와 연관되어 트래픽 데이터를 발생시키는 노드의 IP와 포트를 포함하는 리스트를 나타낸다.
그리고, 템프(Temp) 리스트는 아웃바운드(Outbound) 트래픽 데이터(학내 망에서 외부 인터넷 망으로 나가는 트래픽 데이터)에서 사용자와 연관되어 트래픽 데이터를 발생시키는 다른 사용자가 될 가능성이 있는 노드의 IP와 포트를 포함하는 리스트이며, 템프 사용자(Temp User) 리스트는 아웃바운드 트래픽 데이터에서 사용자가 될 가능성이 있는 노드의 IP를 포함하는 리스트이다.
여기서, 플로우 데이터 단위로 수신된 트래픽 데이터에서 트래픽 데이터의 속성 정보에 기초하여 상술된 노드의 IP 및 포트를 포함하는 리스트가 생성될 수 있다. 그리고, 생성되는 리스트는 상술된 사용자 리스트, 다른 사용자 리스트, 템프 리스트, 및 템프 사용자 리스트 중 적어도 하나를 포함할 수 있다.
한편, 도 4에 도시된 바와 같이 스카이프 트래픽 분류를 위해 리스트를 생성 또는 갱신하는 알고리즘에 있어서, 예컨대 “P[2]”는 패킷의 페이로드(Payload) 데이터 배열의 3번째 바이트를 의미하며, “Src(IP PORT)==User”는 플로우 데이터에서 패킷 발생지의 IP 및 포트가 사용자 리스트에 포함되어 있다는 것을 나타낸다.
그리고, “Dst(IP PORT:80)==Other”는 패킷 목적지의 IP가 다른 사용자 리스트에 있으며 패킷의 포트는 80번이라는 의미이다. 또한, “Last Usage<330s”는 같은 형태의 패킷이 “330초 전에 존재하였다”라는 의미이다.
이러한 트래픽 데이터의 속성 정보에 기초하여 사용자 리스트 관리부(120)는 스카이프의 로그인 패턴 특성을 갖는 노드에 대해서, 해당 노드가 사용자 리스트에 포함되어 있는지 여부를 판단한다.
그리고, 사용자 리스트 관리부(120)는 사용자 리스트에 스카이프의 로그인 패턴 특성을 갖는 노드가 포함되어 있지 않은 경우, 해당 노드를 사용자 리스트에 추가하여, 사용자 리스트에 대한 갱신을 수행하게 된다. 여기서, 구체적인 스카이프의 로그인 패턴 특성에 대해서는 상술된 도 1을 참조하기 바란다.
예를 들어, 학내 스카이프 사용자의 IP와 포트는 사용자 리스트(“User”)에 기록되고, 사용자와 연관되어 트래픽 데이터를 발생시키는 노드는 다른 사용자 리스트(“Other”)에 해당 알로리즘을 거쳐 기록된다.
또한, dstport 12350이 항상 나오는 과정이 아닐 수 있으므로, 로그인시마다 매번 TCP 연결을 맺는 dstport 33033으로 사용자가 될 가능성이 있는 노드의 IP가 템프 사용자 리스트에 기록될 수 있다. 그리고, 학내 망에서 외부 인터넷 망으로 나가는 트래픽 데이터에서 사용자와 연관되어 트래픽 데이터를 발생시키는 다른 사용자가 될 가능성이 있는 노드의 IP와 포트가 템프 리스트에 기록될 수 있다.
따라서, 도 4의 알고리즘에 따라 트래픽 데이터의 속성 정보에 기초하여 트래픽 데이터가 스카이프의 로그인 패턴 특성을 갖는지 여부에 따라 해당 트래픽 데이터를 발생시킨 노드가 사용자 리스트에 추가되어 사용자 리스트에 대한 갱신이 이루어질 수 있다.
그리고, TCP 및 UDP의 Two-way Flow 형태로 가공된 패킷을 입력받아 사용자의 리스트가 구축될 수 있으며, 이에 따라 발생하는 트래픽 데이터가 보다 정확하게 분류될 수 있다. 그리고 사용자들의 리스트가 계속 유지되어 네트워크 관리자에게 스카이프 어플리케이션을 사용하는 노드의 정보가 제공될 수 있다.
한편, 도 5에 도시된 바와 같이, 트래픽 데이터 분류부(130)는 트래픽 데이터의 고유 패턴이 미리 설정된 패턴과 일치하는지 여부 및 수신된 트래픽 데이터의 노드가 도 4의 갱신된 사용자 리스트에 포함되어 있는지 여부를 판단한다.
그리고, 트래픽 데이터 분류부(130)는 수신된 트래픽 데이터가 스카이프의 로그인 패턴 특성을 갖고 해당 노드가 사용자 리스트에 포함되어 있으면 수신된 트래픽 데이터를 스카이프의 트래픽 데이터로 분류하게 된다.
도 6은 본 발명의 실시예에 따른 스카이프 트래픽 분류 방법의 순서도이다.
도 6에 도시된 바와 같이, 예를 들어 스카이프의 트래픽 데이터를 분류하는 방법에 있어서, 먼저, 트래픽 데이터 수신부(110)가 플로우 데이터 단위로 스카이프 어플리케이션의 트래픽 데이터를 수신한다(S601).
다음으로, 사용자 리스트 관리부(120)가 트래픽 데이터의 속성 정보에 기초하여, 트래픽 데이터가 스카이프 어플리케이션의 로그인 패턴 특성을 갖는지 여부에 따라 해당 트래픽 데이터를 발생시킨 노드를 사용자 리스트에 추가시킨다(S611). 예컨대, 사용자 리스트 관리부(120)는 트래픽 데이터의 고유 패턴이 미리 설정된 패턴과 일치하고 트래픽 데이터를 발생시킨 노드가 상기 사용자 리스트에 포함되어 있지 않는 경우 해당 트래픽 데이터를 발생시킨 노드를 사용자 리스트에 추가시켜 사용자 리스트에 대한 갱신을 수행할 수 있다.
그리고, 트래픽 데이터 분류부(130)가 트래픽 데이터의 고유 패턴이 미리 설정된 패턴과 일치하는지 여부 및 트래픽 데이터를 발생시킨 노드가 사용자 리스트에 포함되어 있는지 여부에 따라 트래픽 데이터를 스카이프 어플리케이션의 트래픽 데이터로 분류한다(S621, S631).
예컨대, 트래픽 데이터 분류부(130)는 데이터의 고유 패턴이 미리 설정된 패턴과 일치하고 트래픽 데이터를 발생시킨 노드가 사용자 리스트에 포함되어 있는 경우 해당 트래픽 데이터를 스카이프 어플리케이션의 트래픽 데이터로 분류할 수 있다.
상술된 스카이프 어플리케이션의 로그인 패턴 특성은, 도 1에서 설명된 바와 같이, SC에 저장되어 있던 SN의 리스트를 기반으로 하여 SC가 SN에게 UDP 패킷을 전송하고, SC가 UDP 패킷에 대해 응답 패킷을 전달해온 SN과 TCP 연결을 수행하고, SC가 제 1 목적지 포트번호(예컨대 dstport 12350)를 갖는 노드로 UDP 패킷을 전송하는 과정에서의 특징을 포함할 수 있다.
또한, 상술된 스카이프 어플리케이션의 로그인 패턴 특성은, SC가 DNS 서버로 쿼리를 전송하여 스카이프 웹 서버의 IP를 수신하고, SC가 스카이프 웹 서버와 TCP 연결을 수행하고, SC가 제 2 목적지 포트의 노드와 접속을 해제하며 제 1 목적지 포트번호(예컨대 dstport 33033)의 노드와 TCP 연결을 이루었을 경우 해당 접속을 해제하는 과정에서의 특징을 포함할 수 있다.
한편, 이하 표 1에 나타난 바와 같이, 본 발명의 실시예에 따른 사용자 포트 추출 방법은 별도의 트레이닝 시간이 필요 없으며 분류결과 또한 높은 정확도를 가지고 있다. 또한, 특정 방법론(Signature-based, Port-based)만을 사용하지 않고 스카이프 트래픽의 패턴을 분석하여 동적 포트를 찾아내어 사용자의 IP와 포트의 리스트를 생성하고, 특정 방법론(Signature-based, Port-based)을 혼합하여 트래픽들을 분류할 수 있었다.
그리고, Precision(100.0%), Recall(100.0%) 이루는 만족할만한 결과를 내었다. 참고로, FN(False Negative)은 스카이프의 트래픽 데이터이며, FP(False Positive)는 다른 어플리케이션의 트래픽이나 스카이프로 분류한 트래픽이다.
Figure pat00001
한편, 도 3에서 도시된 각각의 구성요소는 일종의 '모듈'로 구성될 수 있다. 상기 '모듈'은 소프트웨어 또는 Field Programmable Gate Array(FPGA) 또는 주문형 반도체(ASIC, Application Specific Integrated Circuit)과 같은 하드웨어 구성요소를 의미하며, 모듈은 어떤 역할들을 수행한다. 그렇지만 모듈은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. 모듈은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다. 구성요소들과 모듈들에서 제공되는 기능은 더 작은 수의 구성요소들 및 모듈들로 결합되거나 추가적인 구성요소들과 모듈들로 더 분리될 수 있다.
그리고, 전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
110: 트래픽 데이터 수신부
120: 사용자 리스트 관리부
130: 트래픽 데이터 분류부

Claims (10)

  1. 트래픽 분류 장치에 있어서
    플로우 데이터 단위로 트래픽 데이터를 수신하는 트래픽 데이터 수신부,
    상기 트래픽 데이터의 속성 정보에 기초하여, 상기 트래픽 데이터가 특정 어플리케이션의 로그인 패턴 특성을 갖는지 여부에 따라 해당 트래픽 데이터를 발생시킨 노드를 사용자 리스트에 추가시키는 사용자 리스트 관리부 및
    상기 트래픽 데이터의 고유 패턴이 미리 설정된 패턴과 일치하는지 여부 및 상기 트래픽 데이터를 발생시킨 노드가 상기 사용자 리스트에 포함되어 있는지 여부에 따라 상기 트래픽 데이터를 상기 특정 어플리케이션의 트래픽 데이터로 분류하는 트래픽 데이터 분류부를 포함하는 트래픽 분류 장치.
  2. 제 1 항에 있어서,
    상기 특정 어플리케이션은,
    스카이프(Skype) 어플리케이션인 것을 특징으로 하는 트래픽 분류 장치.
  3. 제 2 항에 있어서,
    상기 사용자 리스트는,
    상기 스카이프 어플리케이션의 사용자 IP 및 포트를 포함하는 것인 트래픽 분류 장치.
  4. 제 1 항에 있어서,
    상기 사용자 리스트 관리부는,
    상기 트래픽 데이터의 고유 패턴이 미리 설정된 패턴과 일치하고, 상기 트래픽 데이터를 발생시킨 노드가 상기 사용자 리스트에 포함되어 있지 않는 경우, 상기 노드를 상기 사용자 리스트에 포함시켜 상기 사용자 리스트를 갱신시키는 것을 특징으로 하는 트래픽 분류 장치.
  5. 제 1 항에 있어서,
    상기 트래픽 데이터의 속성 정보에는
    소스 IP, 목적지 IP, 소스 포트, 목적지 포트, 및 프로토콜에 대한 정보 중 적어도 하나를 포함하는 것인 트래픽 분류 장치.
  6. 트래픽 분류 방법에 있어서,
    트래픽 데이터 수신부가 플로우 데이터 단위로 스카이프 어플리케이션의 트래픽 데이터를 수신하는 단계,
    사용자 리스트 관리부가 상기 트래픽 데이터의 속성 정보에 기초하여, 상기 트래픽 데이터가 상기 스카이프 어플리케이션의 로그인 패턴 특성을 갖는지 여부에 따라 해당 트래픽 데이터를 발생시킨 노드를 사용자 리스트에 추가시키는 단계 및
    트래픽 데이터 분류부가 상기 트래픽 데이터의 고유 패턴이 미리 설정된 패턴과 일치하는지 여부 및 상기 트래픽 데이터를 발생시킨 노드가 상기 사용자 리스트에 포함되어 있는지 여부에 따라 상기 트래픽 데이터를 상기 스카이프 어플리케이션의 트래픽 데이터로 분류하는 단계를 포함하는 트래픽 분류 방법.
  7. 제 6 항에 있어서,
    상기 스카이프 어플리케이션의 로그인 패턴 특성은,
    SC(Skype Client)에 저장되어 있던 SN(Super Node)의 리스트를 기반으로 하여 SC가 SN에게 UDP 패킷을 전송하는 단계,
    상기 SC가 상기 UDP 패킷에 대해 응답 패킷을 전달해온 SN과 TCP 연결을 수행하는 단계,
    상기 SC가 제 1 목적지 포트번호를 갖는 노드로 UDP 패킷을 전송하는 단계,
    상기 SC가 DNS 서버로 쿼리를 전송하여 스카이프 웹 서버의 IP를 수신하고,
    상기 SC가 상기 스카이프 웹 서버와 TCP 연결을 수행하는 단계 및
    상기 SC가 제 2 목적지 포트의 노드와 접속을 해제하며, 상기 제 1 목적지 포트의 노드와 TCP 연결을 이루었을 경우 해당 접속을 해제하는 단계 중 적어도 하나의 단계에서의 특징을 포함하는 것인 트래픽 분류 방법.
  8. 제 6 항에 있어서,
    상기 사용자 리스트는,
    상기 스카이프 어플리케이션의 사용자 IP 및 포트를 포함하는 것인 트래픽 분류 방법.
  9. 제 6 항에 있어서,
    상기 사용자 리스트 관리부는,
    상기 트래픽 데이터의 고유 패턴이 미리 설정된 패턴과 일치하고, 상기 트래픽 데이터를 발생시킨 노드가 상기 사용자 리스트에 포함되어 있지 않는 경우, 상기 노드를 상기 사용자 리스트에 포함시켜 상기 사용자 리스트를 갱신시키는 것을 특징으로 하는 트래픽 분류 방법.
  10. 제 6 항에 있어서,
    상기 트래픽 데이터의 속성 정보에는
    소스 IP, 목적지 IP, 소스 포트, 목적지 포트, 및 프로토콜에 대한 정보 중 적어도 하나를 포함하는 것인 트래픽 분류 방법.
KR1020100019109A 2009-10-23 2010-03-03 트래픽 분류 장치 및 방법 KR20110044680A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20090101022 2009-10-23
KR1020090101022 2009-10-23

Publications (1)

Publication Number Publication Date
KR20110044680A true KR20110044680A (ko) 2011-04-29

Family

ID=44049373

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100019109A KR20110044680A (ko) 2009-10-23 2010-03-03 트래픽 분류 장치 및 방법

Country Status (1)

Country Link
KR (1) KR20110044680A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10355982B2 (en) 2014-06-27 2019-07-16 Kt Corporation Network device and terminal for multi-path communication, operation method thereof, and program implementing operation method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10355982B2 (en) 2014-06-27 2019-07-16 Kt Corporation Network device and terminal for multi-path communication, operation method thereof, and program implementing operation method

Similar Documents

Publication Publication Date Title
US10951495B2 (en) Application signature generation and distribution
US9729584B2 (en) System and method for software defined behavioral DDoS attack mitigation
US10547674B2 (en) Methods and systems for network flow analysis
US7644150B1 (en) System and method for network traffic management
EP2538343A1 (en) Information and communication processing system, method, and network node
US20110206049A1 (en) Targeted flow sampling
US10079805B2 (en) Bypassing a firewall for authorized flows using software defined networking
US10375118B2 (en) Method for attribution security system
CN106936811A (zh) 安全设备、系统和方法
Shamsi et al. Faulds: A non-parametric iterative classifier for Internet-wide OS fingerprinting
US11489815B2 (en) Methods and systems for synchronizing state amongst monitoring nodes
KR20080061055A (ko) P2p 응용 서비스 식별 시스템 및 방법
US20220200910A1 (en) Methods and systems for autonomous rule-based task coordination amongst edge devices
US20210224283A1 (en) Monitoring network traffic to determine similar content
Mazhar Rathore et al. Exploiting encrypted and tunneled multimedia calls in high-speed big data environment
US10165092B2 (en) Using a network service header to manage a network-as-a-system
WO2017012471A1 (zh) 负载均衡处理方法及装置
US20140337478A1 (en) Peer-to-peer network communications
US9356876B1 (en) System and method for classifying and managing applications over compressed or encrypted traffic
Wijesinghe et al. Botnet detection using software defined networking
JP2007228217A (ja) トラフィック判定装置、トラフィック判定方法、及びそのプログラム
CN112445956A (zh) 合法拦截流量以基于流量关联的应用标识符或(url)进行分析
KR20110044680A (ko) 트래픽 분류 장치 및 방법
US9455911B1 (en) In-band centralized control with connection-oriented control protocols
EP2860911B1 (en) Method and device for classifying encrypted data flows between at least one web client and at least one web server

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application