KR20130004845A - System and method for keep-alive communication - Google Patents
System and method for keep-alive communication Download PDFInfo
- Publication number
- KR20130004845A KR20130004845A KR1020110066144A KR20110066144A KR20130004845A KR 20130004845 A KR20130004845 A KR 20130004845A KR 1020110066144 A KR1020110066144 A KR 1020110066144A KR 20110066144 A KR20110066144 A KR 20110066144A KR 20130004845 A KR20130004845 A KR 20130004845A
- Authority
- KR
- South Korea
- Prior art keywords
- keep
- alive
- keepalive
- message
- client
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/143—Termination or inactivation of sessions, e.g. event-controlled end of session
- H04L67/145—Termination 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
- H04W52/0209—Power saving arrangements in terminal devices
- H04W52/0212—Power saving arrangements in terminal devices managed by the network, e.g. network or access point is master and terminal is slave
- H04W52/0216—Power saving arrangements in terminal devices managed by the network, e.g. network or access point is master and terminal is slave using a pre-established activity schedule, e.g. traffic indication frame
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W68/00—User notification, e.g. alerting and paging, for incoming communication, change of service or the like
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
본 발명은 킵얼라이브 통신 시스템, 클라이언트, 및 통신방법에 관한 것으로, 보다 상세하게는 클라이언트가 접속한 통신망의 상황에 따라 적응적으로 킵얼라이브 메시지의 전송주기를 최적화시킴으로써 킵얼라이브 메시지로 인한 과도한 트래픽 발생을 억제하고, 빈번한 킵얼라이브 메시지 전송으로 인한 클라이언트 단말의 전력소모를 저감할 수 있는 킵얼라이브 통신 시스템, 클라이언트, 및 통신방법에 관한 것이다.
The present invention relates to a keepalive communication system, a client, and a communication method, and more particularly, excessive traffic generation due to a keepalive message by optimizing a transmission period of a keepalive message adaptively according to a situation of a communication network to which a client is connected. And a keep-alive communication system, a client, and a communication method capable of reducing power consumption and reducing power consumption of a client terminal due to frequent keep-alive message transmission.
스마트폰 등의 클라이언트 단말에 설치하여 사용되는 메신저 애플리케이션과 같이 메신저 서비스 서버가 각각의 클라이언트의 온라인 상태를 지속적으로 파악하여 다른 클라이언트에게 통보하는 통신 시스템에 있어서, 클라이언트는 지속적으로 자신의 온라인 상태를 서버에 알려주고, 서버는 일정시간 동안 서버와 통신이 없는 클라이언트의 상태를 오프라인 상태로 관리한다. 클라이언트는 아이들 상태(Idle Mode :일정 시간 사용자 입력이 없어 클라이언트 단말이 저전력 모드로 진입한 상태)에 진입한 경우라도 킵얼라이브(keep-alive) 메시지를 주기적으로 서버로 전송함으로써 자신의 온라인 상태를 유지해야 한다.In a communication system in which a messenger service server continuously recognizes an online state of each client and notifies another client, such as a messenger application installed and used in a client terminal such as a smartphone, the client continuously reports its online state to the server. The server maintains offline status of clients that have not communicated with the server for a period of time. The client maintains its online state by periodically sending a keep-alive message to the server even when entering the idle mode (the client terminal enters the low power mode because there is no user input for a certain time). Should be.
이러한 킵얼라이브 통신 시스템에 있어서, 클라이언트가 증가하게 되면 통신채널을 통해 전송되는 킵얼라이브 메시지 또한 증가하여 통신망 과부하를 발생시킬 수 있다. 더욱이 킵얼라이브 메시지의 전송주기인 킵얼라이브 주기(TK)가 짧을수록 시간당 발생하는 킵얼라이브 메시지의 숫자는 더욱 증가하게 되고, 킵얼라이브 메시지 전송을 위한 동작이 잦아지기 때문에 클라이언트 단말의 전력소모 역시 증가하는 문제가 있다.In such a keep-alive communication system, as the number of clients increases, the keep-alive message transmitted through the communication channel may increase, thereby causing network overload. In addition, the shorter the keep-alive period (T K ), which is the transmission period of the keep-alive message, increases the number of keep-alive messages per hour. There is a problem.
한편, 킵얼라이브 통신 시스템의 서버는 온라인 상태로 파악된 클라이언트와 일정시간 동안 메시지 송수신이 없는 경우 해당 클라이언트를 오프라인 상태로 간주하게 되는데 클라이언트의 온라인 상태를 유지하는 서버의 최대 허용시간인 서버허용시간(TS)으로 킵얼라이브 주기(TK)를 설정하면 전체 킵얼라이브 메시지 수를 줄일 수 있을 뿐 아니라 클라이언트 단말의 전력소모 역시 최소화시킬 수 있다.On the other hand, the server of the keep-alive communication system considers the client as offline when there is no message transmission and reception for a predetermined time with the client identified as online, and the server allowable time (the maximum allowable time of the server to keep the client online) Setting the keep-alive period T K with T S ) can reduce the total number of keep-alive messages and minimize the power consumption of the client terminal.
그런데, 통신망을 구성하는 방화벽, NAT(Network Address Translation) 등의 네트워크 장비는 네트워크 자원의 효율적 이용을 위해 일정시간 동안 데이터 전송이 없는 클라이언트의 커넥션을 강제로 종료하도록 설정된 경우가 많이 있다. 클라이언트의 커넥션을 유지하는 네트워크 장비의 최대허용시간인 장비허용시간(TS) 이상으로 킵얼라이브 주기(TK)를 설정하게 되면, 매 킵얼라이브 주기마다 클라이언트의 통신망과의 커넥션이 해당 네트워크 장비에 의해 강제종료되어 정상적인 킵얼라이브 메시지 전송이 어려워지는 문제가 있다.However, network devices such as firewalls and network address translation (NAT) constituting a communication network are often set to forcibly terminate a connection of a client without data transmission for a predetermined time in order to efficiently use network resources. If the keep-alive period (T K ) is set above the maximum allowable time (T S ) of the network device that maintains the client's connection, the connection with the client's communication network is transmitted to the network device at every keep-alive period. There is a problem in that it is difficult to send a normal keepalive message due to forced termination.
예컨대, 도 5에 도시된 바와 같이 클라이언트(100)가 통신경로 1, 통신경로 2, 통신경로 3을 통해 서버허용시간(TS)이 300초인 서버(200)에 접속하는 경우를 가정하면, 통신경로 1의 경우는 중간에 개재하는 네트워크 장비(311)의 장비허용시간(TS)이 350초로 서버허용시간(TS) 이상이기 때문에 킵얼라이브 주기(TK)를 서버허용시간(TS)인 300초 또는 전송지연을 고려하여 서버허용시간(TS)에 다소 못미치는 정도로 설정할 수 있다.For example, suppose that the
그러나 통신경로 2 및 통신경로 3과 같이 장비허용시간(TD)이 서버허용시간(TS)에 못미치는 네트워크 장비(322,331)가 있는 경우는 서버허용시간(TS)인 300초로 킵얼라이브 주기(TK)를 설정하면 매 킵얼라이브 주기(TK)마다 네트워크 장비(322,331)에 의해 클라이언트(100)의 통신망 접속이 해제되는 문제가 발생한다. However, if there are network devices (322,331) whose equipment allowable time (T D ) is less than the server allowable time (T S ), such as communication path 2 and communication path 3, the keep-alive period is 300 seconds, which is the server allowable time (T S ). If (T K ) is set, a problem arises in that the network connection of the
특히 이동성이 보장되는 모바일 클라이언트(100)의 경우 접속위치에 따라 통신경로가 수시로 변화하고 이에 따라 통신경로 상에 존재하는 네트워크 장비의 장비허용시간(TD)도 다양하기 때문에 서버-클라이언트간 안정적인 킵얼라이브 통신을 위해서는 통신경로 상의 네트워크 장비들 중 가장 짧은 장비허용시간(TD)을 가지는 네트워크 장비의 장비허용시간(TD)을 기준으로 킵얼라이브 주기(TK)를 설정하여야 한다.In particular, in the case of the
따라서 고정된 킵얼라이브 주기(TK)를 이용하는 종래의 킵얼라이브 통신 시스템에서는, 모든 경우에서 안정적인 킵얼라이브 통신이 가능하도록 설계하려면 접속이 가능한 모든 통신경로 중에서 가장 작은 장비허용시간(TD)을 가지는 네트워크 장비의 장비허용시간(TD)을 기준으로 킵얼라이브 주기(TK)를 설정하여야 하고, 도 5의 경우는 통신경로 2의 네트워크 장비(322)의 장비허용시간(TD)인 100초 또는 100초에 다소 못미치는 정도를 킵얼라이브 주기(TK)로 설정하여야만 모든 경우에서 안정적인 킵얼라이브 통신을 수행할 수 있다. 이로 인해 통신경로 1 및 3과 같이 보다 긴 킵얼라이브 주기(TK)를 설정할 수 있는 경우에도 불필요하게 잦은 킵얼라이브 메시지 전송으로 인해 통신망 부하가 증가하고 클라이언트 단말의 전력소모가 증가하는 문제가 있었다.
Therefore, in the conventional keep-alive communication system using a fixed keep-alive period (T K ), in order to design stable keep-alive communication in all cases, it has the smallest equipment allowable time (T D ) among all available communication paths. The keep-alive period T K should be set based on the equipment allowable time T D of the network equipment. In FIG. 5, the device allowable time T D of the
본 발명은 상기의 문제를 해결하기 위한 것으로, 본 발명에 따른 킵얼라이브 통신 시스템 및 통신방법은, 클라이언트가 현재 접속한 통신경로에서 최적의 킵얼라이브 주기를 탐색하여 결정함으로써 불필요하게 잦은 킵얼라이브 메시지 전송으로 인한 네트워크 과부하를 방지하고 클라이언트 단말의 전력소모를 줄이는 것을 목적으로 한다.The present invention is to solve the above problems, the keep-alive communication system and communication method according to the present invention, unnecessary and frequent keep-alive message transmission by searching for and determining the optimal keep-alive period in the communication path that the client is currently connected to The purpose is to prevent network overload and reduce power consumption of the client terminal.
본 발명의 실시예에 따른 킵얼라이브 통신 시스템 및 통신방법은, 메시지의 정상전달 여부를 확인할 수 없는 프로토콜인 UDP/IP를 이용한 킵얼라이브 통신에 있어서 서버에 회신을 요구하는 회신요구 킵얼라이브 메시지를 전송하여 킵얼라이브 메시지 정상전달 여부를 판단하는 방법을 통해 최적의 킵얼라이브 주기를 결정하는 것을 다른 목적으로 한다. In the keep-alive communication system and the communication method according to an embodiment of the present invention, in a keep-alive communication using UDP / IP, which is a protocol that cannot determine whether a message is normally delivered, a keep-alive message for requesting a reply to the server is sent. It is another object of the present invention to determine an optimal keepalive period through a method of determining whether the keepalive message is normally delivered.
본 발명의 다른 실시예에 따른 킵얼라이브 통신 시스템 및 통신방법은, 상황에 따라 적절하게 회신요구 킵얼라이브 메시지 또는 회신비요구 킵얼라이브 메시지를 킵얼라이브 메시지를 전송함으로써 서버의 빈번한 회신 메시지로 인한 통신망 부하를 줄이는 것을 목적으로 한다.In the keep-alive communication system and the communication method according to another embodiment of the present invention, the network load due to the frequent reply message of the server by transmitting a keep-alive message for a reply request keepalive message or a non-reply request keepalive message appropriately according to a situation. To reduce the
마지막으로, 본 발명의 다른 실시예에 따른 킵얼라이브 통신 시스템 및 통신방법은, 네트워크 장비의 장비허용시간을 초과한 킵얼라이브 주기로 인해 클라이언트의접속이 해제된 경우 클라이언트의 통신망 재접속시 킵얼라이브 메시지를 재전송함으로써 서버에서 해당 클라이언트를 오프라인 상태로 오인식하는 문제를 해결하는 것을 목적으로 한다.Lastly, the keep-alive communication system and communication method according to another embodiment of the present invention retransmit the keep-alive message when the client reconnects to the network when the client is disconnected due to the keep-alive period exceeding the equipment allowable time of the network equipment. It aims to solve the problem of misrecognizing the client offline in the server.
본 발명의 실시예에 따른 킵얼라이브 통신 시스템은, 통신망을 통해 킵얼라이브 메시지를 전송하는 클라이언트; 및 상기 클라이언트로부터의 상기 킵얼라이브 메시지의 수신에 따라 상기 클라이언트를 온라인 상태로 유지하는 서버;로 구성되는 킵얼라이브 통신 시스템에 있어서, 상기 클라이언트는, 킵얼라이브 주기마다 상기 킵얼라이브 메시지를 전송하는 킵얼라이브 전송모듈; 상기 킵얼라이브 메시지의 전송이 성공한 경우 상기 킵얼라이브 주기를 증가시키는 킵얼라이브 주기 증가모듈; 및 상기 킵얼라이브 주기 증가모듈에 의해 증가한 킵얼라이브 주기를 적용하여 전송한 상기 킵얼라이브 메시지의 전송이 실패한 경우 상기 킵얼라이브 주기를 감소시키는 킵얼라이브 주기 감소모듈;을 포함하고, 상기 서버는 상기 킵얼라이브 메시지를 수신하는 킵얼라이브 수신모듈;를 포함하고는 것을 특징으로 한다.According to an embodiment of the present invention, a keep-alive communication system includes a client transmitting a keep-alive message through a communication network; And a server that keeps the client online according to receipt of the keepalive message from the client, wherein the client transmits the keepalive message at every keepalive period. Transmission module; A keep-alive period increasing module for increasing the keep-alive period when the transmission of the keep-alive message is successful; And a keep-alive period reduction module that reduces the keep-alive period when transmission of the keep-alive message transmitted by applying the keep-alive period increased by the keep-alive period increase module fails. A keep-alive receiving module for receiving a message; characterized in that it comprises a.
본 발명의 다른 실시예에 따른 킵얼라이브 통신 시스템은, 상기 서버가, 상기 킵얼라이브 메시지를 포함하는 메시지 송수신이 없는 상기 클라이언트의 온라인 상태를 유지하는 최대시간인 서버허용시간을 설정하고, 상기 킵얼라이브 주기 증가모듈은, 상기 서버허용시간 이내에서 상기 킵얼라이브 주기를 증가시키는 것을 특징으로 한다.In a keep-alive communication system according to another embodiment of the present invention, the server sets a server allowable time, which is a maximum time that the server maintains an online state of the client without a message transmission and reception including the keep-alive message, and the keep-alive is performed. The period increasing module may increase the keepalive period within the server allowable time.
본 발명의 다른 실시예에 따른 킵얼라이브 통신 시스템은, 상기 클라이언트가 상기 킵얼라이브 주기가 상기 서버허용시간에 도달하는 경우 상기 킵얼라이브 주기를 상기 서버허용시간으로 유지하는 킵얼라이브 주기 유지모듈;을 더 포함하는 것을 특징으로 한다.According to another aspect of the present invention, a keep-alive communication system includes: a keep-alive period maintaining module configured to maintain the keep-alive period as the server allowable time when the client reaches the server allowable time; It is characterized by including.
본 발명의 다른 실시예에 따른 킵얼라이브 통신 시스템은, 상기 클라이언트가 상기 킵얼라이브 주기 감소모듈에 의해 상기 킵얼라이브 주기가 감소한 경우 상기 감소된 킵얼라이브 주기로 유지하는 킵얼라이브 주기 유지모듈;을 더 포함하는 것을 특징으로 한다.The keep-alive communication system according to another embodiment of the present invention further includes a keep-alive period maintaining module configured to maintain the reduced keep-alive period by the client when the keep-alive period is reduced by the keep-alive period reduction module. It is characterized by.
본 발명의 다른 실시예에 따른 킵얼라이브 통신 시스템은, 상기 클라이언트가 상기 킵얼라이브 메시지의 전송이 실패한 것으로 판단하는 경우 상기 통신망에 재접속하고,킵얼라이브 전송모듈은, 상기 통신망에 재접속시 상기 킵얼라이브 메시지를 재전송하는 것을 특징으로 한다.The keep-alive communication system according to another embodiment of the present invention reconnects to the communication network when the client determines that the transmission of the keep-alive message has failed, and the keep-alive transmission module reconnects the keep-alive message upon reconnecting to the communication network. Characterized in that the retransmission.
본 발명의 다른 실시예에 따른 킵얼라이브 통신 시스템은, 상기 킵얼라이브 전송모듈이 상기 서버에게 회신 메시지를 요구하는 회신요구 킵얼라이브 메시지를 상기 킵얼라이브 메시지로 UDP/IP 프로토콜에 따라 전송하고, 상기 서버는, 상기 회신요구 킵얼라이브 메시지를 수신하는 경우 상기 클라이언트에게 상기 회신 메시지를 전송하는 회신 전송모듈;을 더 포함하고, 상기 클라이언트는, 상기 회신 전송모듈로부터 전송된 상기 회신 메시지를 수신하는 회신 수신모듈; 및 상기 회신요구 킵얼라이브 메시지의 전송에 따라 설정시간 내에 상기 회신 메시지를 수신하였는지 여부에 근거하여 상기 킵얼라이브 메시지의 전송성공 및 전송실패를 판정하는 전송성공 판정모듈;을 더 포함하는 것을 특징으로 한다.In a keep-alive communication system according to another embodiment of the present invention, the keep-alive transmission module transmits a reply request keep-alive message requesting a reply message to the server as the keep-alive message according to the UDP / IP protocol, and the server The reply sending module may further include: a reply sending module configured to send the reply message to the client when the reply request keepalive message is received, wherein the client receives the reply message sent from the reply sending module. ; And a transmission success determination module that determines transmission success and transmission failure of the keepalive message based on whether the response message is received within a set time according to the transmission of the reply request keepalive message. .
본 발명의 다른 실시예에 따른 킵얼라이브 통신 시스템은, 상기 킵얼라이브 전송모듈이 상기 킵얼라이브 주기 유지모듈에 의해 상기 킵얼라이브 주기가 유지되는 경우 상기 서버에게 회신 메시지를 요구하지 않는 회신비요구 킵얼라이브 메시지를 상기 킵얼라이브 메시지로 전송하는 것을 특징으로 한다.In a keep-alive communication system according to another embodiment of the present invention, the keep-alive transmission module does not request a reply message to the server when the keep-alive period is maintained by the keep-alive period maintenance module. The message is transmitted as the keepalive message.
본 발명의 다른 실시예에 따른 킵얼라이브 통신 시스템은, 킵얼라이브 전송모듈이 상기 서버에게 회신 메시지를 요구하지 않는 회신비요구 킵얼라이브 메시지와 상기 회신요구 킵얼라이브 메시지를 일정 비율에 따라 전송하는 것을 특징으로 한다.The keep-alive communication system according to another embodiment of the present invention is characterized in that a keep-alive transmission module transmits a non-response keepalive message that does not request a reply message to the server and the reply-request keepalive message according to a predetermined ratio. It is done.
본 발명의 다른 실시예에 따른 킵얼라이브 통신 시스템은, 클라이언트가 이동통신 사업자가 제공하는 데이터통신망에 접속하여 상기 킵얼라이브 메시지를 전송하는 경우, 현재 접속된 상기 데이터통신망의 이동통신 사업자 식별자를 통해 식별된 상기 데이터통신망의 장비허용시간을 상기 킵얼라이브 주기로 적용하는 것을 특징으로 한다.In a keep-alive communication system according to another embodiment of the present invention, when a client accesses a data communication network provided by a mobile communication provider and transmits the keep-alive message, the keep-alive communication system identifies the mobile communication provider identifier of the currently connected data communication network. The equipment allowance time of the data communication network is applied as the keepalive period.
본 발명의 다른 실시예에 따른 킵얼라이브 통신 시스템은, 상기 킵얼라이브 주기 증가모듈이 설정스텝으로 상기 킵얼라이브 주기를 증가시키고, 상기 전송 주기 감소모듈은 상기 설정스텝으로 상기 킵얼라이브 주기를 감소시키는 것을 특징으로 한다.In a keep-alive communication system according to another embodiment of the present invention, the keep-alive period increasing module increases the keep-alive period in a setting step, and the transmission period reduction module decreases the keep-alive period in the setting step. It features.
본 발명의 실시예에 따른 킵얼라이브 통신방법은, 통신망을 통해 클라이언트가 킵얼라이브 메시지를 서버에게 전송하되, 상기 클라이언트가 상기 서버에 접속하는 제 1 단계; 상기 클라이언트가 상기 서버에 상기 킵얼라이브 메시지를 전송하는 제 2 단계; 상기 클라이언트가 상기 킵얼라이브 메시지의 상기 서버로의 전송 여부를 판단하는 제 3 단계; 상기 제 3 단계의 판단결과 상기 킵얼라이브 메시지의 전송이 성공한 경우 상기 클라이언트가 킵얼라이브 주기를 증가시키고 상기 제 2 단계로 진행하는 제 4 단계; 상기 제 3 단계의 판단결과 상기 킵얼라이브 메시지의 전송이 실패한 경우 상기 클라이언트가 상기 킵얼라이브 주기를 감소시키고 상기 통신망에 재접속하는 제 5 단계; 및 상기 클라이언트가 상기 킵얼라이브 주기를 유지하여 상기 킵얼라이브 메시지를 전송하는 제 6 단계;를 포함하는 것을 특징으로 한다.A keep-alive communication method according to an embodiment of the present invention includes a first step of a client transmitting a keep-alive message to a server through a communication network, wherein the client accesses the server; A second step of the client sending the keepalive message to the server; A third step of the client determining whether to send the keepalive message to the server; A fourth step of the client increasing the keepalive period and proceeding to the second step if the transmission of the keepalive message is successful as a result of the determination of the third step; A fifth step of the client reducing the keepalive period and reconnecting to the communication network when transmission of the keepalive message fails as a result of the determination of the third step; And a sixth step of transmitting, by the client, the keepalive message by maintaining the keepalive period.
본 발명의 다른 실시예에 따른 킵얼라이브 통신방법은, 상기 제 4 단계에서 상기 킵얼라이브 메시지를 포함하는 메시지 송수신이 없는 상기 클라이언트를 온라인 상태로 상기 서버가 유지하는 최대시간인 서버허용시간에 상기 킵얼라이브 주기가 도달하는 경우 상기 제 6 단계로 진행하는 것을 특징으로 한다.In the keep-alive communication method according to another embodiment of the present invention, in the fourth step, the keep-alive is performed at a server allowable time, which is the maximum time the server maintains an online state without a message transmission and reception including the keep-alive message. If the alive cycle is reached, characterized in that the sixth step proceeds.
본 발명의 다른 실시예에 따른 킵얼라이브 통신방법은, 상기 제 5 단계에서 상기 클라이언트가 상기 통신망 재접속시 상기 킵얼라이브 메시지를 재전송하는 것을 특징으로 한다.The keep-alive communication method according to another embodiment of the present invention is characterized in that in the fifth step, the client retransmits the keep-alive message when the client reconnects to the communication network.
본 발명의 다른 실시예에 따른 킵얼라이브 통신방법은, 상기 제 4 단계는, 설정스텝 단위로 상기 킵얼라이브 주기를 증가시키고, 상기 제 5 단계는, 설정스텝 단위로 상기 킵얼라이브 주기를 감소시는 것을 특징으로 한다.In the keep-alive communication method according to another embodiment of the present invention, in the fourth step, the keep-alive period is increased in units of setting steps, and in the fifth step, the keep-alive period is decreased in units of setting steps. It is characterized by.
본 발명의 다른 실시예에 따른 킵얼라이브 통신방법은, 상기 제 2 단계는, 상기 서버에게 회신 메시지를 요구하는 회신요구 킵얼라이브 메시지를 UDP/IP 프로토콜에 따라 전송하고, 상기 제 3 단계는, 상기 클라이언트의 상기 회신 메시지의 수신여부를 근거로 상기 킵얼라이브 메시지의 전송 여부를 판단하는 것을 특징으로 한다.In the keep-alive communication method according to another embodiment of the present invention, the second step may include: sending a reply request keepalive message requesting a reply message to the server according to a UDP / IP protocol; and, in the third step, The method may determine whether to send the keepalive message based on whether the client receives the reply message.
본 발명의 다른 실시예에 따른 킵얼라이브 통신방법은, 상기 제 6 단계에서 상기 서버에게 회신 메시지를 요구하지 않는 회신비요구 킵얼라이브 메시지를 전송하는 것을 특징으로 한다.The keep-alive communication method according to another embodiment of the present invention is characterized in that, in the sixth step, a non-reply-required keep-alive message that does not request a reply message is transmitted to the server.
마지막으로, 본 발명의 다른 실시예에 따른 킵얼라이브 통신방법은, 상기 제 1 단계에서, 상기 클라이언트가 이동통신 사업자의 데이터통신망을 통해 상기 서버에 접속한 경우 상기 데이터통신망의 장비허용시간을 상기 킵얼라이브 주기로 적용하고 상기 제 6 단계로 진행하는 것을 특징으로 한다.
Lastly, the keep-alive communication method according to another embodiment of the present invention, in the first step, when the client is connected to the server through the data communication network of the mobile communication provider the equipment allowance time of the data communication network Applying in an alive cycle, characterized in that proceed to the sixth step.
본 발명에 따른 킵얼라이브 통신 시스템 및 통신방법은, 통신경로에 따라 최적의 킵얼라이브 주기를 클라이언트가 탐색하여 결정함으로써 불필요하게 잦은 킵얼라이브 메시지 전송으로 인한 네트워크 과부하를 방지하고 클라이언트 단말의 전력소모를 줄이는 효과를 제공한다.In the keep-alive communication system and the communication method according to the present invention, an optimal keep-alive period is searched and determined by the client according to a communication path, thereby preventing network overload due to unnecessary frequent keep-alive message transmission and reducing power consumption of the client terminal. Provide effect.
본 발명의 실시예에 따른 킵얼라이브 통신 시스템 및 통신방법은, 메시지의 정상전달 여부를 확인할 수 없는 프로토콜인 UDP/IP를 이용하여 킵얼라이브 통신을 수행하는 경우에도 서버에 회신을 요구하는 회신요구 킵얼라이브 메시지를 전송하여 킵얼라이브 메시지 정상전달 여부에 따라 최적의 킵얼라이브 주기를 결정할 수 있는 효과를 제공한다.In the keep-alive communication system and the communication method according to an embodiment of the present invention, even if the keep-alive communication is performed using UDP / IP, which is a protocol that cannot confirm whether a message is normally delivered or not, a request for replying to the server is required. By sending an Alive message, it is possible to determine the optimal keepalive period according to whether the keepalive message is normally delivered.
본 발명의 다른 실시예에 따른 킵얼라이브 통신 시스템 및 통신방법은, 상황에 따라 적절하게 회신요구 킵얼라이브 메시지 또는 회신비요구 킵얼라이브 메시지를 킵얼라이브 메시지를 전송함으로써 서버의 빈번한 회신 메시지로 인한 통신망 부하를 줄이는 효과를 제공한다.In the keep-alive communication system and the communication method according to another embodiment of the present invention, the network load due to the frequent reply message of the server by transmitting a keep-alive message for a reply request keepalive message or a non-reply request keepalive message appropriately according to a situation. Provides the effect of reducing
마지막으로, 본 발명의 다른 실시예에 따른 킵얼라이브 통신 시스템 및 통신방법은, 네트워크 장비의 장비허용시간을 초과한 킵얼라이브 주기로 인해 클라이언트의접속이 해제된 경우 클라이언트의 통신망 재접속시 킵얼라이브 메시지를 재전송함으로써 서버에서 해당 클라이언트를 오프라인 상태로 오인식하는 문제를 해결할 수 있는 효과를 제공한다.
Lastly, the keep-alive communication system and communication method according to another embodiment of the present invention retransmit the keep-alive message when the client reconnects to the network when the client is disconnected due to the keep-alive period exceeding the equipment allowable time of the network equipment. By doing so, the server can solve the problem of misrecognizing the client offline.
도 1은 회신비요구 킵얼라이브 메시지를 송수신하는 킵얼라이브 통신 시스템의 구성도.
도 2는 회신요구 킵얼라이브 메시지를 송수신하는 킵얼라이브 통신 시스템의 구성도.
도 3은 본 발명의 실시예에 따른 클라이언트의 상세 구성도.
도 4는 본 발명의 실시예에 따른 서버의 상세 구성도.
도 5는 본 발명의 실시예에 따른 킵얼라이브 통신 시스템의 네트워크 구성예를 도시하는 구성도.
도 6은 본 발명의 실시예에 따른 킵얼라이브 통신 시스템의 킵얼라이브 메시지의 전송 타이밍도.
도 7은 본 발명의 실시예에 따른 킵얼라이브 통신 시스템의 킵얼라이브 메시지의 전송 타이밍도.
도 8은 본 발명의 실시예에 따른 킵얼라이브 통신 시스템의 킵얼라이브 메시지의 전송 타이밍도.
도 9는 본 발명의 실시예에 따른 킵얼라이브 통신방법의 흐름도.1 is a block diagram of a keep-alive communication system for transmitting and receiving a non-reply keep-alive message.
2 is a block diagram of a keep-alive communication system for transmitting and receiving a reply request keep-alive message.
3 is a detailed configuration diagram of a client according to an embodiment of the present invention.
4 is a detailed configuration diagram of a server according to an embodiment of the present invention.
5 is a configuration diagram showing an example of a network configuration of a keepalive communication system according to an embodiment of the present invention;
6 is a timing diagram of transmission of a keepalive message of a keepalive communication system according to an exemplary embodiment of the present invention;
7 is a transmission timing diagram of a keepalive message of a keepalive communication system according to an embodiment of the present invention;
8 is a timing diagram of transmission of a keepalive message of a keepalive communication system according to an exemplary embodiment of the present invention;
9 is a flowchart of a keepalive communication method according to an embodiment of the present invention;
도 2는 본 발명에 따른 킵얼라이브 통신 시스템을 도시한다. 본 발명에 따른 킵얼라이브 통신 시스템은 클라이언트(100)와 서버(200)를 포함하여 구성된다.2 illustrates a keepalive communication system in accordance with the present invention. The keepalive communication system according to the present invention includes a
클라이언트(100)는 통신망을 통해 킵얼라이브 메시지(keep-alive_msg)를 서버(200)로 전송하는 기능을 수행하며, 통상의 이동통신 단말, 스마트폰, 노트북 PC, 태블릿 PC와 같은 사용자 단말기일 수 있다.The
서버(200)는, 킵얼라이브 메시지(keep-alive_msg)를 포함한 메시지를 지속적으로 전송하는 클라이언트(100)를 온라인 상태로 관리하고, 일정 시간 동안 킵얼라이브 메시지(keep-alive_msg)를 포함한 어떠한 메시지도 전송하지 않은 클라이언트(100)를 오프라인 상태로 관리하는 기능을 수행한다. 이러한 서버(200)로는 클라이언트(100)의 온라인 상태를 통신망을 통해 지속적으로 확인하고 클라이언트(100)들의 온라인 상태를 다른 사용자 클라이언트(100)에게 제공하는 메신저 서버를 예를 들 수 있다.The
도 3은 본 발명에 따른 클라이언트(100)의 상세구성을 도시한다. 클라이언트(100)는 킵얼라이브 전송모듈(110), 킵얼라이브 주기 증가모듈(120), 및 킵얼라이브 주기 감소모듈(130)을 포함하여 구성된다.3 shows a detailed configuration of the
킵얼라이브 전송모듈(110)은, 킵얼라이브 주기(TK)마다 통신망을 통해 킵얼라이브 메시지(keep-alive_msg)를 서버(200)에게 전송하는 기능을 수행한다.The
킵얼라이브 주기 증가모듈(120)은, 서버(200)가 킵얼라이브 메시지(keep-alive_msg) 수신을 성공한 경우 킵얼라이브 주기(TK)를 증가시키는 기능을 수행한다. The keepalive
킵얼라이브 주기 감소모듈(130)은, 킵얼라이브 주기 증가모듈(120)에 의해 증가한 킵얼라이브 주기(TK)가 적용된 킵얼라이브 메시지(keep-alive_msg)를 서버(200)에서 수신실패한 경우 킵얼라이브 주기(TK)를 다시 감소시키는 기능을 수행한다.The keep-alive
서버(200)가 킵얼라이브 메시지(keep-alive_msg) 수신에 성공한 경우는 현재 클라이언트(100)에 적용된 킵얼라이브 주기(TK)가 적절하거나 필요 이상으로 빈번한 것으로 판단할 수 있다. 따라서 킵얼라이브 주기(TK)의 증가여지가 있는지 확인하기 위해 킵얼라이브 주기 증가모듈(120)은 현재 적용된 킵얼라이브 주기(TK)를 증가시킨다.When the
반대로 서버(200)가 킵얼라이브 메시지(keep-alive_msg) 수신에 실패한 경우는 현재 클라이언트(100)에 적용된 킵얼라이브 주기(TK)가 통신망에 개재하는 네트워크 장비의 장비허용시간(TD)을 초과하여 이로 인해 클라이언트(200)의 통신망 접속이 해제된 것으로 판단할 수 있다. 따라서 이 경우는 킵얼라이브 주기(TK)가 장비허용시간(TD)을 초과하지 않도록 킵얼라이브 주기(TK)를 감소시킨다.On the contrary, when the
마지막으로, 서버(200)는 도 4에 도시된 바와 같이 킵얼라이브 메시지(keep-alive_msg)를 수신하는 킵얼라이브 수신모듈(210)을 포함하여 구성된다.Finally, the
상술한 클라이언트(100) 및 서버(200)의 구성에 따르면 현재 클라이언트(100)가 위치한 통신경로에서 가장 효율적인 킵얼라이브 주기(TK)가 자동으로 설정되기 때문에, 빈번한 킵얼라이브 메시지(keep-alive_msg) 전송으로 인한 네트워크 부담증가 및 클라이언트(100) 단말의 전력소모를 방지할 수 있는 효과를 제공한다.According to the configuration of the
한편, 종래의 킵얼라이브 통신에 따르면, 메신저 서비스의 특성 및 아이들 모드 동작을 고려하여 수신측과의 연결설정을 하지 않는 UDP/IP(User Datagram Protocol/Internet Protocol)를 통해 킵얼라이브 메시지(keep-alive_msg)를 전송하기 때문에, 도 1에 도시된 바와 같이 서버(200) 측에 별도의 회신 메시지(ack_msg)를 요구하지 않는다. 따라서 클라이언트(100)는 서버(200)가 킵얼라이브 메시지(keep-alive_msg)를 정상적으로 수신하였는지를 알 수가 없다. Meanwhile, according to the conventional keep-alive communication, a keep-alive message (keep-alive_msg) through UDP / IP (User Datagram Protocol / Internet Protocol) that does not establish a connection with a receiver in consideration of the characteristics of the messenger service and idle mode operation ), It does not require a separate reply message (ack_msg) to the
그런데, 본 발명에서는 서버(200)의 킵얼라이브 메시지(keep-alive_msg) 수신여부를 파악해야지만 킵얼라이브 주기(TK)의 증가 또는 감소를 결정할 수 있다. 본 발명의 실시예에 따르면 서버(200)의 킵얼라이브 메시지(keep-alive_msg) 수신여부를 확인하기 위한 방법으로 도 2에 도시한 바와 같이 서버(200)의 킵얼라이브 메시지(keep-alive_msg) 수신에 따라 회신 메시지(ack_msg)를 요구하는 회신요구 킵얼라이브 메시지(ackable_keep-alive_msg)를 이용한다.However, in the present invention, it is necessary to determine whether the
서버(200)가 회신요구 킵얼라이브 메시지(ackable_keep-alive_msg)를 수신하면 종래의 킵얼라이브 메시지(keep-alive_msg)의 수신시와 동일하게 해당 클라이언트(100)를 온라인 상태로 유지시킨다. 이와 더불어 서버(200)는 UDP/IP 통신임에도 불구하고 회신요구 킵얼라이브 메시지(ackable_keep-alive_msg)를 전송한 클라이언트(100)에게 회신 메시지(ack_msg)를 전송한다. 회신요구 킵얼라이브 메시지(ackable_keep-alive_msg)가 전송되고 이에 대한 회신 메시지(ack_msg)를 수신하는데 소요되는 시간은 수초 이내로 수백초에 달하는 킵얼라이브 주기(TK)에 비해 무시할 수 있을 정도로 짧기 때문에 클라이언트(100)는 서버(200)의 킵얼라이브 메시지(keep-alive_msg) 수신여부를 즉각적으로 파악할 수 있다.When the
회신요구 킵얼라이브 메시지(ackable_keep-alive_msg)를 구현하는 방법으로는 클라이언트(100)가 킵얼라이브 메시지(keep-alive_msg)를 구성하는 UDP/IP 패킷에 약속된 데이터를 포함시켜 전송하고, 서버(200)는 클라이언트(100)로부터 수신한 UDP/IP 패킷에 약속된 데이터가 포함된 경우 해당 클라이언트(100)에게 회신 메시지(ack_msg)를 전송하도록 설정하는 방법을 예시할 수 있다. As a method for implementing a reply request keepalive message (ackable_keep-alive_msg), the
이러한 실시예에 따르면 클라이언트(100)의 킵얼라이브 전송모듈(110)은 UDP/IP 프로토콜에 따라 서버(200)에게 회신 메시지(ack_msg)를 요구하는 회신요구 킵얼라이브 메시지(ackable_keep_alive_msg)를 킵얼라이브 메시지(keep-alive_msg)로 전송하고, 서버(200)는 회신요구 킵얼라이브 메시지(ackable_keep_alive_msg)를 수신하는 경우 클라이언트(100)에게 회신 메시지(ack_msg)를 전송하는 회신 전송모듈(220)을 더 포함한다. 또한 클라이언트(100)는 회신 전송모듈(220)로부터 전송된 회신 메시지(ack_msg)를 수신하는 회신 수신모듈(150) 및 회신요구 킵얼라이브 메시지(ackable_keep_alive_msg)의 전송에 따라 설정시간 내에 회신 메시지(ack_msg)를 수신하였는지 여부에 근거하여 킵얼라이브 메시지(keep-alive_msg)의 전송성공 및 전송실패를 판정하는 전송성공 판정모듈(160)을 더 포함한다.According to this embodiment, the
한편 킵얼라이브 주기(TK)는 설정스텝(예컨데 10초) 단위로 증가 또는 감소되는 것이 바람직하다. 이를 위해 본 발명에 실시예에 따른 킵얼라이브 통신 시스템의 킵얼라이브 주기 증가모듈(120)은 설정스텝으로 킵얼라이브 주기(TK)를 증가시키고, 주기 감소 모듈(130)은 역시 설정정스텝으로 킵얼라이브 주기(TK)를 감소시키도록 구성한다.Meanwhile, the keep-alive period T K is preferably increased or decreased in units of a setting step (for example, 10 seconds). To this end, the keep-alive
이하에서는 도 5 내지 도 8을 참조하여 네트워크 경로에 따른 킵얼라이브 주기(TK) 조정과정을 상세히 설명한다. 킵얼라이브 주기(TK)는 서버(200)의 최대허용시간인 서버허용시간(TS)이거나 서버허용시간(TS)에 다소 못 미치는 정도로 조정될 수도 있고, 통신경로에 따라서는 통신경로에 존재하는 네트워크 장비의 최대허용시간인 장비허용시간(TD)이거나 장비허용시간(TD)에 다소 못 미치는 정도로 조정된다. Hereinafter, a process of adjusting the keep-alive period T K according to the network path will be described in detail with reference to FIGS. 5 to 8. Keep-alive period (T K) may be adjusted so slightly short of the maximum allowable time, the server allows the time (T S) or a server permitted time (T S) of the
도 5의 통신경로 1의 경우와 같이 장비허용시간(TD)이 서버허용시간(TS)보다 긴 경우는 킵얼라이브 주기(TK)는 서버허용시간(TS)으로 조정되고, 경로 2 또는 경로 3과 같이 장비허용시간(TD)이 서버허용시간(TS)보다 짧은 경우는 킵얼라이브 주기(TK)는 가장 짧은 장비허용시간(TD)으로 조정된다.As in the case of the communication path 1 of FIG. 5, when the equipment allowable time T D is longer than the server allowable time T S , the keep-alive period T K is adjusted to the server allowable time T S , and the path 2 Alternatively, if the equipment allowable time (T D ) is shorter than the server allowable time (T S ) as in route 3, the keep-alive period (T K ) is adjusted to the shortest equipment allowable time (T D ).
이하에서는 최초 킵얼라이브 주기(TK)가 50초이고, 킵얼라이브 주기(TK)의 설정스텝이 10초인 경우를 예를 들어 설명한다. 최초 킵얼라이브 주기(TK)는 클라이언트(100)가 서버(200)에 최초로 접속하거나 새로운 네트워크를 통해 재접속하는 경우에 적용되는 킵얼라이브 주기(TK)로서 네트워크 경로에서 예상할 수 있는 가장 작은 장비허용시간(TD)을 고려하여 가급적 작게 설정하는 것이 바람직하다.Hereinafter, an example will be described in which the initial keep-alive period T K is 50 seconds and the setting step of the keep-alive period T K is 10 seconds. The first keep-alive period (T K) is the smallest equipment, which can be expected in a network path as the keep-alive period (T K) is applied when the
먼저, 통신경로 1의 네트워크에 속하는 클라이언트(100)의 킵얼라이브 주기(TK)는 50초에서 시작하여 10초 간격으로 26번 증가하여 27번째 킵얼라이브 메시지(KA27)의 킵얼라이브 주기(TK)는 도 6에 도시된 바와 같이 서버허용시간(TS)인 300초를 초과하는 310초에 이르게 된다. 이 경우 클라이언트(100)는 킵얼라이브 주기(TK)가 300초인 26번째 킵얼라이브 메시지(KA26)를 전송하고 이후 이보다 10초 증가한 310초의 새로운 킵얼라이브 주기(TK)를 적용하여 27번째 킵얼라이브 메시지(KA27)를 보내게 된다. 이때 서버허용시간(TS)인 300초 이후부터 27번째 킵얼라이브 메시지(KA27)를 수신하는 10초 동안 서버(200)는 해당 클라이언트(100)를 오프라인 상태로 잘못 인식하게 되는 문제가 발생한다.First, the keep-alive period T K of the
이러한 문제는 킵얼라이브 주기 증가모듈(120)의 상한을 서버허용시간(TS)으로 설정함으로써 해결할 수 있다. 장비허용시간(TD)은 통신경로에 따라 달라지는 반면 서버허용시간(TS)은 통신경로에 따라 달라지지 않기 때문에 서버(200)와 통신하는 클라이언트(100)는 이미 정해진 서버허용시간(TS) 이내로 킵얼라이브 주기(TK)를 제한하도록 설정할 수 있다. 구체적으로 서버(200)는, 킵얼라이브 메시지(keep-alive_msg)를 포함하는 메시지 송수신이 없는 클라이언트(100)의 온라인 상태를 유지하는 최대시간인 서버허용시간(TS)을 설정하고, 킵얼라이브 주기 증가모듈(120)은 서버허용시간(TS) 이내에서 킵얼라이브 주기(TK)를 증가시키도록 구성한다.This problem can be solved by setting the upper limit of the keep-alive
이때 클라이언트(100)는 이후의 킵얼라이브 메시지(keep-alive_msg)에 대해서는 킵얼라이브 주기(TK)를 서버허용시간(TS) 이내로 유지하도록 하는 킵얼라이브 주기 유지모듈(140)을 더 포함함으로써 네트워크 장비의 장비허용시간(TD)의 제한이 없는 경로 1과 같은 네트워크 경로에서는 킵얼라이브 주기(TK)를 서버허용시간(TS)인 300초 또는 그에 다소 못 미치는 정도로 유지하는 것이 바람직하다.In this case, the
다음으로, 도 7을 참조하여 도 5의 경로 2의 네트워크에 속하는 클라이언트(100)의 경우를 설명한다. 해당 클라이언트(100)의 킵얼라이브 주기(TK)는 50초에서 시작하여 10초 간격으로 6번 증가하여 7번째 킵얼라이브 메시지(KA7)의 킵얼라이브 주기(TK)는 네트워크 장비(322)의 장비허용시간(TD)인 100초를 초과하는 110초에 이른다. 이때 네트워크 장비(322)는 장비허용시간(TD)인 100초 경과로 인해 클라이언트(100)의 접속을 이미 해제해버린 상황이기 때문에 7번째 킵얼라이브 메시지(KA7)는 서버(200)에 도달하지 못한다.Next, the case of the
이에 따라 클라이언트(100)는 7번째 킵얼라이브 메시지(KA7)에 대한 회신 메시지(ack_msg)를 수신하지 못하게 되고, 킵얼라이브 주기 감소모듈(130)은 종전의 6번째 킵얼라이브 메시지(KA6)의 킵얼라이브 주기(TK)인 100초로 8번째 킵얼라이브 메시지(KA8)의 킵얼라이브 주기(TK)를 재조정한다. 또한 클라이언트(100)는 네트워크 접속해제를 복구하기 위해 8번째 킵얼라이브 메시지(KA8)의 전송 전에 네트워크에 재접속을 한다.Accordingly, the
한편 8번째 킵얼라이브 메시지(KA8) 이후로는 네트워크 장비(322)의 장비허용시간(TD)인 100초 또는 그에 다소 못 미치는 정도로 유지하는 것이 바람직하다. 이를 위해 본 발명의 실시예에 따른 킵얼라이브 통신 시스템의 클라이언트(100)는 킵얼라이브 주기 감소모듈(130)에 의해 킵얼라이브 주기(TK)가 설정스텝만큼 감소한 경우 킵얼라이브 주기(TK)를 유지하는 킵얼라이브 주기 유지모듈(140)을 더 포함하도록 구성한다. 이에 따라 킵얼라이브 주기(TK)가 증가하다 감소하게 되면 킵얼라이브 주기 유지모듈(140)은 최적 킵얼라이브 주기(TK)에 도달한 것으로 판단하여 이를 유지하는 기능을 수행한다.On the other hand, after the eighth keep-alive message KA8, it is preferable to maintain the device allowable time T D of the
마지막으로, 도 8을 참조하여 도 5의 경로 3 네트워크에 속하는 클라이언트(100)의 경우를 설명한다. 클라이언트(100)의 킵얼라이브 주기(TK)는 50초에서 시작하여 10초 간격으로 16번 증가하여 17번째 킵얼라이브 메시지(KA17)의 킵얼라이브 주기(TK)는 네트워크 장비(331)의 장비허용시간(TD)인 200초를 초과하는 210초가 된다.Finally, the case of the
이 경우 전술한 경로 2의 네트워크 상황과 동일하지만 16번째 킵얼라이브 메시지(KA16) 전송부터 18번째 킵얼라이브 메시지(KA18)의 전송까지 소요되는 시간이 410초로서 그 사이 서버허용시간(TS)인 300초가 도과하여 110초 동안 서버(200)가 해당 클라이언트(100)를 오프라인 상태로 잘못 인식하는 문제가 발생한다.In this case the same as the network situation of the above-described route 2, but in the 16th keepalive message (KA16) from transmission 18th keepalive message transmission is that between the server permit time (T S) as 410 seconds Time to the (KA18) After 300 seconds have elapsed, a problem arises in that the
이러한 문제를 해결하기 위해 킵얼라이브 전송모듈(110)은 킵얼라이브 메시지(keep-alive_msg) 전송이 실패한 경우 네트워크에 재접속하여 재접속시 킵얼라이브 메시지(keep-alive_msg) 역시 재전송하는 것이 바람직하다.In order to solve this problem, if the keep-
킵얼라이브 주기(TK)에 비해 킵얼라이브 메시지(keep-alive_msg)소요되는 시간은 현저히 짧기 때문에 회신요구 킵얼라이브 메시지(ackable_keep-alive_msg)의 전송 이후 수초 이내에 클라이언트(100)가 서버(200)로부터 회신 메시지(ack_msg)를 수신하지 못하면 장비허용시간(TD) 도과로 인한 네트워크 접속 해제 상황으로 인식하여 클라이언트(100)는 네트워크 재접속 후 킵얼라이브 메시지(keep-alive_msg)를 다시 전송하는 방법으로 서버허용시간(TS) 도과로 인한 서버(200)의 오프라인 오인식을 방지할 수 있다.Since the time required for the keep-alive message (keep-alive_msg) is significantly shorter than the keep-alive period (T K ), the
경로 1
Route 1
경로 2
Route 2
경로 3
Route 3
평 균
Average
고정식 KA 통신시스템(종래기술)
Fixed KA Communication System (Prior Technology)
100초
100 sec
100초
100 sec
100초
100 sec
100초
100 sec
적응식 KA 통신시스템(본원발명)
Adaptive KA communication system (original invention)
300초
300 seconds
100초
100 sec
200초
200 sec
200초
200 sec
표 1은 도 5에 도시된 네트워크 상황에서 종래기술에 따른 킵얼라이브 통신 시스템과 본 발명에 따른 킵얼라이브 통신 시스템의 킵얼라이브 주기(TK)를 비교한 것이다.Table 1 compares the keep-alive period T K between the keep-alive communication system according to the prior art and the keep-alive communication system according to the present invention in the network situation shown in FIG.
종래의 경우 킵얼라이브 주기(TK)를 변경시킬 수 없기 때문에 가장 작은 네트워크 장비(322)의 장비허용시간(TD)인 100초를 예상하여 킵얼라이브 주기(TK)를 100초를 적용하여야 하지만, 본 발명의 경우 네트워크 경로에 따라 적응적으로 킵얼라이브 주기(TK)가 결정되어 경로 1및 경로 3에서 킵얼라이브 메시지(keep-alive_msg)로 인한 트래픽이 1/3 및 1/2로 경감되고, 클라이언트(100) 단말의 전력소모 역시 1/3 및 1/2으로 감소하는 것이 확인된다. 경로 1, 경로 2, 경로 3이 각각 1/3 씩 점유하는 네트워크 환경에서는 본 발명에 따른 킵얼라이브 통신 시스템은 종래의 킵얼라이브 통신 시스템에 비해 평균적으로 킵얼라이브 메시지(keep-alive_msg)로 인한 트래픽과 전력소모를 1/2로 경감시킬 수 있다.In the conventional case, since the keep-alive period T K cannot be changed, the keep-alive period T K should be applied to 100 seconds in anticipation of the device allowable time T D of the
한편, 회신요구 킵얼라이브 메시지(ackable_keep-alive_msg)는 서버(200)의 회신 메시지(ack_msg)를 유발하기 때문에 다수의 클라이언트(100)가 동시에 서버(200)에 접속하는 킵얼라이브 통신 시스템에서 부가적인 트래픽 발생의 문제가 있다. 따라서 클라이언트(100)의 킵얼라이브 주기(TK)가 유지되는 상태에서는 클라이언트(100)의 킵얼라이브 전송모듈(110)은 더 이상 도 2의 회신요구 킵얼라이브 메시지(ackable_keep-alive_msg)를 전송하지 않고 회신요구하지 않는 도 3의 회신비요구 킵얼라이브 메시지(non_ackable_keep-alive_msg)를 전송하는 것이 바람직하다. 이러한 구성에 따르면 클라이언트(100)가 현재 접속한 통신 네트워크에 최적화된 킵얼라이브 주기(TK)를 결정한 이후에는 회신비요구 킵얼라이브 메시지(non_ackable_keep-alive_msg)를 전송함으로써 네트워크 트래픽을 경감시키는 효과를 제공한다.Meanwhile, since the reply request keepalive message (ackable_keep-alive_msg) causes the reply message (ack_msg) of the
또 다른 실시예로서, 킵얼라이브 전송모듈(110)은, 서버(200)에게 회신 메시지를 요구하지 않는 회신비요구 킵얼라이브 메시지(non_ackable_keep-alive_msg)와 회신요구 킵얼라이브 메시지(ackable_keep-alive_msg)를 일정 비율에 따라 전송하도록 구성할 수 있다. 이러한 실시예에 따르면, 클라이언트(100)는 예컨데 회신비요구 킵얼라이브 메시지(non_ackable_keep-alive_msg)를 10회 전송한 후 회신요구 킵얼라이브 메시지(ackable_keep-alive_msg)를 1회 전송하거나, 300초 단위에 한번씩 회신요구 킵얼라이브 메시지(ackable_keep-alive_msg)를 전송하고 그 외에는 회신비요구 킵얼라이브 메시지(non_ackable_keep-alive_msg)를 전송함으로써 클라이언트(100)가 접속한 통신망의 환경변화를 지속적으로 모니터링함과 동시에 회신 메시지(ack_msg)로 인한 과도한 트랙픽을 방지할 수 있다.In another embodiment, the keep-
마지막으로, 본 발명의 실시예에 따르면, 클라이언트(100)는 이동통신 사업자가 제공하는 데이터통신망에 접속하여 킵얼라이브 메시지(keep-alive_msg)를 전송하는 경우, 현재 접속된 데이터통신망의 이동통신 사업자 식별자를 통해 식별된 데이터통신망의 장비허용시간(TD)을 킵얼라이브 주기(TK)로 적용하는 것이 바람직하다.Lastly, according to an embodiment of the present invention, when the
스마트폰과 같은 클라이언트(100)는 WiFi 무선 LAN과 같은 일반 인터넷을 통해 서버(200)에 접속할 수도 있고, WCDMA, LTE(Long Term Evolution) 등과 같이 이동통신 사업자가 제공하는 데이터통신망을 통해 서버(200)에 접속할 수 있다. 일반 인터넷의 경우 같은 장소에서도 매번 라우팅 경로가 달라지기 때문에 통신경로에서 가장 작은 값을 가지는 인터넷 장비의 장비허용시간(TD) 예측이 불가능하지만, 이동통신 사업자의 데이터통신망은 데이터통신망 전체의 장비허용시간(TD)이 일정하다. 따라서 클라이언트(100)는 자신이 접속한 데이터통신망을 식별할 수 있는 경우, 매번 해당 데이터통신망의 최적 킵얼라이브 주기(TK)를 탐색하지 아니하고, 식별된 데이터통신망의 장비허용시간(TD)이 서버허용시간(TS) 보다 짧다면 해당 데이터통신망의 장비허용시간(TD)을 킵얼라이브 주기(TK)로 적용하는 것이 합리적이다.The
데이터통신망 접속시 클라이언트(100)가 데이터통신망으로부터 수신한 MCC(Mobile Country Code) 및 MNC(Mobile Network Code)를 통해 클라이언트(100)는 자신이 접속한 데이터통신망을 식별이 가능하다. 따라서 클라이언트(100)는 각 이동통신사업자가 제공하는 데이터통신망별 장비허용시간(TD)을 서버(200) 또는 데이터통신망을 통해 문의하여 수신된 장비허용시간(TD)을 고려하여 최적 킵얼라이브 주기(TK)를 적용하거나 특정 데이터통신망에 접속시 탐색된 최적 킵얼라이브 주기(TK)를 저장하였다가 동일한 데이터통신망에 접속시 저장된 최적 킵얼라이브 주기(TK)를 다시 사용하도록 구성할 수 있다. When the data communication network is connected, the
이러한 실시예에 따르면, 클라이언트(100)는, 이동통신 사업자가 제공하는 데이터통신망에 접속하여 킵얼라이브 메시지(keep-alive_msg)를 전송하는 경우, 현재 접속된 데이터통신망의 이동통신 사업자 식별자를 통해 식별된 데이터통신망의 장비허용시간(TD)을 킵얼라이브 주기(TK)로 적용하도록 구성한다.According to this embodiment, when the
이하에서는, 도 9를 참조하여 본 발명에 따른 킵얼라이브 통신 방법을 설명한다.Hereinafter, a keep-alive communication method according to the present invention will be described with reference to FIG. 9.
클라이언트(100)가 통신망을 통해 킵얼라이브 메시지(keep-alive_msg)를 서버(200)에게 전송하는 킵얼라이브 통신시스템에 있어서, 먼저 클라이언트(100)가 서버(200)에 접속하는 제 1 단계(S10)를 수행한다. 이를 통해 서버(200)는 해당 클라이언트(100)를 온라인 상태로 관리한다.In the keep-alive communication system in which the
다음으로, 클라이언트(100)가 서버(200)에게 킵얼라이브 메시지(keep-alive_msg)를 전송하는 제 2 단계(S20)를 수행한다. 이때 최초의 킵얼라이브 주기(TK)는 통신망에 개재하는 네트워크 장비의 장비허용시간(TD) 이내가 되도록 작게 설정하는 것이 바람직하다.Next, the
다음으로, 클라이언트(100)가 킵얼라이브 메시지(keep-alive_msg)의 서버(200)로의 전송 여부를 판단하는 제 3 단계(S30)를 수행한다. 이때 제 2 단계(S20)는,서버에게 회신 메시지(ack_msg)를 요구하는 회신요구 킵얼라이브 메시지(ackable_keep-alive_msg)를 UDP/IP 프로토콜에 따라 전송하고, 제 3 단계(S30)는, 클라이언트(100)의 회신 메시지(ack_msg) 수신여부를 근거로 킵얼라이브 메시지(keep-alive_msg) 전송 여부를 판단하는 것이 바람직하다. 이러한 구성을 통해 클라이언트(100)는 서버(200)의 킵얼라이브 메시지(keep-alive_msg)의 수신여부를 즉각적으로 확인할 수 있다.Next, the
다음으로, 제 3 단계(S30)의 판단결과 킵얼라이브 메시지(keep-alive_msg)의 전송이 성공한 경우 클라이언트(100)가 킵얼라이브 주기(TK)를 증가시키고 제 2 단계(S20)로 진행하는 제 4 단계(S40)를 수행한다. 킵얼라이브 메시지(keep-alive_msg)가 서버(200)로 정상적으로 전송된 경우는 킵얼라이브 주기(TK)의 증가여지가 있기 때문에 제 4 단계(S40)에서 킵얼라이브 주기(TK)가 증가하도록 구성한다.Next, when the transmission of the keep-alive message (keep-alive_msg) is successful in the third step S30, the
다만, 킵얼라이브 주기(TK)가 서버허용시간(TS)을 초과하여 증가하는 경우 서버(200)는 온라인 상태인 클라이언트(100)를 오프라인 상태로 오인식하는 문제가 생길 수 있다. 이러한 문제를 방지하기 위해 킵얼라이브 메시지(keep-alive_msg)를 포함하는 메시지 송수신이 없는 클라이언트(100)를 온라인 상태로 서버(200)가 유지하는 최대시간인 서버허용시간(TS)에 킵얼라이브 주기(TK)가 도달한 경우 킵얼라이브 주기(TK)를 서버허용시간(TS)으로 유지하여 킵얼라이브 메시지(keep-alive_msg)를 전송하는 제 6 단계(S60)로 진행하는 것이 보다 바람직하다.However, when the keep-alive period T K increases beyond the server allowable time T S , the
한편, 제 3 단계(S30)의 판단결과 킵얼라이브 메시지(keep-alive_msg)의 전송이 실패한 경우 클라이언트(100)가 킵얼라이브 주기(TK)를 감소시키고 통신망에 재접속하는 제 5 단계(S50)를 수행한다. 킵얼라이브 메시지(keep-alive_msg)가 서버(200)에 도달하지 않은 경우는 킵얼라이브 주기(TK)가 통신망에 개재하는 네트워크 장비의 장비허용시간(TD)을 초과하여 클라이언트(100)의 통신망 접속이 해제된 것으로 판단할 수 있다. 이 경우 클라이언트(100)는 통신망에 다시 접속을 시도하고 장비허용시간(TD) 이하로 킵얼라이브 주기(TK)를 감소시켜 킵얼라이브 통신을 안정적으로 유지하도록 조치한다.On the other hand, when the transmission of the keep-alive message (keep-alive_msg) fails in the third step (S30), the
제 5 단계(S50)의 킵얼라이브 주기(TK) 재조정 과정에서 전술한 도 8의 경우와 같이 서버허용시간(TS) 도과로 인해 서버(200)가 해당 클라이언트(100)를 오프라인 상태로 오인식하는 문제가 발생할 수 있다. 이를 방지하기 위해 클라이언트(100)는 통신망 재접속시 킵얼라이브 메시지(keep-alive_msg)를 재전송하는 것이 보다 바람직하다.The keep-alive period of step 5 (S50) (T K), as in the case of FIG. 8 in remediation process server allowable time (T S) due to
한편, 제 4 단계(S40)는 설정스텝 단위로 상기 킵얼라이브 주기(TK)를 증가시키고, 제 5 단계(S50)는 역시 설정스텝 단위로 상기 킵얼라이브 주기(TK)를 감소시는 것이 바람직하다.On the other hand, the fourth step S40 increases the keep-alive period T K in units of setting steps, and the fifth step S50 also decreases the keep-alive period T K in units of setting steps. desirable.
클라이언트(100)가 제 5 단계(S50)에 의해 감소된 킵얼라이브 주기(TK)를 유지하여 킵얼라이브 메시지(keep-alive_msg)를 전송하는 제 6 단계(S60)를 수행한다. 증가하던 킵얼라이브 주기(TK)가 다시 감소한 것은 현재 클라이언트(100)가 속해 있는 통신망에서 최적의 킵얼라이브 주기(TK)에 도달한 것으로 판단할 수 있기 때문에 해당 클라이언트(100)는 킵얼라이브 주기(TK)를 유지하여 킵얼라이브 통신을 계속 수행한다.The
클라이언트(100)가 킵얼라이브 주기(TK)를 유지하는 경우 물리적으로 이동하여 현재 네트우크 경로에서 이탈하여 새로운 네트워크 경로로 진입하지 않는 이상주기(TK)를 변화시킬 필요는 없어진다. 따라서 킵얼라이브 주기(TK)가 유지되는 상태에서는 도 2에 도시된 바와 같이 회신요구 킵얼라이브 메시지(ackable_keep-alive_msg)가 아닌 도 1에 도시된 바와 같이 회신비요구 킵얼라이브 메시지(non_ackable_keep-alive_msg)를 전송하는 것이 바람직하다.When the
마지막으로, 클라이언트(100)가 이동통신 사업자의 데이터통신망을 통해 서버(200)에 접속한 경우 데이터통신망의 장비허용시간(TD)을 킵얼라이브 주기(TK)로 적용하고 제 6 단계(S60)로 진행하는 것이 바람직하다.
Lastly, when the
100 : 클라이언트 110 : 킵얼라이브 전송모듈
120 : 킵얼라이브 주기 증가모듈
130 : 킵얼라이브 주기 감소모듈
140 : 킵얼라이브 주기 유지모듈
150 : 회신 수신모듈 160 : 전송성공 판정모듈
200 : 서버100: client 110: keepalive transmission module
120: keepalive cycle increase module
130: keepalive cycle reduction module
140: keepalive cycle maintenance module
150: reply receiving module 160: transmission success determination module
200: Server
Claims (17)
상기 클라이언트로부터의 상기 킵얼라이브 메시지의 수신에 따라 상기 클라이언트를 온라인 상태로 유지하는 서버;로 구성되는 킵얼라이브 통신 시스템에 있어서,
상기 클라이언트는, 킵얼라이브 주기마다 상기 킵얼라이브 메시지를 전송하는 킵얼라이브 전송모듈; 상기 킵얼라이브 메시지의 전송이 성공한 경우 상기 킵얼라이브 주기를 증가시키는 킵얼라이브 주기 증가모듈; 및 상기 킵얼라이브 주기 증가모듈에 의해 증가한 킵얼라이브 주기를 적용하여 전송한 상기 킵얼라이브 메시지의 전송이 실패한 경우 상기 킵얼라이브 주기를 감소시키는 킵얼라이브 주기 감소모듈;을 포함하고,
상기 서버는 상기 킵얼라이브 메시지를 수신하는 킵얼라이브 수신모듈;를 포함하고는 것을 특징으로 하는 킵얼라이브 통신 시스템.
A client transmitting a keepalive message over a communication network; And
A keep-alive communication system, comprising: a server that keeps the client online according to receipt of the keep-alive message from the client.
The client may further include: a keepalive transmission module configured to transmit the keepalive message at every keepalive period; A keep-alive period increasing module for increasing the keep-alive period when the transmission of the keep-alive message is successful; And a keep-alive period reduction module configured to reduce the keep-alive period when transmission of the keep-alive message transmitted by applying the keep-alive period increased by the keep-alive period increase module fails.
And the server comprises a keepalive receiving module which receives the keepalive message.
상기 서버는, 상기 킵얼라이브 메시지를 포함하는 메시지 송수신이 없는 상기 클라이언트의 온라인 상태를 유지하는 최대시간인 서버허용시간을 설정하고,
상기 킵얼라이브 주기 증가모듈은, 상기 서버허용시간 이내에서 상기 킵얼라이브 주기를 증가시키는 것을 특징으로 하는 킵얼라이브 통신 시스템.
The method of claim 1,
The server sets a server allowable time, which is a maximum time for maintaining the online state of the client without a message transmission and reception including the keepalive message,
And the keep-alive period increasing module increases the keep-alive period within the server allowable time.
상기 킵얼라이브 주기가 상기 서버허용시간에 도달하는 경우 상기 킵얼라이브 주기를 상기 서버허용시간으로 유지하는 킵얼라이브 주기 유지모듈;을 더 포함하는 것을 특징으로 하는 킵얼라이브 통신 시스템.
The method of claim 2, wherein the client,
And a keep-alive period maintaining module which maintains the keep-alive period at the server allowable time when the keep-alive period reaches the server allowable time.
상기 킵얼라이브 주기 감소모듈에 의해 상기 킵얼라이브 주기가 감소한 경우 감소된 상기 킵얼라이브 주기로 유지하는 킵얼라이브 주기 유지모듈;을 더 포함하는 것을 특징으로 하는 킵얼라이브 통신 시스템.
The method of claim 1, wherein the client,
And a keep-alive period maintaining module which maintains the reduced keep-alive period when the keep-alive period is reduced by the keep-alive period reduction module.
상기 클라이언트는, 상기 킵얼라이브 메시지의 전송이 실패한 것으로 판단하는 경우 상기 통신망에 재접속하고,
상기 킵얼라이브 전송모듈은, 상기 통신망에 재접속시 상기 킵얼라이브 메시지를 재전송하는 것을 특징으로 하는 킵얼라이브 통신 시스템.
The method of claim 4, wherein
If the client determines that the transmission of the keepalive message has failed, the client reconnects to the communication network,
The keep-alive transmission system, the keep-alive communication system, characterized in that for retransmitting the keep-alive message when reconnecting to the communication network.
상기 킵얼라이브 전송모듈은, 상기 서버에게 회신 메시지를 요구하는 회신요구 킵얼라이브 메시지를 UDP/IP 프로토콜에 따라 상기 킵얼라이브 메시지로 전송하고,
상기 서버는, 상기 회신요구 킵얼라이브 메시지를 수신하는 경우 상기 클라이언트에게 상기 회신 메시지를 전송하는 회신 전송모듈;을 더 포함하고,
상기 클라이언트는, 상기 회신 전송모듈로부터 전송된 상기 회신 메시지를 수신하는 회신 수신모듈; 및 상기 회신요구 킵얼라이브 메시지의 전송에 따라 설정시간 내에 상기 회신 메시지를 수신하였는지 여부에 근거하여 상기 킵얼라이브 메시지의 전송성공 및 전송실패를 판정하는 전송성공 판정모듈;을 더 포함하는 것을 특징으로 하는 킵얼라이브 통신 시스템.
The method according to claim 3 or 4,
The keepalive transmission module transmits a reply request keepalive message requesting a reply message to the server as the keepalive message according to a UDP / IP protocol,
The server further includes a reply transmission module for transmitting the reply message to the client when receiving the reply request keepalive message,
The client includes a reply receiving module for receiving the reply message sent from the reply transmitting module; And a transmission success determination module that determines transmission success and transmission failure of the keepalive message based on whether the response message is received within a set time according to transmission of the reply request keepalive message. Keepalive Communication System.
상기 킵얼라이브 주기 유지모듈에 의해 상기 킵얼라이브 주기가 유지되는 경우 상기 서버에게 상기 회신 메시지를 요구하지 않는 회신비요구 킵얼라이브 메시지를 상기 킵얼라이브 메시지로 전송하는 것을 특징으로 하는 킵얼라이브 통신 시스템.
The keepalive transmission module of claim 6,
And if the keep-alive period is maintained by the keep-alive period maintaining module, sending a non-returned keep-alive message that does not request the reply message to the server as the keep-alive message.
상기 서버에게 상기 회신 메시지를 요구하지 않는 회신비요구 킵얼라이브 메시지와 상기 회신요구 킵얼라이브 메시지를 일정 비율에 따라 전송하는 것을 특징으로 하는 킵얼라이브 통신 시스템.
The keepalive transmission module of claim 6,
A keep-alive communication system, characterized in that the server transmits a non-response keep-alive message not requiring the reply message to the server and the reply-request keepalive message at a predetermined ratio.
이동통신 사업자가 제공하는 데이터통신망에 접속하여 상기 킵얼라이브 메시지를 전송하는 경우, 현재 접속된 상기 데이터통신망의 이동통신 사업자 식별자를 통해 식별된 상기 데이터통신망의 장비허용시간을 상기 킵얼라이브 주기로 적용하는 것을 특징으로 하는 킵얼라이브 통신 시스템.
The method of claim 1, wherein the client,
In case of transmitting the keepalive message by accessing a data communication network provided by a mobile communication provider, applying the equipment allowance time of the data communication network identified through the mobile communication service provider identifier of the currently connected data communication network as the keepalive period. Keep alive communication system characterized by.
상기 킵얼라이브 주기 증가모듈은 설정스텝으로 상기 킵얼라이브 주기를 증가시키고,
상기 전송 주기 감소모듈은 상기 설정스텝으로 상기 킵얼라이브 주기를 감소시키는 것을 특징으로 하는 킵얼라이브 통신 시스템.
The method of claim 1,
The keepalive period increasing module increases the keepalive period in a setting step,
And the transmission period reducing module reduces the keepalive period in the setting step.
상기 클라이언트가 상기 서버에 접속하는 제 1 단계;
상기 클라이언트가 상기 서버에 상기 킵얼라이브 메시지를 전송하는 제 2 단계;
상기 클라이언트가 상기 킵얼라이브 메시지의 상기 서버로의 전송 여부를 판단하는 제 3 단계;
상기 제 3 단계의 판단결과 상기 킵얼라이브 메시지의 전송이 성공한 경우 상기 클라이언트가 킵얼라이브 주기를 증가시키고 상기 제 2 단계로 진행하는 제 4 단계;
상기 제 3 단계의 판단결과 상기 킵얼라이브 메시지의 전송이 실패한 경우 상기 클라이언트가 상기 킵얼라이브 주기를 감소시키고 상기 통신망에 재접속하는 제 5 단계; 및
상기 클라이언트가 상기 킵얼라이브 주기를 유지하여 상기 킵얼라이브 메시지를 전송하는 제 6 단계;를 포함하는 것을 특징으로 하는 킵얼라이브 통신 방법.
A keep-alive communication method in which a client transmits a keep-alive message to a server through a communication network, and the server keeps the client that has sent the keep-alive message online.
A first step of the client connecting to the server;
A second step of the client sending the keepalive message to the server;
A third step of the client determining whether to send the keepalive message to the server;
A fourth step of the client increasing the keepalive period and proceeding to the second step if the transmission of the keepalive message is successful as a result of the determination of the third step;
A fifth step of the client reducing the keepalive period and reconnecting to the communication network when transmission of the keepalive message fails as a result of the determination of the third step; And
And a sixth step of the client transmitting the keepalive message by maintaining the keepalive period.
상기 킵얼라이브 메시지를 포함하는 메시지 송수신이 없는 상기 클라이언트를 온라인 상태로 상기 서버가 유지하는 최대시간인 서버허용시간에 상기 킵얼라이브 주기가 도달하는 경우 상기 제 6 단계로 진행하는 것을 특징으로 하는 킵얼라이브 통신 방법.
The method of claim 11, wherein the fourth step,
If the keep-alive period reaches the server allowable time, which is the maximum time the server maintains the client online without a message transmission and reception including the keep-alive message, the keep-alive step proceeds to the sixth step. Communication method.
상기 클라이언트가 상기 통신망 재접속시 상기 킵얼라이브 메시지를 재전송하는 것을 특징으로 하는 킵얼라이브 통신 방법.
The method of claim 12, wherein the fifth step,
And the client retransmits the keepalive message when the network reconnects.
상기 제 4 단계는, 설정스텝 단위로 상기 킵얼라이브 주기를 증가시키고,
상기 제 5 단계는, 설정스텝 단위로 상기 킵얼라이브 주기를 감소시는 것을 특징으로 하는 킵얼라이브 통신 방법.
The method of claim 11,
In the fourth step, the keep-alive period is increased in units of setting steps.
The fifth step is a keep-alive communication method, characterized in that for reducing the keep-alive period in the setting step unit.
상기 제 2 단계는, 상기 서버에게 회신 메시지를 요구하는 회신요구 킵얼라이브 메시지를 UDP/IP 프로토콜에 따라 전송하고,
상기 제 3 단계는, 상기 클라이언트의 상기 회신 메시지의 수신여부를 근거로 상기 킵얼라이브 메시지의 전송 여부를 판단하는 것을 특징으로 하는 킵얼라이브 통신방법.
The method of claim 11,
The second step is to send a reply request keepalive message requesting a reply message to the server according to a UDP / IP protocol,
The third step, the keep-alive communication method characterized in that it determines whether or not to send the keepalive message based on whether the client receives the reply message.
상기 서버에게 회신 메시지를 요구하지 않는 회신비요구 킵얼라이브 메시지를 전송하는 것을 특징으로 하는 킵얼라이브 통신방법.
The method of claim 15, wherein the sixth step is
A keep-alive communication method, characterized in that for transmitting a non-response keepalive message not requesting a reply message to the server.
상기 클라이언트가 이동통신 사업자의 데이터통신망을 통해 상기 서버에 접속한 경우 상기 데이터통신망의 장비허용시간을 상기 킵얼라이브 주기로 적용하고 상기 제 6 단계로 진행하는 것을 특징으로 하는 킵얼라이브 통신방법.The method of claim 11, wherein the first step,
If the client is connected to the server through a data communication network of the mobile communication provider, the keep-alive communication method characterized in that the equipment allowance time of the data communication network is applied as the keepalive period and proceeds to the sixth step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110066144A KR101256801B1 (en) | 2011-07-04 | 2011-07-04 | System and method for keep-alive communication |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110066144A KR101256801B1 (en) | 2011-07-04 | 2011-07-04 | System and method for keep-alive communication |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130004845A true KR20130004845A (en) | 2013-01-14 |
KR101256801B1 KR101256801B1 (en) | 2013-04-22 |
Family
ID=47836342
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110066144A KR101256801B1 (en) | 2011-07-04 | 2011-07-04 | System and method for keep-alive communication |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101256801B1 (en) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1860832A1 (en) * | 2006-05-24 | 2007-11-28 | Motorola, Inc. | UMA/GAN keep-alive mechanism in wireless communication networks |
KR101328922B1 (en) * | 2006-09-27 | 2013-11-14 | 엘지전자 주식회사 | Mobile terminal and Method for improving access rate point to point protocol in thereof |
US8477811B2 (en) * | 2008-02-02 | 2013-07-02 | Qualcomm Incorporated | Radio access network (RAN) level keep alive signaling |
US9313800B2 (en) | 2009-06-23 | 2016-04-12 | Nokia Technologies Oy | Method and apparatus for optimizing energy consumption for wireless connectivity |
-
2011
- 2011-07-04 KR KR1020110066144A patent/KR101256801B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR101256801B1 (en) | 2013-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9832681B2 (en) | Higher layer compression with lower layer signaling | |
US8516127B2 (en) | Method and system for maintaining connections between a terminal and servers in a communication system | |
US20040063454A1 (en) | End-to-end delay control method for both suppressing end-to-end delay time to a standard value or less and optimizing power-save operations | |
US20080244023A1 (en) | Methods and systems for performing server-based mobile chat | |
US8984158B2 (en) | Data communication system and method | |
US20150304201A1 (en) | Delivery device, communication system, load balancing method, and load balancing program | |
CN108401002B (en) | File transmission method and equipment | |
CN102780712B (en) | Conversation switching method and device | |
US11528345B2 (en) | Data transmission method and system, and apparatus | |
US11184799B2 (en) | WiFi TCP performance in multi-radio coexistence cases | |
US20120077464A1 (en) | Method for managing a status of a mobile station in a wireless network | |
US20140250165A1 (en) | Method and Devices for Session Timeout Management | |
KR101224557B1 (en) | System, client device, and method for keep-alive communication | |
WO2020238895A1 (en) | Data transmission method and apparatus | |
CN113422780A (en) | Heartbeat interval adjusting method and device based on TCP (Transmission control protocol) long connection | |
KR101256801B1 (en) | System and method for keep-alive communication | |
WO2022033083A1 (en) | Decoding method, decoding system, electronic apparatus, and storage medium | |
US10299286B2 (en) | Method and apparatus for managing uplink traffic from a client device in a communication network | |
US9877264B2 (en) | Apparatus and method for reducing transmission delay of HTTP protocol and processing load of HTTP server in wireless communications network | |
US9882682B2 (en) | Message distributing system, message distributing apparatus, message distributing method and message distributing program | |
JP2014146876A (en) | Message distribution system and message distribution method | |
US20120307714A1 (en) | Method and System for Data Transmission | |
US11956328B1 (en) | Avoiding stuck subscriber sessions on a disaggregated broadband network gateway | |
KR100864481B1 (en) | Ghost server system for improving throughput of wireless internet and operation method of the same | |
KR20190017351A (en) | TRAFFIC CONTROL METHOD AND TRAFFIC CONTROL SERVER FOR IoT SERVICE |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20160411 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20170417 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |