KR20190066741A - System for performing anomaly detection using traffic classification - Google Patents

System for performing anomaly detection using traffic classification Download PDF

Info

Publication number
KR20190066741A
KR20190066741A KR1020170166449A KR20170166449A KR20190066741A KR 20190066741 A KR20190066741 A KR 20190066741A KR 1020170166449 A KR1020170166449 A KR 1020170166449A KR 20170166449 A KR20170166449 A KR 20170166449A KR 20190066741 A KR20190066741 A KR 20190066741A
Authority
KR
South Korea
Prior art keywords
information
flow
service
traffic
data packet
Prior art date
Application number
KR1020170166449A
Other languages
Korean (ko)
Other versions
KR102055363B1 (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 KR1020170166449A priority Critical patent/KR102055363B1/en
Publication of KR20190066741A publication Critical patent/KR20190066741A/en
Application granted granted Critical
Publication of KR102055363B1 publication Critical patent/KR102055363B1/en

Links

Images

Classifications

    • 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
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • 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]

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

According to an embodiment of the present invention, a service traffic classifying device comprises: a flow processing unit for obtaining flow information from data packets transmitted and received via a network by a server providing a plurality of application services; a service defining unit for receiving network information of each of the application services and defining service-flow correspondence information for each of the application services based on the network information; and a traffic analyzing unit for classifying and generating traffic statistics information for data packet communication for each of the application services based on the flow information and the service-flow correspondence information.

Description

트래픽 분류를 이용하여 이상 탐지를 수행하기 위한 시스템 {SYSTEM FOR PERFORMING ANOMALY DETECTION USING TRAFFIC CLASSIFICATION}TECHNICAL FIELD [0001] The present invention relates to a system for performing anomaly detection using traffic classification,

본 발명은 데이터 센터(data center)에서 어플리케이션 서비스의 제공을 위한 복수의 서버(server)를 포함하는 서버 시스템의 이상 발생 여부 및 상기 이상의 원인을 트래픽 분석을 통해 효과적으로 탐지하기 위한 이상 탐지 시스템에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an abnormality detection system for effectively detecting whether an abnormality occurs in a server system including a plurality of servers for providing an application service in a data center, .

전산 시스템 및 이에 의해 제공되는 서비스의 유지를 위해서는, 시스템의 이상 발생 여부 및 상기 이상의 원인을 신속하고 정확하게 효과적으로 탐지할 것이 필수적으로 요구된다. 이와 같은 시스템의 이상을 조속히 탐지하여 해결하지 않으면, 시스템의 운영 및 서비스의 제공에 심각한 차질이 생길 수 있기 때문이다.In order to maintain the computerized system and the services provided by the computerized system, it is indispensably required to quickly and accurately detect whether or not an abnormality occurs in the system and the cause of the abnormality. Failure to detect and resolve such anomalies quickly can lead to serious disruptions in the operation of the system and in the provision of services.

최근에는 클라우드(cloud) 서버 시스템과 같은, 복수의 물리 혹은 논리 서버를 포함하여 다양한 어플리케이션 서비스를 제공하기 위한 서버 시스템이 대중화되고 있다. 이와 같은 서버 시스템에서는, 다양한 서비스 제공자(tennant)가 상기 서버 시스템을 통해 저마다의 어플리케이션 서비스를 제공할 수 있다. 각 어플리케이션 서비스는, 상기 서버 시스템에 포함된 서버인 호스트(host) 중 하나 이상을 이용하여 서비스될 수 있다.In recent years, a server system for providing various application services including a plurality of physical or logical servers, such as a cloud server system, has become popular. In such a server system, various service providers can provide each application service through the server system. Each application service can be serviced using one or more of the hosts, which are servers included in the server system.

전술한 바와 같은 서버 시스템에서, 각 어플리케이션 서비스의 제공자는 자신의 서비스와 관련된 데이터의 전송 현황을 모니터링하기를 원할 수 있다. 하지만 상기한 클라우드 환경과 같은 경우에 있어서는, 서버 시스템에 속한 복수의 서버가 데이터 전송을 위해 스위치 또는 라우터의 하나의 물리적 포트(port)를 공유할 수 있다. 또한, 하나의 물리 서버 내에도 가상 머신(virtual machine, VM)을 통해 구현된 복수의 논리 서버가 존재할 수 있으므로, 상기 하나의 물리적 포트를 공유하는 서비스 혹은 호스트의 수는 더욱 많아질 수 있다.In the server system as described above, the provider of each application service may want to monitor the transmission status of data associated with its service. However, in the case of the above-described cloud environment, a plurality of servers belonging to the server system may share one physical port of a switch or a router for data transmission. In addition, since there can exist a plurality of logical servers implemented in a single physical server through a virtual machine (VM), the number of services or hosts sharing the one physical port can be further increased.

이와 같이 매우 많은 수의 어플리케이션 서비스 혹은 호스트가 하나의 물리적 포트를 통해 데이터를 전송하는 상황에서는, 물리적 포트의 패킷 전송 통계를 모니터링하는 방법으로는 서비스별, 혹은 호스트별 데이터 전송 현황을 모니터링하기가 어렵다. 또한, 트래픽(traffic)의 급증 혹은 급감과 같은, 서버 시스템의 이상 징후가 나타났을 때에도, 상기 이상 징후를 유발한 서비스 혹은 호스트를 찾아내어 문제에 대한 대처를 수행하는 것 역시 어렵게 된다.In such a situation where a very large number of application services or hosts transmit data through one physical port, it is difficult to monitor the data transmission status by service or host as a method of monitoring the packet transmission statistics of the physical port . Also, when an abnormal symptom of the server system occurs such as a surge or a sudden decrease in traffic, it is also difficult to find a service or a host that caused the abnormal symptom and to deal with the problem.

한국등록특허공보, 제 10-1661743 호 (2016.10.11. 공고)Korean Registered Patent Publication No. 10-1661743 (issued October 10, 2016)

본 발명이 해결하고자 하는 과제는, 복수의 서버로 구성되는 서버 시스템을 통해 어플리케이션 서비스를 제공함에 있어서, 상기 서버 시스템에서의 이상 발생 여부 및 상기 이상의 원인이 되는 서비스 혹은 호스트를 트래픽 분석을 통해 효과적으로 탐지하기 위한 장치 및 시스템을 제공하는 것이다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a method and system for providing an application service through a server system constituted by a plurality of servers by effectively detecting whether or not an error has occurred in the server system, And to provide a device and system for performing the method.

다만, 본 발명이 해결하고자 하는 과제는 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 해결하고자 하는 과제는 아래의 기재로부터 본 발명이 속하는 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.It is to be understood, however, that the present invention is not limited to the above-mentioned embodiments, but other and further objects which need not be mentioned can be clearly understood by those skilled in the art from the following description will be.

본 발명의 일 실시예에 따른 서비스 트래픽 분류 장치는, 복수의 어플리케이션 서비스를 제공하는 서버 시스템에 의해 네트워크를 통하여 송신 혹은 수신되는 데이터 패킷으로부터, 플로우(flow) 정보를 획득하는 플로우 처리부, 상기 각 어플리케이션 서비스의 네트워크 정보를 수신하여, 상기 네트워크 정보에 기초하여 서비스-플로우 대응 정보를 상기 각 어플리케이션 서비스별로 정의하는 서비스 정의부 및 상기 플로우 정보 및 상기 서비스-플로우 대응 정보에 기초하여, 데이터 패킷 통신에 관한 트래픽 통계 정보를 상기 각 어플리케이션 서비스별로 분류하여 생성하는 트래픽 분석부를 포함할 수 있다.A service traffic classification apparatus according to an embodiment of the present invention includes a flow processor for obtaining flow information from a data packet transmitted or received through a network by a server system that provides a plurality of application services, A service definition unit for receiving network information of a service and defining service-flow correspondence information for each of the application services based on the network information; and a service definition unit for determining, based on the flow information and the service- And a traffic analysis unit for classifying and generating traffic statistical information for each application service.

본 발명의 일 실시예에 따른 트래픽 분류를 통한 이상 탐지를 위한 시스템은, 복수의 어플리케이션 서비스를 제공하는 서버 시스템에 의해 소정 주기 내에 송신 혹은 수신된 데이터 패킷의 플로우 정보와, 상기 각 어플리케이션 서비스의 네트워크 정보에 기초한 서비스-플로우 대응 정보를 이용하여, 데이터 패킷 통신에 관한 트래픽 통계 정보를 상기 각 어플리케이션 서비스별로 분류하여 생성하는 서비스 트래픽 분류 장치 및 상기 트래픽 통계 정보 중 소정의 기준 시점 이후에 송수신된 데이터 패킷에 대한 제 1 부분과 상기 기준 시점 이전까지 송수신된 데이터 패킷에 대한 제 2 부분 간의 비교를 상기 각 어플리케이션 서비스별로 수행하고, 상기 비교 결과에 기초하여 상기 각 어플리케이션 서비스의 이상 발생 여부를 판단하는 이상 탐지 장치를 포함할 수 있다.The system for abnormality detection through traffic classification according to an embodiment of the present invention is characterized in that flow information of a data packet transmitted or received within a predetermined period by a server system providing a plurality of application services, A service traffic classifying unit for classifying traffic statistical information related to data packet communication by each application service using information-based service-flow correspondence information, and a data traffic classifying unit for classifying data packets transmitted / And a second part of a data packet transmitted and received before the reference time point, for each of the application services, and for determining whether the application service is abnormal based on the comparison result, Device It can hamhal.

본 발명의 일 실시예에 따르면, 서버 시스템에 있어서 데이터 패킷(data packet)의 플로우(flow) 정보를 어플리케이션 서비스별로, 혹은 호스트별로 분류하여, 특정 서비스 혹은 호스트에 관한 트래픽 통계 정보를 획득할 수 있다. 이로써 어플리케이션 서비스별, 혹은 호스트별 트래픽 모니터링이 가능해지며, 더 나아가 상기 모니터링을 통해 서버 시스템의 이상 발생 여부 및 상기 이상의 원인을 신속하고 정확하게 알아내어 대처할 수 있게 된다. 이에 따라, 어플리케이션 서비스의 제공과 서버 시스템의 운영 및 유지를 안정적으로 수행할 수 있게 된다.According to an embodiment of the present invention, traffic information about a specific service or a host can be obtained by classifying flow information of a data packet by application service or host in a server system . As a result, it is possible to monitor traffic by application service or host, and furthermore, it is possible to quickly and accurately find out the cause of abnormality of the server system and the cause of the abnormality through the monitoring. Accordingly, provision of application services and operation and maintenance of the server system can be performed stably.

도 1은 본 발명의 일 실시예에 따른 이상 탐지 시스템의 구성에 대해 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 서비스 트래픽 분류 방법에 대해 보다 구체적으로 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 트래픽 통계 정보에 대해 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 이상 탐지 시스템에 의해 수행되는 서비스 트래픽 분류 방법의 각 단계를 도시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 이상 탐지 시스템에 의해 수행되는 이상 탐지 방법의 각 단계를 도시한 도면이다.
1 is a diagram for explaining a configuration of an anomaly detection system according to an embodiment of the present invention.
FIG. 2 is a diagram for explaining a service traffic classification method according to an embodiment of the present invention in more detail.
3 is a diagram for explaining traffic statistical information according to an embodiment of the present invention.
4 is a diagram illustrating each step of a service traffic classification method performed by the anomaly detection system according to an embodiment of the present invention.
5 is a diagram illustrating each step of an anomaly detection method performed by an anomaly detection system according to an embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. To fully disclose the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims.

본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 가입자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. The terms used in the following description are defined in consideration of the functions of the embodiments of the present invention and may vary depending on the subscriber, the intention or custom of the operator, and the like. Therefore, the definition should be based on the contents throughout this specification.

도 1은 본 발명의 일 실시예에 따른 이상 탐지 시스템의 구성에 대해 설명하기 위한 도면이다. 도 1의 이상 탐지 시스템(10)은 다양한 어플리케이션 서비스의 제공을 위해 복수의 물리 혹은 논리 서버를 포함하는, 클라우드 시스템과 같은 서버 시스템(미도시)을 모니터링하고, 상기 서버 시스템의 이상 발생 여부 및 그 원인을 탐지하기 위한 시스템으로, 서비스 트래픽 분류 장치(100)및 이상 탐지 장치(200)를 포함할 수 있다. 단, 도 1의 이상 탐지 시스템(10)은 본 발명의 일 실시예에 불과하므로, 도 1에 의해 본 발명의 사상이 한정 해석되는 것은 아니다.1 is a diagram for explaining a configuration of an anomaly detection system according to an embodiment of the present invention. The abnormality detection system 10 of FIG. 1 monitors a server system (not shown) such as a cloud system including a plurality of physical or logical servers to provide various application services, And may include a service traffic classification apparatus 100 and an anomaly detection apparatus 200. [ However, the anomaly detection system 10 of FIG. 1 is only an embodiment of the present invention, and therefore the spirit of the present invention is not limited to FIG.

우선 서비스 트래픽 분류 장치(100)에 대해 설명한다. 서비스 트래픽 분류 장치(100)는 플로우 처리부(110), 서비스 정의부(120) 및 트래픽 분석부(130)를 포함할 수 있다. 서비스 트래픽 분류 장치(100) 및 후술할 이상 탐지 장치(200)의 각 구성 요소들은 데이터의 송신 혹은 수신을 위한 통신 기능과 데이터의 판독 및 처리를 위한 연산 기능을 포함할 수 있다. 이에 따라, 상기 각 구성 요소들은 데이터 버스, 유/무선 통신 모듈 혹은 데이터 입/출력 포트(port) 등의 통신 장치와, 마이크로프로세서(microprocessor)와 같은 연산 장치를 포함하여 구현될 수 있다.First, the service traffic classification apparatus 100 will be described. The service traffic classification apparatus 100 may include a flow processing unit 110, a service defining unit 120, and a traffic analysis unit 130. Each component of the service traffic classification apparatus 100 and an anomaly detection apparatus 200 described later may include a communication function for transmitting or receiving data and a calculation function for reading and processing data. Accordingly, each of the above components may be implemented by including a communication device such as a data bus, a wire / wireless communication module or a data input / output port, and a computing device such as a microprocessor.

플로우 처리부(110)는 네트워크(network)를 통하여 서버 시스템으로 수신되거나, 혹은 서버 시스템으로부터 송신되는 데이터 패킷들로부터, 플로우(flow) 정보를 획득할 수 있다. 이와 같은 기능의 수행을 위해, 플로우 처리부(110)는 상기 데이터 패킷들을 미러링(mirroring)하여 생성된 복제 패킷을, 서버 시스템과 연결된 네트워크 스위치(network switch)로부터 입력받을 수 있다. The flow processing unit 110 may obtain flow information from data packets received by the server system through the network or transmitted from the server system. In order to perform such a function, the flow processor 110 may receive a duplicate packet generated by mirroring the data packets from a network switch connected to the server system.

플로우 처리부(110)는 상기 복제 패킷 각각의 헤더(header)로부터, 각 패킷의 플로우 정보를 획득할 수 있다. 플로우는 데이터 패킷의 흐름, 달리 말해 데이터 패킷이 전송될 수 있는 데이터 전송 경로에 해당되며, 하나의 플로우는 서버 시스템 내의 하나의 물리 혹은 가상 서버, 즉 호스트와 연결될 수 있다. 즉, 어떠한 데이터 패킷의 플로우 정보를 얻는다는 것은 해당 데이터 패킷이 어떠한 플로우(전송 경로)를 통해 송신 혹은 수신되었는지를 아는 것을 의미하며, 더 나아가 해당 데이터 패킷이 어떠한 호스트에 의해 송신 혹은 수신되었는지를 알아내는 것을 의미할 수 있다.The flow processor 110 can obtain the flow information of each packet from the header of each of the duplicate packets. A flow corresponds to a flow of data packets, in other words, a data transmission path through which data packets can be transmitted, and one flow can be connected to one physical or virtual server, i.e., a host, in the server system. That is, obtaining flow information of a certain data packet means knowing what flow (transmission path) the corresponding data packet is transmitted or received, and furthermore, knowing by which host the data packet is transmitted or received It can mean to put out.

상기 플로우 정보는, 소스(source) IP 주소 정보, 목적지(destination) IP(internet protocol) 주소 정보, 소스 포트(port) 정보, 목적지 포트 정보, 프로토콜(protocol) 정보와 같은, 이른바 5-튜플(tuple) 정보를 포함할 수 있다. 또한, 플로우 정보는 가상 랜(virtual LAN, VLAN) 혹은 가상 확장 랜(virtual extensible LAN)과 같은 가상 네트워크 정보를 포함할 수도 있다. 즉, 플로우 정보는 데이터 패킷이 전송된 플로우를 특정하기 위한 것이라면 어떤 것이든 될 수 있다.The flow information may include a so-called 5-tuple (e.g., tuple) such as source IP address information, destination IP address information, source port information, destination port information, ) Information. In addition, the flow information may include virtual network information such as a virtual LAN (VLAN) or a virtual extensible LAN. That is, the flow information can be any one for specifying a flow in which a data packet is transmitted.

플로우 처리부(110)는 소정 주기마다 각 플로우별 데이터 패킷의 전송량을 산출하고, 그 결과를 후술할 서비스 정의부(120)로 보고할 수 있다. 구체적으로, 플로우 처리부(110)는 소정 주기 내에 송수신된 데이터 패킷에 대해, 플로우 정보가 동일한 데이터 패킷끼리, 즉 동일한 플로우 키(key)를 갖는 데이터 패킷끼리 같은 그룹에 속하도록 분류할 수 있다. 그리고, 플로우 처리부(110)는 상기 각 그룹에 속한 데이터 패킷의 총 데이터량 혹은 개수를 측정함으로써, 각 플로우에 의해 상기 소정 주기 동안 어느 정도 수량의 데이터 패킷이 송수신되었는지에 대한 플로우 통계 정보를 생성할 수 있다.The flow processor 110 may calculate the amount of data packets transmitted for each flow at predetermined intervals and report the result to the service defining unit 120, which will be described later. Specifically, the flow processor 110 can classify data packets transmitted and received within a predetermined period such that data packets having the same flow information, that is, data packets having the same flow key, belong to the same group. The flow processor 110 measures the total data amount or the number of data packets belonging to each group and generates flow statistical information about how much data packets are transmitted and received during the predetermined period by each flow .

플로우 처리부(110)는 상기 플로우 통계 정보를 트래픽 분석부(130)로 전송할 수 있다. 이와 같은 전송의 주기 역시 전술한 소정 주기와 동일한 주기(예컨대, 5초)가 될 수 있으며, 상기 주기는 적절히 조절 가능하다. 주기가 짧으면 보다 정확한 플로우 통계 정보를 생성할 수 있으나, 이상 탐지 시스템(10)의 하드웨어에 부하(load)가 지나치게 걸릴 수 있다는 단점이 있다. 반면에, 주기가 길면 플로우 통계 정보가 불확실해질 수 있으며, 플로우 처리부(110)를 위해 보다 많은 메모리의 양이 요구된다는 단점이 있다. 따라서, 적절한 주기를 설정하는 것이 중요하다.The flow processing unit 110 may transmit the flow statistical information to the traffic analysis unit 130. The transmission period may be the same as the predetermined period (for example, 5 seconds), and the period may be appropriately adjusted. If the period is short, more accurate flow statistical information can be generated, but the load of the hardware of the abnormality detection system 10 may be excessive. On the other hand, if the period is long, the flow statistical information may become uncertain, and the flow processor 110 requires a larger amount of memory. Therefore, it is important to set an appropriate period.

서비스 정의부(120)는 서버 시스템에 의해 수행되는 각 어플리케이션 서비스의 네트워크 정보를 서비스 운용자로부터 수신하여, 상기 네트워크 정보에 기초하여 서비스-플로우 대응 정보를 상기 각 어플리케이션 서비스별로 정의할 수 있다. 서버 시스템은 복수의 호스트를 포함할 수 있으며, 상기 각 어플리케이션 서비스는 상기 복수의 호스트 중 하나 이상의 호스트를 이용하여 서비스될 수 있음은 앞서 설명한 바 있다.The service defining unit 120 can receive the network information of each application service performed by the server system from the service operator and define service-flow correspondence information for each application service based on the network information. The server system may include a plurality of hosts, and each of the application services may be serviced using one or more of the plurality of hosts.

서비스 정의부(120)는 상기 네트워크 정보로부터, 각 어플리케이션 서비스에 이용되는 호스트들의 IP, 사용 포트, 프로토콜, 가상 네트워크 정보 등을 획득할 수 있으며, 이에 의해 각 어플리케이션 서비스와 각 플로우 간의 대응 관계에 대한 정보인 서비스-플로우 대응 정보를 정의할 수 있다. 즉, 서비스 정의부(120)는 상기 서비스-플로우 대응 정보를 트래픽 분석부(130)에 제공함으로써, 트래픽 분석부(130)가 각 어플리케이션 서비스별로 트래픽 통계 정보를 산출하기 위한 자료로서 상기 서비스-플로우 대응 정보를 이용하도록 할 수 있다.The service defining unit 120 can acquire the IPs, ports, protocols, virtual network information, and the like of the hosts used for each application service from the network information, thereby obtaining the correspondence between each application service and each flow Information-service-flow correspondence information can be defined. That is, the service defining unit 120 provides the service-flow correspondence information to the traffic analyzing unit 130 so that the traffic analyzing unit 130 analyzes the service- It is possible to use the corresponding information.

트래픽 분석부(130)는 전술한 플로우 정보, 플로우 통계 정보 및 상기 서비스-플로우 대응 정보 등을 이용하여, 같은 플로우 정보를 갖는 데이터 패킷으로 이루어진 각 그룹을 각 어플리케이션 서비스에 매핑함으로써, 데이터 패킷 통신에 관한 트래픽 통계 정보를 상기 각 어플리케이션 서비스별로 분류하여 생성할 수 있다. 상기 트래픽 통계 정보는, 상기 소정 주기 동안 각 어플리케이션 서비스별로 어느 정도 수량의 데이터 패킷이 송수신되었는지에 관한 정보를 포함할 수 있으며, 데이터 패킷의 총 데이터량(byte 수), 패킷 수, bps(bit per second), pps(packet per second) 등 다양한 방식으로 표현될 수 있다. 트래픽 분석부(130)는 상기 트래픽 통계 정보를 통해, 상기 소정 주기 내에 송수신된 데이터 패킷의 수량이 시간에 따라 변화하는 양상을 표현할 수 있으며, 이와 같은 트래픽 통계 정보를 별도의 데이터베이스(database, 미도시)에 저장할 수 있다.The traffic analyzing unit 130 maps each group of data packets having the same flow information to each application service by using the flow information, the flow statistical information, and the service-flow corresponding information described above, Can be generated for each application service. The traffic statistic information may include information on how many data packets are transmitted / received for each application service during the predetermined period. The total number of data packets (number of bytes), the number of packets, bps second, and packet per second (pps). The traffic analyzing unit 130 may express the pattern of the amount of data packets transmitted and received within the predetermined period of time according to the time through the traffic statistic information and may transmit the traffic statistical information to a separate database ). ≪ / RTI >

상기 소정 주기마다 생성된 트래픽 통계 정보는, 더 긴 길이를 갖는 다른 주기별로 저장되도록 취합(aggregation)될 수 있다. 이 때, 상기 다른 주기의 길이가 짧을수록 트래픽 통계 정보의 변화가 심할 것이고, 상기 데이터베이스의 용량을 많이 확보할 필요가 있을 것이므로, 상기 다른 주기도 적절히 선택될 필요가 있다.The traffic statistic information generated for each predetermined period may be aggregated to be stored for another period having a longer length. At this time, the shorter the length of the other period, the greater the change in the traffic statistical information, and it is necessary to secure a large capacity of the database, so that the other period also needs to be appropriately selected.

도 2는 본 발명의 일 실시예에 따른 서비스 트래픽 분류 방법에 대해 보다 구체적으로 설명하기 위한 도면이다. 도 2를 보면, 복제 패킷들이 플로우 처리부(110)에 입력되며, 플로우 처리부(110)는 상기 복제 패킷(PA, PB, PC)들로부터 플로우 통계 정보(FA, FB, FC)를 생성함을 볼 수 있다. 상기 플로우 통계 정보는 소정 주기(tp)마다 생성되는 바, 플로우 통계 정보 중 FA는 복제 패킷 중 PA에 해당되는 패킷을 이용하여 생성될 수 있으며, 플로우 통계 정보 중 FB, FC는 각각 복제 패킷 중 PB, PC에 해당되는 패킷을 이용하여 생성될 수 있다. 트래픽 분석부(130)는 상기 플로우 통계 정보로부터 어플리케이션 서비스별 트래픽 통계 정보(TS)를 생성할 수 있다. 이와 같은 트래픽 통계 정보는 상기 소정 주기(tp)보다 더 긴 주기에 따라 취합될 수 있음은 앞서 설명한 바 있다.FIG. 2 is a diagram for explaining a service traffic classification method according to an embodiment of the present invention in more detail. Referring to FIG. 2, duplicate packets are input to the flow processor 110 and the flow processor 110 generates flow statistical information (FA, FB, FC) from the duplicate packets PA, PB, . The flow statistical information is generated every predetermined period (t p ). The FA among the flow statistical information may be generated using a packet corresponding to the PA among the duplicate packets. The FB and FC among the flow statistical information PB, and PC, respectively. The traffic analysis unit 130 can generate traffic statistical information (TS) for each application service from the flow statistical information. It has been described above that the traffic statistic information can be collected according to a longer period than the predetermined period t p .

다시 도 1로 돌아가, 다음으로는 이상 탐지 장치(200)에 대해 설명한다. 이상 탐지 장치(200)는 서비스 트래픽 분류 장치(100)에 의해 생성된 어플리케이션 서비스별 트래픽 통계 정보를 이용하여 서버 시스템의 이상 징후를 탐지하고 이상의 원인을 분석할 수 있다. 이러한 이상 탐지 장치(200)는 서비스 이상 탐지부(210), 플로우 이상 탐지부(220) 및 연결 분석부(230)를 포함할 수 있다.Returning to Fig. 1, the abnormality detection device 200 will be described next. The anomaly detection device 200 can detect an anomaly of the server system using the traffic statistical information of each application service generated by the service traffic classification apparatus 100 and analyze the cause of the anomaly. The anomaly detection device 200 may include a service anomaly detection unit 210, a flow anomaly detection unit 220, and a connection analysis unit 230.

서비스 이상 탐지부(210)는 서비스 트래픽 분류 장치(100)의 트래픽 분석부(130)에 의해 데이터베이스에 저장된 트래픽 통계 정보를 이용하여, 트래픽의 급증 또는 급감을 탐지함으로써 각 어플리케이션 서비스별로 이상 발생 여부를 판단할 수 있다. 구체적으로, 서비스 이상 탐지부(210)는 트래픽 통계 정보를 일정 주기(예컨대, 1분)마다 획득할 수 있으며, 각 어플리케이션 서비스별로 트래픽 통계 정보 중 현재 측정된 부분(제 1 부분)을 과거에 이미 측정된 부분(제 2 부분)과 비교함으로써, 현재의 트래픽 통계 정보가 과거의 통계 정보의 추세와 부합하지 않는다고 판단되면 해당 어플리케이션 서비스와 관련하여 이상 징후가 있다고 판단할 수 있다. 이와 함께, 서비스 이상 탐지부(210)는 이상 징후 발생 시 알림(alarm)을 발생시킬 수 있다.The service abnormality detection unit 210 detects a surge or a sudden decrease in traffic by using the traffic statistical information stored in the database by the traffic analyzing unit 130 of the service traffic classifying apparatus 100, It can be judged. Specifically, the service anomaly detection unit 210 can acquire the traffic statistic information every predetermined period (for example, one minute), and the currently measured portion (first portion) of the traffic statistical information for each application service By comparison with the measured portion (second portion), if it is determined that the current traffic statistic information does not match the trend of the past statistical information, it can be determined that there is an abnormal symptom associated with the application service. In addition, the service abnormality detection unit 210 may generate an alarm when an abnormal symptom occurs.

도 3은 본 발명의 일 실시예에 따른 트래픽 통계 정보에 대해 설명하기 위한 도면이다. 도 3을 참조하면, 두 가지의 어플리케이션 서비스에 대한 트래픽 통계 정보를 시간에 대해 각각 나타낸 두 개의 그래프(A, B)가 있음을 볼 수 있다.3 is a diagram for explaining traffic statistical information according to an embodiment of the present invention. Referring to FIG. 3, it can be seen that there are two graphs (A, B) showing traffic statistic information for two application services with respect to time.

먼저 도 3의 (A)를 보면, 소정의 기준 시점(tr) 이전의 트래픽, 즉 과거에 이미 측정된 트래픽의 값(위에서 설명한 제 2 부분에 해당됨)이 모든 시간에서 대체로 일정함을 볼 수 있다. 이러한 그래프는 CCTV와 같이 사용자의 생활 패턴과 무관하게 계속 동작하는 어플리케이션 서비스에서 나타날 수 있다. 이에 따라 상기 과거의 트래픽을 통해 예상될 수 있는 기준 시점(tr) 이후의 트래픽의 값(I(_)t) 역시 도 3의 (A)에서 보는 바와 같이 추정될 수 있다. 하지만 실제로 측정된 현재의 트래픽의 값(It, 위에서 설명한 제 1 부분에 해당됨)은 상기 예상 트래픽의 값(I(_)t)에 비해 현저히 낮을 수 있다.3 (A), it can be seen that the traffic before the predetermined reference time point (t r ), that is, the value of the traffic already measured in the past (corresponding to the second part described above) is substantially constant at all times have. These graphs can appear in application services that continue to work regardless of the user's lifestyle, such as CCTV. Accordingly, the traffic value I (_) t after the reference time t r that can be expected through the past traffic can also be estimated as shown in FIG. 3A. However, the actually measured current traffic value (I t , corresponding to the first part described above) may be significantly lower than the value of the expected traffic I (_) t .

이와 달리, 도 3의 (B)를 보면 상기 기준 시점(tr) 이전의 트래픽, 즉 과거에 이미 측정된 트래픽의 값이 정현파(sine wave)와 유사하게 시간에 따라 요동함을 볼 수 있다. 이러한 그래프는 스트리밍(streaming) 서비스, 내비게이션(navigation) 서비스와 같이 사용자의 생활 패턴과 관계가 있는 어플리케이션 서비스에서 나타날 수 있다. 이에 따라 상기 과거의 트래픽을 통해 예상될 수 있는 기준 시점(tr) 이후의 트래픽의 값(I(_)t) 역시 도 3의 (B)에서 보는 바와 같이 추정될 수 있다. 하지만 실제로 측정된 현재의 트래픽의 값(It)은 상기 예상 트래픽의 값(I(_)t)에 비해 현저히 높을 수 있다.In contrast, in FIG. 3B, it can be seen that the traffic before the reference time t r , that is, the traffic value measured in the past, fluctuates with time similar to a sine wave. Such a graph may appear in an application service related to a user's life pattern, such as a streaming service or a navigation service. Accordingly, the traffic value I (_) t after the reference time t r that can be expected through the past traffic can also be estimated as shown in FIG. 3 (B). However, the actually measured current traffic value I t may be significantly higher than the estimated traffic value I (_) t .

이와 같이, 과거의 추세에 의한 예상 트래픽의 값(I(_)t)과 실제로 측정된 현재의 트래픽의 값(It) 간의 차이(d)의 절대값이 소정의 임계치(W)를 초과할 경우, 서비스 이상 탐지부(210)는 상기 현상이 관찰된 어플리케이션 데이터에 있어서 이상 징후가 발생하였다고 판단할 수 있다.In this way, the absolute value of the difference (d) between the values of the estimated traffic by past trends (I (_) t) and the actually measured value of the current traffic (I t) exceeds a predetermined threshold value (W) , The service anomaly detection unit 210 can determine that an abnormal symptom has occurred in the application data in which the phenomenon is observed.

한편, 상기 도 3의 예는 설명하기 쉽게 도식화한 예이며, 실제로는 예상 트래픽의 값(I(_)t)을 추정하기 위해 다양한 예측 모델이 이용될 수 있다. 이와 같은 예측 모델로는 이동 평균(moving average) 모델, 최소 제곱 회귀(least square regression) 모델 등이 이용될 수 있다. 또한, 도 3에서 두 그래프 (A)와 (B)를 통해 설명한 바와 같이 어플리케이션 서비스별로 트래픽 통계 정보의 추세에 관한 특징은 서로 다를 수 있기 때문에, 예측 모델 및 해당 모델을 위한 파라미터 등은 서비스별로 달리 설정될 수 있다.In the meantime, the example of FIG. 3 is an illustrative diagram, and various prediction models may be used to estimate the estimated traffic value I () t . As such a prediction model, a moving average model, a least square regression model, or the like can be used. In addition, as described with reference to the two graphs (A) and (B) in FIG. 3, the characteristics of trends of the traffic statistical information may vary from one application service to another. Therefore, Can be set.

다시 도 1로 돌아가서, 플로우 이상 탐지부(220)는 상기 서비스 이상 탐지부(210)가 특정 어플리케이션 서비스에 대하여 이상 징후를 감지한 경우, 서비스 이상 탐지부(210)로부터 상기 특정 어플리케이션 서비스(혹은 상기 특정 어플리케이션을 서비스하는 특정 호스트)의 키 정보를 수신하고, 상기 키 정보에 대응되는 플로우의 통계 정보만을 플로우 처리부(110)로부터 수신하여 분석함으로써, 이상이 발생되었다고 의심되는 이상 플로우를 검출해낼 수 있다. 즉, 플로우 이상 탐지부(220)는 서비스 이상 탐지부(210)가 어플리케이션 서비스 레벨에서 수행한 이상 탐지 결과를, 플로우 레벨로 그 범위를 보다 좁힐 수 있다.1, if the service anomaly detection unit 210 detects an abnormal symptom for a specific application service, the flow anomaly detection unit 220 may detect the abnormal application from the service anomaly detection unit 210 to the specific application service A specific host that is to serve a specific application) and receives and analyzes only the statistical information of the flow corresponding to the key information from the flow processor 110, thereby detecting an abnormal flow suspected of the occurrence of an abnormality . That is, the flow anomaly detection unit 220 can narrow the range of the anomaly detection result performed by the service anomaly detection unit 210 at the application service level to the flow level.

즉, 플로우 이상 탐지부(220)는 복수의 플로우 중 상기 키 정보에 대응되는 플로우들을 추출하고, 상기 추출된 각 플로우별 패킷 송수신 통계에 관한 정보에 기초하여, 상기 추출된 각 플로우 중 이상이 발생했다고 판단되는 이상 플로우를 탐지할 수 있다. 구체적으로, 이와 같은 플로우 레벨에서의 이상 탐지는, 각 플로우별로 전송되는 데이터 패킷의 양(bps 단위), 개수(pps 단위), 전송 지속 시간(duration) 등의 지표(metric)를 측정하고, 측정된 각 지표를 미리 정의된 임계값과 비교하는 방식을 통해 이루어질 수 있다. That is, the flow anomaly detection unit 220 extracts flows corresponding to the key information from among a plurality of flows, and based on information on packet transmission / reception statistics for each of the extracted flows, It is possible to detect an abnormal flow which is judged to be abnormal. Specifically, abnormality detection at such a flow level is performed by measuring metrics such as the amount (in units of bps), the number (in units of pps), and the transmission duration (duration) of data packets transmitted for each flow, And comparing each of the indexes with the predefined threshold value.

상기 추출된 각 플로우에 관한 정보는 플로우 이상 탐지부(220)의 이용을 위해 별도의 데이터베이스에 실시간으로 저장될 수 있는데, 이와 같은 정보의 실시간 저장을 모든 플로우가 아닌, 상기 추출된 플로우에 대해서만 수행함으로써 이상 탐지 시스템(10)의 시스템 자원(resource)을 절약할 수 있다. 한편, 플로우 이상 탐지부(220)는 탐지된 이상 플로우의 키 정보를 연결 분석부(230)에 제공할 수 있으며, 이와 같은 이상 플로우의 키 정보는 소스/목적지 IP 주소 정보, 소스/목적지 포트 정보, 가상 네트워크 정보 등을 포함할 수 있다.The extracted information about each flow can be stored in a separate database in real time for use by the flow anomaly detection unit 220. The real time storage of the information can be performed only for the extracted flow, System resources of the anomaly detection system 10 can be saved. The flow anomaly detection unit 220 may provide the key information of the detected abnormal flow to the connection analysis unit 230. The key information of the abnormal flow may include source / destination IP address information, source / destination port information , Virtual network information, and the like.

연결 분석부(230)는 플로우 이상 탐지부(220)에 의해 수행된 플로우 레벨에서의 이상 탐지 결과를 이용하여, 이상의 근본 원인을 보다 구체적으로 규명할 수 있다. 즉, 연결 분석부(230)는 이상 플로우와 관련하여, 이상 플로우를 통해 송수신되는 데이터 패킷의 전송에 관한 세션 연결의 성능을 분석함으로써, 이상 발생 원인에 관한 상세 정보를 획득할 수 있다. 예컨대, 연결 분석부(230)는 상기 이상 플로우와 관계된 호스트(server) 또는 클라이언트(client)의 어플리케이션 쪽에 어떠한 문제가 발생했는지, 아니면 호스트와 클라이언트 사이의 네트워크에 문제가 발생했는지 등을 알아냄으로써, 이상 발생의 근본 원인을 진단할 수 있다. 또한 연결 분석부(230)는 이러한 이상 발생의 원인에 대한 진단 결과를 알림의 형태로 제공할 수 있다.The connection analysis unit 230 can more specifically identify the above root cause by using the abnormality detection result at the flow level performed by the flow anomaly detection unit 220. [ That is, in connection with the abnormal flow, the connection analyzing unit 230 can obtain detailed information on the cause of the abnormality by analyzing the performance of the session connection related to the transmission of the data packet transmitted / received through the abnormal flow. For example, the connection analysis unit 230 determines whether a problem occurs in the application side of the host or the client related to the abnormal flow, or whether a problem occurs in the network between the host and the client, The root cause of the outbreak can be diagnosed. In addition, the connection analyzing unit 230 may provide the diagnosis result of the cause of the abnormality in the form of a notification.

상기한 바와 같은 동작을 위해, 연결 분석부(230)는 이상 플로우를 통해 송수신되는 데이터 패킷이 미러링된 복제 패킷에 대한 네트워크 세션 분석을 수행할 수 있다. 상기 분석을 통해, 연결 분석부(230)는 상기 이상 플로우를 통한 데이터 패킷 전송에 있어서의 초당 접속 횟수(connection per second, CPS), 응답 시간(response time), 재전송률(retransmission rate) 등의 파라미터에 대한 계측을 수행함으로써, 상기 이상 발생의 원인 진단에 이용할 수 있다. 예컨대, TCP 세션의 경우 Zero Window 발생 횟수를 체크하여 클라이언트의 수신 측에 문제가 생겼음을 파악할 수 있고, HTTP 세션의 경우 상태 코드를 분석함으로써 만약 500 Error가 발생했을 경우 호스트 측에 문제가 발생했음을 확인할 수 있다. In order to perform the above operation, the connection analysis unit 230 may analyze the network session for the duplicated packet in which the data packet transmitted / received through the abnormal flow is mirrored. Through the analysis, the connection analyzing unit 230 analyzes parameters such as connection per second (CPS), response time, and retransmission rate in the data packet transmission through the abnormal flow By performing the measurement for the cause of the abnormality. For example, in the case of a TCP session, the number of zero window occurrences can be checked to see if there is a problem on the client side. In the case of an HTTP session, the state code is analyzed. If a 500 error occurs, .

도 4는 본 발명의 일 실시예에 따른 이상 탐지 시스템에 의해 수행되는 서비스 트래픽 분류 방법의 각 단계를 도시한 도면이다. 그리고 도 5는 본 발명의 일 실시예에 따른 이상 탐지 시스템에 의해 수행되는 이상 탐지 방법의 각 단계를 도시한 도면이다. 즉, 도 4 및 5를 통해 본 발명의 일 실시예에 따른 이상 탐지 시스템(10)의 동작을 개략적으로 조망해볼 수 있다.4 is a diagram illustrating each step of a service traffic classification method performed by the anomaly detection system according to an embodiment of the present invention. And FIG. 5 is a diagram illustrating steps of an anomaly detection method performed by the anomaly detection system according to an embodiment of the present invention. 4 and 5, the operation of the anomaly detection system 10 according to an embodiment of the present invention can be schematically illustrated.

먼저 도 4의 서비스 트래픽 분류 방법부터 설명한다. 우선, 플로우 처리부(110)를 통해 데이터 패킷으로부터 플로우 정보를 획득할 수 있다(S110). 그리고 서비스 정의부(120)를 통해 서비스-플로우 대응 정보를 각 어플리케이션 서비스별로 정의할 수 있다(S120). 마지막으로, 트래픽 분석부(130)를 통해 상기 정보들에 기초하여 트래픽 통계 정보를 각 어플리케이션 서비스별로 생성할 수 있다(S130).First, the service traffic classification method of FIG. 4 will be described. First, flow information can be obtained from a data packet through the flow processor 110 (S110). The service-flow correspondence information may be defined for each application service through the service defining unit 120 (S120). Lastly, the traffic analyzing unit 130 may generate traffic statistical information for each application service based on the information (S130).

다음으로 도 5의 이상 탐지 방법에 대해 설명한다. 우선, 서비스 이상 탐지부(210)를 통해 트래픽 통계 정보를 이용하여 어플리케이션 서비스의 이상을 탐지할 수 있다(S210). 그리고 플로우 이상 탐지부(220)를 통하여 이상 어플리케이션 서비스에 대응되는 플로우의 이상을 탐지할 수 있다(S220). 마지막으로, 연결 분석부(230)를 통하여 이상 플로우에 대한 연결 상태를 분석하고(S230), 이상의 근본 원인을 진단할 수 있다(S240).Next, the abnormality detection method of FIG. 5 will be described. First, an abnormality of the application service can be detected using the traffic statistical information through the service abnormality detection unit 210 (S210). An abnormality of the flow corresponding to the abnormal application service can be detected through the flow abnormality detecting unit 220 (S220). Finally, the connection state of the abnormal flow is analyzed through the connection analysis unit 230 (S230), and the root cause can be diagnosed (S240).

본 발명에 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 인코딩 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 인코딩 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방법으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.Combinations of each step of the flowchart and each block of the block diagrams appended to the present invention may be performed by computer program instructions. These computer program instructions may be embedded in an encoding processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus, so that the instructions, performed through the encoding processor of a computer or other programmable data processing apparatus, Thereby creating means for performing the functions described in each step of the flowchart. These computer program instructions may also be stored in a computer usable or computer readable memory capable of directing a computer or other programmable data processing apparatus to implement the functionality in a particular manner so that the computer usable or computer readable memory It is also possible for the instructions stored in the block diagram to produce a manufacturing item containing instruction means for performing the functions described in each block or flowchart of the block diagram. Computer program instructions may also be stored on a computer or other programmable data processing equipment so that a series of operating steps may be performed on a computer or other programmable data processing equipment to create a computer- It is also possible that the instructions that perform the processing equipment provide the steps for executing the functions described in each block of the block diagram and at each step of the flowchart.

또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.Also, each block or each step may represent a module, segment, or portion of code that includes one or more executable instructions for executing the specified logical function (s). It should also be noted that in some alternative embodiments, the functions mentioned in the blocks or steps may occur out of order. For example, two blocks or steps shown in succession may in fact be performed substantially concurrently, or the blocks or steps may sometimes be performed in reverse order according to the corresponding function.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 품질에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 균등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical idea of the present invention, and various modifications and changes may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents thereof should be construed as falling within the scope of the present invention.

본 발명의 일 실시예에 따르면, 어플리케이션 서비스별, 혹은 호스트별 트래픽 모니터링이 가능해지며, 더 나아가 상기 모니터링을 통해 서버 시스템의 이상 발생 여부 및 상기 이상의 원인을 신속하고 정확하게 알아내어 대처할 수 있게 된다. 이에 따라, 어플리케이션 서비스의 제공과 서버 시스템의 운영 및 유지를 안정적으로 수행할 수 있게 된다.According to an embodiment of the present invention, it is possible to monitor traffic by application service or host, and furthermore, it is possible to quickly and accurately find out the cause of abnormality of the server system and the cause of the abnormality through the monitoring. Accordingly, provision of application services and operation and maintenance of the server system can be performed stably.

10: 이상 탐지 시스템
100: 서비스 트래픽 분류 장치
110: 플로우 처리부
120: 서비스 정의부
130: 트래픽 분석부
200: 이상 탐지 장치
210: 서비스 이상 탐지부
220: 플로우 이상 탐지부
230: 연결 분석부
10: Abnormal detection system
100: service traffic classifier
110:
120: service definition section
130: Traffic analysis unit
200: Abnormal detection device
210: service abnormality detection unit
220: Flow abnormality detection unit
230: Connection Analysis Unit

Claims (9)

복수의 어플리케이션 서비스를 제공하는 서버 시스템에 의해 네트워크를 통하여 송신 혹은 수신되는 데이터 패킷으로부터, 플로우(flow) 정보를 획득하는 플로우 처리부;
상기 각 어플리케이션 서비스의 네트워크 정보를 수신하여, 상기 네트워크 정보에 기초하여 서비스-플로우 대응 정보를 상기 각 어플리케이션 서비스별로 정의하는 서비스 정의부; 및
상기 플로우 정보 및 상기 서비스-플로우 대응 정보에 기초하여, 데이터 패킷 통신에 관한 트래픽 통계 정보를 상기 각 어플리케이션 서비스별로 분류하여 생성하는 트래픽 분석부를 포함하는
서비스 트래픽 분류 장치.
A flow processor for acquiring flow information from a data packet transmitted or received through a network by a server system providing a plurality of application services;
A service defining unit for receiving network information of each application service and defining service-flow correspondence information for each application service based on the network information; And
And a traffic analyzer for classifying and generating traffic statistical information related to data packet communication for each application service based on the flow information and the service-flow correspondence information
Service traffic classification device.
제 1 항에 있어서,
상기 플로우 처리부는, 상기 데이터 패킷이 미러링(mirroring)된 복제 패킷의 헤더(header)로부터 상기 플로우 정보를 획득하며,
상기 플로우 정보는, 상기 데이터 패킷의 소스(source) IP(internet protocol) 주소 정보, 목적지(destination) IP 주소 정보, 소스 포트(port) 정보, 목적지 포트 정보, 프로토콜(protocol) 정보 및 가상 네트워크 정보 중 적어도 하나를 포함하는
서비스 트래픽 분류 장치.
The method according to claim 1,
The flow processor obtains the flow information from a header of a mirrored replication packet of the data packet,
The flow information includes at least one of a source IP address information, a destination IP address information, a source port information, a destination port information, a protocol information, and a virtual network information At least one
Service traffic classification device.
제 1 항에 있어서,
상기 플로우 처리부는, 소정 주기 내에 송수신된 상기 데이터 패킷에 대해 상기 플로우 정보가 동일한 데이터 패킷끼리 같은 그룹에 속하도록 상기 데이터 패킷을 분류하고, 상기 각 그룹에 속한 데이터 패킷의 총 데이터량 혹은 개수를 계산하며,
상기 트래픽 분석부는, 상기 플로우 정보 및 상기 서비스-플로우 대응 정보에 기초하여 상기 각 그룹을 상기 어플리케이션 서비스에 매핑하여 상기 트래픽 통계 정보를 상기 각 어플리케이션 서비스별로 생성하는
서비스 트래픽 분류 장치.
The method according to claim 1,
Wherein the flow processor classifies the data packets so that the same data packets belong to the same group as the data packets transmitted and received within a predetermined period and calculates a total data amount or number of data packets belonging to each group In addition,
The traffic analyzing unit maps each group to the application service based on the flow information and the service-flow correspondence information, and generates the traffic statistical information for each application service
Service traffic classification device.
제 1 항에 있어서,
상기 트래픽 분석부는, 상기 각 어플리케이션 서비스별로, 상기 소정 주기 내에 송수신된 데이터 패킷의 총 데이터량 혹은 개수의 시간에 따른 변화 양상을 상기 트래픽 통계 정보로서 생성하는
서비스 트래픽 분류 장치.
The method according to claim 1,
The traffic analyzing unit generates, as the traffic statistical information, a change pattern of the total data amount or the number of data packets transmitted and received within the predetermined period, over time for each application service
Service traffic classification device.
제 1 항에 있어서,
상기 서버 시스템은 클라우드(cloud) 서버 시스템이고,
상기 각 어플리케이션 서비스는, 상기 각 플로우 정보와 일대일로 연결되는 복수의 호스트(host) 중 하나 이상의 호스트를 이용하여 서비스되며,
상기 트래픽 분석부는, 서비스하는 호스트와 연결된 플로우 정보를 통해 상기 소정 주기 내에 전송된 데이터 패킷의 총 데이터량 혹은 개수를 상기 각 어플리케이션 서비스별로 계산한 결과에 기초하여, 상기 각 어플리케이션 서비스별로 상기 트래픽 통계 정보를 생성하는
서비스 트래픽 분류 장치.
The method according to claim 1,
The server system is a cloud server system,
Wherein each of the application services is served using one or more hosts among a plurality of hosts connected to the flow information on a one-
The traffic analyzing unit analyzes traffic statistics information for each application service based on a result of calculating the total data amount or the number of data packets transmitted within the predetermined period on the basis of the flow information connected to the serving host, To generate
Service traffic classification device.
복수의 어플리케이션 서비스를 제공하는 서버 시스템에 의해 소정 주기 내에 송신 혹은 수신된 데이터 패킷의 플로우 정보와, 상기 각 어플리케이션 서비스의 네트워크 정보에 기초한 서비스-플로우 대응 정보를 이용하여, 데이터 패킷 통신에 관한 트래픽 통계 정보를 상기 각 어플리케이션 서비스별로 분류하여 생성하는 서비스 트래픽 분류 장치; 및
상기 트래픽 통계 정보 중 소정의 기준 시점 이후에 송수신된 데이터 패킷에 대한 제 1 부분과 상기 기준 시점 이전까지 송수신된 데이터 패킷에 대한 제 2 부분 간의 비교를 상기 각 어플리케이션 서비스별로 수행하고, 상기 비교 결과에 기초하여 상기 각 어플리케이션 서비스의 이상 발생 여부를 판단하는 이상 탐지 장치를 포함하는
트래픽 분류를 통한 이상 탐지를 위한 시스템.
A method of controlling traffic statistics for data packet communication using flow information of a data packet transmitted or received within a predetermined period by a server system providing a plurality of application services and service-flow correspondence information based on network information of each application service, A service traffic classifying unit for classifying and generating information for each application service; And
A comparison is made between a first part of a data packet transmitted and received after a predetermined reference time point of the traffic statistical information and a second part of a data packet transmitted and received before the reference time point for each application service, And an abnormality detection device for determining whether an abnormality has occurred in each of the application services
A system for anomaly detection through traffic classification.
제 6 항에 있어서,
상기 이상 탐지 장치는, 상기 각 어플리케이션 서비스에 대하여, 상기 제 2 부분을 이용하여 예측된 상기 기준 시점 이후의 예측 데이터 패킷 전송량과, 상기 제 1 부분으로부터 도출된 상기 기준 시점 이후의 실제 데이터 패킷 전송량 간의 차이가 소정의 임계치를 초과할 경우 이상이 발생했다고 판단하는
트래픽 분류를 통한 이상 탐지를 위한 시스템.
The method according to claim 6,
The abnormality detection device may calculate a difference between a predicted data packet transmission amount after the reference time predicted using the second portion and an actual data packet transmission amount after the reference time derived from the first portion, When the difference exceeds a predetermined threshold value, it is determined that an abnormality has occurred
A system for anomaly detection through traffic classification.
제 6 항에 있어서,
상기 이상 탐지 장치는, 상기 플로우 정보에 의해 정의되는 복수의 플로우 중 상기 이상이 발생했다고 판단되는 어플리케이션 서비스에 대응되는 플로우를 추출하고, 상기 추출된 각 플로우별로 송수신된 데이터 패킷의 수량에 관한 정보에 기초하여, 상기 플로우 중 이상이 발생했다고 판단되는 이상 플로우를 탐지하는
트래픽 분류를 통한 이상 탐지를 위한 시스템.
The method according to claim 6,
Wherein the abnormality detection device extracts a flow corresponding to an application service that is determined to have generated the abnormality among a plurality of flows defined by the flow information and stores information on the number of data packets transmitted and received for each of the extracted flows On the basis of the detected abnormal flow,
A system for anomaly detection through traffic classification.
제 8 항에 있어서,
상기 이상 탐지 장치는, 상기 이상 플로우를 통해 송수신되는 데이터 패킷의 전송을 위한 네트워크 세션에 대한 분석 결과에 기초하여, 상기 이상 플로우의 이상 발생 원인에 관한 상세 정보를 획득하는
트래픽 분류를 통한 이상 탐지를 위한 시스템.
9. The method of claim 8,
The abnormality detection device acquires detailed information on the cause of abnormality of the abnormal flow, based on the analysis result of the network session for transmission of the data packet transmitted and received through the abnormal flow
A system for anomaly detection through traffic classification.
KR1020170166449A 2017-12-06 2017-12-06 System for performing anomaly detection using traffic classification KR102055363B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170166449A KR102055363B1 (en) 2017-12-06 2017-12-06 System for performing anomaly detection using traffic classification

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170166449A KR102055363B1 (en) 2017-12-06 2017-12-06 System for performing anomaly detection using traffic classification

Publications (2)

Publication Number Publication Date
KR20190066741A true KR20190066741A (en) 2019-06-14
KR102055363B1 KR102055363B1 (en) 2019-12-12

Family

ID=66846663

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170166449A KR102055363B1 (en) 2017-12-06 2017-12-06 System for performing anomaly detection using traffic classification

Country Status (1)

Country Link
KR (1) KR102055363B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102207786B1 (en) * 2019-10-02 2021-01-26 에스케이텔레콤 주식회사 User plane function and method for identifying application using the same
CN114900356A (en) * 2022-05-06 2022-08-12 联云(山东)大数据有限公司 Malicious user behavior detection method and device and electronic equipment
WO2022225727A1 (en) * 2021-04-19 2022-10-27 Corelight, Inc. System and method for network traffic classification using snippets and on the fly built classifiers
KR20230070951A (en) * 2021-11-15 2023-05-23 국방과학연구소 Apparatus for collecting event and method thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080001303A (en) * 2006-06-29 2008-01-03 주식회사 케이티 Traffic analysis system of the ip network using flow information and method thereof
KR20110065273A (en) * 2009-12-07 2011-06-15 한국전자통신연구원 Method and system for ddos traffic detection and traffic mitigation using flow statistic
KR101661743B1 (en) 2015-04-07 2016-10-11 경기대학교 산학협력단 Network system and method for defensing high volume attack traffic
KR20170089128A (en) * 2016-01-26 2017-08-03 한국인터넷진흥원 Incidents information intelligence analysis system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080001303A (en) * 2006-06-29 2008-01-03 주식회사 케이티 Traffic analysis system of the ip network using flow information and method thereof
KR20110065273A (en) * 2009-12-07 2011-06-15 한국전자통신연구원 Method and system for ddos traffic detection and traffic mitigation using flow statistic
KR101661743B1 (en) 2015-04-07 2016-10-11 경기대학교 산학협력단 Network system and method for defensing high volume attack traffic
KR20170089128A (en) * 2016-01-26 2017-08-03 한국인터넷진흥원 Incidents information intelligence analysis system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102207786B1 (en) * 2019-10-02 2021-01-26 에스케이텔레콤 주식회사 User plane function and method for identifying application using the same
WO2022225727A1 (en) * 2021-04-19 2022-10-27 Corelight, Inc. System and method for network traffic classification using snippets and on the fly built classifiers
KR20230070951A (en) * 2021-11-15 2023-05-23 국방과학연구소 Apparatus for collecting event and method thereof
CN114900356A (en) * 2022-05-06 2022-08-12 联云(山东)大数据有限公司 Malicious user behavior detection method and device and electronic equipment

Also Published As

Publication number Publication date
KR102055363B1 (en) 2019-12-12

Similar Documents

Publication Publication Date Title
CN111052668B (en) Residence time measurement for optimizing network services
US11659061B2 (en) Method of adjusting service function chains to improve network performance
US11153406B2 (en) Method of network performance visualization of service function chains
CN106850337B (en) Network quality detection method and device
KR102055363B1 (en) System for performing anomaly detection using traffic classification
US10027694B1 (en) Detecting denial of service attacks on communication networks
JP6426850B2 (en) Management device, management method, and management program
US7903657B2 (en) Method for classifying applications and detecting network abnormality by statistical information of packets and apparatus therefor
US11522765B2 (en) Auto discovery of network proxies
US20150039749A1 (en) Detecting traffic anomalies based on application-aware rolling baseline aggregates
US9992117B2 (en) Network apparatus, communication system, abnormal traffic detection method, and program
JP2022538961A (en) Automotive network switch with fault detection
US10462031B1 (en) Network visibility for cotenant processes
WO2012000540A1 (en) Method and apparatus for analysis of the operation of a communication system using events
US20220247650A1 (en) Network device measurements employing white boxes
Marques et al. Intsight: Diagnosing slo violations with in-band network telemetry
WO2015168611A1 (en) Method and system for confident anomaly detection in computer network traffic
CN106302001B (en) Service fault detection method, related device and system in data communication network
US10805144B1 (en) Monitoring interactions between entities in a network by an agent for particular types of interactions and indexing and establishing relationships of the components of each interaction
JP6317685B2 (en) Communication monitoring system, communication monitoring method and program
CN114465897A (en) Method, device and system for monitoring data packets in service flow
US20220271987A1 (en) Methods and system for adaptive measurements applied to real time performance monitoring in a packet network
JP2012169756A (en) Encrypted communication inspection system
JP5655049B2 (en) Determination device, determination method, and determination program
JP5537692B1 (en) Quality degradation cause estimation device, quality degradation cause estimation method, quality degradation cause estimation program

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