Network channel access protocol-interference and load adaptive
First Claim
1. A method for determining communication slot allocation, comprising:
- providing an array;
determining whether there is at least one conflict for a planned transmission at a first node;
amending the array in response to the at least one conflict identified at the first node;
determining whether there is at least one conflict for the planned transmission at a second node;
amending the array in response to the at least one conflict identified at the second node;
identifying first potential interference between the first node and a first other node within an interference area of the first node for the planned transmission;
amending the array in response to the potential interference identified;
identifying second potential interference between the second node and a second other node within an interference area of the second node for the planned transmission;
amending the array in response to the second potential interference identified;
identifying third potential interference which would mitigate against selecting at least one communication slot for allocation thereof for the planned transmission;
amending the array in response to the third potential interference identified; and
selecting the at least one communication slot using the array as amended for allocation of the at least one communication slot for the planned transmission.
5 Assignments
0 Petitions
Accused Products
Abstract
Network channel access protocol is disclosed. More particularly, a distributed, locally determined, channel access protocol that adapts to load, avoids interference and controls access by a group of nodes to a set of shared channels is disclosed. Shared channel space is divided into a number of communication slots that are repeated at a predetermined interval. Permission to use a slot to communicate between any two nodes is dynamically adjusted by the channel access protocol, which locally: (i) estimates load to neighboring nodes; (ii) allocates or deallocates slot usage to adapt to load and avoid interference; and (iii) asserts and advertises slot usage within an interference area about itself.
111 Citations
68 Claims
-
1. A method for determining communication slot allocation, comprising:
-
providing an array;
determining whether there is at least one conflict for a planned transmission at a first node;
amending the array in response to the at least one conflict identified at the first node;
determining whether there is at least one conflict for the planned transmission at a second node;
amending the array in response to the at least one conflict identified at the second node;
identifying first potential interference between the first node and a first other node within an interference area of the first node for the planned transmission;
amending the array in response to the potential interference identified;
identifying second potential interference between the second node and a second other node within an interference area of the second node for the planned transmission;
amending the array in response to the second potential interference identified;
identifying third potential interference which would mitigate against selecting at least one communication slot for allocation thereof for the planned transmission;
amending the array in response to the third potential interference identified; and
selecting the at least one communication slot using the array as amended for allocation of the at least one communication slot for the planned transmission. - View Dependent Claims (2, 3, 4)
-
-
5. A signal-bearing medium containing a program which, when executed by a processor in response to receiving a request to determine available communication slots, causes execution of a method comprising:
-
determining whether there is at least one conflict for a planned transmission between a first node and a second node;
amending an array in response to the at least one conflict identified;
identifying first potential interference between the first node and a first other node within an interference area of the first node for the planned transmission;
amending the array in response to the potential interference identified;
identifying second potential interference between the second node and a second other node within an interference area of the second node for the planned transmission;
amending the array in response to the second potential interference identified;
identifying third potential interference which would mitigate against selecting at least one communication slot for allocation thereof for the planned transmission;
amending the array in response to the third potential interference identified; and
selecting the at least one communication slot using the array as amended for allocation of the at least one communication slot for the planned transmission. - View Dependent Claims (6, 7)
-
-
8. A method for determining self-conflicts between a transmitting node and a receiving node, comprising:
-
providing an array;
obtaining a communication slot;
checking the transmitting node and the receiving node to determine if either or both is pre-allocated to transmit or receive during the communication slot; and
if either or both the transmitting node and the receiving node is pre-allocated to transmit or receive during the communication slot, determining priority of each pre-allocation against priority of transmission from the transmitting node to the receiving node. - View Dependent Claims (9, 10, 11, 12, 15, 16, 17, 20, 21, 22, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42)
-
-
13. A signal-bearing medium containing a program which, when executed by a processor in response to receiving a call to determine available communication slots, causes execution of a method comprising:
-
providing an array;
obtaining a communication slot;
checking the transmitting node and the receiving node to determine if either or both is pre-allocated to transmit or receive during the communication slot; and
if either or both the transmitting node and the receiving node is pre-allocated to transmit or receive during the communication slot, determining priority of each pre-allocation against priority of transmission from the transmitting node to the receiving node.
-
-
14. A method for determining intranetwork conflicts for a planned transmission from a transmitting node to a receiving node, comprising:
-
providing an array;
obtaining a first node not the transmitting node or the receiving node;
obtaining a communication slot;
determining whether the first node is pre-allocated to receive during the communication slot;
if the first node is pre-allocated to receive during the communication slot, checking the pre-allocated priority of the first node against priority of the planned transmission; and
if the priority of the planned transmission is not greater than the pre-allocated priority of the first node, determining whether a power level for the planned transmission is of sufficient strength to interfere with reception during the communication slot of the first node.
-
-
18. A signal-bearing medium containing a program which, when executed by a processor in response to receiving a call to determine available communication slots, causes execution of a method comprising:
-
providing an array;
obtaining a neighbor node of the transmitting node or the receiving node;
obtaining a communication slot;
determining whether the neighbor node is pre-allocated to receive during the communication slot; and
if the neighbor node is pre-allocated to receive during the communication slot, checking the pre-allocated priority of the neighbor node against priority of the planned transmission; and
if the priority of the planned transmission is not greater than the pre-allocated priority of the neighbor node, determining whether a power level for the planned transmission is of sufficient strength to interfere with reception during the communication slot of the neighbor node.
-
-
19. A method for determining intranetwork conflicts for a planned transmission from a transmitting node to a receiving node, comprising:
-
providing an array;
obtaining a first node not the transmitting node or the receiving node;
obtaining a communication slot;
determining whether the first node is pre-allocated to transmit during the communication slot;
if the first node is pre-allocated to transmit during the communication slot, comparing priorities of the preallocated transmission and the planned transmission; and
if the priority of the planned transmission is not greater than the pre-allocated transmission priority, determining whether a power level for the pre-allocated transmission by the first node is at least likely to interfere with reception by the receiving node of the planned transmission.
-
-
23. A signal-bearing medium containing a program which, when executed by a processor in response to receiving a call to determine available communication slots, causes execution of a method comprising:
-
providing an array;
obtaining a neighbor node not the transmitting node or the receiving node;
obtaining a communication slot;
determining whether the neighbor node is pre-allocated to transmit during the communication slot;
if the neighbor node is pre-allocated to transmit during the communication slot, comparing priorities of the pre-allocated transmission and the planned transmission;
if the priority of the planned transmission is not greater than the pre-allocated transmission priority, determining whether a power level for the pre-allocated transmission by the neighbor node is at least likely to interfere with reception by the receiving node of the planned transmission.
-
-
24. A method for locally determining channel access to avoid interference for communicating from a node to another node in a network of nodes, comprising:
-
providing a collection of information to the node;
checking for potential interference using the collection of information; and
identifying a portion of a channel to avoid the interference.
-
-
43. A method for determining channel access at a node that adapts to load and avoids conflicts and interference for communicating from the node to another node in a network of nodes, comprising:
-
providing the node with a collection of information;
estimating an expected load on the node;
adjusting slot allocation in response to the expected load on the node;
identifying a slot that is not likely to cause interference; and
asserting allocation of the slot including advertising the slot allocation to neighboring nodes of the node. - View Dependent Claims (44, 45, 46, 47, 49, 50, 51, 52, 53)
-
-
48. A method for determining channel access at a first node that adapts to load and avoids conflicts and interference for communicating from the first node to a second node in a network of nodes, comprising:
-
providing the first node with a database;
determining a load on the first node;
determining if slot allocation needs adjustment in response to the load on the first node;
checking for potential conflicts using the database;
checking for potential interference within an interference area of the first node using the database;
allocating a slot which avoids the potential conflicts and the potential interference; and
asserting the slot allocation including advertising the slot allocation to the second node.
-
-
54. A method for determining channel access at a first node that adapts to load and avoids conflicts and interference for communicating from the first node to a second node in a network of nodes, comprising:
-
providing the first node with a database for the network of nodes;
adaptively determining load on the first node;
determining if slot allocation needs adjustment in response to the load on the first node;
adjusting the slot allocation in response to the load;
checking for conflicts using the database;
checking for interference within an interference area of the first node using the database;
identifying a slot which avoids the conflicts and the interference;
allocating the slot; and
asserting the slot allocation including advertising the slot allocation to the second node. - View Dependent Claims (55, 56, 57, 58, 59, 60, 61, 62, 63)
-
-
64. A method for allowing shared channel access among nodes for communicating from a node to another node in a wireless mesh network, comprising:
-
providing nodes in the wireless mesh network; and
communicating between the nodes using only point-to-point communication. - View Dependent Claims (65, 66, 67, 68)
-
Specification