白丝美女被狂躁免费视频网站,500av导航大全精品,yw.193.cnc爆乳尤物未满,97se亚洲综合色区,аⅴ天堂中文在线网官网

Downlink scheduling optimization for edge devices that use a radio communication protocol

專利號
US11930495B1
公開日期
2024-03-12
申請人
Amazon Technologies, Inc.(US WA Seattle)
發(fā)明人
Hongbo Tian; Rongsheng Huang; Jungtao Liu
IPC分類
H04W72/1273; G16Y30/00
技術(shù)領(lǐng)域
dl,scheduling,iot,instance,message,may,messages,gateway,edge,in
地域: WA WA Seattle

摘要

An IoT service of a provider network may be used to optimize downlink scheduling for edge devices that use a radio communication protocol (e.g., LoRaWAN). A processing instance receives DL packets from a client application that are to be sent to an edge device. The processing instance adds metadata entries (device ID, message ID) to a metadata queue and stores the DL packets into a data store. A scheduling instance obtains a metadata entry and the associated DL packet, formats the DL packet based on edge device information, and publishes the packet to a gateway topic. A separate connection instance receives the formatted DL packet and sends it to a gateway of the client network.

說明書

BACKGROUND

The Internet of Things (IoT) is a phrase given for the interconnection of computing devices scattered around the globe within the existing internet infrastructure. Clients of a remote service provider may leverage the internet-based connectivity of IoT devices (also referred to herein as edge devices) by using a service offered by the service provider. For example, temperature sensors at a client site may collect temperature values for different equipment and transmit them to the service provider for analysis, such as determining whether a machine needs servicing.

A client's network may include edge devices that communicate wirelessly using a particular radio communication protocol. A service provider may provide a service that manages a large number of edge devices for clients. Due to a short time receiving window for some IoT devices, it may be challenging to provide the correct timing when downloading many different downlink (DL) messages to edge devices across client networks.

For example, a low-power wide-area network (“LoRaWAN”) radio protocol specifies a narrow window of time for packet reception, which allows the IoT devices to use less power and conserve battery life. Due to these timing requirements, it may become difficult for a service provider to handles large quantities of DL messages, resulting in lost messages and reducing functionality of the IoT devices.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a logical block diagram illustrating a system for downlink scheduling optimization for edge devices that use a radio communication protocol, according to some embodiments.

權(quán)利要求

1
What is claimed is:1. A system, comprising:one or more processors and one or more memories of a provider network, wherein the one or more memories have stored thereon instructions, which when executed by the one or more processors, cause the one or more processors to implement an IoT service of the provider network for a plurality of clients of the provider network, wherein the IoT service is configured to:provision a plurality of processing instances, wherein a processing instance of the plurality of processing instances is configured to:receive, from an application of the provider network, a plurality of downlink (DL) messages to be sent to an edge device of a client network of a client via a gateway of the client network, wherein the plurality of DL messages comprise information associated with the edge device;add a plurality of entries for the plurality of DL messages to a queue of the IoT service of the provider network in an order, wherein the plurality of entries comprise at least a portion of the information associated with the edge device; andstore the plurality of DL messages to a data store, wherein a particular DL message of the plurality of DL messages indicates a device ID for the edge device;provision a plurality of scheduling instances, wherein a scheduling instance of the plurality of scheduling instances is configured to:obtain, from the queue of the IoT service of the provider network in accordance with the order, an entry for the particular DL message of the plurality of DL messages to be sent from the IoT service of the provider network to the edge device of the client network of the client via the gateway of the client network;based at least on a message ID of the entry for the particular DL message, obtain, from the data store, the particular DL message, wherein the data store also comprises other DL messages that are to be sent to a different edge device that uses a different communication protocol than the edge device;based on information within the particular DL message that specifies a particular communication protocol that is used by the edge device of the client network, generate, by the scheduling instance of the IoT service of the provider network, a formatted DL message that is formatted in accordance with the particular communication protocol; andcause the formatted DL message to be sent to a connection instance, wherein the connection instance has a connection with the gateway of the client network; andprovision a plurality of connection instances, wherein the connection instance of the plurality of connection instances is configured to:maintain the connection with the gateway of the client network;receive the formatted DL message; andsend the formatted DL message to the gateway of the client network via the connection.2. The system as recited in claim 1, wherein the scheduling instance is further configured to:receive an uplink (UL) message from the edge device; andin response to the reception of the UL message, cause the formatted DL message to be sent to the connection instance after a predefined period of time.3. The system as recited in claim 2, wherein to generate the formatted DL message, the scheduling instance is further configured to:include in the formatted DL message an acknowledgement that the UL message was received.4. The system as recited in claim 1, wherein to cause the formatted DL message to be sent to the connection instance, the scheduling instance is further configured to:publish the formatted DL message to a gateway topic, wherein the connection instance is subscribed to the gateway topic.5. The system as recited in claim 1, wherein to generate the formatted DL message, the scheduling instance is further configured to:generate the formatted DL message in accordance with a low-power wide-area network (LoRaWAN) protocol.6. A method, comprising:performing, by one or more computing devices of a provider network:obtaining, from a queue by a scheduling instance of an IoT service of the provider network, message data for a particular downlink (DL) message of a plurality of DL messages to be sent from the IoT service of the provider network to an edge device of a client network of a client via a gateway of the client network, wherein the plurality of DL messages are from an application of the provider network, and wherein the message data for the particular DL message identifies the particular DL message;based at least on a message ID of the message data for the particular DL message, obtaining, from a data store by the scheduling instance, the particular DL message, wherein the particular DL message comprises information associated with the edge device, and wherein the data store also comprises other DL messages that are to be sent to a different edge device that uses a different communication protocol than the edge device;based on information within the particular DL message that specifies a particular communication protocol that is used by the edge device of the client network, generating, by the scheduling instance of the IoT service of the provider network, by the scheduling instance, a formatted DL message that is formatted in accordance with the communication protocol;causing, by the scheduling instance, the formatted DL message to be sent to a connection instance of the IoT service, wherein the connection instance has a connection with the gateway of the client network;receiving, by the connection instance, the formatted DL message; andsending, by the connection instance, the formatted DL message to the gateway of the client network via the connection.7. The method as recited in claim 6, further comprising:receiving, by the scheduling instance, an uplink (UL) message from the edge device; andin response to receiving the UL message, causing, by the scheduling instance, the formatted DL message to be sent to the connection instance after a predefined period of time.8. The method as recited in claim 7, wherein generating the formatted DL message comprises:including in the formatted DL message an acknowledgement that the UL message was received.9. The method as recited in claim 6, wherein causing the formatted DL message to be sent to the connection instance comprises:publishing the formatted DL message to a gateway topic, wherein the connection instance is subscribed to the gateway topic.10. The method as recited in claim 9, wherein the connection instance has another connection with another gateway of the client network, wherein the connection instance is subscribed to another gateway topic associated with another gateway, and further comprising:receiving, by the connection instance, another formatted DL message that has been published to the other gateway topic; andsending, by the connection instance, the other formatted DL message to the other gateway of the client network via the other connection.11. The method as recited in claim 9, further comprising:determining, by the IoT service, that the connection instance has failed;in response to determining that the connection instance has failed, re-establishing the connection with the gateway using another connection instance; andsubscribing, by the other connection instance, to the gateway topic.12. The method as recited in claim 6, further comprising:receiving, by a processing instance from the application, the plurality of DL messages;adding, by the processing instance, the message data for the DL messages to the queue; andadding, by the processing instance, the DL messages to the data store.13. The method as recited in claim 12, further comprising:selecting, by a load balancer, the processing instance from among a plurality of processing instances available to receive the plurality of DL messages; andsending, from the load balancer to the processing instance, the plurality of DL messages.14. The method as recited in claim 6, wherein generating, by the scheduling instance, the formatted DL message comprises:generating the formatted DL message in accordance with a low-power wide-area network (LoRaWAN) protocol.15. One or more non-transitory computer-accessible storage media storing program instructions that when executed on or across one or more processors of a provider network cause the one or more processors to:obtain, by a scheduling instance of an IoT service of the provider network, message data for a particular downlink (DL) message of a plurality of DL messages to be sent from the IoT service of the provider network to an edge device of a client network of a client via a gateway of the client network, wherein the plurality of DL messages are from an application of the provider network, and wherein the message data for the particular DL message identifies the particular DL message;based at least on a message ID of the message data for the particular DL message, obtain, by the scheduling instance, the particular DL message, wherein the particular DL message comprises information associated with the edge device, and wherein the data store also comprises other DL messages that are to be sent to a different edge device that uses a different communication protocol than the edge device;based on information within the particular DL message that specifies a particular communication protocol that is used by the edge device of the client network, generate, by the scheduling instance of the IoT service of the provider network, a formatted DL message that is formatted in accordance with the communication protocol;cause, by the scheduling instance, the formatted DL message to be sent to a connection instance of the IoT service, wherein the connection instance has a connection with the gateway of the client network; andreceive, by the connection instance, the formatted DL message; andsend, by the connection instance, the formatted DL message to the gateway of the client network via the connection.16. The one or more storage media as recited in claim 15, wherein the program instructions when executed on or across the one or more processors further cause the one or more processors to:receive, by the scheduling instance, an uplink (UL) message from the edge device; andin response to the reception of the UL message, cause, by the scheduling instance, the formatted DL message to be sent to the connection instance after a predefined period of time.17. The one or more storage media as recited in claim 16, wherein to generate the formatted DL message, the program instructions when executed on or across the one or more processors further cause the one or more processors to:include in the formatted DL message an acknowledgement that the UL message was received.18. The one or more storage media as recited in claim 15, wherein to cause the formatted DL message to be sent to the connection instance, the program instructions when executed on or across the one or more processors further cause the one or more processors to:publish the formatted DL message to a gateway topic, wherein the connection instance is subscribed to the gateway topic.19. The one or more storage media as recited in claim 15, wherein the program instructions when executed on or across the one or more processors further cause the one or more processors to:receive, from the application by one of a plurality of available processing instances, the plurality of DL messages;add, by the processing instance, the message data for the DL messages to a queue; andadd, by the processing instance, the DL messages to a data store;in response to detection of failure of the processing instance, distribute a plurality of additional DL messages to other processing instances of the plurality of available processing instances, wherein the plurality of available processing instances no longer includes the failed processing instance.20. The one or more storage media as recited in claim 15, wherein to generate, by the scheduling instance, the formatted DL message, the program instructions when executed on or across the one or more processors further cause the one or more processors to:generate the formatted DL message in accordance with a low-power wide-area network (LoRaWAN) protocol.
微信群二維碼
意見反饋