GB2409600A - Determining a transmission path in an ad-hoc network - Google Patents

Determining a transmission path in an ad-hoc network Download PDF

Info

Publication number
GB2409600A
GB2409600A GB0329690A GB0329690A GB2409600A GB 2409600 A GB2409600 A GB 2409600A GB 0329690 A GB0329690 A GB 0329690A GB 0329690 A GB0329690 A GB 0329690A GB 2409600 A GB2409600 A GB 2409600A
Authority
GB
United Kingdom
Prior art keywords
network
path
node
link
modified
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.)
Granted
Application number
GB0329690A
Other versions
GB2409600B (en
GB0329690D0 (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 GB0329690A priority Critical patent/GB2409600B/en
Publication of GB0329690D0 publication Critical patent/GB0329690D0/en
Publication of GB2409600A publication Critical patent/GB2409600A/en
Application granted granted Critical
Publication of GB2409600B publication Critical patent/GB2409600B/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/64Distributing or queueing
    • H04Q3/66Traffic distributors
    • 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/124Shortest path evaluation using a combination of metrics
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • 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/246Connectivity information discovery
    • 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/30Connectivity information management, e.g. connectivity discovery or connectivity update for proactive routing

Abstract

An ad hoc communications network (10) comprises a plurality of nodes (12) each capable of communication with at least another node (12). A method is provided of determining a path for transmission of data along inter-node links (14) from a source node to another node. The path is determined subject to two or more performance constraints on measurable physical quantities of communication between nodes (12). The method comprises the steps of obtaining performance measures for links (14) in the network (10) and corresponding performance constraints for the path to be determined approximating at least all but one of the performance measures to modified measures and determining the path by applying a shortest path algorithm to the network, taking account of said constraints on said modified measures.

Description

ROUTING IN AN AD HOC NETWORKING SYSTEM
This invention relates to apparatus and a method for routing within an ad hoc network.
In particular, the invention relates to managing service quality within a multi-hop ad hoc networking system.
An ad hoc network is a network in which there is no central controller and wherein communications devices in the network are arranged to be capable of communication with one or more of the other devices in the network. A mobile ad hoc network (MANET) is an ad hoc network in which a plurality of devices are capable of wireless communication with one another, and in which one or more of the devices are capable of being physically moved relative to each other. It will be appreciated that a mobile ad hoc network may include one or more relatively immobile devices, and may include such devices as will allow connection to a wider area network, such as the Internet.
A communications network is considered to possess a topology, which is a map or graph, in mathematical terms, of nodes (representing the communications devices) of the network and edges between the nodes (representing the communications links established between the devices). In an ad hoc network, and in particular in a mobile network there is no predetermined topology.
For example, in use of the network, a device may move away from another device with which it has established wireless communication, to the extent that the communications range of one or other of the devices constituting the nodes of the network is exceeded, and thus the communications link is lost. In the graph describing the topology of the network, in which vertices in the graph correspond with nodes of the network, and edges of the graph correspond with communications links in the network, an edge of the graph would need to be erased in this instance.
On the other hand, a device may be moved towards another device that was previously outside the range of reliable wireless communication, to within this range, thus enabling the establishment of a communications link between the two devices. In the graph of the topology of the network, an edge will thus be required to be inserted between the corresponding nodes.
In an ad hoc network, and in particular in a MANET, comprising a plurality of mobile communications devices, each device may be in communication with only some of the other devices of the network. This may be because of limitations on the range of wireless communication of the device in question. For example, if a mobile ad hoc network is established using Bluetooth communications technology (Bluetooth is a trade mark of Bluetooth SIC Inc.), the range, within which communication between two devices can be reliably established, is in the region of ten metros.
In these circumstances at least one communications device in the network needs to be operable to route data not intended for it but intended for other devices with which it may be directly or indirectly in communication. In other words, such a device operates as a router. A router, in such a system, will operate to receive a packet of data from a first device with which it has established communication, and will pass this packet of data to a second device, with which it has wireless communication. This second device may be the intended recipient, or may be a further router in the network, operable to pass the packet of data further towards its intended recipient device.
This routing operability is useful where, on the one hand, first and second devices of a network are not capable of direct wireless communication (whether for reasons of range, or otherwise) or, on the other hand, the quality of service available through a wireless communication link between the first and second devices is inferior to the quality of service available through using the indirect path via the intermediate device, in communication with the first and second devices and acting as a router.
Where a network is considered which comprises only three nodes, namely first and second devices not in communication with each other, and an intermediate device in communication with both of the first and second devices, it is straightforward to establish how packets of information should be transferred from the first device to the second device, as no alternative path exists.
However, in larger networks, comprising a larger plurality of devices and thus a more complex topology, there can be several alternative paths between a first device and a second device, routed via a plurality of intermediate devices.
As there is no central control of the network, and the organization and control of the communication of data between devices in the network is distributed amongst the devices, there is a requirement also for distributed control of topology and the manner in which data is passed from a first device to a second device where communication can only be effected via one or more intermediate devices.
Several disclosures set out techniques for routing information through an ad hoc network. For example, "Ad Hoc Networking" (ea. C. Perkins, AddisonWesley, 2001), US patent application 2003/028668, PCT application WO 02084956 and US patent application 2002/062388 all describe routing protocols for use in ad hoc systems. In each of these systems, a shortest path algorithm is employed. A shortest path algorithm, involving a single metric or constraint such as hop count (the number of links between nodes that a packet must traverse in order to reach its destination), is capable of being solved by a general-purpose computer appropriately configured for the purpose, in polynomial time. It is desirable that an algorithm should be capable of solution in polynomial time, as it ensures that increased complexity of the problem does not lead to extreme, and in some cases exponential, increases in solution time.
It is recognised that such systems result in an overly simplistic approach to the routing of data, which cannot take account of issues such as quality of service. Hop count is a crude measure to identify the best path between two nodes in a communications network. This may result in a less optimal path being identified than is actually achievable given further information about the network.
It is desirable to introduce further constraints into the routing optimization to enable identification of a better path. However, on introduction of further constraints, such as quality of service, into a routing algorithm, the shortest path algorithm cannot be solved in polynomial time with respect to network size; the algorithm becomes a multi constrained path (MCP) algorithm, which is NP-complete and thus cannot be solved by a standard computer in polynomial time with respect to the number of nodes in the network.
The structure of a communications protocol is commonly determined in the context of an open system interconnection (OSI) model, which defines a networking framework for implementing protocols in terms of seven layers. In a node, communication of a packet of data on a communications channel to another node, is established by passing packet of data through seven layers of processing structure within the node. Then, at the other node, a received packet of data is passed through a corresponding seven layers, in reverse, to enable handling of the data at the other node.
The structure of the OSI model is well documented. Layer 1 of the OSI model is a physical layer, which conveys data physically through the network. Thus, in a wireless network, it is implemented by means of a wireless transceiver. Directly above this, passing data for transmission and receiving data from the transceiver, is a data link layer, which encodes and decodes packets of data into bits. The data link layer is further divided into two sub layers, namely a media access control (MAC) layer and a logical link control (LLC) layer. The MAC sub layer, in use, controls the manner in which a node gains access to data in the network, and gains permission to transmit data.
The LLC sub layer controls frame synchronization, flow control and error checking of data. As such, the MAC sub-layer records information relating to the quality of service that is achievable in communications channels established by the node.
The operation of the other layers of the OSI model has no impact on the understanding of the present invention.
"Hot Spot Mitigation Protocol for Mobile Ad hoc Networks" (S. Lee & A. Campbell, IWQOS, 2003) describes communication of data in an ad hoc network using measurements such as packet loss, buffer occupancy and MAC delay. That disclosure further establishes that MAC delay is the most useful of these to identify congestion hot spots in an ad hoc network. A congestion hot spot is a portion of an ad hoc network that is highly congested and can result in increased packet loss, end-to-end delay, and out of order packets delivery. Hot spots can be transient, but can lead to disruption of communication in a wireless ad hoc network. By measuring MAC delay, the disclosure of that document identifies that a hot spot can be determined.
However, a problem with the approach taken in the disclosure by Lee and Campbell arises from the handling of the existence of a hot spot. Once a hot spot has been determined, the network, described in that disclosure, is configured to suppress communication through the hot spot, and to inhibit transmission of data to prevent further data from entering the hot spot. While this may address the immediate problem relating to the hot spot, it merely discourages the use of routes through the hot spot. It does not provide a network that is more efficient or more capable of managing and routing packets of data from one node to another. It does not actively identify paths for communication; it merely discourages use of under-resourced paths.
Accordingly, it is desirable to provide a wireless ad hoc communications network with a facility to determine, in polynomial time with respect to the number of nodes in the network, a route from a first node of the network to a second node of the network taking into account quality of service.
An aspect of the invention thus provides a communications network comprising a plurality of nodes capable of conducting wireless communications in an ad-hoc manner, the nodes each being capable of determining a path for transmission of data to another node satisfying at least two constraints, the path determination involving modification of an NP-complete MCP problem by modifying constraints to the extent that the problem becomes soluble in polynomial time. In a preferred embodiment, the constraint modification procedure is applied to at least all but one of the constraints, to reduce the order of the overall problem. Modification can take the form of mapping the constraint, and the measured quantity on which the constraint is applied, in use, to reduce the number of possible values of the constrained variable. In this way, the time expended to test compliance with the constraint is controlled.
Alternatively, modification may comprise converting a multiplicative constraint into an additive constraint, thereby enabling execution of fewer calculations in determining whether that constraint has been met.
A second aspect of the invention provides a method performed in one or more computer or communication apparatus to provide the network in accordance with the above described aspect of the invention.
A third aspect of the invention provides a communications apparatus for use in a communications network, the apparatus comprising means enabling performance of a path determination method identifying a path for transmission of data from the apparatus to a remote apparatus in the network, the apparatus including means capable of determining a path satisfying at least two constraints, the path determination involving modification of an NP-complete MCP problem by modifying constraints to the extent that the problem becomes soluble in polynomial time.
A fourth aspect of the invention provides a method of determining a communications path in apparatus for use in a communications network in the context of a plurality of constraints on measured performance variables, the method including mapping the performance constraints to a bounded set of potential values thereby simplifying the process of determining a path, and applying a path determination algorithm to the so modified constrained system.
Further aspects and advantages will become apparent from the following description of a specific embodiment and features of the invention. 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 mobile ad hoc network in accordance with this specific embodiment; Figure 2 illustrates the network of figure 1 and in which a node of the network is repositioned with respect to the other nodes of the network; Figure 3 illustrates the structure of a node of the network illustrated in figures 1 and 2; Figure 4 illustrates a nominal OSI model to illustrate a mode of operation of the networking controller of the node illustrated in figure 3; Figure 5 illustrates elements of the networking controller of the node illustrated in figure 3; Figure 6 illustrates a flow diagram of a neighbour discovery procedure executed in the network controller illustrated in figure 5; Figure 7 illustrates a flow diagram of a routing table update procedure executed in the networking controller illustrated in figure 5; Figure 8 illustrates a flow diagram of a routing procedure executed in the networking controller illustrated in Figure 5; Figure 9 illustrates a route retrieval procedure called in the routing procedure illustrated in Figure 8; Figure 10 illustrates an MCP problem conversion procedure called in the route retrieval procedure illustrated in figure 9; Figure 11 illustrates a path determination procedure called in the route retrieval procedure illustrated in figure 9; Figure 12 illustrates a complexity reduction procedure called in the path determination procedure illustrated in figure 11; and Figure 13 illustrates a relaxation procedure called in the path determination procedure illustrated in figure 11.
As illustrated in figure 1, a network 10 comprises a plurality of nodes 12. For illustrative purposes, the network 10 comprises six nodes 12 in this example. The nodes are labelled A through F. As shown in figure 1, each node 12 is connected with at least one other node, by means of wireless communications link 14, as follows: Node A is connected bidirectionally to nodes B. C and D; Node B is further connected bidirectionally to nodes C and E; Node C is further connected bidirectionally to nodes D, E and F; and Node E is further connected bidirectionally to node F. These bi-directional wireless connections are represented by opposing arrows between circles representing the nodes, in Figure 1.
The existence, or otherwise, of a wireless communications link depends upon the distance between two nodes 12, and the existence of any obstructions, and or other factors which could prevent the establishment of such a link 14. As shown in figure 1, node D and node F are placed physically too far apart to enable the establishment of a wireless link between them.
Figure 2 illustrates, by way of example, how the topology of the network can change if one of the mobile nodes is caused to change position relative to the others. The figure represents the condition of the network given that the relative position of node A with respect to the other nodes B through F is different from the relative positions of the nodes A through F in figure 1. In figure 2, node A is physically further away from node D and so a wireless communications link cannot be established between nodes A and D. It will be appreciated that this will have an impact on the routing of data between node A and D. In the physical arrangement shown in figure 1, a wireless communications link is established directly between node A and node D. Instead, in figure 2, any data to be passed from node A to node D must follow an alternative path, and must be routed via one or more of the other nodes 12.
On consideration of the hop count along the various alternative paths available to enable routing of data from node A to node D, the best alternative pathway would be to route the data via node C. This would involve the passage of data via the least nodes.
However, this does not take into account the fact that the quality of service available through using the wireless link between node A and node C may be significantly worse than that available by using the link between node A and node B. and then the link between node B and node C. Thus, the routing of data using hop count alone fails to take account of the performance characteristics of each link in the system.
The structure of a node 12 is illustrated in figure 3. Each node 12 comprises a transmitter/receiver 20 operable to transmit and receive data in a wireless manner via an antenna 22. The transmitter/receiver 20 receives data ready for transmission from, and passes data received to, a networking controller 24. The networking controller 24 is operable to convert the raw electronic data handled by the transmitter/receiver 20 into a format compatible for use with a host 26, which provides application specific operability with a user, and to receive data from the host 26 for transmission.
As illustrated in figure 3, the host 26 includes a processor 30 capable of data communication with the networking controller 24, an accessible memory 32, such as random access memory and read only memory, and mass storage memory 34, such as a magnetic or optical medium or other mass storage, relatively slow access, data storage medium.
The host further comprises a user input/output unit 36, providing facilities for a user to input data by user input action, and to output data to a user visually or audibly. In this way, the user can control operation of the node, in which the host 26 resides, and can receive information from the host 26. This information my result from processing of data received on the antenna 22 from another node 12.
The networking controller 24 is operable to establish a communications channel in the network according to the well-known open system interconnection (OSI) model as noted above. The fundamental elements of this model are illustrated further in Figure 4.
In terms of physical structure, the schematic diagram of Figure 4 corresponds with processing configuration of hardware and software aspects of the networking controller 24 and other elements of the node 12, so that the schematic diagram of Figure 4 may not correspond directly to physical hardware structure.
In that regard, the OSI model 100 comprises an application layer 102 which supports application and end user processes, in this case processes of the host 26. The application layer 102 presents communications services to the host 26, so that the host can direct communication of data with hosts of other nodes 12.
A presentation layer 104 is operable to translate data received in the application layer from an application format (as presented to the application layer by the host 26) to a network format for communication over the ad hoc network. A session layer 106 establishes, manages and terminates connections between applications such as the host 26. The session layer 106 is operable to co-ordinate network communication and overall network connection. A transport layer 108 provides means for transparent transfer of data between the host 26 on the present node 12 and in a corresponding host 26 on another node 12. It operates to recover errors in communication and in flow control, and as such is operable to ensure that data transfer is effected completely.
A network layer 110 provides switching and routing operability to the networking controller 24. The structure and operation of the components of the node 12 operating as the network layer 110 will be described in further detail in due course.
A data link layer 112 is operable to encode data packets, passed to it by the networking controller 24, into bits for physical communication. It is also operable to receive bits received by the networking controller 24, for conversion into packets of data for further processing by previously described layers. The data link layer 112 comprises two sub- layers, namely a media access control sub-layer 114 (hereinafter referred to as the MAC layer) and a logical link control sub-layer 116 (hereinafter referred to as the LLC layer).
The MAC sub-layer 114 is operable to control access of the node 12 to data on the network and governs permission to transmit data on the network. The LLC layer 116 is operable to control the synchronization of network communication frames, data flow in the network and error checking.
Finally, a physical layer 118 provides the physical means for communication of data from the present node 12 in the network to another node 12. The physical layer, in the present example, can be considered to include the transmitter/receiver 20 and the antenna 22.
Figure 5 illustrates in further detail structure of the networking controller 24. It will be appreciated that this description of the structure of the networking controller is intended to explain the delivery of the technical effect associated with the invention; further structure of the networking controller could be provided to establish further functionality. The networking controller 24 includes a switching unit 60 operable to filter data received in the node 12, to ensure that only those packets of data intended for the node 12 are passed to the transport layer 46, and that other packets of data are re- routed. A routing unit 62 monitors and manages the routing of data in the network 10, and maintains and stores a routing table 64 to enable this routing to take place. The routing table 64 records information concerning the topology of the network (i.e. which nodes are connected to each other) to enable data communication, and an indication of quality of service as defined by MAC delay recorded in the MAC sub-layer 114 of the OSI model (described above). Operation of the networking controller 24 is therefore substantially commonplace in accordance with the OSI model, except in respect of routing in the network layer 110 of the OSI model.
Operation of the networking controller 24 will now be described with reference to Figures 6 to 12 of the accompanying drawings. Firstly a protocol to enable discovery of neighbours of the present node 12 is illustrated in Figure 6. This protocol comprises a process to be executed periodically to ensure that the relationship between the node and neighbouring nodes is retained in an up-to-date condition.
In step S 1-2, the networking controller 24 initiates broadcast of a neighbour discovery message, which is then passed through the OSI model illustrated in Figure 4 to a physical layer 56 for transmission by the antenna 22. This neighbour discovery message is suitable for receipt by neighbouring hub 12. On receipt of the neighbour discovery message, the neighbouring hub transmit a response message containing data pertaining to the quality of service achievable between the present node 12 and the neighbouring node 12.
In step S 1-4, the networking controller 24 checks whether a response has been received in respect of transmission of the neighbour discovery message. If not, then, in step S 1- 6, a check is made as to whether a predetermined period within which monitoring for response will take place has expired. If so, then the process ends. Otherwise, the process reverts to step S 1-4 and so on until either timeout is encountered in step S 1-6 or, on the other hand, a response is received from a neighbouring node 12.
On receipt of a response message from a neighbouring node, in step S 1-8, the networking controller 24 extracts data from the response message. Then, the data extracted from the response message is compared with link data in the routing table 64, in step S1-10.
On comparison of the link data received in the response message, with the link data stored in the routing table 64, a check is made in step S 1-12 as to whether the link data received in the response message represents a new link. If so, then the new link data is recorded in the routing table 64, in step S 1-14.
Otherwise, a check is made, in step S 1-16, as to whether the link data used in the response message corresponds with an entry in the routing table 64, but that the link data, relating to quality of service stored in respect of that link, has been updated. If no update of the link data is detected, then no changes need to be made to the routing table 64 and the process reverts to step S1-4 to detect any further responses from neighbouring nodes 12.
Otherwise, in step S1-18, the link data in the routing table 64 is updated with the newly received link data received on the response message.
After recording the new link data in the routing table 64 in step S1-14, or updating the link data in the routing table 64 in step S 1 - 18, the process proceeds, in step S l -20 by transmitting a routing table update message to all neighbours. This step enables the updated details in the routing table 64 to be permeated through the network, with the intention that all nodes should store a copy of the same entry in the routing table 64.
The overall aim is to ensure that each node stores the same information in a routing table 64. The procedure then reverts to step S 1 -4 to detect any further responses from neighbouring nodes 12.
Figure 7 illustrates a process which is executed by the network layer 48, on receipt of a message in a node 12, such as is transmitted in step S 1 20 of the process in Figure 6. In step S2-2, the link data obtained in the routing table update message is extracted. Then, in step S2-4, the extracted link data is compared with entries in the routing table 64 of the node 12 in receipt of the message. In step S2-6, a check is made as to whether the link data represents a new link in comparison with the link data already stored in the routing table 64. If the received data represents a new link, then in step S2-8, the link data is recorded in the routing table 64. Otherwise, in step S2-10, a check is made as to whether the received link data corresponds with an entry in the routing table 64, but details of the link, for example of quality of service, have changed. If so, then in step S2-12, the updated link data is stored in the routing table 64. Otherwise, the procedure ends.
After recording new or updated link data in the routing table 64, in step S2-8 or step S2- 12, the procedure continues by transmitting a routing table update message in step S2- 14. The procedure then ends.
It will be appreciated that, in the case that new or updated link data is recorded to a routing table 64, that this has the consequence that a routing table update message may be re-transmitted back to the node 12 from which the update originated. However, the checks made in steps S2-6 and steps S2- 10 ensure that these return messages are captured and do not lead to further permeation of update messages through the network.
As the update messages reach nodes that have already had their routing tables updated, no further retransmission of the routing table update message from those nodes takes place, so transmission of these messages does not continue indefinitely.
Operation of the networking controller 24 in connection with the routing of a message generated in the host 26 and passed to the networking controller 24 for transmission, will now be described with reference to Figure 8.
Firstly, in step S3-2, the destination node for the packet to be transmitted is looked up in the routing table 64. Then, in step S3-4 a process is executed to determine a route for transfer of the packet. This process will be described in due course. Then, in step S3-6, the packet is transmitted on the retrieved route. The process then ends. Figure 9 illustrates the process called in step S3-4 in Figure 8. Firstly,
a graph G(V, E) of the network is retrieved from the routing table 64 stored in memory. In this embodiment, V is the set of vertices in the graph (the nodes) and E is the set of edges in the graph (the links between the nodes). In the set of edges E, an edge e(u, v) is defined as the edge between a node u and another node v in the graph G. Corresponding data defining bottleneck bandwidths, link MAC delays and link reliabilities are also retrieved for the graph G. In the following description, b(e) denotes the residual (available) bandwidth of communication along link e in the graph G. Similarly, d(e) denotes the MAC delay for the link, and r(e) denotes the reliable reliability of the link e.
Then, in step S4-4, predetermined quality constraints on overall bottleneck bandwidth, path MAC delay and path reliability are retrieved from memory. These are defined in respect of a path p such that: B(p) = minp[b(e)] ≥ Ab D(p) = I:d(e) ≤ Ad it(p) = lIpr(e) ≥ Ar In other words, bottleneck bandwidth B(p) is determined as the smallest link bandwidth in a path p and should be above a predetermined minimum level, path MAC delay D(p) is determined as the sum of all link MAC delays for all links on the path and should be below a predetermined maximum level, and reliability, which is expressed as a percentage or a number between O and 1, is determined as a product of all of the link reliabilities of the links on the path p, and should be above a predetermined level.
These constraints are determined to enable path determination to take place in a realistic length of time - should the constraints be too tight then failure to identify a single achievable pathway will arise frequently or selection will take an inappropriately long time; on the other hand, setting the constraints to be insufficiently tight will result in the optimization process producing sub-optimal results too frequently, leading to inferior performance of the system as a whole. The actual figures to be used depend on the design of the system, and the extent to which it is desirable to find an optimum path as opposed to the cost, in terms of time, of looking for the optimum path. Typical values for Ad and Ar are 1 second and 90% respectively.
In step S4-6, a multi-constrained path (MCP) problem is constructed, from the present node as source node to the destination node for the packet in question, taking into account the constraints. It is well known that an MCP problem in this form is NP complete. This means that, on standard computer processing equipment, such as will most likely be encountered in a node 12, the time for determination of a solution to the problem cannot be expressed as a polynomial of the number of nodes 12 in the system 10, and is likely to increase exponentially with increase of the number of nodes.
In step S4-8, a process is called to convert the MCP problem into a modified MCP problem such that the modified MCP problem is solvable in polynomial time with respect to the number of nodes in the network. This step is advantageous in that it limits the impact of network size on the overall computability of paths through the network. The way in which this conversion process operates will be described in due course.
Then in step S4-1 O. a process is called to determine a suitable transmission path from the modified MCP problem. The way in which this transmission path determination process operates will be described in due course.
After completion of the transmission path determination process, the process illustrated in Figure 9 ends.
Figure 10 illustrates a process, called in step S4-8 in Figure 9, to convert the MCP problem into a modified MCP problem. Firstly, in step S52, the multiplicative reliability constraint Ar is converted into an additive constraint. This is achieved by applying a logarithm to the reliability constraint Ar with respect to a transformed path reliability R'(p): R'(p) ≤ -log(Ar) The multiplication of the mapping by (-1) (and consequent reversal of the inequality) reflects the fact that the reliabilities are all numbers between O and 1, and eliminates the resultant negative sign of the logarithm. The base of the logarithm is not consequential; base 10, 2 or natural logarithms are equally effective.
Then in step S5-4, path reliabilities r(e), retrieved from the routing table 64, are mapped to their logarithms. Thus: r r' = -log(r) Then, the transformed path reliability R'(p), in terms of its constraint, is expressed as follows: R'(p) = Epr'(e) ≤ -log(Ar) In step S5-6, the link MAC delays d(e) are mapped to a rounded integer d' as follows: dd'=rx * d/Ad1 where ry1 is defined as the smallest integer greater than or equal to y, and x is a predetermined integer. x can be set at any convenient level, taking into account the need for sufficient iterations of the algorithm to achieve an acceptable result, while taking account of the need for achievement of a solution without undue consumption of time. For example, if the average hop count in a network between two nodes in the network is 4, a suitable value for x might be 40.
Then, in step S5-8, by virtue of the mapping of d to d', the corresponding MAC delay constraint Ad is mapped to the given integer x. If the bounded integer sum Id'(e) is less than x, then the original constraint will have been met.
By mapping reliability R. a multiplicative function, to a logarithmic and therefore additive measure, and by bounding the MAC delay to an integer, the NP-complete MCP problem MCP(G, d, r, b, Ad, Ar, Ab) is transformed into a simpler problem MCP'(G, d', r', b, x, -log(Ar), Ab) which is soluble in polynomial time. The procedure then ends.
In figure 11, a flow diagram illustrates the procedure executed in step S4-10 in the process illustrated in figure 9. For the avoidance of doubt, this procedure takes the form of a modified Bellman Ford algorithm applied to the graph G. from the source node s from which a data packet is to be transmitted. From this, all shortest paths in the network from the source node will be determined.
As an initial step, in step S6-2, the complexity of the shortest path problem is reduced, by identifying edges of the graph G that cannot be used within the determined constraints. The manner of achieving this is illustrated in figure 12, described as follows.
In step S7-2, a loop performs a set of operations on each edge e in the graph of paths G in the network. In step S7-4, a check is made as to whether the link bandwidth b(e) for the edge under consideration is less than the bottleneck bandwidth constraint Ab. If it is less than the constraint Ab, then in step S7-6 the edge is removed from consideration by setting the additive reliability constraint r'(e) for the edge in question to infinity, removing the edge from further consideration for the determination of shortest paths.
Otherwise, or after step S7-6, the loop moves on to the next edge for consideration, until all edges have been so considered.
This complexity reduction is possible because, if the bandwidth for a particular edge is below the overall bandwidth constraint Ab, the edge cannot form part of a shortest path without presenting an unacceptable 'bottleneck' to the passage of packets of data - the overall bandwidth of a path is governed by the link in the path with the lowest bandwidth.
After completion of the complexity reduction procedure in step S6-2, the procedure in figure 11 continues in step S6-4 by initialising a distance array D(V, i) to infinity, and by initialising a predecessor array (V, i) to nil (the Empty Set), where i is a number between 0 and the previously defined iteration constant x.
These distance and predecessor arrays are well known from the use of Bellman Ford algorithms.
Then, having initialised the distance array D(V, i), the entries D(s, i) for the starting node s are reset to zero.
Following initialization of the distance array D and the predecessor array it, the procedure follows in step S6-6 by entering a loop considering each node other than the present (start) node s.
For each such node, the procedure then enters another loop in step S6-8 for each of a predetermined number x (noted above) of iterations. In this loop, the procedure then enters yet another loop in step S6-10, for each of the edges in the graph G. and then performs a procedure, in step S6-12, to apply a relaxation function (to be described) to the edge under consideration.
Once the relaxation function has been applied to all edges in the graph in step S6-12, the loop established in step S6-10 is completed. Then, once all iterations of step S6-l 0 have been completed, as established by the loop of step S6-8, then step S6-8 is completed. Then, once all nodes have been considered in step S6-6, giving rise to a call to step S6-8, then the procedure continues in step S6-14 by storing the graph of shortest paths determined in the preceding step, in the routing table 64.
This graph can then be used directly by the routing unit 62 of the networking controller 24 in the networking controller 24.
The procedure, called in step S6-12 in figure 11, to apply a relaxation function to the edge under consideration, will now be described with reference to Figure 13. The relaxation function takes account of which of the iterations governed by step S6-8 is being performed, and receives this number as an argument.
The relaxation function allows the refinement of the array D of nominal distances from the source node s to the other nodes of the network, and of predecessor nodes for respective nodes of the network. In this way, the shortest path achievable in the context of the constraints set for the MCP problem can be identified if, indeed, such paths exist.
In step S8-2, a check is made as to whether the MAC delay constraint, as modified by previous operations, is satisfied for the edge (u, v) under consideration, in terms of the iteration number k. This is achieved by determining a further measure k', as follows: k'=k+d'(u,v) This new measure k' is thus compared with the modified delay constraint x, to determine if k' exceeds x. The contributions of k and d' to the determination of k' mean that, for early iterations of the relaxation function, k' will exceed x because of a high delay d leading to a high value for the modified delay d'. On the other hand, as k approaches x, k' will exceed x even for relatively low values of d'.
If k' exceeds x, it is determined that the modified delay constraint has been infringed and the procedure ends. Otherwise, in step S8-4, values in the distance array corresponding to the two vertices (u, v) defining the edge under consideration are retrieved, one of the vertices u being considered as a 'near' vertex and the other v as a far' vertex. The value in the array to be considered in respect of the far vertex v is that corresponding to the integer value k'. The value in the array to be considered in respect of the near vertex is that corresponding to the iteration k.
Step S8-4 determines if the far vertex distance value exceeds the near vertex distance value, by more than the value of the modified reliability for the edge under consideration. Thatis: Is D[v, k'] > D[u, k] + r'[u, v] ? If this is the case, then it can be assumed that in terms of considering the shortest path from the source node to the far vertex v, that it is beneficial to traverse via u than any other route found up to now. Thus, in step S8-6, the distance represented by the sum of the near vertex distance value D[u, k] and the modified reliability r'[u, v] is stored back in the distance array as D[v, k'].
Further, in step S8-8, the predecessor array is updated so that the entry for the vertex v corresponding to the refinement k', (v, k') stores the value u. The procedure then ends, returning to the procedure illustrated in figure 11.
It will be appreciated that the routing unit 62 of each node 12 will be required to perform this function. As an alternative, though diverging from the decentralised principle of operation of a MANET, it would be possible to have a single resource in the network capable of being consulted to provide shortest path calculations for a plurality of nodes in the network 10. This might be convenient where nodes of the network have comparatively disparate computing powers, meaning that some nodes will be more capable than others of determining the shortest path of transmission of a packet of data in the network.
While the above describes the use of the principles of a Bellman Ford algorithm to the modified MCP problem, it will also be appreciated that it is possible to apply Dijkstra's algorithm to the problem.
Although, in the described embodiment, the quality constraints are stored in memory for use in the execution of the path determination algorithm, it is equally possible that these constraints are provided to the algorithm in a dynamic manner, such as when the application layer initiates a communication call to the protocol stack. An application running n the host could be configured to pass desired constraints to the protocol stack as part of a call for service in the stack. This would allow more application specific use of the protocol stack to be achieved.
For example, a server providing network access to a streaming video presentation would have certain service level requirements from the forward path for distribution of the data defining the video presentation, than would a user of a wireless network wishing to use a hand-held device to transmit personal organiser information to another device in a network.
It will be appreciated that the system and method described above are capable of being implemented on commonplace hardware components, including on a general purpose computer including suitable transmitter/receiver functionality, configured by a suitable software product. The software product can be supplied as stored on a storage medium, such as an optically or magnetically readable storage medium, or by means of a signal transmitting a file executable by commonplace hardware to cause the hardware to become configured in accordance with an embodiment of the invention.
In particular, in the case of procedures such as the protocol to discover neighbours of a given node in a network, illustrated in Figure 6 and described with reference thereto, it will be appreciated that other equivalent procedures could equally be provided.
Though the specific embodiments described herein show particular implementations of the invention and demonstrate its advantages, other embodiments will be apparent from the description and the scope of protection sought herein is defined by the claims appended hereto with reference to the description and the drawings; no statement in this description should be interpreted as a specif c limitation on the generality expressed in the claims.

Claims (28)

  1. CLAIMS: 1. In an ad hoc communications network comprising a plurality of
    nodes each capable of communication with at least another of said nodes, a method of determining a path for transmission of data along inter-node links from a source node to another node, said path being determined subject to two or more performance constraints on measurable physical quantities of communication between nodes, the method comprising the steps of: obtaining performance measures for links in said network and corresponding performance constraints for the path to be determined; approximating at least all but one of the performance measures to modified measures; and determining said path by applying a shortest path algorithm to said network, taking account of said constraints on said modified measures.
  2. 2. A method according to claim 1 wherein the step of obtaining performance measures includes storing information describing nodes in the network and links between the nodes, wherein a link is indicative of a capability to support wireless communication from a node to another.
  3. 3. A method according to claim 2 wherein said step of storing information includes storing, in respect of each link, performance measures for the link.
  4. 4. A method according to claim 3 wherein said performance measures include bandwidth, media access control delay, and reliability of the link.
  5. 5. A method according to claim 4 wherein said step of approximating performance measures includes the steps of determining for each reliability measure an additive modified reliability measure, and determining for each media access control delay a modified delay constraint compliance score, each score being a member of a bounded set of values.
  6. 6. A method according to any preceding claim wherein said step of applying a shortest path algorithm to said network comprises applying a Bellman-Ford algorithm to said network.
  7. 7. A method according to any preceding claim including the step of storing performance constraints in memory.
    8. An ad hoc communications network comprising a plurality of nodes each capable of communication with at least another of said nodes along one or more inter-node links, at least one of said nodes being operable to determine a data transmission path in said network and comprising: routing means for determining a routing path on which information is routed in use from said node to another node, said routing path being dependent on quality of service constraints in respect of at least two measurable performance properties of each inter-node link in said network, said routing means including: complexity reduction means operable to map measured performance properties for said inter-node links, and respective constraints, to modified performance measures and correspondingly modified constraints, for at least all but one of the measurable properties to give rise to a polynomial time soluble shortest path problem; and path determination means for determining a path for transmission of data from said source node to another node, in accordance with a shortest path algorithm constrained by said modified constraints and in respect of said modified set of performance measures.
  8. 8. A network according to claim 7 wherein the routing means is operable to store information describing nodes in the network and links between the nodes, wherein a link is indicative of a capability to support wireless communication from a node to another.
  9. 9. A network according to claim 8 wherein said routing means is operable to store, in respect of each link, performance measures for the link.
  10. 10. A network according to claim 9 wherein said measurable properties stored in use by said routing information storage means include bandwidth, media access control delay, and reliability of the link.
  11. 11. A network according to claim 10 wherein said complexity reduction means includes reliability modification means for modifying each multiplicative reliability measure into an additive modified reliability measure, and delay modification means for determining for each media access control delay a modified delay constraint compliance score, each score being a member of a bounded set of values.
  12. 12. A network according to any one of claims 7 to I 1 wherein said path determination means includes means operable to apply a Bellman-Ford algorithm to said network.
  13. 13. A communications apparatus for sending and receiving data in an adhoc communications network, comprising: routing means for determining a routing path on which information is routed in use from said node to another node, said routing path being dependent on quality of service constraints in respect of at least two measurable performance properties of each inter node link in said network, said routing means including: complexity reduction means operable to map measured performance properties for said inter-node links, and respective constraints, to modified performance measures and correspondingly modified (if required) constraints, for at least all but one of the measurable properties to give rise to a polynomial time soluble shortest path problem; and path determination means for determining a path for transmission of data from said source node to another node, in accordance with a shortest path algorithm constrained by said modified constraints and in respect of said modified set of performance measures.
  14. 14. Apparatus according to claim 13 wherein the routing means is operable to store information describing nodes in the network and links between the nodes, wherein a link is indicative of a capability to support wireless communication from a node to another.
  15. 15. Apparatus according to claim 14 wherein said routing means is operable to store, in respect of each link, performance measures for the link.
  16. 16. Apparatus according to claim 15 wherein said measurable properties stored in use by said routing information storage means include bandwidth, media access control delay, and reliability of the link.
  17. 17. Apparatus according to claim 16 wherein said complexity reduction means includes reliability modification means for modifying each reliability measure into an additive modified reliability measure, and delay modification means for determining for each media access control delay a modified delay constraint compliance score, each score being a member of a bounded set of values.
  18. 18. Apparatus according to any one of claims 13 to 17 wherein said path determination means includes means operable to apply a Bellman-Ford algorithm to determine a path in said network.
  19. 19. In a communications apparatus comprising a memory and means for transmitting data, a method of determining paths for transmission of data from said apparatus in an ad hoc communications network along communications links from said apparatus to further communications apparatus in said network, said path being determined subject to two or more performance constraints on measurable physical quantities of communication between nodes, the method comprising the steps of: obtaining performance measures for links in said network and corresponding performance constraints for the path to be determined; approximating at least all but one of the performance measures to modified measures; and determining said path by applying a shortest path algorithm to said network, taking account of said constraints on said modified measures.
  20. 20. A method according to claim 19 wherein the step of obtaining performance measures includes storing information describing nodes in the network and links between the nodes, wherein a link is indicative of a capability to support wireless communication from a node to another.
    21. A method according to claim 20 wherein said step of storing information includes storing, in respect of each link, performance measures for the link.
    22. A method according to claim 21 wherein said performance measures include bandwidth, media access control delay, and reliability of the link.
    23. A method according to claim 22 wherein said step of approximating performance measures includes the steps of determining for each reliability measure an additive modified reliability measure, and determining for each media access control delay a modified delay constraint compliance score, each score being a member of a bounded set of values.
    24. A method according to any one of claims 19 to 23 wherein said step of applying a shortest path algorithm to said network comprises applying a Bellman-Ford algorithm to said network.
    Amendments to the claims have been filed as follows 1. In an ad hoc communications network comprising a plurality of nodes each capable of communication with at least another of said nodes, a method of determining a path for transmission of data along inter-node links from a source node to another node, said path being determined subject to two or more performance constraints on measurable physical quantities of communication between nodes, the method comprising the steps of: obtaining performance measures for links in said network and corresponding performance constraints for the path to be determined; approximating at least all but one of the performance measures to modified measures; and determining said path by applying a shortest path algorithm to said network, taking account of said constraints on said modified measures.
    2. A method according to claim I wherein the step of obtaining performance measures ,, includes storing information describing nodes in the network and links between the i, nodes, wherein a link is indicative of a capability to support wireless communication from a node to another.
    ', 3. A method according to claim 2 wherein said step of storing information includes . storing, in respect of each link, performance measures for the link. .
    4. A method according to claim 3 wherein said performance measures include bandwidth, media access control delay, and reliability ofthe link.
    5. A method according to claim 4 wherein said step of approximating performance measures includes the steps of determining for each reliability measure an additive modified reliability measure, and determining for each media access control delay a modified delay constraint compliance score, each score being a member of a bounded set of values.
    I
    6. A method according to any preceding claim wherein said step of applying a shortest path algorithm to said network comprises applying a Bellman-Ford algorithm to said network.
    7. A method according to any preceding claim including the step of storing performance constraints in memory.
    8. An ad hoc communications network comprising a plurality of nodes each capable of communication with at least another of said nodes along one or more inter-node links, at least one of said nodes being operable to determine a data transmission path in said network and comprising: routing means for determining a routing path on which information is routed in use from said node to another node, said routing path being dependent on quality of service constraints in respect of at least two measurable performance properties of each inter-node link in said network, said routing means including: complexity reduction means operable to map measured performance properties for said inter-node links, and respective constraints, to modified perfonnance measures < < < < ' and correspondingly modified constraints, for at least all but one of the measurable < properties to give rise to a polynomial time soluble shortest path problem; and , path determination means for determining a path for transmission of data from said source node to another node, in accordance with a shortest path algorithm . ( constrained by said modified constraints and in respect of said modified set of < < i, i' performance measures. ( .
    I (l
    9. A network according to claim 8 wherein the routing means is operable to store information describing nodes in the network and links between the nodes, wherein a link is indicative of a capability to support wireless communication from a node to another.
    10. A network according to claim 9 wherein said routing means is operable to store, in respect of each link, performance measures for the link.
    11. A network according to claim 10 wherein said measurable properties stored in use by said routing information storage means include bandwidth, media access control delay, and reliability of the link.
    12. A network according to claim 11 wherein said complexity reduction means includes reliability modification means for modifying each multiplicative reliability measure into an additive modified reliability measure, and delay modification means for determining for each media access control delay a modified delay constraint compliance score, each score being a member of a bounded set of values.
    13. A network according to any one of claims 8 to 12 wherein said path determination means includes means operable to apply a Bellman-Ford algorithm to said network.
    14. A communications apparatus for sending and receiving data in an adhoc communications network, comprising: routing means for determining a routing path on which information is routed in use from said node to another node, said routing path being dependent on quality of service constraints in respect of at least two measurable performance properties of each inter 1 c node link in said network, said routing means including: complexity reduction means operable to map measured performance properties . for said inter-node links, and respective constraints, to modified performance measures . and correspondingly modified (if required) constraints, for at least all but one of the measurable properties to give rise to a polynomial time soluble shortest path problem; c ( <. and path determination means for determining a path for transmission of data from said source node to another node, in accordance with a shortest path algorithm constrained by said modified constraints and in respect of said modified set of performance measures.
    15. Apparatus according to claim 14 wherein the routing means is operable to store information describing nodes in the network and links between the nodes, wherein a link is indicative of a capability to support wireless communication from a node to another.
    16. Apparatus according to claim 15 wherein said routing means is operable to store, in respect of each link, performance measures for the link.
    17. Apparatus according to claim 16 wherein said measurable properties stored in use by said routing information storage means include bandwidth, media access control delay, and reliability of the link.
    18. Apparatus according to claim 17 wherein said complexity reduction means includes reliability modification means for modifying each reliability measure into an additive modified reliability measure, and delay modification means for determining for each media access control delay a modified delay constraint compliance score, each score being a member of a bounded set of values.
    19. Apparatus according to any one of claims 14 to 18 wherein said path determination means includes means operable to apply a Bellman-Ford algorithm to determine a path in said network. rem e
    e 20. In a communications apparatus comprising a memory and means for transmitting data, a method of determining paths for transmission of data from said apparatus in an . ad hoc communications network along communications links from said apparatus to further communications apparatus in said network, said path being detennined subject e ' to two or more performance constraints on measurable physical quantities of .' communication between nodes, the method comprising the steps of: obtaining performance measures for links in said network and corresponding performance constraints for the path to be determined; approximating at least all but one of the performance measures to modified measures; and determining said path by applying a shortest path algorithm to said network, taking account of said constraints on said modified measures.
  21. 21. A method according to claim 20 wherein the step of obtaining performance measures includes storing information describing nodes in the network and links between the nodes, wherein a link is indicative of a capability to support wireless communication from a node to another.
  22. 22. A method according to claim 21 wherein said step of storing information includes storing, in respect of each link, performance measures for the link.
  23. 23. A method according to claim 22 wherein said performance measures include bandwidth, media access control delay, and reliability of the link.
  24. 24. A method according to claim 23 wherein said step of approximating performance measures includes the steps of determining for each reliability measure an additive modified reliability measure, and determining for each media access control delay a modified delay constraint compliance score, each score being a member of a bounded set of values. (, . :
  25. 25. A method according to any one of claims 20 to 24 wherein said step of applying a shortest path algorithm to said network comprises applying a Be]]man-Ford algorithm to said network.
    c, . I, ( ( <
  26. 26. An ad hoc communications network substantially as hereinbefore described with . reference to Figures 1 to 13 ofthe accompanying drawings.
  27. 27. An ad hoc communications apparatus substantially as hereinbefore described with reference to Figures I to 13 ofthe accompanying drawings.
  28. 28. An ad hoc communications method substantially as hereinbefore described with reference to Figures] to 13 ofthe accompanying drawings.
GB0329690A 2003-12-22 2003-12-22 Routing in an ad hoc networking system Expired - Fee Related GB2409600B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB0329690A GB2409600B (en) 2003-12-22 2003-12-22 Routing in an ad hoc networking system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0329690A GB2409600B (en) 2003-12-22 2003-12-22 Routing in an ad hoc networking system

Publications (3)

Publication Number Publication Date
GB0329690D0 GB0329690D0 (en) 2004-01-28
GB2409600A true GB2409600A (en) 2005-06-29
GB2409600B GB2409600B (en) 2005-12-07

Family

ID=30776269

Family Applications (1)

Application Number Title Priority Date Filing Date
GB0329690A Expired - Fee Related GB2409600B (en) 2003-12-22 2003-12-22 Routing in an ad hoc networking system

Country Status (1)

Country Link
GB (1) GB2409600B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2440983A (en) * 2006-08-18 2008-02-20 Fujitsu Ltd Wireless multi-hop communication system
WO2011008975A1 (en) * 2009-07-15 2011-01-20 Qualcomm Incorporated Systems and methods for providing resource allocation meeting communication constraints for multi-hop network data flows
US8451862B2 (en) 2009-07-15 2013-05-28 Qualcomm Incorporated Systems and methods for resource allocation serving communication requirements and fairness

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020061001A1 (en) * 2000-08-25 2002-05-23 The Regents Of The University Of California Dynamic source tracing (DST) routing protocol for wireless networks
EP1376939A2 (en) * 2002-06-19 2004-01-02 Harris Corporation Mobile ad-hoc network and methods for performing functions therein based upon weighted quality of service metrics

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020061001A1 (en) * 2000-08-25 2002-05-23 The Regents Of The University Of California Dynamic source tracing (DST) routing protocol for wireless networks
EP1376939A2 (en) * 2002-06-19 2004-01-02 Harris Corporation Mobile ad-hoc network and methods for performing functions therein based upon weighted quality of service metrics

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2440983A (en) * 2006-08-18 2008-02-20 Fujitsu Ltd Wireless multi-hop communication system
WO2011008975A1 (en) * 2009-07-15 2011-01-20 Qualcomm Incorporated Systems and methods for providing resource allocation meeting communication constraints for multi-hop network data flows
US8451862B2 (en) 2009-07-15 2013-05-28 Qualcomm Incorporated Systems and methods for resource allocation serving communication requirements and fairness
US8619756B2 (en) 2009-07-15 2013-12-31 Qualcomm Incorporated Systems and methods for providing resource allocation meeting communication constraints for multi-hop network data flows
US8929388B2 (en) 2009-07-15 2015-01-06 Qualcomm Incorporated Systems and methods for resource allocation serving communication requirements and fairness

Also Published As

Publication number Publication date
GB2409600B (en) 2005-12-07
GB0329690D0 (en) 2004-01-28

Similar Documents

Publication Publication Date Title
Ge et al. Quality of service routing in ad-hoc networks using OLSR
EP1698116B1 (en) Method and system for routing traffic in ad hoc networks
US7515551B2 (en) Techniques for reducing adjacencies in a link-state network routing protocol
EP1698117B1 (en) Method and system for efficient routing in ad hoc networks
EP1698115B1 (en) Predictive ad-hoc
US7764635B2 (en) Cross-layer self-healing in a wireless ad-hoc network
JP4598000B2 (en) Cost determination in multi-hop networks
KR20040102085A (en) System and method for identifying potential hidden node problems in multi-hop wireless ad-hoc networks
US8180352B2 (en) Topology controlled discovery for next hop determination
CN101517983B (en) Equipment and method relative to routing of IP service in mobile wireless network
CN101394356B (en) Route establishing method and device for mobile Ad hoc network
JP2005524315A (en) Admission control in mobile ad hoc networks
JP2005524336A (en) Policy processing of traffic in mobile ad hoc networks
US7826432B2 (en) Apparatus and method for routing on a mobile ad-hoc network
Asokan A review of Quality of Service (QoS) routing protocols for mobile Ad hoc networks
JP5782923B2 (en) Wireless communication network, wireless communication method, and node used in wireless communication network
US7991842B2 (en) System and method for sharing data in LAN
WO2014101443A1 (en) Method and system for cognitive wireless network topology reconstruction
KR100664919B1 (en) Method and apparatus for configuring routing path in a wireless ad hoc network
Hanin et al. New adaptation method based on cross layer and TCP over protocols to improve QoS in mobile ad hoc network.
Kawadia Protocols and architecture for wireless ad hoc networks
GB2409600A (en) Determining a transmission path in an ad-hoc network
Safa et al. Haodv: a new routing protocol to support interoperability in heterogeneous manet
US20130182610A1 (en) Fairness provision via controlling a transmission opportunity window in a wireless mesh network
CN111629416A (en) Message transmission method, system, terminal device and computer readable storage medium

Legal Events

Date Code Title Description
PCNP Patent ceased through non-payment of renewal fee

Effective date: 20121222