KR20220125965A - Apparatus for Realtime Monitoring Performance Degradation of Network System - Google Patents
Apparatus for Realtime Monitoring Performance Degradation of Network System Download PDFInfo
- Publication number
- KR20220125965A KR20220125965A KR1020210029940A KR20210029940A KR20220125965A KR 20220125965 A KR20220125965 A KR 20220125965A KR 1020210029940 A KR1020210029940 A KR 1020210029940A KR 20210029940 A KR20210029940 A KR 20210029940A KR 20220125965 A KR20220125965 A KR 20220125965A
- Authority
- KR
- South Korea
- Prior art keywords
- server
- client
- session
- information
- application
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/12—Network monitoring probes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/024—Standardisation; Integration using relational databases for representation of network management data, e.g. managing via structured query language [SQL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0695—Management of faults, events, alarms or notifications the faulty arrangement being the maintenance, administration or management system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
- H04L43/026—Capturing of monitoring data using flow identification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
- H04L43/045—Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/20—Support for services
- H04L49/208—Port mirroring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
Abstract
Description
이 발명은 네트워크 시스템의 성능 저하를 모니터링하는 장치에 관한 것으로서, 보다 상세하게는 네트워크 TCP 프로토콜의 패킷을 빠르게 분석하여 네트워크 장애와 외부 공격을 실시간으로 검출하기 위한 장치에 관한 것이다.The present invention relates to a device for monitoring the performance degradation of a network system, and more particularly, to a device for rapidly analyzing a packet of a network TCP protocol to detect a network failure and an external attack in real time.
TCP(Transmission Control Protocol)는 IP 프로토콜 위에서 연결형 서비스를 지원하는 전송계층 프로토콜로, 인터넷 환경에서 기본으로 사용한다. TCP 프로토콜 종류로는 FTP, SSH, Telent, SMPT, DNS, DHCP, HTTP, HTTPS, POP3, SNMP, SSL 등이 있다. Transmission Control Protocol (TCP) is a transport layer protocol that supports connection-type services on top of the IP protocol, and is basically used in the Internet environment. TCP protocol types include FTP, SSH, Telent, SMPT, DNS, DHCP, HTTP, HTTPS, POP3, SNMP, and SSL.
TCP 프로토콜은 신뢰할 수 없는 공용망인 인터넷에서 데이터의 유실없는 통신을 보장하기 위해서, 데이터 패킷이 정상적으로 송수신할 준비가 되었는지를 확인하는 절차를 진행하는데, 이를 3-way handshaking이라고 하며, 다음과 같이 이루어진다.In order to guarantee data loss-free communication on the Internet, which is an unreliable public network, the TCP protocol proceeds with a procedure to check whether data packets are normally ready for transmission and reception. This is called 3-way handshaking, and is done as follows.
먼저, 클라이언트 시스템은 TCP 연결을 맺기 위해 통신하고자 하는 서버 시스템에게 통신을 하고 싶다는 메시지를 보낸다(SYN 플래그가 세팅된 패킷 전송).First, the client system sends a message that it wants to communicate to the server system with which it wants to communicate to establish a TCP connection (transmitting a packet with the SYN flag set).
서버 시스템은 SYN 신호를 받으면 SYN-RECEIVED 상태로 변경되고, 그에 대한에 대한 응답 및 나도 통신 준비가 되었다는 메시지로서, SYN-ACK 플래그를 세팅한 메시지를 클라이언트 시스템에게 전송하여 응답한다.When the server system receives the SYN signal, it changes to the SYN-RECEIVED state, and responds by sending a message that sets the SYN-ACK flag to the client system as a response and a message that I am ready to communicate.
클라이언트 시스템은 이 SYN-ACK 신호를 받으면 ESTABLISHED 상태로 변경하고 서버 시스템에 ACK 신호를 전송하여 응답한다. 클라이언트의 ACK 신호를 받은 서버 시스템이 ESTABLISHED 상태로 변경하면 서버 시스템과 클라이언트 시스템 간의 연결이 성공적으로 완료된다.When the client system receives this SYN-ACK signal, it changes to the ESTABLISHED state and responds by sending an ACK signal to the server system. When the server system that has received the client's ACK signal changes to the ESTABLISHED state, the connection between the server system and the client system is successfully completed.
이후, 기존 통신과 새로운 통신을 구분해야 하므로 헤더에 플래그(flag)값을 넣어서 트랜잭션(transaction)이 이루어지고, 애플리케이션 서비스마다 세션(session)이 생성된다.Thereafter, since it is necessary to distinguish between the existing communication and the new communication, a transaction is performed by putting a flag value in the header, and a session is created for each application service.
클라이언트 시스템과 서버 시스템 간 트랜잭션은, 클라이언트 시스템과 서버 시스템 사이의 세션이 생성된 상태에서, 클라이언트 시스템이 트랜잭션 요청 메시지를 전송하고, 서버 시스템이 해당 트랜잭션 요청 메시지에 응답하는 절차로 이루어진다. 각 트랜잭션은 하나의 패킷으로 이루어질 수도 있고, 복수의 패킷들로 이루어질 수도 있다. 즉, 서버 시스템과 클라이언트 시스템이 인터넷을 통해 데이터를 보내기 위한 경로배정(라우팅)을 효율적으로 하기 위해서는, 전송 프로토콜에 기반하여 한 번에 보낼 수 있는 데이터의 양이 제한된다. 따라서 하나의 트랜잭션에 데이터의 양이 많은 경우, 여러 개의 조각들로 나누어 전송하는데, 이러한 조각들을 패킷이라고 한다.A transaction between a client system and a server system consists of a procedure in which the client system transmits a transaction request message and the server system responds to the transaction request message while a session between the client system and the server system is created. Each transaction may consist of one packet or a plurality of packets. That is, in order for the server system and the client system to efficiently allocate a route (routing) for sending data through the Internet, the amount of data that can be sent at one time is limited based on the transmission protocol. Therefore, when there is a large amount of data in one transaction, it is divided into several pieces and transmitted, and these pieces are called packets.
전통적인 네트워크 시스템들은 사용자가 사용하는 클라이언트 장치와 웹 사이트와 연관된 다양한 서버 장치들을 포함한다. 일반적으로 클라이언트 장치는 웹 사이트를 이용하기 위해, 특정 IP 주소를 갖는 서버에 접속 요청을 하고, 대기 시간을 거쳐 접속한다. 이때, 다수의 사용자에 의해 다수의 클라이언트 장치가 특정 시점에 몰려서 서버에 접속을 시도하거나 트랜잭션 요청하는 경우, 병목현상에 의해 서버와 연관된 네트워크 시스템의 성능이 저하될 수 있다. 이러한 성능 저하의 원인을 신속하게 파악하고, 이에 대한 대응이 최대한 빠르게 이루어져야 한다.Traditional network systems include a client device used by a user and various server devices associated with a web site. In general, in order to use a web site, a client device makes a connection request to a server having a specific IP address and accesses it after a waiting time. In this case, when a plurality of client devices are crowded by a plurality of users at a specific point in time and attempt to access the server or request a transaction, the performance of the network system associated with the server may be deteriorated due to a bottleneck. It is necessary to quickly identify the cause of such performance degradation, and respond to it as quickly as possible.
이러한 네트워크 시스템의 성능 저하의 원인을 파악하기 위한 선행기술로서, 대한민국 공개특허 제2020-0033090호 "네트워크 보안 모니터링 방법, 네트워크 보안 모니터링 장치 및 시스템"이 있다.As a prior art for identifying the cause of the performance degradation of such a network system, there is Korean Patent Laid-Open No. 2020-0033090 "Method for Network Security Monitoring, Network Security Monitoring Device and System".
상술한 선행기술은, 제1엔티티(서버)와, 제2엔티티(클라이언트단말), 및 제1엔티티 및 제2엔티티 간에 구비되는 스위칭 장치 및 상기 스위칭 장치와 연결되는 네트워크 보안 모니터링 장치를 포함한다. 이 보안 기술은, 네트워크 보안 모니터링 장치가 스위칭 장치로부터 미러링하는 것을 기반으로, 제1엔티티와 제2엔티티 간에 송수신되는 적어도 하나의 패킷들에 대한, 미러링된 적어도 하나의 패킷들을 획득하는 단계; 및 상기 네트워크 보안 모니터링 장치가, 미러링된 적어도 하나의 패킷에 포함된 정보들 중 적어도 일부를 기반으로 제1엔티티와 제2엔티티와 연관된 네트워크에 대한 보안 문제 발생 여부를 결정하는 단계를 포함하여 이루어진다.The above-described prior art includes a first entity (server), a second entity (client terminal), a switching device provided between the first entity and the second entity, and a network security monitoring device connected to the switching device. The security technique includes the steps of, based on a network security monitoring device mirroring from a switching device, for at least one packet transmitted/received between a first entity and a second entity, acquiring at least one mirrored packet; and determining, by the network security monitoring apparatus, whether a security problem occurs with respect to a network associated with the first entity and the second entity based on at least a portion of information included in at least one mirrored packet.
이 선행기술에서, 패킷 정보를 기반으로 보안 문제 발생 여부를 결정하는 단계는, 미리 결정한 제1소스 IP 로부터 제1목적지 IP까지의 구간의 접속의 수가 미리 결정한 임계값 이상이라는 결정, 미리 결정한 제1URL에 대한 요청이 미리 결정한 임계값 이상이라는 결정, 미리 결정한 제1서버의 BPS(Bit Per Second)가 미리 결정한 임계값 이상이라는 결정, 미리 결정한 제2소스 IP로부터의 PPS(Packet per Second)가 미리 결정한 임계값 이상이라는 결정, 미리 결정한 제3소스 IP로부터의 동기신호(SYN) 패킷의 수가 미리 결정한 임계값 이상이라는 결정, 및 미리 결정한 제4소스 IP가 미리 결정한 임계값 이상의 개수의 서버 IP로 동시에 접속을 시도한다는 결정 중 적어도 하나를 기반으로 보안 문제 발생 여부를 결정한다.In this prior art, the step of determining whether a security problem occurs based on packet information includes determining that the number of connections in a section from a predetermined first source IP to a first destination IP is greater than or equal to a predetermined threshold, a predetermined first URL It is determined that the request for the . Determining that the threshold is greater than or equal to the predetermined number of synchronization signal (SYN) packets from the third source IP is greater than or equal to the predetermined threshold, and the predetermined fourth source IP is simultaneously connected to the number of server IPs greater than or equal to the predetermined threshold. Determines whether or not a security problem occurs based on at least one of the decisions to try.
이러한 선행기술은, 상술한 바와 같이 접속의 수, 요청의 수, BPS, PPS, 동기신호 패킷의 수, 서버 IP로의 동시 접속의 수 등을 각각의 임계값과 비교하여 보안 문제 발생 여부를 결정한다. In this prior art, as described above, the number of connections, the number of requests, the number of BPS, PPS, the number of synchronization signal packets, the number of simultaneous connections to the server IP, etc. are compared with the respective threshold values to determine whether or not a security problem occurs. .
선행기술의 발명의 상세한 설명 [0085] 단락 내지 [0187] 단락에, 서버와 클라이언트단말 간 송수신되는 패킷을 분석하는 패킷 분석 모듈의 기능 및 동작이 기재되어 있다. 이러한 선행기술의 패킷 분석 모듈은 패킷들을 분석하여 다양한 성능 지표들을 산출하여 보안 문제 발생 여부를 결정하기 때문에 실시간 처리가 어려운 문제점이 있다.DETAILED DESCRIPTION OF THE PRIOR ART In paragraphs [0085] to [0187], functions and operations of a packet analysis module for analyzing packets transmitted and received between a server and a client terminal are described. The packet analysis module of the prior art has a problem in that it is difficult to process in real time because it analyzes packets and calculates various performance indicators to determine whether or not a security problem occurs.
이 발명의 목적은 네트워크 시스템에 송수신되는 네트워크 패킷 정보를 고속으로 분류, 저장 및 검색함으로써, 네트워크 품질, 장애 및 보안 진단을 빠르게 하고 네트워크 성능 저하를 실시간으로 모니터링하는 장치를 제공하는데 그 목적이 있다.It is an object of the present invention to provide an apparatus for rapidly classifying, storing, and searching network packet information transmitted and received to and from a network system, thereby rapidly diagnosing network quality, failure and security, and monitoring network performance degradation in real time.
상술한 목적을 달성하기 위한 이 발명에 따른 네트워크 성능 저하 실시간 모니터링 장치는, Network performance degradation real-time monitoring apparatus according to the present invention for achieving the above object,
다수의 클라이언트장치들과 다수의 서버장치들이 연결된 네트워크 시스템에서, 서버단에서 송수신되는 패킷을 미러링하여 제공받는 네트워크 성능 저하 모니터링 장치에 있어서,In a network system in which a plurality of client devices and a plurality of server devices are connected, in the network performance degradation monitoring device provided by mirroring packets transmitted and received at the server end,
상기 미러링된 패킷으로부터 세션에 관한 정보와 상기 세션에 연결된 서버에 관한 정보와 상기 세션에 연결된 클라이언트에 관한 정보와 상기 미러링된 패킷의 종류를 추출하는 패킷 분석 모듈과, 상기 패킷 분석 모듈에서 분석된 정보를 기반으로 세션 구조체와 서버 구조체와 클라이언트 구조체를 관리하는 구조체 관리 모듈과; 상기 세션 구조체와 상기 서버 구조체와 상기 클라이언트 구조체에 저장된 정보로부터 상기 네트워크 시스템에서 이루어지는 모든 플로우 대비 대기 플로우의 비율로서 성능 저하 리스크를 산출하며 관리하는 리스크 관리 모듈과, 상기 네트워크 시스템에서 이루어지는 모든 세션에 대해 각 세션별로 형성된 복수의 세션 구조체들과, 상기 모든 세션을 형성하는 모든 서버에 대해 각 서버별로 형성된 복수의 서버 구조체들과, 상기 모든 세션을 형성하는 모든 클라이언트에 대해 각 클라이언트별로 형성된 복수의 클라이언트 구조체들을 포함하고;a packet analysis module for extracting session information, information about a server connected to the session, information about a client connected to the session, and a type of the mirrored packet from the mirrored packet; information analyzed by the packet analysis module a structure management module for managing a session structure, a server structure, and a client structure based on ; A risk management module for calculating and managing a performance degradation risk as a ratio of standby flows to all flows made in the network system from the information stored in the session structure, the server structure, and the client structure, and for all sessions made in the network system A plurality of session structures formed for each session, a plurality of server structures formed for each server for all servers forming all the sessions, and a plurality of client structures formed for each client for all clients forming all sessions including;
상기 각 세션 구조체는 해당 세션에 관한 정보와, 해당 세션에 연결된 서버에 대응하는 서버 구조체에 연결하기 위한 서버 구조체 포인터와, 해당 세션에 연결된 클라이언트에 대응하는 클라이언트 구조체에 연결하기 위한 클라이언트 구조체 포인터를 포함하고;Each of the session structures includes information about the corresponding session, a server structure pointer for connecting to a server structure corresponding to a server connected to the corresponding session, and a client structure pointer for connecting to a client structure corresponding to a client connected to the corresponding session. do;
상기 각 서버 구조체는 해당 서버에 관한 정보와, 상기 서버가 연결된 모든 세션들에 대응하는 세션 구조체 포인터들을 관리하는 세션 구조체 관리 테이블과, 상기 서버와 연결된 모든 클라이언트들에 대응하는 클라이언트 IP 주소들을 관리하는 클라이언트 정보 관리 테이블을 포함하고;Each of the server structures includes information about the corresponding server, a session structure management table for managing session structure pointers corresponding to all sessions to which the server is connected, and client IP addresses corresponding to all clients connected to the server. a client information management table;
상기 각 클라이언트 구조체는 해당 클라이언트에 관한 정보와, 상기 클라이언트가 연결된 모든 세션들에 대응하는 세션 구조체 포인터들을 관리하는 세션 구조체 관리 테이블과, 상기 클라이언트와 연결된 모든 서버들에 대응하는 서버 IP 주소들을 관리하는 서버 정보 관리 테이블을 포함하는 것을 특징으로 한다.Each of the client structures includes a session structure management table that manages information about the corresponding client, session structure pointers corresponding to all sessions to which the client is connected, and server IP addresses corresponding to all servers connected to the client. It is characterized in that it includes a server information management table.
이 발명에 따르면 네트워크 시스템에 송수신되는 네트워크 패킷 정보를 세션별, 서버별, 클라이언트별, 애플리케이션별, 지역별로 분류하여 구조체로 저장 및 링크로 연결하여 관리함으로써, 네트워크 시스템의 성능 저하 여부 및 원인을 신속하게 검출할 수 있는 잇점이 있다.According to the present invention, network packet information transmitted and received to and from the network system is classified by session, server, client, application, and region, stored in a structure, and managed by linking with a link, thereby quickly determining whether or not the performance of the network system is degraded and the cause. There is a benefit that can be detected.
도 1은 이 발명이 적용되는 네트워크 환경을 도시한 도면이다.
도 2는 이 발명에 따른 네트워크 성능 저하 모니터링 장치의 구성도이다.
도 3은 네트워크 시스템에서, 서버와 클라이언트간 세션 연결 예시도이다.
도 4는 도 3의 네트워크 시스템 예시도에서 생성되는 구조체 구성 및 연결도이다.
도 5는 이 발명에 따른 세션 구조체의 구성도이다.
도 6은 이 발명에 따른 서버 구조체의 구성도이다.
도 7은 이 발명에 따른 클라이언트 구조체의 구성도이다.
도 8은 이 발명에 따른 애플리케이션 구조체의 구성도이다.
도 9는 이 발명에 따른 지역 구조체의 구성도이다.
도 10은 이 발명의 구조체 생성 및 업데이트 과정을 도시한 동작 흐름도이다.
도 11은 이 발명의 리스크 관리 과정을 도시한 동작 흐름도이다.1 is a diagram illustrating a network environment to which the present invention is applied.
2 is a block diagram of a network performance degradation monitoring apparatus according to the present invention.
3 is an exemplary diagram of a session connection between a server and a client in a network system.
FIG. 4 is a structure configuration and connection diagram generated in the exemplary network system diagram of FIG. 3 .
5 is a block diagram of a session structure according to the present invention.
6 is a block diagram of a server structure according to the present invention.
7 is a block diagram of a client structure according to the present invention.
8 is a block diagram of an application structure according to the present invention.
9 is a block diagram of a local structure according to the present invention.
10 is an operation flowchart illustrating a process of creating and updating a structure according to the present invention.
11 is an operation flowchart illustrating a risk management process of the present invention.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 구체적으로 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the present invention can have various changes and can have various embodiments, specific embodiments are illustrated in the drawings and will be described in detail in the detailed description. However, this is not intended to limit the present invention to a specific embodiment, it should be understood to include all modifications, equivalents and substitutes included in the spirit and scope of the present invention.
각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다. 제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.In describing each figure, like reference numerals are used for like elements. Terms such as first, second, etc. may be used to describe various elements, but the elements should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another.
예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. "및/또는" 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.For example, without departing from the scope of the present invention, a first component may be referred to as a second component, and similarly, a second component may also be referred to as a first component. The term “and/or” includes a combination of a plurality of related listed items or any of a plurality of related listed items.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미가 있는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않아야 한다.Terms such as those defined in commonly used dictionaries should be interpreted as having meanings consistent with the meanings in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. shouldn't
앞서 설명한 바와 같이 서버와 클라이언트 장치간 통신은 3-way handshaking, 세션 연결, 트랜잭셕 요청 및 응답 과정으로 이루어진다. 다수의 사용자에 의해 다수의 클라이언트 장치가 특정 시점에 몰려서 서버에 접속을 시도하거나 트랜잭션 요청을 하는 경우, 특정 서버에 3-way handshaking의 SYN 신호와 트랜잭션 요청이 누적되어, 해당 SYN 신호에 대한 응답 대기 시간이나 트랜잭션 요청에 대한 응답 대기 시간이 길어진다. 다시 말해, 3-way handshaking과 트랜잭션을 포함한 전체 플로우(flow) 중 SYN 대기 플로우와 트랜잭션 대기 플로우가 증가하게 된다. 이 발명에서는 전체 플로우 중 SYN 대기 플로우와 트랜잭션 대기 플로우의 비율을 기반으로 성능 저하 리스크를 관리하는 방법을 제안한다.As described above, communication between the server and the client device consists of 3-way handshaking, session connection, and transaction request and response processes. When a large number of client devices are clustered by multiple users at a specific point in time to access the server or make a transaction request, 3-way handshaking SYN signals and transaction requests are accumulated in a specific server, waiting for a response to the corresponding SYN signal The time or waiting time for a response to a transaction request increases. In other words, SYN wait flows and transaction wait flows increase among all flows including 3-way handshaking and transactions. This invention proposes a method for managing performance degradation risk based on the ratio of SYN waiting flows and transaction waiting flows among all flows.
도 1은 본 발명이 적용되는 네트워크 환경을 도시한 도면이다.1 is a diagram illustrating a network environment to which the present invention is applied.
이 발명이 적용되는 네트워크 환경은 복수의 클라이언트장치(111,112,113), 네트워크(120),라우터(130), 패킷 미러링 기능을 구비한 스위치(140), 복수의 서버장치(151,152,153) 및 이 발명에 따른 네트워크 성능 저하 모니터링 장치(160)가 포함된다.A network environment to which the present invention is applied includes a plurality of
클라이언트장치(111,112,113)는 네트워크(120)를 통해 특정 웹 사이트 또는 웹 애플리케이션에 접속한다. 이때, 접속은 상기 웹 사이트 및/또는 웹 애플리케이션과 연관된 서버장치(151,152,153)에서 수행된다. 클라이언트장치(111,112,113)는 웹 브라우저를 통해 특정 웹 페이지에 접속하여 원하는 페이지 또는 애플리케이션의 실행을 요청한다. 상기 요청은, html 문서와 같은 정적인 콘텐츠뿐만 아니라 동영상, 오디오와 같은 멀티미디어 콘텐츠 및/또는 기타 다른 애플리케이션의 실행을 포함할 수 있다.The
클라이언트장치(111,112,113)는 사용자에 의해 동작하고, 통신 기능(인터넷 접속 및 웹 브라우저 실행 기능 포함) 및 데이터 처리 기능을 포함하는 임의의 장치를 포함할 수 있다. 클라이언트장치(111,112,113)는, 이동국(MS), 이용자 장비(UE: User Equipment), 사용자 터미널(UT: User Terminal), 무선 터미널, 액세스 터미널(AT), 고정 및 이동 가입자 유닛(Subscriber Unit), 가입자 스테이션(SS: Subscriber Station), 셀룰러 전화, 무선기기(wireless device), 무선 통신 디바이스, 무선송수신유닛(WTRU: Wireless Transmit/Receive Unit), 이동 노드, 모바일, 모바일국, 개인 휴대 정보 단말(personal digital assistant), 스마트폰, 랩톱, 넷북, 개인용 컴퓨터, 무선 센서, 소비자 전자기기(CE), 사물인터넷(IoT) 디바이스 또는 다른 용어들로서 지칭될 수 있다. 클라이언트장치(111,112,113)의 다양한 변형 실시예들은 무선 통신 기능을 가지는 휴대용 컴퓨터, 무선 통신 기능을 가지는 디지털 카메라와 같은 촬영장치, 무선 통신 기능을 가지는 게이밍 장치, 무선 통신 기능을 가지는 음악저장 및 재생 가전제품, 무선 인터넷 접속 및 브라우징이 가능한 인터넷 가전제품뿐만 아니라 이러한 기능들의 조합들을 통합하고 있는 휴대형 유닛 또는 단말기들을 포함할 수 있으나, 이에 한정되는 것은 아니다.The
각 클라이언트장치(111,112,113)는 사용자 입력을 수신하기 위한 마우스 및 키보드와 같은 입력장치들 및 사용자가 네트워킹된 장치들과 상호 작용하기 위한 제어 사용자 인터페이스를 제공하기 위한 디스플레이를 포함하는 사용자 통신 인터페이스를 포함할 수 있다. 사용자 인터페이스는 사용자에게 정보를 제공하기 위해 그래픽 사용자 인터페이스(GUI: Graphical User Interface)를 포함할 수 있다.Each
네트워크(120)는 유선 및/또는 무선 네트워크를 포함한다. 네트워크(120)는 인터넷을 포함할 수 있다. 네트워크(120)는 다양하게 접속된 클라이언트장치(111,112,113)와 서버장치(151,152,153) 간에 데이터를 송신하고 수신하기 위해 물리층(매체)을 제공하는 시리얼 버스를 포함할 수 있다. 여기서 시리얼 버스는 1394 시리얼 버스를 포함할 수 있다. 이는 시간-다중 송신(Time-multiplexed) 오디오/비디오(A/V) 스트림 및 표준 아이피(IP: Internet Protocol) 통신(예컨대, IETF REC 2734)을 양쪽 모두 지원할 수 있고, 다만 반드시 이에 한정되는 것은 아니다. 네트워크(120)는 비-1394 네트워크(예컨대, 이더넷 등)도 포함할 수 있다. 또한, 네트워크(120)는 홈 네트워크를 포함할 수도 있다. 뿐만 아니라 네트워크(120)는 사물인터넷(IoT) 연결을 지원하는 임의의 네트워크일 수도 있다. 클라이언트장치(111,112,113) 각각은 네트워크(120)에서 하나 이상의 서버장치들(151,152,153)과 통신할 수 있다.
서버장치(151,152,153)는 사용자에게 서비스들을 제공하기 위해 네트워크 자원을 이용하여 사용자들의 요청에 응답한다. 이는 정보(데이터)의 리턴(return)을 포함한다. 또한, 기능의 성능(예컨대, 기계적인 기능) 및 상태의 리턴, 데이터 스트림 및 상태의 리턴, 데이터 스트림의 수용 및 상태의 리턴, 또는 각종 행위에 대한 상태의 저장을 포함한다. 서버장치(151,152,153)는 그 자신의 하드웨어의 제어를 구현하기 위해, 주문형, 내장형, 제어 프로그램을 포함할 수 있다.The
서버장치(151,152,153)는 특정 웹 사이트 및/또는 웹 애플리케이션과 연관될 수 있고, 각 웹 사이트 및/또는 웹 애플리케이션에서 수행되는 작업과 관련된 연산 및 관리를 수행한다. 서버장치(151,152,153)는 클라이언트장치들(111,112,113) 및 다른 서버들과 상호 작용할 수 있다. 예시적인 서비스들은 MPEG 소싱/싱킹(sourcing/sinking), 및 디스플레이 서비스를 포함할 수 있다.The
서버장치(151,152,153)는 네트워크(120)를 통해 장치의 명령 및 제어를 위한 인터페이스를 제공하는 인터페이스 데이터(예컨대, HTML, XML, 자바, 자바스크립트, GIF, JPEG, MPEG, 그래픽 파열 또는 의도한 목적에 사용되는 임의의 다른 포맷)와 같은 정보를 처리할 수 있다. 서버장치(151,152,153)는, 그 장치의 명령 및 제어를 제공하는 하나 이상의 하이퍼마크업언어(HTML: Hypertext Markup Language)와 같은 정보를 처리할 수 있다. 서버장치(151,152,153)는 브라우저 기법을 이용하여 HTML 페이지를 나타내는 인터넷 표준을 사용한다.The
이 발명에서 서버장치(151,152,153)는 웹 서버, 앱 서버 및 데이터베이스 서버를 포함할 수 있다. 다만, 반드시 3개의 서버장치의 조합으로만 구성되어야 하는 것은 아니다. 웹 서버만 존재하고, 앱 서버 및 데이터베이스 서버는 존재하지 않는 것도 유효하고, 또는 앱 서버 하나만 구성되는 것도 가능하고, 기타 다양한 형태 및 계층의 서버 조합도 가능하다.In the present invention, the
웹 서버는 웹 클라이언트(Web Client)에게 요청된 컨텐츠를 제공하는 서버이다. 웹 서버는 정적인 HTML이나 JPEG, GIF 같은 이미지를 HTTP 프로토콜을 통해 웹 브라우저에 제공할 수 있다. 경우에 따라, 웹 서버도 내부 애플리케이션을 동작시킬 수 있는 컨테이너를 내장할 수 있다.The web server is a server that provides requested content to a web client. The web server can serve static HTML or images such as JPEG or GIF to the web browser via HTTP protocol. In some cases, the web server may also embed a container that can run internal applications.
앱 서버는 WAS(Web Application Server) 서버라고도 불릴 수 있고, 이는 클라이언트/서버 환경에서 트랜잭션 처리 및 관리와 애플리케이션 실행 환경을 제공하는 미들웨어 소프트웨어 서버를 나타낸다. 전형적으로, 서버단은 웹 서버, 애플리케이션 서버, 데이터베이스 서버의 3계층 웹 컴퓨팅 환경으로 구축될 수 있는데, 이때, 앱 서버는 클라이언트/서버 환경의 애플리케이션 서버와 같은 역할을 한다. 앱 서버는 애플리케이션 실행 환경과 데이터베이스 접속 기능을 제공하고, 트랜잭션을 관리하며, 업무를 처리하는 비즈니스 로직을 수행하고, 다른 기종 시스템 간의 애플리케이션 연동 등을 수행한다.The app server may also be called a WAS (Web Application Server) server, which represents a middleware software server that provides an application execution environment and transaction processing and management in a client/server environment. Typically, the server end may be built as a three-tier web computing environment of a web server, an application server, and a database server, where the app server acts as an application server in a client/server environment. The app server provides an application execution environment and database access function, manages transactions, performs business logic to process tasks, and interworks applications between different types of systems.
데이터베이스 서버는 웹 서버 및/또는 앱 서버가 취급하는 각종 데이터가 저장되어 있는 저장소이다. 데이터베이스 서버는 웹 서버 및/또는 앱 서버가 처리하는 작업, 웹 사이트, 웹 애플리케이션의 성격에 따라 그와 연관된 엄청난 양의 데이터가 저장될 수 있다. 이는 개인정보, 기관정보, 각종 콘텐츠(예컨대, 멀티미디어 콘텐츠)와 연관된 데이터 등을 포함할 수 있다.The database server is a storage in which various data handled by the web server and/or the app server are stored. The database server may store a huge amount of data associated therewith depending on the nature of the web server and/or the web server and/or the job processed by the app server, the web site, or the web application. This may include personal information, institutional information, data related to various contents (eg, multimedia contents), and the like.
라우터(130) 또는 라우팅 기능을 갖는 공유기는 네트워크(120)를 통해 클라이언트장치(111,112,113)로부터 전송된 패킷의 위치 및 수신처를 추출하여, 그 위치에 대한 최적의 경로를 지정하며, 그 경로를 따라 데이터 패킷을 스위치(140)로 전행시킨다. 라우터(130)는 수신측 IP 주소를 식별하여 해당 데이터를 스위치(140)로 포워딩한다.The
스위치(140)는 각 서버장치(151,152,153)의 고유한 MAC 주소를 기억하고 있다가, 이 주소를 통해 어떤 패킷이 어디로 전송되어야 하는지 판단하여 라우터(130)로부터 제공받은 패킷을 해당 서버(151,152,153)로 전송한다. 스위치(140)는 OSI 2계층, OSI 3계층, OSI 4계층 및/또는 다른 계층(예컨대, OSI 7계층)의 역할을 하는 스위치를 포함한다. 예컨대, 경로를 설정하는 기능을 수행할 수 있다. 또한, 로드밸런싱이나 포트포워딩, QoS 등의 기능을 수행할 수도 있다. 스위치는 네트워크 스위치, 스위칭 허브, 포트 스위칭 허브 등으로 불릴 수 있다.The
스위치(140)는 패킷 미러링 기능을 포함하여, 클라이언트장치(111,112,113)에서 서버장치(151,152,153)로 수신되는 모든 패킷 및 서버장치(151,152,153)에서 클라이언트장치(111,112,113)로 송신되는 모든 패킷을 복제 또는 캡처하고, 복제한 패킷을 이 발명에 따른 네트워크 성능 저하 모니터링 장치(160)로 제공한다.The
이 발명에서 세션이라 함은 3-way handshaking하는 과정을 포함하는 것으로 명명한다. 즉, 3-way handshaking이 종료되어야 해당 서버와 클라이언트 간에 세션이 연결된 것이나, 3-way handshaking 시도가 일시적으로 증가하면 네트워크 시스템의 성능 저하가 발생할 수 있으므로, 이 발명의 명세서에서는 클라이언트장치가 서버와 접속하기 위해 SYN 신호를 전송하며 접속 시도할 때부터 세션이라고 명명한다.In this invention, a session is named to include a process of 3-way handshaking. That is, the session is connected between the server and the client only after the 3-way handshaking is terminated, but if the 3-way handshaking attempt temporarily increases, the performance of the network system may deteriorate. In order to do this, it transmits a SYN signal and calls it a session from the time it attempts to connect.
도 2는 이 발명에 따른 네트워크 성능 저하 모니터링 장치의 구성도이다.2 is a block diagram of a network performance degradation monitoring apparatus according to the present invention.
이 발명의 네트워크 성능 저하 모니터링 장치는, 패킷 분석 모듈(200)과, 구조체 관리 모듈(210)과, 리스크 관리 모듈(220)과, 디스플레이 관리 모듈(230)을 포함한다.The network performance degradation monitoring apparatus of the present invention includes a
패킷 분석 모듈(200)은 미러링된 패킷으로부터, 세션에 관한 정보와, 서버에 관한 정보와, 클라이언트에 관한 정보와, 애플리케이션에 관한 정보와, 지역에 관한 정보와, 해당 미러링된 패킷 종류(해당 패킷이 SYN 신호인지, SYN-ACK 신호인지, 트랜잭션 요청 신호인지, 트랜잭션 응답 신호인지)를 추출한다. 패킷 분석 모듈(200)이 미러링된 패킷으로부터 상술한 정보들을 분석하는 방법은 선행특허 대한민국 공개특허 제2020-0033090호를 참조할 수 있다.From the mirrored packet, the
구조체 관리 모듈(210)은 패킷 분석 모듈(200)에서 분석된 패킷 정보를 기반으로 후술하는 각 구조체들을 관리한다.The
리스크 관리 모듈(220)은 네트워크 시스템에서 이루어지는 모든 플로우(flow) 대비 대기 플로우(SYN 대기, 트랜잭션 응답 대기)의 비율로서 성능 저하 리스크를 계산한다. 이 리스크 관리 모듈(220)은 서버별, 클라이언트별, 애플리케이션별, 지역별 및 전체 네트워크 시스템의 성능 저하 리스크를 계산한다.The
디스플레이 관리 모듈(230)은 리스크 관리 모듈(220)에서 산출된 서버별, 클라이언트별, 애플리케이션별, 지역 및 전체 네트워크 시스템의 성능 저하 리스크를 화면에 표시하도록 한다.The
이 발명의 네트워크 성능 저하 모니터링 장치는, 각 정보들을 구조체로 관리한다.The network performance degradation monitoring apparatus of the present invention manages each piece of information as a structure.
이 발명의 네트워크 성능 저하 모니터링 장치는, 네트워크 시스템에서 이루어지는 모든 세션에 대해 각 세션별로 형성된 복수의 세션 구조체들(241,242,243)과, 상기 모든 세션을 형성하는 모든 서버에 대해 각 서버별로 형성된 복수의 서버 구조체들(251,252,253)과, 상기 모든 세션을 형성하는 모든 클라이언트에 대해 각 클라이언트별로 형성된 복수의 클라이언트 구조체들(261,262,263)과, 상기 모든 클라이언트가 사용하는 모든 애플리케이션에 대해 각 애플리케이션별로 형성된 복수의 애플리케이션 구조체들(271,272,273)과, 상기 모든 클라이언트가 속한 지역에 대해 각 지역별로 형성된 복수의 지역 구조체들(281,282,283)을 포함한다.Network performance degradation monitoring apparatus of the present invention, a plurality of session structures (241,242,243) formed for each session for all sessions made in a network system, and a plurality of server structures formed for each server for all servers forming all the sessions (251,252,253), a plurality of client structures (261,262,263) formed for each client for all clients forming all the sessions, and a plurality of application structures formed for each application for all applications used by all the clients ( 271,272,273) and a plurality of local structures 281,282,283 formed for each region with respect to the region to which all the clients belong.
상기 세션 구조체들(241,242,243)은 세션 트리 테이블(240)에 의해 관리되고, 상기 서버 구조체들(251,252,253)은 서버 트리 테이블(250)에 의해 관리되고, 상기 클라이언트 구조체들(261,262,263)은 클라이언트 트리 테이블(260)에 의해 관리되고, 상기 애플리케이션 구조체들(271,272,273)은 애플리케이션 해쉬 테이블(270)에 의해 관리되고, 상기 지역 구조체들(281,282,283)은 지역 해쉬 테이블(280)에 의해 관리된다.The session structures 241,242,243 are managed by a session tree table 240, the server structures 251,252,253 are managed by a server tree table 250, and the client structures 261,262,263 are managed by a client tree table ( 260 , the application structures 271,272 and 273 are managed by the application hash table 270 , and the local structures 281,282 and 283 are managed by the local hash table 280 .
상기 세션 트리 테이블(240)과 상기 서버 트리 테이블(250)과 상기 클라이언트 트리 테이블(260)과 상기 애플리케이션 해쉬 테이블(270)과 상기 지역 해쉬 테이블(280)은 각각이 관리하는 구조체들에 대해 레드블랙 트리(Red-Black Tree) 알고리즘을 적용하여 관리한다. 레드블랙 트리 알고리즘에 대해 설명은 를 참조한다.The session tree table 240, the server tree table 250, the client tree table 260, the application hash table 270, and the local hash table 280 are red and black for structures managed respectively. It is managed by applying the Red-Black Tree algorithm. For a description of the red-black tree algorithm, see .
상기한 지역 정보는 나라(country) 정보일 수도 있고, 도시(city) 정보일 수도 있다. 클라이언트가 속한 지역 정보는 클라이언트 IP 주소로부터 얻을 수 있다.The region information may be country information or city information. The local information to which the client belongs can be obtained from the client IP address.
도 3은 네트워크 시스템에서, 서버와 클라이언트간 세션 연결 예시도이다.3 is an exemplary diagram of a session connection between a server and a client in a network system.
서버1과 클라이언트1(애플리케이션1 사용) 사이에 세션(이를 세션1이라 함)이 연결되고, 서버1과 클라이언트3(애플리케이션1 사용) 사이에 세션(이를 세션2라 함)이 연결되고, 서버2와 클라이언트2(애플리케이션2 사용) 사이에 세션(이를 세션3이라 함)이 연결되고, 서버2와 클라이언트3(애플리케이션2 사용) 사이에 세션(이를 세션4라 함)이 연결되고, 서버2와 클라이언트5(애플리케이션2 사용) 사이에 세션(이를 세션5라 함)이 연결되고, 서버3과 클라이언트4(애플리케이션2 사용) 사이에 세션(이를 세션6이라 함)이 연결된다. 클라이언트1과 클라이언트2는 지역1에 위치하고, 클라이언트3과 클라이언트4와 클라이언트5는 지역2에 위치한다.A session (this is called session 1) is connected between server1 and client1 (using application1), a session (this is called session2) is connected between server1 and client3 (using application1), and server2 A session (this is called session 3) is connected between client2 and client2 (using application2), a session (this is called session4) is connected between server2 and client3 (using application2), and server2 and client A session (this is called session 5) is connected between 5 (using application 2), and a session (this is called session 6) is connected between server 3 and client 4 (using application 2). Client1 and Client2 are located in Region1, and Client3, Client4, and Client5 are located in Region2.
도 4는 도 3의 네트워크 시스템 예시도에서 생성되는 구조체 구성 및 연결도이고, 도 5는 이 발명에 따른 세션 구조체의 구성도이다.FIG. 4 is a structure configuration and connection diagram generated in the exemplary network system diagram of FIG. 3 , and FIG. 5 is a configuration diagram of a session structure according to the present invention.
도 3의 예시도에서 세션이 6개 이므로 세션 구조체 6개가 형성된다. 세션1 구조체에는 서버1과 클라이언트1 사이에 연결된 세션1에 관한 정보가 기록되고 관리되며, 해당 세션에 관련된 서버, 클라이언트, 애플리케이션, 지역 정보가 기록된 각 구조체가 링크된다.In the exemplary diagram of FIG. 3 , since there are 6 sessions, 6 session structures are formed. In the session 1 structure, information on session 1 connected between server 1 and client 1 is recorded and managed, and each structure in which server, client, application, and region information related to the session is recorded is linked.
세션 구조체는 도 5에 도시된 바와 같이 해당 세션에 관한 정보(51)와, 해당 세션에 연결된 서버에 대응하는 서버 구조체에 연결하기 위한 서버 구조체 포인터(52)와, 해당 세션에 연결된 클라이언트에 대응하는 클라이언트 구조체에 연결하기 위한 클라이언트 구조체 포인터(53)와, 해당 세션에 연결된 클라이언트에 의해 활성화된 애플리케이션에 대응하는 애플리케이션 구조체에 연결하기 위한 애플리케이션 구조체 포인터(54)와, 해당 세션에 연결된 클라이언트가 위치한 지역에 대응하는 지역 구조체에 연결하기 위한 지역 구조체 포인터(55)를 포함한다.As shown in FIG. 5, the session structure includes information about the
여기서, 세션에 관한 정보에는 해당 세션에 연결된 서버 정보와, 해당 세션에 연결된 클라이언트 정보와, 해당 세션에 연결된 클라이언트에 의해 활성화된 애플리케이션 정보와, 해당 세션에 연결된 클라이언트가 위치한 지역 정보와, 해당 세션의 상태 정보(요청, 대기, 응답)가 포함된다. 즉, 클라이언트로부터 SYN 신호 또는 트랜잭션 요청 신호가 서버로 전송되는지, 해당 요청에 대한 응답이 마무리되지 않은 대기 상태인지, 해당 요청에 대한 응답이 클라이언트로 전송된 응답 완료 상태인지 등의 정보를 포함한다. 리스크 관리 모듈(220)은 네트워크 시스템에 연결된 모든 세션에 대해, 주기적으로 해당 세션의 상태 정보를 입력받아 전체 플로우 중 대기 플로우의 비율을 계산하여 성능 저하 리스크를 산출한다.Here, the session information includes server information connected to the session, client information connected to the session, application information activated by the client connected to the session, region information where the client connected to the session is located, and information about the session. Status information (request, wait, response) is included. That is, it includes information such as whether a SYN signal or a transaction request signal is transmitted from the client to the server, whether a response to the corresponding request is in an unfinished standby state, or whether a response to the corresponding request is transmitted to the client. The
세션1 구조체는 세션1에 관한 정보와, 서버1 구조체 포인터와, 클라이언트1 구조체 포인터와, 애플리케이션1 구조체 포인터와, 지역1 구조체 포인터가 링크되어 저장된다. 이와 동일하게, 세션2 구조체에는 서버1과 클라이언트3 사이에 연결된 세션2에 관한 정보가 기록되고 관리되며, 세션2에 관한 정보와, 서버1 구조체 포인터와, 클라이언트3 구조체 포인터와, 애플리케이션1 구조체 포인터와, 지역2 구조체 포인터가 링크되어 저장된다.In the session1 structure, information about session1, server1 structure pointer, client1 structure pointer, application1 structure pointer, and area1 structure pointer are linked and stored. Similarly, in the session 2 structure, information on session 2 connected between server 1 and client 3 is recorded and managed, and information about session 2, server 1 structure pointer, client 3 structure pointer, and application 1 structure pointer Wow, the local 2 structure pointer is linked and stored.
이와 동일하게, 세션3 구조체에는 서버2와 클라이언트2 사이에 연결된 세션3에 관한 정보가 기록되고 관리되고, 세션4 구조체에는 서버2와 클라이언트3 사이에 연결된 세션4에 관한 정보가 기록되고 관리되며, 세션5 구조체에는 서버2와 클라이언트 5 사이에 연결된 세션5에 관한 정보가 기록되고 관리되고, 세션6 구조체에는 서버3과 클라이언트 4 사이에 연결된 세션6에 관한 정보가 기록되고 관리된다.Similarly, information about session 3 connected between server 2 and client 2 is recorded and managed in the session 3 structure, and information about session 4 connected between server 2 and client 3 is recorded and managed in the session 4 structure, Information on session 5 connected between server 2 and client 5 is recorded and managed in the session 5 structure, and information about session 6 connected between server 3 and client 4 is recorded and managed in the session 6 structure.
각 세션 구조체에는 각 세션에 대한 정보와, 해당 세션에 대응하는 서버 구조체에 연결하기 위한 서버 구조체 포인터와, 해당 세션에 대응하는 클라이언트 구조체에 연결하기 위한 클라이언트 구조체 포인터와, 해당 클라이언트가 사용하는 애플리케이션 구조체에 연결하기 위한 애플리케이션 구조체 포인터와, 해당 클라이언트가 속한 지역 구조체에 연결하기 위한 지역 구조체 포인터가 기록된다.Each session structure contains information about each session, a server structure pointer to connect to a server structure corresponding to the session, a client structure pointer to connect to a client structure corresponding to the session, and an application structure used by the client. An application structure pointer for connecting to , and a local structure pointer for connecting to the local structure to which the client belongs are recorded.
도 6은 이 발명에 따른 서버 구조체의 구성도이다.6 is a block diagram of a server structure according to the present invention.
서버 구조체는 해당 서버에 관한 정보(61)와, 상기 서버가 연결된 모든 세션들에 대응하는 세션 구조체 포인터들을 관리하는 세션 구조체 관리 테이블(62)과, 상기 서버와 연결된 모든 클라이언트들에 대응하는 클라이언트 IP 주소들을 관리하는 클라이언트 정보 관리 테이블(63)과, 상기 서버와 연결된 모든 클라이언트들에서 활성화된 모든 애플리케이션들에 대응하는 애플리케이션 리스트를 관리하는 애플리케이션 정보 관리 테이블(64)과, 해당 서버의 과거 리스크 정보들을 저장하는 서버 리스크 테이블(65)과, 해당 서버의 현재 성능 저하 리스크를 저장하는 서버 현재 리스크(66)를 포함한다. 상기 클라이언트 IP 주소와 애플리케이션 리스트는 해쉬값으로 관리되는 것이 바람직하다.The server structure includes information about the corresponding
리스크 관리 모듈(220)은 주기적(예컨대, 1초)으로 전체 플로우 대비 대기 플로우의 비율을 산출하여 순간 리스크를 계산하고, 이렇게 산출된 순간 리스크와 각 구조체에 저장된 과거 리스크 정보들을 기반으로 과거 7초간의 리스크들을 평균하여 현재 리스크를 계산한다.The
서버1 구조체는 서버1에 관한 정보가 기록되고 관리되고, 서버2 구조체에는 서버2에 관한 정보가 기록되고 관리되며, 서버3 구조체에는 서버 3에 관한 정보가 기록되고 관리된다.In the server1 structure, information on the server1 is recorded and managed, in the server2 structure information on the server2 is recorded and managed, and in the server3 structure information on the server3 is recorded and managed.
도 7은 이 발명에 따른 클라이언트 구조체의 구성도이다.7 is a block diagram of a client structure according to the present invention.
클라이언트 구조체는 해당 클라이언트에 관한 정보(71)와, 상기 클라이언트가 연결된 모든 세션들에 대응하는 세션 구조체 포인터들을 관리하는 세션 구조체 관리 테이블(72)과, 상기 클라이언트와 연결된 모든 서버들에 대응하는 서버 IP 주소들을 관리하는 서버 정보 관리 테이블(73)과, 상기 클라이언트에서 활성화된 모든 애플리케이션 리스트를 관리하는 애플리케이션 정보 관리 테이블(74)과, 해당 클라이언트의 과거 리스크 정보들을 저장하는 클라이언트 리스크 테이블(75)과, 해당 클라이언트의 현재 성능 저하 리스크를 저장하는 클라이언트 현재 리스크(76)를 포함한다. 상기 서버 IP 주소와 애플리케이션 리스트는 해쉬값으로 관리되는 것이 바람직하다.The client structure includes information about the corresponding
여기서, 클라이언트 리스크는 전체 플로우 중 서버의 대기 플로우를 기반으로 산출되며, 각 클라이언트마다 응답 대기 상태의 플로우의 비율로서 계산된다. 리스크 관리 모듈(220)은 주기적(예컨대, 1초)으로 전체 플로우 대비 대기 플로우의 비율을 순간 리스크를 계산하고, 각 구조체에 저장된 과거 리스크 정보들을 기반으로 과거 7초간의 리스크들을 평균하여 현재 리스크를 계산한다.Here, the client risk is calculated based on the server's standby flow among all flows, and is calculated as the ratio of the response standby flow for each client. The
도 8은 이 발명에 따른 애플리케이션 구조체의 구성도이다.8 is a block diagram of an application structure according to the present invention.
애플리케이션 구조체는 해당 애플리케이션에 관한 정보(81)와, 상기 애플리케이션이 활성화된 모든 클라이언트가 연결된 모든 세션들에 대응하는 세션 구조체 포인터들을 관리하는 세션 구조체 관리 테이블(82)과, 상기 애플리케이션이 활성화된 모든 클라이언트들에 대응하는 클라이언트 IP 주소들을 관리하는 클라이언트 정보 관리 테이블(83), 해당 애플리케이션의 과거 리스크 정보들을 저장하는 애플리케이션 리스크 테이블(84)과, 해당 애플리케이션의 현재 성능 저하 리스크를 저장하는 애플리케이션 현재 리스크(85)를 포함한다. 여기서, 상기 클라이언트 IP 주소는 해쉬값으로 관리되는 것이 바람직하다.The application structure includes a session structure management table 82 that manages
도 9는 이 발명에 따른 지역 구조체의 구성도이다.9 is a block diagram of a local structure according to the present invention.
지역 구조체는 해당 지역에 관한 정보(91)와, 상기 지역에 위치한 모든 클라이언트가 연결된 모든 세션들에 대응하는 세션 구조체 포인터들을 관리하는 세션 구조체 관리 테이블(92)과, 상기 지역에 위치한 모든 클라이언트들에 대응하는 클라이언트 IP 주소들을 관리하는 클라이언트 정보 관리 테이블(93)과, 상기 모든 클라이언트들에 활성화된 애플리케이션들에 대응하는 애플리케이션 리스트를 관리하는 애플리케이션 정보 관리 테이블(94)과, 해당 지역의 상세 지역 분류를 위한 하부 지역 리스트를 관리하는 하부 지역 관리 테이블(95)과, 해당 지역의 과거 리스크 정보들을 저장하는 지역 리스크 테이블(96)과, 해당 지역의 현재 성능 저하 리스크를 저장하는 지역 현재 리스크(97)를 포함한다. 여기서, 상기 클라이언트 IP 주소와 애플리케이션 리스트는 해쉬값으로 관리되는 것이 바람직하다.The local structure includes
도 10은 이 발명의 구조체 생성 및 업데이트 과정을 도시한 동작 흐름도이다.10 is an operation flowchart illustrating a process of creating and updating a structure according to the present invention.
패킷 분석 모듈은 미러링된 패킷이 입력되면(S101), 해당 패킷을 분석한다(S102). 패킷으로부터 세션 정보를 추출하고, 구조체 관리 모듈(210)은 세션 트리 테이블(240)에 해당 세션에 대응하는 세션 구조체를 쿼리한다. 세션 트리 테이블(240)은 해당 세션 구조체가 존재하지 않은 경우에는 해당 세션 구조체를 생성하여 구조체 관리 모듈에 리턴하고, 해당 세션 구조체가 존재하는 경우에는 해당 세션 구조체의 현재 상태를 업데이트한다(S103).When a mirrored packet is input (S101), the packet analysis module analyzes the corresponding packet (S102). Extracting session information from the packet, the
아울러, 해당 세션 구조체와 링크된 서버 구조체를 생성하거나 해당 서버 구조체를 업데이트한다(S104). 또한, 해당 세션 구조체와 링크된 클라이언트 구조체를 생성하거나 해당 클라이언트 구조체를 업데이트한다(S105). 또한, 해당 세션 구조체와 링크된 애플리케이션 구조체를 생성하거나 해당 애플리케이션 구조체를 업데이트한다(S106). 또한, 해당 세션 구조체와 링크된 지역 구조체를 생성하거나 해당 지역 구조체를 업데이트한다(S107).In addition, a server structure linked with the corresponding session structure is created or the corresponding server structure is updated (S104). In addition, a client structure linked with the corresponding session structure is created or the corresponding client structure is updated (S105). In addition, an application structure linked with the corresponding session structure is created or the corresponding application structure is updated (S106). Also, a local structure linked with the corresponding session structure is created or the corresponding local structure is updated (S107).
즉, 새로운 세션이 생성된 경우, 세션 구조체를 생성하고, 해당 세션 구조체에 대응하는 서버 구조체, 클라이언트 구조체, 애플리케이션 구조체, 지역 구조체를 생성하거나, 기 생성된 서버 구조체, 클라이언트 구조체, 애플리케이션 구조체, 지역 구조체에서, 세션 구조체 관리 테이블, 서버 정보 관리 테이블, 클라이언트 정보 관리 테이블, 애플리케이션 정보 관리 테이블 등을 업데이트하여 현재 생성된 세션에 관한 정보를 추가한다.That is, when a new session is created, a session structure is created and a server structure, a client structure, an application structure, and a local structure corresponding to the session structure are created, or a previously created server structure, a client structure, an application structure, and a local structure are created. In , the session structure management table, the server information management table, the client information management table, the application information management table, etc. are updated to add information about the currently created session.
도 11은 이 발명의 리스크 관리 과정을 도시한 동작 흐름도이다.11 is an operation flowchart illustrating a risk management process of the present invention.
리스크 관리 모듈은 리스크 산출 주기가 도래하면(S111), 모든 플로우의 세션별 상태 정보를 검출한다.(S112). 리스크 관리 모듈은 각 서버별로 플로우 대비 대기 플로우를 산출하고, 각 서버별 과거 리스크 정보를 읽고 평균값을 계산하여 현재 리스크를 계산하고, 각 서버의 서버 구조체의 서버 리스크 테이블 및 서버 현재 리스크를 업데이트한다(S113).When the risk calculation cycle arrives (S111), the risk management module detects state information for each session of all flows (S112). The risk management module calculates the flow versus standby flow for each server, reads historical risk information for each server and calculates the average value to calculate the current risk, and updates the server risk table and server current risk of the server structure of each server ( S113).
리스크 관리 모듈은 각 클라이언트별로 플로우 대비 대기 플로우를 산출하고, 각 클라이언트별 과거 리스크 정보를 읽고 평균값을 계산하여 현재 리스크를 계산하고, 각 클라이언트의 클라이언트 구조체의 클라이언트 리스크 테이블 및 클라이언트 현재 리스크를 업데이트한다(S114). The risk management module calculates the flow versus waiting flow for each client, reads the historical risk information for each client and calculates the average value to calculate the current risk, and updates the client risk table and client current risk of each client's client structure ( S114).
리스크 관리 모듈은 각 애플리케이션별로 플로우 대비 대기 플로우를 산출하고, 각 애플리케이션별 과거 리스크 정보를 읽고 평균값을 계산하여 현재 리스크를 계산하고, 각 애플리케이션의 애플리케이션 구조체의 애플리케이션 리스크 테이블 및 애플리케이션 현재 리스크를 업데이트한다(S115).The risk management module calculates the flow versus standby flow for each application, reads the historical risk information for each application and calculates the average value to calculate the current risk, and updates the application risk table and application current risk of each application's application structure ( S115).
리스크 관리 모듈은 각 지역별로 플로우 대비 대기 플로우를 산출하고, 각 지역별 과거 리스크 정보를 읽고 평균값을 계산하여 현재 리스크를 계산하고, 각 지역의 지역 구조체의 지역 리스크 테이블 및 지역 현재 리스크를 업데이트한다(S116).The risk management module calculates the flow versus standby flow for each region, reads the historical risk information for each region and calculates the average value to calculate the current risk, and updates the regional risk table and regional current risk of the regional structure in each region (S116) ).
200 : 패킷 분석 모듈 210 : 구조체 관리 모듈
220 : 리스크 관리 모듈 230 : 디스플레이 관리 모듈
240 : 세션 트리 테이블 241~243 : 세션 구조체
250 : 서버 트리 테이블 251~253 : 서버 구조체
260 : 클라이언트 트리 테이블 261~263 : 클라이언트 구조체
270 : 애플리케이션 해쉬 테이블 271~273 : 애플리케이션 구조체
280 : 지역 해쉬 테이블 281~283 : 지역 구조체200: packet analysis module 210: structure management module
220: risk management module 230: display management module
240: session tree table 241 to 243: session structure
250: server tree table 251-253: server structure
260: client tree table 261 to 263: client structure
270: application hash table 271-273: application structure
280: local hash table 281 to 283: local structure
Claims (6)
상기 미러링된 패킷으로부터 세션에 관한 정보와 상기 세션에 연결된 서버에 관한 정보와 상기 세션에 연결된 클라이언트에 관한 정보와 상기 미러링된 패킷의 종류를 추출하는 패킷 분석 모듈과, 상기 패킷 분석 모듈에서 분석된 정보를 기반으로 세션 구조체와 서버 구조체와 클라이언트 구조체를 관리하는 구조체 관리 모듈과; 상기 세션 구조체와 상기 서버 구조체와 상기 클라이언트 구조체에 저장된 정보로부터 상기 네트워크 시스템에서 이루어지는 모든 플로우 대비 대기 플로우의 비율로서 성능 저하 리스크를 산출하며 관리하는 리스크 관리 모듈과, 상기 네트워크 시스템에서 이루어지는 모든 세션에 대해 각 세션별로 형성된 복수의 세션 구조체들과, 상기 모든 세션을 형성하는 모든 서버에 대해 각 서버별로 형성된 복수의 서버 구조체들과, 상기 모든 세션을 형성하는 모든 클라이언트에 대해 각 클라이언트별로 형성된 복수의 클라이언트 구조체들을 포함하고;
상기 각 세션 구조체는 해당 세션에 관한 정보와, 해당 세션에 연결된 서버에 대응하는 서버 구조체에 연결하기 위한 서버 구조체 포인터와, 해당 세션에 연결된 클라이언트에 대응하는 클라이언트 구조체에 연결하기 위한 클라이언트 구조체 포인터를 포함하고;
상기 각 서버 구조체는 해당 서버에 관한 정보와, 상기 서버가 연결된 모든 세션들에 대응하는 세션 구조체 포인터들을 관리하는 세션 구조체 관리 테이블과, 상기 서버와 연결된 모든 클라이언트들에 대응하는 클라이언트 IP 주소들을 관리하는 클라이언트 정보 관리 테이블을 포함하고;
상기 각 클라이언트 구조체는 해당 클라이언트에 관한 정보와, 상기 클라이언트가 연결된 모든 세션들에 대응하는 세션 구조체 포인터들을 관리하는 세션 구조체 관리 테이블과, 상기 클라이언트와 연결된 모든 서버들에 대응하는 서버 IP 주소들을 관리하는 서버 정보 관리 테이블을 포함하는 것을 특징으로 하는 네트워크 시스템 성능 저하 실시간 모니터링 장치.In a network system in which a plurality of client devices and a plurality of server devices are connected, in the network performance degradation monitoring device provided by mirroring packets transmitted and received at the server end,
a packet analysis module for extracting session information, information about a server connected to the session, information about a client connected to the session, and a type of the mirrored packet from the mirrored packet; information analyzed by the packet analysis module a structure management module for managing a session structure, a server structure, and a client structure based on ; A risk management module for calculating and managing a performance degradation risk as a ratio of standby flows to all flows made in the network system from the information stored in the session structure, the server structure, and the client structure, and for all sessions made in the network system A plurality of session structures formed for each session, a plurality of server structures formed for each server for all servers forming all the sessions, and a plurality of client structures formed for each client for all clients forming all sessions including;
Each of the session structures includes information about the corresponding session, a server structure pointer for connecting to a server structure corresponding to a server connected to the corresponding session, and a client structure pointer for connecting to a client structure corresponding to a client connected to the corresponding session. do;
Each of the server structures includes information about the corresponding server, a session structure management table for managing session structure pointers corresponding to all sessions to which the server is connected, and client IP addresses corresponding to all clients connected to the server. a client information management table;
Each of the client structures includes information about the corresponding client, a session structure management table managing session structure pointers corresponding to all sessions to which the client is connected, and server IP addresses corresponding to all servers connected to the client. Network system performance degradation real-time monitoring device comprising a server information management table.
상기 패킷 분석 모듈은 상기 클라이언트에서 활성화된 애플리케이션에 관한 정보와, 상기 클라이언트가 위치한 지역에 관한 정보를 더 추출하고,
상기 네트워크 시스템 성능 저하 실시간 모니터링 장치는, 상기 모든 세션을 형성하는 모든 클라이언트에서 활성화된 각 애플리케이션별로 형성된 복수의 애플리케이션 구조체들과, 상기 모든 세션을 형성하는 모든 클라이언트가 위치한 각 지역별로 형성된 복수의 지역 구조체들을 더 포함하고,
상기 세션 구조체는 해당 세션에 연결된 클라이언트에서 활성화된 애플리케이션에 대응하는 애플리케이션 구조체에 연결하기 위한 애플리케이션 구조체 포인터와, 해당 세션에 연결된 클라이언트가 위치한 지역에 대응하는 지역 구조체에 연결하기 위한 지역 구조체 포인터를 더 포함하고,
상기 서버 구조체는 해당 서버와 연결된 모든 클라이언트들에서 활성화된 애플케이션 리스트들을 관리하는 애플리케이션 정보 관리 테이블을 더 포함하고,
상기 클라이언트 구조체는 해당 클라이언트에서 활성화된 애플리케이션들에 대응하는 애플리케이션 리스트를 관리하는 애플리케이션 정보 관리 테이블을 더 포함한 것을 특징으로 하는 네트워크 시스템 성능 저하 실시간 모니터링 장치.The method of claim 1,
The packet analysis module further extracts information about an application activated in the client and information about a region in which the client is located,
The network system performance degradation real-time monitoring apparatus includes a plurality of application structures formed for each application activated in all clients forming all the sessions, and a plurality of local structures formed in each region in which all clients forming all sessions are located. including more
The session structure further includes an application structure pointer for connecting to an application structure corresponding to an application activated by a client connected to the session, and a local structure pointer for connecting to a local structure corresponding to a region in which the client connected to the session is located. do,
The server structure further includes an application information management table for managing the list of applications activated in all clients connected to the server,
The client structure further comprises an application information management table for managing an application list corresponding to applications activated in the corresponding client, network system performance degradation real-time monitoring apparatus.
상기 네트워크 시스템 성능 저하 실시간 모니터링 장치는,
상기 복수의 세션 구조체들을 관리하는 세션 트리 테이블과,
상기 복수의 서버 구조체들을 관리하는 서버 트리 테이블과,
상기 복수의 클라이언트 구조체들을 관리하는 클라이언트 트리 테이블과,
상기 복수의 애플리케이션 구조체들을 관리하는 애플리케이션 해쉬 테이블과,
상기 복수의 지역 구조체들을 관리하는 지역 해쉬 테이블을 더 포함하는 것을 특징으로 하는 네트워크 시스템 성능 저하 실시간 모니터링 장치.3. The method of claim 2,
The network system performance degradation real-time monitoring device,
a session tree table for managing the plurality of session structures;
a server tree table for managing the plurality of server structures;
a client tree table for managing the plurality of client structures;
an application hash table for managing the plurality of application structures;
Network system performance degradation real-time monitoring apparatus further comprising a local hash table for managing the plurality of local structures.
상기 세션 트리 테이블, 상기 서버 트리 테이블, 상기 클라이언트 트리 테이블, 상기 애플리케이션 해쉬 테이블, 상기 지역 해쉬 테이블 각각은,
각각의 관리 대상 구조체들에 대해 레드블랙 트리 알고리즘을 적용하여 관리하는 것을 특징으로 하는 네트워크 시스템 성능 저하 실시간 모니터링 장치.5. The method of claim 4,
Each of the session tree table, the server tree table, the client tree table, the application hash table, and the local hash table,
A real-time monitoring device for network system performance degradation, characterized in that it manages each managed structure by applying a red-black tree algorithm.
상기 리스크 관리 모듈에서 산출된 서버별, 클라이언트별, 애플리케이션별, 지역 및 전체 네트워크 시스템의 성능 저하 리스크를 화면에 표시하도록 하는 디스플레이 관리 모듈을 더 포함한 것을 특징으로 하는 네트워크 시스템 성능 저하 실시간 모니터링 장치.The method of claim 1,
Network system performance degradation real-time monitoring device, characterized in that it further comprises a display management module for displaying on the screen the performance degradation risk of each server, client, application, region, and the entire network system calculated by the risk management module.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210029940A KR102563247B1 (en) | 2021-03-08 | 2021-03-08 | Apparatus for Realtime Monitoring Performance Degradation of Network System |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210029940A KR102563247B1 (en) | 2021-03-08 | 2021-03-08 | Apparatus for Realtime Monitoring Performance Degradation of Network System |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220125965A true KR20220125965A (en) | 2022-09-15 |
KR102563247B1 KR102563247B1 (en) | 2023-08-03 |
Family
ID=83281506
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210029940A KR102563247B1 (en) | 2021-03-08 | 2021-03-08 | Apparatus for Realtime Monitoring Performance Degradation of Network System |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102563247B1 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190088343A (en) | 2018-01-18 | 2019-07-26 | 주식회사맥데이타 | Network performance indicator visualization method and apparatus, and system |
KR20190088342A (en) | 2018-01-18 | 2019-07-26 | 주식회사맥데이타 | Network performance diagnosis method and apparatus, and system |
KR102072700B1 (en) * | 2019-07-31 | 2020-02-03 | (주)소울시스템즈 | Apparatus and method for real-time application performance monitoring based on full packet processing |
KR20200033090A (en) | 2018-09-19 | 2020-03-27 | 주식회사맥데이타 | An apparatus for network monitoring and method thereof, and system |
KR102174190B1 (en) * | 2019-09-09 | 2020-11-04 | 주식회사 맥데이타 | Performance visualization method, apparatus and system for 5g based network |
-
2021
- 2021-03-08 KR KR1020210029940A patent/KR102563247B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190088343A (en) | 2018-01-18 | 2019-07-26 | 주식회사맥데이타 | Network performance indicator visualization method and apparatus, and system |
KR20190088342A (en) | 2018-01-18 | 2019-07-26 | 주식회사맥데이타 | Network performance diagnosis method and apparatus, and system |
KR20200033090A (en) | 2018-09-19 | 2020-03-27 | 주식회사맥데이타 | An apparatus for network monitoring and method thereof, and system |
KR102072700B1 (en) * | 2019-07-31 | 2020-02-03 | (주)소울시스템즈 | Apparatus and method for real-time application performance monitoring based on full packet processing |
KR102174190B1 (en) * | 2019-09-09 | 2020-11-04 | 주식회사 맥데이타 | Performance visualization method, apparatus and system for 5g based network |
Also Published As
Publication number | Publication date |
---|---|
KR102563247B1 (en) | 2023-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10659354B2 (en) | Processing data packets using a policy based network path | |
US11522734B2 (en) | Method for controlling a remote service access path and relevant device | |
EP2629466B1 (en) | Method, device and system for forwarding data in communication system | |
US9338192B1 (en) | Connection management using connection request transfer protocol | |
KR101573122B1 (en) | Method, gateway, proxy and system for implementing mobile internet services | |
US11381667B1 (en) | Methods and systems for implementing a regionally contiguous proxy service | |
US10355961B2 (en) | Network traffic capture analysis | |
US20190215308A1 (en) | Selectively securing a premises network | |
US11817946B2 (en) | Proxy selection by monitoring quality and available capacity | |
US20100235464A1 (en) | Handoff and optimization of a network protocol stack | |
US20230336446A1 (en) | Application records using session information | |
KR102563247B1 (en) | Apparatus for Realtime Monitoring Performance Degradation of Network System | |
CN111818134A (en) | Data transmission method and device based on fog calculation in substation data center | |
US9015309B2 (en) | Networked probe system | |
CN112543191B (en) | Load balancing method and device | |
CN115474212B (en) | CDN network transmission optimization method, system, electronic equipment and storage medium | |
KR100509097B1 (en) | Web relay for transporting the web-based message to web user and method thereof using the web relay | |
KR20080046900A (en) | Load balancing system and method load balancing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |