KR101834503B1 - Log generating method and apparatus based on packet gathering per session in big data system - Google Patents

Log generating method and apparatus based on packet gathering per session in big data system Download PDF

Info

Publication number
KR101834503B1
KR101834503B1 KR1020160105674A KR20160105674A KR101834503B1 KR 101834503 B1 KR101834503 B1 KR 101834503B1 KR 1020160105674 A KR1020160105674 A KR 1020160105674A KR 20160105674 A KR20160105674 A KR 20160105674A KR 101834503 B1 KR101834503 B1 KR 101834503B1
Authority
KR
South Korea
Prior art keywords
packet
session
request
response
message
Prior art date
Application number
KR1020160105674A
Other languages
Korean (ko)
Other versions
KR20180020781A (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 KR1020160105674A priority Critical patent/KR101834503B1/en
Publication of KR20180020781A publication Critical patent/KR20180020781A/en
Application granted granted Critical
Publication of KR101834503B1 publication Critical patent/KR101834503B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

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

Abstract

본 발명은 빅 데이터 시스템에서 세션별 패킷 수집 기반 로그 생성 방법 및 장치에 관한 것으로, 본 발명에 따른 장치는 클라이언트와 서버 사이에 수립되는 세션별로 생성되는 복수의 패킷 보관부를 포함하는 세션 관리부, 클라이언트와 서버 사이에 교환되는 패킷을 수신하여 세션별로 복수의 패킷 보관부에 분배하는 패킷 분배부, 그리고 패킷 보관부에 세션별로 보관되는 요청 패킷과 응답 패킷을 요청 메시지와 응답 메시지로 재조립하고, 요청 메시지에서 추출된 정보와 응답 메시지에서 추출된 정보를 매핑하여 로그를 생성하는 로그 생성부를 포함한다. 본 발명에 의하면 요청 메시지와 그에 대응하는 응답 메시지를 서로 매핑하여 로그를 생성할 수 있다는 장점이 있다. 또한 세션별로 요청 패킷과 응답 패킷을 구분하여 스택 방식으로 보관하기 때문에, 네트워크 통신 상에서 SYN, ACK 등의 처리를 신경쓰지 않음으로써 패킷을 통한 고속 로그 수집이 가능하다는 장점이 있다.The present invention relates to a method and apparatus for log generation based on a session-specific packet collection in a big data system, and an apparatus according to the present invention includes a session management unit including a plurality of packet storage units, A packet distribution unit for receiving packets exchanged between the servers and distributing the packets to a plurality of packet storage units for each session; and reassembling the request packets and the response packets, which are stored for each session, in the packet storage unit into a request message and a response message, And a log generation unit for generating a log by mapping the information extracted from the response message and the extracted information. According to the present invention, there is an advantage that a log can be generated by mapping a request message and a corresponding response message to each other. In addition, since the request packet and the response packet are separated by the session and stored in a stacked manner, there is an advantage in that high-speed log collection through the packet is possible by not paying attention to processing of SYN, ACK, and the like in network communication.

Description

빅 데이터 시스템에서 세션별 패킷 수집 기반 로그 생성 방법 및 장치{LOG GENERATING METHOD AND APPARATUS BASED ON PACKET GATHERING PER SESSION IN BIG DATA SYSTEM}TECHNICAL FIELD [0001] The present invention relates to a method and apparatus for generating a log based on a session-specific packet collection in a big data system,

본 발명은 로그 생성 방법 및 장치에 관한 것으로, 보다 자세하게는 빅 데이터 시스템에서 세션별 패킷 수집 기반 로그 생성 방법 및 장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a log generation method and apparatus, and more particularly, to a method and apparatus for generating a session-based packet collection based log in a big data system.

최근에는 IT 기술 발달로 인해 다양한 정보 수집과 공유가 용이하게 되었으며 기업 또는 조직의 중요한 내부 정보가 유출될 수 있는 경로가 다양화되고 있는 추세이다. 한편 기업이나 공공 기관은 보안 이상 행위 또는 보안 이상 징후(이하 이상 징후라 함)를 탐지하기 위해서 클라이언트와 서버 사이에 교환되는 패킷을 수집하여 방대한 양의 로그 데이터를 생성하고 있는데, 일반적으로 로그 데이터 생성은 네트워크 구간에서 송수신되는 패킷을 단순히 캡처하여 기록하는 정도에 그치고 있다.Recently, the development of IT technology has facilitated the collection and sharing of various information, and the path for the leakage of important internal information of the enterprise or organization has been diversified. Meanwhile, a company or a public entity collects a packet exchanged between a client and a server in order to detect a security anomaly or a security anomaly (hereinafter referred to as an abnormal symptom), and generates a large amount of log data. Generally, Is merely about capturing and recording packets transmitted and received in a network section.

방대한 양의 빅데이터 형태로 생성되는 로그 데이터를 로그 생성 단계에서부터 시스템에 미치는 부하를 최소화하면서도 응답과 요청을 대응시켜서 로그를 생성할 수 있는 방법이 요구되고 있다.There is a need for a method of generating log data by generating a vast amount of large data in a log format by minimizing the load on the system from the log generation step and matching the response and the request.

따라서 본 발명이 해결하고자 하는 기술적 과제는 빅 데이터 시스템에서 세션별 패킷 수집 기반으로 서로 대응하는 요청 메시지와 응답 메시지에서 추출된 정보를 매핑하여 로그를 생성하는 방법 및 장치를 제공하는 것이다.SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to provide a method and apparatus for generating a log by mapping a request message corresponding to each session based on a session-based packet collection in a big data system and information extracted from a response message.

상기한 기술적 과제를 해결하기 위한 본 발명에 따른 세션별 패킷 수집 기반 로그 생성 장치는, 클라이언트와 서버 사이에 수립되는 세션별로 생성되는 복수의 패킷 보관부를 포함하는 세션 관리부, 클라이언트와 서버 사이에 교환되는 패킷을 수신하여 세션별로 상기 복수의 패킷 보관부에 분배하는 패킷 분배부, 그리고 상기 패킷 보관부에 세션별로 보관되는 요청 패킷과 응답 패킷을 요청 메시지와 응답 메시지로 재조립하고, 상기 요청 메시지에서 추출된 정보와 상기 응답 메시지에서 추출된 정보를 매핑하여 로그를 생성하는 로그 생성부를 포함한다.According to an aspect of the present invention, there is provided an apparatus for generating a packet-based log for a session according to the present invention, including: a session management unit including a plurality of packet storage units generated for each session established between a client and a server; A packet distribution unit for receiving a packet and distributing it to the plurality of packet storage units for each session; and reassembling the request packet and the response packet stored for each session in the packet storage unit into a request message and a response message, And a log generation unit for generating a log by mapping information extracted from the response message and information extracted from the response message.

상기 세션 관리부는, 클라이언트와 서버 사이에 세션이 수립될 때마다, 상기 수립되는 세션에 대응하는 패킷 보관부를 생성할 수 있다.The session management unit may generate a packet storage unit corresponding to the established session each time a session is established between the client and the server.

상기 세션 관리부는, 상기 복수의 패킷 보관부를 인메모리(In-memory) 상에서 스케일-아웃(scale-out) 확장이 가능한 논리적 구조를 가지도록 생성할 수 있다.The session management unit may generate the plurality of packet storage units to have a logical structure capable of scale-out expansion on an in-memory.

상기 복수의 패킷 보관부는, 상기 패킷 분배부에서 세션별로 분배되는 패킷을 요청 패킷 및 응답 패킷으로 구분하여 스택(stack) 방식으로 보관할 수 있다.The plurality of packet storage units may store a packet distributed by a session in the packet distribution unit into a request packet and a response packet, and store the packet in a stack manner.

상기 세션 관리부는, 상기 복수의 패킷 보관부 중에서 소정의 패킷 보관부에 요청 메시지 및 응답 메시지를 구성하는 요청 패킷과 응답 패킷이 모두 보관된 것으로 판단되면, 상기 소정의 패킷 보관부에 보관된 요청 패킷과 응답 패킷을 상기 로그 생성부에 제공할 수 있다.The session management unit, when it is determined that both the request packet and the response packet constituting the request message and the response message are stored in the predetermined packet storage unit among the plurality of packet storage units, And a response packet to the log generation unit.

상기 로그 생성부는, 상기 요청 패킷과 상기 응답 패킷의 프로토콜에 따라 상기 요청 메시지와 상기 응답 메시지를 재조립하고, 상기 재조립된 요청 메시지와 상기 재조립된 응답 메시지에서 상기 프로토콜에 따라 미리 설정된 정보를 추출하여 로그를 생성할 수 있다.The log generation unit reassembles the request message and the response message according to the protocol of the request packet and the response packet, and transmits the reassembled request message and the reassembled response message, The log can be extracted.

상기한 기술적 과제를 해결하기 위한 본 발명에 따른 세션별 패킷 수집 기반 로그 생성 방법은, 클라이언트와 서버 사이에 수립되는 세션별로 패킷 보관부를 생성하는 단계, 클라이언트와 서버 사이에 교환되는 패킷을 수신하여 세션별로 분배하여 대응하는 패킷 보관부에 보관하는 단계, 패킷 보관부에 세션별로 보관되는 요청 패킷과 응답 패킷을 요청 메시지와 응답 메시지로 재조립하는 단계, 그리고 상기 요청 메시지에서 추출된 정보와 상기 응답 메시지에서 추출된 정보를 매핑하여 로그를 생성하는 단계를 포함한다.According to another aspect of the present invention, there is provided a method of generating a packet-based log for each session, the method comprising: generating a packet storage unit for each session established between a client and a server; And reassembling the request packet and the response packet, which are stored for each session, into a request message and a response message in a packet storage unit, and a step of reassembling the request packet and the response packet into a request message and a response message, And generating a log by mapping the extracted information.

본 발명에 의하면 요청 메시지와 그에 대응하는 응답 메시지를 서로 매핑하여 로그를 생성할 수 있다는 장점이 있다. 또한 세션별로 요청 패킷과 응답 패킷을 구분하여 스택 방식으로 보관하기 때문에, 네트워크 통신 상에서 SYN, ACK 등의 처리를 신경쓰지 않음으로써 패킷을 통한 고속 로그 수집이 가능하다는 장점이 있다.According to the present invention, there is an advantage that a log can be generated by mapping a request message and a corresponding response message to each other. In addition, since the request packet and the response packet are separated by the session and stored in a stacked manner, there is an advantage in that high-speed log collection through the packet is possible by not paying attention to processing of SYN, ACK, and the like in network communication.

도 1은 본 발명의 일 실시예에 따른 세션별 패킷 수집 기반 로그 생성 장치의 구성을 나타낸 블록도이다.
도 2는 도 1의 로그 생성 장치의 구성을 보다 자세히 나타낸 블록도이다.
도 3은 본 발명의 일 실시예에 따른 세션별 패킷 수집 기반 로그 생성 방법을 설명하기 위해 제공되는 흐름도이다.
FIG. 1 is a block diagram illustrating a configuration of an apparatus for generating a packet-based log for a session according to an embodiment of the present invention.
FIG. 2 is a block diagram showing the configuration of the log generating apparatus of FIG. 1 in more detail.
FIG. 3 is a flowchart illustrating a method of generating a packet-based log for each session according to an embodiment of the present invention.

그러면 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily carry out the present invention.

도 1은 본 발명의 일 실시예에 따른 세션별 패킷 수집 기반 로그 생성 장치의 구성을 나타낸 블록도이다.FIG. 1 is a block diagram illustrating a configuration of an apparatus for generating a packet-based log for a session according to an embodiment of the present invention.

도 1을 참고하면, 클라이언트(10a, 10b, …, 10n)와 서버(20)는 통신망(30)을 통해 요청 메시지와 응답 메시지를 교환할 수 있다.Referring to FIG. 1, the client 10a, 10b, ..., 10n and the server 20 can exchange a request message and a response message via the communication network 30. [

통신망(30)은 구내 정보 통신망(local area network:LAN), 도시권 통신망(metropolitan area network:MAN), 광역 통신망(wide area network:WAN), 인터넷 등을 가리지 않고, 통신 방식도 유선, 무선을 가리지 않으며 어떠한 통신 방식이라도 상관없다.The communication network 30 does not need to include a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), and the Internet, It does not matter what communication method it is.

클라이언트(10a, 10b, …, 10n)와 서버(20)는 세션을 수립하고, HTTP, FTP, IP, TCP, DNS 등의 프로토콜(protocol)에 기반하여 요청 패킷과 응답 패킷을 교환할 수 있다.The clients 10a, 10b, ..., 10n and the server 20 establish a session and exchange request packets and response packets based on protocols such as HTTP, FTP, IP, TCP, and DNS.

세션별 패킷 수집 기반 로그 생성 장치(100)는 클라이언트(10a, 10b, …, 10n)와 서버(20) 사이에 통신망(30)을 통해 교환되는 패킷을 수집하여 로그를 생성하는 기능을 수행한다.The session-specific packet-collection-based log generating apparatus 100 collects packets exchanged between the clients 10a, 10b, ..., 10n and the server 20 via the communication network 30 and generates a log.

도 2는 도 1의 로그 생성 장치(100)의 구성을 보다 자세히 나타낸 블록도이다.2 is a block diagram showing the configuration of the log generating apparatus 100 of FIG. 1 in more detail.

도 2를 참고하면, 본 발명에 따른 로그 생성 장치(100)는 패킷 분배부(110), 세션 관리부(120) 및 로그 생성부(130)를 포함할 수 있다. 세션 관리부(120)는 복수의 패킷 보관부(120a, 120b, …, 120m)를 포함할 수 있다.2, the log generation apparatus 100 according to the present invention may include a packet distribution unit 110, a session management unit 120, and a log generation unit 130. The session management unit 120 may include a plurality of packet storage units 120a, 120b, ..., 120m.

패킷 분배부(110)는 클라이언트(10a, 10b, …, 10n)와 서버(20) 사이에 교환되는 패킷을 수신하여 세션별로 분류하고, 해당 세션에 대응하는 패킷 보관부(120a, 120b, …, 120m)로 패킷을 분배하는 기능을 수행한다.The packet distribution unit 110 receives packets exchanged between the clients 10a, 10b, ..., 10n and the server 20 and classifies them according to the sessions, and stores the packet storage units 120a, 120b, ..., 120m).

세션 관리부(120)는 클라이언트(10a, 10b, …, 10n)와 서버(20)에 수립되는 세션별로 패킷 보관부를 생성할 수 있다. 예컨대 클라이언트(10a, 10b, …, 10n)와 서버(20) 사이에 새로운 세션이 수립될 때마다, 세션 관리부(120)는 새로 수립되는 세션에 대응하는 패킷 보관부를 인메모리(In-memory) 상에서 스케일-아웃(scale-out) 확장이 가능한 논리적 구조를 가지도록 생성할 수 있다. 물론 세션 관리부(120)는 종료되는 세션이 있으면 그에 맞추어 해당 세션의 패킷 보관부를 삭제할 수 있다.The session management unit 120 may generate a packet storage unit for each session established in the clients 10a, 10b, ..., 10n and the server 20. [ For example, whenever a new session is established between the client 10a, 10b, ..., 10n and the server 20, the session management unit 120 stores the packet storage unit corresponding to the newly established session on an in-memory Can be created to have a logical structure capable of scale-out expansion. Of course, if there is a terminated session, the session management unit 120 can delete the packet storage unit of the session.

세션 관리부(120)는 새로 수립되는 세션의 클라이언트측 아이피:포트(IP:PORT)와 서버측 아이피:포트를 고유키로 하여 패킷 보관부를 생성할 수 있으며, 패킷 분배부(110)는 수신된 패킷의 출발지 아이피:포트와 목적지 아이피:포트를 기초로 세션별로 패킷을 분배할 수 있다.The session management unit 120 can generate a packet storage unit using the client side IP: port of the newly established session and the server side IP: port as unique keys. The packet distribution unit 110 distributes the received packet You can distribute packets by session based on the source IP: port and destination IP: port.

복수의 패킷 보관부(120a, 120b, …, 120m)는 패킷 분배부(110)에서 세션별로 분배되어 전달되는 패킷을 요청 패킷 및 응답 패킷으로 구분하여 스택(stack) 방식으로 보관할 수 있다.The plurality of packet storage units 120a, 120b, ..., and 120m may store packets distributed in a packet distribution unit 110 for each session into a request packet and a response packet in a stacked manner.

세션 관리부(120)는 복수의 패킷 보관부(120a, 120b, …, 120m) 중에서 소정의 패킷 보관부에 요청 메시지를 구성하는 요청 패킷과 응답 메시지를 구성하는 응답 패킷이 모두 보관된 것으로 판단되면, 소정의 패킷 보관부에 보관된 요청 패킷과 응답 패킷을 로그 생성부(130)에 제공할 수 있다.If it is determined that the request packet constituting the request message and the response packet constituting the response message are stored in the predetermined packet storage unit among the plurality of packet storage units 120a, 120b, ..., 120m, It is possible to provide the log generation unit 130 with a request packet and a response packet stored in a predetermined packet storage unit.

예컨대 클라이언트(10a)와 서버(20) 사이에 '세션 A'가 수립되면, 세션 관리부(120)는 '세션 A'에 대응하는 패킷 보관부(120m)를 생성할 수 있다. 그리고 클라이언트(10a)로부터 서버(20)로 '세션 A'를 통해 전달되는 요청 메시지의 요청 패킷은 패킷 분배부(110)에서 수신되는 순서대로 패킷 보관부(120m)에 전달되어 보관된다. 마찬가지로 서버(20)가 응답 메시지를 '세션 A'를 통해 클라이언트(10a)에 전달하면, 응답 메시지의 응답 패킷은 패킷 분배부(110)에서 수신되는 순서대로 패킷 보관부(120m)에 전달되어 보관된다.For example, when 'session A' is established between the client 10a and the server 20, the session management unit 120 may generate a packet storage unit 120m corresponding to 'session A'. The request packet of the request message transmitted from the client 10a to the server 20 via the 'session A' is transmitted to and stored in the packet storage unit 120m in the order received by the packet distribution unit 110. [ Similarly, when the server 20 transmits a response message to the client 10a through 'session A', the response packet of the response message is delivered to the packet storage unit 120m in the order received by the packet distribution unit 110, do.

따라서 일련의 요청 패킷과 일련의 응답 패킷이 수신된 후에, 새로운 요청 패킷이 수신되면 한 쌍의 요청 메시지와 응답 메시지를 구성하는 패킷들이 패킷 보관부(120m)에 모두 보관된 것으로 판단할 수 있다. 물론 새로운 요청 패킷이 수신되지 않더라도, 해당 세션의 마지막 응답 패킷이 수신되고 나서 일정 시간(예컨대 10초 등 미리 설정된 시간이 될 수 있음)이 경과하고도 새로운 요청 패킷이 수신되지 않으면, 한 쌍의 요청 메시지와 응답 메시지를 구성하는 모든 패킷들이 패킷 보관부(120m)에 보관된 것으로 판단할 수 있다.Accordingly, when a new request packet is received after a series of request packets and a series of response packets are received, it can be determined that packets constituting a pair of request message and response message are all stored in the packet storage unit 120m. Of course, even if a new request packet is not received, if a new request packet is not received even after a predetermined time (for example, a predetermined time such as 10 seconds) has elapsed after the last response packet of the session is received, It can be determined that all the packets constituting the message and the response message are stored in the packet storage unit 120m.

로그 생성부(130)는 복수의 패킷 보관부(120a, 120b, …, 120m)에 세션별로 보관되는 요청 패킷과 응답 패킷을 요청 메시지와 응답 메시지로 재조립하고, 재조립된 요청 메시지에서 추출된 정보와 응답 메시지에서 추출된 정보를 매핑하여 로그를 생성하는 기능을 수행한다. The log generation unit 130 reassembles the request packet and the response packet stored in the plurality of packet storage units 120a, 120b, ..., and 120m for each session into a request message and a response message, And generates a log by mapping the information extracted from the information and response message.

로그 생성부(130)는 요청 패킷과 응답 패킷의 프로토콜에 따라 요청 메시지와 응답 메시지를 재조립하고, 재조립된 요청 메시지와 응답 메시지에서 해당 프로토콜에 따라 미리 설정된 정보를 추출하여 로그를 생성할 수 있다.The log generation unit 130 reassembles the request message and the response message according to the protocol of the request packet and the response packet, extracts the preset information according to the protocol from the reassembled request message and the response message, have.

아래 표 1은 프로토콜에 따라 로그 생성부(130)에서 로그 생성을 위해 추출하는 정보를 예시한 것이다.Table 1 below illustrates information extracted by the log generation unit 130 for log generation according to the protocol.

프로토콜protocol 추출 가능 정보Extractable information HTTPHTTP ㅇ 일반 헤더 (Request Header) 항목
Date : 메세지가 언제 만들어졌는지에 대한 날짜와 시간을 제공함 Via : 이 메시지가 어떤 중개자(프락시, 게이트웨이)를 거쳐 왔는지 보여줌

ㅇ 요청 헤더 (Request Header) 항목
Client-IP : 클라이언트가 실행된 컴퓨터의 IP를 제공함
Host : 요청의 대상이 되는 서버의 호스트 명과 포트를 제공함
Referer : 현재의 요청 URI가 들어있었던 문서의 URL을 제공함

ㅇ 응답 헤더 (Response Header) 항목
Server : 서버 애플리케이션의 이름과 버전
ㅇ Request Header Item
Date: Provides the date and time of when the message was created Via: Shows what message this message has been through (proxy, gateway)

Request Header Item
Client-IP: provides the IP of the computer on which the client is running
Host: Provides the host name and port of the server that is the target of the request.
Referer: provides the URL of the document that contained the current request URI.

ㅇ Response Header item
Server: Name and version of the server application
IPIP ㅇ IP 헤더 정보
Source IP Address
Destination IP Address
ㅇ IP header information
Source IP Address
Destination IP Address
TCP 또는 FTPTCP or FTP ㅇ TCP 헤더 정보
Source port (16 비트) : 송신 포트
Destination port (16 비트) : 수신 포트
TCP header information
Source port (16 bits): send port
Destination port (16 bits): Receive port
DNSDNS ㅇ Body 정보
Domain Name
DNS Question & Answer Data
About Body
Domain Name
DNS Question & Answer Data

물론 표 1은 로그 생성부(130)에서 로그 생성을 위해 요청 메시지와 응답 메시지에서 추출 가능한 정보를 예시한 것이며, 그 외에 다른 정보가 추출되어 로그에 포함될 수도 있다.Of course, Table 1 illustrates the information that can be extracted from the request message and the response message for log generation in the log generation unit 130, and other information may be extracted and included in the log.

도 3은 본 발명의 일 실시예에 따른 세션별 패킷 수집 기반 로그 생성 방법을 설명하기 위해 제공되는 흐름도이다.FIG. 3 is a flowchart illustrating a method of generating a packet-based log for each session according to an embodiment of the present invention.

도 1 내지 도 3을 참고하면, 세션 관리부(120)는 클라이언트(10a, 10b, …, 10n)와 서버(20) 사이에 수립되는 세션별로 패킷 보관부(120a, 120b, …, 120m)를 각각 생성할 수 있다(S310). 단계(S310)에서 세션 관리부(120)는 새로 수립되는 세션에 대응하는 패킷 보관부를 인메모리(In-memory) 상에서 스케일-아웃(scale-out) 확장이 가능한 논리적 구조를 가지도록 생성할 수 있다. 물론 세션 관리부(120)는 종료되는 세션이 있으면 그에 맞추어 해당 세션의 패킷 보관부를 삭제할 수 있다.1 to 3, the session management unit 120 stores the packet storage units 120a, 120b, ..., 120m for each session established between the clients 10a, 10b, ..., 10n and the server 20, (S310). In step S310, the session management unit 120 may generate a packet storage unit corresponding to a newly established session so as to have a logical structure capable of scale-out expansion on an in-memory. Of course, if there is a terminated session, the session management unit 120 can delete the packet storage unit of the session.

다음으로 패킷 분배부(110)는 클라이언트(10a, 10b, …, 10n)와 서버(20) 사이에 교환되는 패킷을 수신할 때마다 세션별로 분류하여 대응하는 패킷 보관부(120a, 120b, …, 120m)에 전달하여 보관되게 할 수 있다(S320). 단계(S320)에서 패킷 보관부(120a, 120b, …, 120m)는 수신되는 패킷을 요청 패킷과 응답 패킷으로 구분하여 스택 방식으로 보관할 수 있다.Next, the packet distribution unit 110 classifies the packets exchanged between the clients 10a, 10b, ..., 10n and the server 20 for each session and stores them in the corresponding packet storage units 120a, 120b, ..., 120m to be stored (S320). In step S320, the packet storage units 120a, 120b, ..., and 120m may separate the received packet into a request packet and a response packet, and store the received packet in a stacked manner.

단계(S320)를 수행하는 도중에 새로운 세션이 클라이언트(10a, 10b, …, 10n)와 서버(20) 사이에 수립되면, 세션 관리부(120)는 단계(S310)를 수행할 수 있다.If a new session is established between the client 10a, 10b, ..., 10n and the server 20 during the execution of the step S320, the session management unit 120 may perform step S310.

단계(S310) 내지 단계(S320)를 수행하다가, 세션 관리부(120)는 복수의 패킷 보관부(120a, 120b, …, 120m) 중에서 소정의 패킷 보관부에 요청 메시지를 구성하는 요청 패킷과 응답 메시지를 구성하는 응답 패킷이 모두 보관된 것으로 판단되면(S330-Y), 소정의 패킷 보관부에 보관된 요청 패킷과 응답 패킷을 로그 생성부(130)에 제공할 수 있다(S340).In step S310 to step S320, the session management unit 120 stores a request packet and a response message in a predetermined packet storage unit among the plurality of packet storage units 120a, 120b, ..., (S330-Y), it is possible to provide the log generation unit 130 with the request packet and the response packet stored in the predetermined packet storage unit (S340).

다음으로 로그 생성부(130)는 패킷 보관부(120a, 120b, …, 120m)에서 제공되는 요청 패킷과 응답 패킷을 요청 메시지와 응답 메시지로 재조립하고(S350), 재조립된 요청 메시지에서 추출된 정보와 응답 메시지에서 추출된 정보를 매핑하여 로그를 생성할 수 있다(S360).Next, the log generation unit 130 reassembles the request packet and the response packet provided in the packet storage units 120a, 120b, ..., 120m into a request message and a response message (S350) And the information extracted from the response message is mapped to generate the log (S360).

단계(S360)에서 로그 생성부(130)는 요청 패킷과 응답 패킷의 프로토콜에 따라 요청 메시지와 응답 메시지를 재조립하고, 재조립된 요청 메시지와 응답 메시지에서 해당 프로토콜에 따라 미리 설정된 정보를 추출하여 로그를 생성할 수 있다.In step S360, the log generator 130 reassembles the request message and the response message according to the protocol of the request packet and the response packet, and extracts preset information according to the protocol from the reassembled request message and the response message You can create a log.

본 발명의 실시예는 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터로 읽을 수 있는 매체를 포함한다. 이 매체는 앞서 설명한 세션별 패킷 수집 기반 로그 생성 방법을 실행시키기 위한 프로그램을 기록한다. 이 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 이러한 매체의 예에는 하드디스크, 플로피디스크 및 자기 테이프와 같은 자기 매체, CD 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 자기-광 매체, 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 구성된 하드웨어 장치 등이 있다. 또는 이러한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.Embodiments of the present invention include a computer-readable medium having program instructions for performing various computer-implemented operations. This medium records a program for executing the above-described method for generating a session-based packet collection based log. The medium may include program instructions, data files, data structures, etc., alone or in combination. Examples of such media include magnetic media such as hard disks, floppy disks and magnetic tape, optical recording media such as CD and DVD, programmed instructions such as floptical disk and magneto-optical media, ROM, RAM, And a hardware device configured to store and execute the program. Or such medium may be a transmission medium, such as optical or metal lines, waveguides, etc., including a carrier wave that transmits a signal specifying a program command, data structure, or the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like.

이상에서 본 발명의 바람직한 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, Of the right.

Claims (12)

클라이언트와 서버 사이에 수립되는 세션별로 생성되는 복수의 패킷 보관부를 포함하는 세션 관리부,
클라이언트와 서버 사이에 교환되는 패킷을 수신하여 세션별로 상기 복수의 패킷 보관부에 분배하는 패킷 분배부, 그리고
상기 패킷 보관부에 세션별로 보관되는 요청 패킷과 응답 패킷을 요청 메시지와 응답 메시지로 재조립하고, 상기 요청 메시지에서 추출된 정보와 상기 응답 메시지에서 추출된 정보를 매핑하여 로그를 생성하는 로그 생성부
를 포함하고,
상기 세션 관리부는,
클라이언트와 서버 사이에 세션이 수립될 때마다, 상기 수립되는 세션에 대응하는 패킷 보관부를 생성하는 세션별 패킷 수집 기반 로그 생성 장치.
A session management unit including a plurality of packet storage units generated for each session established between the client and the server,
A packet distribution unit for receiving packets exchanged between the client and the server and distributing the packets to the plurality of packet storage units for each session;
A log generation unit for reassembling the request packet and the response packet stored in the packet storage unit for each session into a request message and a response message and mapping the information extracted in the request message and the information extracted in the response message,
Lt; / RTI >
The session management unit,
Wherein each time a session is established between a client and a server, a packet storage unit corresponding to the established session is created.
삭제delete 제 1 항에서,
상기 세션 관리부는,
상기 복수의 패킷 보관부를 인메모리(In-memory) 상에서 스케일-아웃(scale-out) 확장이 가능한 논리적 구조를 가지도록 생성하는 세션별 패킷 수집 기반 로그 생성 장치.
The method of claim 1,
The session management unit,
Wherein the plurality of packet storage units are configured to have a logical structure capable of scale-out expansion on an in-memory basis.
제 1 항에서,
상기 복수의 패킷 보관부는,
상기 패킷 분배부에서 세션별로 분배되는 패킷을 요청 패킷 및 응답 패킷으로 구분하여 스택(stack) 방식으로 보관하는 세션별 패킷 수집 기반 로그 생성 장치.
The method of claim 1,
Wherein the plurality of packet storage units comprise:
Wherein the packets are divided into a request packet and a response packet in a stacked manner.
제 4 항에서,
상기 세션 관리부는,
상기 복수의 패킷 보관부 중에서 소정의 패킷 보관부에 요청 메시지 및 응답 메시지를 구성하는 요청 패킷과 응답 패킷이 모두 보관된 것으로 판단되면, 상기 소정의 패킷 보관부에 보관된 요청 패킷과 응답 패킷을 상기 로그 생성부에 제공하는 세션별 패킷 수집 기반 로그 생성 장치.
5. The method of claim 4,
The session management unit,
If it is determined that both the request packet and the response packet constituting the request message and the response message are stored in the predetermined packet storage unit among the plurality of packet storage units, A log generation unit for generating a session-specific packet collection based on a log;
제 5 항에서,
상기 로그 생성부는,
상기 요청 패킷과 상기 응답 패킷의 프로토콜에 따라 상기 요청 메시지와 상기 응답 메시지를 재조립하고, 상기 재조립된 요청 메시지와 상기 재조립된 응답 메시지에서 상기 프로토콜에 따라 미리 설정된 정보를 추출하여 로그를 생성하는 세션별 패킷 수집 기반 로그 생성 장치.
The method of claim 5,
The log generation unit may include:
Reassembles the request message and the response message according to the protocol of the request packet and the response packet, and extracts the preset information according to the protocol from the reassembled request message and the reassembled response message to generate a log Based packet collection based log generation device.
클라이언트와 서버 사이에 수립되는 세션별로 패킷 보관부를 생성하는 단계,
클라이언트와 서버 사이에 교환되는 패킷을 수신하여 세션별로 분배하여 대응하는 패킷 보관부에 보관하는 단계,
패킷 보관부에 세션별로 보관되는 요청 패킷과 응답 패킷을 요청 메시지와 응답 메시지로 재조립하는 단계, 그리고
상기 요청 메시지에서 추출된 정보와 상기 응답 메시지에서 추출된 정보를 매핑하여 로그를 생성하는 단계
를 포함하고,
클라이언트와 서버 사이에 세션이 수립될 때마다, 상기 수립되는 세션에 대응하는 패킷 보관부를 생성하는 세션별 패킷 수집 기반 로그 생성 방법.
Generating a packet storage unit for each session established between the client and the server,
Receiving a packet exchanged between a client and a server, distributing the packet to each session, and storing the packet in a corresponding packet storage unit,
Reassembling the request packet and the response packet, which are stored for each session in the packet storage unit, into a request message and a response message; and
Generating a log by mapping information extracted from the request message and information extracted from the response message
Lt; / RTI >
And generating a packet storage unit corresponding to the established session whenever a session is established between the client and the server.
삭제delete 제 7 항에서,
상기 패킷 보관부는 인메모리(In-memory) 상에서 스케일-아웃(scale-out) 확장이 가능한 논리적 구조를 가지도록 생성되는 세션별 패킷 수집 기반 로그 생성 방법.
8. The method of claim 7,
Wherein the packet storage unit is generated to have a logical structure capable of scale-out expansion on an in-memory basis.
제 7 항에서,
상기 패킷 보관부는,
상기 세션별로 분배되는 패킷을 요청 패킷 및 응답 패킷으로 구분하여 스택(stack) 방식으로 보관하는 세션별 패킷 수집 기반 로그 생성 방법.
8. The method of claim 7,
The packet storage unit stores,
And storing the packets distributed by the session into a request packet and a response packet in a stacked manner.
제 10 항에서,
상기 패킷 보관부에 요청 메시지 및 응답 메시지를 구성하는 요청 패킷과 응답 패킷이 모두 보관된 것으로 판단되면, 상기 패킷 보관부에 보관된 요청 패킷과 응답 패킷을 상기 패킷 보관부에 보관된 역순으로 이어 붙여서 상기 요청 메시지와 상기 응답 메시지를 재조립하는 세션별 패킷 수집 기반 로그 생성 방법.
11. The method of claim 10,
If it is determined that both the request packet and the response packet constituting the request message and the response message are stored in the packet storage unit, the request packet and the response packet stored in the packet storage unit are connected in the reverse order stored in the packet storage unit And reassembling the request message and the response message.
제 11 항에서,
상기 요청 패킷과 상기 응답 패킷의 프로토콜에 따라 상기 요청 메시지와 상기 응답 메시지를 재조립하고, 상기 재조립된 요청 메시지와 상기 재조립된 응답 메시지에서 상기 프로토콜에 따라 미리 설정된 정보를 추출하여 상기 로그를 생성하는 세션별 패킷 수집 기반 로그 생성 방법.
12. The method of claim 11,
Reassembling the request message and the response message according to the protocol of the request packet and the response packet, extracting predetermined information according to the protocol from the reassembled request message and the reassembled response message, Generating per-session packet collection based log generation method.
KR1020160105674A 2016-08-19 2016-08-19 Log generating method and apparatus based on packet gathering per session in big data system KR101834503B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160105674A KR101834503B1 (en) 2016-08-19 2016-08-19 Log generating method and apparatus based on packet gathering per session in big data system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160105674A KR101834503B1 (en) 2016-08-19 2016-08-19 Log generating method and apparatus based on packet gathering per session in big data system

Publications (2)

Publication Number Publication Date
KR20180020781A KR20180020781A (en) 2018-02-28
KR101834503B1 true KR101834503B1 (en) 2018-03-05

Family

ID=61401579

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160105674A KR101834503B1 (en) 2016-08-19 2016-08-19 Log generating method and apparatus based on packet gathering per session in big data system

Country Status (1)

Country Link
KR (1) KR101834503B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020508592A (en) * 2018-02-02 2020-03-19 イージーサーティ インコーポレイテッド Log generation method and device based on packet collection by session in big data system
CN114928638A (en) * 2022-06-16 2022-08-19 上海斗象信息科技有限公司 Network behavior analysis method and device and monitoring equipment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101388627B1 (en) * 2013-11-07 2014-04-24 한국인터넷진흥원 Apparatus for blocking abnormal traffic in 4g mobile network
KR101499022B1 (en) * 2014-02-12 2015-03-05 한국인터넷진흥원 Apparatus and method for detecting abnormal MMS message in 4G mobile network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101388627B1 (en) * 2013-11-07 2014-04-24 한국인터넷진흥원 Apparatus for blocking abnormal traffic in 4g mobile network
KR101499022B1 (en) * 2014-02-12 2015-03-05 한국인터넷진흥원 Apparatus and method for detecting abnormal MMS message in 4G mobile network

Also Published As

Publication number Publication date
KR20180020781A (en) 2018-02-28

Similar Documents

Publication Publication Date Title
US11122067B2 (en) Methods for detecting and mitigating malicious network behavior and devices thereof
CN107181833B (en) Computer readable storage medium
US11799908B2 (en) Bot detection in an edge network using transport layer security (TLS) fingerprint
EP3201783B1 (en) Https request enrichment
RU2634209C1 (en) System and method of autogeneration of decision rules for intrusion detection systems with feedback
Ling et al. Protocol-level hidden server discovery
EP1958422B1 (en) Method of embedding information in internet transmissions
US10498618B2 (en) Attributing network address translation device processed traffic to individual hosts
JP2009134725A (en) Method and system for extracting application protocol characteristics
Claffy Tracking IPv6 evolution: data we have and data we need
CN106161404A (en) The method of SSL Session state reuse, server and system
US10298653B1 (en) Methods for monitoring streaming video content quality of experience (QOE) and devices thereof
CN106059986A (en) Method and server for SSL (Secure Sockets Layer) session reuse
KR101834503B1 (en) Log generating method and apparatus based on packet gathering per session in big data system
CN105610636A (en) Security log generation method for cloud computing environment
US20130262652A1 (en) Articles of manufacture, service provider computing methods, and computing service systems
Kamel et al. Distributed Address Table (DAT): A decentralized model for end-to-end communication in IoT
JP6053561B2 (en) System and method for creating a network traffic profile based on BGP routes for the purpose of detecting forged traffic
Dhaya et al. Cloud computing security protocol analysis with parity-based distributed file system
US11038922B2 (en) Secure traffic optimization in an edge network
US7792975B1 (en) Application session management in networking devices
EP3541042B1 (en) Method and apparatus for generating log on basis of packet collection for each session in big data system
US9609079B1 (en) Methods for improved cache maintenance and devices thereof
de Vries et al. Anycast and its potential for DDoS mitigation
KR102363758B1 (en) Proxy device and its control method

Legal Events

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