[go: up one dir, main page]

KR102810808B1 - Method for monitoring content activity by reconstructing content based on network packets and device performing thereof - Google Patents

Method for monitoring content activity by reconstructing content based on network packets and device performing thereof Download PDF

Info

Publication number
KR102810808B1
KR102810808B1 KR1020240112139A KR20240112139A KR102810808B1 KR 102810808 B1 KR102810808 B1 KR 102810808B1 KR 1020240112139 A KR1020240112139 A KR 1020240112139A KR 20240112139 A KR20240112139 A KR 20240112139A KR 102810808 B1 KR102810808 B1 KR 102810808B1
Authority
KR
South Korea
Prior art keywords
content
data
packet
original data
original
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020240112139A
Other languages
Korean (ko)
Inventor
홍재완
박영진
윤영조
Original Assignee
주식회사 쿼드마이너
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 쿼드마이너 filed Critical 주식회사 쿼드마이너
Priority to KR1020240112139A priority Critical patent/KR102810808B1/en
Application granted granted Critical
Publication of KR102810808B1 publication Critical patent/KR102810808B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/1396Protocols specially adapted for monitoring users' activity
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9035Filtering based on additional data, e.g. user or group profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 출원의 일 실시예에 따른 컨텐츠 활동을 모니터링하는 장치가 컨텐츠를 복원하는 방법은, 네트워크를 통해 송수신되는 데이터 트래픽으로부터 패킷 데이터를 수집하는 단계, 상기 패킷 데이터의 원본을 디스크에 저장하는 단계, 상기 패킷 데이터를 인덱싱하여 고속 검색 DB를 생성하는 단계, 상기 고속 검색 DB에서 조건 값에 대응하는 패킷을 검색하고, 상기 패킷의 세션 정보를 확인하는 단계, 상기 디스크에서 상기 세션 정보와 관련된 패킷들의 원본 데이터를 조회하는 단계 및 상기 조회된 원본 데이터를 조합하여 컨텐츠를 복원하는 단계를 포함하는 것을 일 특징으로 한다. A method for restoring content by a device for monitoring content activity according to one embodiment of the present application is characterized by including the steps of collecting packet data from data traffic transmitted and received through a network, storing an original of the packet data on a disk, indexing the packet data to create a high-speed search DB, searching for a packet corresponding to a condition value in the high-speed search DB and confirming session information of the packet, searching for original data of packets related to the session information from the disk, and restoring the content by combining the searched original data.

Description

네트워크 패킷을 기반으로 컨텐츠를 복원하여 컨텐츠 활동을 모니터링하는 방법 및 이를 수행하는 장치{METHOD FOR MONITORING CONTENT ACTIVITY BY RECONSTRUCTING CONTENT BASED ON NETWORK PACKETS AND DEVICE PERFORMING THEREOF}METHOD FOR MONITORING CONTENT ACTIVITY BY RECONSTRUCTING CONTENT BASED ON NETWORK PACKETS AND DEVICE PERFORMING THEREOF

본 출원은 네트워크 패킷을 기반으로 컨텐츠를 복원하여 컨텐츠 활동을 모니터링하는 방법 및 이를 수행하는 장치에 관한 것이다.The present application relates to a method for monitoring content activity by restoring content based on network packets and a device for performing the same.

NDLP(Network Data Loss Prevention) 제품들은 사용자 컨텐츠 활동을 분석하는 제품군이다. 구체적으로, 기존의 NDLP 기술은 네트워크를 통해 송수신되는 모든 패킷을 수집하여 사용자의 특정 서비스인 메일(예를 들어, SMTP, IMAP, POP3), 웹메일 서비스(네이버, 카카오, Gmail 등), 게시판 글 생성, 댓글, 메신저, ChatGPT 같은 질의 내용 등에 대한 패턴을 미리 분석한다. 그리고, 패턴화된 패킷들을 모니터링하여, 인코딩된 내용들을 디코딩하여 표시한다. NDLP (Network Data Loss Prevention) products are a group of products that analyze user content activities. Specifically, existing NDLP technology collects all packets sent and received through the network and analyzes patterns in advance for specific user services such as mail (e.g. SMTP, IMAP, POP3), webmail services (Naver, Kakao, Gmail, etc.), bulletin board post creation, comments, messengers, and query contents such as ChatGPT. Then, it monitors patterned packets and decodes and displays encoded contents.

기존의 NDLP 기술로는 미리 패턴화된 서비스들만 추출이 가능하므로, 최근 다양하게 생성되는 서비스의 경우 또는 서비스 통식 방식이 변경되는 경우에는 패턴이 변경되므로 추출되지 않는다는 문제가 있다. 또한, 변경된 서비스에 대한 패턴이 업데이트되기 전까지는 패킷들이 추출되지 않으며, 추후 패턴이 업데이트되어 다시 추출을 할 수 있다고 하더라도 업데이트되는 동안에 발생한 유출 사고에 대하여는 확인할 수 없다는 문제가 있다. 예를 들어, ChatGPT 3.0과 ChatGPT 4.0의 통신 방식이 상이하므로, ChatGPT 3.0에 대한 패턴을 알고 있더라도 ChatGPT 4.0을 이용하는 패킷들을 추출할 수 없다. 그리고, ChatGPT 4.0을 패턴화하여 패턴을 업데이트한 이후부터 ChatGPT 4.0을 추출할 수 있으나, 업데이트 되기 전에 ChatGPT 4.0을 이용하여 데이터 유출이 발생한 경우 이를 확인할 수 없다. Since the existing NDLP technology can only extract pre-patterned services, there is a problem that the patterns of recently created diverse services or service communication methods change and are therefore not extracted. In addition, packets are not extracted until the pattern for the changed service is updated, and even if the pattern is updated later and extraction is possible again, there is a problem that leakage incidents that occurred during the update cannot be confirmed. For example, since the communication methods of ChatGPT 3.0 and ChatGPT 4.0 are different, even if the pattern for ChatGPT 3.0 is known, packets using ChatGPT 4.0 cannot be extracted. In addition, ChatGPT 4.0 can be extracted after the pattern is updated by patterning ChatGPT 4.0, but if a data leakage occurs using ChatGPT 4.0 before the update, it cannot be confirmed.

따라서, 데이터 손실 없이 패킷을 지속적으로 분석 가능한 방법에 대한 필요성이 있다. Therefore, there is a need for a method that can continuously analyze packets without data loss.

본 발명이 해결하고자 하는 일 과제는, 패킷에 기반하여 컨텐츠를 복원하여 컨텐츠 활동을 모니터링하는 방법 및 이를 수행하는 장치를 제공하는 것이다. The problem to be solved by the present invention is to provide a method for monitoring content activity by restoring content based on packets and a device for performing the same.

본 발명이 해결하고자 하는 과제가 상술한 과제로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to the problems described above, and problems not mentioned can be clearly understood by a person having ordinary skill in the art to which the present invention belongs from this specification and the attached drawings.

본 발명의 일 실시예에 따른 컨텐츠 활동을 모니터링하는 장치가 컨텐츠를 복원하는 방법은, 네트워크를 통해 송수신되는 데이터 트래픽으로부터 패킷 데이터를 수집하는 단계, 상기 패킷 데이터의 원본을 디스크에 저장하는 단계, 상기 패킷 데이터를 인덱싱하여 고속 검색 DB를 생성하는 단계, 상기 고속 검색 DB에서 조건 값에 대응하는 패킷을 검색하고, 상기 패킷의 세션 정보를 확인하는 단계, 상기 디스크에서 상기 세션 정보와 관련된 패킷들의 원본 데이터를 조회하는 단계 및 상기 조회된 원본 데이터를 조합하여 컨텐츠를 복원하는 단계를 포함할 수 있다.A method for restoring content by a device for monitoring content activity according to one embodiment of the present invention may include the steps of collecting packet data from data traffic transmitted and received through a network, storing an original of the packet data on a disk, indexing the packet data to create a high-speed search DB, searching for a packet corresponding to a condition value in the high-speed search DB and confirming session information of the packet, searching for original data of packets related to the session information from the disk, and restoring the content by combining the searched original data.

본 발명의 일 실시 예에 따른 네트워크 패킷을 기반으로 컨텐츠를 복원하여 컨텐츠 활동을 모니터링하는 장치는, 패킷들을 송수신하는 통신부, 메모리 및 디스크를 포함하는 저장부 및 프로세서를 포함하고, 상기 프로세서는, 네트워크를 통해 송수신되는 데이터 트래픽으로부터 패킷 데이터를 수집하고, 상기 패킷 데이터의 원본을 상기 디스크에 저장하고, 상기 패킷 데이터를 인덱싱하여 고속 검색 DB를 생성하고, 상기 고속 검색 DB에서 조건 값에 대응하는 패킷을 검색하고, 상기 패킷의 세션 정보를 확인하고, 상기 디스크에서 상기 세션 정보와 관련된 패킷들의 원본 데이터를 조회하고, 상기 패킷들의 원본 데이터를 조합하여 컨텐츠를 복원할 수 있다. According to one embodiment of the present invention, a device for monitoring content activity by restoring content based on network packets includes a communication unit for transmitting and receiving packets, a storage unit including a memory and a disk, and a processor, wherein the processor collects packet data from data traffic transmitted and received through a network, stores an original of the packet data in the disk, indexes the packet data to create a high-speed search DB, searches for packets corresponding to a condition value in the high-speed search DB, confirms session information of the packet, searches for original data of packets related to the session information in the disk, and restores the content by combining the original data of the packets.

본 발명의 과제의 해결 수단이 상술한 해결 수단들로 제한되는 것은 아니며, 언급되지 아니한 해결 수단들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The solutions to the problems of the present invention are not limited to the solutions described above, and solutions that are not mentioned can be clearly understood by a person having ordinary skill in the art to which the present invention pertains from this specification and the attached drawings.

본 발명의 일 실시 예에 따르면, 이미 도과된 기간에 수집된 패킷을 이용하여 컨텐츠를 복원할 수 있다. According to one embodiment of the present invention, content can be restored using packets collected during a period that has already elapsed.

또한 본 발명의 일 실시 예에 따르면, 저장된 패킷을 이용하여 서비스 변경 시에도 유실 없이 데이터를 리빌딩함으로써 지속적인 데이터 복원과 분석이 가능할 수 있다.In addition, according to one embodiment of the present invention, continuous data restoration and analysis can be possible by rebuilding data without loss even when a service is changed using stored packets.

도 1은 본 출원의 일 실시예에 따른 장치의 구성을 간략히 나타낸 블록도이다.
도 2는 본 출원의 일 실시예에 따른 프로세서의 구성을 간략히 도시한 블록도이다.
도 3은 본 출원의 일 실시예에 따른 고속 검색 DB를 생성하는 방법을 설명하기 위한 도면이다.
도 4는 본 출원의 일 실시예에 따른 조건 값에 대응하는 패킷들의 원본 데이터를 조회하는 방법을 설명하기 위한 도면이다.
도 5는 본 출원의 일 실시예에 따른 컨텐츠의 원본 데이터를 도시한 도면이다.
도 6은 본 출원의 일 실시예에 따른 조회된 원본 데이터를 조합하여 컨텐츠를 복원하는 방법을 설명하기 위한 도면이다.
도 7은 본 출원의 일 실시예에 따른 복원된 컨텐츠를 표시한 화면을 도시한 도면이다.
도 8은 본 출원의 일 실시예에 따른 네트워크 패킷에 기반하여 컨텐츠를 복원하여 컨텐츠 활동을 모니터링하는 방법을 설명하기 위한 흐름도이다.
도 9는 본 출원의 일 실시예에 따른 네트워크 패킷에 기반하여 컨텐츠를 복원하여 컨텐츠 활동을 모니터링하는 방법을 설명하기 위한 도면이다.
Figure 1 is a block diagram briefly illustrating the configuration of a device according to one embodiment of the present application.
FIG. 2 is a block diagram briefly illustrating the configuration of a processor according to one embodiment of the present application.
FIG. 3 is a drawing for explaining a method for creating a high-speed search DB according to one embodiment of the present application.
FIG. 4 is a diagram for explaining a method for searching original data of packets corresponding to condition values according to one embodiment of the present application.
FIG. 5 is a diagram illustrating original data of content according to one embodiment of the present application.
FIG. 6 is a diagram for explaining a method of restoring content by combining retrieved original data according to one embodiment of the present application.
FIG. 7 is a drawing illustrating a screen displaying restored content according to one embodiment of the present application.
FIG. 8 is a flowchart illustrating a method for monitoring content activity by restoring content based on network packets according to one embodiment of the present application.
FIG. 9 is a diagram for explaining a method for monitoring content activity by restoring content based on network packets according to one embodiment of the present application.

본 출원의 상술한 목적, 특징들 및 장점은 첨부된 도면과 관련된 다음의 상세한 설명을 통해 보다 분명해질 것이다. 다만, 본 출원은 다양한 변경을 가할 수 있고 여러 가지 실시예들을 가질 수 있는 바, 이하에서는 특정 실시예들을 도면에 예시하고 이를 상세히 설명하고자 한다.The above-described objects, features and advantages of the present application will become more apparent through the following detailed description with reference to the attached drawings. However, since the present application may have various modifications and various embodiments, specific embodiments will be illustrated in the drawings and described in detail below.

명세서 전체에 걸쳐서 동일한 참조번호들은 원칙적으로 동일한 구성요소들을 나타낸다. 또한, 각 실시예의 도면에 나타나는 동일한 사상의 범위 내의 기능이 동일한 구성요소는 동일한 참조부호를 사용하여 설명하며, 이에 대한 중복되는 설명은 생략하기로 한다.Throughout the specification, the same reference numerals, in principle, represent the same components. In addition, components that have the same function within the scope of the same idea shown in the drawings of each embodiment are described using the same reference numerals, and redundant descriptions thereof are omitted.

본 출원과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 출원의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.If it is determined that a detailed description of a known function or configuration related to the present application may unnecessarily obscure the gist of the present application, the detailed description will be omitted. In addition, the numbers (e.g., first, second, etc.) used in the description of this specification are merely identifiers to distinguish one component from another.

또한, 이하의 실시예에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.In addition, the suffixes “module” and “part” for components used in the following examples are given or used interchangeably only for the convenience of writing the specification, and do not have distinct meanings or roles in themselves.

이하의 실시예에서, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.In the examples below, singular expressions include plural expressions unless the context clearly indicates otherwise.

이하의 실시예에서, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다.In the examples below, terms such as “include” or “have” mean that a feature or component described in the specification is present, and do not exclude in advance the possibility that one or more other features or components may be added.

도면에서는 설명의 편의를 위하여 구성 요소들이 그 크기가 과장 또는 축소될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타낸 것으로, 본 발명이 반드시 도시된 바에 한정되지 않는다.In the drawings, the sizes of components may be exaggerated or reduced for convenience of explanation. For example, the sizes and thicknesses of each component shown in the drawings are arbitrarily shown for convenience of explanation, and the present invention is not necessarily limited to what is shown.

어떤 실시예가 달리 구현 가능한 경우에 특정한 프로세스의 순서는 설명되는 순서와 다르게 수행될 수도 있다. 예를 들어, 연속하여 설명되는 두 프로세스가 실질적으로 동시에 수행될 수도 있고, 설명되는 순서와 반대의 순서로 진행될 수 있다.In some embodiments, where the implementation is otherwise feasible, the order of specific processes may be performed differently from the order described. For example, two processes described in succession may be performed substantially simultaneously, or may be performed in an order opposite to the order described.

이하의 실시예에서, 구성 요소 등이 연결되었다고 할 때, 구성 요소들이 직접적으로 연결된 경우뿐만 아니라 구성요소들 중간에 구성 요소들이 개재되어 간접적으로 연결된 경우도 포함한다.In the examples below, when components are said to be connected, this includes not only cases where the components are directly connected, but also cases where components are interposed between the components and are indirectly connected.

예컨대, 본 명세서에서 구성 요소 등이 전기적으로 연결되었다고 할 때, 구성 요소 등이 직접 전기적으로 연결된 경우뿐만 아니라, 그 중간에 구성 요소 등이 개재되어 간접적으로 전기적 연결된 경우도 포함한다.For example, when it is said in this specification that components, etc. are electrically connected, it includes not only cases where the components, etc. are directly electrically connected, but also cases where components, etc. are interposed and indirectly electrically connected.

한편, 본 명세서에서 컨텐츠는 메일, 메신저, 번역기, 포스팅 등 네트워크를 통해 제공되는 각종 정보나 그 내용을 의미하며, 문자, 부호, 음성, 음향, 이미지, 영상 등 디지털 방식으로 처리, 유통되는 각종 정보 또는 그 내용물일 수 있다. Meanwhile, in this specification, content refers to various information or contents provided through networks such as mail, messenger, translator, and posting, and may be various information or contents processed and distributed digitally such as letters, codes, voices, sounds, images, and videos.

이하에서는 도 1 내지 도 9를 참고하여 본 출원의 네트워크 패킷에 기반하여 컨텐츠를 복원하여 컨텐츠 활동을 모니터링하는 방법 및 이를 수행하는 장치에 관하여 설명한다. Hereinafter, with reference to FIGS. 1 to 9, a method for monitoring content activity by restoring content based on network packets of the present application and a device for performing the same are described.

도 1은 본 출원의 일 실시예에 따른 장치의 구성을 간략히 나타낸 블록도이다. 도 1을 참고하면, 장치(100)는 통신부(110), 프로세서(120) 및 저장부(130)를 포함할 수 있다. (130)는 메모리 및 디스크를 포함할 수 있다. FIG. 1 is a block diagram briefly illustrating the configuration of a device according to one embodiment of the present application. Referring to FIG. 1, the device (100) may include a communication unit (110), a processor (120), and a storage unit (130). (130) may include a memory and a disk.

통신부(110)는 장치(100)와 외부 장치(예를 들어, 서버) 간의 직접(유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신부(110)는 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일실시예에 따르면, 통신부(110)는 무선 통신 모듈 (예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. The communication unit (110) may support establishment of a direct (wired) communication channel or a wireless communication channel between the device (100) and an external device (e.g., a server), and performance of communication through the established communication channel. The communication unit (110) may include one or more communication processors that operate independently from the processor (120) (e.g., an application processor) and support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication unit (110) may include a wireless communication module (e.g., a cellular communication module, a short-range wireless communication module, or a GNSS (global navigation satellite system) communication module) or a wired communication module (e.g., a local area network (LAN) communication module, or a power line communication module).

통신부(110)는 네트워크를 통해 패킷들을 송수신할 수 있다. 예를 들어, 웹 사이트에 접속하는 경우, 통신부(110)는 세션을 연결하고 패킷을 송수신할 수 있다. The communication unit (110) can send and receive packets over a network. For example, when accessing a website, the communication unit (110) can connect a session and send and receive packets.

프로세서(120)는 소프트웨어를 실행하여 프로세서(120)에 연결된 장치(100)의 적어도 하나의 다른 구성요소(예를 들어, 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 는 연산을 수행할 수 있다. 일 실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예를 들어, 통신부(110))로부터 수신된 명령 또는 데이터를 휘발성 메모리에 저장하고, 휘발성 메모리에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다. 일 실시예에 따르면, 프로세서(120)는 메인 프로세서(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 예를 들어, 전자 장치(100)가 메인 프로세서 및 보조 프로세서를 포함하는 경우, 보조 프로세서는 메인 프로세서보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서는 메인 프로세서와 별개로, 또는 그 일부로서 구현될 수 있다. 보조 프로세서는, 예를 들면, 메인 프로세서가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서를 대신하여, 또는 메인 프로세서가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서와 함께, 전자 장치(100)의 구성요소들 중 적어도 하나의 구성요소와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. The processor (120) may execute software to control at least one other component (e.g., a hardware or software component) of the device (100) connected to the processor (120), and may perform various data processing operations. According to one embodiment, as at least a part of the data processing or operation, the processor (120) may store a command or data received from another component (e.g., a communication unit (110)) in a volatile memory, process the command or data stored in the volatile memory, and store result data in a non-volatile memory. According to one embodiment, the processor (120) may include a main processor (e.g., a central processing unit or an application processor) or an auxiliary processor (e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor) that can operate independently of or together with the main processor. For example, when the electronic device (100) includes a main processor and an auxiliary processor, the auxiliary processor may be configured to use lower power than the main processor or to be specialized for a given function. The auxiliary processor may be implemented separately from the main processor, or as a part of the main processor. The auxiliary processor may control at least a portion of the functions or states associated with at least one of the components of the electronic device (100), for example, on behalf of the main processor while the main processor is in an inactive (e.g., sleep) state, or together with the main processor while the main processor is in an active (e.g., application execution) state.

프로세서(120)는 네트워크를 통해 송수신되는 데이터 트래픽으로부터 패킷 데이터를 수집하고, 패킷 데이터의 원본을 디스크에 저장할 수 있다. The processor (120) can collect packet data from data traffic transmitted and received through a network and store the original packet data on a disk.

프로세서(120)는 미리 설정된 주기마다 디스크에 저장된 패킷 데이터의 메타데이터를 이용하여 패킷 데이터들의 출발 IP들, 도착 IP들, 어플리케이션들, 업로드 데이터들, 다운로드 데이터들, 통신 프로토콜들 등의 정보를 인덱싱하고, 고속 검색 DB를 생성할 수 있다.The processor (120) can index information such as the departure IPs, arrival IPs, applications, upload data, download data, and communication protocols of packet data using metadata of packet data stored on a disk at preset intervals, and create a high-speed search DB.

프로세서(120)는 고속 검색 DB에서 조건 값에 대응하는 패킷을 검색하고, 패킷의 세션 정보를 확인할 수 있다. 구체적으로, 프로세서(120)는 패킷의 출발 IP, 도착 IP 또는 어플리케이션과 같은 정보들 중 일부가 지정된 조건에 대응하는 패킷을 검색할 수 있다. 또는, 이미 도과된 기간에 대한 검색 기간을 입력 받으면, 프로세서(120)는 고속 검색 DB에서 검색 기간에 수집된 패킷 데이터들 중 조건 값에 대응하는 패킷을 검색할 수 있다. 그리고, 프로세서(120)는 IP, Port, Timestamp 등과 세션 정보를 확인할 수 있다. The processor (120) can search for a packet corresponding to a condition value in a high-speed search DB and check the session information of the packet. Specifically, the processor (120) can search for a packet in which some of the information, such as the packet's departure IP, arrival IP, or application, corresponds to a specified condition. Or, if a search period for a period that has already elapsed is input, the processor (120) can search for a packet corresponding to the condition value among packet data collected during the search period in the high-speed search DB. In addition, the processor (120) can check the IP, Port, Timestamp, etc. and session information.

프로세서(120)는 디스크에서 세션 정보와 관련된 패킷들의 원본 데이터를 조회할 수 있다. 구체적으로, 프로세서(120)는 해당 세션에서 송수신된 모든 패킷들의 원본 데이터를 조회할 수 있다. 이때, 세션 정보와 관련된 패킷들은 동일한 컨텐츠에 대한 정보들을 나누어 가지고 있는 패킷들일 수 있다.The processor (120) can search for original data of packets related to session information from the disk. Specifically, the processor (120) can search for original data of all packets transmitted and received in the session. At this time, packets related to session information may be packets that share information about the same content.

프로세서(120)는 패킷들의 원본 데이터를 조합하여 컨텐츠를 복원할 수 있다. 구체적으로, 프로세서(120)는 디스크에서 조회된 패킷들의 원본 데이터를 순차적으로 조합하여 컨텐츠 원본 데이터를 생성할 수 있다. 그리고, 프로세서(120)는 복수의 파서들 중 컨텐츠 원본 데이터의 종류를 구분하고, 컨텐츠 원본 데이터의 종류에 대응하는 파서를 이용하여 컨텐츠 원본 데이터를 파싱하고, 디코딩할 수 있다. 그리고, 프로세서(120)는 복원된 컨텐츠를 화면에 표시할 수 있다. The processor (120) can restore content by combining original data of packets. Specifically, the processor (120) can sequentially combine original data of packets retrieved from a disk to generate content original data. In addition, the processor (120) can distinguish the type of content original data among a plurality of parsers, and parse and decode the content original data using a parser corresponding to the type of content original data. In addition, the processor (120) can display the restored content on the screen.

저장부(130)는 장치(100)의 적어도 하나의 구성요소(예: 프로세서(120))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 저장부(130)는, 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있으며, 메모리 및 디스크를 포함할 수 있다. The storage (130) can store various data used by at least one component (e.g., processor (120)) of the device (100). The data can include, for example, input data or output data for software and commands related thereto. The storage (130) can include volatile memory or nonvolatile memory, and can include memory and a disk.

저장부(130)는 고속 검색 DB를 저장할 수 있다. 그리고, 저장부(130)(예를 들어, 디스크)에 수집된 패킷 데이터의 원본을 저장할 수 있다. The storage unit (130) can store a high-speed search DB. In addition, the original of the collected packet data can be stored in the storage unit (130) (e.g., a disk).

디스플레이(140)는 장치(100)의 외부(예를 들어, 사용자)로 정보를 시각적으로 제공할 수 있다. 예를 들어, 디스플레이(140)는 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. The display (140) can visually present information to an external party (e.g., a user) of the device (100). For example, the display (140) can include a display, a holographic device, or a projector and control circuitry for controlling the device.

디스플레이(140)는 복원된 컨텐츠 화면을 표시할 수 있다.The display (140) can display a restored content screen.

도 2는 본 출원의 일 실시예에 따른 프로세서의 구성을 간략히 도시한 블록도이다. 도 2는 도 3 내지 도 7을 참고하여 더욱 상세하게 설명하도록 한다. 도 3은 본 출원의 일 실시예에 따른 고속 검색 DB를 생성하는 방법을 설명하기 위한 도면이다. 도 4는 본 출원의 일 실시예에 따른 조건 값에 대응하는 패킷들의 원본 데이터를 조회하는 방법을 설명하기 위한 도면이다. 도 5는 본 출원의 일 실시예에 따른 컨텐츠의 원본 데이터를 도시한 도면이다. 도 6은 본 출원의 일 실시예에 따른 조회된 원본 데이터를 조합하여 컨텐츠를 복원하는 방법을 설명하기 위한 도면이다. 도 7은 본 출원의 일 실시예에 따른 복원된 컨텐츠를 표시한 화면을 도시한 도면이다.FIG. 2 is a block diagram briefly illustrating a configuration of a processor according to one embodiment of the present application. FIG. 2 will be described in more detail with reference to FIGS. 3 to 7. FIG. 3 is a diagram illustrating a method for generating a high-speed search DB according to one embodiment of the present application. FIG. 4 is a diagram illustrating a method for searching original data of packets corresponding to condition values according to one embodiment of the present application. FIG. 5 is a diagram illustrating original data of content according to one embodiment of the present application. FIG. 6 is a diagram illustrating a method for restoring content by combining searched original data according to one embodiment of the present application. FIG. 7 is a diagram illustrating a screen displaying restored content according to one embodiment of the present application.

도 2를 참고하면, 프로세서(120)는 고속 검색 DB 생성부(121), 컨텐츠 원본 데이터 생성부(123) 및 컨텐츠 복원부(125)를 포함할 수 있다. Referring to FIG. 2, the processor (120) may include a high-speed search DB generation unit (121), a content original data generation unit (123), and a content restoration unit (125).

고속 검색 DB 생성부(121)는 네트워크를 통해 송수신되는 데이터 트래픽으로부터 패킷 데이터를 수집할 수 있다. 그리고, 고속 검색 DB 생성부(121)는 수집된 패킷 데이터의 원본을 디스크에 일괄적으로 저장할 수 있다. 그리고, 고속 검색 DB 생성부(121)는 주기(예를 들어, 1분)마다 저장된 패킷 데이터를 분석할 수 있다. 구체적으로, 고속 검색 DB 생성부(121)는 1분 동안 저장된 패킷 데이터들의 메타데이터를 이용하여 패킷 데이터들의 출발 IP들, 도착 IP들, 어플리케이션들, 업로드 데이터들, 다운로드 데이터들, 통신 프로토콜들 등의 정보를 인덱싱할 수 있다. 그리고, 고속 검색 DB 생성부(121)는 인덱싱된 정보들을 기반으로 고속 검색 DB를 생성할 수 있다. The high-speed search DB generation unit (121) can collect packet data from data traffic transmitted and received through a network. In addition, the high-speed search DB generation unit (121) can store the original of the collected packet data in a disk at once. In addition, the high-speed search DB generation unit (121) can analyze the stored packet data at each interval (for example, 1 minute). Specifically, the high-speed search DB generation unit (121) can index information such as the departure IPs, arrival IPs, applications, upload data, download data, and communication protocols of the packet data using metadata of the packet data stored for 1 minute. In addition, the high-speed search DB generation unit (121) can generate a high-speed search DB based on the indexed information.

예를 들어, 도 3을 참고하면, 네트워크를 통해 패킷 원본이 발생(S1)하면, 고속 검색 DB 생성부(121)는 센서를 이용하여 발생된 패킷 원본을 수집(S2)할 수 있다. 그리고, 고속 검색 DB 생성부(121)는 디스크(패킷 원본 저장소)에 수집된 패킷을 일괄 저장(S4)할 수 있다. 그리고, 고속 검색 DB 생성부(121)는 파서(parser)를 이용하여 1분마다 한번씩 일괄 저장된 패킷들을 분석(S5)할 수 있다. 그리고, 고속 검색 DB 생성부(121)는 큐서치(qsearch)를 이용하여 분석된 정보를 기반으로 고속 검색 DB를 생성(S6)할 수 있다. For example, referring to FIG. 3, when a packet source is generated (S1) through a network, a high-speed search DB generation unit (121) can collect (S2) the generated packet source using a sensor. Then, the high-speed search DB generation unit (121) can store (S4) the collected packets in bulk on a disk (packet source storage). Then, the high-speed search DB generation unit (121) can analyze (S5) the packets stored in bulk once every minute using a parser. Then, the high-speed search DB generation unit (121) can create (S6) a high-speed search DB based on the analyzed information using qsearch.

컨텐츠 원본 데이터 생성부(123)는 고속 검색 DB에서 조건 값에 대응하는 패킷을 검색하고, 검색된 패킷의 세션 정보를 확인할 수 있다. 예를 들어, 세션 정보는, IP, Port, Timestamp 등과 같은 정보일 수 있고, 조건 값은 패킷의 출발 IP, 도착 IP 또는 어플리케이션 중 적어도 하나일 수 있다. 예를 들어, 사용자는 특정 웹사이트에 글을 포스팅하는 조건, 메일을 발송하는 조건, 특정 게시판에 댓글을 쓰는 경우들을 조건 값으로 설정할 수 있다. 그리고, 컨텐츠 원본 데이터 생성부(123)는 확인된 세션 정보와 관련된 패킷들의 원본 데이터를 조회할 수 있다. 예를 들어, 확인된 세션에서 송수신된 모든 패킷들의 원본 데이터를 조회할 수 있다. 그리고, 컨텐츠 원본 데이터 생성부(123)는 조회된 원본의 패킷들을 순차적으로 조합하여 컨텐츠 원본 데이터를 생성할 수 있다. 생성된 컨텐츠 원본 데이터는 특정 디렉토리에 저장될 수 있다. The content original data generation unit (123) can search for packets corresponding to condition values in the high-speed search DB and check session information of the searched packets. For example, the session information can be information such as IP, Port, Timestamp, etc., and the condition value can be at least one of the packet's source IP, destination IP, or application. For example, a user can set conditions for posting articles on a specific website, conditions for sending emails, and cases of writing comments on a specific bulletin board as condition values. In addition, the content original data generation unit (123) can search for original data of packets related to the confirmed session information. For example, the original data of all packets transmitted and received in the confirmed session can be searched for. In addition, the content original data generation unit (123) can generate content original data by sequentially combining the searched original packets. The generated content original data can be stored in a specific directory.

한편, 컨텐츠 원본 데이터 생성부(123)는 실시간으로 고속 검색 DB에서 조건 값에 대응하는 패킷을 검색할 수 있다. 이때, 조건 값은 미리 패턴화된 패킷의 패턴일 수 있다. 예를 들어, 컨텐츠 원본 데이터 생성부(123)는 특정 어플리케이션의 특징을 패턴화하고 이에 기반하여 새로 발생한 패킷이 어떤 어플리케이션 혹은 서비스인지 판단할 수 있다. 이 경우, 실시간으로 미리 패턴화된 패킷이 발생하면 원본 데이터를 조회할 수 있다. Meanwhile, the content original data generation unit (123) can search for packets corresponding to condition values in the high-speed search DB in real time. At this time, the condition value may be a pattern of a packet that has been patterned in advance. For example, the content original data generation unit (123) can patternize the characteristics of a specific application and determine which application or service a newly generated packet is based on this. In this case, if a packet that has been patterned in advance is generated in real time, the original data can be searched.

또한, 컨텐츠 원본 데이터 생성부(123)는 사용자가 지정한 시간으로 고속 검색 DB에서 조건 값에 대응하는 패킷을 검색할 수도 있다. 예를 들어, 컨텐츠 원본 데이터 생성부(123)는 이미 도과된 기간에 대한 검색 기간을 설정하는 입력을 수신하고, 검색 기간에 수집된 패킷 데이터들 중 조건 값에 대응하는 패킷들을 검색할 수 있다. 본 발명에서는 패킷 데이터의 원본을 메모리가 아닌 디스크에 저장함으로써, 도과된 기간에 대한 패킷을 조회할 수 있다. In addition, the content original data generation unit (123) can search for packets corresponding to condition values in the high-speed search DB at a time specified by the user. For example, the content original data generation unit (123) can receive an input for setting a search period for an already elapsed period, and search for packets corresponding to the condition values among packet data collected during the search period. In the present invention, packets for an elapsed period can be searched by storing the original packet data on a disk rather than a memory.

예를 들어, 도 4를 참고하면, 컨텐츠 원본 데이터 생성부(123)는 실시간 또는 사용자가 지정한 시간으로 고속 검색 DB에서 조건 값을 이용하여 지정된 시간대에 발생한 데이터 트래픽이 있는지 확인(S11)할 수 있다. 이때, 조건 값은 웹메일에서의 임시저장 등일 수 있으며, 고속 검색 DB에 저장된 패킷들은 출발 IP, 도착 IP, 어플리케이션 정보 등이 인덱싱되었으므로 고속으로 패킷 검색이 가능하다. 그리고, 컨텐츠 원본 데이터 생성부(123)는 조건 값에 대응하는 세션 정보(예를 들어, IP, Port, Timestamp 등)를 확인(S12)할 수 있다. 그리고, 컨텐츠 원본 데이터 생성부(123)는 디스크에 저장된 패킷들의 원본 데이터들 중 조건 값에 대응하는 세션과 관련된 모든 패킷들의 원본 데이터를 확인(S13)할 수 있다. 그리고, 컨텐츠 원본 데이터 생성부(123)는 확인된 패킷들의 원본 데이터를 순차적으로 조합하여 컨텐츠 원본 데이터를 생성(S14)하고, 특정 디렉토리에 저장(S15)할 수 있다. 도 5에서와 같이, 컨텐츠 원본 데이터는 인코딩된 상태의 데이터이므로 사용자는 컨텐츠 원본 데이터로는 컨텐츠를 확인할 수 없다.For example, referring to FIG. 4, the content original data generation unit (123) can check whether there is data traffic that occurred in a specified time zone using a condition value in a high-speed search DB in real time or at a time specified by a user (S11). At this time, the condition value may be a temporary storage in a webmail, and packets stored in the high-speed search DB are indexed by departure IP, arrival IP, application information, etc., so that packet search is possible at high speed. In addition, the content original data generation unit (123) can check session information (e.g., IP, Port, Timestamp, etc.) corresponding to the condition value (S12). In addition, the content original data generation unit (123) can check the original data of all packets related to the session corresponding to the condition value among the original data of packets stored in the disk (S13). In addition, the content original data generation unit (123) can sequentially combine the original data of the confirmed packets to generate content original data (S14) and store it in a specific directory (S15). As shown in Fig. 5, since the content original data is data in an encoded state, the user cannot check the content with the content original data.

컨텐츠 복원부(125)는 조회된 원본 데이터를 조합하여 컨텐츠를 복원할 수 있다. 구체적으로, 컨텐츠 복원부(125)는 복수의 파서들을 이용하여 원본 데이터의 종류를 구분할 수 있다. 그리고, 컨텐츠 복원부(125)는 복수의 파서들 중 컨텐츠 원본 데이터의 종류에 대응하는 파서를 이용하여 컨텐츠 원본 데이터를 화면에 표시할 수 있도록 디코딩할 수 있다. 예를 들어, 컨텐츠 복원부(125)는 컨텐츠 원본 데이터에서 제목, 내용 등의 내용들을 파싱하여 메타데이터를 추출할 수 있다. 이때, 추출된 메타데이터는 고속 검색 DB에 저장되어 추후 패킷 검색에 이용될 수 있다. 그리고, 컨텐츠 복원부(125)는 제목, 내용 등의 형식에 맞게 디코딩하여 이전에 화면에 표시되었던 화면을 그대로 복원하여 표시할 수 있다. The content restoration unit (125) can restore the content by combining the searched original data. Specifically, the content restoration unit (125) can distinguish the type of the original data by using a plurality of parsers. Then, the content restoration unit (125) can decode the content original data so that it can be displayed on the screen by using a parser corresponding to the type of the content original data among the plurality of parsers. For example, the content restoration unit (125) can extract metadata by parsing the contents such as the title and contents from the content original data. At this time, the extracted metadata can be stored in a high-speed search DB and used for packet search later. Then, the content restoration unit (125) can restore and display the screen that was previously displayed on the screen by decoding it according to the format of the title, contents, etc.

예를 들어, 도 6을 참고하여 사용자가 이전에 웹메일을 임시저장한 컨텐츠를 복원하는 실시예를 살펴보면, 컨텐츠 복원부(125)는 복수의 파서들 중 원본 데이터의 종류에 대응하는 파서를 이용하여 웹메일 임시저장 원본 데이터에서 받는 사람, 보내는 사람, 참조, 제목, 파일이름, 토큰ID, 본문 등의 내용을 파싱하여 메타데이터를 추출(S21)할 수 있다. 그리고, 컨텐츠 복원부(125)는 추출된 메타데이터를 고속 검색 DB에 저장(S22)시킬 수 있다. 그리고, 컨텐츠 복원부(125)는 본문 형식에 맞게 디코딩하여 이전에 표시하였던 웹메일 화면을 그대로 복원하고, 복원된 웹메일 화면을 표시(S23)할 수 있다. 대부분의 경우, 웹메일에서 메일 본문과 첨부파일은 서로 다른 세션으로 발생할 수 있다. 메일을 작성중인 경우에는 주기마다 메일 본문이 자동 저장되고, 첨부파일은 브라우저에 이동해야 첨부파일이 업로드될 수 있다. 그리고, 추후에 메일 전송을 실행해야 완성된 메일 본문과 업로드된 첨부파일이 같은 내용임을 확인시켜주는 토큰ID 값을 이용하여 하나의 메일을 완성시킬 수 있다. 따라서, 컨텐츠 복원부(125)는 메일의 본문에 대한 파싱을 수행하고, 토큰ID를 이용하여 첨부파일이 있었는지 확인(S24)할 수 있다. 그리고, 컨텐츠 복원부(125)는 본문과 첨부파일을 맵핑시키고, 복원된 웹메일 화면을 표시하면서 첨부파일도 함께 표시할 수 있다. 예를 들어, 도 7과 같이, 컨텐츠 복원부(125)는 이전에 표시되었던 웹메일 화면과 첨부파일을 함께 표시할 수 있다. For example, referring to FIG. 6, if we look at an example of restoring content that a user previously temporarily saved as a webmail, the content restoration unit (125) can extract metadata (S21) by parsing contents such as recipient, sender, reference, subject, file name, token ID, and body from the temporarily saved webmail original data using a parser corresponding to the type of original data among a plurality of parsers. Then, the content restoration unit (125) can store the extracted metadata in a high-speed search DB (S22). Then, the content restoration unit (125) can restore the previously displayed webmail screen as it is by decoding it according to the body format, and display the restored webmail screen (S23). In most cases, the body and attached files in webmail can be generated as different sessions. When composing an email, the body of the email is automatically saved every cycle, and the attached file can be uploaded only when it is moved to the browser. And, by executing mail transmission later, a single mail can be completed by using the token ID value that confirms that the completed mail body and the uploaded attachment file have the same content. Therefore, the content restoration unit (125) can perform parsing on the mail body and check whether there was an attachment file using the token ID (S24). And, the content restoration unit (125) can map the body and the attachment file, and display the restored webmail screen while also displaying the attachment file. For example, as shown in FIG. 7, the content restoration unit (125) can display the previously displayed webmail screen and the attachment file together.

도 8은 본 출원의 일 실시예에 따른 네트워크 패킷에 기반하여 컨텐츠를 복원하여 컨텐츠 활동을 모니터링하는 방법을 설명하기 위한 흐름도이다. 도 8에서의 동작들은 순서가 제한되지는 않으며, 인접하는 두 개의 동작 사이에 다른 동작이 더 수행될 수도 있다. 아울러, 도 8의 동작들 중 적어도 일부가 생략될 수도 있다. 본 발명에서, 전자 장치(100)가 특정 동작을 수행하는 표현은, 전자 장치(100)의 프로세서(120)가 특정 동작을 수행하거나, 프로세서(120)가 다른 하드웨어로 하여금 특정 동작을 수행하도록 제어함을 의미할 수 있다.FIG. 8 is a flowchart illustrating a method for monitoring content activity by restoring content based on network packets according to one embodiment of the present application. The operations in FIG. 8 are not limited in order, and other operations may be performed between two adjacent operations. In addition, at least some of the operations in FIG. 8 may be omitted. In the present invention, the expression that the electronic device (100) performs a specific operation may mean that the processor (120) of the electronic device (100) performs a specific operation, or that the processor (120) controls other hardware to perform a specific operation.

도 8을 참고하면, 장치(100)는 패킷 데이터를 수집할 수 있다(S100). 구체적으로, 장치(100)는 네트워크를 통해 송수신되는 데이터 트래픽으로부터 패킷 데이터를 수집할 수 있다.Referring to FIG. 8, the device (100) can collect packet data (S100). Specifically, the device (100) can collect packet data from data traffic transmitted and received through a network.

장치(100)는 패킷 데이터의 원본을 디스크에 저장할 수 있다(S200). 구체적으로, 장치(100)는 수집된 패킷 데이터의 원본을 디스크에 일괄적으로 저장할 수 있다.The device (100) can store the original of packet data on a disk (S200). Specifically, the device (100) can store the original of collected packet data in bulk on the disk.

장치(100)는 패킷 데이터를 인덱싱하여 고속 검색 DB를 생성할 수 있다(S300). 구체적으로, 장치(100)는 미리 설정된 주기마다 저장된 패킷 데이터의 메타데이터를 이용하여 패킷 데이터들의 출발 IP들, 도착 IP들, 어플리케이션들, 업로드 데이터들, 다운로드 데이터들, 통신 프로토콜들 등의 정보를 인덱싱하여 고속 검색 DB를 생성할 수 있다. The device (100) can create a high-speed search DB by indexing packet data (S300). Specifically, the device (100) can create a high-speed search DB by indexing information such as the departure IPs, arrival IPs, applications, upload data, download data, and communication protocols of packet data using metadata of the stored packet data at preset intervals.

장치(100)는 고속 검색 DB에서 조건 값에 대응하는 패킷을 검색하고, 패킷의 세션 정보를 확인할 수 있다(S400). 구체적으로, 장치(100)는 패킷의 출발 IP, 도착 IP 또는 어플리케이션과 같은 정보들 중 일부가 지정된 조건에 대응하는 패킷을 검색할 수 있다. 또는, 이미 도과된 기간에 대한 검색 기간을 입력 받으면, 장치(100)는 고속 검색 DB에서 검색 기간에 수집된 패킷 데이터들 중 조건 값에 대응하는 패킷을 검색할 수 있다. 그리고, 장치(100)는 IP, Port, Timestamp 등과 세션 정보를 확인할 수 있다. The device (100) can search for a packet corresponding to a condition value in a high-speed search DB and check the session information of the packet (S400). Specifically, the device (100) can search for a packet in which some of the information, such as the packet's departure IP, arrival IP, or application, corresponds to a specified condition. Or, if a search period for a period that has already elapsed is input, the device (100) can search for a packet corresponding to the condition value among packet data collected during the search period in the high-speed search DB. In addition, the device (100) can check the IP, Port, Timestamp, etc. and session information.

장치(100)는 디스크에서 세션 정보와 관련된 패킷들의 원본 데이터를 조회할 수 있다(S500). 구체적으로, 장치(100)는 해당 세션에서 송수신된 모든 패킷들의 원본 데이터를 조회할 수 있다. 이때, 세션 정보와 관련된 패킷들은 동일한 컨텐츠에 대한 정보들을 나누어 가지고 있는 패킷들일 수 있다.The device (100) can search for original data of packets related to session information on the disk (S500). Specifically, the device (100) can search for original data of all packets transmitted and received in the session. At this time, packets related to session information may be packets that share information about the same content.

장치(100)는 패킷들의 원본 데이터를 조합하여 컨텐츠를 복원할 수 있다(S600). 구체적으로, 장치(100)는 디스크에서 조회된 패킷들의 원본 데이터를 순차적으로 조합하여 컨텐츠 원본 데이터를 생성할 수 있다. 이때, 컨텐츠 원본 데이터는 인코딩된 상태이므로, 사용자가 컨텐츠를 확인할 수 없다. 따라서, 장치(100)는 복수의 파서들 중 컨텐츠 원본 데이터의 종류를 구분하고, 컨텐츠 원본 데이터의 종류에 대응하는 파서를 이용하여 컨텐츠 원본 데이터를 파싱하고, 디코딩할 수 있다. 그리고, 장치(100)는 복원된 컨텐츠를 화면에 표시할 수 있다. The device (100) can restore content by combining original data of packets (S600). Specifically, the device (100) can sequentially combine original data of packets retrieved from a disk to generate content original data. At this time, since the content original data is in an encoded state, the user cannot check the content. Therefore, the device (100) can distinguish the type of content original data among a plurality of parsers, and parse and decode the content original data using a parser corresponding to the type of content original data. Then, the device (100) can display the restored content on the screen.

도 9는 본 출원의 일 실시예에 따른 네트워크 패킷에 기반하여 컨텐츠를 복원하여 컨텐츠 활동을 모니터링하는 방법을 설명하기 위한 도면이다. 도 9의 컨텐츠 추출 엔진 및 컨텐츠 복원 엔진은 도 1의 프로세서(120)에 포함되는 구성이다. 도 9를 참고하면, 컨텐츠 분석 서비스는 사용자가 정의한 추출(검색) 패턴을 기반으로 컨텐츠 추출 엔진과 컨텐츠 복원 엔진을 이용하여 사용자의 컨텐츠를 복원할 수 있다. 컨텐츠 추출 엔진과 컨텐츠 복원 엔진은 추출 범위를 정할 시간 값과 추출 대상 서비스의 패턴들을 조건 값으로 받아 사용자가 원하는 데이터를 추출할 수 있다. 리빌딩의 경우, 사용자로부터 원하는 시간 및 패턴을 조건 값으로 받아 1회성으로 다시 추출하는 방식을 통해 컨텐츠를 복원할 수 있다. 이 경우, 서비스 방식 등으로 인해 유실되는 패킷 없이 모든 패킷을 대상으로 원하는 컨텐츠를 추출할 수 있다. FIG. 9 is a diagram for explaining a method for monitoring content activity by restoring content based on network packets according to one embodiment of the present application. The content extraction engine and the content restoration engine of FIG. 9 are components included in the processor (120) of FIG. 1. Referring to FIG. 9, the content analysis service can restore the user's content by using the content extraction engine and the content restoration engine based on the extraction (search) pattern defined by the user. The content extraction engine and the content restoration engine can extract the data desired by the user by receiving the time value for defining the extraction range and the patterns of the extraction target service as condition values. In the case of rebuilding, the content can be restored by extracting the desired time and pattern from the user as condition values and re-extracting them once. In this case, the desired content can be extracted from all packets without any packets being lost due to the service method, etc.

컨텐츠 추출 엔진은 사용자가 정의한 추출 패턴에서 IP, URL 및 각종 메타데이터를 이용하여 저장된 원본 패킷들 중에서 특정한 서비스에 대한 패킷들 중 데이터를 주고받은 패킷들을 추출하고 조합하여 컨텐츠 원본 데이터를 생성할 수 있다. 그리고, 컨텐츠 추출 엔진은 컨텐츠 원본 데이터를 압축, 암복호화할 수도 있다.The content extraction engine can extract and combine packets that have exchanged data among packets for a specific service from among the original packets stored using IP, URL, and various metadata in a user-defined extraction pattern to create original content data. In addition, the content extraction engine can also compress, encrypt, and decrypt the original content data.

컨텐츠 복원 엔진은 추출된 컨텐츠 원본 데이터를 화면에 표시하였던 컨텐츠와 동일하도록 복원할 수 있다. 추출된 컨텐츠 원본 데이터는 다양한 종류로 구성될 수 있다. 따라서, 컨텐츠 복원 엔진은 다양한 종류의 데이터 처리를 위해 Multi-Part, Json, Split, MIME, XML, File, Json Multi-Part, Text, HTML 파서 등을 이용해 데이터를 구분하고, 내용 안에 특정 키(Key)와 값(Value)을 지정하여 상세 내용을 추가로 파싱할 수 있다. 그리고, 컨텐츠 복원 엔진은 컨텐츠 원본 데이터의 인코딩 내용을 사람이 알아볼 수 있는 내용(화면에 표시될 수 있는 내용)으로 디코딩하여 화면에 표시할 수 있다.The content restoration engine can restore the extracted content original data to be identical to the content displayed on the screen. The extracted content original data can be composed of various types. Therefore, the content restoration engine can distinguish the data using Multi-Part, Json, Split, MIME, XML, File, Json Multi-Part, Text, HTML parsers, etc. for processing various types of data, and can additionally parse the detailed contents by specifying a specific key and value in the contents. In addition, the content restoration engine can decode the encoded contents of the content original data into human-readable contents (content that can be displayed on the screen) and display them on the screen.

본 발명의 일 실시 예에 따른 컨텐츠를 복원하여 컨텐츠 활동을 모니터링하는 방법 및 이를 수행하는 장치에 따르면, 이전에 송수신된 패킷들을 이용하여 사용자에게 제공된 컨텐츠를 복원할 수 있다는 장점이 있다. According to a method for monitoring content activity by restoring content according to one embodiment of the present invention and a device for performing the same, there is an advantage in that content provided to a user can be restored by using previously transmitted and received packets.

이상에서 실시 형태들에 설명된 특징, 구조, 효과 등은 본 발명의 적어도 하나의 실시 형태에 포함되며, 반드시 하나의 실시 형태에만 한정되는 것은 아니다. 나아가, 각 실시 형태에서 예시된 특징, 구조, 효과 등은 실시 형태들이 속하는 분야의 통상의 지식을 가지는 자에 의해 다른 실시 형태들에 대해서도 조합 또는 변형되어 실시 가능하다. 따라서 이러한 조합과 변형에 관계된 내용들은 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.The features, structures, effects, etc. described in the embodiments above are included in at least one embodiment of the present invention, and are not necessarily limited to only one embodiment. Furthermore, the features, structures, effects, etc. exemplified in each embodiment can be combined or modified and implemented in other embodiments by a person having ordinary knowledge in the field to which the embodiments belong. Therefore, the contents related to such combinations and modifications should be interpreted as being included in the scope of the present invention.

또한, 이상에서 실시 형태를 중심으로 설명하였으나 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 실시 형태의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 즉, 실시 형태에 구체적으로 나타난 각 구성 요소는 변형하여 실시할 수 있는 것이다. 그리고 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.In addition, although the above has been described focusing on the embodiments, this is only an example and does not limit the present invention, and those with ordinary knowledge in the field to which the present invention pertains will know that various modifications and applications not exemplified above are possible without departing from the essential characteristics of the present embodiment. In other words, each component specifically shown in the embodiments can be modified and implemented. And the differences related to such modifications and applications should be interpreted as being included in the scope of the present invention defined in the appended claims.

100: 장치
110: 통신부
120: 프로세서
130: 저장부
140: 디스플레이
100: Device
110: Communications Department
120: Processor
130: Storage
140: Display

Claims (10)

컨텐츠 활동을 모니터링하는 장치가 컨텐츠를 복원하는 방법에 있어서,
네트워크를 통해 송수신되는 데이터 트래픽으로부터 패킷 데이터를 수집하는 단계;
상기 패킷 데이터의 원본 데이터를 디스크에 저장하는 단계;
상기 패킷 데이터를 인덱싱하여 고속 검색 DB를 생성하는 단계;
상기 고속 검색 DB에서 조건 값에 대응하는 패킷을 검색하고, 상기 패킷이 송수신된 세션의 세션 정보를 확인하는 단계;
상기 디스크에서 상기 확인된 세션 정보에 기반하여 상기 세션을 통해 송수신된 패킷들의 원본 데이터를 조회하는 단계;
상기 조회된 원본 데이터들을 순차적으로 조합하여 컨텐츠 원본 데이터를 생성하는 단계;
복수의 파서들 중 상기 컨텐츠 원본 데이터의 종류에 대응하는 파서를 판단하는 단계;
상기 판단된 파서를 이용하여 상기 컨텐츠 원본 데이터를 화면에 표시할 수 있도록 디코딩하는 단계; 및
상기 복원된 컨텐츠를 표시하는 단계;를 포함하는
컨텐츠 복원 방법.
In a method for restoring content by a device that monitors content activity,
A step of collecting packet data from data traffic transmitted and received over a network;
A step of saving the original data of the above packet data to a disk;
A step of creating a high-speed search DB by indexing the above packet data;
A step of searching for a packet corresponding to a condition value in the high-speed search DB and confirming session information of the session in which the packet was transmitted and received;
A step of searching for original data of packets transmitted and received through the session based on the session information confirmed on the disk;
A step of sequentially combining the above searched original data to create content original data;
A step of determining a parser corresponding to the type of the original content data among multiple parsers;
A step of decoding the content original data so that it can be displayed on the screen using the above-determined parser; and
a step of displaying the restored content;
How to restore content.
제1항에 있어서,
상기 패킷 데이터를 인덱싱하여 고속 검색 DB를 생성하는 단계는,
미리 설정된 주기마다 상기 디스크에 저장된 패킷 데이터의 원본을 분석하는 단계; 및
상기 분석에 기반하여 패킷의 출발 IP, 도착 IP 및 어플리케이션 정보를 인덱싱하는 단계;를 포함하는
컨텐츠 복원 방법.
In the first paragraph,
The step of creating a high-speed search DB by indexing the above packet data is:
A step of analyzing the original packet data stored on the disk at preset intervals; and
A step of indexing the packet's origin IP, destination IP, and application information based on the above analysis;
How to restore content.
제1항에 있어서,
상기 조건 값은 패킷의 출발 IP, 도착 IP 또는 어플리케이션 중 적어도 하나를 포함하는
컨텐츠 복원 방법.
In the first paragraph,
The above condition value includes at least one of the packet's source IP, destination IP, or application.
How to restore content.
제1항에 있어서,
상기 고속 검색 DB에서 조건 값에 대응하는 패킷을 검색하고, 상기 패킷의 세션 정보를 확인하는 단계는,
이미 도과된 기간에 대한 검색 기간을 설정하는 입력을 수신하는 단계; 및
상기 검색 기간에 수집된 패킷 데이터들 중 상기 조건 값에 대응하는 패킷을 검색하는 단계;를 포함하는
컨텐츠 복원 방법.
In the first paragraph,
The step of searching for a packet corresponding to a condition value in the above high-speed search DB and checking the session information of the packet is as follows.
A step for receiving an input setting a search period for a period that has already elapsed; and
A step of searching for a packet corresponding to the condition value among packet data collected during the search period;
How to restore content.
제1항에 있어서,
상기 디스크에서 상기 세션 정보와 관련된 패킷들의 원본 데이터를 조회하는 단계는,
복수의 파서들을 이용하여 상기 원본 데이터의 종류를 구분하는 단계;를 포함하는
컨텐츠 복원 방법.
In the first paragraph,
The step of retrieving the original data of packets related to the session information from the above disk is:
A step of distinguishing the type of the original data using multiple parsers; including;
How to restore content.
삭제delete 삭제delete 컴퓨터에 제1항 내지 제5항 중 어느 하나의 항에 따른 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
A computer-readable recording medium having recorded thereon a program for causing a computer to execute a method according to any one of claims 1 to 5.
네트워크 패킷을 기반으로 컨텐츠를 복원하여 컨텐츠 활동을 모니터링하는 장치에 있어서,
패킷들을 송수신하는 통신부;
메모리 및 디스크를 포함하는 저장부;
컨텐츠를 표시하는 디스플레이; 및
프로세서;를 포함하고,
상기 프로세서는,
네트워크를 통해 송수신되는 데이터 트래픽으로부터 패킷 데이터를 수집하고,
상기 패킷 데이터의 원본 데이터를 상기 디스크에 저장하고,
상기 패킷 데이터를 인덱싱하여 고속 검색 DB를 생성하고,
상기 고속 검색 DB에서 조건 값에 대응하는 패킷을 검색하고, 상기 패킷이 송수신된 세션의 세션 정보를 확인하고,
상기 디스크에서 상기 확인된 세션 정보에 기반하여 상기 세션을 통해 송수신된 패킷들의 원본 데이터를 조회하고,
상기 조회된 원본 데이터들을 순차적으로 조합하여 컨텐츠 원본 데이터를 생성하고,
복수의 파서들 중 상기 컨텐츠 원본 데이터의 종류에 대응하는 파서를 판단하고,
상기 판단된 파서를 이용하여 상기 컨텐츠 원본 데이터를 화면에 표시할 수 있도록 복원하고,
상기 복원된 컨텐츠를 표시하는,
장치.
In a device that monitors content activity by restoring content based on network packets,
A communication unit that sends and receives packets;
Storage unit including memory and disk;
A display that displays content; and
a processor; including;
The above processor,
Collect packet data from data traffic transmitted and received over the network,
Save the original data of the above packet data to the above disk,
Create a high-speed search DB by indexing the above packet data,
Search for a packet corresponding to a condition value in the above high-speed search DB, and check the session information of the session in which the packet was transmitted and received.
Based on the session information confirmed on the above disk, the original data of packets transmitted and received through the above session is retrieved,
The above searched original data is sequentially combined to create content original data,
Among multiple parsers, determine the parser that corresponds to the type of the original content data,
Using the above judged parser, restore the original content data so that it can be displayed on the screen,
Displaying the restored content above,
device.
삭제delete
KR1020240112139A 2024-08-21 2024-08-21 Method for monitoring content activity by reconstructing content based on network packets and device performing thereof Active KR102810808B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020240112139A KR102810808B1 (en) 2024-08-21 2024-08-21 Method for monitoring content activity by reconstructing content based on network packets and device performing thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020240112139A KR102810808B1 (en) 2024-08-21 2024-08-21 Method for monitoring content activity by reconstructing content based on network packets and device performing thereof

Publications (1)

Publication Number Publication Date
KR102810808B1 true KR102810808B1 (en) 2025-05-26

Family

ID=95936149

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020240112139A Active KR102810808B1 (en) 2024-08-21 2024-08-21 Method for monitoring content activity by reconstructing content based on network packets and device performing thereof

Country Status (1)

Country Link
KR (1) KR102810808B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008182416A (en) * 2007-01-24 2008-08-07 Fuji Xerox Co Ltd Image forming apparatus
KR20080102505A (en) * 2007-05-21 2008-11-26 한국전자통신연구원 File Navigation System and Method
KR20160084179A (en) * 2015-01-05 2016-07-13 주식회사 케이티 Apparatus for inspecting packet using signature classification information and method thereof
KR102080479B1 (en) * 2019-06-20 2020-02-24 주식회사 쿼드마이너 Scenario-based real-time attack detection system and scenario-based real-time attack detection method using the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008182416A (en) * 2007-01-24 2008-08-07 Fuji Xerox Co Ltd Image forming apparatus
KR20080102505A (en) * 2007-05-21 2008-11-26 한국전자통신연구원 File Navigation System and Method
KR20160084179A (en) * 2015-01-05 2016-07-13 주식회사 케이티 Apparatus for inspecting packet using signature classification information and method thereof
KR102080479B1 (en) * 2019-06-20 2020-02-24 주식회사 쿼드마이너 Scenario-based real-time attack detection system and scenario-based real-time attack detection method using the same

Similar Documents

Publication Publication Date Title
CN111752799B (en) Service link tracking method, device, equipment and storage medium
US11818018B1 (en) Configuring event streams based on identified security risks
US11296951B2 (en) Interval-based generation of event streams by remote capture agents
US11973852B2 (en) Generating event data at remote capture agents based on identified network addresses
US11615082B1 (en) Using a data store and message queue to ingest data for a data intake and query system
US11966797B2 (en) Indexing data at a data intake and query system based on a node capacity threshold
US11086897B2 (en) Linking event streams across applications of a data intake and query system
US7606897B2 (en) Accelerated and reproducible domain visitor targeting
CN111241125B (en) Method and device for recording operation log, electronic equipment and storage medium
US10366101B2 (en) Bidirectional linking of ephemeral event streams to creators of the ephemeral event streams
US10462004B2 (en) Visualizations of statistics associated with captured network data
US20190294598A1 (en) Generating event streams including aggregated values from monitored netwrok data
US9717011B2 (en) Event management in telecommunications networks
US20150293954A1 (en) Grouping and managing event streams generated from captured network data
CN110162512A (en) A kind of log searching method, apparatus and storage medium
US10387370B2 (en) Collecting test results in different formats for storage
CN113486095A (en) Civil aviation air traffic control cross-network safety data exchange management platform
KR102810808B1 (en) Method for monitoring content activity by reconstructing content based on network packets and device performing thereof
CN104539449B (en) A fault information processing method and related device
CN116074095A (en) Log analysis method, device, equipment and storage medium
CN113778709B (en) Interface calling method, device, server and storage medium
US10212116B2 (en) Intelligently condensing transcript thread history into a single common reduced instance
CN112783665B (en) Interface compensation method and device
CN114780309A (en) BFD protocol and Python language based line connectivity detection method and device
CN112217866B (en) System and method for forwarding market quotation data of internal and external networks

Legal Events

Date Code Title Description
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

PA0302 Request for accelerated examination

St.27 status event code: A-1-2-D10-D17-exm-PA0302

St.27 status event code: A-1-2-D10-D16-exm-PA0302

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

A107 Divisional application of patent
GRNT Written decision to grant
PA0107 Divisional application

St.27 status event code: A-0-1-A10-A18-div-PA0107

St.27 status event code: A-0-1-A10-A16-div-PA0107

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

R18 Changes to party contact information recorded

Free format text: ST27 STATUS EVENT CODE: A-5-5-R10-R18-OTH-X000 (AS PROVIDED BY THE NATIONAL OFFICE)

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000