Techniques to reduce transmission failures in a slotted channel hopping network

CN117529947BActive Publication Date: 2026-11-03LANDIS GYR TECH INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202280042161.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2021-04-20
Filing Date
2022-04-19
Publication Date
2026-11-03
Estimated Expiration
2042-04-19

AI Technical Summary

Technical Problem

In time-slot channel hopping networks, transmission failures between nodes lead to inefficient network operation and energy waste, especially when the receiving node is involved in other transmissions, transmission failures occur frequently.

Method used

By determining node-specific transmission delays at the receiving node, transmission attempts during backoff slots are avoided. The transmission delays are modified using information in message initiation packets and queued for transmission after the delay ends.

Benefits of technology

It reduced transmission failures, optimized network resource utilization, reduced power consumption, and improved network operating efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117529947B_ABST
    Figure CN117529947B_ABST
Patent Text Reader

Abstract

A first node in a TSCH network can receive a message initiation packet from a second node on the TSCH network. Based on information in the message initiation packet, the first node can determine a transmission time of a message content packet associated with the message initiation packet. The first node can generate or modify a node-specific transmission delay that indicates a backoff associated with the second node. The node-specific transmission delay can indicate a number of backoff slots during which the first node delays initiating a transmission with the second node. If the first node receives an additional packet destined for the second node during the node-specific transmission delay, the first node can enqueue the additional packet until after the node-specific transmission delay is complete.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure generally relates to the field of message transmission protocols in computer networks, and more specifically to reducing transmission failures associated with message transmission. Background Technology

[0002] A computer network may include one or more computing devices or nodes that communicate with other nodes within the network. In some cases, a computer network may implement a Time Slotted Channel Hopping (“TSCH”) protocol. In some cases, a computer network implementing the TSCH protocol (“TSCH network”) may include multiple nodes that send and receive messages, such as messages including packets. Nodes included in a TSCH network may send and receive messages with neighboring nodes in the network, and such transmissions occur within specific time slots on specific channels of the TSCH protocol. In some cases, a TSCH network may include one or more devices operating on a limited power source (such as a battery), one or more devices operating on a stable power source (such as an electrical connection to the power grid), or devices using a combination of limited or stable power sources.

[0003] In some cases, a first node can initiate a transmission to a second node in the TSCH network. However, if the second node is already involved in a transmission with an additional node, the transmission from the first node may fail. For example, the second node may not respond to the first node's transmission, or the first node's transmission may be dropped. In some cases, failed transmissions can lead to inefficient operation of nodes in the TSCH network. For example, when the second node is already involved in a transmission, the first node may inefficiently use time slots to attempt to transmit to the second node. Furthermore, the first node may wait for a period of time before attempting to transmit to the second node again, leading to further inefficiency related to waiting time. In some cases, nodes operating on battery power will consume energy to attempt transmissions, such as by applying battery power to enhance antenna functionality. If a transmission fails, a battery-powered node may have inefficiently used battery power before completing the attempted transmission. To improve the efficient operation of the TSCH network, it is desirable to reduce transmission failures between nodes in the TSCH network. Summary of the Invention

[0004] According to some implementations, computer network nodes in a TSCH network can be configured to receive message initiation packets from additional nodes in the TSCH network. Based on the message initiation packets, the computer network node can determine the number of backoff slots during which the additional nodes transmit message content packets. The message content packets can be associated with the message initiation packets. The computer network node can modify a node-specific transmission delay associated with the additional node. The node-specific transmission delay can indicate that the additional node is unavailable for receiving transmissions during the number of backoff slots. The computer network node can receive additional message content packets with a destination to the additional node. Based on the node-specific transmission delay, the computer network node can queue the additional message packets for transmission after the number of backoff slots.

[0005] In some implementations, the first node may receive a message initiation packet from the second node. Based on the message initiation packet, the first node may determine the transmission time of a message content packet associated with the message initiation packet. The first node may modify a node-specific transmission delay associated with the second node. The node-specific transmission delay may indicate the number of backoff slots during which the first node delays initiating transmissions to the second node. The first node may determine additional message content packets with a destination to the second node. Based on the node-specific transmission delay, the first node may queue the additional message packets for transmission to the second node after the node-specific transmission delay.

[0006] These illustrative embodiments are mentioned not to limit or restrict the scope of this disclosure, but to provide examples to aid in understanding it. Additional embodiments are discussed in the detailed description, and further description is provided therein. Attached Figure Description

[0007] The features, implementation methods, and advantages of this disclosure can be better understood by referring to the following detailed description in the accompanying drawings:

[0008] Figures 1a and 1b (collectively referred to herein as Figure 1) are schematic diagrams illustrating examples of TSCH networks comprising multiple nodes having routing relationships or transmission ranges according to certain embodiments;

[0009] Figure 2 A flowchart illustrating an example of a process for reducing transmission failures between nodes in a TSCH network, according to certain implementations;

[0010] Figure 3A flowchart illustrating an example of a process for calculating the backoff value of a node in a TSCH network, according to certain implementations;

[0011] Figure 4 This is a schematic diagram illustrating an example of a transmission environment in which signals can be transmitted within a TSCH network, according to certain implementations.

[0012] Figure 5 A schematic diagram illustrating, according to certain embodiments, an example of a transmission environment in which node-specific transmission delays can be determined for nodes in a TSCH network; and

[0013] Figure 6 This is a schematic diagram illustrating an example of a computing environment capable of determining node-specific transmission delays in a TSCH network, according to certain implementations. Detailed Implementation

[0014] As described above, efficient message transmission within a TSCH network can be improved by reducing transmission failures between nodes in the TSCH network. Certain implementations described herein provide techniques for reducing transmission failures associated with receiving nodes that are not ready to receive messages (such as receiving nodes already involved in additional transmissions with another node). For example, an originating node may initiate the transmission of a message to another node within the TSCH network. A portion of the message may be broadcast to multiple nodes in the TSCH network, such as a message header packet (“header”, “header packet”) broadcast to multiple nodes within the communication range of the originating node. Nodes receiving the header packet, including nodes that are not recipients of the message content, may determine that the originating node will participate in the transmission based on information included in the header. For example, non-receiving nodes (e.g., nodes that are not recipients of the message content) may determine that the originating node is involved in a specific number of time slots of transmission based on the message size and the communication pattern indicated by the header. Furthermore, non-receiving nodes may determine node-specific transmission delays associated with the originating node. During the node-specific transmission delay, non-receiving nodes may avoid attempting additional transmissions with the originating node. For example, messages destined for the originating node can be queued for later transmission, such as after the node-specific transmission delay has been completed. In some cases, determining the node-specific transmission delay can reduce the number of transmission attempts to that node when it is already involved in transmission, thereby reducing transmission failures at that node. Furthermore, avoiding transmission attempts with that node during the node-specific transmission delay can improve the use of network resources on the TSCH network, such as by freeing up communication channels used by additional nodes in additional transmissions and reducing power consumption associated with failed transmission attempts.

[0015] In some implementations, a first node on the TSCH network can receive message initiation packets, such as header packets or mode switching packets, from a second node on the TSCH network. For example, the second node can broadcast message initiation packets to all nodes within its communication range on the TSCH network. Based on information in the message initiation packets, the first node can determine the transmission time of the message content packets associated with the message initiation packets. For example, the message initiation packets can indicate one or more of the following: the size of the message content packets, the communication mode of the message content packets, or any other suitable information describing the transmission of the message content packets. The transmission time can indicate the number of time slots or communication channels reserved for the transmission of the message content packets. The first node can generate or modify node-specific transmission delays that indicate backoff associated with the second node. For example, a node-specific transmission delay can indicate the number of backoff time slots during which the first node delays initiating transmissions with the second node. In some cases, the first node can receive message content packets destined for the second node. If a message content packet is received during a node-specific transmission delay, the first node can queue the message content packet or delay its transmission until the node-specific transmission delay is complete.

[0016] As used herein, the term "TSCH network" can refer to a computer network that implements the Time Slotted Channel Hopping ("TSCH") protocol. A TSCH network can, but is not necessarily, a low-power or lossy computer network. In some cases, a TSCH network may include one or more nodes that typically operate under constraints of one or more of processing power, memory, or energy, such as computing devices operating on battery power. Furthermore, a TSCH network may include one or more nodes characterized by one or more of the following: a high rate of data message loss (e.g., lost packets), a low data rate, or instability of communication paths between nodes on the computer network.

[0017] In some cases, a TSCH network may include one or more nodes organized according to a routing protocol, such as a protocol that identifies communication paths between (or intermediate) nodes on the TSCH network. Data messages may be transmitted between or between nodes via the identified communication paths. In some cases, the routing protocol identifies a root node (e.g., the root of the communication path). For convenience, and not as a limitation, the routing relationship between (or intermediate) nodes may be referred to as a parent-child relationship. For example, a TSCH network may include a first node configured to transmit messages (such as messages to the root node) via a second node. In this example implementation, the first node may be referred to as having a child state relative to the second node, and the second node may be referred to as having a parent state relative to the first node. In some cases, a node in a TSCH network may have a parent state relative to a specific node and a child state relative to additional nodes. In the example implementation above, the second node may have a child state relative to additional nodes (such as the root node) in the TSCH network. In some cases, a TSCH network may implement a routing protocol according to one or more standards, such as RFC 6550 for “RPL: IPv6 Routing Protocol for Low-Power and Lossy Networks”.

[0018] As used herein, the term "node" can refer to a computing device configured to receive or send messages in a computer network. A node can be, but is not limited to, a router, gateway, endpoint, collector, or any other suitable type of computing device. In some cases, a node can be a virtual node, such as a node implemented as a software-based computing device (e.g., a cloud computing network, a virtual server).

[0019] As used herein, the term "message" or "data message" can refer to a group of one or more data packets configured to be transmitted between or between nodes (such as nodes in a TSCH network). A data message may include information such as information about the node sending the packet (e.g., performance information of the sending node), information from additional nodes on the TSCH network, information from additional computing systems (e.g., computing systems outside the TSCH network), or any other suitable information. A data message may include multiple parts, such as one or more message initiation packets or message content packets. Furthermore, message initiation packets include one or more mode switching packets or header packets. In some cases, an example node on the TSCH network may send message initiation packets (or portions thereof) to multiple additional nodes on the TSCH network, such as a mode switching packet broadcast to any node within communication range. Additionally, an example node may send message content packets to a specific additional node configured to utilize the data included in the message content packets, such as a parent or child node of the example node. For example, a specific additional node may be configured to modify its own behavior based on the data in the message content packets, or to send data to an additional parent or child node, or other suitable use (or combination of uses) of the data.

[0020] As used herein, the term "communication path" can refer to a link between nodes that enables the nodes to send and receive messages. A communication path can be established via any suitable communication technology between the nodes, such as wired technology (e.g., network cable), or wireless technology (e.g., Wi-Fi, Bluetooth, cellular modem), or a combination of wired and wireless technologies.

[0021] Referring now to the accompanying drawings, Figures 1a and 1b (collectively referred to herein as Figure 1) are schematic diagrams of an example TSCH network 100 comprising multiple nodes. The nodes in the TSCH network 100 may include a root node 110 and one or more additional nodes, such as nodes 111, 112, 113, 114, 115, and 116. In some cases, each of nodes 110 through 116 may be configured to send and receive messages. Furthermore, the root node 110 may be configured to communicate with one or more additional computer networks (such as additional TSCH networks or non-TSCH networks). Additionally, each of nodes 110 through 116 may have a communication path with one or more additional nodes in the TSCH network 100. For example, nodes 110 through 116 may be able to communicate via wireless communication technologies (e.g., sending and / or receiving messages). For example, nodes 111 and 112 may be able to communicate with each other.

[0022] In some implementations, the TSCH network 100 is organized based on routing protocols. For example, based on routing protocols, each of nodes 110 through 116 may establish one or more routing relationships with one or more additional nodes. In some cases, for each node, the routing relationships between or between nodes may indicate a parent or child state relative to one or more additional nodes in the TSCH network 100. Based on routing relationships, the TSCH network 100 may have a single root node (such as root node 110), each non-root node may have a single parent node, and each non-root node may or may not have one or more child nodes.

[0023] Figure 1 illustrates an example set of routing relationships that can be established within TSCH network 100. For illustrative purposes, example parent-child relationships are illustrated by solid lines between parent and child nodes, with arrows pointing from child nodes to parent nodes. In TSCH network 100, messages can be sent from a parent node to a child node, or from a child node to a parent node. Root node 110 can establish one or more child relationships with one or more additional nodes within TSCH network 100. For example, root node 110 can establish relationships with nodes 112 and 115, where the relationships indicate the parent state of node 110 and the child states of nodes 112 and 115. Furthermore, root node 110 can establish additional relationships with additional nodes outside TSCH network 100 (e.g., relationships with additional nodes in an additional computer network). In some cases, each of non-root nodes 111 through 116 can establish a parent relationship with an additional node. Additionally, non-root nodes 111 through 116 can establish one or more child relationships with one or more of the additional nodes. For example, node 112 can establish a relationship relative to node 111, which indicates the parent state of node 112 and the child state of node 111. Similarly, node 115 can establish relationships relative to nodes 116 and 114. The relationship between nodes 115 and 116 can indicate the child state of node 116 and the parent state of node 115. The relationship between nodes 115 and 114 can indicate the child state of node 114 and the parent state of node 115. Table 1 summarizes the example parent-child relationships illustrated in Figure 1.

[0024]

[0025]

[0026] In some cases, one or more nodes in the TSCH network 100 may store information about additional nodes in the TSCH network 100, such as in a node state table (e.g., a lookup table) indicating the state of one or more of the additional nodes. For example, each particular node may generate or modify a node state table that stores information about each additional node with which the particular node can communicate. For example, node 115 may generate a node state table that stores information about root node 110, node 116, and node 114. In some cases, a particular node's node state table may include information about additional nodes that have a parent-child relationship with the particular node, such as table entries indicating parent-child relationships, relative signal strength, or additional information related to communication with the additional nodes. Furthermore, a particular node's node state table may include information about additional nodes that can communicate with the particular node. For example, if node 115 has no parent-child relationship with node 112 but can communicate with node 112 (e.g., within range of a signal transmitted from node 112), then node 115 may maintain node state table entries for node 112. In some cases, node status table entries associated with node 112 may indicate the absence of parent or child relationships or additional information related to communication with node 112.

[0027] In TSCH network 100, one or more messages, such as data messages sent to or from a parent or child node, can be transmitted between or between nodes 110 and 116. Messages transmitted within TSCH network 100 may include one or more of the following: mode switching packets, message header packets, or message content packets. In TSCH network 100, the TSCH protocol can be used for transmission between nodes. For example, nodes participating in the transmission of data messages (e.g., receiving nodes, sending nodes) can reserve one or more communication channels or one or more time blocks for message transmission. Communication channels or time blocks can be reserved according to the TSCH protocol.

[0028] In some implementations, node 114 may generate (or receive) message data, such as information about the operation of node 114. Additionally, node 114 may generate (or receive) data message 120. Data message 120 may include message content packets describing data from node 114. Furthermore, data message 120 may include one or more message initiation packets, such as mode switching packet 122 or message header packet 124. Additionally, data message 120 may include one or more message content packets, such as message content packet 126. For convenience, and not as a limitation, data message 120 is described as having message content packet 126, but other implementations are possible. For example, a particular data message on TSCH network 100 may include multiple message content packets describing data (e.g., having a size larger than a single message content packet).

[0029] Node 114 can send message initiation packets for data message 120 to multiple nodes on the TSCH network 100. For example, the message initiation packet for data message 120 can be sent to every node within the communication range of node 114, such as via broadcast to nodes 115 and 113 that have at least a parent or child relationship with node 114. Based on the message initiation packet, one or more of nodes 113 or 115 can determine one or more of the originating or receiving nodes of data message 120. For example, header packet 124 may include header information identifying node 115 as the expected receiving node, or additional header information identifying node 114 as the originating node. In some cases, one or more of nodes 114 or 115 can enter a transmission state, such as by reserving a channel and one or more time blocks for communication of data message 120.

[0030] Based on the information in the message initiation packet, node 113 can determine that one or more of the originating or receiving nodes (i.e., node 114 or node 115) are involved in the transmission. For example, node 113 can determine that, for the message content packet 126 associated with the message initiation packet, node 114 is the originating node and node 115 is the receiving node. Furthermore, node 113 can determine the transmission time of data message 120, such as the number of time slots. In some cases, the transmission time can indicate the duration of transmission between the originating and receiving nodes. For example, the transmission time of data message 120 can include the number of time slots during which the data of data message 120 (e.g., message content packet 126) is transmitted on the communication channel in the TSCH network 100. The transmission time can be determined based on information from the message header packet 124, such as header data describing the size of message content packet 126, the baud rate of the communication channel transmitting data message 120, the length of the time slots, or other suitable information about the transmission of data message 120. For example, node 113 can calculate the transmission time by multiplying (or combining) the size of message content packet 126 by the baud rate of the communication channel transmitting data message 120.

[0031] In some implementations, node 113 may modify one or more node-specific transmission delays based on the transmission time of data message 120. For example, node 113 may modify the node-specific transmission delay associated with node 114. The node-specific transmission delay may indicate backoff by node 114. For example, node 113 may modify the node-specific transmission delay to indicate the number of backoff slots for node 114. During the number of backoff slots, node 113 delays (or avoids) initiating transmissions with node 114.

[0032] As a non-limiting example, if the transmission of message initiation packet indicating data message 120 requires five time slots, node 113 can modify the node-specific transmission delay to indicate five backoff time slots for node 114. If node 113 receives additional data messages for node 114 during the node-specific transmission delay, node 113 can delay the transmission of the additional data messages. For example, if node 113 generates (or receives) data message 140 for transmission to node 114, node 113 can queue (or delay) data message 140 until the five backoff time slots are completed.

[0033] In some cases, node-specific transmission delays can be stored in a node state table. For example, node 113 can maintain a node state table with entries associated with node 114. Node 113 can modify the table entries to indicate the communication status of node 114 (e.g., "available for transmission," "not available for transmission" status). Furthermore, node 113 can modify the table entries to indicate node-specific transmission delays associated with node 114. In some cases, node 113 can modify additional node-specific transmission delays associated with node 115, such as if node 113 can communicate with node 115 but has no parent-child relationship with node 115.

[0034] In some implementations, a node can determine a node-specific transmission delay based on an estimated transmission time. The estimated transmission time can be calculated based on information indicated by the message initiation packet combined with information determined by the node. In some cases, the estimated transmission time can be calculated based on information associated with the communication mode. Furthermore, the estimated transmission time can be calculated based on information associated with previous transmissions to or from the node.

[0035] Figure 1b is a schematic diagram of example transmission ranges that may be associated with specific communication modes in TSCH network 100. For example, one or more of nodes 113, 114, or 115 may be included within transmission range 155. Transmission range 155 may be associated with a first communication mode, enabling nodes included within transmission range 155 to communicate via the first communication mode. In TSCH network 100, the first communication mode is characterized by long-distance transmission at a relatively low transmission rate (e.g., low baud rate, low bandwidth). Furthermore, one or more of nodes 114 or 115 may be included within transmission range 165. Transmission range 165 may be associated with a second communication mode, enabling nodes included within transmission range 165 to communicate via the second communication mode. In TSCH network 100, the second communication mode is characterized by short-distance transmission at a relatively high transmission rate (e.g., high baud rate, high bandwidth). In some cases, transmission range 155 and transmission range 165 may be affected by the characteristics of the nodes in the TSCH network 100, such as the receiving sensitivity of the node antenna, the orientation of the node antenna, the transmission output power of the node, the available battery power of the node, or additional characteristics of one or more nodes. Furthermore, transmission range 155 and transmission range 165 may be affected by the characteristics of the TSCH network 100, such as the basic baud rate of the TSCH network 100, the geographical distance between nodes, physical features located between nodes (e.g., buildings), or additional characteristics of the TSCH network 100.

[0036] In TSCH network 100, one or more of nodes 110 to 116 can estimate the transmission time between additional nodes. For example, node 113 can complete a transmission to node 114, such as the transmission of data message 150. In some cases, data message 150 may include data destined for node 115 (or the parent node of node 115). After completing the previous transmission of data message 150 to node 114, node 113 may receive a message initiation packet from node 114. The message initiation packet may be associated with data message 160 for transmission from node 114 to node 115. In some cases, the message initiation packet received by node 113 may include a mode switching packet, such as a mode switching packet indicating a second communication mode for the transmission of data message 160. Furthermore, the message initiation packet received by node 113 may omit the message header packet. For example, node 114 may transmit the mode switching packet associated with data message 160 via a first communication mode associated with transmission range 155. In addition, node 114 can transmit additional packets associated with data message 160, such as header or message content packets, via a second communication mode associated with transmission range 165.

[0037] In response to receiving, for example, a mode-switching packet associated with data message 160 via a first communication mode, node 113 can estimate the transmission time of data message 160. In some cases, the estimated transmission time can be calculated based on a combination of information included in the mode-switching packet from node 114 and information stored in (or available to node 113). For example, node 113 can determine that the mode-switching packet is associated with (or is likely to be associated with) data message 150, which includes data destined for node 115. Furthermore, node 113 can determine that the second communication mode indicated by the mode-switching packet has one or more specific transmission characteristics, such as baud rate, bandwidth, or other transmission characteristics. Based on a combination of information from the mode-switching packet and information available to node 113, node 113 can determine the estimated transmission time of data message 160. For example, node 113 can calculate the estimated transmission time based on the size of the data destined for node 115 multiplied by the baud rate of the second communication mode (or a combination of the baud rate of the second communication mode). In some cases, node 113 can modify the node-specific transmission delay associated with node 114. For example, node 113 can modify the node-specific transmission delay to indicate the number of backoff slots calculated based on the estimated transmission time. In some cases, one or more nodes within the TSCH network 100 can reduce or avoid failed transmission attempts with additional nodes, such as by calculating the node-specific transmission delay of the additional nodes. Furthermore, a particular node can determine its node-specific transmission delay based on information received in a message initiation packet, information available to the particular node, or a combination of these.

[0038] Figure 2 This is a flowchart illustrating an example of a process 200 for reducing transmission failures between nodes in a TSCH network. In some implementations, such as those described with respect to Figure 1, a computing device configured as a node in the TSCH network can implement this by executing appropriate program code. Figure 2 The operation described herein. For illustrative purposes, process 200 is described with reference to the example described in FIG1. ​​However, other implementations are also possible.

[0039] In block 210, process 200 may include receiving message initiation packets from a specific node in the TSCH network. Message initiation packets may be received by additional nodes in the TSCH network, such as message initiation packets received by a first node from a second node. In some cases, message initiation packets include one or more of a mode switch packet or a message header packet. For example, node 113 may receive message initiation packets from node 114, such as one or more of a mode switch packet 122 or a message header packet 124.

[0040] In block 220, process 200 may include determining the transmission time of one or more message content packets associated with the message initiation packet. The transmission time may indicate, for example, the duration of one or more message content packets. For example, the transmission time may indicate (e.g., according to the TSCH protocol) the number of time slots reserved for the transmission of the message content packets. Node 113 may determine, for example, the transmission time associated with message content packet 126.

[0041] In some cases, transmission time can be determined based on information included in the message initiation packet. For example, node 113 can determine the transmission time of message content packet 126 based on information included in message header packet 124, such as information describing one or more of the size of message content packet 126 or the bandwidth of the communication channel transmitting data message 120. Furthermore, transmission time can be determined based on a combination of information in the message initiation packet and information determined by the node receiving the message initiation packet. For example, node 113 can determine the estimated transmission time of the message content packet in data message 160 based on information in the mode switching packet (e.g., the communication mode selected for the transmission of data message 160) combined with information available to node 113 (e.g., the size of the message content packet transmitted in the previous data message 150).

[0042] In block 230, process 200 may include modifying the node-specific transmission delay associated with a particular node (e.g., the node from which a message is received to initiate a packet). In some cases, the node-specific transmission delay may indicate the number of backoff slots associated with the particular node. Furthermore, the node-specific transmission delay may indicate a delay in initiating a transmission to the particular node during the number of backoff slots. For example, node 113 may modify the node-specific transmission delay of node 114. The node-specific transmission delay may indicate the number of backoff slots for node 114. Furthermore, the node-specific transmission delay may indicate backoff (e.g., the number of backoff slots) determined based on a transmission time determined or estimated for node 114. In some cases, the node-specific transmission delay indicates backoff associated with a specific transmission to or from the particular node. For example, node 113 may calculate a first number of backoff slots associated with the transmission of data message 120 by node 114 based on the transmission time of message content packet 126. In addition, node 113 can calculate a second number of backoff slots associated with the transmission of data message 160 by node 114 based on the estimated transmission time of data message 160.

[0043] In block 240, process 200 may include determining additional message content packets having a destination to a specific node. For example, a first node that calculates node-specific transmission delays associated with a second node may generate (or receive) additional message content packets for the second node, such as data message 140 generated or received by node 113. Node 113 may determine that data message 140 has a destination to node 114 (or the parent node of node 114).

[0044] In block 250, process 200 may include queuing or delaying additional message content packets. In some cases, delaying additional message content packets may be based on a node-specific transmission delay associated with a particular node. Furthermore, delaying additional message content packets may include queuing additional message content packets for transmission to the particular node after the node-specific transmission delay. For example, node 113 may queue data message 140 based on a node-specific transmission delay associated with node 114. Additionally, node 113 may queue data message 140 for transmission after a number of backoff slots indicated by the node-specific transmission delay.

[0045] In some implementations, a specific node in the TSCH network (such as a node implementing one or more operations related to process 200) can calculate a backoff value associated with an additional node in the TSCH network. In some cases, the backoff value may include a default backoff value, such as a default value that can be calculated using characteristics of one or more of the specific node or additional nodes. Furthermore, the backoff value may include a modified backoff value, such as a value modified based on a default value. In some cases, a specific node may modify the backoff value based on information about data messages (such as data messages sent to or from one or more of the specific node or additional nodes). For example, a first node may modify the backoff value associated with a second node based on information included in a message initiation packet received from a second node. Additionally, a first node may modify the backoff value associated with a second node based on information available to the first node regarding previous transmissions to the second node.

[0046] In some cases, a specific node can calculate multiple backoff values ​​associated with multiple additional nodes in the TSCH network, respectively. For example, a specific node can calculate a backoff value for each additional node in the TSCH network, each additional node to which the specific node can communicate, each additional node with which the specific node has a parent-child relationship, or any other suitable group of nodes within the TSCH network. In some cases, a specific node can generate or modify a node state table that includes one or more calculated backoff values. For example, a specific node can generate or modify multiple node state table entries associated with multiple additional nodes, respectively. In some cases, each node state table entry can indicate the backoff value associated with the corresponding additional node, such as a default backoff value or a modified backoff value. Furthermore, each node state table entry can indicate the communication state associated with the corresponding additional node. In some cases, the communication state of an additional node is modified (e.g., by the specific node) to indicate an updated communication state, such as if the additional node is unavailable to receive transmissions during a node-specific transmission delay or a number of backoff slots.

[0047] Figure 3 This is a flowchart illustrating an example of a process 300 for calculating one or more of the backoff value or the number of backoff slots for nodes in a TSCH network. In some implementations, such as those relating to Figure 1- Figure 2 As described, the computing device configured as a node in the TSCH network can implement this by executing appropriate program code. Figure 3 The operation described herein. For illustrative purposes, refer to Figure 1- Figure 2 The example described herein is used to describe process 300. However, other implementations are also possible. In some cases, one or more operations described with respect to process 300 may be performed in combination with one or more operations described with respect to process 200.

[0048] In block 310, process 300 may include determining that the message initiation packet is a mode switching packet. The mode switching packet may be received by a first node in the TSCH network from a second node in the TSCH network. In some embodiments, the second node may (but is not required to) be the specific node described with respect to process 200. In some cases, the mode switching packet may indicate a communication mode applied to the message content packet associated with the mode switching packet. Furthermore, the communication mode may be applied to the message content packet by the second node. For example, node 113 may receive the mode switching packet associated with data message 160 from node 114. Additionally, the mode switching packet may indicate a second communication mode applied to the message content packet of data message 160.

[0049] In block 320, process 300 may include calculating the number of backoff slots associated with a communication mode. Furthermore, the number of backoff slots may be associated with a second node. In some cases, the number of backoff slots may be calculated based on information associated with one or more of the mode switching packet, the first node, or the second node. For example, the first node may determine its own receive sensitivity, such as receive sensitivity based on the first node's antenna strength, noise floor, battery state, or other characteristics. Furthermore, the first node may determine the second node's transmission output power, such as transmission output power indicated by the mode switching packet or additional transmissions from the second node. In some cases, one or more of the receive sensitivity or transmission output power may be calculated based on the transmission history between the first and second nodes. For example, node 113 may calculate one or more of the receive sensitivity of node 113 or the transmission output power of node 114 based on the transmission history between node 113 and node 114.

[0050] In some cases, node 113 may determine whether it is included in or excluded from transmission range 155 (or both) based on one or more of the calculated receive sensitivity or transmit output power. In some cases, node 113 may calculate additional transmit output power for itself. Additional transmit output power may be calculated based on node 113's antenna strength, noise floor, battery status, or other characteristics. Furthermore, node 113 may provide additional transmit output power to one or more additional nodes on the TSCH network 100, such as node 114 or one or more child nodes of node 113.

[0051] In block 330, process 300 may include calculating one or more default backoff values, such as corresponding default backoff values ​​for one or more nodes on the TSCH network. In some cases, the default backoff value may be associated with a specific communication pattern in a set of communication patterns. For example, a first node may calculate one or more default backoff values ​​associated with a second node. Each of the default backoff values ​​may be associated with a specific communication pattern of the second node (e.g., a specific communication pattern in a set of communication patterns). In some implementations, the backoff value may describe one or more values ​​that can be used to calculate the number of backoff slots, such as duration (e.g., 100 ms), slot duration (e.g., 25 ms), characteristics of the communication pattern (e.g., 50 kbps), or other suitable values.

[0052] For example, node 113 can calculate multiple default backoff values ​​associated with node 114, such as a first default backoff value associated with a first communication mode (e.g., associated with transmission range 155) and a second default backoff value associated with a second communication mode (e.g., associated with transmission range 165). In some implementations, multiple default backoff values ​​can be calculated based on transmission history (such as the transmission history between the first node and the second node). For example, node 113 can calculate the first and second default backoff values ​​based on the transmission history between node 113 and node 114.

[0053] In some cases, one or more operations related to block 330 may be repeated, such as node-by-node repetition within a group of nodes in the TSCH network. For example, the first node may determine multiple default backoff values ​​for each node in an additional group of nodes in the TSCH network (e.g., for each communication pattern in the communication pattern set). The additional group of nodes may include, for example, each node in the TSCH network, each node to which the first node can communicate, each node with which the first node has a parent or child relationship, or another suitable group of nodes in the TSCH network.

[0054] In block 340, process 300 may include identifying a specific default backoff value, such as identifying a specific default backoff value from a plurality of default backoff values. The specific default backoff value may be associated with a communication mode indicated by a mode switching packet. In some cases, identifying a specific default backoff value may be in response to receiving a mode switching packet. For example, in response to receiving a mode switching packet associated with data message 160, node 113 may identify a specific default backoff value associated with node 114. Furthermore, node 113 may identify a specific default backoff value based on information included in the mode switching packet associated with data message 160. For example, in response to determining that the mode switching packet identifies a second communication mode applied to data message 160, node 113 may identify a second default backoff value as the specific default backoff value.

[0055] In block 350, process 300 may include determining that the mode switching packet is associated with a previous transmission (such as a previous transmission from the first node to the second node). In some cases, the association between the mode switching packet and the previous transmission is determined based on the message content of the previous transmission (such as message content indicating the parent of the second node). For example, node 113 may determine that the mode switching packet associated with data message 160 is associated with a previous data message 150 transmitted from node 113 to node 114. In some cases, the association between the mode switching packet and the previous data message 150 may be determined in response to determining that the previous data message 150 includes message content destined for node 115.

[0056] In block 360, process 300 may include modifying a specific default backoff value. Furthermore, the specific default backoff value may be modified based on the size of a previously transmitted data message or one or more communication modes indicated by a mode switching packet. In some cases, the first node may modify a specific default backoff value associated with a second node or one or more communication modes. Modification of the specific default backoff value may be based on a calculation of the number of time slots required to transmit a data message of the size of a previously transmitted data message at the bandwidth (or other transmission characteristics) of the communication mode indicated by the mode switching packet. For example, node 113 may calculate the number of time slots during its period that the message content from the previous data message 150 can be transmitted at the bandwidth of the second communication mode. Additionally, node 113 may modify the default backoff value associated with node 114 (e.g., with the second communication mode) to indicate the calculated number of backoff time slots.

[0057] In some implementations, node-specific transmission delays can be generated or modified based on a modified backoff value. For example, the number of backoff slots indicated by the node-specific transmission delay can be modified to include the number of slots calculated for the modified backoff value.

[0058] In some implementations, nodes in a TSCH network can determine a collision avoidance delay. This delay can be included in or combined with a node-specific transmission delay. In some cases, the collision avoidance delay can be applied by nodes to further reduce transmission failures within the TSCH network. For example, a specific node in the TSCH network can generate a collision avoidance delay based on a random (or pseudo-random) number of backoff slots. Furthermore, a specific node can append a collision avoidance delay to its node-specific transmission delay. For example, if a node's parent node has multiple child nodes (e.g., including the specific node) with data messages queued to the parent node, the parent node can receive multiple transmission requests when their respective node-specific transmission delays determined by the child nodes expire. To reduce transmission failures caused by multiple transmission requests from child nodes, each child node (e.g., including the specific node) can determine its own collision avoidance delay. Furthermore, each child node can modify its respective node-specific transmission delay to include its own collision avoidance delay. In some cases, modifying the node-specific transmission delay to include the collision avoidance delay can reduce transmission failures in the TSCH network.

[0059] Figure 4This is a schematic diagram illustrating an example of a transmission environment 400 in which signals with communication channels and transmission times can be transmitted. For example, transmission environment 400 may include multiple time slots 401a-401s (collectively referred to herein as time slot 401). Furthermore, transmission environment 400 may include multiple communication channels 402a-402i (collectively referred to herein as communication channels 402). Each of channels 402 may include one or more center frequencies or frequency ranges. In some cases, data messages may be transmitted via one or more communication channels 402. Additionally, data messages may be transmitted for a duration of one or more time slots 401. In some cases, transmission environment 400 may be associated with the TSCH protocol. Furthermore, transmission environment 400 or the data messages transmitted in transmission environment 400 may conform to local or global standards. For example, but not as a limitation, transmission environment 400 and / or the data messages transmitted may conform to standards established by the Federal Communications Commission (FCC), such as CFR 47 §15.

[0060] In transmission environment 400, transmission 420 may be carried on communication channel 402d during time slots 401b-401h. For example, a specific node on the TSCH network may transmit data messages via transmission 420 (e.g., to a parent or child node). In some cases, transmission 420 includes one or more of a message initiation packet or at least a message content packet. In some cases, additional transmissions within transmission environment 400 may utilize more or fewer time slots 401.

[0061] In some implementations, an additional node on the TSCH network may attempt to initiate a transmission with a specific node during transmission 420. For example, an additional node may attempt to initiate transmission 410 on communication channel 402f during time slots 401d-401j. Transmission 410 may fail if the additional node is not configured to utilize one or more techniques for reducing transmission failures (such as by determining node-specific transmission delays relative to the specific node). In some cases, the attempt to initiate transmission 410 may inefficiently utilize resources within transmission environment 400. For example, communication channel 402 may be reserved by the additional node for one or more of time slots 401d-401j. Furthermore, reserving communication channel 402 for transmission 410 may prevent other nodes in the TSCH network from using communication channel 402 for additional transmissions, such as potentially successful transmissions with nodes not participating in transmission 420.

[0062] Figure 5This is a schematic diagram illustrating an example of a transmission environment 500 that can be utilized by one or more nodes, which are configured to determine node-specific transmission delays associated with additional nodes. In some cases, the TSCH network 100 may utilize the transmission environment 500. In the transmission environment 500, signals with communication channels and transmission times can be transmitted. The transmission environment 500 may include multiple time slots 501a-501s (collectively referred to herein as time slot 501). Furthermore, the transmission environment 500 may include multiple communication channels 502a-502i (collectively referred to herein as communication channels 502). Each of the channels 502 may include one or more center frequencies or frequency ranges. In some cases, data messages may be transmitted via one or more of the communication channels 502. Additionally, data messages may be transmitted during the duration of one or more of the time slots 501. In some cases, the transmission environment 500 may be associated with the TSCH protocol, global standards, local standards, or other suitable protocols or standards.

[0063] In transmission environment 500, transmission 520 can be transmitted on communication channel 502d during time slots 501b-501h. In some cases, transmission 520 may include the transmission of data message 120 from node 114 to node 115. Furthermore, transmission 520 may include at least one message initiation packet, such as message initiation packet 522. Message initiation packet 522 may include one or more of mode switching packet 122 or message header packet 124. In some cases, message initiation packet 522 at time slot 501b may include mode switching packet 122. Furthermore, message header packet 124 may be sent as a subsequent packet (such as a packet in time slot 501c).

[0064] In some implementations, one or more additional nodes (such as node 113) may receive messages to initiate packet 522. Furthermore, one or more additional nodes may generate or modify corresponding node-specific transmission delays associated with one or more of nodes 114 or 150. In transmission environment 500, utilizing one or more techniques for reducing transmission failures (such as node-specific transmission delays) can make more efficient use of resources (e.g., compared to transmission environment 400). For example, after the node-specific transmission delay associated with transmission 520 is completed, node 113 may initiate transmission 540 associated with data message 140. For example, in response to determining that node 114 is participating in transmission 520, node 113 may queue or delay data message 140. Furthermore, after the node-specific transmission delay associated with node 114 is completed, node 113 may initiate transmission 540.

[0065] In some implementations, a node can modify the queue position of one or more data messages based on a node-specific transmission delay. For example, during the node-specific transmission delay of node 114, node 113 can modify the message queue to transmit additional data messages for (e.g., for additional nodes other than node 114 or node 115). If node 113 receives an additional data message during the node-specific transmission delay, node 113 can modify the queue position of the additional data message, such as modifying the queue position prior to the queue position of data message 140. Furthermore, node 113 can initiate transmission 580 during the node-specific transmission delay, such as transmitting the additional data message to the additional node before transmitting data message 140.

[0066] In some cases, resources within transmission environment 500 can be utilized more efficiently during the node-specific transmission delay associated with transmission 520. For example, node 113 can initiate transmission 580 during the node-specific transmission delay, such as when node 113 is not participating in an attempted transmission by node 114 which is currently occupied. As an additional example, another node in TSCH network 100 can utilize one or more time slots preceding transmission 540 (such as a potentially successful transmission via communication channel 502f to a node not participating in transmission 520). In some cases, the operation of determining the node-specific transmission delay may not include reserving communication channel 502 or time slot 501. Furthermore, the operation of determining the node-specific transmission delay can enable nodes in TSCH network 100 to reduce transmission failures in transmission environment 500 without occupying the resources of transmission environment 500 (e.g., channel 502, time slot 501).

[0067] Any suitable computing system or group of computing systems can be used to perform the operations described herein. For example, Figure 6 This is a schematic diagram illustrating an example of a computing environment capable of determining node-specific transmission delays in a TSCH network, according to certain implementations.

[0068] Examples of node 601 may include one or more processors 602, which are communicatively coupled to one or more memory devices 604. Processor 602 may execute computer-executable program code or access information stored in memory device 604. Examples of processor 602 may include a microprocessor, an application-specific integrated circuit (“ASIC”), a field-programmable gate array (“FPGA”), or other suitable processing device. Processor 602 may include any number of processing devices, including one processing device.

[0069] Memory device 604 may include any suitable non-transitory computer-readable medium for storing one or more of the following: node-specific transmission delay 620, node state table 630, message initiation packet 640, data message 650, or other received or determined values ​​or data objects. The computer-readable medium may include any electronic, optical, magnetic, or other storage device capable of providing computer-readable instructions or other program code to a processor. Non-limiting examples of computer-readable media may include disks, memory chips, ROM, RAM, ASICs, optical storage, magnetic tape, or other magnetic storage, or any other medium from which instructions can be read by the processing device. Instructions may include processor-specific instructions generated by a compiler or interpreter from code written in any suitable computer programming language, including, for example, C, C++, C#, Visual Basic, Java, Python, Perl, JavaScript, and ActionScript.

[0070] Node 601 may also include multiple external or internal devices, such as input or output devices. For example, node 601 is shown as having an input / output (“I / O”) interface 608 that can receive input from an input device or provide output to an output device. Bus 606 may be included in node 601. Bus 606 may communicatively couple one or more components of node 601.

[0071] Node 601 can execute program code that configures processor 602 to execute the code described in Figure 1 above. Figure 5 The program code may include one or more operations described herein. The program code may include operations related to, for example, node-specific transmission delay 620, node state table 630, message initiation packet 640, data message 650, or other suitable application or memory structure that performs one or more of the operations described herein. The program code may reside in memory device 604 or any suitable computer-readable medium and may be executed by processor 602 or any other suitable processor. In some implementations, such as Figure 6 As depicted, the aforementioned program code, node-specific transmission delay 620, node state table 630, message initiation packet 640, and data message 650 can be stored in memory device 604. In additional or alternative embodiments, one or more of the node-specific transmission delay 620, node state table 630, message initiation packet 640, data message 650, or the aforementioned program code can be stored in one or more memory devices accessible via a data network (such as memory devices accessible via cloud services).

[0072] Figure 6Node 601, as depicted herein, may include at least one network interface 610. Network interface 610 may include any device or group of devices suitable for establishing wired or wireless data connections to one or more data networks 612. Non-limiting examples of network interface 610 may include an Ethernet adapter, a modem, etc. One or more nodes (such as node 660) may be connected to node 601 via network 612. As described herein, network 612 may include a TSCH network. In some cases, network 612 may include additional networks, such as (but not limited to) the Internet, a private network (including a virtual private network), or any other suitable network. Node 601 is able to communicate with one or more of nodes 660 using network interface 610.

[0073] General Precautions

[0074] Numerous specific details have been set forth herein to provide a comprehensive understanding of the claimed subject matter. However, those skilled in the art will understand that the claimed subject matter can be practiced without these specific details. In other instances, methods, apparatus, or systems known to those of ordinary skill in the art have not been described in detail so as not to obscure the claimed subject matter.

[0075] Unless otherwise specifically stated, it should be understood that throughout this specification, the use of terms such as “processing,” “computing,” “calculating,” “determining,” and “identifying” refers to the actions or processes by which a computing device (such as one or more computers or one or more similar electronic computing devices) manipulates or converts data represented as physical electronic or magnetic quantities within the memory, registers, or other information storage, transmission, or display devices of a computing platform.

[0076] The systems discussed herein are not limited to any particular hardware architecture or configuration. Computing devices can include any suitable arrangement of components that provide results conditioned on one or more inputs. Suitable computing devices include multipurpose microprocessor-based computer systems that access storage software that programs or configures the computing system from a general-purpose computing device to a dedicated computing device for implementing one or more embodiments of this subject matter. Any suitable programming, scripting, or other type of language or combination of languages ​​can be used to implement the teachings contained herein in the software used in programming or configuring computing devices.

[0077] Implementations of the methods disclosed herein can be performed in the operation of such computing devices. The order of the blocks presented in the examples above can be varied; for example, the blocks can be reordered, combined, and / or divided into sub-blocks. Some blocks or processes can be executed in parallel.

[0078] The use of “applies to” or “configured to” in this document is intended to mean an open and inclusive language that is applicable to or configured to perform additional tasks or steps on devices. Furthermore, the use of “based on” is intended to be open and inclusive, because a process, step, calculation, or other action “based on” one or more referenced conditions or values ​​may actually be based on additional conditions or values ​​beyond those referenced conditions or values. The headings, lists, and numbering included in this document are for illustrative purposes only and are not intended to be limiting.

[0079] While this subject matter has been described in detail with respect to specific embodiments thereof, it should be understood that modifications, variations, and equivalents of such embodiments can be readily derived by those skilled in the art upon understanding the foregoing. Therefore, it should be understood that this disclosure has been presented for illustrative purposes and not for limitation, and that such modifications, variations, and / or additions to this subject matter are not excluded as being obvious to those skilled in the art.

Claims

1. A method for managing node transmissions in a computer network using a Time Slotted Channel Hopping Protocol ("TSCH network"), the method comprising operations performed by a processor included in a first node in the TSCH network, the operations including: The first node initiates a grouping process by receiving a message from the second node. The transmission time of the message content packet associated with the message initiation packet is determined by the first node based on the message initiation packet; The first node modifies the node-specific transmission delay associated with the second node, the node-specific transmission delay indicating the number of backoff slots during which the first node delays initiating a transmission to the second node; The first node determines the additional message content group with a destination to the second node; as well as The additional message content is grouped and queued by the first node based on the node-specific transmission delay, and then transmitted to the second node after the node-specific transmission delay; It is determined that the message initiation packet is a header packet from the second node; Determine the size of the message content group associated with the header group; Determine the communication mode indicated by the header group; as well as The number of backoff slots is calculated based on the size of the message content group and the communication mode.

2. The method according to claim 1, further comprising: The receiving node for the message content group associated with the message initiation group is determined by the first node based on the message initiation group, and the receiving node is a node different from the first node. The modification of the node-specific transmission delay associated with the second node is in response to determining that the receiving node is not the first node.

3. The method according to claim 1, further comprising: It is determined that the message initiation packet is a mode switching packet from the second node, the mode switching packet indicating the communication mode applied by the second node to the message content packet; Determine the receiving sensitivity of the first node; Determine the transmission output power of the second node; as well as Based on the receive sensitivity and the transmit power output, calculate the number of backoff slots associated with the communication mode.

4. The method of claim 3, wherein one or more of the receive sensitivity or the transmit output power is determined based on the transmission history between the first node and the second node.

5. The method according to claim 3, further comprising: Based on the transmission history between the first node and the second node, multiple default backoff values ​​are calculated, each of which is associated with a specific communication pattern in the communication pattern set; In response to receiving the mode switching packet, a specific default backoff value associated with the communication mode indicated by the mode switching packet is identified; as well as In response to determining that the mode switching packet is associated with a previous transmission from the first node to the second node, the specific default backoff value is modified based on (i) the size of the previous transmission and (ii) the communication mode indicated by the mode switching packet. The calculation of the number of backoff slots associated with the communication mode includes calculating the number of backoff slots based on a modified backoff value.

6. The method of claim 1, wherein determining the additional message content group comprises one or more of the following: Receive the additional message content packet from the third node, or The additional message content group is generated by the first node.

7. The method according to claim 1, further comprising: The node status table is updated to include the communication status associated with the second node, and the updated communication status indicates that the second node is unavailable to receive transmissions during the number of backoff time slots.

8. The method according to claim 1, further comprising: The first node identifies a queued message packet with a destination to the third node, the queued message packet having a queue position following the additional message content packet; as well as In response to determining that the third node is available to receive transmissions during the number of backoff time slots, the queue position of the queued message packet is modified to precede the additional message content packet.

9. The method of claim 1, wherein modifying the node-specific transmission delay comprises adjusting the number of backoff slots to include a collision avoidance delay.

10. A computer network node configured to manage node transmissions in a computer network using a Time Slotted Channel Hopping Protocol ("TSCH network"), the computer network node including a processor configured to perform operations including: Initiate a packet by receiving a message from an additional node in the computer network; Based on the message initiation packet, determine the number of backoff slots during which the additional node transmits message content packets associated with the message initiation packet; Modify the node-specific transmission delay associated with the additional node, the node-specific transmission delay indicating that the additional node is unavailable to receive transmissions during the number of backoff slots; Receive additional message content packets with a destination to the additional node; as well as Based on the node-specific transmission delay, the additional message packets are queued for transmission after the number of backoff slots; The determination of the number of backoff time slots includes: It is determined that the message initiation packet is a header packet from the attached node; Determine the size of the message content group associated with the header group; Determine the communication mode indicated by the header group; and The number of backoff slots is calculated based on the size of the message content group and the communication mode.

11. The computer network node of claim 10, wherein the processor is further configured to: The receiving node for the message content packet associated with the message initiation packet is determined by the computer network node based on the message initiation packet, and the receiving node is a node other than the computer network node. The modification of the node-specific transmission delay associated with the additional node is in response to determining that the receiving node is not the computer network node.

12. The computer network node of claim 10, wherein determining the number of backoff slots comprises: It is determined that the message initiation packet is a mode switching packet from the attached node, the mode switching packet indicating the communication mode used by the attached node; Determine the receiving sensitivity of the computer network node; Determine the transmission output power of the additional node; as well as Based on the receive sensitivity and the transmit power output, the number of backoff slots associated with the communication mode is identified.

13. The computer network node of claim 12, wherein one or more of the receive sensitivity or the transmit output power is determined based on the transmission history between the computer network node and the additional node.

14. The computer network node of claim 12, wherein the processor is further configured to: Based on the transmission history between the computer network node and the additional node, a plurality of default backoff values ​​are calculated, each of which is associated with a specific communication pattern in the communication pattern set; In response to receiving the mode switching packet, a specific default backoff value associated with the communication mode indicated by the mode switching packet is identified; as well as In response to determining that the mode switching packet is associated with a previous transmission from the computer network node to the additional node, the specific default backoff value is modified based on (i) the size of the previous transmission and (ii) the communication mode indicated by the mode switching packet. Determining the number of backoff slots during which the additional node transmits message content packets associated with the message initiation packet includes calculating the number of backoff slots based on a modified backoff value.

15. The computer network node of claim 10, wherein receiving the additional message content packet comprises one or more of the following: Receive the additional message content packet from another node in the computer network, or The additional message content packet is generated by the computer network node.

16. The computer network node of claim 10, wherein the processor is further configured to: The node status table is updated to include the communication status associated with the additional node, and the updated communication status indicates that the additional node is unavailable to receive transmissions during the specified number of backoff time slots.

17. The computer network node of claim 10, wherein the processor is further configured to: The computer network node identifies a queued message packet with a destination to another node in the computer network, the queued message packet having a queue position following the additional message packet; and In response to determining that the other node is available to receive transmissions during the number of backoff time slots, the queue position of the queued message packet is modified to precede the additional message content packet.

18. The computer network node of claim 10, wherein modifying the node-specific transmission delay includes adjusting the number of backoff slots to include a collision avoidance delay.

Citation Information

Patent Citations

  • Predictive time allocation scheduling for TSCH networks

    US20160021011A1

  • NAV operation method in wireless LAN system and station apparatus for same

    US20180242362A1