KR20230000760A - Vpn server and vpn failure monitoring method of vpn server - Google Patents

Vpn server and vpn failure monitoring method of vpn server Download PDF

Info

Publication number
KR20230000760A
KR20230000760A KR1020210083278A KR20210083278A KR20230000760A KR 20230000760 A KR20230000760 A KR 20230000760A KR 1020210083278 A KR1020210083278 A KR 1020210083278A KR 20210083278 A KR20210083278 A KR 20210083278A KR 20230000760 A KR20230000760 A KR 20230000760A
Authority
KR
South Korea
Prior art keywords
vpn
data packet
network equipment
information
state information
Prior art date
Application number
KR1020210083278A
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 KR1020210083278A priority Critical patent/KR20230000760A/en
Publication of KR20230000760A publication Critical patent/KR20230000760A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • 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/06Management of faults, events, alarms or notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A VPN server for monitoring VPN failures is disclosed. The VPN server according to the present invention may include: a data collection unit for receiving a data packet transmitted from a first VPN client and traversing a plurality of types of network equipment of a VPN network, and extracting a plurality of types of status information inserted into the data packet by the plurality of types of network equipment; an operational unit for obtaining monitoring information of a path traversed by the data packet by using the plurality of types of status information; and a failure determination unit for determining the failed network equipment using the monitoring information.

Description

VPN 서버 및 VPN 서버의 VPN 장애 모니터링 방법{VPN SERVER AND VPN FAILURE MONITORING METHOD OF VPN SERVER}VPN server and VPN failure monitoring method of VPN server {VPN SERVER AND VPN FAILURE MONITORING METHOD OF VPN SERVER}

본 발명은, 네트워크 장비들에 의해 데이터 패킷에 삽입된 상태 정보를 이용하여 데이터 패킷이 지나온 경로를 모니터링 할 수 있는, VPN 서버 및 VPN 서버의 VPN 장애 모니터링 방법에 관한 것이다.The present invention relates to a VPN server and a VPN failure monitoring method of the VPN server, which can monitor a path along which data packets have passed using state information inserted into data packets by network equipment.

가상 사설 네트워크(Virtual Private Network, 이하 VPN이라 함)는, 물리적으로 서로 다른 2개 이상의 네트워크들이 서로 통신이 가능하도록 하나의 가상 네트워크로 묶어 구성된 가상 사설 망을 의미한다. A virtual private network (hereinafter referred to as a VPN) refers to a virtual private network configured by combining two or more physically different networks into one virtual network to enable communication with each other.

예를 들어 도 1a을 참고하면, 제1 호스트(Host 1)와 제2 호스트(Host 2)는 물리적으로 서로 다른 네트워크(Network 1, Network 2)에 연결되어 있다. 다만 VPN을 구축함으로써, 도 1b와 같이 제1 호스트(Host 1)와 제2 호스트(Host 2)는 논리적으로 동일한 네트워크인 VPN 망을 통해 연결된다.For example, referring to FIG. 1A , a first host (Host 1) and a second host (Host 2) are physically connected to different networks (Network 1 and Network 2). However, by constructing a VPN, the first host (Host 1) and the second host (Host 2) are connected through a VPN network, which is a logically identical network, as shown in FIG. 1B.

도 1b를 참고하여 VPN의 일반적인 동작 원리를 살펴보면, VPN 망의 외부에 별도의 VPN 서버(VPN Server)가 구축되고, 이 경우 VPN 서버(VPN Server)는 VPN 게이트웨이의 역할을 수행한다. 이에 따라 제1 호스트(Host 1)와 제2 호스트(Host 2)와 같은 VPN 클라이언트 들은 VPN 서버(VPN Server)의 중계를 통해, 서로 데이터를 송신 및 수신할 수 있다.Looking at the general operation principle of VPN with reference to FIG. 1B, a separate VPN server is built outside the VPN network, and in this case, the VPN server serves as a VPN gateway. Accordingly, VPN clients such as the first host (Host 1) and the second host (Host 2) can transmit and receive data to each other through the relay of the VPN server (VPN Server).

VPN은 인터넷망과 같은 공중망을 사설망처럼 이용해 회선 비용을 절감할 수 있기 때문에, 그 사용 빈도가 증가하고 있다. 예를 들어 VPN은, 원거리에서 업무를 수행하는 재택근무자가 외부에서 사내 업무 망으로 접속할 수 있도록, 재택 근무자가 사용하는 외부의 호스트를 사내 업무 망과 동일한 VPN 망으로 묶는 방식으로 이용된다.VPNs are increasingly used because they can reduce line costs by using a public network such as the Internet as a private network. For example, a VPN is used in such a way that an external host used by a telecommuter is tied to the same VPN network as the in-house work network so that the telecommuter performing work at a distance can access the in-house work network from the outside.

한편 도 1c를 참고하면, 널리 이용되고 있는 VPN의 구조는, VPN 클라이언트 간의 1:1 통신보다는, 하나의 VPN 서버(VPN Server)에 복수의 VPN 클라이언트가 1:N(단, N?1)으로 연결되는 멀티 VPN 환경을 지원하고 있다.On the other hand, referring to FIG. 1c, the structure of the widely used VPN is rather than 1: 1 communication between VPN clients, a plurality of VPN clients in one VPN server (VPN Server) 1: N (however, N? 1) It supports multiple connected VPN environments.

한편 VPN의 장애나 기타 상태를 파악하기 위하여, VPN에 대한 모니터링이 수행되고 있다. 그리고 일반적으로 VPN 모니터링이라고 하면, VPN 서버와 연결되는 VPN 클라이언트 들의 네트워크 연결 상태정보(IP, MAC주소, 연결 활성화 여부, 장애이력, 트래픽 처리현황 등)를 그 대상으로 한다. On the other hand, monitoring of the VPN is being performed in order to identify failures or other conditions of the VPN. In general, VPN monitoring targets network connection status information (IP, MAC address, connection activation status, failure history, traffic processing status, etc.) of VPN clients connected to the VPN server.

그러나 VPN은 도 2a처럼 VPN 서버와 연결되는 VPN 클라이언트 만으로 구성되는 것이 아니다. 구체적으로 도 2b를 참고하면, VPN 서버와 VPN 클라이언트는 VPN 망을 통하여 서로 연결되며, VPN 망은 복수의 네트워크 장비(스위치 또는 라우터)의 물리적인 연결에 의해 구성된다.However, the VPN is not composed only of VPN clients connected to the VPN server as shown in FIG. 2A. Specifically, referring to FIG. 2B , a VPN server and a VPN client are connected to each other through a VPN network, and the VPN network is configured by physical connection of a plurality of network devices (switches or routers).

다만 종래의 VPN 상용 서비스들은, VPN망의 종단에 위치하는 VPN 서버나 VPN 클라이언트에 대한 모니터링에 집중할 뿐, 데이터가 실제로 경유하는 네트워크 장비들에 대한 모니터링 및 모니터링 결과를 이용한 장애 판단에 대해서는 정의하고 있지 않다.However, conventional commercial VPN services only focus on monitoring the VPN server or VPN client located at the end of the VPN network, but do not define monitoring of network equipment that data actually passes through and failure determination using the monitoring results. not.

본 발명은 상술한 문제점을 해결하기 위한 것으로, 본 발명의 목적은 네트워크 장비들에 의해 데이터 패킷에 삽입된 상태 정보를 이용하여 데이터 패킷이 지나온 경로를 모니터링 할 수 있는, VPN 서버 및 VPN 서버의 VPN 장애 모니터링 방법을 제공하기 위함이다.The present invention is to solve the above-mentioned problems, and an object of the present invention is a VPN server and a VPN of the VPN server, which can monitor the path through which data packets have passed using state information inserted into data packets by network equipment. This is to provide a failure monitoring method.

본 발명에 따른 VPN 서버는, 제1 VPN 클라이언트로부터 전송되어 VPN 망의 복수의 네트워크 장비를 경유한 데이터 패킷을 수신하고, 상기 복수의 네트워크 장비에 의해 상기 데이터 패킷에 삽입된 복수의 상태 정보를 추출하는 데이터 수집부, 상기 복수의 상태 정보를 이용하여 상기 데이터 패킷이 지나온 경로의 모니터링 정보를 획득하는 연산부, 및, 상기 모니터링 정보를 이용하여 장애가 발생한 네트워크 장비를 결정하는 장애 판단부를 포함한다.A VPN server according to the present invention receives data packets transmitted from a first VPN client and passed through a plurality of network devices of a VPN network, and extracts a plurality of status information inserted into the data packets by the plurality of network devices. It includes a data collection unit for processing, an operation unit for obtaining monitoring information on a path through which the data packet has passed by using the plurality of state information, and a failure determination unit for determining a network device with a failure using the monitoring information.

이 경우 상기 수신된 데이터 패킷은, 헤드, 페이로드 및 상기 복수의 상태 정보를 포함하고, 상기 데이터 수집부는, 상기 데이터 패킷으로부터 상기 복수의 상태 정보를 추출하고, 상기 헤드 및 상기 페이로드를 포함하는 데이터 패킷을 목적지인 제2 VPN 클라이언트에 전송할 수 있다.In this case, the received data packet includes a head, a payload, and the plurality of state information, and the data collection unit extracts the plurality of state information from the data packet and includes the head and the payload. The data packet may be transmitted to the second VPN client as the destination.

이 경우 상기 복수의 상태 정보는, 상기 데이터 패킷이 상기 복수의 네트워크 장비를 경유한 순서에 따라 상기 복수의 네트워크 장비에 의해 순차적으로 삽입될 수 있다.In this case, the plurality of status information may be sequentially inserted by the plurality of network devices according to the order in which the data packets passed through the plurality of network devices.

한편 상기 복수의 상태 정보는, 상기 데이터 패킷이 네트워크 장비를 경유한 순서 정보, 상기 데이터 패킷이 네트워크 장비를 경유한 시점 정보 및 상기 데이터 패킷이 네트워크 장비를 경유한 시점의 누적 패킷 사이즈를 포함할 수 있다.On the other hand, the plurality of state information may include information about the order in which the data packet passed through the network equipment, information on when the data packet passed through the network equipment, and an accumulated packet size at the time when the data packet passed through the network equipment. there is.

이 경우 상기 연산부는, 상기 복수의 상태 정보에 각각 포함되는 복수의 순서 정보를 이용하여, 상기 데이터 패킷의 이동 경로를 포함하는 상기 모니터링 정보를 획득할 수 있다.In this case, the operation unit may obtain the monitoring information including the movement path of the data packet by using a plurality of order information respectively included in the plurality of state information.

한편 상기 복수의 상태 정보는, 제1 네트워크 장비에 의해 삽입된 제1 상태 정보 및 제2 네트워크 장비에 의해 삽입된 제2 상태 정보를 포함하고, 상기 연산부는, 상기 제2 상태 정보에 포함된 시점 정보 및 상기 제1 상태 정보에 포함된 시점 정보의 차를 이용하여, 상기 제1 네트워크 장비로부터 제2 네트워크 장비로 향하는 링크의 패킷 전달 시간을 포함하는 상기 모니터링 정보를 획득하고, 상기 제2 상태 정보에 포함된 누적 패킷 사이즈 및 상기 제1 상태 정보에 포함된 누적 패킷 사이즈의 차를 이용하여, 상기 링크를 통하여 전달된 패킷 사이즈를 포함하는 상기 모니터링 정보를 획득할 수 있다.Meanwhile, the plurality of status information includes first status information inserted by a first network device and second status information inserted by a second network device, and the calculating unit determines the point in time included in the second status information. The monitoring information including a packet transfer time of a link from the first network equipment to the second network equipment is obtained using a difference between information and time information included in the first state information, and the second state information The monitoring information including the size of the packet transmitted through the link may be obtained using a difference between the accumulated packet size included in and the accumulated packet size included in the first status information.

이 경우 상기 연산부는, 상기 링크의 패킷 전달 시간 및 상기 링크를 통하여 전달된 패킷 사이즈를 이용하여 상기 링크의 트래픽 처리량을 포함하는 상기 모니터링 정보를 획득할 수 있다.In this case, the calculation unit may obtain the monitoring information including the traffic throughput of the link using a packet delivery time of the link and a packet size transmitted through the link.

한편 상기 제1 VPN 클라이언트의 이전 모니터링 정보를 저장하는 저장부를 더 포함하고, 상기 장애 판단부는, 상기 획득된 모니터링 정보에 포함되는 상기 이동 경로가, 상기 제1 VPN 클라이언트의 이전 모니터링 정보에 포함되는 이전 이동 경로와 상이한 경우, 상기 이전 이동 경로로부터 제외된 네트워크 장비에 ICMP 요청 메시지를 전송하고, 상기 ICMP 요청 메시지에 대한 응답 메시지가 수신되지 않으면 상기 제외된 네트워크 장비에 장애가 발생한 것으로 결정할 수 있다.Meanwhile, a storage unit for storing previous monitoring information of the first VPN client is further included, and the failure determination unit determines that the movement path included in the obtained monitoring information is the previous monitoring information of the first VPN client. If it is different from the movement path, an ICMP request message is transmitted to the network equipment excluded from the previous movement route, and if a response message to the ICMP request message is not received, it may be determined that the excluded network equipment has a failure.

이 경우 상기 장애 판단부는, 상기 제외된 네트워크 장비에 장애가 발생한 것으로 결정되는 경우, 상기 이전 모니터링 정보를 상기 저장부에서 삭제하고 상기 획득된 모니터링 정보를 상기 제1 VPN 클라이언트에 대응하는 모니터링 정보로써 저장할 수 있다.In this case, the failure determination unit may delete the previous monitoring information from the storage unit and store the obtained monitoring information as monitoring information corresponding to the first VPN client when it is determined that a failure has occurred in the excluded network equipment. there is.

한편 상기 데이터 수집부는, 상기 데이터 패킷의 목적지인 제2 VPN 클라이언트로부터 전송되어 상기 VPN 망의 복수의 네트워크 장비를 경유한 제2 데이터 패킷을 수신하고, 복수의 네트워크 장비에 의해 상기 제2 데이터 패킷에 삽입된 복수의 상태 정보를 추출하고, 상기 연산부는, 상기 제2 데이터 패킷에 삽입된 복수의 상태 정보를 이용하여 상기 제2 데이터 패킷이 지나온 경로의 모니터링 정보를 획득할 수 있다.Meanwhile, the data collecting unit receives a second data packet transmitted from a second VPN client, which is the destination of the data packet, and passes through a plurality of network devices of the VPN network, and sends the second data packet to the second data packet by the plurality of network devices. A plurality of inserted state information may be extracted, and the operation unit may obtain monitoring information of a path passed by the second data packet by using the plurality of state information inserted into the second data packet.

한편 본 발명에 따른 VPN 서버의 VPN 장애 모니터링 방법은, 제1 VPN 클라이언트로부터 전송되어 VPN 망의 복수의 네트워크 장비를 경유한 데이터 패킷을 수신하는 단계, 상기 복수의 네트워크 장비에 의해 상기 데이터 패킷에 삽입된 복수의 상태 정보를 추출하는 단계, 상기 복수의 상태 정보를 이용하여 상기 데이터 패킷이 지나온 경로의 모니터링 정보를 획득하는 단계, 및, 상기 모니터링 정보를 이용하여 장애가 발생한 네트워크 장비를 결정하는 단계를 포함한다.Meanwhile, a method for monitoring a VPN failure of a VPN server according to the present invention includes receiving a data packet transmitted from a first VPN client and passing through a plurality of network devices of a VPN network, and inserting the data packet into the data packet by the plurality of network devices. Extracting a plurality of status information that has been detected, obtaining monitoring information of a path through which the data packet has passed by using the plurality of status information, and determining a network device with a failure using the monitoring information do.

이 경우 상기 수신된 데이터 패킷은, 헤드, 페이로드 및 상기 복수의 상태 정보를 포함하고, 상기 VPN 서버의 VPN 장애 모니터링 방법은, 상기 데이터 패킷으로부터 상기 복수의 상태 정보를 추출한 후, 상기 헤드 및 상기 페이로드를 포함하는 데이터 패킷을 목적지인 제2 VPN 클라이언트에 전송하는 단계를 더 포함할 수 있다.In this case, the received data packet includes a head, a payload, and the plurality of state information, and the VPN failure monitoring method of the VPN server extracts the plurality of state information from the data packet, and then the head and the state information. The method may further include transmitting the data packet including the payload to a destination second VPN client.

이 경우 상기 복수의 상태 정보는, 상기 데이터 패킷이 상기 복수의 네트워크 장비를 경유한 순서에 따라 상기 복수의 네트워크 장비에 의해 순차적으로 삽입될 수 있다.In this case, the plurality of status information may be sequentially inserted by the plurality of network devices according to the order in which the data packets passed through the plurality of network devices.

한편 상기 복수의 상태 정보는, 상기 데이터 패킷이 네트워크 장비를 경유한 순서 정보, 상기 데이터 패킷이 네트워크 장비를 경유한 시점 정보 및 상기 데이터 패킷이 네트워크 장비를 경유한 시점의 누적 패킷 사이즈를 포함할 수 있다.On the other hand, the plurality of state information may include information about the order in which the data packet passed through the network equipment, information on when the data packet passed through the network equipment, and an accumulated packet size at the time when the data packet passed through the network equipment. there is.

한편 상기 모니터링 정보를 획득하는 단계는, 상기 복수의 상태 정보에 각각 포함되는 복수의 순서 정보를 이용하여, 상기 데이터 패킷의 이동 경로를 포함하는 상기 모니터링 정보를 획득하는 단계를 포함할 수 있다.Meanwhile, the acquiring of the monitoring information may include acquiring the monitoring information including a moving path of the data packet by using a plurality of order information respectively included in the plurality of state information.

한편 상기 복수의 상태 정보는, 제1 네트워크 장비에 의해 삽입된 제1 상태 정보 및 제2 네트워크 장비에 의해 삽입된 제2 상태 정보를 포함하고, 상기 모니터링 정보를 획득하는 단계는, 상기 제2 상태 정보에 포함된 시점 정보 및 상기 제1 상태 정보에 포함된 시점 정보의 차를 이용하여, 상기 제1 네트워크 장비로부터 제2 네트워크 장비로 향하는 링크의 패킷 전달 시간을 포함하는 상기 모니터링 정보를 획득하는 단계, 및, 상기 제2 상태 정보에 포함된 누적 패킷 사이즈 및 상기 제1 상태 정보에 포함된 누적 패킷 사이즈의 차를 이용하여, 상기 링크를 통하여 전달된 패킷 사이즈를 포함하는 상기 모니터링 정보를 획득하는 단계를 포함할 수 있다.Meanwhile, the plurality of status information includes first status information inserted by a first network device and second status information inserted by a second network device, and the obtaining of the monitoring information includes the second status information. Obtaining the monitoring information including a packet transfer time of a link from the first network equipment to a second network equipment by using a difference between the time information included in the information and the time information included in the first state information. Obtaining the monitoring information including the packet size transmitted through the link using the difference between the accumulated packet size included in the second status information and the accumulated packet size included in the first status information. can include

이 경우 상기 모니터링 정보를 획득하는 단계는, 상기 링크의 패킷 전달 시간 및 상기 링크를 통하여 전달된 패킷 사이즈를 이용하여 상기 링크의 트래픽 처리량을 포함하는 상기 모니터링 정보를 획득하는 단계를 더 포함할 수 있다.In this case, the obtaining of the monitoring information may further include obtaining the monitoring information including the traffic throughput of the link using a packet delivery time of the link and a packet size transmitted through the link. .

한편 상기 모니터링 정보를 이용하여 장애가 발생한 네트워크 장비를 결정하는 단계는, 상기 획득된 모니터링 정보에 포함되는 상기 이동 경로가, 상기 제1 VPN 클라이언트의 이전 모니터링 정보에 포함되는 이전 이동 경로와 상이한 경우, 상기 이전 이동 경로로부터 제외된 네트워크 장비에 ICMP 요청 메시지를 전송하는 단계, 및, 상기 ICMP 요청 메시지에 대한 응답 메시지가 수신되지 않으면 상기 제외된 네트워크 장비에 장애가 발생한 것으로 결정하는 단계를 포함할 수 있다.Meanwhile, the step of determining the network equipment having a failure using the monitoring information may include, when the movement path included in the obtained monitoring information is different from the previous movement path included in the previous monitoring information of the first VPN client, the The method may include transmitting an ICMP request message to network equipment excluded from a previous movement path, and determining that a failure has occurred in the excluded network equipment when a response message to the ICMP request message is not received.

이 경우 상기 모니터링 정보를 이용하여 장애가 발생한 네트워크 장비를 결정하는 단계는, 상기 제외된 네트워크 장비에 장애가 발생한 것으로 결정되는 경우, 상기 이전 모니터링 정보를 상기 저장부에서 삭제하는 단계, 및, 상기 획득된 모니터링 정보를 상기 제1 VPN 클라이언트에 대응하는 모니터링 정보로써 저장하는 단계를 더 포함할 수 있다.In this case, the step of determining the network equipment having a failure using the monitoring information includes: deleting the previous monitoring information from the storage unit when it is determined that a failure has occurred in the excluded network equipment; The method may further include storing information as monitoring information corresponding to the first VPN client.

한편 상기 데이터 패킷의 목적지인 제2 VPN 클라이언트로부터 전송되어 상기 VPN 망의 복수의 네트워크 장비를 경유한 제2 데이터 패킷을 수신하는 단계, 복수의 네트워크 장비에 의해 상기 제2 데이터 패킷에 삽입된 복수의 상태 정보를 추출하는 단계, 및, 상기 제2 데이터 패킷에 삽입된 복수의 상태 정보를 이용하여 상기 제2 데이터 패킷이 지나온 경로의 모니터링 정보를 획득하는 단계를 더 포함할 수 있다.Meanwhile, receiving a second data packet transmitted from a second VPN client, which is the destination of the data packet, and passing through a plurality of network devices of the VPN network; The method may further include extracting state information, and obtaining monitoring information of a path passed by the second data packet by using a plurality of state information inserted into the second data packet.

본 발명에 따르면, 별도 관제시스템의 개발이나 추가 서버의 증설 없이도, 장애에 대한 빠른 대처, 시스템 구축을 위한 비용 및 시간을 절약할 수 있으며, 상용 VPN 망의 별도 시스템 장비 증설 없이 소프트웨어 모듈 형태로 손쉽게 적용이 가능한 장점이 있다.According to the present invention, without developing a separate control system or adding additional servers, it is possible to quickly respond to failures, save cost and time for system construction, and easily in the form of software modules without additional system equipment expansion of commercial VPN networks. There are advantages that can be applied.

도 1은 VPN의 일반적인 구성을 설명하기 위한 도면이다.
도 2는 본 발명에 따른, VPN 시스템을 설명하기 위한 도면이다.
도 3은 본 발명에 따른 VPN 서버의 구성을 설명하기 위한 블록도이다.
도 4는 본 발명에 따른 VPN 서버의 VPN 장애 모니터링 방법을 설명하기 위한 도면이다.
도 5는 본 발명에 따른, 데이터 패킷이 전송되는 과정을 설명하기 위한 도면이다.
도 6은 복수의 상태 정보를 이용하여 데이터 패킷이 지나온 경로의 모니터링 정보를 획득하는 방법을 설명하기 위한 도면이다.
도 7은 본 발명에 따른, 제2 VPN 클라이언트에서 전송된 데이터 패킷이 지나온 경로에 대한 상태 정보를 획득하는 방법을 설명하기 위한 도면이다.
도 8은 복수의 상태 정보를 이용하여 데이터 패킷이 지나온 경로의 모니터링 정보를 획득하는 방법을 설명하기 위한 도면이다.
도 9는 본 발명에 따른, 네트워크 장비에 장애가 발생한 상황을 도시한 도면이다.
도 10은 제2 네트워크 장비에 장애가 발생한 상태에서 획득되는 모니터링 정보를 설명하기 위한 도면이다.
도 11은 본 발명에 따른, 장애가 발생한 네트워크 장비를 결정하는 방법을 설명하기 위한 도면이다.
도 12는 본 발명에 따른, 모니터링 정보의 비교를 통한 장애 판단 방법을 설명하기 위한 도면이다.
1 is a diagram for explaining a general configuration of a VPN.
2 is a diagram for explaining a VPN system according to the present invention.
3 is a block diagram for explaining the configuration of a VPN server according to the present invention.
4 is a diagram for explaining a VPN failure monitoring method of a VPN server according to the present invention.
5 is a diagram for explaining a process of transmitting a data packet according to the present invention.
6 is a diagram for explaining a method of obtaining monitoring information on a path through which a data packet has passed by using a plurality of state information.
FIG. 7 is a diagram for explaining a method of obtaining state information about a path passed by a data packet transmitted from a second VPN client according to the present invention.
8 is a diagram for explaining a method of obtaining monitoring information on a path through which a data packet has passed by using a plurality of state information.
9 is a diagram illustrating a situation in which failure occurs in network equipment according to the present invention.
10 is a diagram for explaining monitoring information obtained in a state in which a failure occurs in a second network device.
11 is a diagram for explaining a method of determining a network device having a failure according to the present invention.
12 is a diagram for explaining a failure determination method through comparison of monitoring information according to the present invention.

이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Hereinafter, the embodiments disclosed in this specification will be described in detail with reference to the accompanying drawings, but the same or similar elements are given the same reference numerals regardless of reference numerals, and redundant description thereof will be omitted. The suffixes "module" and "unit" for components used in the following description are given or used together in consideration of ease of writing the specification, and do not have meanings or roles that are distinct from each other by themselves. In addition, in describing the embodiments disclosed in this specification, if it is determined that a detailed description of a related known technology may obscure the gist of the embodiment disclosed in this specification, the detailed description thereof will be omitted. In addition, the accompanying drawings are only for easy understanding of the embodiments disclosed in this specification, the technical idea disclosed in this specification is not limited by the accompanying drawings, and all changes included in the spirit and technical scope of the present invention , it should be understood to include equivalents or substitutes.

제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Terms including ordinal numbers, such as first and second, may be used to describe various components, but the components are not limited by the terms. These terms are only used for the purpose of distinguishing one component from another.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다거나 “전송한다”고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있거나 전송하는 것일 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다거나 “직접 전송한다”고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When an element is referred to as being "connected", "connected" to, or "transmitting" another element, it may be directly connected to, connected to, or transmitted to the other element, but intermediate It should be understood that other components may be present in . On the other hand, when an element is referred to as being “directly connected” to, “directly connected to,” or “directly transmitting” to another element, it should be understood that no other element exists in the middle.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, terms such as "comprise" or "have" are intended to designate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, but one or more other features It should be understood that the presence or addition of numbers, steps, operations, components, parts, or combinations thereof is not precluded.

본 발명을 구현함에 있어서 설명의 편의를 위하여 구성요소를 세분화하여 설명할 수 있으나, 이들 구성요소가 하나의 장치 또는 모듈 내에 구현될 수도 있고, 혹은 하나의 구성요소가 다수의 장치 또는 모듈들에 나뉘어져서 구현될 수도 있다. In implementing the present invention, components may be subdivided for convenience of description, but these components may be implemented in one device or module, or one component may be divided into multiple devices or modules may be implemented in

도 2는 본 발명에 따른, VPN 시스템을 설명하기 위한 도면이다.2 is a diagram for explaining a VPN system according to the present invention.

도 2a를 참고하면, 본 발명에 따른 VPN 시스템은, 복수의 VPN 클라이언트(100, 200), VPN 서버(300) 및 VPN 망(400)을 포함할 수 있다.Referring to FIG. 2A , the VPN system according to the present invention may include a plurality of VPN clients 100 and 200, a VPN server 300, and a VPN network 400.

VPN 클라이언트(100, 200)는 호스트(110, 210)를 VPN 망(400)에 연결시키기 위한 것으로, 호스트(110, 210)와는 별도의 하드웨어로 구성되거나, 호스트(110, 210)에 소프트웨어로써 설치될 수 있다. 이에 따라 호스트(110, 210)는 물리적으로 서로 다른 네트워크에 연결되나, VPN 클라이언트(100, 200)를 통하여 논리적으로 동일한 네트워크인 VPN 망(400)에 연결될 수 있다.The VPN clients 100 and 200 are for connecting the hosts 110 and 210 to the VPN network 400, and are configured as hardware separate from the hosts 110 and 210 or installed as software in the hosts 110 and 210. It can be. Accordingly, the hosts 110 and 210 are physically connected to different networks, but can be logically connected to the same network, the VPN network 400, through the VPN clients 100 and 200.

본 명세서에서 호스트(110, 210)가 데이터 패킷을 전송한다는 것은, VPN 클라이언트가 호스트로부터 데이터 패킷을 수신하고, 수신된 데이터 패킷을 암호화 하여 전송하는 것을 의미할 수 있다.In this specification, the transmission of data packets by the hosts 110 and 210 may mean that the VPN client receives the data packets from the hosts and encrypts and transmits the received data packets.

한편 도 2에서는 VPN 클라이언트가 두 개인 것으로 도시하였으나 이에 한정되지 않으며, VPN 시스템은 셋 이상의 VPN 클라이언트를 포함할 수 있다. Meanwhile, although FIG. 2 shows two VPN clients, it is not limited thereto, and the VPN system may include three or more VPN clients.

VPN 서버(300)는 VPN 게이트웨이의 역할을 수행하여, 복수의 VPN 클라이언트(100, 200)들의 데이터 송신 및 수신을 중계할 수 있다.The VPN server 300 may serve as a VPN gateway and relay data transmission and reception of the plurality of VPN clients 100 and 200 .

또한 VPN 서버(300)는 데이터 패킷을 수신하고, 데이터 패킷에 삽입된 복수의 상태 정보를 추출하고, 복수의 상태 정보를 이용하여 데이터 패킷이 지나온 경로의 모니터링 정보를 획득할 수 있다.In addition, the VPN server 300 may receive a data packet, extract a plurality of state information inserted into the data packet, and obtain monitoring information of a path along which the data packet has passed by using the plurality of state information.

한편 도 2b를 참고하면, VPN 망(400)은 복수의 네트워크 장비(N1, N2, N3, N4)를 포함할 수 있다, 여기서 복수의 네트워크 장비(N1, N2, N3, N4) 각각은, 스위치 또는 라우터로 구성될 수 있다. 도 2b에서는 네 개의 네트워크 장비의 물리적인 연결에 의해 VPN 망(400)이 구성되는 것으로 설명하였으나 이에 한정되지 않으며, VPN 망(400)은 더 적은 수(최소 1개) 또는 더 많은 수의 네트워크 장비를 포함할 수 있다.Meanwhile, referring to FIG. 2B, the VPN network 400 may include a plurality of network equipments N1, N2, N3, and N4, where each of the plurality of network equipments N1, N2, N3, and N4 is a switch. Or it can be configured as a router. In FIG. 2B, it is described that the VPN network 400 is configured by physically connecting four network devices, but it is not limited thereto, and the VPN network 400 includes fewer (at least one) or more network devices. can include

한편 네트워크 장비(N1, N2, N3, N4)는 데이터 패킷을 수신하고, 수신된 데이터 패킷에 자신의 상태 정보를 삽입하여 전송할 수 있다. Meanwhile, the network equipments N1, N2, N3, and N4 may receive data packets, insert state information of themselves into the received data packets, and transmit the data packets.

이 경우 네트워크 장비(N1, N2, N3, N4)는, 라우팅 프로토콜에 의해 구성되는 라우팅 테이블에 기초하여, 해당 목적지에 도달하기 위해 거쳐야 할 다음 라우터(또는 스위치)에 데이터 패킷을 전송할 수 있다. 또한 일부 네트워크 장비(N1, N3, N4)는, 자신과 연결된 VPN 서버(300) 또는 VPN 클라이언트(100, 200)에 데이터 패킷을 전송할 수 있다. In this case, the network equipments N1, N2, N3, and N4 may transmit data packets to the next router (or switch) to be passed through to reach the corresponding destination based on the routing table configured by the routing protocol. Also, some of the network devices N1, N3, and N4 may transmit data packets to the VPN server 300 or the VPN clients 100 and 200 connected thereto.

도 3은 본 발명에 따른 VPN 서버의 구성을 설명하기 위한 블록도이다.3 is a block diagram for explaining the configuration of a VPN server according to the present invention.

본 발명에 따른 VPN 서버(300)는, 데이터 수집부(310), 연산부(320), 장애 판단부(330) 및 저장부(340)를 포함할 수 있다.The VPN server 300 according to the present invention may include a data collection unit 310, a calculation unit 320, a failure determination unit 330, and a storage unit 340.

데이터 수집부(310)는 데이터 패킷에서 네트워크 장비의 상태 정보를 필터링 할 수 있다. 구체적으로 데이터 수집부(310)는 복수의 네트워크 장비를 경유한 데이터 패킷을 수신하고, 복수의 네트워크 장비에 의해 데이터 패킷에 삽입된 복수의 상태 정보를 추출할 수 있다.The data collection unit 310 may filter state information of network equipment from data packets. Specifically, the data collection unit 310 may receive data packets passed through a plurality of network devices and extract a plurality of state information inserted into the data packets by the plurality of network devices.

연산부(320)는, 필터링 된 네트워크 장비들의 상태 정보를 이용하여 데이터 패킷이 지나온 경로의 모니터링 정보를 획득할 수 있다. The calculation unit 320 may obtain monitoring information of a path through which the data packet has passed by using the filtered state information of the network devices.

장애 판단부(330)는, 모니터링 정보를 이용하여 장애가 발생한 네트워크 장비를 결정할 수 있다.The failure determining unit 330 may determine a network device having a failure using the monitoring information.

저장부(340)는, 모니터링 정보, 장애 발생 여부에 대한 정보, 장애가 발생한 네트워크 장비에 대한 정보 등을 저장할 수 있다.The storage unit 340 may store monitoring information, information on whether or not a failure has occurred, information on network equipment with a failure, and the like.

한편 VPN 서버(300)의 동작을 구현하기 위한 하드웨어로서, VPN 서버(100)는 통신 모듈, 프로세서 및 메모리를 포함할 수 있다.Meanwhile, as hardware for implementing the operation of the VPN server 300, the VPN server 100 may include a communication module, a processor, and a memory.

통신 모듈은, VPN 서버(300)를 VPN 망(400)에 연결하기 위한 인터페이스를 제공할 수 있다. 그리고 통신 모듈은, VPN 망(400)을 구성하는 네트워크 장비(N1, N2, N3, N4) 중 하나 이상과 통신하여, 데이터 패킷을 송신 및 수신할 수 있다.The communication module may provide an interface for connecting the VPN server 300 to the VPN network 400. The communication module may transmit and receive data packets by communicating with one or more of the network devices N1 , N2 , N3 , and N4 constituting the VPN network 400 .

프로세서는 VPN 서버(300)의 전반적인 동작을 제어할 수 있다. 그리고 데이터 수집부(310), 연산부(320), 장애 판단부(330) 및 저장부(340)의 동작의 일부 또는 전부는, 프로세서의 구동에 의해 수행될 수 있다.The processor may control the overall operation of the VPN server 300. Also, some or all of the operations of the data collection unit 310, the calculation unit 320, the failure determination unit 330, and the storage unit 340 may be performed by driving a processor.

메모리는, VPN 서버(300)의 동작을 위한 응용 프로그램 또는 데이터를 저장할 수 있다.The memory may store application programs or data for operation of the VPN server 300 .

도 4는 본 발명에 따른 VPN 서버의 VPN 장애 모니터링 방법을 설명하기 위한 도면이다.4 is a diagram for explaining a VPN failure monitoring method of a VPN server according to the present invention.

VPN 서버의 VPN 장애 모니터링 방법은, 제1 VPN 클라이언트로부터 전송되어 VPN 망의 복수의 네트워크 장비를 경유한 데이터 패킷을 수신하는 단계(S410), 복수의 네트워크 장비에 의해 데이터 패킷에 삽입된 복수의 상태 정보를 추출하는 단계(S420), 복수의 상태 정보를 추출한 후, 헤드 및 페이로드를 포함하는 데이터 패킷을 목적지인 제2 VPN 클라이언트에 전송하는 단계(S430), 복수의 상태 정보를 이용하여 데이터 패킷이 지나온 경로의 모니터링 정보를 획득하는 단계(S440), 및, 모니터링 정보를 이용하여 장애가 발생한 네트워크 장비를 결정하는 단계(S450)를 포함할 수 있다.A method for monitoring a VPN failure of a VPN server includes receiving a data packet transmitted from a first VPN client and passing through a plurality of network devices of a VPN network (S410), a plurality of conditions inserted into the data packet by the plurality of network devices Extracting information (S420), extracting a plurality of status information, and then transmitting the data packet including the head and payload to the second VPN client as a destination (S430), using the plurality of status information to transmit the data packet It may include obtaining monitoring information of the passed path (S440), and determining a network device having a failure using the monitoring information (S450).

한편 도 4에서의 S440 내지 S450은, 발명의 필수 구성 요소는 아닌 것으로, VPN 서버의 VPN 장애 모니터링 방법은 더 많은 단계 또는 더 적은 단계를 포함할 수 있다.Meanwhile, S440 to S450 in FIG. 4 are not essential components of the invention, and the VPN server failure monitoring method may include more or fewer steps.

도 5는 본 발명에 따른, 데이터 패킷이 전송되는 과정을 설명하기 위한 도면이다.5 is a diagram for explaining a process of transmitting a data packet according to the present invention.

본 발명에 따른 VPN 시스템에는 둘 이상의 VPN 클라이언트가 존재할 수 있으며, 둘 이상의 VPN 클라이언트는 하나의 VPN 서버(100)를 통해 동일한 VPN 망에 연결될 수 있다. 이하에서는 설명의 편의를 위해 두 개의 VPN 클라이언트(제1 VPN 클라이언트(100), 제2 VPN 클라이언트(200))가 VPN 망(400)을 통해 통신하는 예시를 들어 설명한다.Two or more VPN clients may exist in the VPN system according to the present invention, and the two or more VPN clients may be connected to the same VPN network through one VPN server 100. Hereinafter, for convenience of description, an example in which two VPN clients (first VPN client 100 and second VPN client 200) communicate through the VPN network 400 will be described.

또한 제1 VPN 클라이언트(100)와 제2 VPN 클라이언트(200)는 상호 간에 데이터를 송신 및 수신할 수 있다. 이하에서는 설명의 편의를 위해, 제1 VPN 클라이언트(100)가 제2 VPN 클라이언트(200)를 목적지로 하여 데이터를 전송하는 예시를 들어 설명한다.Also, the first VPN client 100 and the second VPN client 200 can transmit and receive data to and from each other. Hereinafter, for convenience of explanation, an example in which the first VPN client 100 transmits data to the second VPN client 200 as a destination will be described.

제1 VPN 클라이언트(100)는 제1 호스트(110)로부터 데이터 패킷을 수신하고, 데이터 패킷을 암호화 하여 전송할 수 있다. 본 명세서에서는 제1 호스트(110)를 데이터 패킷의 최초 출발지, 제1 VPN 클라이언트(100)를 데이터 패킷의 출발지, 제2 VPN 클라이언트(200)를 데이터 패킷의 목적지, 제2 호스트(210)를 데이터 패킷의 최종 목적지로 명칭한다. 한편 데이터 패킷은 복수의 상태 정보를 포함하기 위하여, 점보 패킷으로 구성될 수 있다.The first VPN client 100 may receive data packets from the first host 110 and encrypt and transmit the data packets. In this specification, the first host 110 is the initial source of data packets, the first VPN client 100 is the source of data packets, the second VPN client 200 is the destination of data packets, and the second host 210 is the source of data packets. Name the final destination of the packet. Meanwhile, the data packet may be configured as a jumbo packet in order to include a plurality of state information.

한편 제1 VPN 클라이언트(100)에서 전송한 데이터 패킷은, VPN 서버(100)를 경유한 후, 제2 VPN 클라이언트(200)에 전송될 수 있다.Meanwhile, the data packet transmitted from the first VPN client 100 may be transmitted to the second VPN client 200 after passing through the VPN server 100 .

그리고 제1 VPN 클라이언트(100)에서 전송한 데이터 패킷(510)의 이동 경로는, VPN 망(400)을 구성하는 복수의 네트워크 장비(N1, N2, N3, N4)의 라우팅 프로토콜에 기초하여 결정될 수 있다. 여기서는, 도 5a에 도시된 바와 같이, 제1 VPN 클라이언트(100)에서 전송한 데이터 패킷이 제1 네트워크 장비(N1), 제2 네트워크 장비(N2), 제3 네트워크 장비(N3)를 순차적으로 경유하여 VPN 서버(300)로 전달된다고 가정한다. 또한 도 5b에서 도시된 바와 같이, VPN 서버(300)에서 전송한 데이터 패킷(550)이 제3 네트워크 장비(N3) 및 제4 네트워크 장비(N4)를 순차적으로 경유하여 제2 VPN 클라이언트(200)에 전달된다고 가정한다.The movement path of the data packet 510 transmitted from the first VPN client 100 may be determined based on routing protocols of the plurality of network devices (N1, N2, N3, and N4) constituting the VPN network 400. there is. Here, as shown in FIG. 5A, the data packet transmitted from the first VPN client 100 sequentially passes through the first network equipment N1, the second network equipment N2, and the third network equipment N3. Assume that it is transmitted to the VPN server 300. Also, as shown in FIG. 5B, the data packet 550 transmitted from the VPN server 300 sequentially passes through the third network equipment N3 and the fourth network equipment N4 to reach the second VPN client 200. is assumed to be delivered to

먼저 도 5a를 참고하여 제1 VPN 클라이언트(100)에서 전송한 데이터 패킷(510)을 VPN 서버(300)에서 수신하기까지의 과정을 설명한다.First, with reference to FIG. 5A, a process until the VPN server 300 receives the data packet 510 transmitted from the first VPN client 100 will be described.

제1 VPN 클라이언트(100)에서 전송한 데이터 패킷(510)은, 헤더(HD) 및 페이로드(PL)를 포함할 수 있다. 여기서 헤더(HD)는 패킷 헤더라고도 명칭할 수 있으며, 헤더(HD)는 데이터 패킷이 전달되어야 하는 목적지 정보(제2 VPN 클라이언트)를 포함할 수 있다. 또한 페이로드는, 제1 호스트(110)가 제2 호스트(210)에 전송하려는 데이터를 암호화한 암호화 데이터를 포함할 수 있다.The data packet 510 transmitted by the first VPN client 100 may include a header (HD) and a payload (PL). Here, the header HD may also be referred to as a packet header, and may include destination information (the second VPN client) to which the data packet should be delivered. Also, the payload may include encrypted data obtained by encrypting data to be transmitted from the first host 110 to the second host 210 .

한편 제1 네트워크 장비(N1)는 제1 VPN 클라이언트(100)로부터 데이터 패킷(510)을 수신할 수 있다. 그리고 제1 네트워크 장비(N1)는 자신의 상태 정보인 제1 상태 정보(R1)를 수신된 데이터 패킷(510)에 삽입할 수 있다.Meanwhile, the first network equipment N1 may receive the data packet 510 from the first VPN client 100 . In addition, the first network equipment N1 may insert its own state information, the first state information R1, into the received data packet 510.

여기서 제1 상태 정보(R1)는, 데이터 패킷(510)이 네트워크 장비를 경유한 순서 정보를 포함할 수 있다. 구체적으로 제1 VPN 클라이언트(100)가 전송한 데이터 패킷(510)은, VPN 망(400)을 구성하는 복수의 네트워크 장비(N1, N2, N3, N4) 중 제1 네트워크 장비(N1)를 첫 번째로 경유하였다. 따라서 제1 네트워크 장비(N1)는 “1”이라는 순서 정보를 포함하는 제1 상태 정보(R1)를 생성할 수 있다.Here, the first state information R1 may include order information that the data packet 510 passed through the network equipment. Specifically, the data packet 510 transmitted by the first VPN client 100 first sends the first network device N1 among a plurality of network devices N1, N2, N3, and N4 constituting the VPN network 400. passed second. Accordingly, the first network equipment N1 may generate first state information R1 including order information of “1”.

한편 순서 정보는 시퀀스 넘버(Sequence Number)라는 용어로도 표현될 수 있으며, 네트워크 장비의 상태 정보가 포함되는 순서를 의미할 수도 있다. 즉, 제1 네트워크 장비(N1)는 제1 VPN 클라이언트(100)에서 전송한 데이터 패킷(510)이 첫 번째로 경유한 네트워크 장비로써, 제1 네트워크 장비(N1)가 수신한 데이터 패킷(510)에는 아무런 상태 정보가 포함되어 있지 않은 상태이다. 따라서 제1 네트워크 장비(N1)는 첫 번째로 상태 정보가 포함된다는 의미로, “1”이라는 순서 정보를 포함하는 제1 상태 정보(R1)를 생성할 수 있다.Meanwhile, the order information may also be expressed in terms of a sequence number, and may mean the order in which state information of network equipment is included. That is, the first network device N1 is a network device through which the data packet 510 transmitted from the first VPN client 100 first passed, and the data packet 510 received by the first network device N1 is a state that does not contain any state information. Accordingly, the first network equipment N1 may generate first state information R1 including order information of “1”, meaning that state information is included first.

또한 제1 상태 정보(R1)는, 데이터 패킷(510)이 제1 네트워크 장비(N1)를 경유한 시점 정보를 포함할 수 있다. In addition, the first status information R1 may include information on when the data packet 510 passed through the first network equipment N1.

구체적으로, VPN 망(400)을 구성하는 네트워크 장비(N1, N2, N3, N4)는 시간 동기화가 되어 있으며, 시점 정보는 데이터 패킷(510)이 네트워크 장비를 경유한 시점을 나타내는 타임 스탬프(Timestamp)를 포함할 수 있다. 이 경우 제1 네트워크 장비(N1)는 데이터 패킷(510)이 네트워크 장비를 경유한 시점의 타임 스탬프(Timestamp)를 포함하는 제1 상태 정보(R1)를 생성할 수 있다.Specifically, the network equipment (N1, N2, N3, and N4) constituting the VPN network 400 are time-synchronized, and the time point information is a timestamp indicating the time when the data packet 510 passed through the network equipment. ) may be included. In this case, the first network equipment N1 may generate first state information R1 including a timestamp of the time when the data packet 510 passed through the network equipment.

한편 데이터 패킷(510)이 네트워크 장비를 경유한 시점이란 제1 상태 정보(R1)가 데이터 패킷에 포함되는 시점을 의미할 수 있으나 이에 한정되지는 않으며, 제1 네트워크 장비(N1)가 데이터 패킷(510)을 수신한 시점, 제1 네트워크 장비(N1)가 데이터 패킷(510)을 수신한 후 제1 상태 정보(R1)가 데이터 패킷에 포함되기 전의 특정 시점 등, 다양한 방식으로 구현될 수 있다.Meanwhile, the time at which the data packet 510 passes through the network equipment may mean a time at which the first state information R1 is included in the data packet, but is not limited thereto, and the first network equipment N1 is the data packet ( 510), a specific point in time after the first network equipment N1 receives the data packet 510 and before the first status information R1 is included in the data packet, etc.

또한 제1 상태 정보(R1)는, 제1 네트워크 장비(N1)를 경유하는 데이터 패킷들의 누적 패킷 사이즈(ByteCount)를 포함할 수 있다. 구체적으로 제1 네트워크 장비(N1)는, 제1 네트워크 장비(N1)를 경유하는 데이터 패킷들의 패킷 사이즈를 합산하여 누적 패킷 사이즈를 획득할 수 있다. 예를 들어 제1 네트워크 장비(N1)를 경유한 데이터 패킷들의 누적 패킷 사이즈가 1540 byte인 상태에서, 2 byte의 새로운 데이터 패킷이 제1 네트워크 장비(N1)를 경유하는 경우, 제1 네트워크 장비(N1)는 기존의 누적 패킷 사이즈 1540 byte에 2 byte를 합산하여 1542 byte의 새로운 누적 패킷 사이즈를 산출하고, 새로운 누적 패킷 사이즈를 기록할 수 있다. In addition, the first state information R1 may include an accumulated packet size (ByteCount) of data packets passing through the first network equipment N1. Specifically, the first network equipment N1 may obtain an accumulated packet size by summing the packet sizes of data packets passing through the first network equipment N1. For example, in a state where the cumulative packet size of data packets passing through the first network equipment N1 is 1540 bytes, when a new data packet of 2 bytes passes through the first network equipment N1, the first network equipment ( N1) may calculate a new accumulated packet size of 1542 bytes by adding 2 bytes to the existing accumulated packet size of 1540 bytes, and record the new accumulated packet size.

한편, 데이터 패킷(510)이 제1 네트워크 장비(N1)를 경유하는 경우, 제1 네트워크 장비(N1)는 데이터 패킷(510)이 제1 네트워크 장비(N1)를 경유하는 시점의 누적 패킷 사이즈를 포함하는 제1 상태 정보(R1)를 생성할 수 있다.Meanwhile, when the data packet 510 passes through the first network equipment N1, the first network equipment N1 determines the accumulated packet size at the time when the data packet 510 passes through the first network equipment N1. It is possible to generate the first state information (R1) including.

한편 제1 상태 정보(R1)는, 제1 상태 정보(R1)를 삽입한 제1 네트워크 장비(N1)의 식별 정보(예를 들어 ID)를 더 포함할 수도 있다.Meanwhile, the first state information R1 may further include identification information (eg, ID) of the first network equipment N1 into which the first state information R1 is inserted.

한편 순서 정보, 시점 정보 및 누적 패킷 사이즈를 포함하는 제1 상태 정보(R1)가 생성되면, 제1 네트워크 장비(N1)는 제1 상태 정보(R1)를 헤더(HD) 및 페이로드(PL) 사이에 삽입할 수 있다. Meanwhile, when the first state information R1 including order information, timing information, and accumulated packet size is generated, the first network equipment N1 converts the first state information R1 into a header HD and a payload PL can be inserted between

그리고 제1 네트워크 장비(N1)는, 라우팅 테이블에 기초하여, VPN 망(400)을 구성하는 복수의 네트워크 장비 중 제2 네트워크 장비(N2)에 제1 상태 정보(R1)가 삽입된 데이터 패킷(520)을 전송할 수 있다.And, based on the routing table, the first network equipment N1 is a data packet in which the first state information R1 is inserted into the second network equipment N2 among a plurality of network equipment constituting the VPN network 400 ( 520) can be transmitted.

한편 제2 네트워크 장비(N2)는 제1 네트워크 장비(N1)으로부터 데이터 패킷(520)을 수신할 수 있다. 그리고 데이터 패킷(520)은, 헤더(HD), 제1 상태 정보(R1) 및 페이로드(PL)를 포함할 수 있다,Meanwhile, the second network equipment N2 may receive the data packet 520 from the first network equipment N1. And, the data packet 520 may include a header (HD), first state information (R1), and a payload (PL).

그리고 제2 네트워크 장비(N2)는 자신의 상태 정보인 제2 상태 정보(R2)를 수신된 데이터 패킷(520)에 삽입할 수 있다. 이 경우, 앞서 설명한 제1 네트워크 장비(N1)의 제1 상태 정보 삽입 과정이 적용될 수 있다.Also, the second network equipment N2 may insert its own state information, the second state information R2, into the received data packet 520. In this case, the process of inserting the first status information of the first network equipment N1 described above may be applied.

한편 제1 네트워크 장비(N1)의 제1 상태 정보 삽입 과정과 다른 점을 살펴보면, 제2 상태 정보(R2)는, 제1 VPN 클라이언트(100)가 전송한 데이터 패킷(510)이 네트워크 장비를 경유한 순서 정보를 포함할 수 있다. 구체적으로 제1 VPN 클라이언트(100)가 전송한 데이터 패킷(510)은, VPN 망(400)을 구성하는 복수의 네트워크 장비(N1, N2, N3, N4) 중 제2 네트워크 장비(N2)를 두 번째로 경유하였다. 따라서 제2 네트워크 장비(N1)는 “2”이라는 순서 정보를 포함하는 제2 상태 정보(R2)를 생성할 수 있다.Meanwhile, looking at the difference from the process of inserting the first state information of the first network equipment N1, the second state information R2 is that the data packet 510 transmitted by the first VPN client 100 passes through the network equipment. It may contain sequence information. Specifically, the data packet 510 transmitted by the first VPN client 100 includes two network devices N2 among a plurality of network devices N1, N2, N3, and N4 constituting the VPN network 400. passed second. Accordingly, the second network equipment N1 may generate second state information R2 including order information of “2”.

한편 순서 정보, 시점 정보 및 누적 패킷 사이즈를 포함하는 제2 상태 정보(R2)가 생성되면, 제2 네트워크 장비(N2)는 제2 상태 정보(R2)를 헤더(HD) 및 페이로드(PL) 사이에 삽입할 수 있다. On the other hand, when the second state information R2 including order information, timing information, and accumulated packet size is generated, the second network equipment N2 converts the second state information R2 into a header (HD) and a payload (PL). can be inserted between

그리고 제2 네트워크 장비(N2)는, 라우팅 테이블에 기초하여, VPN 망(400)을 구성하는 복수의 네트워크 장비(N1, N2, N3, N4) 중 제3 네트워크 장비(N3)에 제2 상태 정보(R2)가 삽입된 데이터 패킷(530)을 전송할 수 있다.And, based on the routing table, the second network equipment N2 sends second state information to the third network equipment N3 among the plurality of network equipments N1, N2, N3, and N4 constituting the VPN network 400. The data packet 530 in which (R2) is inserted can be transmitted.

제3 네트워크 장비(N3)는 제2 네트워크 장비(N2)으로부터 데이터 패킷(530)을 수신할 수 있다. 그리고 데이터 패킷(530)은, 헤더(HD), 제1 상태 정보(R1), 제2 상태 정보(R2) 및 페이로드(PL)를 포함할 수 있다,The third network equipment N3 may receive the data packet 530 from the second network equipment N2. The data packet 530 may include a header HD, first state information R1, second state information R2, and a payload PL.

그리고 제3 네트워크 장비(N3)는 자신의 상태 정보인 제3 상태 정보(R3)를 수신된 데이터 패킷(520)에 삽입할 수 있다. 이 경우, 앞서 설명한 제1 네트워크 장비(N1)의 제1 상태 정보 삽입 과정이 적용될 수 있다. 또한 제1 VPN 클라이언트(100)가 전송한 데이터 패킷(510)은, VPN 망(400)을 구성하는 복수의 네트워크 장비(N1, N2, N3, N4) 중 제3 네트워크 장비(N3)를 세 번째로 경유하였다. 따라서 제3 네트워크 장비(N3)는 “3”이라는 순서 정보를 포함하는 제3 상태 정보(R3)를 생성할 수 있다.Also, the third network equipment N3 may insert its own state information, the third state information R3, into the received data packet 520. In this case, the process of inserting the first status information of the first network equipment N1 described above may be applied. In addition, the data packet 510 transmitted by the first VPN client 100 passes through a third network device N3 among a plurality of network devices N1, N2, N3, and N4 constituting the VPN network 400. passed through Accordingly, the third network equipment N3 may generate third status information R3 including order information of “3”.

한편 순서 정보, 시점 정보 및 누적 패킷 사이즈를 포함하는 제3 상태 정보(R3)가 생성되면, 제3 네트워크 장비(N3)는 제3 상태 정보(R3)를 헤더(HD) 및 페이로드(PL) 사이에 삽입할 수 있다. On the other hand, when third state information R3 including order information, timing information, and accumulated packet size is generated, the third network equipment N3 converts the third state information R3 into a header HD and a payload PL. can be inserted between

한편 제3 네트워크 장비(N3)는 VPN 서버(300)와 연결된 장비로, 제3 네트워크 장비(N3)는 제3 상태 정보(R3)가 삽입된 데이터 패킷(540)을 VPN 서버(300)에 전송할 수 있다.Meanwhile, the third network equipment N3 is a device connected to the VPN server 300, and the third network equipment N3 transmits the data packet 540 in which the third status information R3 is inserted to the VPN server 300. can

도 5b를 참고하면, VPN 서버(300)의 데이터 수집부(310)는, 제1 VPN 클라이언트(100)로부터 전송되어 VPN 망(400)의 복수의 네트워크 장비(N1, N2, N3)를 경유한 데이터 패킷(540)을 수신할 수 있다(S410). 즉 데이터 수집부(310)가 수신한 데이터 패킷(540)은, VPN망(400)을 구성하는 전체 네트워크 장비(N1, N2, N3, N4) 중 일부 네트워크 장비들(N1, N2, N3)을 경유한 데이터 패킷(540)을 수신할 수 있다.Referring to FIG. 5B , the data collection unit 310 of the VPN server 300 is transmitted from the first VPN client 100 via a plurality of network devices N1, N2, and N3 of the VPN network 400. A data packet 540 may be received (S410). That is, the data packet 540 received by the data collection unit 310 includes some network devices N1, N2, and N3 among all network devices N1, N2, N3, and N4 constituting the VPN network 400. A data packet 540 passed through may be received.

여기서 수신된 데이터 패킷은, 헤드(HD), 페이로드(PL) 및 복수의 상태 정보(R1, R2, R3)를 포함할 수 있다. Here, the received data packet may include a head (HD), a payload (PL), and a plurality of state information (R1, R2, R3).

여기서 복수의 상태 정보(R1, R2, R3)는, 데이터 패킷(510)이 경유한 복수의 네트워크 장비(N1, N2, N3)에 의해 데이터 패킷에 삽입된 정보일 수 있다. 예를 들어 제1 상태 정보(R1)는 데이터 패킷(510)이 경유한 제1 네트워크 장비(N1)에 의해, 제2 상태 정보(R2)는 데이터 패킷(510)이 경유한 제2 네트워크 장비(N2)에 의해, 제3 상태 정보(R3)는 데이터 패킷(510)이 경유한 제3 네트워크 장비(N3)에 의해 삽입된 정보일 수 있다.Here, the plurality of state information R1 , R2 , and R3 may be information inserted into the data packet by the plurality of network equipments N1 , N2 , and N3 through which the data packet 510 passes. For example, the first state information (R1) is by the first network equipment (N1) through which the data packet 510 passes, and the second state information (R2) is the second network equipment through which the data packet 510 passes ( By N2), the third state information R3 may be information inserted by the third network equipment N3 through which the data packet 510 passes.

또한 복수의 상태 정보(R1, R2, R3)는, 데이터 패킷(510)이 복수의 네트워크 장비(N1, N2, N3)를 경유한 순서에 따라 복수의 네트워크 장비(N1, N2, N3)에 의해 순차적으로 삽입된 정보일 수 있다. 예를 들어 제1 상태 정보(R1)는 데이터 패킷(510)이 첫번째로 경유한 제1 네트워크 장비(N1)에 의해 데이터 패킷(510)에 첫번째로 삽입된 정보이고, 제2 상태 정보(R2)는 데이터 패킷(510)이 두번째로 경유한 제2 네트워크 장비(N2)에 의해 두번째로 삽입된 정보이며, 제3 상태 정보(R3)는 데이터 패킷(510)이 세번째로 경유한 제3 네트워크 장비(N3)에 의해 세번째로 삽입된 정보일 수 있다.In addition, the plurality of state information (R1, R2, R3), according to the order in which the data packet 510 passes through the plurality of network equipment (N1, N2, N3) by a plurality of network equipment (N1, N2, N3) It may be information that is sequentially inserted. For example, the first state information R1 is information first inserted into the data packet 510 by the first network equipment N1 through which the data packet 510 first passed, and the second state information R2 is information inserted secondly by the second network equipment N2 through which the data packet 510 passed secondly, and the third state information R3 is the third network equipment through which the data packet 510 passed thirdly ( It may be information inserted thirdly by N3).

한편 데이터 수집부(310)는 수신된 데이터 패킷(540)으로부터 복수의 상태 정보(545)를 추출할 수 있다(S420). 또한 데이터 수집부(310)는 헤드(HD) 및 페이로드(PL)를 포함하는 데이터 패킷(550)을 목적지인 제2 VPN 클라이언트(200)에 전송할 수 있다(S430).Meanwhile, the data collection unit 310 may extract a plurality of pieces of state information 545 from the received data packet 540 (S420). In addition, the data collection unit 310 may transmit the data packet 550 including the head (HD) and the payload (PL) to the destination second VPN client 200 (S430).

구체적으로 데이터 수집부(310)는, 수신된 데이터 패킷(540)으로부터 복수의 상태 정보(545)를 획득하고, 수신된 데이터 패킷(540)에서 복수의 상태 정보(R1, R2, R3)를 제거할 수 있다. 이 경우 데이터 패킷(540)에는 복수의 상태 정보(R1, R2, R3)를 제외한 헤드(HD) 및 페이로드(PL)가 남게 된다.Specifically, the data collection unit 310 obtains a plurality of state information 545 from the received data packet 540, and removes a plurality of state information (R1, R2, R3) from the received data packet 540 can do. In this case, the head HD and the payload PL remain in the data packet 540 except for the plurality of state information R1, R2, and R3.

그리고 데이터 수집부(310)는, 복수의 상태 정보(R1, R2, R3)가 제거되었지만 헤드(HD) 및 페이로드(PL)는 포함하는 데이터 패킷(550)을 제2 VPN 클라이언트(200)에 전송할 수 있다. 한편 데이터 수집부(310)가 데이터 패킷(550)을 목적지인 제2 VPN 클라이언트(200)에 전송한다는 것은, 데이터 수집부(310)가 데이터 패킷을 목적지인 제2 VPN 클라이언트에 포워딩(forwarding) 하는 것을 포함할 수 있다. 그리고 데이터 패킷(550)은 VPN 망(400)을 통하여 제2 VPN 클라이언트(200)에 전송되기 때문에, 데이터 패킷(550)은 먼저 VPN 서버(300)와 연결된 제3 네트워크 장비(N3)에 전송될 수 있다.In addition, the data collection unit 310 sends the data packet 550 including the head HD and the payload PL to the second VPN client 200 although the plurality of state information R1, R2, and R3 have been removed. can transmit Meanwhile, the fact that the data collector 310 transmits the data packet 550 to the destination second VPN client 200 means that the data collector 310 forwards the data packet to the destination second VPN client. may include And since the data packet 550 is transmitted to the second VPN client 200 through the VPN network 400, the data packet 550 is first transmitted to the third network equipment N3 connected to the VPN server 300. can

한편 제3 네트워크 장비(N3) 및 제4 네트워크 장비(N4)는 헤드(HD) 및 페이로드(PL)는 포함하는 데이터 패킷(550)을 목적지인 제2 VPN 클라이언트(200)에 전송할 수 있다. 그리고 제2 VPN 클라이언트(200)는 데이터 패킷(550)을 수신하고, 수신된 데이터 패킷(550)을 최종 목적지인 제2 호스트(210)에 전송할 수 있다.Meanwhile, the third network equipment N3 and the fourth network equipment N4 may transmit the data packet 550 including the head HD and the payload PL to the second VPN client 200 as a destination. The second VPN client 200 may receive the data packet 550 and transmit the received data packet 550 to the second host 210 as the final destination.

도 6은 복수의 상태 정보를 이용하여 데이터 패킷이 지나온 경로의 모니터링 정보를 획득하는 방법을 설명하기 위한 도면이다.6 is a diagram for explaining a method of obtaining monitoring information on a path through which a data packet has passed by using a plurality of state information.

도 6a에서는, 데이터 수집부(310)가 수신한 데이터 패킷(540)에서 추출된 복수의 상태 정보(545)를 테이블화 하여 도시하였다. 도 6a를 참고하면, 복수의 상태 정보(R1, R2, R3) 각각은, 상태 정보를 삽입한 네트워크 장비의 식별 정보(ID), 데이터 패킷이 네트워크 장비를 경유한 순서 정보(Sequence Number), 상기 데이터 패킷이 네트워크 장비를 경유한 시점 정보(Timestamp) 및 네트워크 장비를 경유하는 데이터 패킷의 누적 패킷 사이즈(ByteCount)를 포함하는 것을 알 수 있다.In FIG. 6A, a plurality of state information 545 extracted from the data packet 540 received by the data collection unit 310 is shown as a table. Referring to FIG. 6A, each of the plurality of state information R1, R2, and R3 includes identification information (ID) of the network equipment into which the state information is inserted, sequence number of data packets passing through the network equipment, and the It can be seen that the data packet includes time point information (Timestamp) passing through the network equipment and the cumulative packet size (ByteCount) of the data packet passing through the network equipment.

한편 연산부(320)는, 복수의 상태 정보(545)를 이용하여 데이터 패킷이 지나온 경로의 모니터링 정보(610)를 획득할 수 있다(S440). 여기서 모니터링 정보(610)는, 데이터 패킷의 이동 경로, 링크의 패킷 전달 시간, 링크를 통하여 전달된 패킷 사이즈 및 링크의 트래픽 처리량 중 적어도 하나를 포함할 수 있다.Meanwhile, the calculation unit 320 may obtain monitoring information 610 of a path through which the data packet has passed by using the plurality of state information 545 (S440). Here, the monitoring information 610 may include at least one of a movement path of a data packet, a packet delivery time of a link, a packet size transmitted through a link, and a traffic throughput of a link.

먼저 데이터 패킷의 이동 경로를 산출하는 방법에 대하여 설명한다.First, a method of calculating a movement path of a data packet will be described.

도 6a를 참고하면, 복수의 상태 정보는 각각 복수의 순서 정보를 포함한다. 그리고 연산부(320)는 복수의 순서 정보를 이용하여 데이터 패킷의 이동 경로를 획득할 수 있다.Referring to FIG. 6A , each of the plurality of state information includes a plurality of order information. Also, the calculation unit 320 may obtain a movement path of the data packet using a plurality of order information.

구체적으로 제1 상태 정보(R1)는 “1”이라는 순서 정보, 제2 상태 정보(R2)는 “2”라는 순서 정보, 제3 상태 정보(R3)는 “3”이라는 순서 정보를 포함할 수 있다. 이 경우 연산부(320)는 데이터 패킷이, “1”이라는 순서 정보를 삽입한 제1 네트워크 장비(N1), “2”라는 순서 정보를 삽입한 제2 네트워크 장비(N2), “3”이라는 순서 정보를 삽입한 제3 네트워크 장비(N3)를 순차적으로 경유했다는 정보, 즉 데이터 패킷의 이동 경로를 획득할 수 있다.Specifically, the first state information R1 may include order information of “1”, the second state information R2 may include order information of “2”, and the third state information R3 may include order information of “3”. there is. In this case, the calculation unit 320 determines that the data packet is sent to the first network device N1 in which the order information of “1” is inserted, the second network device N2 in which the order information of “2” is inserted, and the order of “3” It is possible to obtain information indicating that the information was sequentially passed through the third network equipment N3 into which the data packet was inserted, that is, the moving path of the data packet.

다음은 링크의 패킷 전달 시간을 산출하는 방법에 대하여 설명한다.Next, a method of calculating a packet transfer time of a link will be described.

여기서 링크란, 특정 네트워크 장비와 다른 네트워크 장비의 직접적인 연결을 의미할 수 있다. 예를 들어 제1 네트워크 장비와 제2 네트워크 장비의 링크는, 제1 네트워크 장비와 제2 네트워크 장비가 다른 네트워크 장비를 통하는 것 없이 직접 연결되었음을 의미할 수 있다.Here, the link may mean a direct connection between a specific network device and another network device. For example, a link between a first network device and a second network device may mean that the first network device and the second network device are directly connected without passing through another network device.

또한 특정 네트워크 장비로부터 다른 네트워크 장비로 향하는 링크란, 특정 네트워크 장비가 데이터 패킷을 전송하고, 다른 네트워크 장비가 특정 네트워크 장비로부터 데이터 패킷을 수신하는 것을 의미할 수 있다. 예를 들어 제1 네트워크 장비로부터 제2 네트워크 장비로 향하는 링크는, 제1 네트워크 장비와 제2 네트워크 장비가 다른 네트워크 장비를 통하는 것 없이 직접 연결되었으며, 데이터 패킷은 제1 네트워크 장비로부터 제2 네트워크 장비로 전송되었음을 의미할 수 있다.Also, a link from a specific network device to another network device may mean that a specific network device transmits a data packet and another network device receives a data packet from a specific network device. For example, in a link from a first network device to a second network device, the first network device and the second network device are directly connected without passing through another network device, and data packets are transmitted from the first network device to the second network device. It can mean that it has been sent to.

한편 연산부(320)는 복수의 상태 정보를 이용하여 링크 별 패킷 전달 시간을 획득할 수 있다. Meanwhile, the calculation unit 320 may obtain a packet transmission time for each link using a plurality of pieces of state information.

먼저 제1 네트워크 장비로부터 제2 네트워크 장비로 향하는 링크를 살피면, 연산부(320)는 제2 상태 정보(R2)에 포함된 시점 정보 및 제1 상태 정보(R1)에 포함된 시점 정보의 차를 이용하여, 제1 네트워크 장비(N1)로부터 제2 네트워크 장비(N2)로 향하는 링크의 패킷 전달 시간을 획득할 수 있다.First, when looking at a link from a first network device to a second network device, the calculation unit 320 uses the difference between the time information included in the second state information R2 and the time information included in the first state information R1. Thus, the packet delivery time of the link from the first network equipment N1 to the second network equipment N2 can be obtained.

구체적으로 연산부(320)는 데이터 패킷이 제2 네트워크 장비(N2)를 경유한 시점을 나타내는 타임 스탬프 값(0.263851)으로부터 데이터 패킷이 제1 네트워크 장비(N1)를 경유한 시점을 나타내는 타임 스탬프 값(0.262465)을 뺄 수 있다. 이에 따라 연산부(320)는 제1 네트워크 장비로부터 제2 네트워크 장비로 향하는 링크의 패킷 전달 시간(0.001386)을 포함하는 모니터링 정보(610)를 획득할 수 있다.Specifically, the calculation unit 320 calculates a time stamp value (0.263851) indicating a time when the data packet passed through the second network equipment (N2) indicating a time point when the data packet passed through the first network equipment (N1). 0.262465) can be subtracted. Accordingly, the calculation unit 320 may obtain monitoring information 610 including a packet transfer time (0.001386) of a link from the first network equipment to the second network equipment.

그리고 동일한 방식으로, 연산부(320)는 제2 네트워크 장비(N2)로부터 제3 네트워크 장비(N3)로 향하는 링크의 패킷 전달 시간(0.00124)을 포함하는 모니터링 정보(610)를 획득할 수 있다.In the same way, the calculation unit 320 may obtain monitoring information 610 including a packet transfer time (0.00124) of a link from the second network equipment N2 to the third network equipment N3.

다음은 링크를 통하여 전달된 패킷 사이즈를 산출하는 방법에 대하여 설명한다.Next, a method of calculating the size of a packet transferred through a link will be described.

연산부(320)는 복수의 상태 정보를 이용하여 링크 별 전달된 패킷 사이즈를 획득할 수 있다. The calculation unit 320 may obtain a transmitted packet size for each link using a plurality of pieces of state information.

먼저 제1 네트워크 장비로부터 제2 네트워크 장비로 향하는 링크를 살피면, 연산부(320)는 제2 상태 정보(R2)에 포함된 누적 패킷 사이즈 및 제1 상태 정보(R1)에 포함된 누적 패킷 사이즈의 차를 이용하여, 제1 네트워크 장비(N1)로부터 제2 네트워크 장비(N2)로 향하는 링크를 통하여 전달된 패킷 사이즈를 획득할 수 있다.First, when looking at a link from a first network device to a second network device, the calculation unit 320 calculates the difference between the accumulated packet size included in the second state information R2 and the accumulated packet size included in the first state information R1. The packet size transferred through the link from the first network equipment N1 to the second network equipment N2 can be obtained using .

구체적으로 연산부(320)는 제2 상태 정보(R2)에 포함된 바이트카운트 값(1542)으로부터 제1 상태 정보(R1)에 포함된 바이트카운트 값(1537)을 뺄 수 있다. 이에 따라 연산부(320)는 제1 네트워크 장비(N1)로부터 제2 네트워크 장비(N2)로 향하는 링크를 통하여 전달된 패킷 사이즈(5)를 포함하는 모니터링 정보(610)를 획득할 수 있다. 이 경우, 제1 네트워크 장비(N1)로부터 제2 네트워크 장비(N2)로 향하는 링크를 통하여 전달된 패킷 사이즈(5)는, 데이터 패킷이 제1 네트워크 장비(N1)를 경유한 시점부터 데이터 패킷이 제2 네트워크 장비(N2)를 경유한 시점까지(즉, 앞서 산출한 패킷 전달 시간(0.001386) 동안), 제1 네트워크 장비(N1)로부터 제2 네트워크 장비(N2)로 실제로 전달된 패킷 사이즈(5)를 의미할 수 있다.Specifically, the calculator 320 may subtract the byte count value 1537 included in the first state information R1 from the byte count value 1542 included in the second state information R2. Accordingly, the calculation unit 320 may obtain monitoring information 610 including the packet size 5 transmitted through the link from the first network equipment N1 to the second network equipment N2. In this case, the packet size 5 transmitted through the link from the first network equipment N1 to the second network equipment N2 is the data packet from the time the data packet passed through the first network equipment N1. The packet size (5 ) can mean.

그리고 동일한 방식으로, 연산부(320)는 제2 네트워크 장비(N2)로부터 제3 네트워크 장비(N3)로 향하는 링크를 통하여 전달된 패킷 사이즈(17)를 포함하는 모니터링 정보(610)를 획득할 수 있다.And in the same way, the calculation unit 320 may obtain the monitoring information 610 including the packet size 17 transmitted through the link from the second network equipment N2 to the third network equipment N3. .

한편 모니터링 정보(610)는 링크의 트래픽 처리량을 더 포함할 수 있다. 이와 관련해서는 도 6b를 참고하여 설명한다.Meanwhile, the monitoring information 610 may further include traffic throughput of a link. This will be described with reference to FIG. 6B.

연산부(320)는 링크의 패킷 전달 시간 및 링크를 통하여 전달된 패킷 사이즈를 이용하여 링크의 트래픽 처리량 획득할 수 있다.The calculation unit 320 may obtain the traffic throughput of the link using the packet transfer time of the link and the packet size transmitted through the link.

구체적으로 링크의 트래픽 처리량은, 링크의 패킷 전달 시간에 대한 링크를 통하여 전달된 패킷 사이즈의 비율로 정의될 수 있다. 그리고 연산부(320)는 특정 링크를 통하여 전달된 패킷 사이즈(단위: bit)를 특정 링크의 패킷 전달 시간(단위: sec)으로 나눔으로써, 특정 링크의 트래픽 처리량(단위: bps)를 획득할 수 있다.Specifically, traffic throughput of a link may be defined as a ratio of a packet size transmitted through a link to a packet delivery time of a link. Further, the calculation unit 320 divides the packet size (unit: bit) transmitted through the specific link by the packet delivery time (unit: sec) of the specific link, thereby obtaining the traffic throughput (unit: bps) of the specific link. .

예를 들어 도 6b를 참고하면, 연산부(320)는 제1 네트워크 장비로부터 제2 네트워크 장비로 향하는 링크에 대응하는 패킷 사이즈(5*8 bit)를 제1 네트워크 장비로부터 제2 네트워크 장비로 향하는 링크에 대응하는 패킷 전달 시간(0.001386 sec)로 나눔으로써, 제1 네트워크 장비로부터 제2 네트워크 장비로 향하는 링크의 트래픽 처리량(28,860 bps)를 포함하는 모니터링 정보(610)를 획득할 수 있다.For example, referring to FIG. 6B , the calculation unit 320 converts a packet size (5*8 bit) corresponding to a link from a first network device to a second network device into a link from the first network device to the second network device. Monitoring information 610 including the traffic throughput (28,860 bps) of the link from the first network equipment to the second network equipment can be obtained by dividing by the packet delivery time (0.001386 sec) corresponding to .

다른 예를 들어 도 6b를 참고하면, 연산부(320)는 제2 네트워크 장비로부터 제3 네트워크 장비로 향하는 링크에 대응하는 패킷 사이즈(17*8 bit)를 제2 네트워크 장비로부터 제3 네트워크 장비로 향하는 링크에 대응하는 패킷 전달 시간(0.00124 sec)로 나눔으로써, 제2 네트워크 장비로부터 제3 네트워크 장비로 향하는 링크의 트래픽 처리량(109,677 bps)를 포함하는 모니터링 정보(610)를 획득할 수 있다.As another example, referring to FIG. 6B , the calculation unit 320 sets a packet size (17*8 bit) corresponding to a link from the second network device to the third network device from the second network device to the third network device. By dividing by the packet delivery time (0.00124 sec) corresponding to the link, monitoring information 610 including the traffic throughput (109,677 bps) of the link from the second network equipment to the third network equipment can be obtained.

도 6c를 참고하면, 위의 과정들을 통해, 연산부(320)는 제1 VPN 클라이언트(100)에서 전송된 데이터 패킷이 VPN 서버(300)에 도달하기 까지 지나온 경로에 대한 모니터링 정보(610)를 획득할 수 있으며, 데이터 패킷이 지나온 경로에 대한 모니터링 정보(610)는 링크 별 모니터링 정보(613, 616)을 포함할 수 있다, 예를 들어 모니터링 정보(610)는 제1 네트워크 장비로부터 제2 네트워크 장비로 향하는 링크의 모니터링 정보(613) 및 제2 네트워크 장비로부터 제3 네트워크 장비로 향하는 링크의 모니터링 정보(616)를 포함할 수 있다.Referring to FIG. 6C , through the above processes, the calculation unit 320 obtains monitoring information 610 about the path taken until the data packet transmitted from the first VPN client 100 reaches the VPN server 300. The monitoring information 610 on the path through which the data packet has passed may include monitoring information 613 and 616 for each link. For example, the monitoring information 610 may be transmitted from a first network device to a second network device. It may include monitoring information 613 of a link directed to and monitoring information 616 of a link from the second network device to the third network device.

이 경우 연산부(320)는, 제1 VPN 클라이언트(100)에서 전송된 데이터 패킷이 VPN 서버(300)에 도달하기 까지 지나온 경로에 대한 모니터링 정보(610)를 제1 VPN 클라이언트(100)에 대응하는 모니터링 정보로써 저장부(340)에 저장할 수 있다.In this case, the calculation unit 320 converts the monitoring information 610 of the path taken until the data packet transmitted from the first VPN client 100 reaches the VPN server 300 corresponding to the first VPN client 100. It can be stored in the storage unit 340 as monitoring information.

도 7은 본 발명에 따른, 제2 VPN 클라이언트에서 전송된 데이터 패킷이 지나온 경로에 대한 상태 정보를 획득하는 방법을 설명하기 위한 도면이다.FIG. 7 is a diagram for explaining a method of obtaining state information about a path passed by a data packet transmitted from a second VPN client according to the present invention.

앞선 도 5 내지 도 6에서의 설명은, 모순되지 않는 범위에서, 도 7 내지 도 8에도 적용될 수 있다.The description of FIGS. 5 to 6 above can also be applied to FIGS. 7 to 8 without contradiction.

이하에서는 제2 호스트(210)가 제1 호스트(110)에 전송하는 데이터 패킷을 제2 데이터 패킷이라고 명칭한다.Hereinafter, a data packet transmitted from the second host 210 to the first host 110 is referred to as a second data packet.

제2 VPN 클라이언트(200)는 제1 VPN 클라이언트(100)를 목적지로 하여 제2 데이터 패킷을 전송할 수 있다. The second VPN client 200 may transmit the second data packet to the first VPN client 100 as a destination.

구체적으로 제2 VPN 클라이언트(200)는 제2 호스트(210)로부터 제2 데이터 패킷을 수신하고, 제2 데이터 패킷을 암호화 하여 전송할 수 있다. 이 경우 제2 호스트(210)가 전송하는 제2 데이터 패킷은 제1 호스트(110)가 전송한 데이터 패킷에 대한 응답 메시지일 수 있으나 이에 한정되지는 않으며, 제1 호스트(110)와 제2 호스트(210)의 통신 과정에서 전송되는 별도의 데이터일 수 있다.Specifically, the second VPN client 200 may receive a second data packet from the second host 210, encrypt the second data packet, and transmit the second data packet. In this case, the second data packet transmitted by the second host 210 may be a response message to the data packet transmitted by the first host 110, but is not limited thereto, and the first host 110 and the second host It may be separate data transmitted in the communication process of (210).

한편 제2 VPN 클라이언트(200)에서 전송한 제2 데이터 패킷은, VPN 서버(100)를 경유한 후, 제1 VPN 클라이언트(100)에 전송될 수 있다.Meanwhile, the second data packet transmitted from the second VPN client 200 may be transmitted to the first VPN client 100 after passing through the VPN server 100 .

그리고 제2 VPN 클라이언트(200)에서 전송한 제2 데이터 패킷(710)의 이동 경로는, VPN 망(400)을 구성하는 복수의 네트워크 장비(N1, N2, N3, N4)의 라우팅 프로토콜에 기초하여 결정될 수 있다. 여기서는, 도 7a에 도시된 바와 같이, 제2 VPN 클라이언트(200)에서 전송한 제2 데이터 패킷은 제4 네트워크 장비(N4), 제3 네트워크 장비(N3)를 순차적으로 경유하여 VPN 서버(300)로 전달된다고 가정한다. 또한 도 7b에서 도시된 바와 같이, VPN 서버(300)에서 전송한 제2 데이터 패킷(750)은 제3 네트워크 장비(N3), 제2 네트워크 장비(N2) 및 제1 네트워크 장비(N1)를 순차적으로 경유하여 제1 VPN 클라이언트(100)에 전달된다고 가정한다.And the movement path of the second data packet 710 transmitted from the second VPN client 200 is based on the routing protocol of the plurality of network devices (N1, N2, N3, N4) constituting the VPN network 400. can be determined Here, as shown in FIG. 7A, the second data packet transmitted from the second VPN client 200 sequentially passes through the fourth network equipment N4 and the third network equipment N3 to the VPN server 300. Assume that it is passed to Also, as shown in FIG. 7B, the second data packet 750 transmitted from the VPN server 300 sequentially passes through the third network equipment N3, the second network equipment N2, and the first network equipment N1. It is assumed that it is delivered to the first VPN client 100 via .

한편 도 7a를 참고하면, 제2 VPN 클라이언트(200)에서 전송한 제2 데이터 패킷(710)은, 헤더(HD) 및 페이로드(PL)를 포함할 수 있다. 여기서 헤더(HD)는 제2 데이터 패킷(710)이 전달되어야 하는 목적지 정보(제1 VPN 클라이언트)를 포함할 수 있으며, 페이로드(PL)는, 제2 호스트(210)가 제1 호스트(110)에 전송하려는 데이터를 암호화한 암호화 데이터를 포함할 수 있다.Meanwhile, referring to FIG. 7A , the second data packet 710 transmitted by the second VPN client 200 may include a header (HD) and a payload (PL). Here, the header (HD) may include destination information (first VPN client) to which the second data packet 710 is to be delivered, and the payload (PL) may include destination information to which the second data packet 710 should be delivered. ) can include encrypted data that encrypts the data to be transmitted.

한편 제4 네트워크 장비(N4)는 제2 VPN 클라이언트(200)로부터 제2 데이터 패킷(710)을 수신하고, 자신의 상태 정보인 제4 상태 정보(R4)를 수신된 제2 데이터 패킷(710)에 삽입할 수 있다.Meanwhile, the fourth network device N4 receives the second data packet 710 from the second VPN client 200, and transmits the fourth state information R4, which is its own state information, to the received second data packet 710. can be inserted into

한편 제2 VPN 클라이언트(200)가 전송한 제2 데이터 패킷(710)은, VPN 망(400)을 구성하는 복수의 네트워크 장비(N1, N2, N3, N4) 중 제4 네트워크 장비(N4)를 첫 번째로 경유하였기 때문에, 제4 상태 정보(R4)는 “1”이라는 순서 정보를 포함할 수 있다. 또한 제4 상태 정보(R4)는 제2 데이터 패킷(710)이 제4 네트워크 장비(N1)를 경유한 시점 정보, 제2 데이터 패킷(710)이 제4 네트워크 장비(N4)를 경유하는 시점의 누적 패킷 사이즈(ByteCount), 제4 상태 정보(R4)를 삽입한 제4 네트워크 장비(N4)의 식별 정보(예를 들어 ID)를 포함할 수도 있다. Meanwhile, the second data packet 710 transmitted by the second VPN client 200 sends a fourth network device N4 among a plurality of network devices N1, N2, N3, and N4 constituting the VPN network 400. Since it passed through first, the fourth status information R4 may include order information of “1”. In addition, the fourth state information R4 is information on when the second data packet 710 passes through the fourth network equipment N1, and information about when the second data packet 710 passes through the fourth network equipment N4. It may include the cumulative packet size (ByteCount) and identification information (eg, ID) of the fourth network equipment N4 into which the fourth state information R4 is inserted.

한편 제4 네트워크 장비(N4)는 제4 상태 정보(R4)를 헤더(HD) 및 페이로드(PL) 사이에 삽입하고, 라우팅 테이블에 기초하여 제3 네트워크 장비(N3)에 제4 상태 정보(R4)가 삽입된 제2 데이터 패킷(720)을 전송할 수 있다.Meanwhile, the fourth network equipment (N4) inserts the fourth state information (R4) between the header (HD) and the payload (PL), and sends the fourth state information (4 state information (R4) to the third network equipment (N3) based on the routing table. The second data packet 720 in which R4) is inserted may be transmitted.

또한 제3 네트워크 장비(N3)는, 자신의 상태 정보인 제3 상태 정보(R3)를 수신된 제2 데이터 패킷(720)에 삽입할 수 있다. 그리고 제2 VPN 클라이언트(200)가 전송한 제2 데이터 패킷(710)은, VPN 망(400)을 구성하는 복수의 네트워크 장비(N1, N2, N3, N4) 중 제3 네트워크 장비(N3)를 두 번째로 경유하였기 때문에, 제3 상태 정보(R3)는 “2”라는 순서 정보를 포함할 수 있다.Also, the third network equipment N3 may insert its own state information, the third state information R3, into the received second data packet 720. And, the second data packet 710 transmitted by the second VPN client 200 includes a third network device N3 among a plurality of network devices N1, N2, N3, and N4 constituting the VPN network 400. Since it passed through the second time, the third state information R3 may include order information of “2”.

한편 제3 네트워크 장비(N3)는 VPN 서버(300)와 연결된 장비로, 제3 네트워크 장비(N3)는 제3 상태 정보(R3)가 삽입된 제2 데이터 패킷(730)을 VPN 서버(300)에 전송할 수 있다.Meanwhile, the third network equipment N3 is a device connected to the VPN server 300, and the third network equipment N3 transmits the second data packet 730 into which the third status information R3 is inserted to the VPN server 300. can be sent to

도 7b를 참고하면, VPN 서버(300)의 데이터 수집부(310)는, 제2 VPN 클라이언트(200)로부터 전송되어 VPN 망(400)의 복수의 네트워크 장비(N4, N3)를 경유한 제2 데이터 패킷(730)을 수신할 수 있다. Referring to FIG. 7B , the data collection unit 310 of the VPN server 300 is transmitted from the second VPN client 200 and passes through a plurality of network devices N4 and N3 of the VPN network 400. Data packet 730 may be received.

여기서 수신된 제2 데이터 패킷(730)은, 헤드(HD), 페이로드(PL) 및 복수의 상태 정보(R4, R3)를 포함할 수 있다. 그리고 데이터 수집부(310)는 복수의 네트워크 장비(M4, N3)에 의해 제2 데이터 패킷(730)에 삽입된 복수의 상태 정보(735)를 추출할 수 있다. 또한 데이터 수집부(310)는 복수의 상태 정보(R4, R3)를 제거된, 헤드(HD) 및 페이로드(PL)를 포함하는 제2 데이터 패킷(750)을 제2 VPN 클라이언트(200)를 목적지로 하여 전송할 수 있다.Here, the received second data packet 730 may include a head HD, a payload PL, and a plurality of state information R4 and R3. Also, the data collecting unit 310 may extract a plurality of state information 735 inserted into the second data packet 730 by the plurality of network equipments M4 and N3. In addition, the data collection unit 310 transmits the second data packet 750 including the head HD and the payload PL, from which the plurality of state information R4 and R3 are removed, to the second VPN client 200. It can be sent to the destination.

이 경우 VPN 서버(300)에서 전송된 제2 데이터 패킷(750)은, 제3 네트워크 장비(N3), 제2 네트워크 장비(N2) 및 제1 네트워크 장비(N1)을 순차적으로 경유하여 제1 VPN 클라이언트(100)에 전송될 수 있으며, 제1 VPN 클라이언트(100)는 최종 목적지인 제1 호스트(110)에 제2 데이터 패킷을 전송할 수 있다.In this case, the second data packet 750 transmitted from the VPN server 300 sequentially passes through the third network equipment N3, the second network equipment N2, and the first network equipment N1 to the first VPN. It can be transmitted to the client 100, and the first VPN client 100 can transmit the second data packet to the first host 110 as the final destination.

한편 도 7에서는, 제2 VPN 클라이언트(200)에서 제1 VPN 클라이언트(100)에 전송한 제2 데이터 패킷(710)의 이동 경로가, 제1 VPN 클라이언트(100)에서 제2 VPN 클라이언트(200)에 전송한 데이터 패킷(510)의 이동 경로의 역순인 것으로 설명하였으나 이에 한정되지 않으며, 제2 VPN 클라이언트(200)에서 제1 VPN 클라이언트(100)에 전송한 데이터 패킷(710)은 라우팅 프로토콜에 기초하여 다른 경로로 이동할 수도 있다.Meanwhile, in FIG. 7 , the movement path of the second data packet 710 transmitted from the second VPN client 200 to the first VPN client 100 is from the first VPN client 100 to the second VPN client 200. It has been described as being in the reverse order of the movement path of the data packet 510 transmitted to, but is not limited thereto, and the data packet 710 transmitted from the second VPN client 200 to the first VPN client 100 is based on a routing protocol. So you can go another route.

도 8은 복수의 상태 정보를 이용하여 데이터 패킷이 지나온 경로의 모니터링 정보를 획득하는 방법을 설명하기 위한 도면이다.8 is a diagram for explaining a method of obtaining monitoring information on a path through which a data packet has passed by using a plurality of state information.

도 8a에서는, 데이터 수집부(310)가 수신한 제2 데이터 패킷(730)에서 추출된 복수의 상태 정보(735)를 테이블화 하여 도시하였다. 도 8a를 참고하면, 복수의 상태 정보(R4, R3) 각각은, 상태 정보를 삽입한 네트워크 장비의 식별 정보(ID), 제2 데이터 패킷이 네트워크 장비를 경유한 순서 정보(Sequence Number), 제2 데이터 패킷이 네트워크 장비를 경유한 시점 정보(Timestamp) 및 제2 데이터 패킷이 네트워크 장비를 경유하는 시점의 누적 패킷 사이즈(ByteCount)를 포함하는 것을 알 수 있다.In FIG. 8A, a plurality of state information 735 extracted from the second data packet 730 received by the data collection unit 310 is shown as a table. Referring to FIG. 8A, each of the plurality of state information R4 and R3 includes identification information (ID) of the network equipment into which the state information is inserted, sequence number of the second data packet passing through the network equipment, It can be seen that information on when the 2 data packets passed through the network equipment (Timestamp) and the cumulative packet size (ByteCount) at the time when the second data packet passed through the network equipment was included.

한편 연산부(320)는, 제2 데이터 패킷(730)으로부터 추출한 복수의 상태 정보(735)를 이용하여 제2 데이터 패킷이 지나온 경로의 모니터링 정보(810)를 획득할 수 있다(S440). 여기서 모니터링 정보(610)는, 데이터 패킷의 이동 경로, 링크의 패킷 전달 시간, 링크를 통하여 전달된 패킷 사이즈 및 링크의 트래픽 처리량 중 적어도 하나를 포함할 수 있다.Meanwhile, the calculation unit 320 may obtain monitoring information 810 of a path along which the second data packet passed by using the plurality of state information 735 extracted from the second data packet 730 (S440). Here, the monitoring information 610 may include at least one of a movement path of a data packet, a packet delivery time of a link, a packet size transmitted through a link, and a traffic throughput of a link.

예를 들어 제4 상태 정보(R4)는 “1”이라는 순서 정보, 제3 상태 정보(R3)는 “2”라는 순서 정보를 포함할 수 있다. 이 경우 연산부(320)는 데이터 패킷이 “1”이라는 순서 정보를 삽입한 제4 네트워크 장비(N4), “2”라는 순서 정보를 삽입한 제3 네트워크 장비(N3)를 순차적으로 경유했다는 정보, 즉 데이터 패킷의 이동 경로를 획득할 수 있다.For example, the fourth state information R4 may include order information of “1” and the third state information R3 may include order information of “2”. In this case, the calculation unit 320 provides information that the data packet sequentially passed through the fourth network equipment N4 into which the order information of “1” was inserted and the third network equipment N3 into which the order information of “2” was inserted, in sequence; That is, the moving path of the data packet can be acquired.

또한 연산부(320)는 링크 별 패킷 전달 시간 및 링크 별 전달된 패킷 사이즈를 산출하고, 링크 별 패킷 전달 시간 및 링크 별 전달된 패킷 사이즈를 이용하여 링크 별 트래픽 처리량을 획득할 수 있다.Also, the calculator 320 may calculate a packet transfer time for each link and a packet size transmitted for each link, and obtain a traffic throughput for each link using the packet delivery time for each link and the packet size for each link.

이와 같이 도 5 내지 도 8에서 설명한 과정을 통하여, 제1 VPN 클라이언트(100)와 제2 VPN 클라이언트(200)의 통신 경로에 대한 모니터링 정보가 획득될 수 있다. 예를 들어 도 5 내지 도 6의 과정을 통하여 제1 네트워크 장비(N1)로부터 제2 네트워크 장비(N2)로 향하는 링크, 제2 네트워크 장비(N2)로부터 제3 네트워크 장비(N3)로 향하는 링크에 대한 모니터링 정보가 획득될 수 있으며, 도 7 내지 도 8의 과정을 통하여 제4 네트워크 장비(N4)로부터 제3 네트워크 장비(N3)로 향하는 링크에 대한 모니터링 정보가 획득될 수 있다.In this way, monitoring information on the communication path between the first VPN client 100 and the second VPN client 200 can be obtained through the process described in FIGS. 5 to 8 . For example, through the process of FIGS. 5 and 6, the link from the first network equipment N1 to the second network equipment N2 and the link from the second network equipment N2 to the third network equipment N3 Monitoring information may be obtained, and monitoring information on a link from the fourth network equipment N4 to the third network equipment N3 may be obtained through the process of FIGS. 7 to 8 .

이 경우 연산부(320)는, 제2 VPN 클라이언트(100)에서 전송된 제2 데이터 패킷이 VPN 서버(300)에 도달하기 까지 지나온 경로에 대한 모니터링 정보(810)를 제2 VPN 클라이언트(200)에 대응하는 모니터링 정보로써 저장부(340)에 저장할 수 있다.In this case, the calculation unit 320 transmits monitoring information 810 on a path passed until the second data packet transmitted from the second VPN client 100 reaches the VPN server 300 to the second VPN client 200. It can be stored in the storage unit 340 as corresponding monitoring information.

또한 연산부(320)는, 제1 VPN 클라이언트(100) 및 제2 VPN 클라이언트(200) 이외의 다른 VPN 클라이언트에 대응하는 모니터링 정보를 저장부(340)에 저장할 수 있다. 이에 따라 저장부(340)에는, VPN 클라이언트 들이 다른 VPN 클라이언트와의 통신을 위해 사용하는 VPN 망(400)의 링크 들에 대한 모니터링 정보가 저장될 수 있다.Also, the calculation unit 320 may store monitoring information corresponding to VPN clients other than the first VPN client 100 and the second VPN client 200 in the storage unit 340 . Accordingly, monitoring information on links of the VPN network 400 used by VPN clients to communicate with other VPN clients may be stored in the storage unit 340 .

이하에서는 모니터링 정보를 이용하여 장애 발생 여부 및 장애가 발생한 네트워크 장비를 결정하는 방법에 대하여 설명한다. 또한 이하에서는, 도 5 내지 도 8에서 설명한 과정을 통하여 제1 VPN 클라이언트(100)와 제2 VPN 클라이언트(200)의 통신 경로에 대한 모니터링 정보가 획득된 상태에서 장애를 판단하는 것으로 설명하나 이에 한정되지는 않는다. 예를 들어 도 5 내지 도 6의 과정을 통해 획득한 모니터링 정보(제1 네트워크 장비(N1)로부터 제2 네트워크 장비(N2)로 향하는 링크, 제2 네트워크 장비(N2)로부터 제3 네트워크 장비(N3)로 향하는 링크에 대한 모니터링 정보)만 획득된 상태에서도, 장애 발생 여부 및 장애가 발생한 네트워크 장비의 파악이 가능하다.Hereinafter, a method of determining whether a failure has occurred and a network device in which a failure has occurred using monitoring information will be described. Also, in the following description, failure is determined in a state in which monitoring information on the communication path between the first VPN client 100 and the second VPN client 200 is obtained through the process described in FIGS. 5 to 8, but is limited thereto. It doesn't work. For example, the monitoring information obtained through the process of FIGS. 5 and 6 (a link from the first network equipment N1 to the second network equipment N2, a link from the second network equipment N2 to the third network equipment N3 ), it is possible to determine whether a failure has occurred and the network equipment in which the failure occurred, even in a state where only the monitoring information on the link directed to ) is acquired.

도 9는 본 발명에 따른, 네트워크 장비에 장애가 발생한 상황을 도시한 도면이다.9 is a diagram illustrating a situation in which failure occurs in network equipment according to the present invention.

도 9a를 참고하면, 제2 네트워크 장비(N2)에 장애가 발생한 상태이다. 이에 따라 제1 VPN 클라이언트(100)가 전송한 데이터 패킷(910)은 제1 네트워크 장비(N1)까지는 전송이 되었으나, 제1 네트워크 장비(N1)로부터 제2 네트워크 장비(N2)로 전송되지는 못한다. 따라서 제1 VPN 클라이언트(100)가 전송한 데이터 패킷(910)은 VPN 서버(300) 및 제2 VPN 클라이언트(200)로 전달될 수 없다.Referring to FIG. 9A , a failure occurs in the second network equipment N2. Accordingly, the data packet 910 transmitted by the first VPN client 100 is transmitted to the first network equipment N1, but is not transmitted from the first network equipment N1 to the second network equipment N2. . Therefore, the data packet 910 transmitted by the first VPN client 100 cannot be delivered to the VPN server 300 and the second VPN client 200 .

이 경우 제1 네트워크 장비(N1)는 라우팅 프로토콜에 기반하여 새로운 이동 경로를 탐색할 수 있다. 즉 기존의 라우팅 테이블로부터 갱신된 새로운 라우팅 테이블에 기초하여, 제1 네트워크 장비(N1)는 제4 네트워크 장비(N4)에, 제4 네트워크 장비(N4)는 제3 네트워크 장비(N3)에, 제3 네트워크 장비(N3)는 VPN 서버(300)에 데이터 패킷을 전송할 수 있다In this case, the first network equipment N1 may search for a new movement path based on a routing protocol. That is, based on the new routing table updated from the existing routing table, the first network equipment (N1) is connected to the fourth network equipment (N4), the fourth network equipment (N4) is connected to the third network equipment (N3), 3 Network equipment (N3) may transmit data packets to VPN server (300)

한편 도 9b를 참고하면, 데이터 수집부(310)는, 제1 VPN 클라이언트(100)로부터 전송되어 VPN 망(400)의 복수의 네트워크 장비(N1, N4, N3)를 경유한 데이터 패킷(940)을 수신하고, 데이터 패킷(940)으로부터 복수의 상태 정보(945)를 추출할 수 있다. Meanwhile, referring to FIG. 9B , the data collection unit 310 collects data packets 940 transmitted from the first VPN client 100 and passing through a plurality of network devices N1, N4, and N3 of the VPN network 400. may be received, and a plurality of state information 945 may be extracted from the data packet 940.

또한 데이터 수집부(310)는 복수의 상태 정보(945)를 제거한 데이터 패킷(950)을 전송할 수 있으며, 이 경우 VPN 서버(300)에서 전송된 데이터 패킷(950)은 복수의 네트워크 장비(N3, N4)를 경유하여 제2 VPN 클라이언트(200)에 전달될 수 있다.In addition, the data collector 310 may transmit the data packet 950 from which the plurality of state information 945 is removed. In this case, the data packet 950 transmitted from the VPN server 300 is a plurality of network equipment (N3, N4) to the second VPN client 200.

도 10은 제2 네트워크 장비에 장애가 발생한 상태에서 획득되는 모니터링 정보를 설명하기 위한 도면이다.10 is a diagram for explaining monitoring information obtained in a state in which a failure occurs in a second network device.

도 10a에서는 제2 네트워크 장비(N2)에 장애가 발생한 상태에서, 데이터 수집부(310)가 수신한 데이터 패킷(940)에서 추출된 복수의 상태 정보(945)를 테이블화 하여 도시하였다. In FIG. 10A , a plurality of state information 945 extracted from the data packet 940 received by the data collection unit 310 in a state where a failure occurs in the second network equipment N2 is shown as a table.

그리고 연산부(320)는, 데이터 패킷(940)에서 추출된 복수의 상태 정보(945)를 이용하여, 데이터 패킷이 지나온 새로운 경로의 모니터링 정보(1010)를 획득할 수 있다, 여기서 새로운 경로의 모니터링 정보(1010)는, 데이터 패킷의 이동 경로, 링크의 패킷 전달 시간, 링크를 통하여 전달된 패킷 사이즈 및 링크의 트래픽 처리량 중 적어도 하나를 포함할 수 있다.Also, the calculation unit 320 may obtain monitoring information 1010 of a new path through which the data packet has passed by using a plurality of state information 945 extracted from the data packet 940. Here, the monitoring information of the new path Step 1010 may include at least one of a movement path of a data packet, a packet delivery time of a link, a packet size transmitted through a link, and a traffic throughput of a link.

이 경우 새로운 경로의 모니터링 정보(1010)는, 데이터 패킷이 제1 네트워크 장비(N1), 제4 네트워크 장비(N4) 및 제3 네트워크 장비(N3)를 순차적으로 경유했다는, 즉 데이터 패킷의 새로운 이동 경로에 대한 정보를 포함할 수 있다.In this case, the monitoring information 1010 of the new path indicates that the data packet sequentially passed through the first network equipment N1, the fourth network equipment N4, and the third network equipment N3, that is, the new movement of the data packet. It may contain information about the route.

또한 도 10b를 참고하면, 새로운 경로의 모니터링 정보(1010)는, 제1 네트워크 장비(N1)로부터 제4 네트워크 장비(N4)로 향하는 링크의 패킷 전달 시간, 전달된 패킷 사이즈 및 트래픽 처리량을 포함할 수 있다. 또한 새로운 경로의 모니터링 정보(1010)는, 제4 네트워크 장비(N4)로부터 제3 네트워크 장비(N3)로 향하는 링크의 패킷 전달 시간, 전달된 패킷 사이즈 및 트래픽 처리량을 포함할 수 있다.Referring to FIG. 10B , the monitoring information 1010 of the new path may include a packet transfer time of a link from the first network device N1 to the fourth network device N4, the size of the transferred packet, and traffic throughput. can In addition, the monitoring information 1010 of the new path may include a packet delivery time of a link from the fourth network equipment N4 to the third network equipment N3, the transmitted packet size, and traffic throughput.

다음은 도 11을 참고하여, 모니터링 정보를 이용하여 장애가 발생한 네트워크 장비를 결정하는 단계(S450)에 대하여 설명한다.Next, with reference to FIG. 11, the step of determining a network device with a failure using monitoring information (S450) will be described.

도 11은 본 발명에 따른, 장애가 발생한 네트워크 장비를 결정하는 방법을 설명하기 위한 도면이다.11 is a diagram for explaining a method of determining a network device having a failure according to the present invention.

연산부(320)는 현재 획득된 VPN 클라이언트의 모니터링 정보가 저장부(340)에 기 저장되어 있는지 판단할 수 있다(S451).The calculation unit 320 may determine whether the currently acquired monitoring information of the VPN client is pre-stored in the storage unit 340 (S451).

구체적으로 도 5 내지 도 6의 과정을 통해 저장부(340)에는 제1 VPN 클라이언트(100)에 대응하는 모니터링 정보(610)가 기 저장되어 있는 상태이며, 연산부(320)는 도 9 내지 도 10의 과정을 통해 제1 VPN 클라이언트(100)에 대응하는 새로운 모니터링 정보(1010)를 획득한 상태이다.Specifically, monitoring information 610 corresponding to the first VPN client 100 is pre-stored in the storage unit 340 through the process of FIGS. New monitoring information 1010 corresponding to the first VPN client 100 is acquired through the process of

따라서 연산부(320)는 저장부(340)를 검색하여 제1 VPN 클라이언트(100)에 대응하는 모니터링 정보(610)가 저장부(340)에 기 저장된 것을 확인하고, 제1 VPN 클라이언트(100)에 대응하는 모니터링 정보가 저장부(340)에 기 저장된 경우 S452로 진행할 수 있다.Accordingly, the calculation unit 320 searches the storage unit 340 to confirm that the monitoring information 610 corresponding to the first VPN client 100 has been previously stored in the storage unit 340, and to the first VPN client 100. When the corresponding monitoring information is pre-stored in the storage unit 340, the process may proceed to S452.

한편 제1 VPN 클라이언트(100)에 대응하는 모니터링 정보가 저장부(340)에 기 저장되지 않은 경우, 연산부(320)는 제1 VPN 클라이언트(100)에 대응하는 현재의 모니터링 정보(1010)를 저장부(340) 내 데이터베이스에 저장할 수 있다(S456).Meanwhile, if the monitoring information corresponding to the first VPN client 100 is not previously stored in the storage unit 340, the calculation unit 320 stores the current monitoring information 1010 corresponding to the first VPN client 100. It can be stored in the database in the unit 340 (S456).

한편 제1 VPN 클라이언트(100)에 대응하는 모니터링 정보가 저장부(340)에 기 저장된 경우, 연산부(320)는 제1 VPN 클라이언트(100)의 현재 모니터링 정보(1010)에 포함되는 이동 경로가, 제1 VPN 클라이언트(100)의 이전 모니터링 정보(610)에 포함되는 이동 경로와 일치하는지 판단할 수 있다(S452).Meanwhile, when monitoring information corresponding to the first VPN client 100 is pre-stored in the storage unit 340, the calculation unit 320 calculates the moving path included in the current monitoring information 1010 of the first VPN client 100, It may be determined whether it matches the movement path included in the previous monitoring information 610 of the first VPN client 100 (S452).

이와 관련해서는 도 12를 함께 참고하여 설명한다.This will be described with reference to FIG. 12 together.

도 12는 본 발명에 따른, 모니터링 정보의 비교를 통한 장애 판단 방법을 설명하기 위한 도면이다.12 is a diagram for explaining a failure determination method through comparison of monitoring information according to the present invention.

도 12a를 참고하면, 이전 모니터링 정보(610)에 포함된 이동 경로는 제1 네트워크 장비(N1), 제2 네트워크 장비(N2), 제3 네트워크 장비(N3)를 순차적으로 경유했다는 정보이고, 현재 모니터링 정보(1010)에 포함된 이동 경로는 제1 네트워크 장비(N1), 제4 네트워크 장비(N4), 제3 네트워크 장비(N3)를 순차적으로 경유했다는 정보로써, 두 이동 경로는 서로 상이하다. Referring to FIG. 12A, the movement path included in the previous monitoring information 610 is information that sequentially passed through the first network equipment N1, the second network equipment N2, and the third network equipment N3, and currently The movement path included in the monitoring information 1010 is information that sequentially passed through the first network equipment N1, the fourth network equipment N4, and the third network equipment N3, and the two movement paths are different from each other.

그리고, 현재의 모니터링 정보(1010)에 포함되는 이동 경로가 제1 VPN 클라이언트의 이전 모니터링 정보(610)에 포함되는 이전 이동 경로와 상이한 경우, 장애 판단부(330)는 이전 이동 경로로부터 제외된 네트워크 장비에 ICMP(Internet Control Message Protocol) 메시지를 전송할 수 있다(S453).And, when the moving path included in the current monitoring information 1010 is different from the previous moving path included in the previous monitoring information 610 of the first VPN client, the failure determining unit 330 determines the network excluded from the previous moving path. An Internet Control Message Protocol (ICMP) message may be transmitted to the device (S453).

구체적으로 현재 이동 경로는 제1 네트워크 장비(N1), 제4 네트워크 장비(N4), 제3 네트워크 장비(N3)이고, 이전 이동 경로는 제1 네트워크 장비(N1), 제2 네트워크 장비(N2), 제3 네트워크 장비(N3)으로써, 이전 이동 경로로부터 제2 네트워크 장비(N2)가 제외된 상태이다.Specifically, the current movement path is the first network equipment (N1), the fourth network equipment (N4), and the third network equipment (N3), and the previous movement path is the first network equipment (N1) and the second network equipment (N2). , a state in which the second network equipment N2 is excluded from the previous movement path as the third network equipment N3.

그리고 연산부(320)는 제2 네트워크 장비(N2)의 식별 정보를 장애 판단부(330)에 전송할 수 있다. 이 경우 도 12b에 도시된 바와 같이, 장애 판단부(330)는 제2 네트워크 장비(N2)의 IP 주소(192.168.1.1)에 ICMP 요청 메시지(1110)를 전송할 수 있다.In addition, the calculation unit 320 may transmit identification information of the second network equipment N2 to the failure determination unit 330 . In this case, as shown in FIG. 12B, the failure determination unit 330 may transmit an ICMP request message 1110 to the IP address 192.168.1.1 of the second network equipment N2.

한편 장애 판단부(330)는 ICMP 요청 메시지에 대한 응답 메시지가 수신되었는지 판단할 수 있다(S454).Meanwhile, the failure determination unit 330 may determine whether a response message to the ICMP request message has been received (S454).

한편 장애가 발생한 제2 네트워크 장비(N2)는 ICMP 요청메시지를 수신하지 못하며, 이에 따라 ICMP 요청메시지에 대한 응답 메시지를 VPN 서버(300)에 보낼 수 없다.Meanwhile, the second network device (N2) where the failure occurs does not receive the ICMP request message, and thus cannot send a response message to the ICMP request message to the VPN server 300.

따라서, ICMP 요청 메시지에 대한 응답 메시지가 수신되지 않으면, 장애 판단부(330)는 이전 이동 경로로부터 제외된 제2 네트워크 장비(N2)에 장애가 발생한 것으로 결정할 수 있다.Accordingly, if the response message to the ICMP request message is not received, the failure determination unit 330 may determine that failure has occurred in the second network equipment N2 excluded from the previous movement path.

또한 제2 네트워크 장비(N2)에 장애가 발생한 것으로 결정되는 경우, 장애 판단부(330)는 이전 모니터링 정보(610)를 현재의 모니터링 정보(1010)로 갱신할 수 있다.Also, when it is determined that a failure has occurred in the second network equipment N2 , the failure determining unit 330 may update the previous monitoring information 610 to current monitoring information 1010 .

구체적으로, 제2 네트워크 장비(N2)에 장애가 발생하였으므로, 이전 모니터링 정보(610)에 포함된 이동 경로는 사용 불가능한 경로이다. 따라서 장애 판단부(330)는 저장부(340)에서 이전 모니터링 정보(610)를 삭제하고(S455), 현재의 모니터링 정보(1010)를 제1 VPN 클라이언트(100)에 대응하는 모니터링 정보로써 저장부(340)에 저장할 수 있다(S456). 새롭게 저장된 모니터링 정보(1010)은 다음 모니터링 정보의 비교 대상으로 활용될 수 있다.Specifically, since a failure occurred in the second network equipment N2, the movement path included in the previous monitoring information 610 is an unusable path. Therefore, the failure determination unit 330 deletes the previous monitoring information 610 from the storage unit 340 (S455), and uses the current monitoring information 1010 as monitoring information corresponding to the first VPN client 100 in the storage unit. It can be stored in (340) (S456). The newly stored monitoring information 1010 may be used as a comparison target for the next monitoring information.

다시 S454로 돌아가서, 장애 판단부(330)는 ICMP 요청 메시지에 대한 응답 메시지가 수신되었는지 판단할 수 있다(S454). Returning to S454 again, the failure determination unit 330 may determine whether a response message to the ICMP request message has been received (S454).

구체적으로, 제2 네트워크 장비(N2)에 장애가 발생하지 않은 경우, 제2 네트워크 장비(N2)는 ICMP 요청메시지를 수신하고, ICMP 요청메시지에 대한 응답 메시지를 VPN 서버(300)에 전송할 수 있다.Specifically, when a failure does not occur in the second network equipment N2, the second network equipment N2 may receive an ICMP request message and transmit a response message to the ICMP request message to the VPN server 300.

예를 들어 라우팅 프로토콜은 제2 네트워크 장비(N2)의 부하의 증가, 로드 밸런싱 등의 이유로 데이터 패킷의 이동 경로를 변경할 수 있다. 이 경우, 제2 네트워크 장비(N2)에 장애가 발생하지 않았음에도 불구하고, 라우팅 테이블의 갱신으로 인하여 데이터 패킷의 이동 경로가 변경될 수 있다. For example, the routing protocol may change the movement path of the data packet due to an increase in the load of the second network equipment N2, load balancing, or the like. In this case, even though there is no failure in the second network equipment N2, the movement path of the data packet may be changed due to the update of the routing table.

이 경우 이전 모니터링 정보(610)에 포함된 이동 경로와 현재 모니터링 정보(1010)에 포함된 이동 경로는 모두 사용 가능한 경로이다. 따라서 장애 판단부(330)는 이전 모니터링 정보(610)를 저장부(340)에서 삭제하지 않고, 현재 모니터링 정보(1010)를 추가로 저장부(340)에 저장할 수 있다.In this case, both the moving path included in the previous monitoring information 610 and the moving path included in the current monitoring information 1010 are usable paths. Accordingly, the failure determination unit 330 may additionally store the current monitoring information 1010 in the storage unit 340 without deleting the previous monitoring information 610 from the storage unit 340 .

이번에는 S452로 돌아가서, 제1 VPN 클라이언트(100)에 대응하는 모니터링 정보가 저장부(340)에 기 저장된 경우, 연산부(320)는 제1 VPN 클라이언트(100)의 현재 모니터링 정보(1010)에 포함되는 이동 경로가, 제1 VPN 클라이언트(100)의 이전 모니터링 정보(610)에 포함되는 이동 경로와 일치하는지 판단할 수 있다(S452). Returning to S452 this time, if the monitoring information corresponding to the first VPN client 100 is previously stored in the storage unit 340, the calculation unit 320 includes it in the current monitoring information 1010 of the first VPN client 100. It may be determined whether the moving path to be moved coincides with the moving path included in the previous monitoring information 610 of the first VPN client 100 (S452).

그리고 제1 VPN 클라이언트(100)의 현재 모니터링 정보(1010)에 포함되는 이동 경로가 제1 VPN 클라이언트(100)의 이전 모니터링 정보(610)에 포함되는 이동 경로와 일치하는 경우, 연산부(320)는 현재 모니터링 정보(1010)를 저장부(340) 내 데이터 베이스에 저장할 수 있다(S456). 즉 이동 경로는 일치하나 다른 모니터링 정보(패킷 전달 시간, 전달된 패킷 사이즈, 트래픽 처리량 등)은 변경될 수 있기 때문에, 연산부(320)는 현재 모니터링 정보(1010)를 저장부(340) 내 데이터 베이스에 저장할 수 있다. And, when the moving path included in the current monitoring information 1010 of the first VPN client 100 matches the moving path included in the previous monitoring information 610 of the first VPN client 100, the calculation unit 320 The current monitoring information 1010 may be stored in a database in the storage unit 340 (S456). That is, since the movement path is identical but other monitoring information (packet delivery time, transmitted packet size, traffic throughput, etc.) can be changed, the calculation unit 320 transfers the current monitoring information 1010 to the database can be stored in

한편, 제2 네트워크 장비(N2)에 장애가 발생하지 않았으며, 라우팅 프로토콜에 의해 데이터 패킷의 이동 경로가 변경된 경우도 아니나, VPN 서버(300)가 판단하기에 이동 경로의 변경이 바람직한 경우가 발생할 수 있다.On the other hand, there may be a case where no failure has occurred in the second network equipment (N2) and it is not the case where the movement route of the data packet has been changed by the routing protocol, but the VPN server 300 determines that a change in the movement route is desirable. there is.

제2 네트워크 장비(N2)에 과부하가 발생하여, 제2 네트워크 장비(N2)로부터 제3 네트워크 장비(N3)로 향하는 링크의 트래픽 처리량이 급격히 감소하는 상황을 그 예시로 들 수 있다.An example of this is a situation in which traffic throughput of a link from the second network equipment N2 to the third network equipment N3 rapidly decreases due to an overload of the second network equipment N2.

따라서, 연산부(320)는 제2 네트워크 장비(N2)로부터 제3 네트워크 장비(N3)로 향하는 링크의 트래픽 처리량이 임계 값보다 작아지는지 판단할 수 있다. 여기서 임계 값은 고정된 값일 수도 있으며, 제2 네트워크 장비(N2)로부터 제3 네트워크 장비(N3)로 향하는 링크의 이전 트래픽 처리량에 기반하여 결정되는 값(예를 들어 이전 트래픽 처리량 들의 평균)일 수도 있다.Accordingly, the calculation unit 320 may determine whether traffic throughput of a link from the second network equipment N2 to the third network equipment N3 is less than a threshold value. Here, the threshold value may be a fixed value, or a value determined based on the previous traffic throughput of the link from the second network equipment N2 to the third network equipment N3 (for example, an average of previous traffic throughputs). there is.

그리고 제2 네트워크 장비(N2)로부터 제3 네트워크 장비(N3)로 향하는 링크의 트래픽 처리량이 임계 값보다 작으면, 연산부(320)는 라우팅 테이블의 갱신 요청을 VPN 망(400)에 전송할 수 있다. 이 경우 라우팅 프로토콜은 라우팅 테이블을 갱신할 수 있으며, 이에 따라 데이터 패킷의 이동 경로가 변경됨으로써 제2 네트워크 장비(N2)의 과부하가 해소될 수 있다.Also, if the traffic throughput of the link from the second network equipment N2 to the third network equipment N3 is less than the threshold value, the calculation unit 320 may transmit a request to update the routing table to the VPN network 400 . In this case, the routing protocol may update the routing table, and accordingly, an overload of the second network equipment N2 may be relieved by changing a moving path of the data packet.

종래에는, VPN망의 종단에 위치하는 VPN 서버나 VPN 클라이언트에 대한 모니터링에 집중할 뿐, 데이터가 실제로 경유하는 네트워크 장비들에 대한 모니터링에 대해서는 정의하고 있지 않았다. 다만 본 발명에 따르면, 실제 데이터 패킷이 경유하는 네트워크 장비들을 직접 모니터링 함으로써, 효율적인 모니터링 및 장애 판단이 가능한 장점이 있다.Conventionally, monitoring of a VPN server or VPN client located at the end of a VPN network has been focused, but monitoring of network equipment through which data actually passes has not been defined. However, according to the present invention, there is an advantage in that efficient monitoring and failure determination are possible by directly monitoring network equipment through which actual data packets pass.

또한 종래에는, VPN 망의 외부에 네트워크 장비를 대상으로 한 관제 시스템을 구축하는 경우, VPN 망를 구성하는 전체 네트워크 장비에 대한 모니터링이 수행되었다. 다만 본 발명에 따르면, 데이터 패킷이 지나가는 이동 경로 상의 네트워크 장비에 대해서만 한정하여 네트워크 관제가 수행되기 때문에, 데이터 센터 내부를 구성하는 네트워크 장비 전체에 대한 모니터링 방식보다 훨씬 효율적이며, 보다 빠른 장애 감지와 품질 이슈에 대한 대응이 가능하다는 장점이 있다.Also, conventionally, when a control system targeting network equipment is built outside the VPN network, monitoring of all network equipment constituting the VPN network has been performed. However, according to the present invention, since network control is performed only for network equipment on the movement path through which data packets pass, it is much more efficient than the monitoring method for the entire network equipment constituting the inside of the data center, faster failure detection and quality control. It has the advantage of being able to respond to issues.

또한 종래에는, VPN 서버 및 VPN 클라이언트에 대한 관제 시스템과 네트워크 장비들에 대한 관제 시스템이 별도로 구축 및 운용되어 매우 비효율적인 문제가 있었다. 다만 본 발명에 따르면, 별도 관제시스템의 개발이나 추가 서버의 증설 없이도, 장애에 대한 빠른 대처, 시스템 구축을 위한 비용 및 시간을 절약할 수 있으며, 상용 VPN 망의 별도 시스템 장비 증설 없이 소프트웨어 모듈 형태로 손쉽게 적용이 가능한 장점이 있다.Also, in the prior art, a control system for VPN servers and VPN clients and a control system for network equipment were separately constructed and operated, resulting in very inefficient problems. However, according to the present invention, it is possible to quickly cope with failures, save cost and time for system construction, without developing a separate control system or expanding additional servers, and can save time and cost for system construction, and can be implemented in the form of software modules without additional system equipment expansion of commercial VPN networks. It has the advantage of being easy to apply.

전술한 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 상기 컴퓨터는 제어부를 포함할 수도 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니 되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.The above-described present invention can be implemented as computer readable code on a medium on which a program is recorded. The computer-readable medium includes all types of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable media include Hard Disk Drive (HDD), Solid State Disk (SSD), Silicon Disk Drive (SDD), ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc. there is Also, the computer may include a control unit. Accordingly, the above detailed description should not be construed as limiting in all respects and should be considered as illustrative. The scope of the present invention should be determined by reasonable interpretation of the appended claims, and all changes within the equivalent scope of the present invention are included in the scope of the present invention.

300: VPN 서버 310: 데이터 수집부
320: 연산부 330: 장애 판단부
340: 저장부
300: VPN server 310: data collection unit
320: calculation unit 330: failure determination unit
340: storage unit

Claims (20)

제1 VPN 클라이언트로부터 전송되어 VPN 망의 복수의 네트워크 장비를 경유한 데이터 패킷을 수신하고, 상기 복수의 네트워크 장비에 의해 상기 데이터 패킷에 삽입된 복수의 상태 정보를 추출하는 데이터 수집부;
상기 복수의 상태 정보를 이용하여 상기 데이터 패킷이 지나온 경로의 모니터링 정보를 획득하는 연산부; 및
상기 모니터링 정보를 이용하여 장애가 발생한 네트워크 장비를 결정하는 장애 판단부;를 포함하는
VPN 서버.
a data collection unit for receiving data packets transmitted from a first VPN client and passing through a plurality of network devices of a VPN network, and extracting a plurality of status information inserted into the data packets by the plurality of network devices;
an operation unit that obtains monitoring information of a path through which the data packet has passed by using the plurality of state information; and
A failure determination unit for determining a network equipment failure using the monitoring information; including
VPN server.
제 1항에 있어서,
상기 수신된 데이터 패킷은,
헤드, 페이로드 및 상기 복수의 상태 정보를 포함하고,
상기 데이터 수집부는,
상기 데이터 패킷으로부터 상기 복수의 상태 정보를 추출하고, 상기 헤드 및 상기 페이로드를 포함하는 데이터 패킷을 목적지인 제2 VPN 클라이언트에 전송하는
VPN 서버.
According to claim 1,
The received data packet,
including a head, a payload, and the plurality of state information;
The data collection unit,
Extracting the plurality of state information from the data packet and transmitting the data packet including the head and the payload to a second VPN client as a destination
VPN server.
제 2항에 있어서,
상기 복수의 상태 정보는,
상기 데이터 패킷이 상기 복수의 네트워크 장비를 경유한 순서에 따라 상기 복수의 네트워크 장비에 의해 순차적으로 삽입되는
VPN 서버.
According to claim 2,
The plurality of state information,
Where the data packets are sequentially inserted by the plurality of network devices according to the order of passing through the plurality of network devices.
VPN server.
제 1항에 있어서,
상기 복수의 상태 정보는,
상기 데이터 패킷이 네트워크 장비를 경유한 순서 정보, 상기 데이터 패킷이 네트워크 장비를 경유한 시점 정보 및 상기 데이터 패킷이 네트워크 장비를 경유한 시점의 누적 패킷 사이즈를 포함하는
VPN 서버.
According to claim 1,
The plurality of state information,
Including sequence information when the data packet passed through the network equipment, time information when the data packet passed through the network equipment, and cumulative packet size at the time when the data packet passed through the network equipment
VPN server.
제 4항에 있어서,
상기 연산부는,
상기 복수의 상태 정보에 각각 포함되는 복수의 순서 정보를 이용하여, 상기 데이터 패킷의 이동 경로를 포함하는 상기 모니터링 정보를 획득하는
VPN 서버.
According to claim 4,
The calculation unit,
Obtaining the monitoring information including a moving path of the data packet by using a plurality of order information included in the plurality of state information, respectively
VPN server.
제 4항에 있어서,
상기 복수의 상태 정보는,
제1 네트워크 장비에 의해 삽입된 제1 상태 정보 및 제2 네트워크 장비에 의해 삽입된 제2 상태 정보를 포함하고,
상기 연산부는,
상기 제2 상태 정보에 포함된 시점 정보 및 상기 제1 상태 정보에 포함된 시점 정보의 차를 이용하여, 상기 제1 네트워크 장비로부터 제2 네트워크 장비로 향하는 링크의 패킷 전달 시간을 포함하는 상기 모니터링 정보를 획득하고,
상기 제2 상태 정보에 포함된 누적 패킷 사이즈 및 상기 제1 상태 정보에 포함된 누적 패킷 사이즈의 차를 이용하여, 상기 링크를 통하여 전달된 패킷 사이즈를 포함하는 상기 모니터링 정보를 획득하는
VPN 서버.
According to claim 4,
The plurality of state information,
including first state information inserted by the first network equipment and second state information inserted by the second network equipment;
The calculation unit,
The monitoring information including a packet transfer time of a link from the first network equipment to the second network equipment using a difference between the time information included in the second state information and the time information included in the first state information. to obtain,
Obtaining the monitoring information including a packet size transmitted through the link using a difference between the cumulative packet size included in the second state information and the accumulated packet size included in the first state information
VPN server.
제 6항에 있어서,
상기 연산부는,
상기 링크의 패킷 전달 시간 및 상기 링크를 통하여 전달된 패킷 사이즈를 이용하여 상기 링크의 트래픽 처리량을 포함하는 상기 모니터링 정보를 획득하는
VPN 서버.
According to claim 6,
The calculation unit,
Obtaining the monitoring information including the traffic throughput of the link using the packet delivery time of the link and the packet size transmitted through the link
VPN server.
제 5항에 있어서,
상기 제1 VPN 클라이언트의 이전 모니터링 정보를 저장하는 저장부;를 더 포함하고,
상기 장애 판단부는,
상기 획득된 모니터링 정보에 포함되는 상기 이동 경로가, 상기 제1 VPN 클라이언트의 이전 모니터링 정보에 포함되는 이전 이동 경로와 상이한 경우, 상기 이전 이동 경로로부터 제외된 네트워크 장비에 ICMP 요청 메시지를 전송하고, 상기 ICMP 요청 메시지에 대한 응답 메시지가 수신되지 않으면 상기 제외된 네트워크 장비에 장애가 발생한 것으로 결정하는
VPN 서버.
According to claim 5,
A storage unit for storing previous monitoring information of the first VPN client;
The disability determination unit,
If the movement path included in the obtained monitoring information is different from the previous movement path included in the previous monitoring information of the first VPN client, an ICMP request message is transmitted to network equipment excluded from the previous movement path; If a response message to the ICMP request message is not received, it is determined that a failure occurred in the excluded network equipment.
VPN server.
제 8항에 있어서,
상기 장애 판단부는,
상기 제외된 네트워크 장비에 장애가 발생한 것으로 결정되는 경우, 상기 이전 모니터링 정보를 상기 저장부에서 삭제하고 상기 획득된 모니터링 정보를 상기 제1 VPN 클라이언트에 대응하는 모니터링 정보로써 저장하는
VPN 서버.
According to claim 8,
The disability determination unit,
When it is determined that a failure has occurred in the excluded network equipment, the previous monitoring information is deleted from the storage unit and the obtained monitoring information is stored as monitoring information corresponding to the first VPN client.
VPN server.
제 1항에 있어서,
상기 데이터 수집부는,
상기 데이터 패킷의 목적지인 제2 VPN 클라이언트로부터 전송되어 상기 VPN 망의 복수의 네트워크 장비를 경유한 제2 데이터 패킷을 수신하고, 복수의 네트워크 장비에 의해 상기 제2 데이터 패킷에 삽입된 복수의 상태 정보를 추출하고,
상기 연산부는,
상기 제2 데이터 패킷에 삽입된 복수의 상태 정보를 이용하여 상기 제2 데이터 패킷이 지나온 경로의 모니터링 정보를 획득하는
VPN 서버.
According to claim 1,
The data collection unit,
Receives a second data packet transmitted from a second VPN client, which is the destination of the data packet, and passes through a plurality of network devices of the VPN network, and receives a plurality of state information inserted into the second data packet by the plurality of network devices extract,
The calculation unit,
Obtaining monitoring information of a path through which the second data packet has passed by using a plurality of status information inserted into the second data packet
VPN server.
제1 VPN 클라이언트로부터 전송되어 VPN 망의 복수의 네트워크 장비를 경유한 데이터 패킷을 수신하는 단계;
상기 복수의 네트워크 장비에 의해 상기 데이터 패킷에 삽입된 복수의 상태 정보를 추출하는 단계;
상기 복수의 상태 정보를 이용하여 상기 데이터 패킷이 지나온 경로의 모니터링 정보를 획득하는 단계; 및
상기 모니터링 정보를 이용하여 장애가 발생한 네트워크 장비를 결정하는 단계;를 포함하는
VPN 서버의 VPN 장애 모니터링 방법.
Receiving a data packet transmitted from a first VPN client and passing through a plurality of network devices of a VPN network;
extracting a plurality of state information inserted into the data packet by the plurality of network equipment;
obtaining monitoring information of a path through which the data packet passed by using the plurality of state information; and
Determining a network device with a failure using the monitoring information; comprising
How to monitor VPN failure of VPN server.
제 11항에 있어서,
상기 수신된 데이터 패킷은,
헤드, 페이로드 및 상기 복수의 상태 정보를 포함하고,
상기 VPN 서버의 VPN 장애 모니터링 방법은,
상기 데이터 패킷으로부터 상기 복수의 상태 정보를 추출한 후, 상기 헤드 및 상기 페이로드를 포함하는 데이터 패킷을 목적지인 제2 VPN 클라이언트에 전송하는 단계;를 더 포함하는
VPN 서버의 VPN 장애 모니터링 방법.
According to claim 11,
The received data packet,
including a head, a payload, and the plurality of state information;
The method for monitoring the VPN failure of the VPN server,
After extracting the plurality of state information from the data packet, transmitting the data packet including the head and the payload to a destination second VPN client; further comprising
How to monitor VPN failure of VPN server.
제 12항에 있어서,
상기 복수의 상태 정보는,
상기 데이터 패킷이 상기 복수의 네트워크 장비를 경유한 순서에 따라 상기 복수의 네트워크 장비에 의해 순차적으로 삽입되는
VPN 서버의 VPN 장애 모니터링 방법.
According to claim 12,
The plurality of state information,
Where the data packets are sequentially inserted by the plurality of network devices according to the order of passing through the plurality of network devices.
How to monitor VPN failure of VPN server.
제 11항에 있어서,
상기 복수의 상태 정보는,
상기 데이터 패킷이 네트워크 장비를 경유한 순서 정보, 상기 데이터 패킷이 네트워크 장비를 경유한 시점 정보 및 상기 데이터 패킷이 네트워크 장비를 경유한 시점의 누적 패킷 사이즈를 포함하는
VPN 서버의 VPN 장애 모니터링 방법.
According to claim 11,
The plurality of state information,
Including sequence information when the data packet passed through the network equipment, time information when the data packet passed through the network equipment, and cumulative packet size at the time when the data packet passed through the network equipment
How to monitor VPN failure of VPN server.
제 14항에 있어서,
상기 모니터링 정보를 획득하는 단계는,
상기 복수의 상태 정보에 각각 포함되는 복수의 순서 정보를 이용하여, 상기 데이터 패킷의 이동 경로를 포함하는 상기 모니터링 정보를 획득하는 단계;를 포함하는
VPN 서버의 VPN 장애 모니터링 방법.
According to claim 14,
Obtaining the monitoring information,
Acquiring the monitoring information including the moving path of the data packet by using a plurality of order information respectively included in the plurality of state information;
How to monitor VPN failure of VPN server.
제 14항에 있어서,
상기 복수의 상태 정보는,
제1 네트워크 장비에 의해 삽입된 제1 상태 정보 및 제2 네트워크 장비에 의해 삽입된 제2 상태 정보를 포함하고,
상기 모니터링 정보를 획득하는 단계는,
상기 제2 상태 정보에 포함된 시점 정보 및 상기 제1 상태 정보에 포함된 시점 정보의 차를 이용하여, 상기 제1 네트워크 장비로부터 제2 네트워크 장비로 향하는 링크의 패킷 전달 시간을 포함하는 상기 모니터링 정보를 획득하는 단계; 및
상기 제2 상태 정보에 포함된 누적 패킷 사이즈 및 상기 제1 상태 정보에 포함된 누적 패킷 사이즈의 차를 이용하여, 상기 링크를 통하여 전달된 패킷 사이즈를 포함하는 상기 모니터링 정보를 획득하는 단계;를 포함하는
VPN 서버의 VPN 장애 모니터링 방법.
According to claim 14,
The plurality of state information,
including first state information inserted by the first network equipment and second state information inserted by the second network equipment;
Obtaining the monitoring information,
The monitoring information including a packet transfer time of a link from the first network equipment to the second network equipment using a difference between the time information included in the second state information and the time information included in the first state information. obtaining; and
obtaining the monitoring information including a packet size transmitted through the link by using a difference between the cumulative packet size included in the second status information and the accumulated packet size included in the first status information; doing
How to monitor VPN failure of VPN server.
제 16항에 있어서,
상기 모니터링 정보를 획득하는 단계는,
상기 링크의 패킷 전달 시간 및 상기 링크를 통하여 전달된 패킷 사이즈를 이용하여 상기 링크의 트래픽 처리량을 포함하는 상기 모니터링 정보를 획득하는 단계;를 더 포함하는
VPN 서버의 VPN 장애 모니터링 방법.
According to claim 16,
Obtaining the monitoring information,
Acquiring the monitoring information including the traffic throughput of the link using the packet delivery time of the link and the packet size transmitted through the link; further comprising
How to monitor VPN failure of VPN server.
제 15항에 있어서,
상기 모니터링 정보를 이용하여 장애가 발생한 네트워크 장비를 결정하는 단계는,
상기 획득된 모니터링 정보에 포함되는 상기 이동 경로가, 상기 제1 VPN 클라이언트의 이전 모니터링 정보에 포함되는 이전 이동 경로와 상이한 경우, 상기 이전 이동 경로로부터 제외된 네트워크 장비에 ICMP 요청 메시지를 전송하는 단계; 및
상기 ICMP 요청 메시지에 대한 응답 메시지가 수신되지 않으면 상기 제외된 네트워크 장비에 장애가 발생한 것으로 결정하는 단계;를 포함하는
VPN 서버의 VPN 장애 모니터링 방법.
According to claim 15,
The step of determining the network equipment in which failure occurs using the monitoring information,
sending an ICMP request message to network equipment excluded from the previous movement path, when the moving path included in the obtained monitoring information is different from the previous moving path included in the previous monitoring information of the first VPN client; and
If a response message to the ICMP request message is not received, determining that a failure has occurred in the excluded network equipment; comprising
How to monitor VPN failure of VPN server.
제 18항에 있어서,
상기 모니터링 정보를 이용하여 장애가 발생한 네트워크 장비를 결정하는 단계는,
상기 제외된 네트워크 장비에 장애가 발생한 것으로 결정되는 경우, 상기 이전 모니터링 정보를 상기 저장부에서 삭제하는 단계; 및
상기 획득된 모니터링 정보를 상기 제1 VPN 클라이언트에 대응하는 모니터링 정보로써 저장하는 단계;를 더 포함하는
VPN 서버의 VPN 장애 모니터링 방법.
According to claim 18,
The step of determining the network equipment in which failure occurs using the monitoring information,
deleting the previous monitoring information from the storage unit when it is determined that a failure has occurred in the excluded network equipment; and
Storing the obtained monitoring information as monitoring information corresponding to the first VPN client; further comprising
How to monitor VPN failure of VPN server.
제 11항에 있어서,
상기 데이터 패킷의 목적지인 제2 VPN 클라이언트로부터 전송되어 상기 VPN 망의 복수의 네트워크 장비를 경유한 제2 데이터 패킷을 수신하는 단계;
복수의 네트워크 장비에 의해 상기 제2 데이터 패킷에 삽입된 복수의 상태 정보를 추출하는 단계; 및
상기 제2 데이터 패킷에 삽입된 복수의 상태 정보를 이용하여 상기 제2 데이터 패킷이 지나온 경로의 모니터링 정보를 획득하는 단계;를 더 포함하는
VPN 서버의 VPN 장애 모니터링 방법.
According to claim 11,
receiving a second data packet transmitted from a second VPN client serving as a destination of the data packet and passing through a plurality of network devices of the VPN network;
extracting a plurality of state information inserted into the second data packet by a plurality of network equipment; and
Acquiring monitoring information of a path through which the second data packet has passed by using a plurality of state information inserted into the second data packet; further comprising
How to monitor VPN failure of VPN server.
KR1020210083278A 2021-06-25 2021-06-25 Vpn server and vpn failure monitoring method of vpn server KR20230000760A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210083278A KR20230000760A (en) 2021-06-25 2021-06-25 Vpn server and vpn failure monitoring method of vpn server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210083278A KR20230000760A (en) 2021-06-25 2021-06-25 Vpn server and vpn failure monitoring method of vpn server

Publications (1)

Publication Number Publication Date
KR20230000760A true KR20230000760A (en) 2023-01-03

Family

ID=84924747

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210083278A KR20230000760A (en) 2021-06-25 2021-06-25 Vpn server and vpn failure monitoring method of vpn server

Country Status (1)

Country Link
KR (1) KR20230000760A (en)

Similar Documents

Publication Publication Date Title
US11659035B2 (en) Routing messages between cloud service providers
US9497126B2 (en) Communication device and communication method
CN105262683B (en) Network system and route control method
EP2544417B1 (en) Communication system, path control apparatus, packet forwarding apparatus and path control method
US8369229B2 (en) Methods for monitoring delivery performance of a packet flow between reference nodes
CN108777646B (en) Flow monitoring method and device
WO2011030889A1 (en) Communication system, forwarding node, path management server, communication method, and program
WO2012053540A1 (en) Communication system, control apparatus, configuration method for processing rules, and program
US20130258898A1 (en) Computer system, controller, controller manager and communication route analysis method
JP5871063B2 (en) Multi-tenant system, switch, controller, and packet transfer method
JPWO2011049019A1 (en) COMMUNICATION SYSTEM, FLOW CONTROL DEVICE, FLOW TABLE UPDATE METHOD AND PROGRAM
CN113489646B (en) VXLAN-based segmented route transmission method, server, source node and storage medium
WO2012081721A1 (en) Communication system, node, packet transfer method and program
JP4068545B2 (en) Packet receiving method and apparatus
JP5672836B2 (en) COMMUNICATION DEVICE, COMMUNICATION METHOD, AND COMMUNICATION PROGRAM
KR102212603B1 (en) Internet access system of providing dualized connection for mobile network and broadband network, and method for the same
KR20230000760A (en) Vpn server and vpn failure monitoring method of vpn server
JP7035771B2 (en) Packet acquisition device, packet acquisition method, and packet acquisition program
JP6718739B2 (en) Communication device and communication method
KR102220636B1 (en) Method for frame communication with gate and node field added
JP2003244251A (en) Packet communication method for reconfiguring tunnel path
JP2006050433A (en) Traffic monitoring apparatus, communication network traffic monitoring system and monitoring method
US6721314B1 (en) Method and apparatus for applying once-only processing in a data network
JP7164140B2 (en) COMMUNICATION ANALYSIS DEVICE, COMMUNICATION ANALYSIS METHOD AND PROGRAM
CN117499274A (en) Flow monitoring method, device, equipment and medium based on elastic public network IP

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E902 Notification of reason for refusal