KR102123831B1 - Method for internal network connection in external network through keep alive trunking and apparatus thereof - Google Patents

Method for internal network connection in external network through keep alive trunking and apparatus thereof Download PDF

Info

Publication number
KR102123831B1
KR102123831B1 KR1020180173553A KR20180173553A KR102123831B1 KR 102123831 B1 KR102123831 B1 KR 102123831B1 KR 1020180173553 A KR1020180173553 A KR 1020180173553A KR 20180173553 A KR20180173553 A KR 20180173553A KR 102123831 B1 KR102123831 B1 KR 102123831B1
Authority
KR
South Korea
Prior art keywords
keep
alive
cloud server
iot device
trunking
Prior art date
Application number
KR1020180173553A
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 KR1020180173553A priority Critical patent/KR102123831B1/en
Application granted granted Critical
Publication of KR102123831B1 publication Critical patent/KR102123831B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/143Termination or inactivation of sessions, e.g. event-controlled end of session
    • H04L67/145Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2582NAT traversal through control of the NAT server, e.g. using universal plug and play [UPnP]

Abstract

The present invention relates to a method for accessing an internal network in an external network through keep-alive trunking and an apparatus thereof. More particularly, the present invention is to provide a method and an apparatus for reducing traffic generated in a large amount due to transmission of individual keep-alive packets from an external server to all Internet of things (IoT) devices in a specific section by collecting all the keep-alive packets used to maintain sessions between external servers and the various IoT devices in the section in a private network environment using a home gateway and sending all the packets at once.

Description

킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 방법 및 그 장치{METHOD FOR INTERNAL NETWORK CONNECTION IN EXTERNAL NETWORK THROUGH KEEP ALIVE TRUNKING AND APPARATUS THEREOF}METHOD FOR INTERNAL NETWORK CONNECTION IN EXTERNAL NETWORK THROUGH KEEP ALIVE TRUNKING AND APPARATUS THEREOF}

본 발명은 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 방법 및 그 장치에 관한 것으로, 더욱 상세하게는 홈 게이트웨이를 사용하는 사설망 환경에서 외부의 서버들과 구내에 구비된 각종 IoT 기기 간에 세션을 유지하기 위해 사용되는 킵 얼라이브 패킷을 모두 모아서 한 번에 전송함으로써, 외부 서버에서 특정 구내의 모든 IoT 기기로 개별적인 킵 얼라이브 패킷을 전송함에 따라 대량으로 발생하는 트래픽을 줄일 수 있도록 하는 방법 및 그 장치를 제공하기 위한 것이다.The present invention relates to a method and apparatus for accessing an internal network in an external network through keep-alive trunking, and more specifically, to establish a session between external servers and various IoT devices provided in the premises in a private network environment using a home gateway. A method and apparatus for reducing the traffic occurring in a large amount by transmitting individual keep alive packets from external servers to all IoT devices in a specific premises by collecting and sending all keep alive packets used for maintenance It is to provide.

일반적으로 킵 얼라이브 절차는 종단장치(서버, 클라이언트)들 간의 세션을 항상 유지하기 위해서 페이로드(Payload)가 없는 패킷을 주기적으로 보내는 것으로서, 지정된 시간동안 서로 패킷교환이 없거나 킵 얼라이브 패킷에 반응이 없으면 접속을 끊는다.In general, the keep-alive procedure is to periodically send packets without payload to maintain a session between end devices (servers and clients). If there is no packet exchange with each other for a specified period of time or there is no response from the keep-alive packets Disconnect.

이러한 킵 얼라이브를 사용하는 주된 이유는 종단장치 중의 하나가 통신이 불가능한 상태인지를 감지하여 한 쪽만 열린 연결 상태를 정리함으로써, 불필요한 동작을 막을 뿐 아니라, 상대방으로부터 언제 올지 모르는 이벤트 패킷을 항상 받을 수 있도록 세션을 유지시켜 두기 위해서이다.The main reason for using keep-alive is to detect whether one of the end devices is in a state where communication is impossible, and to clean up the open connection state on only one side, which not only prevents unnecessary actions, but also ensures that you always receive event packets from the other party that do not know when to come. This is to keep the session.

이때 세션 연결 상대측의 응답 지연은 응답메시지를 만드는데 많은 시간이 걸리는 경우, 시스템 사정으로 연결 상대측이 연결을 닫거나 다시 부팅을 하는 경우, 라우터가 고장나거나 케이블 연결이 끊긴 경우 등 다양한 상황이 있을 수 있다.At this time, the response delay of the session connection partner may take a lot of time to create a response message, there may be a variety of situations, such as when the connection partner closes or reboots due to system circumstances, the router is broken, or the cable is disconnected.

또한 일반적인 킵 얼라이브 동작은 OS의 지원을 받거나 응용 프로토콜에서 직접 기능을 구현하여 사용할 수 있다.In addition, the general keep-alive operation can be used with OS support or by implementing a function directly in the application protocol.

예를 들어, TCP 패킷을 전송하는 경우 킵 얼라이브 옵션을 상황에 맞게 설정하여 사용할 수 있다. 즉 리눅스 OS의 경우는 setsockopt()를 사용하여 소켓 옵션(SO_KEEPALIVE) 설정시키면 tcp_keepalive_interval로 지정된 시간 동안 연결이 유휴 상태가 유지된다면 킵 얼라이브 탐색 패킷을 자동으로 보낸다.For example, when sending a TCP packet, the keep alive option can be set and used according to the situation. In other words, in the case of the Linux OS, if the socket option (SO_KEEPALIVE) is set using setsockopt(), a keep-alive search packet is automatically sent if the connection remains idle for the time specified by tcp_keepalive_interval.

일반적인 소켓통신은 응답 메시지가 수신될 때까지 또는 tcp_ip_abort_interval로 지정된 시간이 다 경과할 때까지 세션을 유지해야 하며, 이때 킵 얼라이브 옵션이 설정되어 있다면 tcp_keepalive_interval로 지정된 시간 동안 연결이 유휴 상태가 유지되면 킵 얼라이브 탐색 패킷을 보낸다.In normal socket communication, the session must remain until the response message is received or until the time specified by tcp_ip_abort_interval has elapsed. If the keep alive option is set, keep alive if the connection remains idle for the time specified by tcp_keepalive_interval. Send a search packet.

킵 얼라이브 시간은 tcp_rexmit_interval 시간 보다는 커야 하나, 상대방의 tcp_ip_abort_interval 시간 보다는 작아야 한다.Keep-alive time should be greater than tcp_rexmit_interval time, but less than opponent's tcp_ip_abort_interval time.

또한 HTTP 프로토콜의 킵 얼라이브는 OS의 도움 없이 응용 프로토콜 자체에서 관리하는데, 클라이언트가 서버로 주어진 시간에 요청을 계속 하게 되면 커넥션을 연장하고 만약 그렇지 않을 경우 서버에서 커넥션을 끊는 방식으로 동작하며, 매번 커넥션을 생성하면 성능이 떨어지기 때문에 이를 방지할 목적으로 주로 사용한다.In addition, keep-alive of the HTTP protocol is managed by the application protocol itself without the help of the OS. If the client continues to make a request at a given time to the server, the connection is extended, and if not, the connection is disconnected from the server. It is mainly used for the purpose of preventing this, since the performance decreases when it is generated.

그러나, 상술한 바와 같은 킵 얼라이브 동작을 구현하는 방식은, 주로 공인 IP를 사용하는 네트워크 환경은 물론, IP를 공유하는 NAT(Network Address Translation) 장치를 사용하는 사설망 환경에서 내외부망의 모든 서버와 구내의 모든 IoT 기기가 일대일 세션을 항상 유지하여야 하기 때문에, 특정 구내의 모든 IoT 기기가 항상 대기상태로 되어야 하므로 전력 소비가 늘어나고, 이에 따라 배터리 관리를 용이하게 수행할 수 없는 문제가 있었다.However, the method of implementing the keep-alive operation as described above, mainly in a network environment using a public IP, as well as in a private network environment using a NAT (Network Address Translation) device sharing the IP, all servers and premises in the network Since all of the IoT devices of the device must maintain a one-to-one session all the time, all IoT devices in a specific premises have to be always in a standby state, thereby increasing power consumption, and thus there is a problem that battery management cannot be easily performed.

이러한 구내에 구비된 모든 IoT 기기에서의 전력 소비가 늘어나는 문제를 해결하기 위한 선행기술로서, 미국공개특허 US 2011/0286373호(2011.11.24.)가 있다.As a prior art for solving the problem of increasing power consumption in all IoT devices provided in the premises, there is US Patent Publication No. US 2011/0286373 (2011.11.24.).

상기 선행기술은 NAT 연결 상태 킵 얼라이브의 비용 절감(COST REDUCTION OF NAT CONNECTION STATE KEEP-ALIVE)에 관한 것으로서, IP 공유 환경의 사설망내 장치와 외부 장치간의 세션 연결이 IP 공유기(즉 홈 게이트웨이)를 통해 이루어지면 종단장치 구간의 TTL(Time To Live)값과 NAT 타입을 계산하여 외부로부터 들어오는 킵 얼라이브 프로브 패킷의 TTL값을 IP 공유기까지만 도달시킨다. 이렇게 외부 장치로부터 킵 얼라이브 프로브 메시지가 계속 유입되면 외부 장치(서버)-IP 공유기-내부 장치간의 세션 테이블은 지속될 수 있게 되어 종단 간 세션도 계속 유지된다. 동시에 단말기 쪽으로 킵 얼라이브 횟수를 줄여 주기 때문에 단말기(특히 무선장치)의 동작 전원을 절약하는 동시에 내부망에서 불필요한 패킷의 흐름을 줄일 수 있다.The above prior art relates to cost reduction of NAT connection state keep-alive (COST REDUCTION OF NAT CONNECTION STATE KEEP-ALIVE), and a session connection between a device in a private network and an external device in an IP sharing environment through an IP router (i.e. a home gateway). When done, the TTL (Time To Live) value of the end device section and the NAT type are calculated to reach the TTL value of the keep-alive probe packet coming from the outside to the IP router only. If the keep-alive probe message continuously flows from the external device, the session table between the external device (server)-the IP router and the internal device can be maintained, so that the end-to-end session is also maintained. At the same time, since the number of keep-alives is reduced toward the terminal, it is possible to save the operating power of the terminal (especially the wireless device) and reduce the flow of unnecessary packets in the internal network.

상기 선행기술은 중간 장치인 IP 공유기 내부에 별도의 킵 얼라이브 프록시 서버를 내장시키지 않고 기능을 수행할 수 장점이 있으며, 서버 방향으로 킵 얼라이브 응답이 적시에 가지 못해도 서버 스스로 본 세션을 닫지만 않는다면 외부 장치(서버)-IP 공유기-내부 장치간 세션은 소멸되지 않는다.The above prior art has the advantage of being able to perform a function without embedding a separate keep-alive proxy server inside the IP router, which is an intermediate device, and if the keep-alive response to the server does not go in a timely manner, the server does not close the session itself. The session between the device (server)-IP router-internal device is not destroyed.

그러나 상기 선행기술과 같이 TTL값과 NAT 타입을 계산하여 외부로부터 들어오는 킵 얼라이브 프로브 패킷의 TTL값을 IP 공유기까지만 도달시키는 방식은, 클라우드 IoT 서비스가 활발해지면서 홈 내부의 여러 개의 IoT 기기들을 외부의 하나의 클라우드 서버로 연결시켜 사용하는 경우, 외부 서버에서 구내 각각의 IoT 기기들로 오가는 킵 얼라이브 패킷 수가 증가하게 되며, 복수의 구내를 담당하는 클라우드 서버의 킵 얼라이브 패킷 처리에 대한 부담이 가중되는 문제점이 발생하였다.However, as in the prior art, the method of calculating the TTL value and the NAT type and reaching the TTL value of the keep-alive probe packet coming from the outside to the IP sharer, as the cloud IoT service becomes active, multiple IoT devices inside the home are external one. When connecting and using the cloud server, the number of keep alive packets going from the external server to each IoT device in the premises increases, and the burden of processing the keep alive packet of the cloud server in charge of multiple premises is increased. Occurred.

따라서 본 발명에서는 상기 선행기술에서와 같이 외부 서버가 구내의 모든 IoT 기기의 숫자만큼 개별적인 킵 얼라이브 패킷을 홈 게이트웨이로 전송함에 따른 대량의 트래픽이 발생하는 문제를 해결하기 위한 것으로서, 홈 게이트웨이를 사용하는 사설망 환경에서 외부의 서버들과 구내에 구비된 각종 IoT 기기 간에 세션을 유지하기 위해 사용되는 킵 얼라이브 패킷을 모두 모아서 한 번에 홈 게이트웨이로 전송하고, 홈 게이트웨이에서 별도의 애플리케이션 프로그램을 통해서 홈 게이트웨이에 접속된 구내의 각종 IoT 기기의 세션 관리를 수행할 수 있는 방법 및 그 장치를 제공하고자 한다.Therefore, in the present invention, as in the prior art, as an external server, to solve a problem in which a large amount of traffic occurs as a result of sending individual keep-alive packets to the home gateway by the number of all IoT devices in the premises, using a home gateway In a private network environment, keep alive packets used to maintain a session between external servers and various IoT devices provided in the premises are collected and transmitted to the home gateway at a time, and from the home gateway to the home gateway through a separate application program. It is intended to provide a method and a device capable of performing session management of various IoT devices in a connected premises.

특히, 본 발명은 외부 서버와 홈 게이트웨이 사이에서 특정 구내의 모든 IoT 기기로 개별적인 킵 얼라이브 패킷을 전송함에 따라 발생하는 트래픽을 줄일 수 있으며, 이를 통해 네트워크와 통신장비(즉 클라우드 서버, 홈 게이트웨이 등)의 동작부하를 줄이면서 외부망에서 내부망으로 항상 원격 접속이 가능하도록 한다.In particular, the present invention can reduce the traffic generated by transmitting individual keep-alive packets to all IoT devices in a specific premises between the external server and the home gateway, through which the network and communication equipment (ie cloud server, home gateway, etc.) While reducing the operating load of, it is possible to always connect remotely from the external network to the internal network.

본 발명은 상기와 같은 문제점을 해결하기 위해 창작된 것으로서, 홈 게이트웨이를 사용하는 사설망 환경에서 외부의 서버들과 구내에 구비된 각종 IoT 기기 간에 세션을 유지하기 위해 사용되는 킵 얼라이브 패킷을 모두 모아서 한 번에 전송(trunking)함으로써, 외부 서버에서 특정 구내의 모든 IoT 기기로 개별적인 킵 얼라이브 패킷을 전송함에 따라 발생하는 대량의 트래픽을 줄이고, 네트워크와 통신장비의 동작부하를 줄이며, 외부망에서 내부망으로 항상 원격 접속이 가능하도록 하는 방법 및 그 장치를 제공하는 것을 목적으로 한다.The present invention was created to solve the above problems, and collects all keep alive packets used to maintain a session between external servers and various IoT devices provided in the premises in a private network environment using a home gateway. By trunking at a time, a large amount of traffic generated by transmitting individual keep-alive packets from an external server to all IoT devices in a specific premises is reduced, and the operation load of the network and communication equipment is reduced. It is an object of the present invention to provide a method and apparatus for making remote access possible at all times.

또한 본 발명은 외부 서버와 구내의 각종 IoT 기기 간에 흐르는 수 많은 킵 얼라이브 프로브(하트비트) 패킷들의 흐름 수를 줄여서 망과 기기의 동작부하를 줄이는 동시에, 각 IoT 기기의 배터리 수명을 연장시킬 수 있도록 하는 방법 및 그 장치를 제공하는 것을 다른 목적으로 한다.In addition, the present invention reduces the number of flows of a number of keep-alive probe (heartbeat) packets flowing between the external server and various IoT devices in the premises, thereby reducing the operation load of the network and the device, and extending the battery life of each IoT device. Another object is to provide a method and apparatus for the same.

또한 본 발명은 홈 게이트웨이에서 프록시를 통해 구내의 IoT 기기에서 외부 서버로 로그인 등 다양한 방식으로 패킷 흐름을 개시하면 이를 추적하여, 한 번 개시된 세션을 통해 외부 서버에서 상시적이면서 일관성 있게 원격 접속을 수행할 수 있도록 하는 방법 및 그 장치를 제공하는 것을 또 다른 목적으로 한다.In addition, the present invention tracks packet flows in various ways, such as login from an IoT device in the premises to an external server through a proxy at a home gateway, and tracks them in a variety of ways to perform constant and consistent remote access from external servers through a session once initiated Another object is to provide a method and apparatus for making it possible.

본 발명의 일 실시예에 따른 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 방법은, 적어도 하나 이상의 IoT 기기가 접속된 홈 게이트웨이에서, 각각의 IoT 기기와 클라우드 서버 간의 로그인 요청과 응답을 토대로 NAT 테이블을 생성하는 NAT 테이블 생성 단계, 상기 홈 게이트웨이에서, 상기 클라우드 서버로부터 각각의 IoT 기기별 킵 얼라이브 요청 메시지를 킵 얼라이브 트렁킹 패킷으로 전송받는 킵 얼라이브 요청 수신 단계, 및 상기 홈 게이트웨이에서, 상기 생성한 NAT 테이블 정보를 참조하여 상기 클라우드 서버로 상기 킵 얼라이브 요청 메시지에 대한 응답을 수행하는 킵 얼라이브 응답 단계를 포함하는 것을 특징으로 한다.An internal network access method in an external network through keep-alive trunking according to an embodiment of the present invention is NAT based on a login request and response between each IoT device and a cloud server in a home gateway to which at least one IoT device is connected NAT table generation step of generating a table, in the home gateway, a keep alive request receiving step of receiving a keep alive request message for each IoT device from the cloud server as a keep alive trunking packet, and in the home gateway, the generated And a keep alive response step of performing a response to the keep alive request message to the cloud server with reference to NAT table information.

또한 상기 킵 얼라이브 트렁킹 패킷은, 상기 클라우드 서버에서 각각의 IoT 기기와의 세션 유지를 위한 킵 얼라이브 패킷들을 하나로 모은 것으로서, 각각의 IoT 기기별 포트 번호, 킵 얼라이브 주기시간 정보 또는 이들의 조합을 포함한 페이로드 정보를 포함하는 것을 특징으로 한다.In addition, the keep-alive trunking packet is a collection of keep-alive packets for maintaining a session with each IoT device in the cloud server, and includes a port number for each IoT device, a keep-alive cycle time information, or a combination thereof. It characterized by including the load information.

또한 상기 방법은, 상기 홈 게이트웨이에서, 상기 홈 게이트웨이에 접속된 각각의 IoT 기기와 기 설정된 주기에 따라 세션이 유지되고 있음을 확인하고, 상기 확인한 정보를 토대로 NAT 테이블을 갱신하는 NAT 테이블 갱신 단계를 더 포함하는 것을 특징으로 한다.In addition, the method may include, in the home gateway, confirming that a session is maintained according to a predetermined period with each IoT device connected to the home gateway, and updating the NAT table based on the checked information. Characterized in that it further comprises.

또한 상기 NAT 테이블 갱신 단계는, 상기 홈 게이트웨이에서, 상기 각각의 IoT 기기에서 상기 클라우드 서버로 향하는 킵 얼라이브 패킷에 대하여, 상기 홈 게이트웨이와 상기 클라우드 서버 간의 킵 얼라이브 상태값을 토대로 상기 클라우드 서버를 대신하여 자체적으로 킵 얼라이브 응답을 상기 각각의 IoT 기기로 전송함으로써, 상기 클라우드 서버와 상기 홈 게이트웨이 사이에 진행되어야 하는 킵 얼라이브 횟수를 줄일 수 있는 것을 특징으로 한다.In addition, the NAT table update step, on the basis of the keep-alive state value between the home gateway and the cloud server, for the keep-alive packet from each IoT device to the cloud server in the home gateway, on behalf of the cloud server. It is characterized in that it is possible to reduce the number of keep alives to be performed between the cloud server and the home gateway by transmitting the keep alive responses to the respective IoT devices.

또한 상기 방법은, 상기 홈 게이트웨이에 설치되는 애플리케이션 프로그램인 킵 얼라이브 대행 장치를 통해서, 상기 각각의 IoT 기기별 ID, IP 어드레스, 포트 번호, 킵 얼라이브 주기시간 정보 또는 이들의 조합을 포함한 NAT 테이블의 관리를 수행하며, 상기 클라우드 서버의 상기 각각의 IoT 기기별 킵 얼라이브 요청에 따라 상기 각각의 IoT 기기로의 킵 얼라이브 포워딩 없이 상기 NAT 테이블 정보를 토대로 킵 얼라이브 응답을 수행하는 것을 특징으로 한다.In addition, the method may manage the NAT table including the ID, IP address, port number, keep-alive cycle time information, or a combination of the IoT devices for each IoT device through an application program installed in the home gateway. And performing a keep alive response based on the NAT table information without keep alive forwarding to each IoT device according to the keep alive request for each IoT device of the cloud server.

아울러, 본 발명의 일 실시예에 따른 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 장치는, 각각의 IoT 기기와 클라우드 서버 간의 로그인 요청과 응답을 토대로 NAT 테이블을 생성하는 NAT 테이블 관리부, 상기 클라우드 서버로부터 각각의 IoT 기기별 킵 얼라이브 요청 메시지를 킵 얼라이브 트렁킹 패킷으로 전송받아 확인하는 킵 얼라이브 요청 확인부, 및 상기 생성한 NAT 테이블 정보를 참조하여 상기 클라우드 서버로 상기 킵 얼라이브 요청 메시지에 대한 응답을 수행하는 킵 얼라이브 응답부를 포함하는 것을 특징으로 한다.In addition, the internal network access device in the external network through keep-alive trunking according to an embodiment of the present invention, a NAT table management unit for generating a NAT table based on a login request and response between each IoT device and a cloud server, the cloud A keep alive request confirmation unit for receiving and confirming a keep alive request message for each IoT device in a keep alive trunking packet from a server, and a response to the keep alive request message to the cloud server by referring to the generated NAT table information Characterized in that it comprises a keep alive response unit to perform.

또한 상기 장치는, 상기 각각의 IoT 기기가 접속된 홈 게이트웨이에 실장된 애플리케이션 프로그램인 것을 특징으로 한다.In addition, the device is characterized in that the application program mounted on the home gateway to which each IoT device is connected.

또한 상기 킵 얼라이브 트렁킹 패킷은, 상기 클라우드 서버에서 각각의 IoT 기기와의 세션 유지를 위한 킵 얼라이브 패킷들을 하나로 모은 것으로서, 각각의 IoT 기기별 포트 번호, 킵 얼라이브 주기시간 정보 또는 이들의 조합을 포함한 페이로드 정보를 포함하는 것을 특징으로 한다.In addition, the keep-alive trunking packet is a collection of keep-alive packets for maintaining a session with each IoT device in the cloud server, and includes a port number for each IoT device, a keep-alive cycle time information, or a combination thereof. It characterized by including the load information.

또한 상기 NAT 테이블 관리부는, 상기 각각의 IoT 기기와 기 설정된 주기에 따라 세션이 유지되고 있음을 확인하고, 상기 확인한 정보를 토대로 NAT 테이블을 갱신하는 것을 더 포함하는 것을 특징으로 한다.In addition, the NAT table management unit, it characterized in that it further comprises confirming that the session is maintained according to each IoT device and a predetermined period, and updating the NAT table based on the checked information.

또한 상기 NAT 테이블 관리부는, 상기 NAT 테이블을 갱신할 때, 상기 각각의 IoT 기기에서 상기 클라우드 서버로 향하는 킵 얼라이브 패킷에 대하여, 상기 홈 게이트웨이와 상기 클라우드 서버 간의 킵 얼라이브 상태값을 토대로 상기 클라우드 서버를 대신하여 자체적으로 킵 얼라이브 응답을 상기 각각의 IoT 기기로 전송함으로써, 상기 클라우드 서버와 상기 홈 게이트웨이 사이에 진행되어야 하는 킵 얼라이브 횟수를 줄일 수 있는 것을 특징으로 한다.In addition, when updating the NAT table, the NAT table management unit, based on the keep-alive status value between the home gateway and the cloud server, for the keep-alive packet from each IoT device to the cloud server. Instead, it is possible to reduce the number of keep alives to be performed between the cloud server and the home gateway by sending the keep alive responses to the respective IoT devices.

또한 상기 장치는, 상기 각각의 IoT 기기별 ID, IP 어드레스, 포트 번호, 킵 얼라이브 주기시간 정보 또는 이들의 조합을 포함한 NAT 테이블의 관리를 수행하며, 상기 클라우드 서버의 상기 각각의 IoT 기기별 킵 얼라이브 요청에 따라 상기 각각의 IoT 기기로의 킵 얼라이브 포워딩 없이 상기 NAT 테이블 정보를 토대로 킵 얼라이브 응답을 수행하는 것을 특징으로 한다.In addition, the device performs management of the NAT table including each IoT device ID, IP address, port number, keep alive cycle time information, or a combination thereof, and keeps alive for each IoT device of the cloud server. It is characterized by performing a keep alive response based on the NAT table information without keep alive forwarding to each IoT device according to a request.

이상에서와 같이 본 발명의 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 방법 및 그 장치에 따르면, 홈 게이트웨이를 사용하는 사설망 환경에서 외부의 서버들과 구내에 구비된 각종 IoT 기기 간에 세션을 유지하기 위해 사용되는 킵 얼라이브 패킷을 모두 모아서 한 번에 전송하기 때문에, 외부 서버에서 특정 구내의 모든 IoT 기기로 개별적인 킵 얼라이브 패킷을 전송함에 따라 발생하는 트래픽을 현저하게 줄일 수 있고, 이에 따라 네트워크와 통신장비의 동작부하를 줄일 수 있으며, 외부망에서 내부망으로 항상 원격 접속이 가능한 효과가 있다.As described above, according to the method and apparatus for accessing an internal network in an external network through keep-alive trunking of the present invention, in a private network environment using a home gateway, a session is maintained between external servers and various IoT devices provided in the premises. Since all of the keep alive packets used to do so are collected and transmitted at once, traffic generated by transmitting individual keep alive packets from an external server to all IoT devices in a specific premises can be significantly reduced, thereby communicating with the network. The operation load of the equipment can be reduced, and there is an effect that a remote connection is always possible from the external network to the internal network.

또한 본 발명은 킵 얼라이브 트렁킹을 이용하여 외부망에서의 내부망 접속을 원활하게 처리할 수 있기 때문에, 구내의 각종 IoT 기기가 접속되는 홈 게이트웨이의 관리를 손쉽게 수행할 수 있는 효과가 있다.In addition, since the present invention can smoothly process the internal network connection from the external network using keep-alive trunking, there is an effect that can easily manage the home gateway to which various IoT devices in the premises are connected.

도 1은 홈 게이트웨이가 관여하지 않는 P2P 방식 킵 얼라이브 처리과정을 설명하기 위한 도면이다.
도 2는 홈 게이트웨이를 경유하는 클라우드 서버와 내부 IoT 기기 사이의 세션 생성과 유지를 위한 킵 얼라이브 절차를 설명하기 위한 도면이다.
도 3은 사용자 단말기가 클라우드 서버를 통해 구내의 IoT 기기에 원격으로 접속하는 방안을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 장치를 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 홈 게이트웨이에 설치되는 킵 얼라이브 대행 장치의 구성을 보다 상세하게 나타낸 도면이다.
도 6은 본 발명의 일 실시예에 따른 클라우드 서버의 구성을 보다 상세하게 나타낸 도면이다.
도 7은 본 발명의 일 실시예에 따른 홈 게이트웨이에 설치되는 킵 얼라이브 대행 장치에서의 킵 얼라이브 트렁킹 처리를 통한 비동기 처리 과정을 설명하기 위한 도면이다.
도 8은 본 발명의 다른 실시예에 따른 홈 게이트웨이에 설치되는 킵 얼라이브 대행 장치에서의 킵 얼라이브 트렁킹 처리를 설명하기 위한 도면이다.
1 is a diagram for explaining a P2P method keep-alive process in which a home gateway is not involved.
2 is a view for explaining a keep-alive procedure for creating and maintaining a session between a cloud server via a home gateway and an internal IoT device.
3 is a diagram for explaining a method for a user terminal to remotely access an IoT device in the premises through a cloud server.
4 is a view for explaining an internal network access device in an external network through keep-alive trunking according to an embodiment of the present invention.
5 is a view showing in more detail the configuration of the keep-alive agent installed in the home gateway according to an embodiment of the present invention.
6 is a view showing in more detail the configuration of a cloud server according to an embodiment of the present invention.
7 is a view for explaining an asynchronous process through keep alive trunking processing in a keep alive proxy device installed in a home gateway according to an embodiment of the present invention.
8 is a view for explaining keep alive trunking processing in a keep alive proxy device installed in a home gateway according to another embodiment of the present invention.

이하, 첨부한 도면을 참조하여 본 발명의 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 방법 및 그 장치에 대한 바람직한 실시 예를 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다. 또한 본 발명의 실시 예들에 대해서 특정한 구조적 내지 기능적 설명들은 단지 본 발명에 따른 실시 예를 설명하기 위한 목적으로 예시된 것으로, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는 것이 바람직하다.Hereinafter, a preferred embodiment of a method and apparatus for connecting an internal network in an external network through keep-alive trunking of the present invention will be described in detail with reference to the accompanying drawings. The same reference numerals in each drawing denote the same members. In addition, specific structural or functional descriptions of the embodiments of the present invention are exemplified for the purpose of describing the embodiments according to the present invention, and unless defined otherwise, all terms used herein, including technical or scientific terms. They have the same meaning as those generally understood by those of ordinary skill in the art. Terms such as those defined in a commonly used dictionary should be interpreted as having meanings consistent with meanings in the context of related technologies, and should not be interpreted as ideal or excessively formal meanings unless explicitly defined herein. It is desirable not to.

도 1은 홈 게이트웨이가 관여하지 않는 P2P 방식 킵 얼라이브 처리과정을 설명하기 위한 도면이며, 도 2는 홈 게이트웨이를 경유하는 클라우드 서버와 내부 IoT 기기 사이의 세션 생성과 유지를 위한 킵 얼라이브 절차를 설명하기 위한 도면이다.1 is a diagram for explaining a P2P method keep-alive process in which a home gateway is not involved, and FIG. 2 is a description of a keep-alive procedure for creating and maintaining a session between a cloud server via the home gateway and an internal IoT device. It is for drawing.

도 1에 도시된 바와 같이, 우선 홈 게이트웨이에 접속된 구내의 각 IoT 기기에서 원격의 클라우드 서버로 로그인 요청을 수행하면 상기 클라우드 서버는 이에 대한 응답을 수행하며, 이 과정에서 홈 게이트웨이는 NAT 테이블을 생성한다. 이때 도 1에서는 상기 IoT 기기가 3개인 것을 예로 하여 설명하지만, 이에 한정되지 않으며 훨씬 많은 수의 IoT 기기가 사용될 수 있다.As illustrated in FIG. 1, first, when each IoT device in the premises connected to the home gateway performs a login request to a remote cloud server, the cloud server performs a response to this, and in this process, the home gateway uses a NAT table. To create. At this time, in FIG. 1, three IoT devices will be described as an example, but the present invention is not limited thereto, and a much larger number of IoT devices may be used.

또한 상기 클라우드 서버는 상기 각각의 IoT 기기와 세션을 유지하기 위하여 각각의 IoT 기기로 킵 얼라이브를 요청하고, 상기 홈 게이트웨이는 상기 클라우드 서버로부터 요청한 킵 얼라이브를 각각의 IoT 기기로 포워딩한 다음, 각각의 IoT 기기의 킵 얼라이브 응답을 상기 클라우드 서버로 전송함으로써, 상기 클라우드 서버와 각각의 IoT 기기 간에 세션을 항상 유지하도록 한다. 즉 클라우드 서버와 각 IoT 기기간의 메시지를 상호 전달하여 그 연결성을 유지하도록 하는 것이다.In addition, the cloud server requests keep-alive to each IoT device to maintain a session with each IoT device, and the home gateway forwards the keep-alive request from the cloud server to each IoT device, and then By sending the keep-alive response of the IoT device to the cloud server, a session is always maintained between the cloud server and each IoT device. That is, the message is transmitted between the cloud server and each IoT device to maintain the connectivity.

이와 같은 킵 얼라이브 요청 및 응답 과정에서 상기 홈 게이트웨이는 로그인 요청 및 응답 과정에서 생성해 둔 NAT 테이블을 지속적으로 갱신한다.In the keep-alive request and response process, the home gateway continuously updates the NAT table created in the login request and response process.

하지만 이러한 종래의 킵 얼라이브 처리는 상기 클라우드 서버와 IoT 기기 사이에 세션을 항상 유지하여야 하기 때문에, 홈 게이트웨이에 접속된 구내의 모든 IoT 기기가 항상 대기상태가 되어 전력 소비량이 늘어날 수밖에 없으며, 이로 인해서 각각의 IoT 기기의 배터리 관리가 어려운 문제점이 있었다.However, since such a conventional keep-alive process must always maintain a session between the cloud server and the IoT device, all the IoT devices in the premises connected to the home gateway are always in a standby state, which increases the power consumption, which causes each to increase. Battery management of IoT devices had a difficult problem.

또한 구내에 설치된 각각의 IoT 기기의 배터리 소모 문제를 해결하기 위해서 TTL값과 NAT 타입을 계산하여 외부로부터 들어오는 킵 얼라이브 프로브 패킷의 TTL값을 IP 공유기인 홈 게이트웨이까지 도달하는 방식을 적용하였지만, 이 방식 또한 클라우드 서버에서 구내의 각 IoT 기기들과 주고받는 킵 얼라이브 패킷 수가 증가하여 대량의 트래픽이 발생하는 문제점이 있었다.Also, in order to solve the battery consumption problem of each IoT device installed in the premises, a method of calculating the TTL value and NAT type and applying the TTL value of the keep-alive probe packet coming from the outside to the home gateway, which is an IP sharer, was applied. In addition, there was a problem in that a large amount of traffic occurs due to an increase in the number of keep-alive packets exchanged with each IoT device in the cloud server.

한편, 원격의 클라우드 서버에서 구내에 설치된 각종 IoT 기기를 항시 일관성 있게 제어하는 명령이나 실행 명령을 전달하기 위해서는 상기 클라우드 서버와 IoT 기기 사이에 하나의 세션을 만들고 이 세션을 항상 유지하여야 한다.On the other hand, in order to deliver commands or execution commands for consistently controlling various IoT devices installed in the premises at a remote cloud server, one session must be created between the cloud server and the IoT device, and this session must always be maintained.

이때 상기 IoT 기기는 밸브, 서보기기, 경보기, 조명, 스위치, 냉난방기, 도어록, 각종 센서 등이며, 상기 클라우드 서버로부터 제어 명령이나 실행 명령을 받아 구동한다.At this time, the IoT devices are valves, servo devices, alarms, lights, switches, air conditioners, door locks, and various sensors, and are driven by receiving control or execution commands from the cloud server.

또한 NAT 또는 NAPT 방식 홈 게이트웨이는 기본적으로 외향(Out-Bound) 패킷이 있어야만 이 세션을 통해 원격의 클라우드 서버에서 내부의 IoT 기기로 내향 패킷이 입력될 수 있으나, 가상 서버와 같은 포트 포워딩 기법을 이용하면 외향 세션의 발생 유무에 관계없이 원격접속 세션을 만들 수 있다. 그러나 이러한 포트 포워딩 기법은 수작업으로 설정을 해야 하는 번거로움이 있다.In addition, NAT or NAPT type home gateways basically require out-bound packets to allow inbound packets from remote cloud servers to internal IoT devices through this session, but use port forwarding techniques such as virtual servers. If you do, you can create a remote access session with or without an outgoing session. However, there is a hassle of manually configuring the port forwarding technique.

도 2에 도시된 바와 같이, 상기 클라우드 서버와 구내에 설치된 각각의 IoT 기기 사이의 세션을 자동으로 생성하고 유지하기 위해서는 외향 패킷으로 세션을 생성하고 나서, 킵 얼라이브 패킷을 사용하여 클라우드 서버, 홈 게이트웨이 및 각 IoT 기기로 연결되는 세션이 타임아웃되지 않도록 유지시켜야 한다.As shown in FIG. 2, in order to automatically create and maintain a session between the cloud server and each IoT device installed in the premises, a session is created with an outbound packet, and then a keep server is used to keep the cloud server and home gateway. And the session connected to each IoT device should not be timed out.

특히, 로그인 과정에서 만들어진 홈 게이트웨이의 NAPT 테이블(IP/포트 포워딩 테이블)에 동적으로 생성된 서비스 포트 번호의 수명은 대략 600초 정도로 제한적이기 때문에 외부의 클라우드 서버에서 내부의 IoT 기기로 무작위 시간에 패킷을 송신하려면 반드시 인바운드 또는 아웃바운드 패킷이 제한된 시간 안에 킵 얼라이브되고 있어야 한다.In particular, since the service port number dynamically generated in the home gateway's NAPT table (IP/port forwarding table) created during the login process is limited to approximately 600 seconds, packets are sent from external cloud servers to internal IoT devices at random times. In order to send, inbound or outbound packets must be kept alive within a limited time.

본 발명에서는 외부의 클라우드 서버와 내부의 IoT 기기 사이의 세션 생성은 기존의 NAPT 메커니즘을 준수하되, 세션을 유지하기 위한 킵 얼라이브 방식을 기존 P2P 방식에서 종단장치가 수행하던 킵 얼라이브 동작을 중간 네트워크 장치인 홈 게이트웨이에 실장된 킵 얼라이브 대행 장치를 통해서 수행하고자 한다.(하기 도 4 참조)In the present invention, the session creation between the external cloud server and the internal IoT device complies with the existing NAPT mechanism, but the keep-alive method for maintaining the session is an intermediate network device that performs the keep-alive operation performed by the end device in the existing P2P method. It is intended to be performed through a keep-alive agent installed in the in-home gateway. (See FIG. 4 below)

기본적으로 본 발명에서 제안하는 킵 얼라이브 프록시 서비스는 구내에 설치된 복수의 IoT 기기들이 외부의 클라우드 서버로 패킷이 집중되는 경우에 적합하다. 예를 들어 n개의 내부 IoT 기기들과 외부 한 대의 클라우드 서버 간에 존재하는 1:n 킵 얼라이브 프로브 패킷을 하나로 묶어서 한꺼번에 처리하는 방식으로 본 발명에서는 킵 얼라이브 트렁킹 처리 방식이라 하고 설명하고자 한다.Basically, the keep-alive proxy service proposed by the present invention is suitable for a case where a plurality of IoT devices installed in the premises are concentrated with packets to an external cloud server. For example, a 1:n keep alive probe packet that exists between n internal IoT devices and an external cloud server is bundled and processed at a time. In the present invention, a keep alive trunking processing method will be described.

한편, 홈 게이트웨이에 접속된 구내에 설치된 각각의 IoT 기기와 외부 클라우드 서버 간의 P2P 세션을 처음 형성하는 방법과 원격 접속 방법의 일 예를 도 3을 참조하여 설명하면 다음과 같다.Meanwhile, an example of a method of initially forming a P2P session between each IoT device installed in a premises connected to a home gateway and an external cloud server and a remote access method will be described with reference to FIG. 3 as follows.

도 3은 사용자 단말기가 클라우드 서버를 통해 구내의 IoT 기기에 원격으로 접속하는 방안을 설명하기 위한 도면이다.3 is a diagram for explaining a method for a user terminal to remotely access an IoT device in the premises through a cloud server.

도 3에 도시된 바와 같이, 스마트 홈 앱(APP)이 설치된 사용자 단말기로 구내에 설치된 각각의 IoT 기기에 원격 접속을 수행하는 경우, 상기 사용자 단말기는 관련 서비스 포트번호를 클라우드 서버로부터 취득한다.As shown in FIG. 3, when performing a remote connection to each IoT device installed in the premises with a user terminal on which a smart home app (APP) is installed, the user terminal acquires a related service port number from a cloud server.

이후 상기 사용자 단말기에서 상기 클라우드 서버로부터 취득한 서비스 포트번호로 원격 접속을 시도하면, 홈 게이트웨이는 별다른 어려움 없이 홈 내부로 접속이 가능해 진다.Thereafter, if the user terminal attempts remote access to the service port number obtained from the cloud server, the home gateway can access the home without much difficulty.

하지만 이 경우도 클라우드 서버와 구내에 설치된 각각의 IoT 기기 사이에는 지속적인 킵 얼라이브를 통해 서비스 포트가 유지되고 있어야 원격 접속이 가능하다는 것을 나타내고 있다.However, even in this case, it indicates that remote access is possible only when the service port is maintained through continuous keep alive between the cloud server and each IoT device installed in the premises.

이상에서와 같이, 본 발명은 기존의 문제점인 외부 클라우드 서버에서 특정 구내의 모든 IoT 기기로 개별적인 킵 얼라이브 패킷을 전송함에 따라 발생하는 대량의 트래픽을 감소시키기 위해서, 홈 게이트웨이를 사용하는 사설망 환경에서 킵 얼라이브 트렁킹 방식을 적용하여 외부의 클라우드 서버들과 구내에 구비된 각종 IoT 기기 간에 세션을 유지하기 위해 사용되는 킵 얼라이브 패킷을 모두 모아서 한 번에 홈 게이트웨이로 전송하고, 상기 홈 게이트웨이에 설치되는 특정 프로그램 또는 애플리케이션(하기 도 4 및 도 5의 킵 얼라이브 대행 장치)을 통해서 상기 한 번에 전송되는 킵 얼라이브 트렁킹 패킷을 관리하여 클라우드 서버에서 홈 게이트웨이에 접속된 구내의 각종 IoT 기기로 원격 접속을 용이하게 수행할 수 있는 방법 및 그 장치를 제공하기 위한 것이다.As described above, the present invention, in order to reduce a large amount of traffic generated by transmitting individual keep-alive packets from an external cloud server, which is an existing problem, to all IoT devices in a specific premises, keep in a private network environment using a home gateway. By applying the live trunking method, all keep alive packets used to maintain a session between external cloud servers and various IoT devices provided in the premises are collected and transmitted to a home gateway at a time, and a specific program installed in the home gateway Alternatively, the keep-alive trunking packet transmitted at one time through the application (keep-alive agent in FIGS. 4 and 5 below) is managed to facilitate remote access from cloud servers to various IoT devices in the premises connected to the home gateway. It is intended to provide a method and apparatus capable of being performed.

이를 통해서, 홈 게이트웨이(IP 공유기) 내외부 간에 흐르는 수 많은 킵 얼라이브 프로브(하트비트) 패킷들의 흐름 수를 줄여서 네트워크와 통신장비의 동작부하를 줄이는 것은 물론, 내부의 각종 IoT 기기의 배터리 수명을 높이면서 외부망에서 내부망으로 항상 원격 접속이 가능하도록 하는 것이 본 발명의 주요한 특징이다.Through this, the number of keep-alive probe (heartbeat) packets flowing between the inside and outside of the home gateway (IP router) is reduced to reduce the operation load of the network and communication equipment, and also increases the battery life of various IoT devices inside. It is a main feature of the present invention to always allow remote access from an external network to an internal network.

도 4는 본 발명의 일 실시예에 따른 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 장치를 설명하기 위한 도면이다.4 is a view for explaining an internal network access device in an external network through keep-alive trunking according to an embodiment of the present invention.

도 4에 도시된 바와 같이, 본 발명의 장치는 홈 게이트웨이(100), 킵 얼라이브 대행 장치(200), 클라우드 서버(300), IoT 기기(400), 데이터베이스(500) 등을 포함하여 구성된다.As shown in FIG. 4, the device of the present invention includes a home gateway 100, a keep-alive agent 200, a cloud server 300, an IoT device 400, a database 500, and the like.

상기 홈 게이트웨이(100)는 유무선 네트워크의 구내망과 각종 디지털 가입자 회선, 케이블 등의 가입자 액세스망을 상호 접속하거나 중계하는 장치로서, 내부에 애플리케이션 프로그램 형태의 킵 얼라이브 대행 장치(200)가 구비되어 있다.The home gateway 100 is a device that interconnects or relays an access network of a wired/wireless network and a subscriber access network such as various digital subscriber lines and cables, and an keep-alive device 200 in the form of an application program is provided therein. .

상기 킵 얼라이브 대행 장치(200)는 상기 각각의 IoT 기기(400)가 접속된 상기 홈 게이트웨이(100)에 실장된 애플리케이션 프로그램으로서, 상기 킵 얼라이브 대행 장치(200)는 독립적인 구성으로 제작되어 상기 홈 게이트웨이(100)에 접속하여 사용할 수도 있다.The keep alive proxy device 200 is an application program mounted on the home gateway 100 to which each IoT device 400 is connected, and the keep alive proxy device 200 is manufactured in an independent configuration and the home It may also be used to access the gateway 100.

또한 상기 킵 얼라이브 대행 장치(200)는 상기 홈 게이트웨이(100) 내에 구비되고, 네트워크를 통해 다수의 클라우드 서버(300)와 통신을 수행하며, 상기 클라우드 서버(300)가 요청하는 세션에 대해서 킵 얼라이브 절차를 대행하는 기능을 수행한다.In addition, the keep alive proxy device 200 is provided in the home gateway 100, performs communication with a plurality of cloud servers 300 through a network, and keeps alive for sessions requested by the cloud server 300. Performs the function of proxying the procedure.

특히 상기 킵 얼라이브 대행 장치(200)는 외부의 상기 클라우드 서버(300)와 내부의 상기 복수의 IoT 기기(400)간 킵 얼라이브 패킷을 비동기적으로 처리하는 것을 원칙으로 한다. 또한 상기 홈 게이트웨이(100)에 접속되어 있는 상기 각각의 IoT 기기(400)는 기본적으로 서비스 포트를 항상 열고 리스닝을 하고 있기 때문에, 본 발명에서는 굳이 상기 홈 게이트웨이(100)에서 내부망에 접속되어 있는 각각의 IoT 기기(400)로 킵 얼라이브로 세션을 유지할 것을 알릴 필요가 없다.In particular, the keep alive proxy device 200 in principle is to process the keep alive packet asynchronously between the external cloud server 300 and the plurality of IoT devices 400 inside. In addition, since each IoT device 400 connected to the home gateway 100 basically opens and listens to a service port, in the present invention, the home gateway 100 is connected to the internal network. There is no need to inform each IoT device 400 to keep a session with keep alive.

즉 상기 킵 얼라이브 대행 장치(200)는 상기 각각의 IoT 기기(400)와 상기 클라우드 서버(300) 간의 로그인 요청과 응답을 토대로 NAT 테이블을 생성하고, 상기 클라우드 서버(300)로부터 각각의 IoT 기기(400)별 킵 얼라이브 요청 메시지를 킵 얼라이브 트렁킹 패킷으로 전송받고, 킵 얼라이브 패킷을 내부망에 접속되어 있는 각각의 IoT 기기(400)로 포워딩하지 않고 기 생성하여 관리중인 NAT 테이블 정보를 참조하여 상기 클라우드 서버(300)로 상기 킵 얼라이브 요청 메시지에 대한 응답을 수행한다.(도 7 참조)That is, the keep-alive agent 200 generates a NAT table based on a login request and a response between each IoT device 400 and the cloud server 300, and each IoT device from the cloud server 300 ( 400) Each keep-alive request message is transmitted as a keep-alive trunking packet, and the keep-alive packet is not generated and forwarded to each IoT device 400 connected to the internal network, but is generated and managed with reference to the managed NAT table information to the cloud The server 300 performs a response to the keep alive request message (see FIG. 7).

이때 상기 킵 얼라이브 트렁킹 패킷은 상기 클라우드 서버(300)에서 각각의 IoT 기기(400)와의 세션 유지를 위한 킵 얼라이브 패킷들을 하나로 모아 전송하는 패킷을 말한다. 또한 상기 NAT 테이블은 상기 각각의 IoT 기기(400)별 ID, IP 어드레스, 포트 번호, 킵 얼라이브 주기시간 정보 또는 이들의 조합을 포함한 정보이다.In this case, the keep-alive trunking packet refers to a packet that collects and transmits keep-alive packets for maintaining a session with each IoT device 400 in the cloud server 300. In addition, the NAT table is information including ID, IP address, port number, keep alive cycle time information for each IoT device 400, or a combination thereof.

보다 구체적으로 설명하면, 상기 킵 얼라이브 대행 장치(200)는 상기 복수의 IoT 기기(400)와 상기 클라우드 서버(300) 간의 로그인 요청과 응답을 토대로 NAT 테이블을 생성한 후, 상기 클라우드 서버(300)로부터 킵 얼라이브 패킷들은 모두 한 번에 트렁크되어 하나의 메시지로 전송받는다. 이때 구내망에 킵 얼라이브가 필요한 IoT 기기(400)가 n개라면 상기 하나의 메시지에는 n개 이하의 IoT 기기(400)에 대한 킵 얼라이브 요청 내용이 들어 있다. 이때 종래에 사용하였던 일반적인 일대일 킵 얼라이브 패킷은 페이로드 정보가 없지만, 본 발명에 적용되는 킵 얼라이브 패킷에는 각각의 IoT 기기(400)별 포트 번호, 킵 얼라이브 주기시간 정보 또는 이들의 조합을 포함한 페이로드 정보를 포함할 수 있다.In more detail, the keep alive proxy device 200 generates a NAT table based on a login request and a response between the plurality of IoT devices 400 and the cloud server 300, and then the cloud server 300 Keep-alive packets from are all trunked at one time and received as a single message. At this time, if there are n IoT devices 400 that need keep alive in the premises network, the one message contains the content of keep alive requests for n or less IoT devices 400. At this time, the general one-to-one keep alive packet used in the past does not have payload information, but the keep alive packet applied to the present invention includes a payload including a port number for each IoT device 400, keep alive cycle time information, or a combination thereof. Information may be included.

또한 상기 킵 얼라이브 대행 장치(200)는 내부망에 접속되어 있는 복수의 IoT 기기(400)와 홈 게이트웨이(100) 사이의 링크가 유지되고 있음을 항시 확인해 두고, 이를 근거로 하여 상기 클라우드 서버(300)로부터 전송받은 킵 얼라이브 요청 메시지에 대한 응답을 수행한다.In addition, the keep alive proxy device 200 always confirms that the link between the plurality of IoT devices 400 connected to the internal network and the home gateway 100 is maintained, and based on this, the cloud server 300 ) To respond to the keep alive request message sent from.

또한 상기 킵 얼라이브 대행 장치(200)는 상기 복수의 IoT 기기(400)에서 상기 클라우드 서버(300)로 향하는 킵 얼라이브 패킷에 대해서도, 상기 홈 게이트웨이(100)와 상기 클라우드 서버(300) 간의 링크 유지 상태값에 근거하여 자체적으로 상기 클라우드 서버(300)를 대신하여 응답을 상기 복수의 IoT 기기(400)로 전송할 수 있으며, 이러한 방식을 통해서 상기 클라우드 서버(300)와 상기 복수의 IoT 기기(400) 간에 진행되어야 하는 킵 얼라이브 횟수를 줄일 수 있다.Also, the keep alive proxy device 200 maintains a link between the home gateway 100 and the cloud server 300 for keep alive packets directed from the plurality of IoT devices 400 to the cloud server 300. On the basis of the value, a response may be transmitted to the plurality of IoT devices 400 on behalf of the cloud server 300, and between the cloud server 300 and the plurality of IoT devices 400 may be transmitted through this method. It can reduce the number of keep alives that need to be done.

또한 상기 복수의 IoT 기기(400)는 기본적으로 리스닝 포트를 항상 열고 있으므로, 상기 킵 얼라이브 대행 장치(200)의 프록시 기능을 이용하면 내부의 불필요한 킵 얼라이브 메시지를 줄일 수 있고, 동작 소모 전력을 줄일 수 있는 장점이 있다.In addition, since the plurality of IoT devices 400 basically always open a listening port, the proxy function of the keep alive proxy device 200 can reduce unnecessary keep alive messages and reduce power consumption of operation. There is an advantage.

또한 상기 킵 얼라이브 대행 장치(200)는 외부의 클라우드 서버(300)와의 킵 얼라이브 요청 및 응답에 따른 NAT 테이블 갱신을 위한 시간 관리를 수행하는 타이머와 내부의 각각의 IoT 기기(400) 간의 킵 얼라이브 갱신 및 응답에 따른 NAT 테이블 갱신을 위한 시간 관리를 수행하는 타이머를 각각 구비하여 운영할 수 있다. 이때 상기 킵 얼라이브 대행 장치(200)는 두 가지 타이머가 모두 만기된 세션만을 상기 홈 게이트웨이(100)에서 제거시키기 때문에 세션을 항시 유지시키는 경우가 많아서, 원격접속을 위한 재 로그인해야 하는 이벤트를 줄이고, 또한 외부의 제3의 기기(스마트폰 앱(APP))가 언제든지 직접 내부망에 접속되어 있는 상기 각각의 IoT 기기(400)로 원격 접속 서비스 세션을 사용할 수 있다는 장점이 있다.In addition, the keep alive proxy device 200 updates the keep alive between the timer and the IoT device 400 inside the timer for performing time management for updating the NAT table according to the request and response to the keep alive with the external cloud server 300. And a timer for performing time management for updating the NAT table according to the response, respectively. At this time, the keep alive agent device 200 often maintains a session at all times because both timers remove only expired sessions from the home gateway 100, thereby reducing the event of re-login for remote access, In addition, there is an advantage that a remote access service session can be used with each of the IoT devices 400 that are connected to the internal network at any time by an external third device (smartphone app (APP)).

한편 상기 킵 얼라이브 대행 장치(200)는 킵 얼라이브 패킷을 비동기적으로 처리하는 방식 이외에, 상기 클라우드 서버(300)로부터 킵 얼라이브 패킷이 오면 이때마다 이를 내부망에 접속되어 있는 상기 복수의 IoT 기기(400)로 포워딩시키고, 상기 복수의 IoT 기기(400)로부터 전송되는 응답에 따라 이를 상기 클라우드 서버(300)로 일괄적으로 전달하는 방식으로 작동할 수 있다.(도 8 참조) 하지만 이와 같은 방식은 불필요한 킵 얼라이브 패킷의 흐름을 유발할 수 있으며, 상기 복수의 IoT 기기(400)의 배터리 소모를 증가할 수 있으므로 권장되는 동작 방식은 아님을 밝혀둔다.On the other hand, the keep alive proxy device 200, in addition to the method of processing the keep alive packet asynchronously, whenever a keep alive packet comes from the cloud server 300, the plurality of IoT devices 400 connected to the internal network at this time ), and may be operated in a manner to collectively deliver it to the cloud server 300 according to the response transmitted from the plurality of IoT devices 400. (See FIG. 8) However, such a method is unnecessary. It is noted that it is not a recommended operation method since it may cause a flow of keep-alive packets and may increase battery consumption of the plurality of IoT devices 400.

또한 상기 킵 얼라이브 대행 장치(200)는 상기 홈 게이트웨이(100)가 일반적인 프록시 기능이 없는 경우 NAT 또는 NAPT 테이블의 개별 포트 정보의 유지 시간이 유한(대략 600초)하기 때문에 최소한 이 유한 시간 이내에 한 번씩 킵 얼라이브를 수행하여 외부망과 내부망으로 연결되는 세션을 상기 홈 게이트웨이(100)의 NAPT 테이블로 유지시켜야 하지만, 필요한 경우 상기 클라우드 서버(300)를 통해 NAT 또는 NAPT의 포트 수명을 크게 키우는 등의 제어가 가능하므로 킵 얼라이브의 횟수를 조절할 수 있다.In addition, the keep-alive agent 200 is at least once within this finite time because the retention time of the individual port information of the NAT or NAPT table is finite (approximately 600 seconds) when the home gateway 100 has no general proxy function. By performing keep alive, the session connected to the external network and the internal network must be maintained as the NAPT table of the home gateway 100, but if necessary, the port life of NAT or NAPT is greatly increased through the cloud server 300. Since control is possible, the number of keep alives can be adjusted.

또한 상기 킵 얼라이브 대행 장치(200)는 상기 클라우드 서버(300)의 요청(대칭적으로 내부에 접속된 복수의 IoT 기기(400)의 요청에 의해서도 가능함)에 의해 특정 세션에 대한 유지 요청을 수행할 때, 상기 홈 게이트웨이(100)에 있는 가상 서버나 포트포워딩 ALG 프로그램이나 uPnP(universal plug and play)에 의한 자원 요청과 동일한 효과를 주기 때문에 사용자가 번거롭게 IoT 기기를 설치할 때 마다 웹 UI를 열어서 원격접속 서비스를 구성해야 하는 번거로움을 해소시킬 수 있다.In addition, the keep alive agent device 200 may perform a maintenance request for a specific session by a request of the cloud server 300 (symmetrically also possible by a request of a plurality of IoT devices 400 connected therein). When the virtual server or the port forwarding ALG program in the home gateway 100 has the same effect as the resource request by uPnP (universal plug and play), the web UI is opened and accessed remotely whenever the user installs the IoT device cumbersomely. This eliminates the hassle of configuring services.

상기 클라우드 서버(300)는 일반적으로 통칭되는 웹서버를 포함하는 것으로서, 상기 각각의 IoT 기기(400)별 킵 얼라이브 요청 메시지를 킵 얼라이브 트렁킹 패킷으로 상기 킵 얼라이브 대행 장치(200)로 전송하며, 상기 킵 얼라이브 대행 장치(200)로부터 제공되는 킵 얼라이브 요청 메시지에 대한 응답을 토대로 상기 각각의 IoT 기기(400)와의 킵 얼라이브를 처리한다.The cloud server 300 includes a commonly referred web server, and transmits a keep alive request message for each IoT device 400 as a keep alive trunking packet to the keep alive proxy device 200, and Based on the response to the keep alive request message provided from the keep alive proxy device 200, the keep alive with each IoT device 400 is processed.

상기 복수의 IoT 기기(400)는 내부망을 통해 상기 홈 게이트웨이(100)에 접속되는 밸브, 서보기기, 경보기, 조명, 스위치, 냉난방기, 도어록, 각종 센서 등으로서, 상기 홈 게이트웨이(100)를 통해 상기 클라우드 서버(300)로부터 제어 명령이나 실행 명령을 받아 구동한다.The plurality of IoT devices 400 are valves, servo devices, alarms, lights, switches, air conditioners, door locks, and various sensors connected to the home gateway 100 through an internal network, through the home gateway 100 The cloud server 300 receives and operates a control command or an execution command.

상기 데이터베이스(500)는 상기 홈 게이트웨이(100), 상기 킵 얼라이브 대행 서버(200) 및 상기 클라우드 서버(300)에서 사용하는 각종 동작프로그램의 저장, 관리 및 업데이트를 수행한다.The database 500 stores, manages, and updates various operation programs used in the home gateway 100, the keep-alive agent server 200, and the cloud server 300.

도 5는 본 발명의 일 실시예에 따른 홈 게이트웨이에 설치되는 킵 얼라이브 대행 장치(200)의 구성을 보다 상세하게 나타낸 도면이다.5 is a view showing in more detail the configuration of the keep alive agent 200 installed in the home gateway according to an embodiment of the present invention.

도 5에 도시된 바와 같이, 상기 킵 얼라이브 대행 장치(200)는 상기 각각의 IoT 기기(400)가 접속된 상기 홈 게이트웨이(100)에 실장된 애플리케이션 프로그램으로서, NAT 테이블 관리부(210), 통신부(220), 킵 얼라이브 요청 확인부(230), 킵 얼라이브 응답부(240), 제1 타이머(250), 제2 타이머(260), 메모리(270) 등을 포함하여 구성된다.As shown in FIG. 5, the keep alive proxy device 200 is an application program mounted on the home gateway 100 to which each IoT device 400 is connected, a NAT table management unit 210, a communication unit ( 220), a keep alive request confirmation unit 230, a keep alive response unit 240, a first timer 250, a second timer 260, a memory 270, and the like.

또한 상기 킵 얼라이브 대행 장치(200)는 도면에 도시하지는 않았지만, 각 구성 부분에 동작전원을 공급하는 전원부, 각종 기능에 대한 데이터 입력을 위한 입력부, 각종 동작프로그램의 업데이트를 관리하는 업데이트 관리부 등을 추가로 포함할 수 있다.In addition, although the keep-alive agent 200 is not shown in the drawings, a power supply unit for supplying operating power to each component, an input unit for data input for various functions, an update management unit for managing updates of various operation programs, etc. are added. It can contain as.

상기 NAT 테이블 관리부(210)는 상기 각각의 IoT 기기(400)와 상기 클라우드 서버(300) 간의 로그인 요청과 응답을 토대로 NAT 테이블을 생성하고, 상기 NAT 테이블을 상기 메모리(270)에 저장하여 관리한다.The NAT table management unit 210 generates a NAT table based on a login request and response between each IoT device 400 and the cloud server 300, and stores the NAT table in the memory 270 for management. .

또한 상기 NAT 테이블 관리부(210)는 상기 각각의 IoT 기기(400)와 기 설정된 주기에 따라 세션이 유지되고 있음을 확인하고, 상기 확인한 정보를 토대로 NAT 테이블을 갱신할 수 있다.In addition, the NAT table management unit 210 may confirm that the session is maintained according to each IoT device 400 and a preset period, and update the NAT table based on the checked information.

이때 상기 NAT 테이블에는 상기 각각의 IoT 기기(400)별 ID, IP 어드레스, 포트 번호, 킵 얼라이브 주기시간 정보 또는 이들의 조합을 포함한 정보가 포함될 수 있다.In this case, the NAT table may include information including ID, IP address, port number, keep alive cycle time information for each IoT device 400, or a combination thereof.

한편 상기 NAT 테이블 관리부(210)는 상기 각각의 IoT 기기(400)에서 상기 클라우드 서버(300)로 향하는 킵 얼라이브 패킷에 대하여, 상기 홈 게이트웨이(100)와 상기 클라우드 서버(300) 간의 킵 얼라이브 상태값을 토대로 상기 클라우드 서버(300)를 대신하여 자체적으로 킵 얼라이브 응답을 상기 각각의 IoT 기기(400)로 전송할 수 있다. 이에 따라 상기 클라우드 서버(300)와 상기 홈 게이트웨이(100) 사이에 진행되어야 하는 킵 얼라이브 횟수를 줄일 수 있다.Meanwhile, the NAT table management unit 210 keeps a keep alive state value between the home gateway 100 and the cloud server 300 for a keep alive packet directed from the IoT device 400 to the cloud server 300. Based on the basis of the cloud server 300, the keep-alive response can be transmitted to each IoT device 400 itself. Accordingly, the number of keep alives to be performed between the cloud server 300 and the home gateway 100 can be reduced.

상기 통신부(220)는 상기 클라우드 서버(300)로부터 각각의 IoT 기기(400)별 킵 얼라이브 요청 메시지를 킵 얼라이브 트렁킹 패킷으로 전송받아 상기 킵 얼라이브 요청 확인부(230)로 전달한다.The communication unit 220 receives the keep alive request message for each IoT device 400 from the cloud server 300 in a keep alive trunking packet and transmits the keep alive request message to the keep alive request confirmation unit 230.

이때 상기 킵 얼라이브 트렁킹 패킷은 상기 클라우드 서버(300)에서 각각의 IoT 기기(400)와의 세션 유지를 위한 킵 얼라이브 패킷들을 하나로 모은 패킷이다. 또한 상기 킵 얼라이브 트렁킹 패킷에는 상기 각각의 IoT 기기(400)별 포트 번호, 킵 얼라이브 주기시간 정보 또는 이들의 조합을 포함한 페이로드 정보가 포함될 수 있다.In this case, the keep-alive trunking packet is a packet of keep-alive packets for maintaining a session with each IoT device 400 in the cloud server 300. Also, the keep-alive trunking packet may include port numbers for each IoT device 400, pay-alive information including keep-alive cycle time information, or a combination thereof.

또한 상기 통신부(220)는 상기 킵 얼라이브 응답부(240)의 제어를 통해 상기 킵 얼라이브 요청 메시지에 대한 응답 신호를 상기 클라우드 서버(300)로 전송한다. 이때 상기 응답 신호는 상기 킵 얼라이브 요청 메시지와 마찬가지로 킵 얼라이브 트렁킹 패킷으로 전송할 수 있다.In addition, the communication unit 220 transmits a response signal to the keep alive request message to the cloud server 300 through the control of the keep alive response unit 240. At this time, the response signal may be transmitted as a keep alive trunking packet, similar to the keep alive request message.

상기 킵 얼라이브 요청 확인부(230)는 상기 통신부(220)를 통해 상기 클라우드 서버(300)로부터 각각의 IoT 기기(400)별 킵 얼라이브 요청 메시지를 킵 얼라이브 트렁킹 패킷으로 전송받아 확인하는 기능을 수행한다.The keep alive request confirmation unit 230 performs a function of receiving and confirming a keep alive request message for each IoT device 400 from the cloud server 300 as a keep alive trunking packet through the communication unit 220. .

상기 킵 얼라이브 응답부(240)는 상기 킵 얼라이브 요청 확인부(230)에서 확인한 각각의 IoT 기기(400)별 킵 얼라이브 요청 메시지에 대한 응답 신호를 생성하여 상기 통신부(220)를 통해 상기 클라우드 서버(300)로 전송하도록 한다.The keep alive response unit 240 generates a response signal for a keep alive request message for each IoT device 400 checked by the keep alive request confirmation unit 230 to generate a response signal for the cloud server through the communication unit 220 ( 300).

즉 상기 킵 얼라이브 응답부(240)는 상기 NAT 테이블 관리부(210)에서 생성하여 관리중인 NAT 테이블 정보를 참조하여, 상기 클라우드 서버(300)로 상기 킵 얼라이브 요청 메시지에 대한 응답을 수행하는 것이다.That is, the keep alive response unit 240 refers to the NAT table information generated and managed by the NAT table management unit 210 and performs a response to the keep alive request message to the cloud server 300.

이때 상기 킵 얼라이브 응답부(240)는 상기 클라우드 서버(300)의 상기 각각의 IoT 기기(400)별 킵 얼라이브 요청에 따라 상기 각각의 IoT 기기(400)로의 킵 얼라이브 포워딩 없이 상기 메모리(270)에 저장된 NAT 테이블 정보를 토대로 킵 얼라이브 응답을 수행하는 것이 바람직하다.At this time, the keep-alive response unit 240 is in the memory 270 without keep-alive forwarding to each IoT device 400 according to the keep-alive request for each IoT device 400 of the cloud server 300. It is desirable to perform a keep alive response based on the stored NAT table information.

상기 제1 타이머(250)는 상기 킵 얼라이브 대행 장치(200)에서 상기 클라우드 서버(300)와의 킵 얼라이브 요청 및 응답에 따른 NAT 테이블 갱신을 위한 시간 관리를 수행하는 타이머이다.The first timer 250 is a timer that performs time management for NAT table update according to a keep alive request and response from the keep alive proxy device 200 with the cloud server 300.

상기 제2 타이머(260)는 상기 킵 얼라이브 대행 장치(200)에서 내부망으로 접속된 상기 각각의 IoT 기기(400)와의 킵 얼라이브 갱신 및 응답에 따른 NAT 테이블 갱신을 위한 시간 관리를 수행하는 타이머이다.The second timer 260 is a timer that performs time management for updating the keep-alive with the respective IoT devices 400 connected to the internal network from the keep-alive agent 200 and updating the NAT table according to the response. .

이때 상기 킵 얼라이브 대행 장치(200)는 상기 제1 타이머(250) 및 상기 제2 타이머(260)가 모두 만기된 세션만을 상기 홈 게이트웨이(100)에서 제거시킨다. 그러므로 세션을 항시 유지시키는 경우가 많아지므로 원격접속을 위한 재 로그인 이벤트를 줄일 수 있으며, 외부의 제3 기기가 언제든지 직접 내부망에 접속되어 있는 상기 각각의 IoT 기기(400)로 원격 접속을 수행할 수 있게 된다.In this case, the keep-alive agent 200 removes only the sessions in which both the first timer 250 and the second timer 260 have expired from the home gateway 100. Therefore, since the number of sessions is maintained at all times, the re-login event for remote access can be reduced, and an external third device can perform remote access to each of the IoT devices 400 directly connected to the internal network at any time. It becomes possible.

상기 메모리(270)는 상기 킵 얼라이브 대행 장치(200)에서 사용되는 각종 동작프로그램이 저장되어 있으며, 상기 NAT 테이블 관리부(210)에서 생성 또는 갱신되는 NAT 테이블 정보가 저장되어 있다.In the memory 270, various operation programs used in the keep-alive agent 200 are stored, and NAT table information generated or updated by the NAT table manager 210 is stored.

도 6은 본 발명의 일 실시예에 따른 클라우드 서버(300)의 구성을 보다 상세하게 나타낸 도면이다.6 is a view showing in more detail the configuration of the cloud server 300 according to an embodiment of the present invention.

도 6에 도시된 바와 같이, 상기 클라우드 서버(300)는 통신 인터페이스부(310), 킵 얼라이브 트렁킹 처리부(320), 킵 얼라이브 요청부(330), 킵 얼라이브 확인부(340), 메모리(350) 등을 포함하여 구성된다.6, the cloud server 300 includes a communication interface unit 310, a keep-alive trunking processing unit 320, a keep-alive request unit 330, a keep-alive confirmation unit 340, and a memory 350. And the like.

또한 상기 클라우드 서버(300)는 도면에 도시하지는 않았지만, 각 구성 부분에 동작전원을 공급하는 전원부, 각종 기능에 대한 데이터 입력을 위한 입력부, 각종 동작프로그램의 업데이트를 관리하는 업데이트 관리부, 외부의 제3의 기기(예를 들어 사용자 단말)에서 내부망에 접속된 각각의 IoT 기기(400)로의 원격 접속을 지원하는 통신 접속부 등을 추가로 포함할 수 있다.Also, although the cloud server 300 is not shown in the drawings, a power supply unit for supplying operating power to each component, an input unit for data input for various functions, an update management unit for managing updates of various operation programs, and an external third party It may further include a communication connection unit for supporting remote access to each IoT device 400 connected to the internal network from the device (for example, the user terminal) of the.

상기 통신 인터페이스부(310)는 상기 킵 얼라이브 요청부(330)의 제어를 통해 네트워크를 통해 상기 킵 얼라이브 대행 장치(200)로 상기 각각의 IoT 기기(400)별 킵 얼라이브 요청 메시지를 킵 얼라이브 트렁킹 패킷으로 전송한다.The communication interface unit 310 keeps the keep alive request message for each IoT device 400 through the network through the control of the keep alive request unit 330 through the network. To be transferred.

또한 상기 통신 인터페이스부(310)는 네트워크를 통해 상기 킵 얼라이브 대행 장치(200)로부터 상기 킵 얼라이브 요청 메시지에 대한 응답 신호를 수신하고, 이를 킵 얼라이브 확인부(340)로 전달한다. 이때 상기 응답 신호는 상기 킵 얼라이브 요청 메시지와 마찬가지로 하나로 묶은 트렁킹 패킷이며, 상기 각각의 IoT 기기(400)를 대신하여 상기 킵 얼라이브 대행 장치(200)에서 자체적으로 생성하여 전송한다.In addition, the communication interface unit 310 receives a response signal to the keep alive request message from the keep alive proxy device 200 through a network, and transmits it to the keep alive confirming unit 340. At this time, the response signal is a trunking packet bound together as in the keep alive request message, and is generated and transmitted by the keep alive proxy device 200 in place of each IoT device 400.

상기 킵 얼라이브 트렁킹 처리부(320)는 상기 각각의 IoT 기기(400)별 킵 얼라이브 요청 메시지를 하나로 묶은 킵 얼라이브 트렁킹 패킷을 생성하고, 이를 킵 얼라이브 요청부(330)로 전달한다.The keep alive trunking processing unit 320 generates a keep alive trunking packet that bundles a keep alive request message for each IoT device 400 into one, and transmits the keep alive trunking packet to the keep alive request unit 330.

즉 상기 킵 얼라이브 트렁킹 처리부(320)는 기 설정된 주기를 토대로 상기 클라우드 서버(300)에서 각각의 IoT 기기(400)와의 세션 유지를 위한 킵 얼라이브 패킷들을 하나로 모은 킵 얼라이브 트렁킹 패킷을 생성하는 것이다.That is, the keep-alive trunking processing unit 320 generates a keep-alive trunking packet in which the keep-alive packets for maintaining a session with each IoT device 400 are gathered together in the cloud server 300 based on a preset period.

상기 킵 얼라이브 요청부(330)는 상기 킵 얼라이브 트렁킹 처리부(320)에서 생성한 상기 각각의 IoT 기기(400)별 킵 얼라이브 요청 메시지인 킵 얼라이브 트렁킹 패킷을 상기 통신 인터페이스부(310)를 통해 상기 킵 얼라이브 대행 장치(200)로 전송하도록 한다.The keep alive request unit 330 keeps a keep alive trunking packet, which is a keep alive request message for each IoT device 400, generated by the keep alive trunking processing unit 320 through the communication interface unit 310. It is to be transmitted to the alive proxy device 200.

상기 킵 얼라이브 확인부(340)는 상기 통신 인터페이스부(310)로부터 전달받은 상기 킵 얼라이브 요청 메시지에 대한 응답 신호를 토대로 상기 클라우드 서버(300)와 구내에 구비된 상기 각각의 IoT 기기(400) 간의 세션을 확인한다.The keep alive confirmation unit 340 is based on a response signal to the keep alive request message received from the communication interface unit 310 between the cloud server 300 and each IoT device 400 provided in the premises. Check the session.

상기 메모리(350)는 상기 클라우드 서버(300)에서 사용되는 각종 동작프로그램이 저장되어 있으며, 상기 킵 얼라이브 확인부(340)를 통해 확인한 상기 각각의 IoT 기기(400) 간의 세션 정보가 저장되어 있다.In the memory 350, various operation programs used in the cloud server 300 are stored, and session information between the IoT devices 400 checked through the keep-alive checking unit 340 is stored.

다음에는, 이와 같이 구성된 본 발명에 따른 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 방법의 일 실시예를 도 7과 도 8을 참조하여 상세하게 설명한다. 이때 본 발명의 방법에 따른 각 단계는 사용 환경이나 당업자에 의해 순서가 변경될 수 있다.Next, an embodiment of a method of accessing an internal network in an external network through keep-alive trunking according to the present invention configured as described above will be described in detail with reference to FIGS. 7 and 8. At this time, each step according to the method of the present invention can be changed in order by the environment or those skilled in the art.

도 7은 본 발명의 일 실시예에 따른 홈 게이트웨이에 설치되는 킵 얼라이브 대행 장치에서의 킵 얼라이브 트렁킹 처리를 통한 비동기 처리 과정을 설명하기 위한 도면이며, 도 8은 본 발명의 다른 실시예에 따른 홈 게이트웨이에 설치되는 킵 얼라이브 대행 장치에서의 킵 얼라이브 트렁킹 처리를 설명하기 위한 도면이다.7 is a view for explaining an asynchronous processing process through keep alive trunking processing in a keep alive proxy device installed in a home gateway according to an embodiment of the present invention, and FIG. 8 is a home according to another embodiment of the present invention It is a figure for explaining the keep alive trunking process in the keep alive proxy device installed in the gateway.

우선, 도 7을 참조하면, 상기 홈 게이트웨이(100)에 접속된 각각의 IoT 기기(400)에서 원격에 위치한 상기 클라우드 서버(300)로 로그인 요청을 수행하면 상기 클라우드 서버(300)는 이에 대한 응답을 수행하며, 이러한 로그인 요청 및 응답 과정에서 상기 홈 게이트웨이(100)에 실장된 상기 킵 얼라이브 대행 장치(200)에서 NAT 테이블을 생성한다. 이때 도 7에서는 2개의 IoT 기기가 상기 홈 게이트웨이(100)에 접속한 것을 예로 하여 설명하지만, 이에 한정되지 않고 많은 수의 IoT 기기가 상기 홈 게이트웨이(100)에 접속되어 사용될 수 있다.First, referring to FIG. 7, when each IoT device 400 connected to the home gateway 100 performs a login request to the cloud server 300 remotely located, the cloud server 300 responds to this. In the process of requesting and responding to the login, a NAT table is generated by the keep alive agent 200 mounted on the home gateway 100. In this case, in FIG. 7, two IoT devices are connected to the home gateway 100 as an example, but it is not limited thereto, and a large number of IoT devices may be connected to the home gateway 100 and used.

이후 상기 클라우드 서버(300)는 상기 각각의 IoT 기기(400)와 세션 유지를 위해서 킵 얼라이브를 요청하게 되는데, 본 발명에서는 상기 클라우드 서버(300)에서 상기 각각의 IoT 기기(400)별 킵 얼라이브 요청 메시지, 즉 각각의 IoT 기기(400)와의 세션 유지를 위한 킵 얼라이브 패킷들을 하나로 모은 킵 얼라이브 트렁킹 패킷을 네트워크를 통해 상기 킵 얼라이브 대행 장치(200)로 전송한다.Thereafter, the cloud server 300 requests keep alive to maintain a session with each IoT device 400. In the present invention, the cloud server 300 requests keep alive for each IoT device 400. A message, that is, a keep alive trunking packet in which one keep alive packet for maintaining a session with each IoT device 400 is transmitted to the keep alive proxy device 200 through a network.

그러면 상기 킵 얼라이브 대행 장치(200)는 상기 생성한 NAT 테이블 정보를 참조하여 상기 클라우드 서버(300)로 상기 킵 얼라이브 요청 메시지에 대한 응답을 수행한다.Then, the keep alive proxy device 200 refers to the generated NAT table information and responds to the keep alive request message to the cloud server 300.

즉 상기 킵 얼라이브 대행 장치(200)는 상기 클라우드 서버(300)로부터 요청받은 상기 각각의 IoT 기기(400)별 킵 얼라이브 요청에 따라 상기 각각의 IoT 기기(400)로 킵 얼라이브 포워딩을 수행하지 않고 상기 NAT 테이블 정보를 토대로 킵 얼라이브 응답을 수행하는 것이다. 이때 상기 킵 얼라이브 대행 장치(200)는 상기 클라우드 서버(300)로 킵 얼라이브 요청 메시지에 대한 응답을 수행함과 동시에 NAT 테이블 외부 타이머를 갱신하여 처리한다.That is, the keep alive proxy device 200 does not perform keep alive forwarding to each IoT device 400 according to the keep alive request for each IoT device 400 requested from the cloud server 300. The keep-alive response is performed based on the NAT table information. At this time, the keep alive agent device 200 performs a response to the keep alive request message to the cloud server 300 and updates and processes a timer outside the NAT table.

또한 상기 응답 신호는 상기 킵 얼라이브 요청 메시지와 마찬가지로 각각의 IoT 기기(400)와의 세션 유지에 관련된 응답을 하나로 묶은 패킷으로 상기 클라우드 서버(300)로 전송될 수 있다.In addition, the response signal may be transmitted to the cloud server 300 in a packet that bundles a response related to session maintenance with each IoT device 400 as in the keep alive request message.

또한, 상기 킵 얼라이브 대행 장치(200)는 상기 각각의 IoT 기기(400)에서 상기 클라우드 서버(300)로 향하는 킵 얼라이브 패킷에 대하여, 외부망으로 킵 얼라이브 포워딩을 수행하지 않고 상기 홈 게이트웨이(100)와 상기 클라우드 서버(300) 간의 킵 얼라이브 상태값을 토대로 상기 클라우드 서버(300)를 대신하여 자체적으로 킵 얼라이브 응답을 상기 각각의 IoT 기기로 전송하기 때문에, 상기 클라우드 서버(300)와 상기 홈 게이트웨이(100) 사이에 진행되어야 하는 킵 얼라이브 횟수를 줄일 수 있다.In addition, the keep alive proxy device 200, the home gateway 100 without performing a keep alive forwarding to the external network for the keep alive packet from the respective IoT device 400 to the cloud server 300 Based on the keep-alive status value between the cloud server 300 and the cloud server 300, the cloud server 300 sends the keep-alive response on its own to each IoT device, so the cloud server 300 and the home gateway ( 100) It is possible to reduce the number of keep alives to be performed in between.

한편, 본 발명에서는 상기 도 7에서 설명한 것처럼, 상기 킵 얼라이브 대행 장치(200)에서 상기 클라우드 서버(300)와 내부의 상기 복수의 IoT 기기(400)간 킵 얼라이브 패킷을 비동기적으로 처리하는 방식 이외에, 상기 킵 얼라이브 대행 장치(200)에서 내부망으로 포워딩한 다음, 내부망의 응답을 상기 클라우드 서버(300)로 전송하는 방식을 사용할 수 있다.Meanwhile, in the present invention, as described with reference to FIG. 7, in addition to a method of asynchronously processing a keep alive packet between the cloud server 300 and the plurality of IoT devices 400 in the keep alive proxy device 200 A method of forwarding the keep-alive agent 200 to the internal network and then transmitting the response of the internal network to the cloud server 300 may be used.

이를 도 8을 참조하여 상세하게 설명하면, 상기 홈 게이트웨이(100)에 접속된 각각의 IoT 기기(400)에서 원격에 위치한 상기 클라우드 서버(300)로 로그인 요청을 수행하면 상기 클라우드 서버(300)는 이에 대한 응답을 수행하며, 이러한 로그인 요청 및 응답 과정에서 상기 킵 얼라이브 대행 장치(200)에서 NAT 테이블을 생성한다.When this is described in detail with reference to FIG. 8, when each IoT device 400 connected to the home gateway 100 performs a login request to the cloud server 300 located remotely, the cloud server 300 In response to this, the keep-alive agent 200 generates a NAT table during the login request and response process.

이후 상기 클라우드 서버(300)로부터 상기 각각의 IoT 기기(400)와 세션 유지를 위해서 킵 얼라이브 요청 메시지가 킵 얼라이브 트렁킹 패킷으로 전송되면, 상기 킵 얼라이브 대행 장치(200)는 이때마다 상기 킵 얼라이브 요청 메시지를 내부망에 접속되어 있는 상기 복수의 IoT 기기(400)로 포워딩시키고, 상기 복수의 IoT 기기(400)로부터 전송되는 응답에 따라 이를 상기 클라우드 서버(300)로 일괄적으로 전달한다.Subsequently, if a keep alive request message is transmitted as a keep alive trunking packet to maintain a session with each IoT device 400 from the cloud server 300, the keep alive proxy device 200 will send the keep alive request message each time. Is forwarded to the plurality of IoT devices 400 connected to the internal network, and is collectively delivered to the cloud server 300 according to a response transmitted from the plurality of IoT devices 400.

하지만 도 8에 설명한 방식은, 킵 얼라이브 패킷의 불필요한 흐름을 유발할 수 있고, 상기 각각의 IoT 기기(400)의 배터리 소모가 증가될 수 있기 때문에 가급적 사용하지 않는 것이 좋다.However, the method described in FIG. 8 is not preferably used because it may cause unnecessary flow of keep-alive packets and battery consumption of each IoT device 400 may increase.

이처럼, 본 발명은 외부 서버에서 특정 구내의 모든 IoT 기기로 개별적인 킵 얼라이브 패킷을 전송함에 따라 발생하는 트래픽을 줄일 수 있으며, 이에 따라 네트워크와 통신장비의 동작부하를 줄이면서 외부망에서 내부망으로 항상 원격 접속이 가능하다.As described above, the present invention can reduce traffic generated by transmitting individual keep-alive packets from an external server to all IoT devices in a specific premises, thereby reducing the operational load of the network and communication equipment, and always from the external network to the internal network. Remote access is possible.

이상에서와 같이 본 발명은 도면에 도시된 실시예를 참고로 하여 설명되었으나, 이는 예시적인 것에 불과하며, 당해 기술이 속하는 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 기술적 보호범위는 아래의 특허청구범위에 의해서 판단되어야 할 것이다.As described above, the present invention has been described with reference to the embodiment shown in the drawings, but this is only exemplary, and those skilled in the art to which the art pertains have various modifications and other equivalent embodiments You will understand that it is possible. Therefore, the technical protection scope of the present invention should be judged by the following claims.

100 : 홈 게이트웨이 200 : 킵 얼라이브 대행 장치
210 : NAT 테이블 관리부 220 : 통신부
230 : 킵 얼라이브 요청 확인부 240 : 킵 얼라이브 응답부
250 : 제1 타이머 260 : 제2 타이머
270 : 메모리 300 : 클라우드 서버
310 : 통신 인터페이스부 320 : 킵 얼라이브 트렁킹 처리부
330 : 킵 얼라이브 요청부 340 : 킵 얼라이브 확인부
350 : 메모리 400 : IoT 기기
500 : 데이터베이스
100: home gateway 200: keep alive agent
210: NAT table management unit 220: communication unit
230: keep alive request confirmation unit 240: keep alive response unit
250: first timer 260: second timer
270: memory 300: cloud server
310: communication interface 320: keep alive trunking processing unit
330: keep alive request unit 340: keep alive confirmation unit
350: memory 400: IoT device
500: database

Claims (11)

적어도 하나 이상의 IoT 기기가 접속된 홈 게이트웨이에서, 각각의 IoT 기기와 클라우드 서버 간의 로그인 요청과 응답을 토대로 NAT 테이블을 생성하는 NAT 테이블 생성 단계;
상기 홈 게이트웨이에서, 상기 클라우드 서버로부터 각각의 IoT 기기별 킵 얼라이브 요청 메시지를 킵 얼라이브 트렁킹 패킷으로 전송받는 킵 얼라이브 요청 수신 단계; 및
상기 홈 게이트웨이에서, 상기 생성한 NAT 테이블 정보를 참조하여 상기 클라우드 서버로 상기 킵 얼라이브 요청 메시지에 대한 응답을 수행하는 킵 얼라이브 응답 단계;를 포함하는 것을 특징으로 하는 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 방법.
A NAT table generation step of generating a NAT table based on a login request and response between each IoT device and a cloud server in a home gateway to which at least one IoT device is connected;
In the home gateway, a keep alive request receiving step of receiving a keep alive request message for each IoT device from the cloud server as a keep alive trunking packet; And
In the home gateway, a keep-alive response step of performing a response to the keep-alive request message to the cloud server with reference to the generated NAT table information. In the external network through keep-alive trunking. How to connect to the internal network.
청구항 1에 있어서,
상기 킵 얼라이브 트렁킹 패킷은,
상기 클라우드 서버에서 각각의 IoT 기기와의 세션 유지를 위한 킵 얼라이브 패킷들을 하나로 모은 것으로서,
각각의 IoT 기기별 포트 번호, 킵 얼라이브 주기시간 정보 또는 이들의 조합을 포함한 페이로드 정보를 포함하는 것을 특징으로 하는 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 방법.
The method according to claim 1,
The keep alive trunking packet,
As a collection of keep-alive packets for maintaining a session with each IoT device in the cloud server,
A method of accessing an internal network from an external network through keep alive trunking, characterized by including port number for each IoT device, keep alive cycle time information, or a combination of payload information.
청구항 1에 있어서,
상기 방법은,
상기 홈 게이트웨이에서, 상기 홈 게이트웨이에 접속된 각각의 IoT 기기와 기 설정된 주기에 따라 세션이 유지되고 있음을 확인하고, 상기 확인한 정보를 토대로 NAT 테이블을 갱신하는 NAT 테이블 갱신 단계;를 더 포함하는 것을 특징으로 하는 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 방법.
The method according to claim 1,
The above method,
In the home gateway, each IoT device connected to the home gateway confirms that the session is maintained according to a preset period, and updates the NAT table based on the checked information. A method of accessing an internal network from an external network through keep-alive trunking.
청구항 3에 있어서,
상기 NAT 테이블 갱신 단계는,
상기 홈 게이트웨이에서, 상기 각각의 IoT 기기에서 상기 클라우드 서버로 향하는 킵 얼라이브 패킷에 대하여, 상기 홈 게이트웨이와 상기 클라우드 서버 간의 킵 얼라이브 상태값을 토대로 상기 클라우드 서버를 대신하여 자체적으로 킵 얼라이브 응답을 상기 각각의 IoT 기기로 전송함으로써, 상기 클라우드 서버와 상기 홈 게이트웨이 사이에 진행되어야 하는 킵 얼라이브 횟수를 줄일 수 있는 것을 특징으로 하는 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 방법.
The method according to claim 3,
The NAT table update step,
In the home gateway, for each keep-alive packet from each IoT device to the cloud server, the keep-alive response is automatically generated on behalf of the cloud server based on the keep-alive status value between the home gateway and the cloud server. By transmitting to the IoT device, it is possible to reduce the number of keep-alives that must be performed between the cloud server and the home gateway. The method of accessing an internal network in an external network through keep-alive trunking.
청구항 1에 있어서,
상기 방법은,
상기 홈 게이트웨이에 설치되는 애플리케이션 프로그램인 킵 얼라이브 대행 장치를 통해서,
상기 각각의 IoT 기기별 ID, IP 어드레스, 포트 번호, 킵 얼라이브 주기시간 정보 또는 이들의 조합을 포함한 NAT 테이블의 관리를 수행하며,
상기 클라우드 서버의 상기 각각의 IoT 기기별 킵 얼라이브 요청에 따라 상기 각각의 IoT 기기로의 킵 얼라이브 포워딩 없이 상기 NAT 테이블 정보를 토대로 킵 얼라이브 응답을 수행하는 것을 특징으로 하는 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 방법.
The method according to claim 1,
The above method,
Through the keep-alive agent device, an application program installed in the home gateway,
Manages the NAT table including each IoT device ID, IP address, port number, keep alive cycle time information, or a combination thereof,
In the external network through keep-alive trunking, characterized by performing a keep-alive response based on the NAT table information without keep-alive forwarding to each IoT device according to the keep-alive request for each IoT device of the cloud server. How to access the internal network.
각각의 IoT 기기와 클라우드 서버 간의 로그인 요청과 응답을 토대로 NAT 테이블을 생성하는 NAT 테이블 관리부;
상기 클라우드 서버로부터 각각의 IoT 기기별 킵 얼라이브 요청 메시지를 킵 얼라이브 트렁킹 패킷으로 전송받아 확인하는 킵 얼라이브 요청 확인부; 및
상기 생성한 NAT 테이블 정보를 참조하여 상기 클라우드 서버로 상기 킵 얼라이브 요청 메시지에 대한 응답을 수행하는 킵 얼라이브 응답부;를 포함하는 것을 특징으로 하는 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 장치.
A NAT table management unit generating a NAT table based on a login request and a response between each IoT device and a cloud server;
A keep alive request confirmation unit for receiving and confirming a keep alive request message for each IoT device in the keep alive trunking packet from the cloud server; And
And a keep alive response unit performing a response to the keep alive request message to the cloud server with reference to the generated NAT table information. An internal network access device in an external network through keep alive trunking.
청구항 6에 있어서,
상기 장치는,
상기 각각의 IoT 기기가 접속된 홈 게이트웨이에 실장된 애플리케이션 프로그램인 것을 특징으로 하는 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 장치.
The method according to claim 6,
The device,
An internal network access device in an external network through keep alive trunking, characterized in that it is an application program mounted on a home gateway to which each IoT device is connected.
청구항 6에 있어서,
상기 킵 얼라이브 트렁킹 패킷은,
상기 클라우드 서버에서 각각의 IoT 기기와의 세션 유지를 위한 킵 얼라이브 패킷들을 하나로 모은 것으로서,
각각의 IoT 기기별 포트 번호, 킵 얼라이브 주기시간 정보 또는 이들의 조합을 포함한 페이로드 정보를 포함하는 것을 특징으로 하는 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 장치.
The method according to claim 6,
The keep alive trunking packet,
As a collection of keep-alive packets for maintaining a session with each IoT device in the cloud server,
An internal network access device in an external network through keep alive trunking, characterized in that it includes a payload information including port numbers for each IoT device, keep alive cycle time information, or a combination thereof.
청구항 6에 있어서,
상기 NAT 테이블 관리부는,
상기 각각의 IoT 기기와 기 설정된 주기에 따라 세션이 유지되고 있음을 확인하고, 상기 확인한 정보를 토대로 NAT 테이블을 갱신하는 것을 더 포함하는 것을 특징으로 하는 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 장치.
The method according to claim 6,
The NAT table management unit,
Confirming that the session is maintained according to each IoT device and a predetermined period, and further updating the NAT table based on the checked information, accessing the internal network in the external network through keep-alive trunking. Device.
청구항 9에 있어서,
상기 NAT 테이블 관리부는,
상기 NAT 테이블을 갱신할 때, 상기 각각의 IoT 기기에서 상기 클라우드 서버로 향하는 킵 얼라이브 패킷에 대하여, 홈 게이트웨이와 상기 클라우드 서버 간의 킵 얼라이브 상태값을 토대로 상기 클라우드 서버를 대신하여 자체적으로 킵 얼라이브 응답을 상기 각각의 IoT 기기로 전송함으로써, 상기 클라우드 서버와 상기 홈 게이트웨이 사이에 진행되어야 하는 킵 얼라이브 횟수를 줄일 수 있는 것을 특징으로 하는 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 장치.
The method according to claim 9,
The NAT table management unit,
When updating the NAT table, for each keep device packet directed to the cloud server from each IoT device, a keep alive response is generated on behalf of the cloud server based on the keep alive state value between the home gateway and the cloud server. An internal network access device in an external network through keep alive trunking, characterized in that it is possible to reduce the number of keep alives to be performed between the cloud server and the home gateway by transmitting to each IoT device.
청구항 6에 있어서,
상기 장치는,
상기 각각의 IoT 기기별 ID, IP 어드레스, 포트 번호, 킵 얼라이브 주기시간 정보 또는 이들의 조합을 포함한 NAT 테이블의 관리를 수행하며,
상기 클라우드 서버의 상기 각각의 IoT 기기별 킵 얼라이브 요청에 따라 상기 각각의 IoT 기기로의 킵 얼라이브 포워딩 없이 상기 NAT 테이블 정보를 토대로 킵 얼라이브 응답을 수행하는 것을 특징으로 하는 킵 얼라이브 트렁킹을 통한 외부망에서의 내부망 접속 장치.
The method according to claim 6,
The device,
Manages the NAT table including each IoT device ID, IP address, port number, keep alive cycle time information, or a combination thereof,
In the external network through keep-alive trunking, characterized by performing a keep-alive response based on the NAT table information without keep-alive forwarding to each IoT device according to the keep-alive request for each IoT device of the cloud server. Internal network connection device.
KR1020180173553A 2018-12-31 2018-12-31 Method for internal network connection in external network through keep alive trunking and apparatus thereof KR102123831B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180173553A KR102123831B1 (en) 2018-12-31 2018-12-31 Method for internal network connection in external network through keep alive trunking and apparatus thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180173553A KR102123831B1 (en) 2018-12-31 2018-12-31 Method for internal network connection in external network through keep alive trunking and apparatus thereof

Publications (1)

Publication Number Publication Date
KR102123831B1 true KR102123831B1 (en) 2020-06-17

Family

ID=71405687

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180173553A KR102123831B1 (en) 2018-12-31 2018-12-31 Method for internal network connection in external network through keep alive trunking and apparatus thereof

Country Status (1)

Country Link
KR (1) KR102123831B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102318686B1 (en) * 2020-10-20 2021-10-27 전소미 Improved method for sequrity employing network
CN115514732A (en) * 2022-09-02 2022-12-23 上海量讯物联技术有限公司 TCP connection number-based source NAT IP allocation method and device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010521883A (en) * 2007-03-12 2010-06-24 マイクロソフト コーポレーション NAT connection status keep alive cost reduction
KR20130099175A (en) * 2010-11-18 2013-09-05 퀄컴 인코포레이티드 Transmitting keep-alive packets on behalf of a mobile communications device within a wireless communications system
KR20150084017A (en) * 2012-10-22 2015-07-21 인터디지탈 패튼 홀딩스, 인크 Method and apparatus for negotiating "keep-alive" message frequencies of applications running on a mobile station
KR20150131732A (en) * 2014-05-16 2015-11-25 주식회사 아이디어웨어 A controller for transmitting packets of a wireless terminal and a method thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010521883A (en) * 2007-03-12 2010-06-24 マイクロソフト コーポレーション NAT connection status keep alive cost reduction
KR20130099175A (en) * 2010-11-18 2013-09-05 퀄컴 인코포레이티드 Transmitting keep-alive packets on behalf of a mobile communications device within a wireless communications system
KR20150084017A (en) * 2012-10-22 2015-07-21 인터디지탈 패튼 홀딩스, 인크 Method and apparatus for negotiating "keep-alive" message frequencies of applications running on a mobile station
KR20150131732A (en) * 2014-05-16 2015-11-25 주식회사 아이디어웨어 A controller for transmitting packets of a wireless terminal and a method thereof

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102318686B1 (en) * 2020-10-20 2021-10-27 전소미 Improved method for sequrity employing network
CN115514732A (en) * 2022-09-02 2022-12-23 上海量讯物联技术有限公司 TCP connection number-based source NAT IP allocation method and device
CN115514732B (en) * 2022-09-02 2023-08-25 上海量讯物联技术有限公司 Source NAT IP distribution method and device based on TCP connection number

Similar Documents

Publication Publication Date Title
US10110714B2 (en) Methods for exchanging network management messages using UDP over HTTP protocol
US10484335B2 (en) Secure remote computer network
CN101116337B (en) Method of monitoring and configuring
US8250214B2 (en) System, method and computer program product for communicating with a private network
KR100942480B1 (en) A communication device and a system for managing the local devies remotely and the method thereof
EP2645636B1 (en) Home gateway, cloud server, and method for communication therebetween
US9467327B2 (en) Server-mediated setup and maintenance of peer-to-peer client computer communications
FI125972B (en) Equipment arrangement and method for creating a data transmission network for remote property management
KR20090078721A (en) Upnp ras apparatus for supporting multiple remote access and method thereof
KR102123831B1 (en) Method for internal network connection in external network through keep alive trunking and apparatus thereof
CN105450779A (en) Method for achieving connection between one household electric appliance and multiple servers
US11647069B2 (en) Secure remote computer network
EP2124389B1 (en) Method and apparatus for providing remote access service
JP5367764B2 (en) Virtual network system, configuration change method, tunnel connection apparatus, and program
JP2005204189A (en) Access user management system and device
CN1561061A (en) Method for two-way access by NAT
KR101666724B1 (en) Method, Server and Apparatus For P2P Connection
JP2005033250A (en) Relaying apparatus and port forward setting method
JP5437518B2 (en) Virtual network system, configuration change method, tunnel termination device, tunnel connection device, and program
CN110635979A (en) Method for interconnecting communication devices in local area network
JP4480559B2 (en) Broadband router and its port mapping information update method
CN112769852B (en) Remote industrial laboratory access system
CN102571861B (en) Remote access method, server and network system
US9900373B2 (en) System for providing a service, such as a communication service
US8316143B1 (en) Communication interface between gateway modules and internet servers

Legal Events

Date Code Title Description
GRNT Written decision to grant