The present invention relates to wireless municipal mesh networks and in particular to a method and apparatus for providing joint association, routing and rate allocation in a fair manner.
In multi-hop wireless networks, it has been shown that interference has a significant impact on network performance. In one prior art study, the throughput of wireless networks under two models of interference was investigated using a protocol model that assumed interference to be an all-or-nothing phenomenon and a physical model that considered the impact of interfering transmissions on the signal-to-noise ratio. Another prior art study considered the impact of interference on multi-hop wireless network performance. It used a conflict graph to model the effects of wireless interference and presented methods for computing upper and lower bounds on the optimal throughput for the given network and workload.
In addition to throughput, fairness is an important aspect in wireless mesh networks. Fairness has been extensively studied in wireless networks. Yet another prior art study showed that use of current IEEE 802.11 media access protocols for wireless backhaul networks can result in severe unfairness and even starvation for flows farther away from a gateway. Accordingly, the researchers developed a distributed layer 2 fairness algorithm to achieve fairness at the mesh access point (MAP)-aggregate granularity. In another study, the researchers proposed scheduling schemes for maximizing the sum of user utility in wireless networks, and pointed out that max-min fairness can be achieved as a special case using a certain choice of utility function. To derive a solution for max-min fair bandwidth allocation, other researchers used a network model with a number of simplifying assumptions. For example, they assumed that links that do not share nodes will never contend for channel access. Moreover, only single-hop flows were considered. Other prior art studied arbitrary link contention graphs, but once again only considered single-hop flows. In yet another prior art study, the researchers focused on fair bandwidth allocation in multi-hop wireless local area networks (WLANs). Given a determined tree structure, fair bandwidth allocation was performed via a Pump-and-Drain operation. In addition, the researchers designed an algorithm to construct a tree structure for improving throughput. However, none of the prior art studies jointly addressed the problem of association, routing and bandwidth/rate allocation in wireless mesh networks.
It is desirable to have a method and apparatus to jointly address the issues of association, routing and bandwidth/rate allocation in order to allocate the largest possible bandwidth to the participating stations while simultaneously allocate that bandwidth in a fair manner (as evenly as possible).
In a wireless municipal mesh (muni-mesh) network, the association mechanism, by which the client stations (STAs) become affiliated with the mesh access points (MAPs), and the routing algorithm, through which the logical topology of the relay backhaul is determined, organize the MAPs and the STAs into a two-tiered communication structure. As used herein, “/” denotes alternative names for the same or similar components or structures. That is, a “/” can be taken as meaning “or” as used herein. In the present invention, the problem of joint association, routing and bandwidth/rate allocation in wireless muni-mesh networks is investigated, motivated by the observation that the communication structure determined by association and backhaul routing affects the resulting allocated rates. Wireless interference is modeled using a conflict graph that captures the components specific to the two-tiered muni-mesh networks. The optimization goals are to maximize the network throughput and at the same time, to improve the fairness. First, a Linear Programming (LP) problem is formulated with the objective of maximizing the throughput. However, simply maximizing the throughput may lead to a severe bias on rates allocated to STAs. In order to achieve a good tradeoff between throughput and fairness, a max-min fairness model is considered. A rigorous formulation is provided to maximize the network throughput with a guaranteed maximum minimum rate allocation. Optimal algorithms for joint association, routing and rate allocation are developed herein for the cases allowing multiple MAP association and multi-path backhaul routing. Then the constraints of integral association and single-path routing are considered. If integral association and single-path routing are necessary, the problem formulation falls into mixed integer non-linear programming, which is NP-hard in general. To this end, a method to decouple the problems of logical topology construction and rate allocation is described. A heuristic method is used to construct the two-tiered logical communication topology and then bandwidth is allocated to the STAs within the determined logical topology.
Wireless municipal mesh (muni-mesh) networks are emerging as a promising solution for last-mile broadband Internet access. Unlike flat ad hoc networks, a mesh network has a hierarchical architecture, as shown in
It is expected that most of the data traffic in a wireless muni-mesh network is between the STAs and the Internet through the MAPs and gateway(s). Such traffic needs to be efficiently delivered on the bandwidth-limited wireless channel through the access link (access layer) and the multi-hop backhaul path (relay layer). In addition, it is important to fairly allocate the limited bandwidth to all STAs, i.e. control the amount of traffic that a STA can send to or receive from the mesh network since users commonly pay the same flat rate to get Internet access.
In the present invention, the problem of joint association, routing and rate allocation in wireless mesh networks is investigated with the objectives of maximizing the network throughput and improving the fairness. Due to the shared nature of wireless medium, transmissions in a common neighborhood will interfere with each other, which make the rate allocation problem completely different from that in the wired networks. In a wireless muni-mesh network, there is a link between any pair of nodes (STAs and MAPs) if they are in direct transmission range of each other. A node here includes either a STA or a MAP. However, it is association and backhaul routing that determine the set of STA-MAP and MAP-MAP links that are actually being used and carry the data/traffic. Consequently, all the nodes (MAPs and STAs) are organized into a logical topology for communications. Since different logical topologies consist of different sets of links and have different interference patterns, the particular logical topology determines how much bandwidth a STA can be allocated under a given rate allocation policy. It is desirable that the total rate/bandwidth allocated to the STAs is as large as possible and the rate/bandwidth is allocated to each STA as evenly as possible in terms of fairness.
A method and apparatus are described including collecting network information, determining an association, bandwidth allocation and routing scheme based on the collected network information, notifying a mesh access point of the association, the bandwidth allocation and the routing scheme and notifying a client node of its association information. Also described are a method and apparatus including measuring link quality and channel conditions, reporting results of the measuring act to a controller, receiving a routing decision and data forwarding instructions from the controller and forwarding the routing decision and the data forwarding instructions to a client node. Further described are a method and apparatus including measuring link quality and channel conditions, reporting results of the measuring act to a controller, receiving association instructions from the centralized controller and updating previously stored association instructions with the received association instructions.
The present invention is best understood from the following detailed description when read in conjunction with the accompanying drawings. The drawings include the following figures briefly described below where like-numbers on the figures represent similar elements:
a is a schematic diagram of a 3 MAP network.
b is a connectivity graph of the 3 MAP network of
c is a conflict graph of the connectivity graph of
Referring to
It is expected that most of the traffic in an infrastructure multi-hop network will be traffic to/from the wired network or Internet. In the present invention, focus is placed on improving the performance of communications between a client/STA and the outside wired Internet via the gateway/base station. To ensure the connectivity of the backhaul, the relay interfaces of all the MAPs are tuned to a common channel. Each MAP supports two interfaces. A MAP's access interface provides network access for the STAs associated with the MAP and the MAP's relay interface is used to construct and communicate over the backhaul relaying data/traffic between the gateway and the STAs associated with the MAP. Note that with modifications to the conflict graphs, the method of the present invention can be generalized to multi-radio multi-channel networks as well. In the access layer, the overlapping cells are tuned to operate on orthogonal channels to avoid inter-cell interference. The relay interface and the access interface also work on orthogonal channels so that the communications at the access layer and at the relay layer do not interfere with one another. A client device/STA only needs to support one single interface for access. The working channel for this interface is determined by the MAP(s) with which the STA is associated. It is assumed that each node transmits at the same fixed transmission power, i.e., there is a fixed transmission range Tr and a fixed interference rage Ir associated with each node. In the network, only STAs generate data/traffic. MAPs relay packets between the STAs and the gateway(s).
Given a mesh network with M MAPs and N STAs, a connectivity graph G(V+, E) is derived as follows, where V+=Va+Vs. Every vertex aεVa corresponds to a MAP in the network. An edge e=(a1,a2)εE corresponds to a wireless link between a1εVa and a2εVa if d(a1,a2)≦Tr where d is the Euclidean distance between a1 and a2. Each vertex uεVs is a STA. There is an edge between u and v if d(u,v)≦Tr and vεVa is a MAP. The edge (u,v) corresponds to a wireless link between STA u and MAP v. The second condition means that STAs only communicate with MAPs. Direct communication between two STAs is not allowed. That is, the STAs do not form a peer-to-peer network among themselves.
In the following, a protocol model is used to define the conditions for a successful wireless transmission and the interference is modeled using a conflict graph. In the protocol model, a transmission between node i and node j is successful if all of the following conditions are satisfied:
1. Node i and node j communicate on the same channel
2. d(i, j)≦Tr, where d(i,j) is the distance between i and j
3. Any node k, such that d(k,i)≦Ir or d(k, j)≦Ir remains silent during the transmission
The third condition means that both the sender and the receiver be free of interference. The sender should be free of interference in order to receive the receiver's acknowledgement successfully. Since every node transmits at the same fixed power and radio is inherently a broadcast medium where the communication channel is shared between multiple adjacent nodes within interference range, the interference area of a node i can be imagined as a disk Di centered at i with radius Ir. Without confusion, D, is also used to denote the set of nodes covered by disk Di and on the same channel as i, i.e., Di is used to denote the set of interfering nodes of node i. Using this definition, the set of links/edges interfering with a link e=(i,j) can be written as:
I
e={(u,v)|uεDi or uεDj or vεDi or vεDj}
To incorporate wireless interference into the problem formulation, a conflict graph, G′(V′,E′) is defined, whose vertices correspond to the links of the connectivity graph G. There exists an edge in G′(V′,E′) between the vertices e1=(x,y) and e2=(u,v) if in G the links e1 and e2 interfere with each other, i.e., they cannot be active at the same time. Based on the protocol model, an edge is drawn if (u,v) is covered by Ixy or Ie1. In the backhaul relay layer, this encompasses the case where a conflict arises because links (x,y) and (u,v) having an endpoint in common (since relay interfaces work on the same channel, two links sharing an endpoint lie in the interference set of each other). However, things are different for the access layer. Each STA supports only one access interface. The working channel of the interface is not pre-configured. Instead the working channel is dynamically tuned to one of the associated MAPs' working channels. In the problem formulation, dynamic fractional association is permitted, i.e., a STA can associate with more than one MAP, which implies that a STA needs to work on multiple channels in a time-division manner since it has only one radio. Potentially, a STA can associate with all the MAPs within its range Tr, so there is a link between the STA and each of such MAPs in the connectivity graph G. Based on the conflict graph construction described above, there would be no edge between any pair of these links in G′ because these links work on orthogonal channels. However, due to a single radio each STA has, these links cannot be active at the same time. That is, a STA can work only on one channel and transmit to one MAP at a time. Therefore, the interference set of a STA-MAP link explicitly includes the links that share the same radio as the given link, and consequently an edge is drawn between any pair of such links in the conflict graph G′. Using the conflict graph, the set of links interfering with a link e=(x,y) can be represented in another way:
I
e
={e′|(e,e′)εE′}
a illustrates the construction of the connectivity graph and the conflict graph in a 3-MAP network, where MAP A is the gateway 205. MAP B 210 and MAP C 210 have a link to A but are out of each other's range. The three MAPs work on channel ch1 in the backhaul. The STA S 215 can potentially associate with both B and C whose access interfaces work on orthogonal channels ch2 and ch3 respectively.
Next, mathematically formulating the joint association, routing and rate allocation problem is described. Suppose that there are M MAPs and N STAs in the network. To reach the performance upper limits, fractional association and multi-path routing are first allocated, i.e., a STA can associate with multiple MAPs and in the backhaul a traffic flow can be routed through multiple paths to the gateway. The rate allocation vector for the STAs is denoted by r={rij|iεVs, jεVa}, where rij is the rate allocated to STA i for its association with MAP j. The total rate allocated to STA i is therefore ri=Σjrij and the network throughput is S(r)=Σi=1NΣj=1Mrij. When a STA is allocated a total rate of ri, it can communicate with the wired network through the gateway with the total rate of ri. An M-element vector f=[f1, f2, . . . fM] denotes the traffic volumes at each MAP, where fj represents the total traffic aggregated for j's associated STAs. Under multi-path routing, fj may be distributed to multiple paths and cross different set of links to the gateway. Rj,e is used to denote how much bandwidth on link e is allocated for transmitting a flow belonging to fj. The capacity of a link e=(u, v)εE is denoted with Cuv or Ce.
First, the LP formulation to determine association, routing and rate allocation to maximize the throughput is presented. In the following, h(e) and t(e) are used to denote the head (the sender) and the tail (the receiver) of a link e, respectively. “gw” is used to denote the gateway. The LP problem is called the Maximum Throughput Rate Allocation (MTRA) problem.
In inequalities (2) and (3), Rij/Cij the fraction of STA i's time to send its own traffic to MAP j. (2) presents the radio constraint on a STA (the STA transmits to multiple associated MAPs in a time-division manner), indicating that the total rate allocated to STA i should not require more transmission time than STA i actually has. The inequality (3) means that the total traffic imposed on MAP j by its associated STAs should require no more receiving time than MAP j has. Equations and inequalities (4)-(8) present the law of flow conservation. Inequality (4) states that a MAP's traffic is the sum of the traffic from its associated STAs. Equation (5) shows that MAP j's traffic is distributed to its outgoing links, however, the sum of the rates on these links should equal fj. Equation (6) indicates that in the backhaul there is no flow belonging to fj on incoming links to MAP j since j is the source to the gateway. Equation (7) holds that there is no flow belonging to fj on outgoing links of the gateway, because gateway is the sink. Equation (8) represents that, for any MAP, except the source to the gateway in the backhaul and the gateway, the amount of incoming flow is equal to the amount of outgoing flow. Inequality (9) is the condition of feasibility, which accounts for wireless interference and represents that the total usage of the links in an interference set should not exceed 1. The objective of equation (1) is to maximize the network throughput.
It is shown below that rate allocation with the objective to maximize the network throughput may result in a severe bias among STAs, i.e., some STAs are allocated very high rates, while others are starved. In wireless muni-mesh networks, it is important to fairly allocate resources among STAs because users generally pay the same flat rate to get Internet access service. Next, the fairness issue is addressed based on a max-min fairness model. The LP formulations are presented to maximize the minimum rate allocated to the STAs and then to maximize the throughput with the max-min rate guaranteed. This problem is called Max-Min Rate Allocation (MMRA) problem and is formulated in two steps.
In step 1, the minimum rate (rmin) allocated to the STAs is maximized. Since a STA can associate with multiple MAPs, the total rate allocated to a STA, for example STA i, is ri=Σj:(i, j)εErij, where j is a MAP with which STA i associates. The first eight conditions, equations and inequalities (2)-(9), are the same as in the maximum throughput rate allocation problem. Inequality (12) states that the rate allocated to any STA should be no less than rmin. By solving this LP problem, it is ensured that for any other rate allocation vector {r′ij}, the minimum rate allocated is min{r′i}≦r*. The resulting rate allocation from step 1 ensures the maximum minimum rate allocation value, however, it may not efficiently use the network resources.
In step 2, the network throughput is maximized while making sure that each STA is allocated a rate of at least r*. Therefore, solving step 1 to obtain r* and then solving step 2 can provide maximum throughput while ensuring max-min fairness.
So far, fractional association and multi-path routing have been considered. In fractional association and multi-path routing a STA can associate with multiple MAPs and the traffic from a source may be routed to the gateway via multiple paths. Many existing association schemes are confined to integral association, where a STA associates with only one MAP. Many current routing protocols are restricted to single-path routing. It is, therefore, useful to derive the performance bounds for integral association and single-path routing. The method by which integral association and single-path routing are introduced is by adding two sets of 0-1 variables, aijε{0,1} and uj,eε{0,1} where aij indicates whether or not STA i associates with MAP j, while u indicates whether or not the link e is used by a flow belonging to fj. The problem formulations described above can be extended for integral association and single-path routing by replacing rij with aijrij and Rj,e with uj,eRj,e, and adding the following two conditions:
1. At each STA i, Σj:(i, j)εEaij=1, where aijε{0,1}
2. For any fj, at any MAP a, Σe:h(e)=auj,e≦1, where uj,eε{0,1}
The first condition states that a STA can associate with only one MAP. The basic idea of the second condition is that in a single-path routing, at any MAP a, there is at most one outgoing link that carries flow j. This problem formulation falls into mixed integer non-linear programming. In theory, solving such a problem is NP-hard.
To avoid solving a NP-hard problem under integral association and single-path routing, a method to decouple the problems of association, routing and rate allocation is described. Heuristic association and routing algorithms are presented to construct the logical topology used for communications, and then perform rate allocation within this logical topology. This scheme is practical but gives sub-optimal solutions.
The airtime cost specified in IEEE 802.11s is used as the routing metric. Airtime cost reflects the amount of channel resources consumed by transmitting a frame over a particular link. The airtime cost for a link is calculated as
where O is the channel access overhead, including frame headers, training sequences, access protocol overhead, and S is the standard test frame length. Some representative values in IEEE 802.11b networks for these constants are: O=699 μs, and S=1024 bytes. r and E are the link data rate and the frame error rate for the test frame size S under the current channel conditions, respectively. These values can be estimated locally. The cost of a path is simply the summation of the airtime cost of the links on the path.
The routing protocol used in the backhaul is the Hybrid Wireless Mesh Protocol (HWMP) specified in the IEEE 802.11s standard. The HWMP defines a proactive routing mode and an on-demand routing mode. The proactive mode permits proactively establishing a route for communications with certain critical mesh nodes such as a gateway. With proactive routing, the data forwarding between the MAPs and the gateway can begin immediately without route discovery delay and extra data buffering. The on-demand routing mode is based on the enhanced Ad Hoc On Demand Distance Vector (AODV) protocol [IETF RFC 3561] and any mesh node may initiate an on-demand route discovery through route request/route reply procedure. The on-demand mode is for peer MAP-to-peer MAP communications. Focus herein is on proactive routing for communications between MAPs and gateway.
In the proactive routing mode, the gateway periodically advertises itself by broadcasting a root/route announcement messages that contains a path cost field and a sequence number. The value of the path cost is initialized to zero at the gateway and updated at intermediate MAPs during the propagation of the root/route announcement message. The sequence number is incremented each time a root/route announcement is sent by the gateway. Upon receiving a root/route announcement, a MAP updates the cost of the incoming path by adding the cost of the incoming link to the path cost carried in the root/route announcement. If the sequence number in the received message is larger than what has been seen up to this point in time or if the sequence number is the same but the path cost is better than the current value, the MAP updates its path to the gateway and rebroadcasts the root/route announcement. The topology builds away from the gateway as this process repeats until all the MAPs in the backhaul receive the root/route announcement message. In this way, a path is proactively established and maintained between each MAP and the gateway. The established paths form a tree rooted at the gateway. Note that other routing metrics and routing protocol can be used in the backhaul to establish the path between the MAPs and gateway. Note also that the reverse paths are established by the nodes of the tree replying to the announcement message.
In an earlier application (PCT/US ______), an end-to-end performance aware association mechanism was taught. The association metric, called JSEL, was defined as:
JSEL=βQ
a1+(1−β)Cbp (16)
where Qa1 was the access link metric that reflected the quality of the access link between the STA and the MAP. For a MAP j and a joining STA i,
where A(j) denotes the set of STAs that currently associate with MAP j. S is the test frame size (e.g, 1024 bytes) and rn is the link data rate between STA n and MAP j. E1 denotes the packet loss rate on the link between STA i and MAP j if i transmits frames of size S at the data rate ri. Cbp is the cumulative cost of the backhaul path from the MAP to the gateway. It is carried in the MAP beacon and probe response frames, which makes such information available to the STAs. βε[0,1] is a tunable parameter, which is used to balance the access link quality and backhaul path quality in equation (16).
Association and backhaul routing define a logical topology for communications in the network, i.e., indicating which links are actually used for carrying traffic. The next problem is to perform rate allocation within this logical communication topology to maximize the throughput or maximize the throughput with guaranteed max-min rate. The two formulated problems are denoted as MTRA-Suboptimal and MMRA-Suboptimal, respectively.
Given the logical communication topology, i.e., associations of STAs with MAPs and backhaul paths between each MAP and the gateway are known, the optimization variables are the rates allocated to the STAs. An N-element vector r=[r1, r2, . . . , rN] is used to denote the rate allocation vector for the STAs, where ri is the rate allocated to STA i. A(j) denotes the set of STAs that associate with MAP j, and use P(j) is used to denote the backhaul path between MAP j and the gateway. MAP j's data/traffic, denoted as is the total traffic aggregated from all j's associated STAs. The capacity of STA i's access link is denoted as Ci, and for a link e in the backhaul, Ce denotes link e's capacity. In the following, the problem formulation for maximizing the throughput with guaranteed max-min rate value is shown. The MMRA problem includes two steps.
The objective of equation (17) is to maximize the minimum rate allocated to STAs. Inequalities (18) and (25) indicate that the rate allocated to a STA cannot exceed the access link capacity. Inequalities (19) and (26) mean that the total traffic imposed on MAP j by its associated STAs should require no more receiving time than MAP j actually has. Equations (20) and (27) state that a MAP's traffic is the total traffic aggregated from its associated STAs. Inequalities (21) and (28) are the condition of feasibility, which accounts for wireless interference. They state that the usage of the links in an interference set should not exceed 1. Inequality (22) requires that the rate allocated to any STA should be no less than rmin. After solving r*, in step 2 the throughput is maximized while making sure that each STA is allocated a rate of at least r* as indicated in equation (24). Inequality (29) indicates that the rate allocated to any STA should be no less than r*. Inequalities (23) and (30) state that the allocated rate should be equal to or greater than 0.
The present invention is based on a centralized method to achieve joint optimization of association, routing and rate allocation in two-tiered muni-mesh networks based on a max-min fairness model. An objective is to improve the throughput without sacrificing fairness, i.e. maximizing the network throughput with guaranteed max-min rate allocation. In practice, it is difficult, if not impossible, to provide short-term throughput and fairness optimization because of the dynamics of network topology, link status and traffic. The method described herein achieves long-term max-min fairness to all the STAs. It can be used as the foundation in the design of a muni-mesh network control system for addressing the fairness issue that also maximizes the network throughput.
In terms of implementation, the system and method of the present invention first need information on the mesh backhaul network such as physical mesh topology, link data rate, link's interference set, as well as information on each STA such as the access link data rate that the STA experiences to/from each MAP. Second, the system and method of the present invention need a means to determine the logical two-tier logical communication topology including backhaul routing and STA-MAP association, and fair bandwidth allocation to each STA. Third, the system and method of the present invention need a mechanism to enforce these routing, association and rate allocation decisions. Note that if the wireless link is symmetric, the total bandwidth of upstream and downstream traffic for a STA can be allocated using the algorithm described above. Based on the traffic pattern, the total bandwidth is divided into the upstream and downstream flows.
Still referring to
The MAPs (
If the mesh network uses a distributed MAC protocol such as IEEE 802.11 Distributed Coordination Function, the STAs and MAPs can be equipped with a module (software, hardware or firmware or any combination thereof) that periodically collects the information required by the method of the present invention. The collected information is reported to a central controller. The central controller makes or periodically updates its decisions of the optimal STA-MAP association, backhaul routing, and bandwidth allocation to each STA using the method of the present invention (
It is to be understood that the present invention may be implemented in various forms of hardware (e.g. ASIC chip), software, firmware, special purpose processors, or a combination thereof, for example, within a server, an intermediate device (such as a wireless access point or a wireless router) or mobile device. Preferably, the present invention is implemented as a combination of hardware and software. Moreover, the software is preferably implemented as an application program tangibly embodied on a program storage device. The application program may be uploaded to, and executed by, a machine comprising any suitable architecture. Preferably, the machine is implemented on a computer platform having hardware such as one or more central processing units (CPU), a random access memory (RAM), and input/output (I/O) interface(s). The computer platform also includes an operating system and microinstruction code. The various processes and functions described herein may either be part of the microinstruction code or part of the application program (or a combination thereof), which is executed via the operating system. In addition, various other peripheral devices may be connected to the computer platform such as an additional data storage device and a printing device.
It is to be further understood that, because some of the constituent system components and method steps depicted in the accompanying figures are preferably implemented in software, the actual connections between the system components (or the process steps) may differ depending upon the manner in which the present invention is programmed. Given the teachings herein, one of ordinary skill in the related art will be able to contemplate these and similar implementations or configurations of the present invention.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/US2008/003211 | 3/11/2008 | WO | 00 | 9/2/2010 |