# Patent

## Title
System and method for identifying and maintaining reliable infrastructure links using bit error rate data in an ad-hoc communication network

## Abstract

A system and method for determining the reliability of at least one communication link between nodes in an ad-hoc communication network. The system and method perform the operations of receiving at a first node data sent by a second node over a link from the second node to the first node, determining a bit error rate (BER) at which the first node received the data, and identifying the link from the second node to the first node as being reliable when a value determined based on at least the BER and, more specifically, an aggregate of the BER and BERs of data received by the first node from the second node over a period of time, meets a desired condition. The data sent by the second node can include routing advertisement data indicating at least one node which is a neighboring node of the second node, or can be any suitable regularly expected message. The data also includes an indication as to the reliability of the link from the first node to the second node based on a measure of at least one previous message, for example, the BER or aggregate BER of at least one routing advertisement, that the second node received from the first node.

## Background
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to a system and method for selecting reliable communication links between nodes in a wireless ad-hoc communication network. More particularly, the present invention relates to a system and method for using bit error rates of transmissions between a mobile or stationary node and its neighboring mobile and stationary nodes in a wireless ad-hoc communication network, to determine with which of those neighboring nodes reliable uni-directional or bi-directional communication links exist.
2. Description of the Related Art
In recent years, a type of mobile communications network known as an “ad-hoc” network has been developed to address the needs of multiple mobile device communication beyond traditional infrastructure coverage. In this type of network, each user terminal (hereinafter “mobile node”) is capable of operating as a base station or router for other mobile nodes within the network, thus eliminating the need for a fixed infrastructure of base stations. Accordingly, data packets being sent from a source mobile node to a destination mobile node are typically routed through a number of intermediate mobile nodes before reaching the destination node.
More sophisticated ad-hoc networks are also being developed which, in addition to enabling mobile nodes to communicate with each other as in conventional ad-hoc networks, further enable the mobile nodes to access fixed networks and communicate with other types of user terminals, such as those on the public switched telephone network (PSTN) and the Internet. Details of these advanced types of ad-hoc networks are described in U.S. patent application Ser. No. 09/897,790 entitled “Ad Hoc Peer-to-Peer Mobile Radio Access System Interfaced to the PSTN and Cellular Networks”, filed on Jun. 29, 2001, in U.S. patent application Ser. No. 09/815,157 entitled “Time Division Protocol for an Ad-Hoc, Peer-to-Peer Radio Network Having Coordinating Channel Access to Shared Parallel Data Channels with Separate Reservation Channel”, filed on Mar. 22, 2001, and in U.S. patent application Ser. No. 09/815,164 entitled “Prioritized-Routing for an Ad-Hoc, Peer-to-Peer, Mobile Radio Access System”, filed on Mar. 22, 2001, the entire content of each being incorporated herein by reference.
In such ad-hoc networks, data flow is from node to node, and relies heavily on optimum route selection. Factors such as transmission power consumption and pipeline delays play a critical role in selecting transmission routes through the network which satisfy minimum requirements. For example, certain service classes such as the transmission of voice data, requires a minimal pipeline delay. However, minimizing pipeline delays often increase transmission power levels, which may overly burden the limited power supply of mobile nodes. Furthermore, the transmission itself requires the establishment and use of reliable communication links between nodes.
The challenge in identifying reliable links in an ad-hoc network lies in the fact that many communication links may be intermittent, unidirectional, or constantly varying in an environment where communication between nodes is sometimes difficult, even during normal operation. One indication of poor communication links between nodes is the detection of a bit error rate (BER) which exceeds allowable limits. The detection and use of bit error rates in wireless communication is discussed in U.S. Pat. No. 5,771,467 to Yukio Sato, which is incorporated herein by reference. As described in the Sato patent, the BER is constantly monitored and compared to a threshold value. The detection of a BER exceeding the threshold value halts communications between devices until the BER falls below the threshold. The Sato patent discloses a mobile station which prevents data communications when circuit quality has degraded below a threshold value, as indicated by a large BER. However, Sato does not address the location of nodes with which communication exceeds minimum BER levels, such nodes being critical to establishing a set of reliable communication links. Accordingly, a need exists for a system and method to determine bit error rates present during communication with area nodes, and creating a list of nodes having reliable links based upon the BER.
SUMMARY OF THE INVENTION
An object of the present invention is to provide a system and method for calculating bit error rates between nodes in an ad-hoc communication network to identify reliable links between the nodes.
Another object of the present invention is to provide a system and method for identifying a reliable bi-directional link between two nodes in a wireless ad-hoc communication network based on bit error rates at which routing advertisements exchanged by the nodes are received.
These and other objects are substantially achieved by providing a system and method for determining the reliability of at least one communication link between nodes in an ad-hoc communication network. The system and method perform the operations of receiving at a first node data sent by a second node over a link from the second node to the first node, determining a bit error rate (BER) at which the first node received the data, and identifying the link from the second node to the first node as being reliable when a value determined based on the BER meets a desired condition. The value can be, for example, an aggregate of BERs of data received by the first node from the second node over a period of time. The data sent by the second node can include routing advertisement data indicating at least one node which is a neighboring node of the second node, or can be any suitable regularly expected message. The data also includes information that provides an indication as to the reliability of the link from the first node to the second node. This information could be determined based on an aggregate of measurements of conditions of previous messages that the second node received from the first node over a period of time. For example, the information could be based on the aggregate of the BERs of routing advertisements that the second node received from the first node over a period of time.



BRIEF DESCRIPTION OF THE DRAWINGS
These and other objects, advantages and novel features of the invention will be more readily appreciated from the following detailed description when read in conjunction with the accompanying drawings, in which:
FIG. 1 is a block diagram of an example of an ad-hoc wireless communications network including a plurality of nodes and employing an embodiment of the present invention;
FIG. 2 is a block diagram of an example of a wireless node as shown in FIG. 1; and
FIG. 3 is a conceptual flow diagram of an example of operations performed by nodes in the network shown in FIG. 1 to select reliable communication links in accordance with an embodiment of the present invention.



DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
FIG. 1 is a block diagram illustrating an example of an ad-hoc packet-switched wireless communications network 100 employing an embodiment of the present invention. Specifically, the network 100 includes a plurality of mobile wireless user terminals 102-1 through 102-n (referred to generally as nodes or mobile nodes 102), and a fixed network 104 having a plurality of access points 106-1, 106-2, . . . 106-n (referred to generally as nodes or access points 106), for providing the nodes 102 with access to the fixed network 104. The fixed network 104 includes, for example, a core local access network (LAN), and a plurality of servers and gateway routers, to thus provide the nodes 102 with access to other networks, such as other ad-hoc networks, the public switched telephone network (PSTN) and the Internet. The network 100 further includes a plurality of fixed routers 107-1 through 107-n (referred to generally as nodes or fixed routers 107) for routing data packets between other nodes 102, 106 or 107.
As can be appreciated by one skilled in the art, the nodes 102, 106 and 107 are capable of communicating with each other directly, or via one or more other nodes 102, 106 or 107 operating as a router or routers for data packets being sent between nodes 102, as described in U.S. Pat. No. 5,943,322 to Mayor, which is incorporated herein by reference, and in U.S. patent application Ser. Nos. 09/897,790, 09/815,157 and 09/815,164, referenced above. Specifically, as shown in FIG. 2, each node 102, 106 and 107 includes a transceiver 108 which is coupled to an antenna 110 and is capable of receiving and transmitting signals, such as packetized data signals, to and from the node 102, 106 or 107, under the control of a controller 112. The packetized data signals can include, for example, voice, data or multimedia.
Each node 102, 106 and 107 further includes a memory 114, such as a random access memory (RAM), that is capable of storing, among other things, routing information pertaining to itself and other nodes 102, 106 or 107 in the network 100. The nodes 102, 106 and 107 exchange their respective routing information, referred to as routing advertisements or routing table information, with each other via a broadcasting mechanism periodically, for example, when a new node 102 enters the network 100, or when existing nodes 102 in the network 100 move. A node 102, 106 or 107 will broadcast its routing table updates, and nearby nodes 102, 106 or 107 will only receive the broadcast routing table updates if within broadcast range (e.g., radio frequency (RF) range) of the broadcasting node 102, 106 or 107. For example, assuming that nodes 102-1, 102-2 and 102-7 are within the RF broadcast range of node 102-6, when node 102-6 broadcasts its routing table information, that information is received by nodes 102-1, 102-2 and 102-7. However, if nodes 102-3, 102-4 and 102-5 through 102-n are out of the broadcast range, none of those nodes will receive the broadcast routing table information from node 102-6.
As further shown in FIG. 2, certain nodes, especially mobile nodes 102, can include a host 116 which may consist of any number of devices, such as a notebook computer terminal, mobile telephone unit, mobile data unit, or any other suitable device. Each node 102, 106 and 107 also includes the appropriate hardware and software to perform Internet Protocol (IP) and Address Resolution Protocol (ARP), the purposes of which can be readily appreciated by one skilled in the art. The appropriate hardware and software to perform transmission control protocol (TCP) and user datagram protocol (UDP) may also be included.
In an ad-hoc network 100 with the infrastructure described above, a certain number of reliable links must exist within the network infrastructure. A reliable link is defined as a connection between two nodes 102, 106 or 107 within the network 100 that provides bi-directional data exchange capability that does not exceed a specified bit error rate (BER) threshold. Specifically, a minimum number of reliable links must exist within the network 100 in order to seed the network 100 with the multiple paths allowing a communication to reach a destination node 102, 106 or 107 from any originating 102, 106 or 107 within the network 100. Additionally, a number of reliable links are required to provide service in the absence of subscriber routing resources, which would typically act as routers to a destination. Furthermore, a number of reliable links allows the capability to provide a specified quality of service required by the subscriber to deliver data, voice, or video.
However, as can be appreciated by one skilled in the art, links within the network 100 may be intermittent, unidirectional or constantly varying. That is, as discussed above, the infrastructure of the network 100 includes significant routing resources, namely, nodes 102, 106 and 107, which are either permanently mounted or slowly moving. For example, LAPs or fixed routers 107 are generally mounted in stationary positions, such as on buildings, towers, billboards, and so on, while certain mobile nodes 102 may be mounted on slow moving objects, such as cruise ships and so on.
FIG. 3 is a flowchart illustrating an example of operations performed by an embodiment of the present invention to identify reliable infrastructure links using bit error rate (BER) measurements and thereafter, to maintain the status of each selected link between nodes, namely, nodes A and B, which can be any of the type of nodes 102, 106 and 107 discussed above. The selection criteria are based upon bit error rates determined from periodic routing advertisements sent from one node to another. As can be appreciated by one skilled in the art, the bit error rate in a digital transmission is defined as the percentage of bits with errors divided by total bits transmitted, received or processed over a given time.
For purposes of this discussion, the flowchart shown in FIG. 3 will be described with regard to one link between nodes A and B. However, this process can be performed for all links between node A and other nodes within the broadcast range of node A, as communication of routing advertisements occur between node A and those nodes. This process is also performed by each of the nodes in the network 100 in relation to their respective neighboring nodes. It should be also noted that although for exemplary purposes these operations are described as being performed by the controllers 112 of the nodes involved, the operations can be performed by any suitable components of the nodes, or remotely from the nodes by any other suitable components in the network 100.
In step 1000, the controller 112 of node A detects whether a routing advertisement (RA) has been received from node B. It should also be noted that instead of an actual RA, the controller 112 of node A can detect for receipt of any regularly expected transmission from node B, which is not necessarily a routing advertisement. As can be appreciated by one skilled in the art and as discussed above, node B's routing advertisements can include information regarding the node's neighbors (in this example, node B's neighbors), as well as node B's location and the best routes for reaching node B. As node B moves, node B broadcasts routing advertisements to nodes within its broadcast range to update the routing tables of those nodes with this information. Also, as discussed in more detail below, the routing advertisement from node B includes a “good link verification bit” which is either set (e.g., “1”) or unset (e.g., “0”) and indicates whether the link from node A to node B is a reliable link.
If a routing advertisement (or other regularly expected transmission from node B) has not been received from node B within the infrastructure timeout period in step 1010, the controller 112 of node A removes node B from node A's list of neighbors in node A's memory 114 and the processing returns to step 1000. A typical timeout period would be several seconds, for example, 5–10 seconds or even several minutes, but can be any suitable length of time. The length of the timeout period generally depends on how aggressive the network 100 is about deleting nodes from the route table. This is dependant on the inter arrival rate of the routing advertisements, and ideally, node A would need to miss several RAs from node B in a row, for example, at least 5 RAs in a row, for the controller 112 of node A to consider that node B is no longer a neighbor node, due to the fact that broadcast messages in a busy CSMA/CA radio can frequently be missed due to packet collisions. The number of permitted missed RAs (or other regularly expected transmissions) will be higher if the link is not expected to ever quickly degrade due to failure, or other interference, and lower if it is expected to quickly degrade.
However, if a routing advertisement has been received from node B within the infrastructure timeout period, in step 1020, the controller 112 of node A calculates the bit error rate (BER) for the data on the link from node B to node A, and calculates an aggregate value representing an aggregate of the BERs for routing advertisements (or other regularly expected transmissions) over a period of time. The aggregate can include any suitable number of received RAs (or other messages) which is believed to provide a reasonable indication of the quality of the link, and can be set based on how aggressively that a link should be identified as reliable or unreliable. For example, the controller 112 of node A can start calculating the value representing the aggregate BER upon receiving the first message from node B, but it can take around 10 or more messages to determine a reasonable indication of the link quality. For each good message received, the controller 112 adds a fixed amount to the aggregate value, and for each bad message (too many bit errors) subtracts a fixed amount from the aggregate value. A typical suitable BER is at or about 10−4 for a wireless system capable of providing a ‘high’ quality of service. The amount of good and bad messages eventually balances out as an average over time, and this average indicates whether the link quality is acceptable or unacceptable. This history-based or average-based link quality, based on bit errors, can be achieved using any message received from that neighbor (node B) whether that message has been broadcast to all nodes within range of node B, or unicast specifically to node A. The reason one (or even two or three) message from node B is typically not a sufficient indicator of link quality is that bit errors can occur occasionally due to extraneous conditions such as interference, packet collisions, or other causes of errors in a transmission which are not indicative of the overall quality of the link. Nevertheless, for purposes of this embodiment of the invention, the number of received messages used to determine the aggregate value can be any suitable amount from a single message to several tens or more. It should be further noted that this determined value for the given neighbor (i.e., node B) for which the controller 112 of node A is calculating this value is based only on the messages received from that neighbor. However, this process can be simultaneously occurring for any number of neighbors of node A.
During step 1020, the controller 112 of node A also determines whether the RA (or other regularly expected transmission) received from node B includes a message, such as a set “good link verification bit”, indicating that a reliable link exists for sending messages from node A to node B. That is, the bit is “set” (e.g., has a value of “1”) by the controller 112 of node B when the aggregate value representing an aggregate BER of a suitable number of messages, such as RAs, previously sent from node A and received by node B over a link from node A to node B over a period of time, is below the threshold, and is unset (e.g., has a value of “0”) when the aggregate BER is above the threshold. These operations performed by the controller 112 of node B for calculating the aggregate value for messages being received by node B from node A is similar to that described above, and is explained in more detail below.
The processing then proceeds to step 1030 where the controller 112 of node A determines whether the aggregate BER, as represented by the aggregate value for the data (e.g., the RA) and a desired previous amount of data (e.g., previous number of RAs) sent on the link from node B to node A, is below a desired threshold. A typical suitable BER threshold is at or about 10−4 for a wireless system capable of providing a ‘high’ quality of service. In this example, because the controller 112 adds to the aggregate value upon receipt of a “good” message (i.e., message received with acceptable BER) and subtracts from the aggregate value upon receipt of a bad message, the controller 112 compares the aggregate value to a predetermined value. If the aggregate value is at or above the predetermined value, this indicates that the aggregate BER is below the desired threshold BER. However, if the aggregate value is below the predetermined value, this indicates that the aggregate BER is above the desired threshold BER. Naturally, the controller 112 can be configured to use any suitable methodology to examine the BERs of the received messages and to determine whether the aggregate of those BERs meets a suitable BER level indicative of a reliable link.
Also in step 1030, the controller 112 of node A determines whether the “good link verification bit” is “set” in the RA (or other regularly expected message) received by node A from node B. Verifying that the “good link verification bit” is set indicates that as a minimum, step 1050 (discussed below) was performed by node B as discussed in more detail below. If the “good link verification bit” has been set in the received RA and the aggregate BER of the received data and the previously received data is determined to be below the threshold value in the manner described above, the processing proceeds to step 1040 where the controller 112 of node A determines that a reliable bi-directional link exists between nodes A and B. Also in step 1040, the controller 112 of node A will add node B to node A's list of neighbors stored in node A's memory 114, thus indicating that the bi-directional link between nodes A and B has been found to be a reliable infrastructure communication link, providing bi-directional data exchange capabilities that do not exceed a specified bit error rate threshold value.
The processing then proceeds to step 1050 where the controller 112 of node A sets the “good link verification bit” in the routing advertisements sent by node A. Hence, all nodes within node A's broadcast range, including node B, which receive the routing advertisements will recognize that a reliable link exists between node B and node A. The processing then returns to step 1000.
However, if it is determined in step 1030 that either the “good link verification bit” has not been received by node B or the aggregate BER is greater than the threshold value, the processing proceeds to step 1060 where the controller 112 of node A will remove node B from node A's list of neighbor nodes. In step 1070, even though node B is removed from node A's neighbor node list in step 1060 because the “good link verification bit” provided in the RA from node B was not set (thus indication that the link from node A to node B is unacceptable), if the aggregate BER is below the threshold value, the controller 112 of node A recognizes the link from node B to node A to be a reliable unidirectional link. Accordingly, the processing proceeds to step 1050 whether the controller 112 of node A sets the “good link verification bit” in future routing advertisements sent by node A. The processing then returns to step 1000 and is repeated.
However, if it is determined in step 1070 that the aggregate BER is not below the threshold value, the controller 112 of node A does not set or clears the “good link verification bit” in step 1080, and the process returns to step 1000 and repeats.
It should be clarified that the above process is performed independently on all nodes. That is, node B performs the above process with regard to node A and node B's neighboring nodes, and so on. Accordingly, as discussed above, the controller of node B sets the “good link verification bit” in its RA message (i.e., the message received by node A as discussed above) which verifies that the link from node A to node B is a reliable link if the RA node B has previously received from node A has an aggregate BER below the desired threshold.
In other words, the “good link verification bit” is only used to signal back to a transmitting node that an RA was received by a receiving node such that the aggregate BER for that RA (or other messages) and a suitable number of previously received RAs (or those other messages) is below a certain threshold. So a typical scenario can be as follows: Node A sends an RA (or other regularly expected message) to node B, and node B performs the steps shown in FIG. 3 to measure the aggregate BER. If the aggregate BER is below a certain threshold, node B sets the “good link verification bit” in the next RA sent back to node A (and to any other nodes in its broadcast range). Node A measures the aggregate BER in the RA from node B to node A (this is where the process beginning at step 1000 discussed above is performed by node A). If the controller 112 of node A determines that the “good link verification bit” is set and the aggregate BER is below a certain threshold (see step 1030 discussed above), node A determines that a reliable bi-directional link exists between node A and node B. Node A can now set the “good link verification message” bit in messages sent to node B.
As can be appreciated from the above this entire process for verifying that a suitable bidirectional link exists between nodes A and B requires a minimum of three transmissions between nodes A and B. For example, an RA is from node A to node B, an RA is sent from node B to node A including a set “good link verification bit” indicating that a reliable unidirectional link exists from node A to node B, and another RA is sent from node A to node B indicating that a reliable bi-directional link exists between nodes A and B. However, as a practical matter the number of RAs exchanged between nodes A and B to establish suitable aggregate BERs will require the exchange of a greater amount of messages, for example, several tens of messages or possibly more.
As will be appreciated by one skilled in the art, the embodiment described above provides several advantages over conventional link quality measuring techniques. For instance, reliable links are selected using BER measurement data, which is an absolute indicator of real-time link quality. On the contrary, received signal strength measurements, which are typically used as link quality indicators, may vary significantly from unit to unit due to variations in manufacturing processes and component tolerances. Additionally, unreliable links, which may experience difficulty in exchanging link quality information, may simply be ignored.
Furthermore, since the emphasis in the embodiment shown is on selecting reliable links, link quality data can be readily exchanged between nodes, yielding fast reliable fast link selection. Finally, the acceptable link quality threshold is programmable, in that BER threshold values may be configured at levels which vary for service classes provided.
Although only a few exemplary embodiments of the present invention have been described in detail above, those skilled in the art will readily appreciate that many modifications are possible in the exemplary embodiments without materially departing from the novel teachings and advantages of this invention. Accordingly, all such modifications are intended to be included within the scope of this invention as defined in the following claims.

## Claims

1. A method for determining the reliability of a bi-directional communication link between nodes in an ad-hoc communication network, comprising:
receiving at a first node data sent by a second node over a link from said second node to said first node, said data sent by said second node including an indication as to the reliability of a link from said first node to the second node based on a measure of at least one previous message that said second node received from said first node;
determining a bit error rate (BER) at which said first node received said data; and
determining that a bi-directional link between said first and second nodes meets a desired criteria when a value determined based on at least said BER meets a desired condition and said indication indicates that the reliability of the link from said first node to said second node is at least at an acceptable level.

2. A method as claimed in claim 1, wherein:
said value is based on an aggregate of said BER and a plurality of BERs at which a plurality of other data are received by said first node from said second node over said link during a period of time prior to that at which said first node receives said data.

3. A method as claimed in claim 1, wherein:
said ad-hoc communication network is a multihopping wireless communication network in which said nodes communicate such that each of said nodes including said first and second nodes, is operable as a router to route packets it receives that are destined to a different one of said nodes to that different one of said nodes; and
said data is a routing advertisement transmitted by second node, the routing advertisement includes routing advertisement data indicating at least one node which is a neighboring node of said second node and for which said second node is operable as a router to route packets from said at least one other node destined to another node.

4. A method as claimed in claim 1, wherein:
said value of said BER meets said desired condition when said value is below a threshold value.

5. A method as claimed in claim 1, wherein:
said indication is a good link verification bit that is at a first status when said link from said first node to the second node is at least at the acceptable level and is at a second status when said link from said first node to said second node is below the acceptable level.

6. A method as claimed in claim 1, wherein:
said measure of said previous message is a determination that a BER at which said second node received said at least one previous message meets said desired condition.

7. A method as claimed in claim 1, further comprising:
controlling said first node to transmit a message including information indicating that said bidirectional link meeting said desired criteria exists.

8. A computer-readable medium of instructions for controlling nodes in an ad-hoc communication network to determine the reliability of a bi-directional communication link between said nodes, comprising:
a first set of instructions, adapted to control a first node to receive data sent by a second node over a link from said second node to said first node, said data sent by said second node including an indication as to the reliability of a link from said first node to the second node based on a measure of at least one previous message that said second node received from said first node;
a second set of instructions, adapted to control said first node to determine a bit error rate (BER) at which said first node received said data; and
a third set of instructions, adapted to control said first node to determine that a bi-directional link between said first and second nodes meets a desired criteria when a value determined based on at least said BER meets a desired condition and said indication indicates that the reliability of the link from said first node to said second node is at least at an acceptable level.

9. A computer readable medium of instructions as claimed in claim 8, wherein:
said value is based on an aggregate of said BER and a plurality of BERs at which a plurality of other data are received by said first node from said second node over said link during a period of time prior to that at which said first node receives said data.

10. A computer-readable medium of instructions as claimed in claim 8, wherein:
said ad-hoc communication network is a multihopping wireless communication network in which said nodes communicate such that each of said nodes, including said first and second nodes, is operable as a router to route packets it receives that are destined to a different one of said nodes to that different one of said nodes; and
said data is a routing advertisement transmitted by the second node, the routine advertisement includes routing advertisement data indicating at least one node which is a neighboring node of said second node and for which said second node is operable as a router to route packets from said at least one other node destined to another node.

11. A computer-readable medium of instructions as claimed in claim 8, wherein:
said value of said BER meets said desired condition when said value is below a threshold value.

12. A computer-readable medium of instructions as claimed in claim 8, wherein:
said indication is a good link verification bit that is at a first status when said link from said first node to the second node is at least at the acceptable level and is at a second status when said link from said first node to said second node is below the acceptable level.

13. A computer-readable medium of instructions as claimed in claim 8, wherein:
said measure of said previous message is a determination that a BER at which said second node received said at least one previous message meets said desired condition.

14. A computer-readable medium of instructions as claimed in claim 8, further comprising:
a fifth set of instructions, adapted to control said first node to transmit a message including information indicating that said bi-directional link meeting said desired criteria exists.

15. A node in an ad-hoc communication network, adapted to determine the reliability of a bi-directional communication link between itself an at least one other node in the ad-hoc communication network, said node comprising:
a receiver, adapted to receive data sent by a second node over a link from said second node to said first node, said data sent by said second node including an indication as to the reliability of a link from said first node to the second node based on a measure of at least one previous message that said second node received from said first node; and
a controller, adapted to determine a bit error rate (BER) at which said first node received said data, and to determine that a bi-directional link between said first and second nodes meets a desired criteria when a value determined based on at least said BER meets a desired condition and said indication indicates that the reliability of the link from said first node to said second node is at least at an acceptable level.

16. A node as claimed in claim 15, wherein:
said value is based on an aggregate of said BER and a plurality of BERs at which a plurality of other data are received by said first node from said second node over said link during a period of time prior to that at which said first node receives said data.

17. A node as claimed in claim 15, wherein:
said ad-hoc communication network is a multihopping wireless communication network in which said nodes communicate such that each of said nodes, including said first and second nodes, is operable as a router to route packets it receives that are destined to a different one of said nodes to that different one of said nodes; and
said data is a routing advertent transmitted by the second node, the routing advertisement includes routing advertisement data indicating at least one node which is a neighboring node of said second node and for which said second node is operable as a router to route packets from said at least one other node destined to another node.

18. A node as claimed in claim IS, wherein:
said value of said BER meets said desired condition when said value is below a threshold value.

19. A node as claimed in claim 15, wherein
said indication is a good link verification bit that is at a first status when said link from said first node to the second node is at least at the acceptable level and is at a second status when said link from said first node to said second node is below the acceptable level.

20. A node as claimed in claim 15, wherein:
said measure of said previous message is a determination that a BER at which said second node received said at least one previous message meets said desired condition.

21. A node as claimed in claim 15, wherein:
said controller is further adapted to control said first node to transmit a message including information indicating that said bi-directional link meeting said desired criteria exists.