KR102298679B1 - Method And Device For Message Reception Frequency Control - Google Patents

Method And Device For Message Reception Frequency Control Download PDF

Info

Publication number
KR102298679B1
KR102298679B1 KR1020200074982A KR20200074982A KR102298679B1 KR 102298679 B1 KR102298679 B1 KR 102298679B1 KR 1020200074982 A KR1020200074982 A KR 1020200074982A KR 20200074982 A KR20200074982 A KR 20200074982A KR 102298679 B1 KR102298679 B1 KR 102298679B1
Authority
KR
South Korea
Prior art keywords
message
topic
receiver
stored
broker
Prior art date
Application number
KR1020200074982A
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 KR1020200074982A priority Critical patent/KR102298679B1/en
Application granted granted Critical
Publication of KR102298679B1 publication Critical patent/KR102298679B1/en

Links

Images

Classifications

    • H04L67/2823
    • H04L67/2809
    • H04L67/2842
    • H04L67/325

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

The present invention relates to a method for controlling a message reception frequency to increase the overall performance of an Internet of things (IoT) system and a device thereof. According to the present invention, the method comprises: a message request step of receiving, by a broker, a subscription request packet for a message of a predetermined topic from a receiver (subscriber); a list generation step of generating, by the broker, a subscription list including a message topic associated with the receiver according to the subscription request packet transmitted from the corresponding receiver; and a message transmission step of copying, by the broker, a message of the same topic as that included in the subscription list among messages of various topics issued from a publisher to transmit from a message queue to transmit the message to the receiver. The message request step transmits a subscription request packet including a predetermined time frequency to receive the message of the predetermined topic from the receiver to the broker. The list generation step allows the broker to generate a subscription list including a maximum reception period corresponding to the predetermined time frequency to transmit the message of the predetermined topic to the receiver. The message transmission step transmits the message of the specific topic to the receiver from the broker at the maximum reception period included in the subscription list.

Description

메시지 수신 빈도 제어 방법 및 장치{Method And Device For Message Reception Frequency Control}Method And Device For Message Reception Frequency Control

본 발명의 실시예는 메시지 수신 빈도 제어 방법 및 장치에 관한 것이다.An embodiment of the present invention relates to a method and apparatus for controlling message reception frequency.

MQTT는 현재 IoT 시스템의 메시지 전달 브로커로 사용되는데, 이러한 MQTT는 메시지를 발행하는 발신기와 해당 메시지를 구독하는 수신기 간의 메시지 매개자로 기능한다. MQTT is currently used as a message delivery broker in IoT systems, and this MQTT functions as a message intermediary between a sender that publishes a message and a receiver that subscribes to the message.

도 1은 종래의 MQTT 브로커의 내부 구조도이다.1 is an internal structural diagram of a conventional MQTT broker.

MQTT 프로토콜을 사용하는 IoT 시스템은 도 1에 도시된 바와 같이, MQTT 브로커, 수신기 및 발신기로 구성되는데, 이러한 수신기 및 발신기를 서로 연결하는 것은 토픽(Topic)이라고 하는 텍스트 데이터이다.As shown in FIG. 1, an IoT system using the MQTT protocol consists of an MQTT broker, a receiver, and a transmitter, and it is text data called a topic that connects these receivers and transmitters to each other.

수신기는 토픽과 관련된 메시지를 수신하기 위해 MQTT 브로커에 해당 토픽을 등록하고, MQTT 브로커는 이러한 수신기 정보를 토픽과 함께 구독 목록에 저장하여 관리하는데, 발신기가 다양한 토픽의 메시지를 MQTT 브로커로 보내면 MQTT 브로커는 해당 메시지와 동일한 토픽을 가진 모든 수신기로 메시지를 전송한다.A receiver registers a topic with an MQTT broker to receive messages related to a topic, and the MQTT broker stores and manages this receiver information together with the topic in a subscription list. sends a message to all receivers with the same topic as the message.

따라서, 발신기, 예를 들면 사용자 장치를 포함한 일부 센서나 장치가 매우 높은 빈도로 데이터를 발행하는 경우, MQTT 프로토콜은 수신기가 수신할 메시지 양을 제어하기 위한 지정된 표준이 없기 때문에 해당 수신기는 모든 메시지를 수신함으로써 네트워크의 전체적인 트래픽이 증가되는 문제점이 있다.So, if some sensor or device, including a sender, e.g. a user device, publishes data at a very high frequency, that receiver receives all messages because the MQTT protocol does not have a specified standard for controlling the amount of messages a receiver will receive. There is a problem in that the overall traffic of the network is increased by receiving.

따라서, 본 출원인은 이러한 종래의 문제점을 해결하기 위해, MQTT 프로토콜에 메시지 수신 빈도 제어(Reception Frequency Control,RFC) 기능을 도입하여, 메시지 수신기가 메시지를 수신할 특정 시간 빈도(specific time frequency)를 결정한 후, 해당 시간 빈도와 메시지 관련 토픽이 포함된 패킷을 MQTT 브로커에 송신함으로써 해당 수신기가 해당 토픽과 관련된 메시지를 해당 시간 빈도로 수신하도록 함으로써 네트워크의 전체적인 트래픽을 감소시킬 수 있는 발명을 완성하였다.Accordingly, the present applicant has introduced a message reception frequency control (RFC) function to the MQTT protocol in order to solve this conventional problem, and the message receiver determines a specific time frequency to receive the message. Then, by sending a packet including the corresponding time frequency and message-related topic to the MQTT broker, the receiver receives the message related to the corresponding topic at the corresponding time frequency, thereby completing an invention that can reduce the overall traffic of the network.

대한민국 공개특허공보 제10-2018-0105917호(2018.10.01.)Republic of Korea Patent Publication No. 10-2018-0105917 (2018.10.01.)

본 발명은 IoT 시스템에서 수신기가 메시지를 수신하는 빈도를 제어하여 해당 수신기로 제공되는 불필요한 메시지의 전달을 감소시킴으로써 수신기가 자체 용량에 따른 처리 가능한 메시지만을 수신하게 하고, 이에 따라 네트워크의 전체적인 트래픽을 줄임으로써 IoT 시스템의 전체 성능을 향상시킬 수 있는 메시지 수신 빈도 제어 방법 및 장치를 제공하는 것을 목적으로 한다.The present invention reduces the transmission of unnecessary messages provided to the receiver by controlling the frequency at which the receiver receives messages in the IoT system, so that the receiver receives only messages that can be processed according to its own capacity, thereby reducing the overall traffic of the network. An object of the present invention is to provide a method and apparatus for controlling message reception frequency that can improve the overall performance of the IoT system.

상기한 바와 같은 목적을 달성하기 위한 본 발명에 따른 메시지 수신 빈도 제어 방법은 브로커(Broker)가 수신기(Subscriber)로부터 특정 토픽(Topic)의 메시지에 대한 구독 신청 패킷을 전송받는 메시지 신청 단계; 상기 브로커가 상기 수신기로부터 전송된 구독 신청 패킷에 따라 해당 수신기와 연계된 메시지 토픽이 포함된 구독 목록을 생성하는 목록 생성 단계; 및 상기 브로커가 발신기(Publisher)에서 발행한 다양한 토픽의 메시지 중 상기 구독 목록에 포함된 메시지 토픽과 동일한 토픽의 메시지를 메시지 큐(Queue)로부터 복사하여 상기 수신기로 전송하는 메시지 전송 단계;를 포함하되, 상기 메시지 신청 단계에서는, 상기 수신기가 상기 특정 토픽의 메시지를 수신할 특정 시간 빈도가 포함된 구독 신청 패킷이 상기 브로커로 전송되고, 상기 목록 생성 단계에서는, 상기 브로커가 상기 특정 토픽의 메시지를 상기 수신기로 전송할 상기 특정 시간 빈도와 대응하는 최대 수신 주기가 포함된 구독 목록을 생성하며, 상기 메시지 전송 단계에서는, 상기 브로커가 상기 구독 목록에 포함된 최대 수신 주기로 상기 특정 토픽의 메시지를 상기 수신기로 전송하는 것을 특징으로 한다.A method for controlling message reception frequency according to the present invention for achieving the above object includes: a message request step in which a broker receives a subscription request packet for a message of a specific topic from a receiver (Subscriber); a list generation step of the broker generating a subscription list including a message topic associated with the corresponding receiver according to the subscription request packet transmitted from the receiver; and a message transmission step of copying a message of the same topic as a message topic included in the subscription list among messages of various topics issued by the broker from a publisher (Publisher) from a message queue and transmitting the message to the receiver; , in the message request step, a subscription request packet including a specific time frequency for the receiver to receive the message of the specific topic is transmitted to the broker, and in the list creation step, the broker sends the message of the specific topic to the broker Generates a subscription list including a maximum reception period corresponding to the specific time frequency to be transmitted to a receiver, and in the message transmission step, the broker transmits the message of the specific topic to the receiver with the maximum reception period included in the subscription list characterized in that

또한, 상기 구독 신청 패킷은, 상기 수신기가 수신할 메시지의 토픽이 저장되는 토픽 영역; 및 상기 수신기가 상기 특정 토픽의 메시지를 수신할 특정 시간 빈도가 저장되는 빈도 영역;을 포함할 수 있다.In addition, the subscription request packet may include: a topic area in which a topic of a message to be received by the receiver is stored; and a frequency region in which a specific time frequency for the receiver to receive the message of the specific topic is stored.

또한, 상기 구독 목록은, 상기 구독 신청 패킷의 토픽 영역에 저장된 토픽과 대응하여 상기 수신기와 연계된 메시지의 토픽이 저장되는 메시지 토픽 필드; 상기 구독 신청 패킷의 빈도 영역에 저장된 특정 시간 빈도와 대응하여 상기 수신기와 연계된 메시지의 최대 수신 주기가 저장되는 메시지 수신주기 필드; 상기 메시지가 상기 수신기에 마지막으로 전송된 이전 전송시간이 저장되는 메시지 이전 전송시간 필드; 및 상기 메시지 토픽 필드에 저장된 메시지 토픽과 동일한 토픽의 메시지가 상기 메시지 큐로부터 복사되어 저장되는 메시지 버퍼 필드;를 포함할 수 있다.In addition, the subscription list may include: a message topic field in which a topic of a message associated with the receiver is stored in correspondence with the topic stored in the topic area of the subscription request packet; a message reception period field in which a maximum reception period of a message associated with the receiver is stored in correspondence with a specific time frequency stored in the frequency area of the subscription request packet; a message previous transmission time field in which a previous transmission time when the message was last transmitted to the receiver is stored; and a message buffer field in which a message of the same topic as the message topic stored in the message topic field is copied from the message queue and stored.

또한, 상기 메시지 전송 단계는, 상기 브로커가 상기 메시지 큐에 저장된 각 메시지의 토픽을 상기 구독 목록의 메시지 토픽 필드에 저장된 각 메시지 토픽과 순차적으로 비교하는 메시지 토픽 비교 공정; 상기 메시지 큐에 저장된 메시지의 토픽과 상기 메시지 토픽 필드에 저장된 메시지 토픽이 서로 동일한 경우, 상기 브로커가 하기 [수학식 1]을 만족하는지 여부를 판단하는 전송여부 판단 공정; 하기 [수학식 1]을 만족하는 경우, 상기 브로커가 상기 구독 목록에 포함된 메시지 토픽과 동일한 토픽의 메시지를 상기 메시지 큐로부터 복사하여 상기 메시지 버퍼 필드에 저장하는 메시지 저장 공정; 및 상기 브로커가 상기 메시지 버퍼 필드에 저장된 메시지를 상기 수신기로 전송하는 메시지 전송 공정;을 포함할 수 있다.In addition, the message sending step may include: a message topic comparison process in which the broker sequentially compares the topic of each message stored in the message queue with each message topic stored in the message topic field of the subscription list; a transmission decision step of determining whether the broker satisfies the following [Equation 1] when the topic of the message stored in the message queue and the message topic stored in the message topic field are the same; a message storage process in which the broker copies a message of the same topic as the message topic included in the subscription list from the message queue and stores it in the message buffer field when the following [Equation 1] is satisfied; and a message transmission process in which the broker transmits the message stored in the message buffer field to the receiver.

[수학식 1][Equation 1]

Figure 112020063354096-pat00001
Figure 112020063354096-pat00001

(여기서, Tcurrent은 현재 시간, Tprev은 메시지 이전 전송시간, Tperiod은 메시지 최대 수신 주기, Tcurrent - Tprev > Tperiod은 현재 시간과 메시지 이전 전송시간의 차가 메시지 최대 수신 주기보다 큰 경우)(Here, T current is the current time, T prev is the transmission time before the message, T period is the maximum message reception period, and T current - T prev > T period is when the difference between the current time and the transmission time before the message is greater than the maximum message reception period )

또한, 상기 [수학식 1]을 만족하지 않는 경우, 상기 브로커가 상기 메시지 토픽 비교 공정을 재수행할 수 있다.In addition, when [Equation 1] is not satisfied, the broker may re-perform the message topic comparison process.

또한, 상기 전송여부 판단 공정에서는, 상기 메시지 큐에 저장된 메시지의 토픽과 상기 메시지 토픽 필드에 저장된 메시지 토픽이 서로 동일한 경우, 상기 브로커가 하기 [수학식 2]를 만족하는지 여부를 더 판단하고, 하기 [수학식 2]을 만족하는 경우, 상기 브로커가 상기 메시지 저장 공정을 수행할 수 있다.In addition, in the transmission or not determining step, when the topic of the message stored in the message queue and the message topic stored in the message topic field are the same, it is further determined whether the broker satisfies the following [Equation 2], When [Equation 2] is satisfied, the broker may perform the message storage process.

[수학식 2][Equation 2]

Figure 112020063354096-pat00002
Figure 112020063354096-pat00002

(여기서, Tperiod = 0은 메시지 최대 수신 주기가 설정되지 않은 경우)(Here, T period = 0 when the maximum message reception period is not set)

또한, 상기 브로커가 상기 메시지 저장 공정 후, 상기 메시지 큐에 저장된 다양한 토픽의 메시지 중 상기 메시지 버퍼 필드에 저장한 메시지의 토픽과 동일한 토픽의 메시지를 삭제하는 메시지 삭제 공정;을 더 포함할 수 있다.The method may further include a message deletion process in which the broker deletes a message of the same topic as the topic of the message stored in the message buffer field among messages of various topics stored in the message queue after the message storage process.

또한, 상기 브로커가 상기 메시지 전송 공정 후, 상기 구독 목록의 메시지 이전 전송시간 필드에 저장된 메시지 이전 전송시간(Tprev)을 현재 시간(Tcurrent)으로 변경하는 전송시간 변경 공정; 및 상기 브로커가 상기 구독 목록의 메시지 버퍼 필드를 더티(dirty)로 표시하는 전송상태 표시 공정;을 더 포함할 수 있다.In addition, the broker after the message transmission process, a transmission time changing process of changing the message previous transmission time (T prev ) stored in the message previous transmission time field of the subscription list to the current time (T current ); and a transmission status display process in which the broker displays the message buffer field of the subscription list as dirty.

또한, 본 발명에 따른 메시지 수신 빈도 제어 장치는 수신기(Subscriber)로부터 전송된 특정 토픽(Topic)의 메시지에 대한 구독 신청 패킷에 따라 해당 수신기와 연계된 메시지 토픽이 포함된 구독 목록을 생성한 후, 발신기(Publisher)에서 발행한 다양한 토픽의 메시지 중 상기 구독 목록에 포함된 메시지 토픽과 동일한 토픽의 메시지를 메시지 큐(Queue)로부터 복사하여 상기 수신기로 전송하는 브로커(Broker);를 포함하되, 상기 브로커는, 상기 수신기로부터 상기 특정 토픽의 메시지를 수신할 특정 시간 빈도가 포함된 구독 신청 패킷을 전송받고, 상기 특정 토픽의 메시지를 상기 수신기로 전송할 상기 특정 시간 빈도와 대응하는 최대 수신 주기가 포함된 구독 목록을 생성하며, 상기 구독 목록에 포함된 최대 수신 주기로 상기 특정 토픽의 메시지를 상기 수신기로 전송하는 것을 특징으로 한다.In addition, the message reception frequency control apparatus according to the present invention generates a subscription list including a message topic associated with the receiver according to a subscription request packet for a message of a specific topic transmitted from a receiver (Subscriber), A broker that copies messages of the same topic as the message topic included in the subscription list among messages of various topics issued by the publisher (Publisher) from the message queue and transmits them to the receiver; including, the broker receives from the receiver a subscription request packet including a specific time frequency for receiving the message of the specific topic, and a subscription including a maximum reception period corresponding to the specific time frequency for transmitting the message of the specific topic to the receiver A list is created, and the message of the specific topic is transmitted to the receiver at a maximum reception period included in the subscription list.

또한, 상기 브로커는, 상기 메시지 큐에 저장된 각 메시지의 토픽을 상기 구독 목록의 메시지 토픽 필드에 저장된 각 메시지 토픽과 순차적으로 비교하고, 상기 메시지 큐에 저장된 메시지의 토픽과 상기 메시지 토픽 필드에 저장된 메시지 토픽이 서로 동일한 경우, 현재 시간과 메시지 이전 전송시간의 차가 메시지 최대 수신 주기보다 큰 경우(Tcurrent - Tprev > Tperiod)인지 여부와, 메시지 최대 수신 주기가 설정되지 않은 경우(Tperiod = 0)인지 여부를 각각 판단하며, 상기 현재 시간과 메시지 이전 전송시간의 차가 메시지 최대 수신 주기보다 큰 경우가 아닌 경우, 상기 메시지 큐에 저장된 각 메시지의 토픽을 상기 구독 목록의 메시지 토픽 필드에 저장된 각 메시지 토픽과 순차적으로 다시 비교하고, 상기 현재 시간과 메시지 이전 전송시간의 차가 메시지 최대 수신 주기보다 큰 경우이거나, 메시지 최대 수신 주기가 설정되지 않은 경우, 상기 구독 목록에 포함된 메시지 토픽과 동일한 토픽의 메시지를 상기 메시지 큐로부터 복사하여 상기 구독 목록에 포함된 메시지 버퍼 필드에 저장한 후, 상기 메시지 버퍼 필드에 저장된 메시지를 상기 수신기로 전송할 수 있다.In addition, the broker sequentially compares the topic of each message stored in the message queue with each message topic stored in the message topic field of the subscription list, and the topic of the message stored in the message queue and the message stored in the message topic field. If the topics are the same, whether the difference between the current time and the transmission time before the message is greater than the maximum message reception period (T current - T prev > T period ), and if the maximum message reception period is not set (T period = 0) ), and if the difference between the current time and the transmission time before the message is not greater than the maximum message reception period, the topic of each message stored in the message queue is determined for each message stored in the message topic field of the subscription list. If the difference between the current time and the transmission time before the message is greater than the maximum message reception period or if the maximum message reception period is not set, the message of the same topic as the message topic included in the subscription list is sequentially compared with the topic again. may be copied from the message queue and stored in the message buffer field included in the subscription list, and then the message stored in the message buffer field may be transmitted to the receiver.

아울러, 상기 브로커는, 상기 구독 목록에 포함된 메시지 토픽과 동일한 토픽의 메시지를 상기 메시지 큐로부터 복사하여 상기 메시지 버퍼 필드에 저장한 후, 상기 메시지 큐에 저장된 다양한 토픽의 메시지 중 상기 메시지 버퍼 필드에 저장한 메시지의 토픽과 동일한 토픽의 메시지를 삭제하고, 상기 메시지 버퍼 필드에 저장된 메시지를 상기 수신기로 전송한 후, 상기 구독 목록의 메시지 이전 전송시간 필드에 저장된 메시지 이전 전송시간(Tprev)을 현재 시간(Tcurrent)으로 변경하며, 상기 구독 목록의 메시지 버퍼 필드를 더티(dirty)로 표시할 수 있다.In addition, the broker copies a message of the same topic as the message topic included in the subscription list from the message queue, stores it in the message buffer field, and stores it in the message buffer field among messages of various topics stored in the message queue. After deleting the message of the same topic as the topic of the stored message, and transmitting the message stored in the message buffer field to the receiver, the transmission time (T prev ) before the message stored in the transmission time field before the message of the subscription list is currently It is changed to time (T current ), and the message buffer field of the subscription list may be displayed as dirty.

상기한 바와 같이 본 발명에 따른 메시지 수신 빈도 제어 방법 및 장치에 의하면, IoT 시스템에서 수신기가 메시지를 수신하는 빈도를 제어하여 해당 수신기로 제공되는 불필요한 메시지의 전달을 감소시킴으로써 수신기가 자체 용량에 따른 처리 가능한 메시지만을 수신하게 하고, 이에 따라 네트워크의 전체적인 트래픽을 줄임으로써 IoT 시스템의 전체 성능을 향상시킬 수 있는 효과가 있다.As described above, according to the method and apparatus for controlling message reception frequency according to the present invention, by controlling the frequency at which the receiver receives messages in the IoT system, the delivery of unnecessary messages provided to the receiver is reduced, so that the receiver processes according to its own capacity It has the effect of improving the overall performance of the IoT system by allowing only possible messages to be received and thus reducing the overall traffic of the network.

도 1은 종래의 MQTT 브로커의 내부 구조도이다.
도 2는 본 발명에 따른 메시지 수신 빈도 제어 방법의 블록도이다.
도 3은 본 발명에 따른 구독 신청 패킷의 구조도이다.
도 4는 본 발명에 따른 MQTT 브로커의 내부 구조도이다.
도 5는 본 발명에 따른 메시지 전송 단계의 제 1블록도이다.
도 6은 본 발명에 따른 메시지 전송 단계의 제 2블록도이다.
도 7은 본 발명에 따른 메시지 전송 단계를 수행하는 알고리즘의 일 예시도이다.
도 8은 수신기의 구독 신청 패킷에 따라 해당 수신기가 최대 수신 주기(1초)로 메시지를 수신하는 일 예시도이다.
도 9는 본 발명에 따른 MQTT 브로커와 종래의 MQTT 브로커 간의 네트워크 트래픽을 비교한 그래프이다.
도 10(a) 내지 도 10(d)는 발신기 수에 따른 본 발명의 MQTT 브로커와 종래의 MQTT 브로커 간의 네트워크 트래픽을 비교한 그래프이다.
1 is an internal structural diagram of a conventional MQTT broker.
2 is a block diagram of a method for controlling message reception frequency according to the present invention.
3 is a structural diagram of a subscription request packet according to the present invention.
4 is an internal structural diagram of an MQTT broker according to the present invention.
5 is a first block diagram of a message transmission step according to the present invention.
6 is a second block diagram of a message transmission step according to the present invention.
7 is an exemplary diagram of an algorithm for performing a message transmission step according to the present invention.
8 is an exemplary diagram in which a corresponding receiver receives a message with a maximum reception period (1 second) according to a subscription request packet of the receiver.
9 is a graph comparing network traffic between an MQTT broker according to the present invention and a conventional MQTT broker.
10(a) to 10(d) are graphs comparing network traffic between the MQTT broker of the present invention and the conventional MQTT broker according to the number of senders.

이하, 첨부된 도면을 참조하여 본 발명의 실시 예를 상세히 설명한다. 우선, 도면들 중 동일한 구성요소 또는 부품들은 가능한 한 동일한 참조부호를 나타내고 있음에 유의해야 한다. 본 발명을 설명함에 있어서 관련된 공지기능 혹은 구성에 대한 구체적인 설명은 본 발명의 요지를 모호하게 하지 않기 위해 생략한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. First, it should be noted that the same components or parts in the drawings are denoted by the same reference numerals as much as possible. In describing the present invention, detailed descriptions of related known functions or configurations are omitted so as not to obscure the gist of the present invention.

도 2는 본 발명에 따른 메시지 수신 빈도 제어 방법의 블록도이다.2 is a block diagram of a method for controlling message reception frequency according to the present invention.

본 발명에 따른 메시지 수신 빈도 제어 방법은 도 2에 도시된 바와 같이, 메시지 신청 단계(S10), 목록 생성 단계(S20) 및 메시지 전송 단계(S30)를 포함한다.As shown in FIG. 2, the method for controlling message reception frequency according to the present invention includes a message request step (S10), a list generation step (S20), and a message transmission step (S30).

메시지 신청 단계(S10)는 브로커(Broker)가 수신기(Subscriber)로부터 특정 토픽(Topic)의 메시지에 대한 구독 신청 패킷을 전송받는 단계이다.The message request step (S10) is a step in which a broker receives a subscription request packet for a message of a specific topic from a receiver (Subscriber).

구체적으로, 메시지 신청 단계(S10)에서는 수신기가 특정 토픽의 메시지를 수신할 특정 시간 빈도(specific time frequency)를 선택하여 해당 시간 빈도가 포함된 구독 신청 패킷을 브로커로 전송할 수 있다.Specifically, in the message request step ( S10 ), the receiver may select a specific time frequency to receive a message of a specific topic and transmit a subscription request packet including the corresponding time frequency to the broker.

여기서, 시간 빈도는 수신기가 해당 빈도, 즉 해당 시간 주기에 더 많은 메시지를 수신하지 않는 것을 의미하고, 이것은 브로커로부터 해당 시간 주기에 최대 하나의 메시지를 수신하는 것을 의미하는 최대 수신 주기(Maximum Reception Period,MRP)와 대응된다.Here, the time frequency means that the receiver does not receive more messages in the corresponding frequency, that is, in the corresponding time period, and this means that the receiver receives at most one message in the corresponding time period from the broker Maximum Reception Period (Maximum Reception Period) , MRP).

도 3은 본 발명에 따른 구독 신청 패킷의 구조도이다.3 is a structural diagram of a subscription request packet according to the present invention.

상기 수신기가 상기 브로커에 전송하는 구독 신청 패킷(210)은 도 3에 도시된 바와 같이, 토픽 영역(211) 및 빈도 영역(212)을 포함할 수 있다.As shown in FIG. 3 , the subscription request packet 210 that the receiver transmits to the broker may include a topic area 211 and a frequency area 212 .

여기서, 토픽 영역(211)은 수신기가 수신할 메시지의 토픽이 저장되는 영역이고, 또한 빈도 영역(212)은 수신기가 특정 토픽의 메시지를 수신할 특정 시간 빈도가 저장되는 영역이다.Here, the topic area 211 is an area in which the topic of a message to be received by the receiver is stored, and the frequency area 212 is an area in which a specific time frequency at which the receiver will receive a message of a specific topic is stored.

상기 목록 생성 단계(S20)는 브로커가 수신기로부터 전송된 구독 신청 패킷(110)에 따라 해당 수신기와 연계된 메시지 토픽이 포함된 구독 목록을 생성하는 단계이다.The list creation step (S20) is a step in which the broker generates a subscription list including a message topic associated with the receiver according to the subscription request packet 110 transmitted from the receiver.

구체적으로, 목록 생성 단계(S20)에서는 브로커가 수신기로부터 구독 요청된 특정 토픽의 메시지를 해당 수신기로 전송할 특정 시간 빈도와 대응하는 최대 수신 주기(MRP)가 포함된 구독 목록을 생성할 수 있다.Specifically, in the list creation step (S20), the broker may generate a subscription list including a maximum reception period (MRP) corresponding to a specific time frequency to transmit a message of a specific topic requested for subscription from the receiver to the corresponding receiver.

도 4는 본 발명에 따른 MQTT 브로커의 내부 구조도이다.4 is an internal structural diagram of an MQTT broker according to the present invention.

여기서, 구독 목록(110)은 도 4에 도시된 바와 같이, 메시지 토픽 필드(111), 메시지 수신주기 필드(112), 메시지 이전 전송시간 필드(113) 및 메시지 버퍼 필드(114)를 포함할 수 있다.Here, the subscription list 110 may include a message topic field 111, a message reception period field 112, a message previous transmission time field 113, and a message buffer field 114, as shown in FIG. have.

메시지 토픽 필드(111)는 수신기(200)로부터 전송된 구독 신청 패킷(210)의 토픽 영역(211)에 저장된 토픽과 대응하여 해당 수신기와 연계된 메시지의 토픽(Topic)이 각각 저장될 수 있다.The message topic field 111 corresponds to a topic stored in the topic area 211 of the subscription request packet 210 transmitted from the receiver 200, and the topic of a message associated with the receiver may be stored, respectively.

메시지 수신주기 필드(112)는 수신기(200)로부터 전송된 구독 신청 패킷(210)의 빈도 영역(212)에 저장된 특정 시간 빈도와 대응하여 해당 수신기와 연계된 메시지의 최대 수신 주기(Tperiod)가 저장될 수 있다.The message reception period field 112 corresponds to a specific time frequency stored in the frequency area 212 of the subscription packet 210 transmitted from the receiver 200, and the maximum reception period (T period ) of the message associated with the receiver is can be saved.

여기서, 최대 수신 주기는 시간이 사용되는데, 예를 들어, 최대 수신 주기(Tperiod)가 100이고, 시간 단위가 10 밀리초(milliseconds)인 경우, 수신기(200)가 1초당 2개 이상의 메시지를 수신하는 것을 원하지 않음을 의미하고, 따라서, 브로커(100)는 해당 토픽에 대해 1초당 2개 이상의 메시지를 해당 수신기로 전송하지 않는다.Here, time is used for the maximum reception period, for example, when the maximum reception period (T period ) is 100 and the time unit is 10 milliseconds, the receiver 200 receives two or more messages per second It means that it does not want to receive, and therefore, the broker 100 does not transmit more than two messages per second for the corresponding topic to the corresponding receiver.

메시지 이전 전송시간 필드(113)는 메시지가 수신기에 마지막으로 전송된 이전 전송시간(Tprev)이 저장될 수 있는데, 이러한 이전 전송시간(Tprev)은 최대 수신 주기(Tperiod)와 시간 단위가 동일하며, 이러한 시간 단위는 10초, 1초, 1밀리초 등으로 이루어질 수 있다.Message before the transmission time field 113 there message may be a last previous transmission time (T prev) transmitted to the receiver store, such prior transmission time (T prev) is the maximum reception period (T period) and the time unit It is the same, and such a time unit may consist of 10 seconds, 1 second, 1 millisecond, and the like.

여기서, 메시지 이전 전송시간 필드(113)는 후술하는 바와 같이, 브로커가 메시지를 수신기에 전송한 후, 해당 메시지 이전 전송시간 필드에 저장된 메시지 이전 전송시간(Tprev)이 현재 시간(Tcurrent)으로 변경됨으로써 해당 이전 전송시간(Tprev)이 업데이트될 수 있다.Here, the message pre-transmission time field 113 is, as will be described later, after the broker transmits the message to the receiver, the message pre-transmission time (T prev ) stored in the message-previous transmission time field is the current time (T current ). By being changed, the previous transmission time (T prev ) may be updated.

메시지 버퍼 필드(114)는 메시지 토픽 필드에 저장된 메시지 토픽과 동일한 토픽의 메시지가 메시지 큐(120)로부터 복사되어 저장될 수 있다.In the message buffer field 114 , a message of the same topic as the message topic stored in the message topic field may be copied from the message queue 120 and stored.

여기서, 메시지 버퍼 필드(114)는 후술하는 바와 같이, 브로커가 메시지를 수신기에 전송한 후, 해당 메시지 버퍼 필드(114)가 더티(dirty)로 표시됨으로써 해당 메시지의 전송상태를 표시할 수 있다.Here, the message buffer field 114 may indicate the transmission status of the message by displaying the message buffer field 114 as dirty after the broker transmits the message to the receiver, as will be described later.

메시지 전송 단계(S30)는 브로커(100)가 발신기(Publisher,300)에서 발행한 다양한 토픽의 메시지 중 구독 목록(110)에 포함된 메시지 토픽과 동일한 토픽의 메시지를 메시지 큐(120)로부터 복사하여 수신기로 전송하는 단계이다.In the message transmission step (S30), the broker 100 copies the message of the same topic as the message topic included in the subscription list 110 among the messages of various topics issued by the publisher (Publisher, 300) from the message queue 120. This is the step of transmitting to the receiver.

이러한 메시지 전송 단계(S30)에서는 브로커(100)가 구독 목록(110)에 포함된 최대 수신 주기(MRP)로 특정 토픽의 메시지를 수신기(200)로 전송할 수 있다.In this message transmission step (S30), the broker 100 may transmit a message of a specific topic to the receiver 200 with the maximum reception period (MRP) included in the subscription list 110 .

도 5는 본 발명에 따른 메시지 전송 단계의 제 1블록도이다.5 is a first block diagram of a message transmission step according to the present invention.

구체적으로, 메시지 전송 단계(S30)는 도 5에 도시된 바와 같이, 메시지 토픽 비교 공정(S31), 전송여부 판단 공정(S32), 메시지 저장 공정(S33) 및 메시지 전송 공정(S34)을 포함할 수 있다.Specifically, the message transmission step (S30) may include a message topic comparison process (S31), a transmission status determination process (S32), a message storage process (S33), and a message transmission process (S34), as shown in FIG. 5 . can

메시지 토픽 비교 공정(S31)은 브로커(100)가 메시지 큐(120)에 저장된 각 메시지의 토픽을 구독 목록(110)의 메시지 토픽 필드(111)에 저장된 각 메시지 토픽과 순차적으로 비교하는 공정이다.The message topic comparison process S31 is a process in which the broker 100 sequentially compares the topic of each message stored in the message queue 120 with each message topic stored in the message topic field 111 of the subscription list 110 .

구체적으로, 메시지 토픽 비교 공정(S31)에서는 브로커(100)가 후술하는 알고리즘 Algorithm_RFC()에 따라 메시지 큐(120)에 저장된 모든 메시지를 확인하면서, 해당 메시지의 토픽을 메시지 토픽 필드(111)에 저장된 각 메시지 토픽과 하나씩 비교할 수 있다.Specifically, in the message topic comparison process ( S31 ), the broker 100 checks all messages stored in the message queue 120 according to the algorithm Algorithm_RFC( ) to be described later, and stores the topic of the message in the message topic field 111 . Each message topic can be compared one by one.

전송여부 판단 공정(S32)은 메시지 큐(120)에 저장된 메시지의 토픽과 메시지 토픽 필드(111)에 저장된 메시지 토픽이 서로 동일한 경우, 브로커(100)가 하기 [수학식 1]을 만족하는지 여부를 판단하여 메시지의 전송 여부를 판단하는 공정이다.In the transmission or not determination process (S32), when the topic of the message stored in the message queue 120 and the message topic stored in the message topic field 111 are the same, the broker 100 determines whether the following [Equation 1] is satisfied It is a process of determining whether a message is transmitted or not.

Figure 112020063354096-pat00003
Figure 112020063354096-pat00003

(여기서, Tcurrent은 현재 시간, Tprev은 메시지 이전 전송시간, Tperiod은 메시지 최대 수신 주기, Tcurrent - Tprev > Tperiod은 현재 시간과 메시지 이전 전송시간의 차가 메시지 최대 수신 주기보다 큰 경우)(Here, T current is the current time, T prev is the transmission time before the message, T period is the maximum message reception period, and T current - T prev > T period is when the difference between the current time and the transmission time before the message is greater than the maximum message reception period )

구체적으로, 전송여부 판단 공정(S32)에서는 현재 시간(Tcurrent)과 메시지가 수신기에 마지막으로 전송된 이전 전송시간(Tprev) 간의 차가 메시지 최대 수신 주기(Tperiod)보다 큰 경우, 즉, 현재 시간이 최대 수신 주기를 지난 경우, 메시지를 수신기에 전송할 것을 결정할 수 있고, 또한 현재 시간(Tcurrent)과 이전 전송시간(Tprev) 간의 차가 메시지 최대 수신 주기(Tperiod)보다 크지 않은 경우, 즉, 현재 시간이 최대 수신 주기를 지나지 않은 경우, 메시지를 수신기에 전송하지 않을 것을 결정할 수 있다.Specifically, in the transmission or not determination process (S32), if the difference between the current time (T current ) and the previous transmission time (T prev ) at which the message was last transmitted to the receiver is greater than the maximum message reception period (T period ), that is, the current When the time has passed the maximum reception period, it can be determined to transmit the message to the receiver, and if the difference between the current time (T current ) and the previous transmission time (T prev ) is not greater than the maximum message reception period (T period ), that is, , when the current time has not passed the maximum reception period, it may be determined not to transmit the message to the receiver.

또한, 전송여부 판단 공정(S32)은 메시지 큐(120)에 저장된 메시지의 토픽과 메시지 토픽 필드(111)에 저장된 메시지 토픽이 서로 동일한 경우, 브로커(100)가 하기 [수학식 2]를 만족하는지 여부를 판단하여 메시지의 전송 여부를 판단할 수 있다.In addition, when the topic of the message stored in the message queue 120 and the message topic stored in the message topic field 111 are the same, the transmission or not determination process (S32) determines whether the broker 100 satisfies the following [Equation 2] By determining whether or not the message is transmitted, it is possible to determine whether the message is transmitted.

Figure 112020063354096-pat00004
Figure 112020063354096-pat00004

(여기서, Tperiod = 0은 메시지 최대 수신 주기가 설정되지 않은 경우)(Here, T period = 0 when the maximum message reception period is not set)

구체적으로, 전송여부 판단 공정(S32)에서는 최대 수신 주기(Tperiod)가 0인 경우, 즉, 수신기(200)가 구독 신청 패킷(210)을 통해 메시지 수신에 대한 특정 시간 빈도를 선택하지 않음으로써 구독 목록(110)의 최대 수신 주기가 설정되지 않은 경우, 메시지를 해당 수신기에 전송할 것을 결정할 수 있고, 또한, 최대 수신 주기(Tperiod)가 0이 아닌 경우, 즉 수신기(200)가 구독 신청 패킷(210)을 통해 메시지를 수신할 특정 시간 빈도를 선택한 경우, 상기 [수학식 1]의 만족 여부를 판단하여 메시지의 전송 여부를 판단할 수 있다.Specifically, in the transmission or not determination process (S32), when the maximum reception period (T period ) is 0, that is, the receiver 200 does not select a specific time frequency for message reception through the subscription packet 210. When the maximum reception period of the subscription list 110 is not set, it can be determined to transmit the message to the corresponding receiver, and also, when the maximum reception period (T period ) is not 0, that is, the receiver 200 receives the subscription packet When a specific time frequency for receiving a message is selected through 210, it is possible to determine whether the message is transmitted by determining whether the above [Equation 1] is satisfied.

메시지 저장 공정(S33)은 전송여부 판단 공정(S32)에서 상기 [수학식 1] 또는 [수학식 2]를 만족하는 경우, 브로커(100)가 구독 목록(110)에 포함된 메시지 토픽과 동일한 토픽의 메시지를 메시지 큐(120)로부터 복사하여 구독 목록(110)의 메시지 버퍼 필드(114)에 저장하는 공정이다.When the message storage process (S33) satisfies [Equation 1] or [Equation 2] in the transmission or not determination process (S32), the broker 100 is the same topic as the message topic included in the subscription list 110 This is a process of copying the message of from the message queue 120 and storing it in the message buffer field 114 of the subscription list 110 .

구체적으로, 메시지 저장 공정(S33)에서는 브로커(100)가 구독 목록(110)에 포함된 특정 토픽의 메시지를 수신기로 전송하기 위해, 해당 구독 목록에 포함된 메시지 토픽과 동일한 토픽의 메시지를 메시지 큐로부터 복사하여 메시지 버퍼 필드에 저장할 수 있다.Specifically, in the message storage process (S33), in order for the broker 100 to transmit a message of a specific topic included in the subscription list 110 to the receiver, the message of the same topic as the message topic included in the corresponding subscription list is sent to the message queue. can be copied from and stored in the message buffer field.

한편, 본 발명에서는 브로커(100)가 전송여부 판단 공정(S32)을 수행하는 과정에서, 상기 [수학식 1]을 만족하지 않는 경우, 즉, 현재 시간(Tcurrent)과 이전 전송시간(Tprev) 간의 차가 메시지 최대 수신 주기(Tperiod)보다 크지 않아 현재 시간이 최대 수신 주기를 지나지 않은 경우, 상기한 바와 같이 메시지를 수신기에 전송하지 않을 것을 결정할 수 있고, 이때, 브로커(100)는 상기 메시지 저장 공정(S33)을 수행하지 않는 대신, 상기 메시지 토픽 비교 공정(S31)을 재수행함으로써 메시지 큐에 저장된 각 메시지의 토픽을 구독 목록의 메시지 토픽 필드에 저장된 각 메시지 토픽과 순차적으로 비교할 수 있다.On the other hand, in the present invention, when the broker 100 does not satisfy [Equation 1] in the process of performing the transmission or not determination process (S32), that is, the current time (T current ) and the previous transmission time (T prev) ) is not greater than the maximum message reception period (T period ), so if the current time has not passed the maximum reception period, it can be determined not to transmit the message to the receiver as described above, in this case, the broker 100 is the message Instead of performing the storage process ( S33 ), the topic of each message stored in the message queue may be sequentially compared with each message topic stored in the message topic field of the subscription list by re-performing the message topic comparison process ( S31 ).

메시지 전송 공정(S35)은 브로커(100)가 메시지 버퍼 필드(114)에 저장된 메시지를 수신기(200)로 전송하는 공정이다.The message transmission process S35 is a process in which the broker 100 transmits the message stored in the message buffer field 114 to the receiver 200 .

구체적으로, 메시지 전송 공정(S35)에서는 구독 목록(110)의 메시지 토픽 필드(111) 연계된 수신기를 확인하면서 메시지 버퍼 필드(114)에 저장된 메시지를 해당 수신기에 전송할 수 있다.Specifically, in the message transmission process ( S35 ), the message stored in the message buffer field 114 may be transmitted to the corresponding receiver while checking the receiver associated with the message topic field 111 of the subscription list 110 .

도 6은 본 발명에 따른 메시지 전송 단계의 제 2블록도이다.6 is a second block diagram of a message transmission step according to the present invention.

한편, 메시지 전송 단계(S30)는 도 6에 도시된 바와 같이, 상기한 메시지 토픽 비교 공정(S31), 전송여부 판단 공정(S32), 메시지 저장 공정(S33) 및 메시지 전송 공정(S35) 외에, 그 구성으로, 메시지 삭제 공정(S34), 전송시간 변경 공정(S36) 및 전송상태 표시 공정(S37)을 더 포함할 수 있다.On the other hand, the message transmission step (S30) is, as shown in FIG. 6, in addition to the message topic comparison process (S31), the transmission status determination process (S32), the message storage process (S33) and the message transmission process (S35), The configuration may further include a message deletion process (S34), a transmission time change process (S36), and a transmission status display process (S37).

메시지 삭제 공정(S34)은 브로커(100)가 메시지 저장 공정(S33)을 수행한 후, 메시지 큐(120)에 저장된 다양한 토픽의 메시지 중 메시지 버퍼 필드(114)에 저장한 메시지의 토픽과 동일한 토픽의 메시지를 해당 메시지 큐에서 삭제하는 공정이다.The message deletion process (S34) is the same topic as the topic of the message stored in the message buffer field 114 among the messages of various topics stored in the message queue 120 after the broker 100 performs the message storage process (S33) This is the process of deleting a message from the corresponding message queue.

전송시간 변경 공정(S36)은 브로커(100)가 메시지 전송 공정(S34)을 수행한 후, 구독 목록(110)의 메시지 이전 전송시간 필드(113)에 저장된 메시지 이전 전송시간(Tprev)을 현재 시간(Tcurrent)으로 변경하는 공정이다.In the transmission time change process (S36), the broker 100 performs the message transmission process (S34), and then sets the message previous transmission time (T prev ) stored in the message previous transmission time field 113 of the subscription list 110 to the current This is the process of changing the time (T current).

구체적으로, 전송시간 변경 공정(S36)에서는 브로커가 메시지를 수신기에 전송한 후, 해당 메시지 이전 전송시간 필드에 저장된 메시지 이전 전송시간(Tprev)을 현재 시간(Tcurrent)으로 변경함으로써 해당 이전 전송시간(Tprev)을 업데이트할 수 있다.Specifically, in the transmission time changing process (S36), after the broker transmits the message to the receiver, the previous transmission time (T prev ) stored in the message previous transmission time field is changed to the current time (T current ). The time T prev can be updated.

전송상태 표시 공정(S37)은 브로커(100)가 메시지 전송 공정(S34)을 수행한 후, 구독 목록(110)의 메시지 버퍼 필드(114)를 더티(dirty)로 표시함으로써 메시지가 수신기로 전송이 완료된 상태임을 표시하는 공정이다.In the transmission status display process (S37), after the broker 100 performs the message transmission process (S34), the message is transmitted to the receiver by displaying the message buffer field 114 of the subscription list 110 as dirty. This is a process that indicates that it has been completed.

도 7은 본 발명에 따른 메시지 전송 단계를 수행하는 알고리즘의 일 예시도이다.7 is an exemplary diagram of an algorithm for performing a message transmission step according to the present invention.

상기한 메시지 전송 단계(S30)에서는 브로커(100)가 도 7에 도시된 바와 같이, Algorithm_RFC(input:Message Queue) 알고리즘을 이용하여, 수신기(200)의 메시지 수신 빈도를 제어하면서 해당 메시지를 수신기에 전송할 수 있다.In the message transmission step (S30), the broker 100 transmits the message to the receiver while controlling the message reception frequency of the receiver 200 using the Algorithm_RFC (input:Message Queue) algorithm, as shown in FIG. 7 . can be transmitted

이하, 본 발명에 따른 메시지 수신 빈도 제어 장치를 설명한다.Hereinafter, an apparatus for controlling message reception frequency according to the present invention will be described.

본 발명에 따른 메시지 수신 빈도 제어 장치는 도 4에 도시된 바와 같이, 수신기(200)의 메시지 수신 빈도를 제어하면서 해당 메시지를 수신기에 전송할 수 있는 브로커(100)를 포함한다.As shown in FIG. 4 , the apparatus for controlling message reception frequency according to the present invention includes a broker 100 capable of transmitting a corresponding message to the receiver while controlling the message reception frequency of the receiver 200 .

브로커(100)는 수신기(200)로부터 전송된 특정 토픽의 메시지에 대한 구독 신청 패킷(210)에 따라 해당 수신기와 연계된 메시지 토픽이 포함된 구독 목록(110)을 생성한 후, 발신기(300))에서 발행한 다양한 토픽의 메시지 중 구독 목록(110)에 포함된 메시지 토픽과 동일한 토픽의 메시지를 메시지 큐(120)로부터 복사하여 수신기(200)로 전송할 수 있다.The broker 100 generates a subscription list 110 including a message topic associated with the receiver according to the subscription request packet 210 for a message of a specific topic transmitted from the receiver 200, and then the transmitter 300 ) may be copied from the message queue 120 to the receiver 200 by copying a message of the same topic as the message topic included in the subscription list 110 among the messages of various topics issued by .

이러한 브로커(100)는 수신기로부터 특정 토픽의 메시지를 수신할 특정 시간 빈도가 포함된 구독 신청 패킷(210)을 전송받을 수 있고, 또한 특정 토픽의 메시지를 수신기로 전송할 상기 특정 시간 빈도와 대응하는 최대 수신 주기가 포함된 구독 목록(110)을 생성할 수 있으며, 아울러, 구독 목록에 포함된 최대 수신 주기로 특정 토픽의 메시지를 수신기(200)로 전송할 수 있다.Such a broker 100 may receive a subscription request packet 210 including a specific time frequency for receiving a message of a specific topic from a receiver, and a maximum corresponding to the specific time frequency for transmitting a message of a specific topic to the receiver. A subscription list 110 including a reception period may be generated, and a message of a specific topic may be transmitted to the receiver 200 with a maximum reception period included in the subscription list.

구체적으로, 브로커(100)는 메시지 큐(120)에 저장된 각 메시지의 토픽을 구독 목록(110)의 메시지 토픽 필드(111)에 저장된 각 메시지 토픽과 순차적으로 비교한 후, 메시지 큐에 저장된 메시지의 토픽과 메시지 토픽 필드에 저장된 메시지 토픽이 서로 동일한 경우, 상기 [수학식 1] 및 [수학식 2]의 만족 여부를 각각 판단할 수 있다.Specifically, the broker 100 sequentially compares the topic of each message stored in the message queue 120 with each message topic stored in the message topic field 111 of the subscription list 110, and then When the topic and the message topic stored in the message topic field are identical to each other, it can be determined whether the above [Equation 1] and [Equation 2] are satisfied, respectively.

또한, 브로커(100)는 [수학식 1]을 만족하지 않은 경우, 메시지 큐에 저장된 각 메시지의 토픽과 구독 목록의 메시지 토픽 필드에 저장된 각 메시지 토픽을 순차적으로 다시 비교하고, 이에 반해, [수학식 1] 또는 [수학식 2]을 만족하는 경우, 구독 목록에 포함된 메시지 토픽과 동일한 토픽의 메시지를 메시지 큐로부터 복사하여 구독 목록에 포함된 메시지 버퍼 필드(114)에 저장한 후, 메시지 큐에 저장된 다양한 토픽의 메시지 중 메시지 버퍼 필드에 저장한 메시지의 토픽과 동일한 토픽의 메시지를 삭제할 수 있다.In addition, if the broker 100 does not satisfy [Equation 1], the topic of each message stored in the message queue and each message topic stored in the message topic field of the subscription list are sequentially compared again, and in contrast, [Mathematics] If Equation 1] or [Equation 2] is satisfied, the message of the same topic as the message topic included in the subscription list is copied from the message queue and stored in the message buffer field 114 included in the subscription list, and then the message queue You can delete messages of the same topic as the topic of the message stored in the message buffer field among messages of various topics stored in .

아울러, 브로커(100)는 메시지 버퍼 필드에 저장된 메시지를 수신기로 전송한 후, 구독 목록의 메시지 이전 전송시간 필드(113)에 저장된 메시지 이전 전송시간(Tprev)을 현재 시간(Tcurrent)으로 변경할 수 있고, 또한 구독 목록의 메시지 버퍼 필드를 더티(dirty)로 표시함으로써 해당 메시지가 수신기로 전송이 완료되었음을 나타낼 수 있다.In addition, the broker 100 transmits the message stored in the message buffer field to the receiver, and then changes the message previous transmission time (T prev ) stored in the message previous transmission time field 113 of the subscription list to the current time (T current ). Also, by marking the message buffer field of the subscription list as dirty, it may indicate that the message has been transmitted to the receiver.

이하, 본 발명에 따라 구축된 테스트 시스템을 통해 메시지 수신 빈도 제어를 실시한 데스트 결과를 설명한다.Hereinafter, a test result of controlling the message reception frequency through the test system constructed according to the present invention will be described.

<테스트 시스템 구축><Building a test system>

Mosquitto는 이클립스(Eclipse)에서 개방형 소프트웨어로 제공하는 MQTT 브로커로, Mosquitto는 모든 패킷을 하나의 루프로 처리하는 단일 스레드로 실행된다.Mosquitto is an MQTT broker provided by Eclipse as open software. Mosquitto runs as a single thread, processing all packets in one loop.

이러한 Mosquitto에 기존 루프 구조를 변경하지 않고, 추가 스레드를 만들지 않으면서 루프의 특정 부분에 일부 프로그램 코드를 삽입함으로써 메시지 수신 빈도 제어(RFC) 기능을 확인할 수 있는 테스트 IoT 시스템을 구축했다.In Mosquitto, we built a test IoT system that can check the message reception frequency control (RFC) function by inserting some program code in a specific part of the loop without changing the existing loop structure and creating additional threads.

이러한 테스트 IoT 시스템에는 RFC 기능을 사용하여 수정된 Mosquitto 브로커를 실행하는 서버 PC, 발신기 애플리케이션을 실행하는 일 클라이언트 PC 및 수신기 애플리케이션을 실행하는 타 클라이언트 PC가 포함될 수 있다.These test IoT systems could include a server PC running a Mosquitto broker that was modified using RFC functionality, one client PC running the sender application, and another client PC running the receiver application.

이하, 종래의 Mosquitto 브로커를 "MQTT 표준" 으로, RFC 기능을 갖춘 수정된 Mosquitto 브로커를 "MQTT-RFC" 로 정의한다.Hereinafter, the conventional Mosquitto broker is defined as "MQTT standard", and the modified Mosquitto broker with RFC function is defined as "MQTT-RFC".

<테스트 진행><Test in progress>

테스트를 단순화하기 위해 하나의 토픽과, 고정된 수의 수신기 100개를 사용했고, 발신기 수를 20, 50, 100, 150, 180으로 변경하여 테스트를 수행했다.To simplify the test, we used one topic, a fixed number of 100 receivers, and changed the number of transmitters to 20, 50, 100, 150, and 180 for testing.

<테스트 결과><Test result>

수신기가 브로커 구독시 최대 수신 주기(MRP) 값을 지정할 수 있도록 "mosquitto_sub" 의 기존 Windows 응용 프로그램을 "-F MRPvalue" 라는 명령 인수를 갖도록 수정했고, MRP의 단위를 10 밀리초로 설정했으며, 수정된 mosquitto_sub.exe를 "-F 100" 명령 인수로 실행했다. 따라서, 100을 MRP 값으로 사용하는 경우 최대 수신 주기는 1초(10x100 = 1000ms = 1second)를 의미한다.I modified the existing Windows application of "mosquitto_sub" to have a command argument of "-F MRPvalue" so that the listener can specify the maximum receive cycle (MRP) value when subscribing to the broker, set the unit of MRP to 10 milliseconds, I ran mosquitto_sub.exe with "-F 100" command argument. Therefore, when 100 is used as the MRP value, the maximum reception period means 1 second (10x100 = 1000ms = 1 second).

도 8은 수신기의 구독 신청 패킷에 따라 해당 수신기가 최대 수신 주기(1초)로 메시지를 수신하는 일 예시도이다.8 is an exemplary diagram in which a corresponding receiver receives a message with a maximum reception period (1 second) according to a subscription request packet of the receiver.

도 8에 도시된 바와 같이, mosquitto_sub.exe는 수신기를 MQTT-RFC 브로커에 연결하여 "degree" 토픽과, MRP 값 "100" 으로 구성된 패킷을 보내고, 수신기가 지정한 1초의 최대 수신 주기(MRP)로 메시지를 정기적으로 수신함을 보여준다.As shown in Figure 8, mosquitto_sub.exe connects the receiver to the MQTT-RFC broker to send a packet consisting of a topic "degree" and an MRP value of "100", and the maximum receiving period (MRP) of 1 second specified by the receiver. Indicates that messages are received regularly.

도 9는 본 발명에 따른 MQTT 브로커와 종래의 MQTT 브로커 간의 네트워크 트래픽을 비교한 그래프이다.9 is a graph comparing network traffic between an MQTT broker according to the present invention and a conventional MQTT broker.

MQTT 표준과 MQTT-RFC 간의 네트워크 트래픽을 비교하여, 두 브로커의 네트워크 트래픽의 성능 지수를 측정했는데, 이는 도 9에 도시된 바와 같이, 표준 MQTT 브로커의 경우 발신기 수가 증가함에 따라 네트워크 트래픽이 매우 많이 증가함을 보여주고, 반대로 RFC 기능이 있는 MQTT 브로커(MQTT-RFC)의 경우 발신기 수의 증가함에 따라 네트워크 트래픽이 매우 적게 증가함을 보여줬다.By comparing the network traffic between the MQTT standard and MQTT-RFC, the performance index of the network traffic of the two brokers was measured, which, as shown in FIG. Conversely, in the case of an MQTT broker with RFC function (MQTT-RFC), the network traffic increases very little as the number of senders increases.

도 10(a) 내지 도 10(d)는 발신기 수에 따른 본 발명의 MQTT 브로커와 종래의 MQTT 브로커 간의 네트워크 트래픽을 비교한 그래프이다.10(a) to 10(d) are graphs comparing network traffic between the MQTT broker of the present invention and the conventional MQTT broker according to the number of senders.

또한, 도 10(a) 내지 도 10(d)에 도시된 바와 같이, 발신기 수가 증가함에 따라 MQTT 표준 브로커로 전송되는 메시지 수가 증가할 뿐만 아니라 브로커에서 수신기로 전송된 메시지 수가 증가한다는 것을 쉽게 알 수 있고, 반면 MQTT-RFC 브로커는 발행자 수에 관계없이 일정 시간 내에 수신기로 메시지를 전송함을 알 수 있는데, 이는 결과적으로, 본 발명에 따른 RFC 방법이 적용된 MQTT 프로토콜을 통해 네트워크 트래픽을 현저히 줄일 수 있음을 확인할 수 있다.In addition, as shown in Figs. 10(a) to 10(d), it can be easily seen that as the number of senders increases, the number of messages transmitted to the MQTT standard broker increases as well as the number of messages transmitted from the broker to the receiver increases. On the other hand, it can be seen that the MQTT-RFC broker transmits a message to the receiver within a certain time regardless of the number of publishers. As a result, network traffic can be significantly reduced through the MQTT protocol to which the RFC method according to the present invention is applied. can confirm.

상기한 바와 같이 본 발명에 따르면 IoT 시스템에서 수신기가 메시지를 수신하는 빈도를 제어하여 해당 수신기로 제공되는 불필요한 메시지의 전달을 감소시킴으로써 수신기가 자체 용량에 따른 처리 가능한 메시지만을 수신하게 하고, 이에 따라 네트워크의 전체적인 트래픽을 줄임으로써 IoT 시스템의 전체 성능을 향상시킬 수 있다.As described above, according to the present invention, the receiver reduces the transmission of unnecessary messages provided to the receiver by controlling the frequency at which the receiver receives messages in the IoT system, so that the receiver receives only messages that can be processed according to its own capacity, and accordingly, the network By reducing the overall traffic of the IoT system, the overall performance of the IoT system can be improved.

이상과 같이 본 발명에 따른 메시지 수신 빈도 제어 방법 및 장치를 예시한 도면을 참조로 하여 설명하였으나, 본 명세서에 개시된 실시예와 도면에 의해 본 발명이 한정되는 것은 아니며, 본 발명의 기술사상 범위 내에서 당업자에 의해 다양한 변형이 이루어질 수 있음은 물론이다.As described above, the method and apparatus for controlling message reception frequency according to the present invention have been described with reference to the drawings, but the present invention is not limited by the embodiments and drawings disclosed herein, and within the scope of the technical spirit of the present invention. Of course, various modifications may be made by those skilled in the art.

100:브로커(Broker) 110:구독 목록
111:메시지 토픽 필드 112:메시지 수신주기 필드
113:메시지 이전 전송시간 필드 114:메시지 버퍼 필드
120:메시지 큐(Queue) 200:수신기(Subscriber)
210:구독 신청 패킷 211:토픽 영역
212:빈도 영역 300:발신기(Publisher)
S10:메시지 신청 단계
S20:목록 생성 단계
S30:메시지 전송 단계
S31:메시지 토픽 비교 공정
S32:전송여부 판단 공정
S33:메시지 저장 공정
S34:메시지 삭제 공정
S35:메시지 전송 공정
S36:전송시간 변경 공정
S37:전송상태 표시 공정
100: Broker 110: Subscription List
111: message topic field 112: message reception cycle field
113: message before transmission time field 114: message buffer field
120: Message Queue 200: Subscriber
210: Subscription Request Packet 211: Topic Area
212: frequency area 300: Publisher
S10: Message request step
S20: List creation step
S30: Message sending step
S31: message topic comparison process
S32: Transmission determination process
S33: message storage process
S34: Message deletion process
S35: Message transmission process
S36: Transmission time change process
S37: Transmission status display process

Claims (11)

브로커(Broker)가 수신기(Subscriber)로부터 특정 토픽(Topic)의 메시지에 대한 구독 신청 패킷을 전송받는 메시지 신청 단계;
상기 브로커가 상기 수신기로부터 전송된 구독 신청 패킷에 따라 해당 수신기와 연계된 메시지 토픽이 포함된 구독 목록을 생성하는 목록 생성 단계; 및
상기 브로커가 발신기(Publisher)에서 발행한 다양한 토픽의 메시지 중 상기 구독 목록에 포함된 메시지 토픽과 동일한 토픽의 메시지를 메시지 큐(Queue)로부터 복사하여 상기 수신기로 전송하는 메시지 전송 단계;를 포함하되,
상기 메시지 신청 단계에서는,
상기 수신기가 상기 특정 토픽의 메시지를 수신할 특정 시간 빈도가 포함된 구독 신청 패킷이 상기 브로커로 전송되고,
상기 목록 생성 단계에서는,
상기 브로커가 상기 특정 토픽의 메시지를 상기 수신기로 전송할 상기 특정 시간 빈도와 대응하는 최대 수신 주기가 포함된 구독 목록을 생성하며,
상기 메시지 전송 단계에서는,
상기 브로커가 상기 구독 목록에 포함된 최대 수신 주기로 상기 특정 토픽의 메시지를 상기 수신기로 전송하고,
상기 구독 신청 패킷은,
상기 수신기가 수신할 메시지의 토픽이 저장되는 토픽 영역; 및
상기 수신기가 상기 특정 토픽의 메시지를 수신할 특정 시간 빈도가 저장되는 빈도 영역;을 포함하며,
상기 구독 목록은,
상기 구독 신청 패킷의 토픽 영역에 저장된 토픽과 대응하여 상기 수신기와 연계된 메시지의 토픽이 저장되는 메시지 토픽 필드;
상기 구독 신청 패킷의 빈도 영역에 저장된 특정 시간 빈도와 대응하여 상기 수신기와 연계된 메시지의 최대 수신 주기가 저장되는 메시지 수신주기 필드;
상기 메시지가 상기 수신기에 마지막으로 전송된 이전 전송시간이 저장되는 메시지 이전 전송시간 필드; 및
상기 메시지 토픽 필드에 저장된 메시지 토픽과 동일한 토픽의 메시지가 상기 메시지 큐로부터 복사되어 저장되는 메시지 버퍼 필드;를 포함하는 것을 특징으로 하는 메시지 수신 빈도 제어 방법.
A message request step in which a broker receives a subscription request packet for a message of a specific topic from a receiver (Subscriber);
a list generation step of the broker generating a subscription list including a message topic associated with the corresponding receiver according to the subscription request packet transmitted from the receiver; and
A message transmission step of copying a message of the same topic as the message topic included in the subscription list among messages of various topics issued by the broker from the publisher (Publisher) from a message queue and transmitting the message to the receiver;
In the message request step,
A subscription request packet including a specific time frequency for the receiver to receive the message of the specific topic is transmitted to the broker,
In the list creation step,
generating a subscription list including a maximum reception period corresponding to the specific time frequency at which the broker transmits the message of the specific topic to the receiver,
In the message sending step,
The broker transmits the message of the specific topic to the receiver at the maximum reception period included in the subscription list,
The subscription request packet is
a topic area in which a topic of a message to be received by the receiver is stored; and
a frequency area in which a specific time frequency for the receiver to receive the message of the specific topic is stored;
The subscription list is
a message topic field in which a topic of a message associated with the receiver is stored in correspondence with the topic stored in the topic area of the subscription request packet;
a message reception period field in which a maximum reception period of a message associated with the receiver is stored in correspondence with a specific time frequency stored in the frequency area of the subscription request packet;
a message previous transmission time field in which a previous transmission time when the message was last transmitted to the receiver is stored; and
and a message buffer field in which a message of the same topic as the message topic stored in the message topic field is copied from the message queue and stored.
삭제delete 삭제delete 제 1항에 있어서,
상기 메시지 전송 단계는,
상기 브로커가 상기 메시지 큐에 저장된 각 메시지의 토픽을 상기 구독 목록의 메시지 토픽 필드에 저장된 각 메시지 토픽과 순차적으로 비교하는 메시지 토픽 비교 공정;
상기 메시지 큐에 저장된 메시지의 토픽과 상기 메시지 토픽 필드에 저장된 메시지 토픽이 서로 동일한 경우, 상기 브로커가 하기 [수학식 1]을 만족하는지 여부를 판단하는 전송여부 판단 공정;
하기 [수학식 1]을 만족하는 경우, 상기 브로커가 상기 구독 목록에 포함된 메시지 토픽과 동일한 토픽의 메시지를 상기 메시지 큐로부터 복사하여 상기 메시지 버퍼 필드에 저장하는 메시지 저장 공정; 및
상기 브로커가 상기 메시지 버퍼 필드에 저장된 메시지를 상기 수신기로 전송하는 메시지 전송 공정;을 포함하는 것을 특징으로 하는 메시지 수신 빈도 제어 방법.
[수학식 1]
Figure 112021054372200-pat00005

(여기서, Tcurrent은 현재 시간, Tprev은 메시지 이전 전송시간, Tperiod은 메시지 최대 수신 주기, Tcurrent - Tprev > Tperiod은 현재 시간과 메시지 이전 전송시간의 차가 메시지 최대 수신 주기보다 큰 경우)
The method of claim 1,
The message sending step is
a message topic comparison process in which the broker sequentially compares the topic of each message stored in the message queue with each message topic stored in the message topic field of the subscription list;
a transmission decision step of determining whether the broker satisfies the following [Equation 1] when the topic of the message stored in the message queue and the message topic stored in the message topic field are the same;
a message storage process in which the broker copies a message of the same topic as the message topic included in the subscription list from the message queue and stores it in the message buffer field when the following [Equation 1] is satisfied; and
and a message transmission step in which the broker transmits the message stored in the message buffer field to the receiver.
[Equation 1]
Figure 112021054372200-pat00005

(Here, T current is the current time, T prev is the transmission time before the message, T period is the maximum message reception period, and T current - T prev > T period is when the difference between the current time and the transmission time before the message is greater than the maximum message reception period )
제 4항에 있어서,
상기 [수학식 1]을 만족하지 않는 경우,
상기 브로커가 상기 메시지 토픽 비교 공정을 재수행하는 것을 특징으로 하는 메시지 수신 빈도 제어 방법.
5. The method of claim 4,
If the above [Equation 1] is not satisfied,
The method for controlling message reception frequency, characterized in that the broker re-performs the message topic comparison process.
제 5항에 있어서,
상기 전송여부 판단 공정에서는,
상기 메시지 큐에 저장된 메시지의 토픽과 상기 메시지 토픽 필드에 저장된 메시지 토픽이 서로 동일한 경우, 상기 브로커가 하기 [수학식 2]를 만족하는지 여부를 더 판단하고,
하기 [수학식 2]을 만족하는 경우, 상기 브로커가 상기 메시지 저장 공정을 수행하는 것을 특징으로 하는 메시지 수신 빈도 제어 방법.
[수학식 2]
Figure 112020063354096-pat00006

(여기서, Tperiod = 0은 메시지 최대 수신 주기가 설정되지 않은 경우)
6. The method of claim 5,
In the transmission determination process,
If the topic of the message stored in the message queue and the message topic stored in the message topic field are the same, it is further determined whether the broker satisfies the following [Equation 2],
When the following [Equation 2] is satisfied, the message reception frequency control method, characterized in that the broker performs the message storage process.
[Equation 2]
Figure 112020063354096-pat00006

(Here, T period = 0 when the maximum message reception period is not set)
제 6항에 있어서,
상기 브로커가 상기 메시지 저장 공정 후, 상기 메시지 큐에 저장된 다양한 토픽의 메시지 중 상기 메시지 버퍼 필드에 저장한 메시지의 토픽과 동일한 토픽의 메시지를 삭제하는 메시지 삭제 공정;을 더 포함하는 것을 특징으로 하는 메시지 수신 빈도 제어 방법.
7. The method of claim 6,
A message deletion process in which the broker deletes a message of the same topic as the topic of the message stored in the message buffer field from among the messages of various topics stored in the message queue after the message storage process; How to control reception frequency.
제 7항에 있어서,
상기 브로커가 상기 메시지 전송 공정 후, 상기 구독 목록의 메시지 이전 전송시간 필드에 저장된 메시지 이전 전송시간(Tprev)을 현재 시간(Tcurrent)으로 변경하는 전송시간 변경 공정; 및
상기 브로커가 상기 구독 목록의 메시지 버퍼 필드를 더티(dirty)로 표시하는 전송상태 표시 공정;을 더 포함하는 것을 특징으로 하는 메시지 수신 빈도 제어 방법.
8. The method of claim 7,
a transmission time change process in which the broker changes a message previous transmission time (T prev ) stored in a message previous transmission time field of the subscription list to a current time (T current) after the message transmission process; and
The method for controlling message reception frequency according to claim 1, further comprising: a transmission status display step in which the broker marks the message buffer field of the subscription list as dirty.
수신기(Subscriber)로부터 전송된 특정 토픽(Topic)의 메시지에 대한 구독 신청 패킷에 따라 해당 수신기와 연계된 메시지 토픽이 포함된 구독 목록을 생성한 후, 발신기(Publisher)에서 발행한 다양한 토픽의 메시지 중 상기 구독 목록에 포함된 메시지 토픽과 동일한 토픽의 메시지를 메시지 큐(Queue)로부터 복사하여 상기 수신기로 전송하는 브로커(Broker);를 포함하되,
상기 브로커는,
상기 수신기로부터 상기 특정 토픽의 메시지를 수신할 특정 시간 빈도가 포함된 구독 신청 패킷을 전송받고,
상기 특정 토픽의 메시지를 상기 수신기로 전송할 상기 특정 시간 빈도와 대응하는 최대 수신 주기가 포함된 구독 목록을 생성하며,
상기 구독 목록에 포함된 최대 수신 주기로 상기 특정 토픽의 메시지를 상기 수신기로 전송하고,
상기 브로커는,
상기 메시지 큐에 저장된 각 메시지의 토픽을 상기 구독 목록의 메시지 토픽 필드에 저장된 각 메시지 토픽과 순차적으로 비교하고,
상기 메시지 큐에 저장된 메시지의 토픽과 상기 메시지 토픽 필드에 저장된 메시지 토픽이 서로 동일한 경우, 현재 시간과 메시지 이전 전송시간의 차가 메시지 최대 수신 주기보다 큰 경우(Tcurrent - Tprev > Tperiod)인지 여부와, 메시지 최대 수신 주기가 설정되지 않은 경우(Tperiod = 0)인지 여부를 각각 판단하며,
상기 현재 시간과 메시지 이전 전송시간의 차가 메시지 최대 수신 주기보다 큰 경우가 아닌 경우, 상기 메시지 큐에 저장된 각 메시지의 토픽을 상기 구독 목록의 메시지 토픽 필드에 저장된 각 메시지 토픽과 순차적으로 다시 비교하고,
상기 현재 시간과 메시지 이전 전송시간의 차가 메시지 최대 수신 주기보다 큰 경우이거나, 메시지 최대 수신 주기가 설정되지 않은 경우, 상기 구독 목록에 포함된 메시지 토픽과 동일한 토픽의 메시지를 상기 메시지 큐로부터 복사하여 상기 구독 목록에 포함된 메시지 버퍼 필드에 저장한 후,
상기 메시지 버퍼 필드에 저장된 메시지를 상기 수신기로 전송하는 것을 특징으로 하는 메시지 수신 빈도 제어 장치.
According to the subscription request packet for the message of a specific topic transmitted from the receiver (Subscriber), the subscription list including the message topic associated with the receiver is created, and then among the messages of various topics issued by the publisher (Publisher) A broker that copies a message of the same topic as the message topic included in the subscription list from a message queue and transmits it to the receiver;
The broker is
receiving a subscription request packet including a specific time frequency for receiving the message of the specific topic from the receiver;
generating a subscription list including a maximum reception period corresponding to the specific time frequency to transmit the message of the specific topic to the receiver,
Transmitting the message of the specific topic to the receiver with the maximum reception period included in the subscription list,
The broker is
sequentially comparing the topic of each message stored in the message queue with each message topic stored in the message topic field of the subscription list;
When the topic of the message stored in the message queue and the message topic stored in the message topic field are the same, the difference between the current time and the transmission time before the message is greater than the maximum message reception period (T current - T prev > T period ) And, it is determined whether the maximum message reception period is not set (T period = 0),
If the difference between the current time and the transmission time before the message is not greater than the maximum message reception period, the topic of each message stored in the message queue is sequentially compared again with each message topic stored in the message topic field of the subscription list,
When the difference between the current time and the transmission time before the message is greater than the maximum message reception period or when the maximum message reception period is not set, a message of the same topic as the message topic included in the subscription list is copied from the message queue and the After saving in the message buffer field included in the subscription list,
The apparatus for controlling message reception frequency, characterized in that the message stored in the message buffer field is transmitted to the receiver.
삭제delete 제 9항에 있어서,
상기 브로커는,
상기 구독 목록에 포함된 메시지 토픽과 동일한 토픽의 메시지를 상기 메시지 큐로부터 복사하여 상기 메시지 버퍼 필드에 저장한 후,
상기 메시지 큐에 저장된 다양한 토픽의 메시지 중 상기 메시지 버퍼 필드에 저장한 메시지의 토픽과 동일한 토픽의 메시지를 삭제하고,
상기 메시지 버퍼 필드에 저장된 메시지를 상기 수신기로 전송한 후,
상기 구독 목록의 메시지 이전 전송시간 필드에 저장된 메시지 이전 전송시간(Tprev)을 현재 시간(Tcurrent)으로 변경하며,
상기 구독 목록의 메시지 버퍼 필드를 더티(dirty)로 표시하는 것을 특징으로 하는 메시지 수신 빈도 제어 장치.
10. The method of claim 9,
The broker is
After copying a message of the same topic as the message topic included in the subscription list from the message queue and storing it in the message buffer field,
Deletes a message of the same topic as the topic of the message stored in the message buffer field among messages of various topics stored in the message queue;
After transmitting the message stored in the message buffer field to the receiver,
Changing the transmission time (T prev ) before the message stored in the transmission time field before the message of the subscription list to the current time (T current ),
Message reception frequency control apparatus, characterized in that the message buffer field of the subscription list is marked as dirty.
KR1020200074982A 2020-06-19 2020-06-19 Method And Device For Message Reception Frequency Control KR102298679B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200074982A KR102298679B1 (en) 2020-06-19 2020-06-19 Method And Device For Message Reception Frequency Control

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200074982A KR102298679B1 (en) 2020-06-19 2020-06-19 Method And Device For Message Reception Frequency Control

Publications (1)

Publication Number Publication Date
KR102298679B1 true KR102298679B1 (en) 2021-09-06

Family

ID=77782239

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200074982A KR102298679B1 (en) 2020-06-19 2020-06-19 Method And Device For Message Reception Frequency Control

Country Status (1)

Country Link
KR (1) KR102298679B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100179996A1 (en) * 2009-01-13 2010-07-15 International Business Machines Corporation Multi-message triggered subscription notifications
KR20180105917A (en) 2017-03-16 2018-10-01 한국전자통신연구원 Flexible wearable platform systems and methods for wearable data provision and intelligent wearable information services using MQTT protocols
KR20190057604A (en) * 2017-11-20 2019-05-29 아주대학교산학협력단 Publish-Subscribe message service method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100179996A1 (en) * 2009-01-13 2010-07-15 International Business Machines Corporation Multi-message triggered subscription notifications
KR20180105917A (en) 2017-03-16 2018-10-01 한국전자통신연구원 Flexible wearable platform systems and methods for wearable data provision and intelligent wearable information services using MQTT protocols
KR20190057604A (en) * 2017-11-20 2019-05-29 아주대학교산학협력단 Publish-Subscribe message service method

Similar Documents

Publication Publication Date Title
KR100612565B1 (en) System and method for combining local and remote windows into a single desktop environment
US7206811B2 (en) System and method for facilitating real-time collaborating by collapsing a queue for a slow client
US7877461B1 (en) System and method for adding dynamic information to digitally signed mobile applications
US20040181796A1 (en) Real-time collaboration client
US8028020B2 (en) Control unit operations in a real-time collaboration server
US20130212227A1 (en) System and method for streaming data via http
US7594022B2 (en) Regulating client requests in an electronic messaging environment
US20100138476A1 (en) Adaptive screen painting to enhance user perception during remote management sessions
KR20070038157A (en) Methods and apparatus for providing program guide state information to a device
WO2008017695B1 (en) Messaging system
CA2443839A1 (en) System, method, and article of manufacture for using a replaceable component to select a replaceable quality of service capable network communication channel component
US7865550B2 (en) Message processing control in a publish/subscribe system
KR20080090976A (en) Method for processing content and terminal thereof
CN109982159A (en) The method and terminal of online playing stream media
MX2013001159A (en) Highly reliable cross-session web application instrumentation.
CN111786901B (en) Transmission parameter self-adaptive adjustment method and acceleration service system
US8336075B2 (en) Information distribution system, program-for-management-apparatus recording medium, and program-for-information-processor recording medium
CN109547172A (en) Data transmission method, system and data transmitting equipment, data receiver
KR102298679B1 (en) Method And Device For Message Reception Frequency Control
KR20180113080A (en) Method and system for data transmitting
CN106803859A (en) The display methods and device of a kind of application interface
CN107566291B (en) Multicast transmission method, device, electronic equipment and storage medium
CN113742004B (en) Data processing method and device based on flink framework
JP2001154958A (en) System and method for providing information, server device, client device and recording medium
US7039761B2 (en) Methodology for performing caching procedures in an electronic network

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant