Enforcing fairness in ad hoc mesh networks
First Claim
1. A computer-implemented method for enforcing fairness in an ad hoc wireless network, comprising:
- monitoring entire flows between mesh nodes within the ad hoc wireless network;
on each of the mesh nodes within the ad hoc wireless network, using a processor in determining a channel usage for flows between mesh nodes within the ad hoc wireless network;
wherein the mesh nodes within the ad hoc wireless network transmit and receive data packets from other mesh nodes within the network;
wherein each of the flows is a stream of packets between two endpoints on the ad hoc wireless network;
wherein at least one of the flows within the ad hoc wireless network includes one or more intervening mesh nodes between the two endpoints;
wherein each of the mesh nodes shares the channel usage with each of its neighbors that are within a range by transmitting the channel usage;
wherein the one or more intervening mesh nodes between the two endpoints and the two endpoints each determine the channel usage;
determining an average flow for competing flows among the flows;
determining a fair share of channel usage based on the determined channel usage for the competing flows and the average flow for the competing flows; and
adjusting a flow rate for at least one of the nodes within the network based on the determined fair share.
2 Assignments
0 Petitions
Accused Products
Abstract
A self-adaptive algorithm to enforce fairness executes on nodes in an ad hoc wireless network. Each node is configured to measure or estimate the utilization of the RF channel in its neighborhood and then share this information with its neighboring nodes. In this way, the nodes learn about the traffic flows within their neighborhood and may determine the competing flows. Based on the information about the competing flows, each node then determines the fair share of RF channel usage. The fair share may be computed by dividing the total time that all competing flows use the RF channel by the number of competing flows. Traffic flows using more than the computed fair share of channel access are slowed down to allow more access to the RF channel for flows that are not getting their fair share.
20 Citations
19 Claims
-
1. A computer-implemented method for enforcing fairness in an ad hoc wireless network, comprising:
-
monitoring entire flows between mesh nodes within the ad hoc wireless network; on each of the mesh nodes within the ad hoc wireless network, using a processor in determining a channel usage for flows between mesh nodes within the ad hoc wireless network;
wherein the mesh nodes within the ad hoc wireless network transmit and receive data packets from other mesh nodes within the network;
wherein each of the flows is a stream of packets between two endpoints on the ad hoc wireless network;
wherein at least one of the flows within the ad hoc wireless network includes one or more intervening mesh nodes between the two endpoints;
wherein each of the mesh nodes shares the channel usage with each of its neighbors that are within a range by transmitting the channel usage;
wherein the one or more intervening mesh nodes between the two endpoints and the two endpoints each determine the channel usage;determining an average flow for competing flows among the flows; determining a fair share of channel usage based on the determined channel usage for the competing flows and the average flow for the competing flows; and adjusting a flow rate for at least one of the nodes within the network based on the determined fair share. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A tangible computer-readable storage medium having computer-executable instructions for enforcing channel usage for flows;
- comprising;
monitoring entire flows between mesh nodes within the ad hoc wireless network; at mesh nodes within an ad hoc wireless network, determining a channel usage for a channel through the mesh node and sharing the channel usage with neighbors of the mesh node; determining a neighborhood channel usage for a neighborhood that is associated with the node; determining a fair share channel usage based on the neighborhood channel usage and the channel usage for the channel through the node;
wherein determining the fair share of channel usage comprises determining an average flow for competing flows;
wherein each of the competing flows is a stream of packets between two endpoints on the ad hoc wireless network;
wherein at least one of the competing flows within the ad hoc wireless network includes one or more intervening mesh nodes between the two endpoints;
wherein the one or more intervening mesh nodes between the two endpoints and the two endpoints each determine the channel usage; andadjusting a flow rate for at least one of the nodes within the network based on the determined fair share channel usage. - View Dependent Claims (10, 11, 12, 13)
- comprising;
-
14. An apparatus for enforcing fairness in an ad hoc wireless mesh network, comprising:
-
a processor; a network interface unit configured to connect to the ad hoc wireless mesh network and that is configured to send and receive flows through a channel;
wherein each of the flows is a stream of packets between two endpoints on the ad hoc wireless mesh network;
wherein at least one of the flows within the ad hoc wireless network includes one or more intervening mesh nodes between the two endpoints; andan algorithm configured to perform steps using the processor, including; determining a channel usage for the flows through the channel between mesh nodes within the ad hoc wireless network;
wherein determining the channel usage for the flows through the channel comprises determining a number of channels used and determining the channel usage for each of the number of channels;sharing the channel usage information with neighbors by each of the mesh nodes that determine the channel usage information transmitting the channel usage information; processing neighborhood channel usage information; determining a fair share channel usage; and adjusting a flow rate. - View Dependent Claims (15, 16, 17, 18, 19)
-
Specification