KR102171348B1 - 어플리케이션 검출 방법 및 장치 - Google Patents

어플리케이션 검출 방법 및 장치 Download PDF

Info

Publication number
KR102171348B1
KR102171348B1 KR1020140002414A KR20140002414A KR102171348B1 KR 102171348 B1 KR102171348 B1 KR 102171348B1 KR 1020140002414 A KR1020140002414 A KR 1020140002414A KR 20140002414 A KR20140002414 A KR 20140002414A KR 102171348 B1 KR102171348 B1 KR 102171348B1
Authority
KR
South Korea
Prior art keywords
application
flows
score
detected
flow
Prior art date
Application number
KR1020140002414A
Other languages
English (en)
Other versions
KR20150082903A (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 KR1020140002414A priority Critical patent/KR102171348B1/ko
Priority to US14/592,540 priority patent/US9749200B2/en
Publication of KR20150082903A publication Critical patent/KR20150082903A/ko
Application granted granted Critical
Publication of KR102171348B1 publication Critical patent/KR102171348B1/ko

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/02Capturing of monitoring data
    • H04L43/026Capturing of monitoring data using flow identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

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

Abstract

본 발명은 어플리케이션을 검출하는 방법 및 장치를 제공한다. 본 발명에 따르면 패킷을 수신하여 검사하고, 미리 정의된 시그니처를 이용하여 상기 패킷으로부터 플로우들을 검출하고, 상기 검출된 플로우들 각각에 대해 점수를 부여하고, 상기 검출된 플로우들을 어플리케이션별로 통합하여 상기 부여된 점수들을 합산하고, 어플리케이션별로 통합된 플로우들의 합산된 점수를 미리 설정된 값과 비교하고, 상기 합산된 점수가 상기 미리 설정된 값보다 크면 어플리케이션이 검출된 것으로 판단한다.

Description

어플리케이션 검출 방법 및 장치{METHOD AND APPARATUS FOR APPLICATION DETECTION}
본 발명은 통신 시스템에서 패킷 검사를 이용하여 어플리케이션을 검출하는 방법 및 장치에 관한 것이다.
3GPP(3rd Generation Partnership Project)는 LTE(Long Term Evolution) 시스템과 같은 무선 통신 시스템에서 다수개의 통신 단말기들에 주파수 대역(bandwidth)과 같은 자원을 적절하게 할당하기 위해, 패킷 검사 장치가 심층 패킷 검사(Deep Packet Inspection; DPI)를 수행한다. 즉 패킷 검사 장치는 실시간으로 통신 단말기 별 자원 사용 내역을 식별(identification)하고, 그 정당성을 인증(authentication)한다. 그리고 패킷 검사 장치는 통신 단말기 별 자원 할당 여부, 자원 할당량 등을 결정할 수 있다. 이를 통해, 무선 통신 시스템에서 보다 효율적으로 자원을 운용할 수 있다.
DPI는 사용자 패킷의 계층 7(Layer 7) 데이터까지 검사한다. DPI를 통해 프로토콜 또는 어플리케이션(응용 서비스)을 검출하거나 상위 계층에 포함된 메타 데이터 정보를 추출한다.
DPI를 통해 얻어진 식별 정보와 추출된 데이터는 사업자 과금 정책의 결정, 어플리케이션의 종류에 따른 QoS(Quality of Service) 제공, 그리고 불법적 사용으로 인한 네트워크 장애 발생 탐지와 부하 분배 등의 목적으로 사용된다.
패킷 검사를 통해 어플리케이션을 검출하는 방법으로는 튜플(tuple) 정보 매칭 방법, 페이로드 내의 공통 데이터 패턴 매칭 방법, 어플리케이션의 행동 분석(behavior analysis) 데이터 매칭 방법 등이 있다. 튜플 정보 매칭 방법은 식별하고자 하는 어플리케이션 또는 프로토콜이 공통적으로 사용하는 튜플 정보를 비교하여 식별하는 방법이다. 공통 데이터 패턴 매칭 방법은 검출하고자 하는 어플리케이션이 포함하는 공통 패턴을 데이터베이스에 등록하고 데이터베이스에 등록된 공통 패턴과 검사하는 패킷의 페이로드 내의 패턴을 비교하여 검출하는 방법이다. 행동분석 데이터 매칭 방법은 bps(bits/sec), pps(packets/sec) 등의 패킷 통계 정보를 활용하거나 신경망(neural network), 머신 러닝(machine learning) 등의 학습 기반 패턴 매칭 접근법을 사용하는 방법이다.
한편, 최근에 네트워크 사업자는 지능형 네트워크의 구축을 통한 OPEX (Operation Expenditure) 절감을 위해 DPI의 기능을 강화해 나가고 있다. 반면, VoIP(Voice over Internet Protocol)나 비디오 스트리밍 서비스 등을 제공하는 컨텐츠 제공 사업자는 네트워크 사업자에 의한 어플리케이션 검출을 불가능하게 함으로써 서비스 제한을 회피하고 사용자 데이터 보안을 강화하기 위해 데이터 암호화나 개인적인 프로토콜(proprietary protocol)을 사용하여 공통 패턴을 발견하기 어렵게 하거나 RTP(Real-time Transport Protocol), SIP(Session Initiation Protocol) 등의 표준 프로토콜을 사용함으로써 어플리케이션 간의 구별을 어렵게 하고 있다. 따라서 네트워크 사업자는 SNS(Social Networking Service), 메일 서비스 등에 특화된 맞춤형 요금제를 제공하기 어렵다.
본 발명이 해결하고자 하는 과제는 어플리케이션이 서비스 제공을 위해 생성하는 플로우들을 이용하여 어플리케이션을 검출함으로써 낮은 검출 비용과 높은 정확도로 어플리케이션을 검출하는 방법 및 장치를 제공하는 것이다.
본 발명의 실시예에 따르면, 무선 통신 시스템에서 어플리케이션을 검출하는 방법에 있어서, 패킷을 수신하여 검사하는 과정과, 미리 정의된 시그니처를 이용하여 상기 패킷으로부터 플로우들을 검출하는 과정과, 상기 검출된 플로우들 각각에 대해 점수를 부여하고, 상기 검출된 플로우들을 어플리케이션별로 통합하여 상기 부여된 점수들을 합산하는 과정과, 어플리케이션별로 통합된 플로우들의 합산된 점수를 미리 설정된 값과 비교하는 과정과, 상기 합산된 점수가 상기 미리 설정된 값보다 크면 어플리케이션이 검출된 것으로 판단하는 과정을 포함한다.
또한 본 발명의 실시예에 따르면, 무선 통신 시스템에서 어플리케이션을 검출하는 장치에 있어서, 패킷을 수신하여 검사하는 검사부와, 미리 정의된 시그니처를 이용하여 상기 패킷으로부터 플로우들을 검출하는 플로우검출부와, 상기 검출된 플로우들 각각에 대해 부여할 점수를 저장하는 점수 매핑부와, 상기 검출된 플로우들을 어플리케이션별로 통합하고 상기 검출된 플로우들 각각에부여된 점수들을 합산하는 점수 합산부와, 상기 어플리케이션별로 통합된 플로우들의 합산된 점수를 미리 설정된 값과 비교하고, 상기 합산된 점수가 상기 미리 설정된 값보다 크면 어플리케이션이 검출된 것으로 판단하는 어플리케이션 검출부를 포함한다.
도 1은 본 발명이 적용되는 무선 통신 시스템을 도시하는 개략도
도 2는 본 발명의 실시예에 따른 DPI 장치의 구성을 도시한 도면
도 3은 본 발명의 실시예에 따른 플로우 검출 과정을 도시한 순서도
도 4와 도 5는 본 발명의 실시예에 따른 어플리케이션 검출의 예를 도시한 도면
도 6은 본 발명의 실시예에 따른 점수 매핑 함수의 예를 도시한 도면
도 7은 표준 프로토콜인 SIP을 기반으로 하는 VoIP 서비스를 제공하는 어플리케이션을 검출하는 예를 도시한 도면
도 8은 오픈 API를 이용하는 SNS 서비스의 어플리케이션을 검출하는 예를 도시한 도면
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다.
그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 및 청구범위 전체에서, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.
이제 본 발명의 실시 예에 따른 어플리케이션 검출 방법에 대하여 도면을 참고로 하여 상세하게 설명한다.
도 1은 본 발명이 적용되는 무선 통신 시스템을 도시하는 개략도이다.
도 1을 참조하면, 무선 통신 시스템은 통신 단말기(110), 무선 네트워크(Radio Access Network; 120), 코어 네트워크(Core Network; 130) 및 인터넷 프로토콜 네트워크(Internet Protocol Network; IP Network; 140)를 포함한다.
통신 단말기(110)는 이동성(mobility)이 있으며, 패킷의 송수신이 가능하다. 이때 통신 단말기(110)는 무선 통신 프로토콜에 따라 패킷을 송수신한다. 그리고 통신 단말기(110)는 다양한 어플리케이션들의 수행이 가능하여, 어플리케이션들 중 적어도 어느 하나를 통해 패킷을 생성하거나 이용한다.
무선 네트워크(120)는 UTRAN(UMTS Terrestrial Radio Access Network)을 구성한다. 이러한 무선 네트워크(120)는 다수개의 기지국(121)들과 무선 네트워크 제어기(Radio Network Controller; RNC; 123)를 포함한다. 각각의 기지국(121)은 통신 단말기(110)와 무선으로 접속하여 통신을 수행한다. 여기서, 기지국(121)은 통신 단말기(110)와 Uu 인터페이스를 통해 접속할 수 있다. 무선 네트워크 제어기(123)는 통신 단말기(110)를 관리하고, 기지국(121)들을 위한 무선 자원을 제어한다. 여기서, 무선 네트워크 제어기(123)는 기지국(121)과 Iu 인터페이스
를 통해 접속할 수 있다. 즉 무선 네트워크 제어기(123)는 기지국(121)들에 무선 자원을 할당하며, 각각의 기지국(121)은 통신 단말기(110)에 무선 자원을 제공한다. 이 때 무선 네트워크 제어기(123)는 직접적으로 통신 단말기(110)와 무선 접속할 수도 있다.
코어 네트워크(130)는 무선 네트워크(120)의 패킷 교환을 지원한다. 이러한 코어 네트워크(130)는 서빙 게이트웨이(Serving GateWay; S-GW; 131) 및 패킷 데이터 네트워크 게이트웨이(Packet Data Network GateWay; P-GW; 133)를 포함한다.
S-GW(131)는 통신 단말기(110)의 이동성을 관리하고, 패킷 송수신을 위한 세션(session)을 관리하며, 그에 따른 인증 및 과금을 처리한다. 그리고 P-GW(133)는 패킷을 위한 라우팅(routing) 기능을 수행한다. P-GW(133)는 통신 단말기(110)의 IP 주소를 관리하고, 패킷 송수신을 위한 세션을 관리한다. 그리고 P-GW(133)는 패킷을 위한 라우팅 기능을 수행한다. 이 때 코어 네트워크(130)에서, P-GW(133) 또는 S-GW(131)는 본 발명의 실시예에 따라 통신 단말기(110)를 위한 패킷에 심층 패킷 검사를 수행하기 위한 심층 패킷 검사(Deep Packet Inspection; DPI) 장치를 구비한다. DIP 장치는 게이트웨이 장치 뿐만 아니라 패킷 처리를 수행하는 다른 트래픽 장치에 구비될 수도 있다.
DPI 장치는 네트워크 관리자로부터 응용 서비스에 따른 QoS 정보를 수신하여 저장 및 관리한다. DPI 장치는 패킷을 수신하면, 수신한 패킷의 L7(Layer 7) 계층까지 분석하여 패킷의 응용 서비스를 검사한다.
일반적으로 어플리케이션은 서비스 수행을 위해 사용자 인증, 제어 채널, 데이터 채널, 기타 정보 등을 교환하기 위하여 동시에 다수의 플로우를 생성한다. 서비스를 구성하는 개별 플로우의 검출은 각기 다른 시그니처(signature)를 필요로 하며, 각기 다른 검출 효율을 갖는다. 본 발명의 실시예에서는 이러한 플로우 검출 특성을 이용하여, 서비스를 구성하는 개별 플로우에 각각 점수를 부여하고 각각의 플로우가 검출될 때마다 각 플로우에 대한 점수를 합산하여 어플리케이션의 식별 여부를 판단한다. 이와 같이 플로우별 점수 합산을 이용하여 어플리케이션을 검출할 경우, SIP, RTP 등 표준 프로토콜을 사용하여 어플리케이션 간의 식별이 어려운 어플리케이션과, 공통 패턴을 찾기 힘든 암호화 또는 개인 설정 프로토콜(proprietary protocol)을 사용하는 어플리케이션과, 오픈 API를 이용하여 서비스를 구성하는 어플리케이션 등 검출이 어려운 어플리케이션도 용이하게 검출할 수 있다.
도 2는 본 발명의 실시예에 따른 DPI 장치의 구성을 도시한 것이다.
도 2를 참조하면, DPI 장치(200)는 검사부(210), 어플리케이션 검출부(220), 플로우 검출부(230), 점수 합산부(240) 및 점수 매핑부(250)를 포함한다. 검사부(210)는 입력되는 패킷을 검사하여 계층 4 이상의 응용 데이터로부터 서비스 이름이나 아이피 등을 검색하고 검색된 결과를 어플리케이션 검출부(220)로 전달한다. 어플리케이션 검출부(220)는 검사부(210)에서 검색된 결과를 토대로 어플리케이션을 검출한다. 또한 어플리케이션 검출부(220)는 플로우 검출부(230)로 플로우 검출을 요청하고 그 결과를 수신하여 최종적으로 어플리케이션 검출 여부를 결정한다. 플로우 검출부(230)는 어플리케이션을 구성하는 각각의 플로우를 검출하여 각 플로우에 점수를 부여한다. 플로우 검출부(230)는 점수 매핑부(250)에 저장된 플로우별 점수를 토대로 검출된 각 플로우에 점수를 부여한다. 그리고 그 결과를 점수 합산부(240)로 전달하면, 점수 합산부(240)는 각 플로우의 점수를 합산한 결과를 플로우 검출부(230)로 전달한다. 이때, 플로우 검출부(230)가 점수 매핑부(250)를 참조하지 않고 검출된 플로우를 점수 합산부(240)로 전달하면, 점수 합산부(240)가 점수 매핑부(250)에 저장된 플로우별 점수를 토대로 각 플로우에 점수를 부여하고 그 점수를 합산한 결과를 플로우 검출부(230)로 전달할 수도 있다.
다음, 어플리케이션 검출 과정에 대해 상세하게 설명한다.
본 명세서에서는 어플리케이션 플로우가 시그니처에 의해 검출되었으나, 아직 어플리케이션 플로우로 최종 판단되지 않은 상태를 의심(suspicious) 플로우라 칭한다. 플로우 검출부(230)에서는 의심 플로우를 검출하고, 점수 매핑부(250)는 각 의심 플로우별 점수를 결정하여 저장한다. 점수 매핑부(250)는 의심 플로우별 점수를 결정할 때, 플로우 타입, 시그니처 유형, 시그니처 검출 정확도 등을 고려하여 점수를 결정한다. 플로우 검출부(230)는 검출한 플로우의 시그니처를 사전에 정의된 시그니처와 비교하여 일치하면 해당 플로우를 의심 플로우로 분류한다. 점수 합산부(230)는 의심 플로우들을 어플리케이션 별로 통합하여 관리한다. 즉, 플로우 검출부(230)는 의심 플로우들이 검출될 때마다 점수 매핑부(250)로부터 해당 플로우의 점수를 받아서 점수 합산부(240)로 전달하며, 점수 합산부(230)는 해당 플로우 관련 어플리케이션 그룹의 점수를 합산하여 관리한다.
또한 다른 방법으로, 플로우 검출부(230)는 의심 플로우를 검출하여 점수 합산부(240)로 검출 여부를 알리고, 점수 합산부(240)가 점수 매핑부(250)로부터 직접 해당 플로우의 점수를 받아서 관련 어플리케이션별로 점수를 합산할 수도 있다.
플로우 검출부(230)는 새로운 의심 플로우가 검출될 때마다 점수 합산부(240)로부터 해당 어플리케이션의 점수의 합산을 조회하고 그 결과를 어플리케이션 검출부(220)로 전달한다. 어플리케이션 검출부(220)는 의심 플로우들의 점수의 총합이 기준값 이상이 되면, 해당 의심 플로우 그룹을 어플리케이션으로 판단한다. 이때 점수의 합산은 슬라이딩 타임 윈도우를 이용하여 현 시점을 기준으로 일정 시간 내에 합산된 것만을 유효한 것으로 처리한다.
슬라이딩 타임 윈도우를 이용하여 점수를 합산하는 절차는 다음과 같다.
점수 매핑부(250)는 의심 플로우 별로 점수 합산에 사용될 점수값(m)을 할당한다. 플로우 검출부(230)에서 플로우가 검출되면 플로우 검출부(230)는 점수 매핑부(250)를 통해 해당 플로우에 할당된 점수값을 가져와서 점수 합산부(240)에서 관리하는 어플리케이션 별 합산값(S)에 포함시키고, 해당 플로우를 관련 어플리케이션의 의심 플로우로 분류하여 관리한다. 특정 어플리케이션과 관련된 플로우들이 타임 윈도우(W) 내에서 계속해서 검출되고, 이때 점수 합산부(240)에서 관리하는 해당 어플리케이션의 합산값(S)이 미리 정해진 기준값(Qualification Score; QS) 이상이 되면, 플로우 검출부(240)는 점수 합산에 기여한 플로우들 전체를 관련 어플리케이션의 플로우로 판단한다. 이때, 어플리케이션 별로 QS를 다르게 하고, 여러 어플리케이션에 포함될 수 있는 공통 플로우의 어플리케이션 검출 공헌도도 다르게 설정할 수 있다. 플로우 검출부(240)는 검출된 플로우가 타임 윈도우(W)를 벗어난 시점에 발생한 것이라면 해당 플로우를 합산에서 제외하고 해당 플로우를 의심 플로우에서 배제한다. 이와 같이 합산값은 타임 윈도우(W)내에서 발생한 값만을 사용하는데, 이는 실제 어플리케이션의 서비스 시작 시점과 시간적으로 떨어져서 검출된 플로우는 해당 어플리케이션과의 연관성이 없을 가능성이 크기 때문이다. 이를 위해 어플리케이션 특성에 따라 어플리케이션 별로 타임 윈도우를 다르게 설정함으로써 실제로 어플리케이션에 속하지 않은 플로우가 어플리케이션 식별에 공헌하거나 어플리케이션에 종속된 플로우로 식별되는 것을 방지할 수 있다.
도 3은 본 발명의 실시예에 따른 플로우 검출 과정을 도시한 순서도이다.
도 3을 참조하면, 수신된 패킷을 검사하여 계층 4 이상의 응용 데이터의 서비스 이름, 아이피 등을 검색하고, 그 결과를 토대로 어플리케이션을 검출하고(310), 검출된 어플리케이션의 하위 플로우들을 검출한다(320). 다음으로, 검출된 하위 플로우들 각각에 대해 점수를 부여하고, 어플리케이션 별로 하위 플로우들의 점수를 합산한다(330). 그리고 어플리케이션별로 합산된 점수를 해당 어플리케이션에 대한 기준값과 비교하여, 합산값이 기준값을 넘으면 최종적으로 해당 어플리케이션이 검출된 것으로 판단한다(340).
도 4와 도 5는 본 발명의 실시예에 따른 어플리케이션 검출의 예를 도시한 것이다.
도 4에서 430은 t0에서 시작된 타임 윈도우(W0) 내에 있는 플로우들을 나타내고, 410은 t0에서 시작된 타임 윈도우(W0) 내에서 검출된 의심 플로우들을 나타내고, 440은 t1에서 시작된 타임 윈도우(W1) 내에 있는 플로우들을 나타내고, 420은 t1에서 시작된 타임 윈도우(W1) 내에서 검출된 의심 플로우들을 나타낸다.
도 5를 참조하면, t0에서 시작된 타임 윈도우(W0) 내에서 플로우 1 내지 플로우 5가 검출되었고, 이들 합은 0.9이다. 해당 어플리케이션의 QS값이 1.0으로 설정된 경우를 가정하면, t0에 시작된 타임 윈도우(W0) 내에서 검출된 플로우들의 점수 합이 해당 어플리케이션의 QS값인 1.0보다 낮기 때문에, 플로우 1 내지 5는 최종적으로 타겟 어플리케이션에 포함되지 않은 것으로 판단한다. 또한 t1에서 시작된 타임 윈도우(W1) 내에서 플로우 2 내지 플로우 8이 검출되었고, 이들 합은 1.3이다. 이와 같이 t1에 시작된 타임 윈도우(W1) 내에서 검출된 플로우들의 점수 합이 해당 어플리케이션의 QS값인 1.0보다 높기 때문에, 플로우 2 내지 8은 최종적으로 타겟 어플리케이션에 포함된 플로우로 판단한다. 이때 플로우 1은 현재의 타임 윈도우(W1) 밖에서 검출되었으므로 해당 어플리케이션의 플로우로 판단하지 않는다.
도 6은 본 발명의 실시예에 따른 점수 매핑 함수의 예를 도시한 것이다.
도 6에서는 플로우 점수가 플로우 식별 시그니처(S)의 오검출 확률(pf(s))에 반비례하는 값을 갖도록 설정하였다. 또한 함수에 스케일 상수 c1과 c2를 도입하고, 이 값들을 변경함으로써 오검출 확률과 검출 확률 사이의 트레이드 오프(tradeoff)를 결정할 수 있도록 할 수 있다.
도 7은 표준 프로토콜인 SIP을 기반으로 하는 VoIP 서비스를 제공하는 어플리케이션을 검출하는 예를 도시한 것이다.
일반적으로 SIP, RTP와 같이 표준 프로토콜을 이용하는 VoIP 서비스의 경우, 관련 플로우만으로 어플리케이션을 식별하기는 쉽지 않다. 도 7에서 보는 바와 같이 인바이트(INVITE) 메시지에 포함된 SDP(Session Description Protocol) 메시지에 RTP 아이피와 포트 정보는 포함되어 있으나, 어플리케이션을 식별하기 위한 패턴은 존재하지 않는다. 그러나 어플리케이션은 호가 생성되는 시점에 사용자 인증을 위한 TLS/SSL(Transport Layer Security/ Secure Sockets Layer) 플로우와 프레즌스(presence) 서비스를 제공하기 위한 재버(Jabber) 플로우를 시작한다. 이들 플로우에는 서비스 이름(example-voip)이 포함되어 있으므로 이 정보를 이용하여 어플리케이션을 검출하는 것이 가능하다. 도 7에서는 타임 윈도우 사이즈를 1초로 하고, QS를 1.0으로 설정하였다. SIP/RTP 등의 표준 프로토콜에 대한 플로우 점수는 각각 0.2로 상대적으로 낮게 설정하고, 문자열이 포함된 Jabber와 TSL/SSL 플로우는 각각 0.4로 설정하였다. 이때, Jabber나 TLS/SSL 플로우은 통화 이외에도 다른 부가 서비스에 활용될 수 있으므로, 이들 플로우의 검출만으로 VoIP 서비스 어플리케이션으로 판단되지 않도록 하기 위해서는 QS를 1.0 이하의 값으로 설정해야 한다.
도 8은 오픈 API를 이용하는 SNS 서비스의 어플리케이션을 검출하는 예를 도시한 것이다. 도 8에서는 구글(Google)에서 개발한 SNS 서비스의 어플리케이션을 예로 들었다. 해당 SNS 서비스는 구글에서 개발한 서비스이기 때문에 인증, 정적 데이터, 부가 서비스 등이 모두 구글의 오픈 API로 구성되어 있다. 따라서 어플리케이션을 시작할 때 도 8과 같은 공통 서비스 콤포넌트들(Common Service Components)이 비슷한 시점에 발생한다. 이와 같이 API를 사용하는 개별 플로우 만으로는 서비스를 식별하기 어렵지만 플로우들간의 연관관계를 이용하는 본 발명의 실시예에 따른 어플리케이션 검출 방법을 이용하면 해당 어플리케이션을 쉽게 검출할 수 있다. 도 8에서는 타임 윈도우 사이즈 WT를 1초, QS=1.0로 설정하고, "orkut" 문자열을 포함하는 HTTP 플로우가 해당 어플리케이션을 검출하는데 큰 비중을 차지하므로, "orkut" 문자열을 포함하는 HTTP 플로우의 점수를 0.9, 나머지 오픈 API 서비스에 해당하는 플로우의 점수를 각각 0.02로 설정하였다.
이와 같이 본 발명의 실시예에 따른 플로우별 점수 합산을 토대로 어플리케이션을 검출하면, 플로우 검출에 사용되는 시그니처가 단순하여 오검출 확률이 높은 경우에도, 정해진 타임 윈도우 내에서 검출된 플로우들을 토대로, 즉 플로우들간의 상관 관계를 이용하여 어플리케이션 검출 여부를 판단하므로, 어플리케이션 자체의 오검출 확률을 효과적으로 통제할 수 있다. 또한 어플리케이션의 특성, 플로우의 특성 등에 따라 플로우별로 점수와 어플리케이션별 QS를 다르게 설정함으로써 어플리케이션의 검출 정확도, 오검출 확률, 검출 비용 등을 시스템 성능에 맞게 적절히 조절할 수 있다. 또한 어플리케이션의 검출 정확도를 높임으로써 네트워크 서비스 사업자는 서비스에 특화된 맞춤형 요금제를 제공할 수 있다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.

Claims (12)

  1. 무선 통신 시스템에서 어플리케이션을 검출하는 방법에 있어서,
    패킷을 수신하여 검사하는 과정과,
    미리 정의된 시그니처를 이용하여 상기 패킷으로부터 플로우들을 검출하는 과정과,
    상기 검출된 플로우들 각각에 대해 점수를 부여하고, 상기 검출된 플로우들을 어플리케이션별로 통합하여 상기 부여된 점수들을 합산하는 과정과,
    상기 어플리케이션별로 통합된 플로우들의 합산된 점수를 어플리케이션별로 미리 설정된 값과 비교하는 과정과,
    특정 어플리케이션으로 통합된 플로우들의 합산된 점수가 상기 특정 어플리케이션에 대해 미리 설정된 값 이상이면 상기 합산에 기여한 플로우들을 상기 특정 어플리케이션의 플로우로 검출하는 과정을 포함하고,
    상기 합산하는 과정은 어플리케이션별로 다르게 설정된 시간 단위의 타임 윈도우 내에서 검출된 플로우들에 대한 점수를 유효한 것으로 처리하는 것인 어플리케이션 검출 방법.
  2. 제1항에 있어서,
    상기 비교하는 과정은 새로운 플로우가 검출될 때마다 수행되는 어플리케이션 검출 방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 점수는 플로우 타입, 시그니처의 유형, 시그니처의 검출 정확도 중 적어도 하나를 고려하여 플로우별로 결정되는 어플리케이션 검출 방법.
  5. 삭제
  6. 무선 통신 시스템에서 어플리케이션을 검출하는 장치에 있어서,
    제어기를 포함하고, 상기 제어기는:
    패킷을 수신하여 검사하고,
    미리 정의된 시그니처를 이용하여 상기 패킷으로부터 플로우들을 검출하고,
    상기 검출된 플로우들 각각에 대해 점수를 부여하고, 상기 검출된 플로우들을 어플리케이션별로 통합하여 상기 검출된 플로우들 각각에 부여된 점수들을 합산하고,
    어플리케이션별로 다르게 설정된 시간 단위의 타임 윈도우 내에서 검출된 플로우들에 대한 점수를 유효한 것으로 처리하고,
    상기 어플리케이션별로 통합된 플로우들의 합산된 점수를 어플리케이션별로 미리 설정된 값과 비교하고,
    특정 어플리케이션으로 통합된 플로우들의 합산된 점수가 상기 특정 어플리케이션에 대해 미리 설정된 값 이상이면 상기 합산에 기여한 플로우들을 상기 특정 어플리케이션의 플로우로 검출하는 어플리케이션 검출 장치.
  7. 제6항에 있어서,
    상기 제어기는 새로운 플로우가 검출될 때마다 상기 합산된 점수를 상기 어플리케이션별로 미리 설정된 값과 비교하는 어플리케이션 검출 장치.
  8. 삭제
  9. 제6항에 있어서,
    상기 점수는 플로우 타입, 시그니처의 유형, 시그니처의 검출 정확도 중 적어도 하나를 고려하여 플로우별로 결정되는 어플리케이션 검출 장치.
  10. 삭제
  11. 삭제
  12. 삭제
KR1020140002414A 2014-01-08 2014-01-08 어플리케이션 검출 방법 및 장치 KR102171348B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140002414A KR102171348B1 (ko) 2014-01-08 2014-01-08 어플리케이션 검출 방법 및 장치
US14/592,540 US9749200B2 (en) 2014-01-08 2015-01-08 Method and apparatus for detecting application

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140002414A KR102171348B1 (ko) 2014-01-08 2014-01-08 어플리케이션 검출 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20150082903A KR20150082903A (ko) 2015-07-16
KR102171348B1 true KR102171348B1 (ko) 2020-10-29

Family

ID=53496043

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140002414A KR102171348B1 (ko) 2014-01-08 2014-01-08 어플리케이션 검출 방법 및 장치

Country Status (2)

Country Link
US (1) US9749200B2 (ko)
KR (1) KR102171348B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9798588B1 (en) * 2012-04-25 2017-10-24 Significs And Elements, Llc Efficient packet forwarding using cyber-security aware policies
US9172627B2 (en) * 2013-03-15 2015-10-27 Extreme Networks, Inc. Device and related method for dynamic traffic mirroring
US9853876B1 (en) 2014-06-13 2017-12-26 Narus, Inc. Mobile application identification in network traffic via a search engine approach
JP2019191744A (ja) * 2018-04-20 2019-10-31 株式会社ウインライト 活動資金のための出資公募システム
CN111953552B (zh) * 2019-05-14 2022-12-13 华为技术有限公司 数据流的分类方法和报文转发设备
US11792114B2 (en) * 2019-05-23 2023-10-17 Hewlett Packard Enterprise Development Lp System and method for facilitating efficient management of non-idempotent operations in a network interface controller (NIC)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120272289A1 (en) 2010-07-14 2012-10-25 Domanicom Corporation Devices, systems, and methods for providing increased security when multiplexing one or more services at a customer premises
US20130117140A1 (en) 2011-06-22 2013-05-09 Cellco Partnership D/B/A Verizon Wireless Data transport content association
US20130272121A1 (en) 2012-04-17 2013-10-17 Cygnus Broadband, Inc. Systems and methods for application-aware admission control in a communication network

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007044500A2 (en) * 2005-10-06 2007-04-19 C-Sam, Inc. Transactional services
KR101195944B1 (ko) 2008-12-17 2012-10-29 고려대학교 산학협력단 심층 패킷 검사 장치 및 심층 패킷 검사 방법
EP2838230A3 (en) * 2010-10-27 2015-03-11 Interdigital Patent Holdings, Inc. Scalable policy-controlled packet inspection systems and methods for advanced application interface
KR101344398B1 (ko) * 2011-10-21 2013-12-23 한국전자통신연구원 애플리케이션 인지와 트래픽 제어를 위한 라우터 장치 및 그 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120272289A1 (en) 2010-07-14 2012-10-25 Domanicom Corporation Devices, systems, and methods for providing increased security when multiplexing one or more services at a customer premises
US20130117140A1 (en) 2011-06-22 2013-05-09 Cellco Partnership D/B/A Verizon Wireless Data transport content association
US20130272121A1 (en) 2012-04-17 2013-10-17 Cygnus Broadband, Inc. Systems and methods for application-aware admission control in a communication network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
J. Y. Chung et al, "Traffic classification based on flow similarity", Proc. IPOM 2009, pp. 65-77, Springer Berlin Heidelberg(2009.10.)*

Also Published As

Publication number Publication date
US20150195155A1 (en) 2015-07-09
KR20150082903A (ko) 2015-07-16
US9749200B2 (en) 2017-08-29

Similar Documents

Publication Publication Date Title
US11019077B2 (en) Multi-access distributed edge security in mobile networks
KR102171348B1 (ko) 어플리케이션 검출 방법 및 장치
JP6974622B2 (ja) モバイルネットワークにおけるマルチアクセス分散型エッジセキュリティ
US10462626B2 (en) Control of communication using service function chaining
JP7344314B2 (ja) ネットワーク異常検出
US20140189861A1 (en) System and method for correlating network information with subscriber information in a mobile network environment
US20090172171A1 (en) Method and an apparatus for disguising digital content
US11223955B2 (en) Mitigation of spoof communications within a telecommunications network
US20130294449A1 (en) Efficient application recognition in network traffic
CN113206814B (zh) 一种网络事件处理方法、装置及可读存储介质
US20210092610A1 (en) Method for detecting access point characteristics using machine learning
US10834052B2 (en) Monitoring device and method implemented by an access point for a telecommunications network
US20200213886A1 (en) Selective user plane monitoring multiple monitoring probes when a serving gateway has multiple ip addresses
US20170180382A1 (en) Method and Apparatus for Using Software Defined Networking and Network Function Virtualization to Secure Residential Networks
US20190104045A1 (en) Selective user plane monitoring using a single network monitoring probe
US10541985B2 (en) Coordinated packet delivery of encrypted session
US9730112B2 (en) Identity based access and performance allocation
US20160191395A1 (en) Applying policies based on unique content identifiers
US20220303201A1 (en) Traffic Monitoring in a Network Node
EP2701353B1 (en) Mobile Application Classification
US20160080276A1 (en) Methods and arrangement for adapting quality of service for a private channel based on service awareness
WO2018219455A1 (en) Management of encrypted network traffic
Park et al. Threats and countermeasures on a 4G mobile network
KR101351607B1 (ko) 복수의 호스트와 서버간의 패킷의 전송을 제어하는 방법 및 부하 분산 장치, 그리고 부하 분산 장치로부터 패킷을 수신하는 방법 및 서버
Santos et al. Improving cellular IoT security with identity federation and anomaly detection

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)