GB2413723A - Routing according to transmission delay in an ad hoc network - Google Patents

Routing according to transmission delay in an ad hoc network Download PDF

Info

Publication number
GB2413723A
GB2413723A GB0406777A GB0406777A GB2413723A GB 2413723 A GB2413723 A GB 2413723A GB 0406777 A GB0406777 A GB 0406777A GB 0406777 A GB0406777 A GB 0406777A GB 2413723 A GB2413723 A GB 2413723A
Authority
GB
United Kingdom
Prior art keywords
route
node
message
transmission
delay
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
GB0406777A
Other versions
GB0406777D0 (en
Inventor
Zhong Fan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Europe Ltd
Original Assignee
Toshiba Research Europe Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Research Europe Ltd filed Critical Toshiba Research Europe Ltd
Priority to GB0406777A priority Critical patent/GB2413723A/en
Publication of GB0406777D0 publication Critical patent/GB0406777D0/en
Publication of GB2413723A publication Critical patent/GB2413723A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/26Route discovery packet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/121Shortest path evaluation by minimising delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/24Connectivity information management, e.g. connectivity discovery or connectivity update
    • H04W40/28Connectivity information management, e.g. connectivity discovery or connectivity update for reactive routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Abstract

A method of determining a route in an ad hoc network includes the steps of sending, from a source node, a routing request message to other nodes in the network, measuring message transmission delay associated with the sending of said message, and determining, on the basis of message transmission delays, a suitable route for transmission of a packet of data. The route may be determined in accordance with the MAC delay and may be normalised with respect to packet size.

Description

24 1 3723 Routing in multi-rate wireless ad hoc networks The invention
relates to apparatus for routing in an ad hoc network, and a method of routing packets of information in an ad hoc network.
An ad hoc network is a network in which nodes are arranged for communication with neighbouring nodes, and in which there is no server or other processing entity with overall control of the network, nor is there any need for such overall control. Control of communication between nodes is conducted in a distributed manner using predetermined communication protocols. A protocol is a predetermined set of processing rules on the basis of which an action is to be carried out, thereby ensuring that devices intended to cooperate with each other, such as through communication, are able to do so as they can thus assume that devices with which they will communicate will respond in a predictable and mutually intelligible manner.
One example of a protocol required for efficient and effective communication between two devices in an ad hoc network, is a routing protocol. A routing protocol provides a procedure whereby a path can be determined, between nodes of the network, for communication between two nodes that may not be capable of direct communication with each other.
This is particularly important where the source and destination nodes, between which communication is to be established, are not in direct communication with each other, and wherein communication must be established by relay between intermediate nodes of network. This situation could arise, for example, if two devices are physically distantly spaced such that direct wireless communication is physically not possible, or that a specific technical incompatibility prevents such communication other than via an intermediate device. The latter situation could arise in circumstances such that a physical obstruction between the source and destination device prevents acceptable quality of service - this is a particular problem with communication in accordance with the IEEE 802.1 1 a communications protocol standard.
In a network comprising a plurality of communications nodes, where not all nodes are in communication with all other nodes, communication of a packet of data from a source node to a destination node will require use of intermediate nodes to effect communication. A sequence of nodes between a source node and a destination node is known as a path. There may be several possible paths between a source node and a destination node; it is the purpose of a routing protocol to establish, without unreasonable delay, an acceptable path amongst the available options.
A number of routing protocols have been proposed for ad hoc networks. For example, dynamic source routing (DSR) and ad hoc on demand distance vector (AODV) are described in "Ad hoc Networking" (C. Perkins, Editor, Addison Wesley, 2001). These protocols try to find the shortest path routes between pairs of source nodes and destination nodes, and are independent of underlying medium access control (MAC) and physical layers.
IEEE standards 802.11 a and 802.1 lb define MAC protocols providing a multi-rate capability. A multi-rate capability within an ad hoc network enables transmissions to take place at a rate selected from a number of permitted options. The actual transmission rate employed depends on channel conditions. When the signal to interference and noise ratio (SINR) is sufficiently high, higher data rates can be employed, whereas when SINR is degraded in any way, a lower rate can be selected for use. With 802.1 la, the possible data rates are 6, 9, 12, 18, 24, 36, 48 and 54 Mbps. On the other hand, for the 802.1 lb MAC protocol the available data rates are 1, 2, 5.5 and 1 1 Mbps.
However, the method by which a particular transmission rate is to be selected is not specified in the above referenced IEEE standards relating to the 802.11 protocols. As a result, several protocols have been proposed for automatic selection of a transmission rate in a multi-rate network. The most commonly used protocol is Lucent WaveLAN's auto rate fullback (ARE), which uses link level ACK frames. An ACK frame is an acknowledgement from a destination node, and receipt of an ACK frame presents an indication to a recipient node that a recently transmitted packet of data was successfully received.
Each node increases its rate after a number of consecutively received ACK frames.
This is because this would indicate to the node that a corresponding number of packets of data had been successfully delivered to a destination, therefore implying that the channel for transmission of packets of data is sufficiently good to enable effective transmission; to take advantage of this relatively high quality data transmission channel, the node increases the transmission rate.
Conversely, a node would revert to lower transmission rates after consecutive transmission failures. By means of this increasing and decreasing of the transmission rate in response to successful transmission history or otherwise, the rate of transmission may be controlled with regard to a desired quality of service.
Implementation of ARF is straightforward, because it is purely senderbased and requires no modification to the 802.11 standard. In order for the network to continue to operate, there is no obligation for every node in an ad hoc network to adopt ARF. Thus, any node could be introduced with ARF without any assumption as to the operation of other nodes in the system. Therefore, the ARF technique is a way of implementing routing in a single node in a network, and does not necessarily provide the same routing technology in each node in the network.
ARF is described in further technical detail in the paper entitled "WaveLAN-II, A High Performance Wireless LAN for the unlicensed band" (A Kamerman and L Monteban, Bell Labs Technical Journal, Summer 1997, pages 1 18 to 133).
Ad hoc routing protocols that have been used extensively in the past have been based on shortest path algorithms, or determination of minimum hop count, i.e. the minimisation of the number of intermediate nodes between a source node and a destination node in an ad hoc network.
However, routes selected by such algorithms often involve long distance links with low data rates. One algorithm that can be used is a "lowest hop-count" algorithm, also known as a "shortest path algorithm", which seeks identification of a route in a network between a source node and a destination node with the lowest number of intermediate relaying nodes (i. e. the lowest number of "hops" between nodes). Such an algorithm will favour a long distance link connecting two relatively distantly spaced nodes, as opposed to a series of high rate links involving a large number of intermediate nodes.
This may be undesirable, as it can lead to ineffective long distance nodes being used, which will have a negative impact on transmission speeds.
Due to this tendency to use long distance links, which may have lower data rates than shorter links to adjacent nodes, a method of determining a route within an ad hoc network which implements an algorithm such as that described above can result in lower throughput of data and increased packet delay.
However, as an alternative to using long distance links with low data rates, selecting a route, between a source node and a destination node, which employs many short hops between intermediate nodes may also be undesirable. Using too many short hops in a route between two nodes can also be detrimental to the performance of an ad hoc network. Each hop in a route results in demand on resources in the network, thus a multi-hop route can place substantial processing burden on the network as a whole.
It is thus desirable to provide a process and apparatus that is able to determine a route between a source node and a destination node, to ensure that, on the one hand, a route does not unnecessarily favour longer links and thus suffer slower data transfer rates, but on the other hand avoids overly complex and circuitous routes employing many short links individually capable of transferring data at relatively high rates but leading to processing overhead.
"Multi-rate Aware routing protocol for mobile ad hoc networks" (Y. Seok et.al., IEEE VTC-Spring, Jeju, Korea, April 2003) describes a multi-rate aware sublayer (MAS) to find high data rate links. The MAS layer is situated between the MAC and the network layers within the communications protocol, and is required to keep account of state information for neighbouring nodes. This introduces additional control overhead in comparison with simpler arrangements.
Further, the selection of a route through an ad hoc network is determined by a node identifying the next hop for transmission of a data packet by means of available data rates. The relationship between the rate for transmission of data between a source node and a relay node (a relay node being a neighbour of the source node) (rSR), the rate of transmission between the relay node and the destination node (rRD), and the rate of transmission between the source node and the destination node (rSD) is set out in equation 1 below: _ + 1 < 1 rsR rRD rsD ( l) However, this does not take account of the fact that, for the 802.1 I MAC protocol, packet transmission time is not only related to data rate, but is also related to substantial control overhead (for example RTS, CTS, IFS and back off), and packet size.
Therefore, the present invention aims to provide a process for providing a route through an ad hoc network for the transmission of a packet of data from a source node to a destination node taking account of further criteria other than transmission rate between nodes in the ad hoc network.
According to one aspect of the invention, this issue is addressed by providing a facility for routing through an ad hoc network taking account of the undesirability of using long distance links with low data rates, but also taking account of the need to manage resources within an ad hoc network by taking account of the number of intermediate nodes employed for transmission between any particular source node and destination node.
According to another aspect of the invention, a method of determining a route in an ad hoc network includes the steps of sending, from a source node in an ad hoc network, a routing request message to other nodes in the network, measuring, on the basis of the act of sending, a message transmission delay associated with the sending of a message, and determining, on the basis of transmission delays, a suitable route for transmission of a packet of data.
According to a further aspect of the invention, a method of determining a route for transmission of data from a source node to a destination node in an ad hoc network comprises causing a route determination message of known size to be sent by said source node to neighbouring nodes, measuring a quantity representative of time taken for said message to transmit to said destination node over one or more available routes and, on the basis of said measurements, selecting a route for transmission of data.
Preferably, the step of measuring comprises the step of identifying MAC delay at a source of a route determination message.
In a preferred embodiment, MAC delay between a node and an adjacent node is determined by measuring the duration between said node sending a packet and the time of receipt of an acknowledgement message from said adjacent node.
Conventionally, a node periodically monitors its traffic and thus has MAC delay measurements available for use in the process according to the present invention.
In a preferred embodiment, the process of selecting a route from available routes, taking account of measurements representative of delay in transmitting data through a node, comprises comparing sums of said measurements for respective identified routes and determining the route with the lowest total delay measurement, said route being selected for use in transmitting data.
According to another aspect of the invention, in a node of an ad hoc network, a method of handling a route determination message sent by a source node for seeking a route to a destination node, comprises identifying whether said node is identified in said message as said intended destination node and, on the basis that said node is said destination node, sending a route reply message back to a node from which said route determination message was immediately received, said route reply message providing a facility for recording the route by which the route request message reached the destination node and the corresponding transmission delay.
Preferably, said method of handling a route determination message further responds to receipt of said message in the even that said node is not said identified destination node, by relaying said message to further nodes of said ad hoc network.
The step of relaying said message may include sending said message to all nodes in communication with said present node, except to the node from which said message had been received.
Preferably, the route request message comprises identification of the source node from which the route request message originates, identification of the destination node intended for transmission of a packet of data, means for storage of delay information relating to successive relaying of the message from node to node, and means enabling the recording of route information, for use in sending a route reply message back to said source node.
In a preferred embodiment, the means enabling the recording of route information, for use in sending a route reply message back to said source node, comprises means for recording in said route request message identification of each node by which said message is passed on route to said destination node.
In another embodiment, said means enabling the recording of route information comprises means for identifying said route request message which, in use, is recorded by a node along with routing information concerning the immediate source of said route request message which, on subsequent receipt by the node of a route reply message corresponding with said route request message, enables routing of said route reply message back to the immediate source of said route request message.
A specific embodiment of the invention will now be described, by way of example only, with reference to the accompanying drawings in which: Figure 1 illustrates a wireless ad hoc network comprising a number of computerised communication nodes, each node being in communication with at least two others; Figure 2 illustrates schematically the process of sending a packet of information from a source node to a destination node with which it is in direct communication, within the network illustrated in Figure 1; Figure 3 illustrates schematically a communications node illustrated in Figure 1; Figure 4 illustrates a routing unit of the communications node illustrated in Figure 3; Figure 5 illustrates a route request packet generated by a route request message generation unit of the routing unit illustrated in Figure 4; Figure 6 illustrates a route reply packet generated by a route request handling unit of the routing unit illustrated in Figure 4; Figure 7 illustrates a flow diagram setting out a process performed by the route request message generation unit illustrated in Figure 4 for the generation of a route request prior to the transmission of data from a source node to an intended destination node along the determined route; Figure 8 illustrates a flow diagram setting out a process performed by a route reply receiving unit of the routing unit illustrated in Figure 4, on initialization in the process illustrated in Figure 7; Figure 9 illustrates a flow diagram setting out a process performed by a route request handling unit of the routing unit illustrated in Figure 4, on receipt of a route request packet as illustrated in Figure 5; Figure 10 illustrates a flow diagram setting out a process performed by a route reply relaying unit of the routing unit illustrated in Figure 4 on receipt of a route reply packet as illustrated in Figure 6; and Figure 11 illustrates a flow diagram setting out a process of determining a best route from stored route reply packets resulting from the sending of a route request packet in the process illustrated in Figure 7.
As illustrated in Figure 1, an ad hoc communications network 10 of the illustrated example comprises five communications node 20 (distinguished by letters A to E in Figure 1). Communications links 22 are established between the nodes 20 to form the ad hoc network 10. The maximum transmission rates of the communications links 22 are set out in Table 1, which lists the nodes between which links are defined and their respective maximum transmission rates:
Table 1
1 Link l R\TE/Mbps NODE NODE l l Lo l B l L2 C 1 L3 24 A D L4 24 B Ls 24 B E 1 24 1 C From the above description of the operation of a "lowest hop count" algorithm, it can be seen that the determination of a route using a shortest path routing protocol is likely to lead to an unsatisfactory result. A "lowest hop count" routing protocol, to find a communications path between a source node (in this example node A) and a destination node (in this example node C) will select the route A-B-C, as this has the minimum number of hops or intermediate relaying nodes.
However, taking account of the transmission rates identified in the above table, it is evident that a route comprising A-D-B-E-C can be determined which consists of higher data rate links, and can achieve higher throughput of data if chosen. This latter route involves a higher hop count, and so its selection would require the overriding of an aspect of a routing protocol that relied upon hop count for route selection.
The described embodiment thus takes account of transmission delays in determining the most appropriate route for selection. This is achieved by using measured MAC delay as a measure when choosing high throughput routes. MAC delay gives an indication of areas of an ad hoc network susceptible to data transmission congestion and measure link interference.
The MAC delay of a packet of data represents the time taken to send the packet between a transmitter and a receiver, including the total deferred time as well as the time to fully acknowledge the packet. Figure 2 illustrates a timing diagram to explain this in further detail.
From the left of the timing diagram, an application within a node to act as the transmitter of information passes a packet of information for transmission in a transmission protocol, at a time Is, following which the transmission protocol processes the packet for transmission and then sends the packet to the receiver node. The receiver node, on receipt of the packet, generates an acknowledgement message to be sent back to the transmitter node. The acknowledgement message is sent back to the transmitter node, and the message is received by the transmitter node at a time tR.
Thus the time at the source node between the act of passing to the MAC layer a packet of data for transmission, and the receipt of a message from the intended recipient node that the packet has been received, is the MAC delay (MD), i.e.: MD = tR - ts (2) In order to monitor traffic, a node habitually records its MAC delay, so that there is a referable example reading of MAC delay available for later analysis.
However, it is worth noting that the determination of MAC delay in the manner suggested by equation 2 depends on the size of the packet concerned. To take account of this, the delay measurement is, in the present embodiment, made independent of packet size. This is achieved by normalising the packet as will be described in further detail with regard to the specific operation of the described embodiment of the invention.
Figure 3 illustrates one of the communications nodes 20 in further detail. The communications node 20 comprises a processor 24 operable to execute machine code instructions stored in a working memory 26 and/or retrievable from a mass storage device 28. By means of a general purpose bus 25, a user input/output unit 30 is in communication with the processor 24. The user input/output unit 30 enables receipt of input signals resulting from user input action, and the output of information to a user, such as to a display or an audio output device.
In the illustrated example, the working memory 26 stores user utilities 40 for establishing a user interface to enable communication with a user, and a routing unit 42 which is operable to configure the communications node 20 to establish, via communications hardware 23 and an antenna 21, a communications link 22 with one or more of the other nodes in the network.
In use, the communications node 20 operates in communication with other communication nodes 20 of the ad hoc network 10 as illustrated in Figure 1. In particular, a user utility 40 will, from time to time, require the transmission of a packet of information to another node 20. To enable this to be effected, the user utility 40 passes a message to the routing unit 42, that such a message is to be passed, detailing the intended destination node 20.
Figure 4 illustrates features of the routing unit 42 in further detail. The routing unit 42 comprises a route request message generation unit 50 which, on initiation by a message received from a user utility, will generate and send out a route request packet intended to find a route to a specified destination node. A route reply receiving unit 52 is operable to receive replies from nodes in the network to a route request packet. A route determination unit 54 is used to determine, on the basis of information received by the route reply receiving unit 52, the most suitable route for transmission of data from the present node to the desired destination.
In order to enable the routing unit 42 to operate in the network to process routing requests generated by other nodes, a route request handing unit 56 is provided to receive and process route request packets, and a route reply relaying unit 58 is operable to do the same with route reply packets 70 ultimately intended for other source nodes 20.
The structure of a route request packet 60, as illustrated in Figure 5, will now be described in further detail. The route request packet 60 comprises source node identification data 62 and destination node identification data 64, and a routing information storage unit 66. A unique packet identification field 68 allows maintenance of the distinction between different route request packets passing through the system at any time.
The routing information storage unit 66 is initially empty, as it stores information relating to each link along which the packet 60 passes on its passage to the destination node identified in the destination node identification data 64. Each entry in the routing information storage unit 66 details the previous node, i.e. the node 20 from which the route request packet 60 had been received, and MAC delay information corresponding to the transmission of the packet from the previous node.
As the route request packet 60 is passed through each intermediate node 20 in the network 10, the routing information storage unit 66 is updated to include an entry for the intermediate node 20 and the corresponding MAC delay (already measured and stored as note above). Thus, as the packet 60 passes through a number of the communications nodes 20, a corresponding number of entries will be placed in the routing information storage unit 66.
The route reply packet 70, as illustrated in Figure 6, similarly comprises source node identification data 72 and destination node identification data 74, and a routing information storage unit 76. A unique packet identification field 78 allows maintenance of the distinction between different route request packets passing through the system at any time.
The data in the route reply packet 70 corresponds to the data held in a route request packet 60 received by the destination node 20 identified in the destination node identification data 64 thereof. Thus, the routing information storage unit 76 stores entries relating to each node through which the route request packet 60 passed on its way to the destination node 20.
The entries in the routing information storage unit 76 of the route reply packet 70 are used by a route reply handler to relay the route reply packet 70 back to the intended source node, in the absence of any stored information in a node as the architecture of the ad hoc network.
With reference to Figures 7 to 11 of the drawings, operation of communication nodes 20 in the network 10, in the identification and control of routes between source nodes and destination nodes, will now be described.
Figure 7 illustrates the process whereby the route determination unit 54 in a source node generates and sends out a route request packet 60, and is then prepared for responses to the route request packet 60. This is carried out in order to prepare the source node for the determination of a route by which a packet of data will be sent. In step S 1 -2 of the process, the route request packet 60 is assembled as shown in Figure 5, identifying the present node 20 as the source node, to be stored in the source node identification space 62, the intended destination node to be identified in the destination node identification space 64, and initialising a routing information storage unit 66.
The route request packet 60 prepared in step S 1 -2 is then sent out, by the communications node 20 in step S 1 -4, to all neighbours of the present node. In the illustrative example of Figure I, if node A is the node under consideration as the source node, then the route request packet would be sent to node B and D. Then, in step S1-6, the route reply receiving unit 52 of the routing unit 42 is initialized.
On initialization of the route reply receiving unit 52, the route reply receiving unit 52 is then configured to operate according to the process illustrated in Figure 8.
In step S2-2 of the process illustrated in Figure 8, the route reply receiving unit 52 is operable to wait for, and then store a route reply packet 70 received from the destination node 20 identified in the route request packet 60. For convenience, the route reply receiving unit 52 may store the first route reply packet 70 in the mass storage unit 28 of the communications node 20.
Then, in step S2-4, a time-out period of predetermined duration is initialized, and is measured as a background task until a time-out event occurs at completion of the time- out period. In this embodiment, the network is medium sized and with current service levels, the round trip for passage of a small packet of data such as a route request packet will be of duration of the order of 20ms. As a result, it is reasonable to expect that all suitable route reply packets will have been received within 100ms.
By setting a time-out period of 100ms, the possibility is reduced that usable route reply packets are rejected for arriving too late back at the source node. Further, such a route reply time out period is not inappropriately long that the performance of the routing process causes performance cost in terms of delays in determining a route.
During progress of the time-out period, each time a route reply packet 70 is received by the route reply receiving unit 52, a step is executed, in step S2-6 as illustrated in Figure 7, whereby the received route reply packet 70 is stored in memory and also, as with the first route reply packet 70, can be stored in mass storage units 28.
This step is performed for each route reply packet 70 received before the time out event takes place, as indicated in Figure 7. On completion of the time out period, the procedure continues, in step S2-8, by the route reply receiving unit 52 initialising the route determination unit 58 to determine the best route from the stored route reply packets 70. The manner in which this is carried out will be described in due course.
The procedure then ends. Figure 9 illustrates a procedure carried out by a communications node 20,
and in particular, the route request handling unit 56 in a routing unit 42 of a communications node 20, as illustrated in Figure 2, on receipt of a route request packet 60 from another communications node. The procedure assesses whether the route request packet 60 is requesting a route to the present node as a destination node, or whether the route request packet 60 needs to be relayed to further nodes of the network 10 within which the present communications node 20 is situated. On the basis of this assessment, the procedure causes actions to take place either to generate a route reply packet 70 or to pass the route request packet 60 to further communications nodes 20.
The procedure commences in step S3-2, by checking the destination data 64 held in the route request packet 60 to determine if the route request packet 60 represents a request for transmission to the present node 20.
If the present communications node 20 is the requested destination then, in step S3-4, a route reply packet 70 is generated as illustrated in Figure 6, carrying across the information accumulated in the routing information storage unit 66 into the routing information storage unit 76 thereof.
In step S3-6, the last entry in the routing information storage unit 76 is looked up, to find the previous node, from which the route request packet was received, and then in step S3-10 the route reply packet 70 is sent back to the previous node 20. After execution of this step, the procedure then ends.
If the present communications node 20 is determined in step S3-2 not to be the requested destination node 20, then, in step S3- 10 the routing information storage unit 66 is reviewed to determine if an entry relating to the present node 20 already exists, and thus if the route request packet 60 has been received by the present node 20 before.
If the present node has been received before, then the procedure ends. Otherwise, in step S3-12, an entry identifying the present node is added to the routing information storage unit 66, and, in step S3-14, the MAC delay reading, already measured for use (as noted above) is also added to the routing information storage unit 66. In step S3-16, the route request packet 60 is sent on to all neighbours, and the procedure ends.
This process is particularly appropriate where sending of information is carried out on a broadcast basis, i.e. where data is sent to all neighbours as a general rule. In another embodiment, where directed transmission is available, it would be possible to alter step S3-16 so that the route request packet 60 is not sent immediately back to the previous node 20 from which the route request packet was received.
Figure 10 illustrates a procedure whereby a route reply packet 70 is sent back to the source communications node 20, via other communications nodes 20. In step S4-2, routing information storage unit 76 is searched to find the entry identifying the present node 20. Then in step S4-4, the previous node is identified, being the most recently entered node before the entry for the present node. Finally, in step S4-6, the route reply packet 76 is sent back to the identified previous node 20. The procedure then ends.
Once the route reply receiving unit 52 has completed its allotted time for receiving route reply packets 70, the route determination unit 54 is initialized, as noted previously, in step S2-8 illustrated in Figure 8. Figure 11 now illustrates operation of the route determination unit 54 in determining the most appropriate route between the source node and the destination node, from the available options identified in the received route reply packets 70.
Firstly, in step S5-2, the route determination unit 54 normalises the MAC delay timings stored in the route information storage units 76 of the received route reply packets 70.
This is achieved as follows. The measured MAC delay depends on the size of the packet. The delay of a packet to a predefined packet size is therefore normalised to make the delay measurement independent of the packet size.
For each Id, the actual time for the channel to transmit a data packet, it is known that: Td = x/C (3) where x is the size of the packet, C is the channel's bit-rate. Then: try - to - x/C = tr2 - ts2 - x2/C = MD2 - xJC (4) where x is the actual data packet size, and x2 is a predefined standard packet size which may take the value of, say, 1500 bytes or 512 bytes. From equation 4 above, we can calculate the normalized MAC delay MD2 for the standard-size packet, which is used to represent the MAC delay of a wireless link to filter out the noise introduced by the measured raw MAC delay from packets with different sizes.
After normalising all of the MAC delays, in step S5-4 the normalised delays are used to determine cumulative delays for the routes discovered and received in the route reply packets 70, for the size of the particular packet intended for transmission. Then, in step S5-6, the route determination unit 54 then chooses the route with the minimum path delay (the least sum of the delay of each hop) and in step S5-8 returns this selection as an output.
Though it will be appreciated that, in the course of being passed from one node to the next, a route request packet is progressively augmented with further data and thus increases in size, this size increase is considered insignificant and thus will not affect the MAC delay measurements taken at this time. These MAC delay measurements are thus considered to be sound basis for determining a suitable route for a much larger packet of data.
In the case that this increase in size is otherwise found to be significant, it will be appreciated that it would be possible to add further processing steps to take account of this increase in size.
In DSR, intermediate nodes reply to route requests when they have route information to the destination. This can arise if a node stores in cache memory the responses to earlier route requests. This has an advantage of reducing the propagation of flooded RREQ packets, but can cause congestion by concentrating routing load on certain nodes. To utilize the most up-to-date information when selecting routes and to minimize the overlapped routes that cause congested bottlenecks, the above described embodiment does not allow intermediate nodes to reply to route requests.
A node can detect a link breakage following the standard procedure of DSR, e.g. receiving a link layer feedback signal from MAC, or not receiving Hello packets for a certain period of time. When a route is disconnected, the immediate upstream node of the broken link sends a ROUTE ERROR message to the source of the route to notify the route invalidation. Nodes along the path to the source remove the route entry upon receiving this message and relay it to the source. The source then reconstructs a route by flooding a RREQ when informed of a broken route.
Since channel quality depends heavily on the distance between two nodes, long links often have low quality and thus operate at low rates. Minimumhop routing protocols treat all links equally and in an effort to minimise the number of hops, tend to select paths with long, slow, and less reliable links. Taking into account the multi-rate capability of 802. 11 MAC in routing, the present invention, as exemplified by the above described embodiment, allows the choice of a route that has high effective capacity and hence achieves higher throughput and lower end-to- end transfer delay, and alleviates network congestion. By reducing transmission time, the total energy consumption in the network can also be reduced.
The method described above can be combined with the opportunistic auto rate (OAR) protocol described by Sadeghi ("Opportunistic media access for multirate ad hoc networks", B. Sadeghi et. al., ACM Mobicom, 2002) to obtain even higher throughput.
The key principle of OAR is to opportunistically send multiple back-toback data packets whenever the channel quality is good. As channel coherence times typically exceed multiple packet transmission times, OAR can achieve significant throughput gains as compared to the standard ARE protocol. This alternative embodiment of the invention is receiver based and thus requires modifications to the 802.11 standard.
Although the present invention has been described by way of an example taking account of the multi-rate characteristics of transmission in an ad hoc network, to provide an effective on-demand routing protocol, the same idea can be applied to proactive protocols as well. The advantage of proactive protocols is that they can track the information as it changes via routing table updates. Given the MAC delay as a routing metric, the minimum delay path can be found using a process implementing Dijkstra's algorithm.
Whereas the embodiment described above comprises a facility already implemented in computer apparatus in an ad hoc network, it will be appreciated that the functionality so required to implement a similar embodiment of the invention may be introduced onto a general purpose computer or other computational device by means of a computer program. The introduction of this program may by means of recorded storage medium, such as magnetic or optical disk, by application specific integrated circuit connected with the general purpose computer (e.g. by means of a dongle) or as transmitted to the computer from a remote server location, such as in a Java environment. The latter may be achieved through an electronically transmitted signal, or via an electromagnetic radiation borne signal.
It should be noted that the above described embodiment is provided by way of example only, and that the invention embodied thereby is to be identified in the scope of the claims appended hereto.

Claims (23)

  1. CLAIMS: 1. A method of determining a route in an ad hoc network including
    the steps of sending, from a source node in an ad hoc network, a routing request message to other nodes in the network, measuring message transmission delay associated with the sending of said message, and determining, on the basis of message transmission delays, a suitable route for transmission of a packet of data.
  2. 2. A method according to claim I wherein the step of determining a suitable route comprises receiving information defining a plurality of possible routes from the source node to a destination node, via one or more intermediate nodes, receiving message transmission delay information for each route and selecting the route which will present the least delay for the packet to be transmitted.
  3. 3. A method according to claim 2 wherein the step of selecting a route includes the steps of normalising the transmission delay information with respect to packet size, and determining, for the size of the packet to be transmitted, specific message delay information from which the most appropriate route can be selected.
  4. 4. A method according to claim 3 wherein the process of selecting a route from available routes, taking account of measurements representative of delay in transmitting data through a node, comprises comparing sums of said measurements for respective identified routes and determining the route with the lowest total delay measurement, said route being selected for use in transmitting data.
  5. 5. A method according to any preceding claim wherein the step of determining on the basis of message transmission delay includes measuring MAC delay in the transmission of a message, and using the measured MAC delay in the determining of message transmission delay.
  6. 6. A method according to claim 5 wherein the step of measuring MAC delay between a node and an adjacent node comprises measuring the duration between said node sending a route request packet and the time of receipt of an acknowledgement message from said adjacent node.
  7. 7. In a node of an ad hoc network, a method of handling a route determination message sent by a source node for seeking a route to a destination node, comprising identifying whether said node is identified in said message as said intended destination node and, on the basis that said node is said destination node, sending a route reply message back to a node from which said route determination message was immediately received, said route reply message providing a facility for recording the route by which the route request message reached the destination node and the corresponding transmission delay.
  8. 8. A method according to claim 7 wherein, in the event that said node is not said identified destination node, relaying said message to further nodes of said ad hoc network.
  9. 9. A method according to claim 8 wherein the step of relaying said message includes sending said message to all nodes in communication with said present node, except to the node from which said message had been received.
  10. 10. A communications apparatus for inclusion in an ad hoc network including the means for sending a routing request message to other nodes in the network in order to determine a route for transmission of information to a destination node in the network, means for receiving responses to said routing request message from other nodes in said network, means for determining, on the basis of information contained in said responses, the relative transmission delays expected along routes determined in said network and means for selecting one of said routes on that basis.
  11. 11. Apparatus according to claim 10 wherein the selecting means is operable to select the route which will present the least delay for the packet to be transmitted.
  12. 12. Apparatus according to claim 11 wherein the relative transmission delay determining means includes means for normalising the transmission delay information with respect to packet size, and means for determining, for the size of the packet to be transmitted, specific message delay information from which the most appropriate route can be selected.
  13. 13. Apparatus according to claim 12 wherein the determining means is operable to determine on the basis of MAC delay in the transmission of a routing request message.
  14. 14. Apparatus according to claim 13 wherein the MAC delay between a node and an adjacent node comprises the duration between said node sending a route request packet and the time of receipt of an acknowledgement message from said adjacent node.
  15. 15. A computer readable storage medium storing computer executable instructions operable, when loaded into a computer to configure the computer to operate according to the method of any one of claims 1 to 9.
  16. 16. A computer readable storage medium storing computer executable instructions operable, when loaded into a computer, to configure the computer as apparatus according to any one of claims 10 to 14.
  17. 17. A network comprising a plurality of communications nodes, at least one of the nodes being configured to perform a method of determining a route for transmission of data to another node in accordance with any one of claims 1 to 9.
  18. 18. A network in accordance with claim 17 and wherein each communications node in the network is configured to perform a method of determining a route for transmission of data to another node in accordance with any one of claims 1 to 9.
  19. 19. A network comprising a plurality of communications nodes, at least one of the nodes being apparatus according to any one of claims 10 to 14.
  20. 20. A network in accordance with claim 19 and wherein each communications node is apparatus according to any one of claims 10 to 14.
  21. 21. A signal bearing computer executable instructions operable, when received by and loaded into a computer, to configure the computer to operate according to the method of any one of claims 1 to 9.
  22. 22. A signal bearing computer executable instructions operable, when received by and loaded into a computer, to configure the computer as apparatus according to any one of claims 10 to 14.
  23. 23. A communications network substantially as described herein with reference to, the accompanying drawings. ( ( . ( .
    23. A method of determining a route for transmission of data in an ad hoc system substantially as described herein with reference to the accompanying drawings.
    24. Apparatus for determining a route for transmission of data in an ad hoc system substantially as described herein with reference to the accompanying drawings.
    25. A communications network substantially as described herein with reference to the accompanying drawings.
    Amendments to the claims have been filed as follows CLAIMS: 1. A method of determining a route in an ad hoc network including the steps of sending, from a source node in an ad hoc network, a routing request message to other nodes in the network, measuring message transmission delay associated with the sending of said message, and determining, on the basis of message transmission delays, a suitable route for transmission of a packet of data, wherein the step of determining on the basis of message transmission delay includes measuring MAC delay in the transmission of a message, and using the measured MAC delay in the determining of message transmission delay.
    2. A method according to claim 1 wherein the step of determining a suitable route comprises receiving information defining a plurality of possible routes from the source, r, node to a destination node, via one or more intermediate nodes, receiving message transmission delay information for each route and selecting the route which will present the least delay for the packet to be transmitted. ' r r . r 3. A method according to claim 2 wherein the step of selecting a route includes the,, . steps of normalising the transmission delay information with respect to packet size, and, . determining, for the size of the packet to be transmitted, specific message delay information from which the most appropriate route can be selected.
    4. A method according to claim 3 wherein the process of selecting a route from available routes, taking account of measurements representative of delay in transmitting data through a node, comprises comparing sums of said measurements for respective identified routes and determining the route with the lowest total delay measurement, said route being selected for use in transmitting data.
    5. A method according to any preceding claim wherein the step of measuring MAC delay between a node and an adjacent node comprises measuring the duration between said node sending a route request packet and the time of receipt of an acknowledgement message from said adjacent node.
    6. In a node of an ad hoc network, a method of handling a route determination message sent by a source node for seeking a route to a destination node, comprising identifying whether said node is identified in said message as said intended destination node and, on the basis that said node is said destination node, sending a route reply message back to a node from which said route determination message was immediately received, said route reply message providing a facility for recording the route by which the route request message reached the destination node and the corresponding transmission delay.
    7. A method according to claim 6 wherein, in the event that said node is not said identified destination node, relaying said message to further nodes of said ad hoc network.
    8. A method according to claim 7 wherein the step of relaying said message includes sending said message to all nodes in communication with said present node, except to the node from which said message had been received. ', , . 9. A communications apparatus for inclusion in an ad hoc network including the, means for sending a routing request message to other nodes in the network in order to determine a route for transmission of information to a destination node in the network, means for receiving responses to said routing request message from other nodes in said network, means for determining, on the basis of information contained in said responses, the relative transmission delays expected along routes determined in said network and means for selecting one of said routes on that basis, wherein the determining means is operable to determine on the basis of MAC delay in the transmission of a routing request message.
    10. Apparatus according to claim 9 wherein the selecting means is operable to select the route which will present the least delay for the packet to be transmitted.
    11. Apparatus according to claim 10 wherein the relative transmission delay determining means includes means for normalising the transmission delay information =10 with respect to packet size, and means for determining, for the size of the packet to be transmitted, specific message delay information from which the most appropriate route can be selected.
    12. Apparatus according to any one of claims 9 to 11 wherein the MAC delay between a node and an adjacent node comprises the duration between said node sending a route request packet and the time of receipt of an acknowledgement message from said adjacent node.
    13. A computer readable storage medium storing computer executable instructions operable, when loaded into a computer to configure the computer to operate according to a method in accordance with any one of claims 1 to 8.
    14. A computer readable storage medium storing computer executable instructions operable, when loaded into a computer, to configure the computer as apparatus in accordance with any one of claims 9 to 12.
    15. A network comprising a plurality of communications nodes, at least one of the nodes being configured to perform a method of determining a route for transmission of. . data to another node in accordance with any one of claims I to 8.
    16. A network in accordance with claim 15 and wherein each communications node in the network is configured to perform a method of determining a route for transmission of data to another node in accordance with any one of claims I to 8.
    17. A network comprising a plurality of communications nodes, at least one of the nodes being apparatus according to any one of claims 9 to 12.
    18. A network in accordance with claim 17 and wherein each communications node is apparatus according to any one of claims 9 to 12.
    19. A signal bearing computer executable instructions operable, when received by and loaded into a computer, to configure the computer to operate according to a method in accordance with any one of claims I to 8.
    20. A signal bearing computer executable instructions operable, when received by and loaded into a computer, to configure the computer as apparatus in accordance with any one of claims 9 to 12.
    21. A method of determining a route for transmission of data in an ad hoc system substantially as described herein with reference to the accompanying drawings.
    22. Apparatus for determining a route for transmission of data in an ad hoc system substantially as described herein with reference to the accompanying drawings.
GB0406777A 2004-03-25 2004-03-25 Routing according to transmission delay in an ad hoc network Withdrawn GB2413723A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB0406777A GB2413723A (en) 2004-03-25 2004-03-25 Routing according to transmission delay in an ad hoc network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0406777A GB2413723A (en) 2004-03-25 2004-03-25 Routing according to transmission delay in an ad hoc network

Publications (2)

Publication Number Publication Date
GB0406777D0 GB0406777D0 (en) 2004-04-28
GB2413723A true GB2413723A (en) 2005-11-02

Family

ID=32188714

Family Applications (1)

Application Number Title Priority Date Filing Date
GB0406777A Withdrawn GB2413723A (en) 2004-03-25 2004-03-25 Routing according to transmission delay in an ad hoc network

Country Status (1)

Country Link
GB (1) GB2413723A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2259510A1 (en) * 2009-06-05 2010-12-08 Net Transmit & Receive, S.L. A method for establishing a data session between a first endpoint and a second endpoint
EP2448196A1 (en) * 2010-10-29 2012-05-02 Fujitsu Limited Wireless network device, wireless network system and method of controlling selection of routings
CN107800624A (en) * 2017-10-10 2018-03-13 三峡大学 A kind of optimal circuitous path selection new method of regional protection key message

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040029553A1 (en) * 2002-08-08 2004-02-12 Harris Corporation Multiple path reactive routing in a mobile ad hoc network
WO2004023740A1 (en) * 2002-09-05 2004-03-18 Nokia Corporation Signal propagation delay routing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040029553A1 (en) * 2002-08-08 2004-02-12 Harris Corporation Multiple path reactive routing in a mobile ad hoc network
WO2004023740A1 (en) * 2002-09-05 2004-03-18 Nokia Corporation Signal propagation delay routing

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2259510A1 (en) * 2009-06-05 2010-12-08 Net Transmit & Receive, S.L. A method for establishing a data session between a first endpoint and a second endpoint
EP2448196A1 (en) * 2010-10-29 2012-05-02 Fujitsu Limited Wireless network device, wireless network system and method of controlling selection of routings
US8737206B2 (en) 2010-10-29 2014-05-27 Fujitsu Limited Wireless network device, wireless network system and method of controlling selection of routings
CN107800624A (en) * 2017-10-10 2018-03-13 三峡大学 A kind of optimal circuitous path selection new method of regional protection key message

Also Published As

Publication number Publication date
GB0406777D0 (en) 2004-04-28

Similar Documents

Publication Publication Date Title
US8537714B2 (en) Method for determining a route in a wireless mesh network using a metric based on radio and traffic load
Hassanein et al. Routing with load balancing in wireless ad hoc networks
Hu et al. Caching strategies in on-demand routing protocols for wireless ad hoc networks
Javaid Analysis and design of quality link metrics for routing protocols in Wireless Networks
CN1886942B (en) Method and system for routing traffic in AD HOC networks
Kliazovich et al. Cross-layer congestion control in ad hoc wireless networks
Saigal et al. Load balanced routing in mobile ad hoc networks
Agarwal et al. Route-lifetime assessment based routing (RABR) protocol for mobile ad-hoc networks
EP1850538B1 (en) Radio communication device, communication route control device, communication route control method, and communication system
CN1906898B (en) Method and system for efficient routing in ad hoc networks
Hanzo II et al. QoS-aware routing and admission control in shadow-fading environments for multirate MANETs
Kazantzidis et al. Permissible throughput network feedback for adaptive multimedia in AODV MANETs
Paul et al. Communication-aware mobile hosts in ad-hoc wireless network
US20120236726A1 (en) Buffer Sizing for Multi-Hop Networks
Lal et al. Bandwidth-aware routing and admission control for efficient video streaming over MANETs
KR100664919B1 (en) Method and apparatus for configuring routing path in a wireless ad hoc network
JP5716836B2 (en) Wireless multi-hop network monitoring method
Braun et al. Multihop wireless networks
GB2413723A (en) Routing according to transmission delay in an ad hoc network
Lee et al. Optimum UDP packet sizes in ad hoc networks
Ye et al. Use of congestion-aware routing to spatially separate TCP connections in wireless ad hoc networks
Derhab et al. Admission control scheme and bandwidth management protocol for 802.11 ad hoc networks
Nagtilak et al. The detection of routing misbehavior in mobile ad hoc networks using the 2ack scheme with OLSR protocol
Kazantzidis MAC intelligence for adaptive multimedia in 802.11 networks
Russell Learning-based route management in wireless ad hoc networks

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)