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

System for performing anomaly detection using traffic classification Download PDF

Info

Publication number
KR102055363B1
KR102055363B1 KR1020170166449A KR20170166449A KR102055363B1 KR 102055363 B1 KR102055363 B1 KR 102055363B1 KR 1020170166449 A KR1020170166449 A KR 1020170166449A KR 20170166449 A KR20170166449 A KR 20170166449A KR 102055363 B1 KR102055363 B1 KR 102055363B1
Authority
KR
South Korea
Prior art keywords
information
flow
service
traffic
application service
Prior art date
Application number
KR1020170166449A
Other languages
Korean (ko)
Other versions
KR20190066741A (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]

Abstract

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

Description

트래픽 분류를 이용하여 이상 탐지를 수행하기 위한 시스템 {SYSTEM FOR PERFORMING ANOMALY DETECTION USING TRAFFIC CLASSIFICATION}System for performing anomaly detection using traffic classification {SYSTEM FOR PERFORMING ANOMALY DETECTION USING TRAFFIC CLASSIFICATION}

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

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

최근에는 클라우드(cloud) 서버 시스템과 같은, 복수의 물리 혹은 논리 서버를 포함하여 다양한 어플리케이션 서비스를 제공하기 위한 서버 시스템이 대중화되고 있다. 이와 같은 서버 시스템에서는, 다양한 서비스 제공자(tennant)가 상기 서버 시스템을 통해 저마다의 어플리케이션 서비스를 제공할 수 있다. 각 어플리케이션 서비스는, 상기 서버 시스템에 포함된 서버인 호스트(host) 중 하나 이상을 이용하여 서비스될 수 있다.Recently, 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 may provide their respective application services through the server system. Each application service may be serviced using one or more of 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 related to its service. However, in the case of the 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 a plurality of logical servers implemented through virtual machines (VMs) may exist in one physical server, the number of services or hosts sharing the one physical port may be increased.

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

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

본 발명이 해결하고자 하는 과제는, 복수의 서버로 구성되는 서버 시스템을 통해 어플리케이션 서비스를 제공함에 있어서, 상기 서버 시스템에서의 이상 발생 여부 및 상기 이상의 원인이 되는 서비스 혹은 호스트를 트래픽 분석을 통해 효과적으로 탐지하기 위한 장치 및 시스템을 제공하는 것이다.The problem to be solved by the present invention, in providing an application service through a server system consisting of a plurality of servers, whether the abnormality in the server system and the service or host causing the abnormality is effectively detected through traffic analysis It is to provide an apparatus and a system for.

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

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

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

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

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

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.Advantages and features of the present invention and methods for achieving them will be apparent with reference to the embodiments described below in detail with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but can be implemented in various forms, and only the embodiments are to make the disclosure of the present invention complete, and common knowledge in the art to which the present invention pertains. It is provided to fully inform the person having the scope of the invention, which is defined only by the scope of the claims.

본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 가입자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In describing the embodiments of the present invention, if it is determined that a detailed description of a known function or configuration may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted. The terms to be described below are terms defined in consideration of functions in the embodiments of the present invention, which may vary according to the intention or custom of the subscriber or the operator. Therefore, the definition should be made based on the contents throughout the specification.

도 1은 본 발명의 일 실시예에 따른 이상 탐지 시스템의 구성에 대해 설명하기 위한 도면이다. 도 1의 이상 탐지 시스템(10)은 다양한 어플리케이션 서비스의 제공을 위해 복수의 물리 혹은 논리 서버를 포함하는, 클라우드 시스템과 같은 서버 시스템(미도시)을 모니터링하고, 상기 서버 시스템의 이상 발생 여부 및 그 원인을 탐지하기 위한 시스템으로, 서비스 트래픽 분류 장치(100)및 이상 탐지 장치(200)를 포함할 수 있다. 단, 도 1의 이상 탐지 시스템(10)은 본 발명의 일 실시예에 불과하므로, 도 1에 의해 본 발명의 사상이 한정 해석되는 것은 아니다.1 is a view for explaining the configuration of the abnormality detection system according to an embodiment of the present invention. The anomaly 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 whether or not an abnormality of the server system occurs. As a system for detecting a cause, the service traffic classification apparatus 100 and the abnormality detection apparatus 200 may be included. However, since the abnormality detection system 10 of FIG. 1 is only one embodiment of the present invention, the spirit of the present invention is not limitedly interpreted by FIG. 1.

우선 서비스 트래픽 분류 장치(100)에 대해 설명한다. 서비스 트래픽 분류 장치(100)는 플로우 처리부(110), 서비스 정의부(120) 및 트래픽 분석부(130)를 포함할 수 있다. 서비스 트래픽 분류 장치(100) 및 후술할 이상 탐지 장치(200)의 각 구성 요소들은 데이터의 송신 혹은 수신을 위한 통신 기능과 데이터의 판독 및 처리를 위한 연산 기능을 포함할 수 있다. 이에 따라, 상기 각 구성 요소들은 데이터 버스, 유/무선 통신 모듈 혹은 데이터 입/출력 포트(port) 등의 통신 장치와, 마이크로프로세서(microprocessor)와 같은 연산 장치를 포함하여 구현될 수 있다.First, the service traffic classification apparatus 100 will be described. The apparatus 100 for classifying traffic of services may include a flow processor 110, a service definer 120, and a traffic analyzer 130. Each component of the service traffic classification apparatus 100 and the abnormality detection apparatus 200 to be described later may include a communication function for transmitting or receiving data and an operation function for reading and processing the data. Accordingly, each of the above components may be implemented by including a communication device such as a data bus, a wired / 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 processor 110 may acquire flow information from data packets received from the server system or transmitted from the server system through a network. 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 a server system.

플로우 처리부(110)는 상기 복제 패킷 각각의 헤더(header)로부터, 각 패킷의 플로우 정보를 획득할 수 있다. 플로우는 데이터 패킷의 흐름, 달리 말해 데이터 패킷이 전송될 수 있는 데이터 전송 경로에 해당되며, 하나의 플로우는 서버 시스템 내의 하나의 물리 혹은 가상 서버, 즉 호스트와 연결될 수 있다. 즉, 어떠한 데이터 패킷의 플로우 정보를 얻는다는 것은 해당 데이터 패킷이 어떠한 플로우(전송 경로)를 통해 송신 혹은 수신되었는지를 아는 것을 의미하며, 더 나아가 해당 데이터 패킷이 어떠한 호스트에 의해 송신 혹은 수신되었는지를 알아내는 것을 의미할 수 있다.The flow processor 110 may obtain 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, that is, a host, in a server system. In other words, obtaining the flow information of a data packet means knowing which flow (transmission path) the data packet is transmitted or received, and further knowing which host the data packet was transmitted or received. It can mean paying.

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

플로우 처리부(110)는 소정 주기마다 각 플로우별 데이터 패킷의 전송량을 산출하고, 그 결과를 후술할 서비스 정의부(120)로 보고할 수 있다. 구체적으로, 플로우 처리부(110)는 소정 주기 내에 송수신된 데이터 패킷에 대해, 플로우 정보가 동일한 데이터 패킷끼리, 즉 동일한 플로우 키(key)를 갖는 데이터 패킷끼리 같은 그룹에 속하도록 분류할 수 있다. 그리고, 플로우 처리부(110)는 상기 각 그룹에 속한 데이터 패킷의 총 데이터량 혹은 개수를 측정함으로써, 각 플로우에 의해 상기 소정 주기 동안 어느 정도 수량의 데이터 패킷이 송수신되었는지에 대한 플로우 통계 정보를 생성할 수 있다.The flow processing unit 110 may calculate a transmission amount of data packets for each flow at predetermined intervals and report the result to the service defining unit 120 to be described later. In detail, the flow processor 110 may 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. In addition, the flow processor 110 may generate flow statistics information on how many data packets are transmitted and received during the predetermined period by each flow by measuring the total amount or number of data packets belonging to each group. Can be.

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

서비스 정의부(120)는 서버 시스템에 의해 수행되는 각 어플리케이션 서비스의 네트워크 정보를 서비스 운용자로부터 수신하여, 상기 네트워크 정보에 기초하여 서비스-플로우 대응 정보를 상기 각 어플리케이션 서비스별로 정의할 수 있다. 서버 시스템은 복수의 호스트를 포함할 수 있으며, 상기 각 어플리케이션 서비스는 상기 복수의 호스트 중 하나 이상의 호스트를 이용하여 서비스될 수 있음은 앞서 설명한 바 있다.The service defining unit 120 may receive network information of each application service performed by the server system from a 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, as described above.

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

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

상기 소정 주기마다 생성된 트래픽 통계 정보는, 더 긴 길이를 갖는 다른 주기별로 저장되도록 취합(aggregation)될 수 있다. 이 때, 상기 다른 주기의 길이가 짧을수록 트래픽 통계 정보의 변화가 심할 것이고, 상기 데이터베이스의 용량을 많이 확보할 필요가 있을 것이므로, 상기 다른 주기도 적절히 선택될 필요가 있다.Traffic statistics information generated every predetermined period may be aggregated to be stored for each other period having a longer length. At this time, the shorter the length of the other period, the more severe the change in the traffic statistics information, and it will be necessary to ensure the capacity of the database, the other period 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)보다 더 긴 주기에 따라 취합될 수 있음은 앞서 설명한 바 있다.2 is a diagram for describing a service traffic classification method according to an embodiment of the present invention in more detail. 2, duplicate packets are input to the flow processor 110, and the flow processor 110 generates flow statistics information FA, FB, and FC from the duplicate packets PA, PB, and PC. Can be. The flow statistics information is generated every predetermined period (t p ), FA of the flow statistics information can be generated using a packet corresponding to the PA of the duplicate packet, FB, FC of the flow statistics information of the duplicate packet, respectively It may be generated using a packet corresponding to the PB, PC. The traffic analyzer 130 may generate traffic statistics information TS for each application service from the flow statistics information. As described above, the traffic statistics information may be collected according to a period longer than the predetermined period t p .

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

서비스 이상 탐지부(210)는 서비스 트래픽 분류 장치(100)의 트래픽 분석부(130)에 의해 데이터베이스에 저장된 트래픽 통계 정보를 이용하여, 트래픽의 급증 또는 급감을 탐지함으로써 각 어플리케이션 서비스별로 이상 발생 여부를 판단할 수 있다. 구체적으로, 서비스 이상 탐지부(210)는 트래픽 통계 정보를 일정 주기(예컨대, 1분)마다 획득할 수 있으며, 각 어플리케이션 서비스별로 트래픽 통계 정보 중 현재 측정된 부분(제 1 부분)을 과거에 이미 측정된 부분(제 2 부분)과 비교함으로써, 현재의 트래픽 통계 정보가 과거의 통계 정보의 추세와 부합하지 않는다고 판단되면 해당 어플리케이션 서비스와 관련하여 이상 징후가 있다고 판단할 수 있다. 이와 함께, 서비스 이상 탐지부(210)는 이상 징후 발생 시 알림(alarm)을 발생시킬 수 있다.The service abnormality detection unit 210 detects a sudden increase or decrease of traffic by using the traffic statistics information stored in the database by the traffic analysis unit 130 of the service traffic classification apparatus 100 to determine whether an abnormality occurs for each application service. You can judge. In detail, the service abnormality detection unit 210 may obtain the traffic statistics information every predetermined period (for example, one minute), and the part currently measured (first portion) of the traffic statistics information for each application service has been previously recorded. By comparing with the measured part (second part), if it is determined that the current traffic statistics information does not match the trend of the past statistical information, it may be determined that there are abnormal signs in relation to the corresponding 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 describing traffic statistics information according to an embodiment of the present invention. Referring to FIG. 3, it can be seen that there are two graphs A and B respectively showing traffic statistics information for two application services with respect to time.

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

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

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

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

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

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

연결 분석부(230)는 플로우 이상 탐지부(220)에 의해 수행된 플로우 레벨에서의 이상 탐지 결과를 이용하여, 이상의 근본 원인을 보다 구체적으로 규명할 수 있다. 즉, 연결 분석부(230)는 이상 플로우와 관련하여, 이상 플로우를 통해 송수신되는 데이터 패킷의 전송에 관한 세션 연결의 성능을 분석함으로써, 이상 발생 원인에 관한 상세 정보를 획득할 수 있다. 예컨대, 연결 분석부(230)는 상기 이상 플로우와 관계된 호스트(server) 또는 클라이언트(client)의 어플리케이션 쪽에 어떠한 문제가 발생했는지, 아니면 호스트와 클라이언트 사이의 네트워크에 문제가 발생했는지 등을 알아냄으로써, 이상 발생의 근본 원인을 진단할 수 있다. 또한 연결 분석부(230)는 이러한 이상 발생의 원인에 대한 진단 결과를 알림의 형태로 제공할 수 있다.The connection analyzer 230 may more specifically identify the root cause of the abnormality by using the abnormality detection result at the flow level performed by the flow abnormality detector 220. That is, the connection analyzer 230 may obtain detailed information on the cause of the abnormality by analyzing the performance of the session connection regarding the transmission of the data packet transmitted and received through the abnormal flow with respect to the abnormal flow. For example, the connection analysis unit 230 determines whether there is a problem in the application side of the host or client related to the abnormal flow, or whether the problem occurs in the network between the host and the client. Can diagnose the root cause of occurrence. In addition, the connection analysis unit 230 may provide a diagnosis result for the cause of the occurrence 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가 발생했을 경우 호스트 측에 문제가 발생했음을 확인할 수 있다. For the operation as described above, the connection analyzer 230 may perform a network session analysis on the duplicated packet mirrored by the data packet transmitted and received through the abnormal flow. Through the analysis, the connection analyzer 230 may determine parameters such as connection per second (CPS), response time, retransmission rate, and the like in the data packet transmission through the abnormal flow. By performing the measurement for the above, it can be used for diagnosing the cause of the abnormal occurrence. For example, in the case of TCP sessions, the number of zero window occurrences can be checked to determine that there is a problem on the receiving side of the client. Can be.

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

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

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

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

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

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

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

10: 이상 탐지 시스템
100: 서비스 트래픽 분류 장치
110: 플로우 처리부
120: 서비스 정의부
130: 트래픽 분석부
200: 이상 탐지 장치
210: 서비스 이상 탐지부
220: 플로우 이상 탐지부
230: 연결 분석부
10: abnormal detection system
100: service traffic classification device
110: flow processing unit
120: service definition
130: traffic analysis unit
200: abnormal detection device
210: service anomaly detection unit
220: flow anomaly detection unit
230: connection analysis unit

Claims (9)

복수의 어플리케이션 서비스를 제공하는 서버 시스템에 의해 네트워크를 통하여 송신 혹은 수신되는 데이터 패킷으로부터, 플로우(flow) 정보를 획득하는 플로우 처리부;
상기 각 어플리케이션 서비스의 네트워크 정보를 수신하여, 상기 네트워크 정보에 기초하여 어플리케이션 서비스 별로 트래픽 통계 정보를 산출하는데 이용되는 서비스-플로우 대응 정보를 상기 각 어플리케이션 서비스별로 정의하는 서비스 정의부; 및
상기 플로우 정보 및 상기 서비스-플로우 대응 정보에 기초하여, 데이터 패킷 통신에 관한 트래픽 통계 정보를 상기 각 어플리케이션 서비스별로 분류하여 생성하는 트래픽 분석부를 포함하고,
상기 트래픽 통계 정보는 기준 시점 이전의 정보를 이용하여 예측한 기준 시점 이후의 트래픽 값과 기준 시점 이후에 실제로 측정된 트래픽 값 간의 차이를 이용하여 상기 각 어플리케이션 서비스의 이상 발생 여부를 판단하는데 이용되는
서비스 트래픽 분류 장치.
A flow processing unit for obtaining flow information from data packets transmitted or received through a network by a server system providing a plurality of application services;
A service defining unit which receives network information of each application service and defines service-flow correspondence information used for each application service for calculating traffic statistics information for each application service based on the network information; And
Based on the flow information and the service-flow correspondence information, a traffic analysis unit for classifying and generating traffic statistics information about data packet communication for each application service,
The traffic statistics information is used to determine whether an abnormality of each application service occurs by using a difference between a traffic value after a reference point predicted by using information before a reference point and a traffic value actually measured after the reference point.
Service traffic classification device.
제 1 항에 있어서,
상기 플로우 처리부는, 상기 데이터 패킷이 미러링(mirroring)된 복제 패킷의 헤더(header)로부터 상기 플로우 정보를 획득하며,
상기 플로우 정보는, 상기 데이터 패킷의 소스(source) IP(internet protocol) 주소 정보, 목적지(destination) IP 주소 정보, 소스 포트(port) 정보, 목적지 포트 정보, 프로토콜(protocol) 정보 및 가상 네트워크 정보 중 적어도 하나를 포함하는
서비스 트래픽 분류 장치.
The method of claim 1,
The flow processing unit obtains the flow information from a header of a duplicate packet in which the data packet is mirrored,
The flow information includes source IP address information, destination IP address information, source port information, destination port information, protocol information, and virtual network information of the data packet. Containing at least one
Service traffic classification device.
제 1 항에 있어서,
상기 플로우 처리부는, 소정 주기 내에 송수신된 상기 데이터 패킷에 대해 상기 플로우 정보가 동일한 데이터 패킷끼리 같은 그룹에 속하도록 상기 데이터 패킷을 분류하고, 상기 각 그룹에 속한 데이터 패킷의 총 데이터량 혹은 개수를 계산하며,
상기 트래픽 분석부는, 상기 플로우 정보 및 상기 서비스-플로우 대응 정보에 기초하여 상기 각 그룹을 상기 어플리케이션 서비스에 매핑하여 상기 트래픽 통계 정보를 상기 각 어플리케이션 서비스별로 생성하는
서비스 트래픽 분류 장치.
The method of claim 1,
The flow processing unit classifies the data packet so that the flow information belongs to the same group among the same data packets with respect to the data packet transmitted and received within a predetermined period, and calculates the total data amount or number of data packets belonging to the respective groups. ,
The traffic analysis unit maps each group to the application service based on the flow information and the service-flow correspondence information to generate the traffic statistics information for each application service.
Service traffic classification device.
제 1 항에 있어서,
상기 트래픽 분석부는, 상기 각 어플리케이션 서비스별로, 상기 소정 주기 내에 송수신된 데이터 패킷의 총 데이터량 혹은 개수의 시간에 따른 변화 양상을 상기 트래픽 통계 정보로서 생성하는
서비스 트래픽 분류 장치.
The method of claim 1,
The traffic analyzer may generate, as the traffic statistics information, a change pattern according to time of the total data amount or the number of data packets transmitted and received within the predetermined period for each application service.
Service traffic classification device.
제 1 항에 있어서,
상기 서버 시스템은 클라우드(cloud) 서버 시스템이고,
상기 각 어플리케이션 서비스는, 상기 각 플로우 정보와 일대일로 연결되는 복수의 호스트(host) 중 하나 이상의 호스트를 이용하여 서비스되며,
상기 트래픽 분석부는, 서비스하는 호스트와 연결된 플로우 정보를 통해 상기 소정 주기 내에 전송된 데이터 패킷의 총 데이터량 혹은 개수를 상기 각 어플리케이션 서비스별로 계산한 결과에 기초하여, 상기 각 어플리케이션 서비스별로 상기 트래픽 통계 정보를 생성하는
서비스 트래픽 분류 장치.
The method of claim 1,
The server system is a cloud server system,
Each application service is serviced using one or more hosts among a plurality of hosts connected one-to-one with each flow information.
The traffic analysis unit may be configured to calculate the traffic statistics information for each application service based on a result of calculating, for each application service, the total data amount or number of data packets transmitted within the predetermined period through flow information connected to a serving host. To generate
Service traffic classification device.
복수의 어플리케이션 서비스를 제공하는 서버 시스템에 의해 소정 주기 내에 송신 혹은 수신된 데이터 패킷의 플로우 정보와, 상기 각 어플리케이션 서비스의 네트워크 정보에 기초한 서비스-플로우 대응 정보를 이용하여, 데이터 패킷 통신에 관한 트래픽 통계 정보를 상기 각 어플리케이션 서비스별로 분류하여 생성하는 서비스 트래픽 분류 장치; 및
상기 트래픽 통계 정보 중 소정의 기준 시점 이후의 제1 시간 동안에 송수신된 데이터 패킷에 대한 제 1 측정값과 상기 기준 시점 이전의 제2 시간 동안 송수신된 데이터 패킷에 대한 제 2 측정값들을 이용하여 상기 각 어플리케이션 서비스의 이상 발생 여부를 판단하는 이상 탐지 장치를 포함하고,
상기 이상 탐지 장치는 상기 제2 측정값들을 이용하여 상기 제1 시간 동안 송수신될 데이터 패킷을 예측하고, 예측 값과 상기 제1 측정값의 차이가 임계치를 초과할 경우 이상이 발생했다고 판단하는
트래픽 분류를 통한 이상 탐지를 위한 시스템.
Traffic statistics about data packet communication using flow information of data packets 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 the respective application services. A service traffic classification apparatus for classifying and generating information for each application service; And
The first measurement value for the data packet transmitted and received during the first time after the predetermined reference time point among the traffic statistics information and the second measurement value for the data packet transmitted and received during the second time before the reference time point are respectively used. An abnormality detection device for determining whether an abnormality of the application service occurs,
The abnormality detection apparatus predicts a data packet to be transmitted and received during the first time using the second measured values, and determines that an abnormality has occurred when a difference between the predicted value and the first measured value exceeds a threshold.
System for anomaly detection through traffic classification.
삭제delete 제 6 항에 있어서,
상기 이상 탐지 장치는, 상기 플로우 정보에 의해 정의되는 복수의 플로우 중 상기 이상이 발생했다고 판단되는 어플리케이션 서비스에 대응되는 플로우를 추출하고, 상기 추출된 각 플로우별로 송수신된 데이터 패킷의 수량에 관한 정보에 기초하여, 상기 플로우 중 이상이 발생했다고 판단되는 이상 플로우를 탐지하는
트래픽 분류를 통한 이상 탐지를 위한 시스템.
The method of claim 6,
The abnormality detection apparatus extracts a flow corresponding to an application service that is determined that the abnormality has occurred among a plurality of flows defined by the flow information, and includes information on the quantity of data packets transmitted and received for each of the extracted flows. On the basis of detecting an abnormal flow that is determined to have occurred in the flow
System for anomaly detection through traffic classification.
제 8 항에 있어서,
상기 이상 탐지 장치는, 상기 이상 플로우를 통해 송수신되는 데이터 패킷의 전송을 위한 네트워크 세션에 대한 분석 결과에 기초하여, 상기 이상 플로우의 이상 발생 원인에 관한 상세 정보를 획득하는
트래픽 분류를 통한 이상 탐지를 위한 시스템.
The method of claim 8,
The abnormality detecting apparatus obtains detailed information on a cause of an abnormality in the abnormal flow based on an analysis result of a network session for transmission of data packets transmitted and received through the abnormal flow.
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 KR20190066741A (en) 2019-06-14
KR102055363B1 true 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)

Families Citing this family (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
US11165675B1 (en) * 2021-04-19 2021-11-02 Corelight, Inc. System and method for network traffic classification using snippets and on the fly built classifiers
KR102542430B1 (en) * 2021-11-15 2023-06-13 국방과학연구소 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

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100816503B1 (en) * 2006-06-29 2008-03-24 주식회사 케이티 Traffic analysis system of the IP network using flow information and method thereof
KR101352553B1 (en) * 2009-12-07 2014-01-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
US20170214715A1 (en) * 2016-01-26 2017-07-27 Korea Internet & Security Agency Violation information intelligence analysis system

Also Published As

Publication number Publication date
KR20190066741A (en) 2019-06-14

Similar Documents

Publication Publication Date Title
KR102055363B1 (en) System for performing anomaly detection using traffic classification
CN111052668B (en) Residence time measurement for optimizing network services
US10542024B2 (en) Method and system for confident anomaly detection in computer network traffic
US9860257B1 (en) Anomaly detection and threat prediction through combined power and network analytics
JP6426850B2 (en) Management device, management method, and management program
US7634682B2 (en) Method and system for monitoring network health
EP3389220B1 (en) Network status evaluation
US7903657B2 (en) Method for classifying applications and detecting network abnormality by statistical information of packets and apparatus therefor
US20150039749A1 (en) Detecting traffic anomalies based on application-aware rolling baseline aggregates
US9774506B2 (en) Method and apparatus for analysis of the operation of a communication system using events
US20150103642A1 (en) Diagnosing connectivity in a network
US11522765B2 (en) Auto discovery of network proxies
EP3138008B1 (en) Method and system for confident anomaly detection in computer network traffic
US10462031B1 (en) Network visibility for cotenant processes
KR102455332B1 (en) Methods and devices for determining the state of a network device
CN106302001B (en) Service fault detection method, related device and system in data communication network
US9948532B2 (en) Information processing apparatus, information processing method, and computer readable medium
JP2022538961A (en) Automotive network switch with fault detection
JP6317685B2 (en) Communication monitoring system, communication monitoring method and program
CN113810332B (en) Encrypted data message judging method and device and computer equipment
KR102370113B1 (en) Apparatus and method for intelligent network management based on automatic packet analysis
JP2012169756A (en) Encrypted communication inspection system
US11036561B2 (en) Detecting device utilization imbalances
US9311210B1 (en) Methods and apparatus for fault detection
KR20090072436A (en) Internet traffic analysis processing system

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