This section introduces aspects that may be helpful in facilitating a better understanding of the invention. Accordingly, the statements of this section are to be read in this light and are not to be understood as admissions about what is in the prior art or what is not in the prior art.
Multi-hop wireless networks have been widely recognized as a low cost fast deployed technology for various applications such as disaster recovery networks, wireless backhaul, public Internet access, etc. In such systems, a collection of wireless communication devices, referred to as nodes, self-organize into a multi-hop wireless network. Each node communicates with other nodes in its vicinity and together they operate as relays for forwarding packets between source-destination pairs that may be several hops away. However, due to the dynamic ad hoc nature of such systems, they may be plagued by unpredictable interference, noise, node and/or link failure, and limited energy supply, each of which can significantly hinder performance.
In such systems, each node is equipped with a few directional antennas, e.g., three to twenty. Although, typically the number of directional antennas is about 3 to 6, for example, if a node has 3 directional antennas, two routers may be connected back-to-back to obtain a single router with 6 directional antennas. Each antenna is used for establishing a point-to-point link with another antenna on a neighboring node. Thus in such a constructed network, each node cannot have more links than its number of installed antennas, which in turn defines a degree bound on all nodes.
Embodiments of the present invention are directed to localized methods for building fault resilient wireless networks that contain paths with the highest possible capacity for every pair of nodes, under standard conditions and in the presence of node and/or link failures. Embodiments also include methods for building fault resilient wireless networks with the lowest possible degree bound. Other embodiments include constructing fault resilient and high capacity networks with bounded node degree. To form these networks, embodiments of the present invention include methods of determining neighbor nodes with which to link in a wireless communication network.
An embodiment of the present invention includes a method of determining neighboring nodes with which to link in a wireless communication network. The method includes, determining, at a subject node, a set of five or less neighbor nodes from a plurality of neighbor nodes neighboring the subject node. The method also includes communicating, from the subject node, over at least one link to at least one of the determined set of neighbor nodes. The links over which the subject node communicates are high capacity links.
Another embodiment further includes determining a preferred set of neighbor nodes from the plurality of neighbor nodes, excluding the determined set of five or less neighbor nodes. The subject node may then communicate over at least one link to at least one of the determined set of neighbor nodes and over the at least one link to at least one of the determined preferred set of neighbor nodes. The links over which the subject node communicates are fault resilient high capacity links.
In another embodiment, the method further includes determining at least two paths including one or more links, between the subject node and at least one neighbor node from the set of neighbor nodes and the preferred set of neighbor nodes. The method also includes, removing links corresponding to a third path between the subject node and the at least one neighbor node from the links over which the subject node communicates. The links over which the subject node communicates are fault resilient links.
Other embodiments include computer readable mediums encoded with methods of determining neighboring nodes with which to link a subject node in a wireless communication network, where the method includes the steps described above.
The present invention will become more fully understood from the detailed description given herein below and the accompanying drawings, wherein like elements are represented by like reference numerals, which are given by way of illustration only and thus are not limiting of the present invention and wherein:
In the following description, illustrative embodiments will be described with reference to acts and symbolic representations of operations (e.g., in the form of flowcharts) that may be implemented as program modules or functional processes include routines, programs, objects, components, data structures, etc., that perform particular tasks or implement particular abstract data types and may be implemented using existing hardware at existing network elements or control nodes (e.g., a scheduler located at a base station or Node B, a router located at a base station or Node B, a transmitter located at a base station or Node B, etc.). Such existing hardware may include one or more digital signal processors (DSPs), application-specific-integrated-circuits, field programmable gate arrays (FPGAs) computers or the like.
Embodiments of the present invention are directed to determining high capacity and fault resilient networks with a minimum bound degree by determining which nodes neighboring a subject node should be identified as neighbor nodes and thus be used to link the subject node within the wireless communication network. A link is defined herein as any type of communication connection between any two nodes, where a node is defined as a network element that acts as a communication point within a network. A path between nodes may include one or more links between the two nodes. In addition, the networks described may include distributed networks, for example, ad hoc mesh type networks.
In an embodiment of the present invention, a fault resilient high capacity network includes a two-node-connected network that contains a high capacity path between every pair of nodes, in the presence and/or absence of any node and/or link failure. The fault resilient high capacity network may also have a node degree of at most 10 where each node may only need to know about and communicate with neighbor nodes.
In another embodiment of the present invention a less strict high capacity network is determined using a two-node-connected network with a degree bound of five. In this type of network, the network guarantees that under any node and/or link failure, there is a path P between every pair of nodes u and v such that P's capacity is at least the same or higher than a high capacity path between some nodes of the network.
Embodiments of the present invention also include methods for determining the number of neighbor nodes for a subject node in a communication network to achieve various types of subgraphs and methods for determining the structure of such subgraphs based on the neighbor node configuration.
Throughout the following description, various definitions, assumptions, theorems, lemma, corollaries, etc. will be discussed. To begin, a path P may be defined between any pair of nodes u and v in a network as a high capacity path if there is no other path between u and v with a higher capacity than P. Accordingly, a network and/or a subgraph representing the network may be defined as a high capacity network and/or subgraph if, e.g., the subgraph contains such a high capacity path between every pair of nodes. Each wireless node is equipped with D tunable directional antennas for establishing high capacity point-to-point data connections with adjacent nodes. G(V, EG) is denoted as an input graph related to the network, where V denotes a set of wireless nodes and EG represents all the possible bi-directional point-to-point connections between the nodes. Each node u ε V may have a unique identification number denoted by IDu.
Given the input graph G(V, EG), embodiments of the present invention select subsets of potential links to form H (V, EH) of G(V, EG), where EH⊂EG, the degree of any node in H is at most D, and the subgraph H satisfies both fault resilience and high capacity network requirements. To provide fault resilience, H includes two node-disjoint paths between every pair of nodes. Node disjoint paths are two paths that share only the start and end nodes. For example, for nodes u, v there are at least two different paths connecting u and v, in addition to the path including the direct link between u and v.
Each link (u, v) ε EG is associated with at least one link parameter, e.g., distance, weight, etc. For purposes of discussion, let the parameter be link capacity denoted by cu,v, which depends on the channel quality between the endpoints of the link. Usually, there is a correlation between node distance and channel quality, for example, in outdoor open space applications such as a fleet of cruising battleships, which self-organize into a multi-hop wireless mesh network. Often, the longer the distance between two nodes, the lower the channel capacity. For example, consider two adjacent nodes u, v ε V and let du,v denote the distance between the nodes as shown in
For a path Px,y between a pair of nodes x, y ε V, the path capacity C of Px,y is the capacity of the link with the minimal capacity along the path, denoted by
C(Px,y)=min(u,v)εPx,yCu,v (1)
A path Px,y is termed a high capacity path between nodes u and v if there is no other path between u and v in the graph G with higher path capacity as discussed earlier. A subgraph H(V, EH) of G (V, EG) is termed a high capacity subgraph if it contains for every pair of nodes u, v ε V at least one of their high-capacity paths in G.
Definition 1: (BOUNDED DEGREE HIGH-CAPACITY (HC) SUBGRAPH): Given an input graph G (V, EG), this subgraph determines a minimal integer DHC and a high capacity subgraph H(V, EH) with maximal node degree of at most DHC.
Definition 2: (BOUNDED DEGREE TWO-NODE—CONNECTED HIGH CAPACITY (2C-HC) SUBGRAPH): Given an input graph G (V, EG), this subgraph determines a minimal integer D2NC-HC and constructs a two-node-connected high capacity subgraph H(V, EH) with node degree at most D2NC-HC.
Definition 3: (BOUNDED DEGREE FAULT RESILIENT HIGH CAPACITY (FR-HC) SUBGRAPH): Given an input graph G (V, EG), this subgraph determines a minimal integer DFR-HC and constructs a two-node-connected high capacity subgraph H(V, EH) of G (V, EG) with node degree at most DFR-HC. Also, for this subgraph, in the case of any node and/or link failure, the residual subgraph should remain a high capacity subgraph. Another way to define this subgraph is a two node-connected high capacity subgraph that preserves high capacity in the case of any node and/or link failure.
Definition 4: (BOUNDED DEGREE FAULT RESILIENT MAX-MIN-CAPACITY (FR-MMC) SUBGRAPH): Given a two-node-connected input graph G (V, EG) with max-min capacity C*, this subgraph determines a minimal integer DFR-MMC and a two-node-connected subgraph H(V, EH) of G (V, EG) with the degree of each node being at most DFR-MMC and every pair of nodes having two-node disjoint paths between them with a path capacity of at least C. For this subgraph, let Cu,vw denote the capacity of the high capacity path between nodes u and v after removing node w from G. Where the minimum capacity of G is defined as:
C*=MAXwεVMINu,vεVCu,vw (2)
This subgraph has a less aggressive high capacity re-quirement than the FR-HC subgraph.
Theorem 1: Let T denote a minimal spanning tree (MST) of G (V, EG). For any pair of nodes x, y ε V, the path Px,y between the nodes x, y in T is a high capacity path.
Corollary 1: A subgraph of G (V, EG) is a high capacity subgraph if it contains a minimal spanning tree of G.
Definition 5: (RELATIVE NEIGHBORS): Two adjacent nodes u, v ε V are relative neighbors (RN) if there is no other node y ε V where
wu,y<wu,v and wu,y<wu,v (3)
Consider a wireless network G(V, EG) and assume each link e=(u, v) ε EG is associated with a weight we, which is the distance du,v between the nodes u, v εV and let wu,v=∞ if u and v are not adjacent to one another.
As shown in
Definition 6: (ID)-BASED RELATIVE NEIGHBORS): Two adjacent nodes u, v ε V are called ID-based relative neighbors (ID-RN) if they are relative neighbors under the following link weight definition where the weight of link (u, v) is defined by the triplet,
wu,v=<du,v,ID1,ID2>. (4)
In the triplet, du,v is the original link weight, e.g., the distance between the nodes u and v, and ID1=min{IDu, IDv} and ID2=max{IDu, IDv}. Su denotes the set of ID based relative neighbors of node u.
Definition 6 ensures a unique weight for each link. Under this definition, given two links e1, e2 ε EG, We1<we2 if we1 has a lower lexicographic value than the lexicographic value of we2. Based on definition 6, Lemmas 1 to 3 and Corollary 2 follow.
Lemma 1 (Symmetry): If v ε Su, then u ε Sv, and Lemma 2: If v, y ε Su, then angle vuy≧60°.
Corollary 2: Any node can have at most 6 ID-RNs as shown in
In view of the above, the placement of ID-RNs around a given node u herein referred to as a hexagon constellation, shown in
w
u,v
=<d
u,v+ε,ID1,ID2> (5)
where du,v, ID1, and ID2 are as defined in Definition 6. An example of this formation is shown in
The weight modification process may be a localized process, for example, a node may only need to get the approval of its neighbor v to change the weight of the link (u, v). Then both nodes, u and v, may modify the link weight and distribute the new weight to their neighbor nodes and so on. Note that a node may have multiple hexagon constellations around it. Thus, after breaking a hexagon constellation around u, a review of the other nodes in the vicinity may continue to check for possible hexagon constellations. If a hexagon constellation is found, the weight modification process is repeated. The weight modification process may be repeated until there are no hexagon constellations around u.
Also, the weight modification process done by other nodes may affect the ID-RN set for node u, so node u may need to verify that the new link weights do not yield another hexagon constellation. Further, to avoid similar situations, the weight of an RN-link (u, vj) vj ε Y may be modified only if the weights of the RN-links (u, vj−1) and (u, vj+1) have not been modified. Modulo 6 may be used to keep the node index in the range of 0 to 5.
Lemma 4: After the weight modification process there is no node u with a hexagon constellation of nodes around it.
Theorem 2: Consider a hexagon constellation Y around node u. After the weight modification process, at most 5 of the nodes in Y are ID-RNs of u, regardless of the other nodes in the vicinity of u as shown in
Definition 7: (WEIGHTED RELATIVE NEIGHBORS OR DETERMINED SET OF NEIGHBOR NODES): Two adjacent nodes u, v ε V are called weighted relative neighbors (WRNs) if they are relative neighbors according to the link weight determined by the weight modification process. Ŝu denotes the set of weighted relative neighbors of node u. An example of a node with 6 ID-RNs but only 5 WRNs is shown in
Lemma 5 (Symmetry): If u ε Ŝu, then v εŜu, and Lemma 6: Every node has at most 5 WRNs.
An embodiment of the present invention providing a method for determining neighbor nodes with which to link in a wireless communication network, will now be discussed with reference to
The method shown in
In step S100, a high capacity subgraph as defined above is determined. For purposes of ease of description, the subgraphs refer to node u as an example subject node, however it is to be understood that for each node in the network the methods discussed may be repeated. To determine the subgraph, node u evaluates the distance (e.g., or link capacity, etc.) to each of its neighbors in G and determines its set of ID-RNs as discussed above. If necessary, node u conducts the weight modification process described above to ensure that node u does not have a hexagon constellation around it. Once node u determines its set of weighted relative neighbors Ŝu and the corresponding links, node u may then communicate over at least one link between node u and the corresponding weighted relative neighbors in step S110.
Theorem 3: The subgraph T(V,ET) calculated in step S110 is a high capacity subgraph with a maximal node degree 5.
In step S120, a fault resilient high capacity subgraph as defined above is determined. To determine this subgraph, each node u iteratively calculates a set of new preferred neighbor nodes denoted by Zu. In each iteration, node u temporarily ignores a neighbor v ε Nu and determines a set of new preferred WRNs denoted by Zvu. The set of new preferred neighbors Zu is the union of the new WRN sets Zvu of every neighbor v ε Nu. An example embodiment of subgraph H(V, EH) is shown in
Steps S100 and S120 may both be localized, e.g., requiring only the exchange of local information between adjacent nodes.
Theorem 4: If the input graph G(V,EG) is two-node-connected then H(V, EH) is a fault resilient high capacity subgraph of G, and Theorem 5: The maximal node degree of H(V, EH) is at most 10.
In step S130, the fault resilient high capacity subgraph shown in
Theorem 6: If the input graph G(V,EG) is two-node connected then the subgraph J(V, EJ) is a fault resilient max-min capacity subgraph of G.
Lemma 12: For any node with 3 or more neighbors in J and any two nodes v, y ε Wu, either angle vuy>60°, or angle vuy=60° and du,v=du,y, where Wu denotes all the neighbors of node u in J.
Theorem 7: The degree of any node in J is at most 5.
The FR-HC networks may provide the highest possible capacity guarantees for all nodes, not only in normal cases but also in the presence of any node and/or link failure. Although the improved capacity performance may be achieved at the cost of a relatively higher node degree, the achieved degree bounds may be considered moderate (up to 8). Alternatively, the FR-MMC networks may provide the lowest possible degree bound guarantee, whereas the provided capacity guarantee is relatively lower than that provided by FR-HC. Nevertheless, the path capacities provided by FR-MMC networks may still be considered improved as compared to previous path capacities.
The invention being thus described, it will be obvious that the same may be varied in many ways. Such variations are not to be regarded as a departure from the invention, and all such modifications are intended to be included within the scope of the invention. The present invention may be embodied in other specific apparatus and/or methods. The described embodiments are to be considered in all respects as only illustrative and not restrictive. In particular, the scope of the invention is indicated by the appended claims rather than by the description and figures herein. All changes that come within the meaning and range of equivalency of the claims are to be embraced within their scope.
It is noted that the terms used to identify the various types of neighbor nodes are only examples of such terms, and the terms may change according to the service provider, the network, etc. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items. It should also be noted that in some alternative implementations, the functions/acts noted may occur out of the order noted in the figures. For example, two figures shown in succession may in fact be executed substantially concurrently or may sometimes be executed in the reverse order, depending upon the functionality/acts involved. Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which example embodiments belong. It will be further understood that terms, e.g., those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
A person of skill in the art would readily recognize that steps of various above-described methods can be performed by programmed computers. Herein, some embodiments are intended to cover program storage devices, e.g., digital data storage media, which are machine or computer readable and encode machine-executable or computer-executable programs of instructions where said instructions perform some or all of the steps of methods described herein. The program storage devices may be, e.g., digital memories, magnetic storage media such as magnetic disks or tapes, hard drives, or optically readable digital data storage media. The embodiments are also intended to cover computers programmed to perform said steps of methods described herein.
Portions of the present invention and corresponding detailed description are presented in terms of software, or algorithms and symbolic representations of operation on data bits within a computer memory. These descriptions and representations are the ones by which those of ordinary skill in the art effectively convey the substance of their work to others of ordinary skill in the art. An algorithm, as the term is used here, and as it is used generally, is conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities.
Usually, though not necessarily, these quantities take the form of optical, electrical, or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.
It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise, or as is apparent from the discussion, terms such as “processing” or “computing” or “calculating” or “determining” of “displaying” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical, electronic quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.