Unit 5 Notes
Unit 5 Notes
QoS: Quality of service in Ad hoc wireless Networks: Introduction, Issues and challenges in providing QoS
in Ad hoc wireless Networks, Classification of QoS solutions, MAC layer solutions(cluster TDMA), network
layer solutions(Ticket based, TDR, QoS enabled AODV,OQR).
INTRODUCTION
Figure 10.1. An example of QoS routing in ad hoc wireless network. Table 10.1. Available paths from
node B to node G
For example, consider the network shown in Figure 10.1. The attributes of each link are shown in a
tuple < BW, D >, where BW and D represent available bandwidth in Mbps and delay1 in milliseconds.
Suppose a packet-flow from node B to node G requires a bandwidth guarantee of 4 Mbps. Throughout the
chapter, the terms "node" and "station" are used interchangeably. QoS routing searches for a path that has
sufficient bandwidth to meet the bandwidth requirement of the flow. Here, six paths are available between
nodes B and G as shown in Table 10.1. QoS routing selects path 3 (i.e., B C F G) because, out of the
available paths, path 3 alone meets the bandwidth constraint of 4 Mbps for the flow. The end-to-end
bandwidth of a path is equal to the bandwidth of the bottleneck link (i.e., the link having minimum
bandwidth among all the links of a path). The end-to-end delay of a path is equal to the sum of delays of all
the links of a path. Clearly, path 3 is not optimal in terms of hop count and/or end-to-end delay parameters,
while path 1 is optimal in terms of both hop count and end-to-end delay parameters. Hence, QoS routing has
to select a suitable path that meets the QoS constraints specified in the service request made by the user.
The services required by them and the associated QoS parameters differ from application to application.
For example
1. Multimedia applications - bandwidth, delay jitter, and delay are the key QoS parameters, whereas military
applications have stringent security requirements.
2. Emergency search-and-rescue operations - availability of the network is the key QoS parameter.
3. Group communication in a conference hall requires that the transmissions among nodes consume as little
energy as possible. Battery life is the key QoS parameter here.
The resource constraints are battery charge, processing power, and buffer space.
Difficulties are dynamically varying network topology, lack of precise state information, lack of a central
controller, error-prone shared radio channel, limited resource availability, hidden terminal problem, and
insecure medium.
Some of the design choices for providing QoS support are described below
a) Stateful approach:
Each node maintains either global state information or only local state information, while in the case of a
stateless approach, no such information is maintained at the nodes. State information includes both the
topology information and the flow specific information.
Hard QoS versus soft QoS approach: The QoS provisioning approaches can be broadly classified into
two categories: hard QoS and soft QoS approaches.
1. Hard QoS :
a) If QoS requirements of a connection are guaranteed to be met for the whole duration of the session, the QoS
approach is termed a Hard QoS approach.
b) Viewing network dynamics of ad hoc wireless networks in mind it is very difficult to provide hard QoS
guarantees to user applications, QoS guarantees can be given only within certain statistical bounds.
2. Soft QOS
a) If the QoS requirements are not guaranteed for the entire session, the QoS approach is termed a soft QoS
approach.
b) Almost all QoS approaches available in the literature provide only soft QoS guarantees
2. Based on the interaction between the routing protocol and the QoS provisioning mechanism,
a) Coupled QoS approach, the routing protocol and the QoS provisioning mechanism closely interact with
each other for delivering QoS guarantees. If the routing protocol changes, it may fail to ensure QoS
guarantees.
b) Decoupled approach, the QoS provisioning mechanism does not depend on any specific routing protocol to
ensure QoS guarantees.
3. Based on the interaction between the routing protocol and the MAC protocol,
a) Independent QOS and approaches. In the independent QoS approach, the network layer is not dependent on
the MAC layer for QoS provisioning.
b) Dependent QoS The dependent QoS approach requires the MAC layer to assist the routing protocol for QoS
provisioning.
Classified based on which layer in the network protocol stack they operate in.
Figure 10.3 gives a layer-wise classification of QoS solutions.
Figure 10.3. Layer-wise classification of QoS solutions.
The MAC protocol determines which node should transmit next on the broadcast channel when several nodes
are competing for transmission on that channel. The existing MAC protocols for ad hoc wireless networks
use channel sensing and random back-off schemes, making them suitable for best-effort data traffic.
Supporting real-time traffic in these networks is a very challenging task.
The most widely deployed medium access technology is the IEEE 802.11 standard.
In bandwidth-constrained ad hoc wireless networks, the limited resources available need to be managed
efficiently, so a dynamic clustering scheme is used in Cluster TDMA.
Data Phase
The data phase supports both real-time and best-effort traffic.
Based on the bandwidth requirement of the real-time session, a VC is set up by allocating
sufficient number of slots in the data phase.
The remaining data slots (i.e., free slots) can be used by the best-effort traffic using the slotted-ALOHA
scheme.
For each node, a predefined slot is assigned in the control phase to broadcast its control information.
The control information is transmitted over a common code throughout the network.
At the end of the control phase, each node would have learned from the information broadcast by the cluster-
head, the slot reservation status of the data phase and the power gain lists of all its neighbors.
This information helps a node to schedule free slots, verify the failure of reserved slots, and drop expired
real-time packets.
A fast reservation scheme is used in which a reservation is made when the first packet is transmitted, and the
same slots in the subsequent frames can be used for the same connection.
If the reserved slots remain idle for a certain timeout period, then they are released.
The bandwidth reservation and real-time traffic support capability of MAC protocols can ensure reservation
at the link level only, hence the network layer support for ensuring end-to-end resource negotiation,
reservation, and reconfiguration is very essential.
Protocol Overview
1 .The basic idea of the ticket-based probing protocol is that the source node issues a certain number of
tickets and sends these tickets in probe packets for finding a QoS feasible path.
2.Each probe packet carries one or more tickets. Each ticket corresponds to one instance of the probe.
For example, when the source node issues three tickets, it means that a maximum of three paths can be
probed in parallel. The number of tickets generated is based on the precision of state information available at
the source node and the QoS requirements of the connection request. If the available state information is not
precise or if the QoS requirements are very stringent, more tickets are issued in order to improve the chances
of finding a feasible path. If the QoS requirements are not stringent and can be met easily, fewer tickets are
issued in order to reduce the level of search, which in turn reduces the control overhead.
3. There exists a trade-off here between the performance of the QoS routing protocol and the control
overhead.
4. The state information, at the source node, about intermediate nodes is useful in finding a much better QoS
path, even if such information is not precise.
5.The state information maintained at each node is comprised of estimations of end-to end delay and
available path bandwidth for every other node present in the network.
6. When an intermediate node receives a probe packet, it is either split to explore more than one path or is
forwarded to just one neighbor node based on the state information available at that intermediate node.
7. Based on the idea of ticket-based probing, two heuristic algorithms are proposed, one for delay-
constrained QoS routing, and the other for bandwidth constrained QoS routing.
8. In delay-constrained QoS routing, each probe accumulates the delay of the path it has traversed so far.
9. In other words, if an intermediate node A receives a probe packet (PKT) from a neighbor node B, node A
updates the delay field in PKT by adding delay value of the link between nodes B and A. Then node A
determines the list of candidate neighbors to which it has to send probe packets. It distributes tickets present
in PKT among these new probe packets and then forwards these probe packets to the respective candidate
neighbors.
10. If multiple probe packets arrive at the destination node (with each carrying the list of intermediate nodes
along its path), node A selects the path with least cost as the primary path and the other paths as the backup
paths which will be used when the primary path is broken due to the mobility of intermediate nodes.
1. The protocol searches for the lowest cost path among the feasible paths and done using the QoS path probing.
2. The source node issues two types of tickets, yellow tickets and green tickets, and sends them along with
probe packets.
3. Yellow tickets prefer paths that satisfy the requirement of a probe in terms of QoS metrics. For example, in
delay-constrained QoS routing, yellow tickets are used to search for paths that have least delay, such that the
end-to-end delay requirement is met.
4. If the delay requirement is very large and can be met easily, only one yellow ticket is issued. If the delay
requirement is too small to be met, then the source node does not issue any yellow ticket and rejects the
connection request.
5. Otherwise, more than one yellow ticket is issued to search multiple paths for finding a feasible QoS path.
6. Green tickets are used to search for QoS paths with low costs. Similar to the manner in which the source
node determines the number of yellow tickets, it also determines the number of green tickets to be issued on
the basis of the delay requirement of the connection request.
7. The distribution of yellow and green tickets (by an intermediate node to its candidate neighbors) is based on
the delay and cost requirements of the connection request, respectively.
8. The concept behind two types of tickets is to use the more aggressive green tickets to find a least cost
feasible path, and use yellow tickets as a backup to maximize the probability of finding a feasible path.
1. The protocol suggests a primary-backup-based, fault-tolerant technique to cope up with the network
dynamics.
2. To tolerate faults, a multi-level redundancy scheme is proposed. For the highest level of redundancy,
multiple paths (preferably disjoint) are probed and data is routed independently on all paths.
3. The destination node selects the first data copy and discards other copies which arrive later.
4. Another level of redundancy which requires less resources has also been proposed. Here, one path is selected
as the primary path and other paths (having resources reserved) act as backup paths.
5. The third type of redundancy incurs even less control overhead and consumes very few resources. Here,
backup paths are available along with the primary path, but resources are not
reserved in these backup paths.
6. During path maintenance, in order to eliminate the broken link, the call is rerouted over a backup path which
has enough resources to satisfy the QoS requirements of the call. In the case of the third type of redundancy,
since no resource reservation has been done along backup paths, during path breaks it is extremely difficult
to find a backup that has enough resources to satisfy the QoS requirements of the call.
1. The objective of ticket-based probing is to improve the average call acceptance ratio (ACAR) of ad hoc
wireless networks.
2. ACAR is the ratio of the number of calls accepted to the number of calls received by the network.
3. The protocol adapts dynamically to the requirements of the application and the degree of imprecision of state
information maintained.
4. It offers a trade-off between control overhead incurred in finding a feasible path and the cost of a feasible
path.
5. As the maximum number of probes in the network is equal to the number of tickets issued, the control
overhead is bound by the number of tickets.
6. The performance of the protocol depends on the ticket-issuing mechanism at the source node and the ticket-
splitting procedure at the intermediate nodes.
7. The protocol assumes that each node has global state information, but maintaining such information incurs
huge control overhead in the already bandwidth-constrained ad hoc wireless networks.
8. The proposed heuristic algorithms, which are based on an imprecise state information model, may fail in
finding a feasible path in the extreme cases where the topology changes very rapidly.
9. In delay-constrained QoS routing, the queuing delay and the processing delay at the intermediate nodes are
not taken into consideration while measuring the delay experienced so far by the probe packet which may
cause some data packets to miss their deadlines.
10. The routing algorithm works well only when the average lifetime of an established path is much longer than
the average rerouting time. During the rerouting process, if QoS requirements are not met, data packets are
transmitted as best-effort packets. This may not be acceptable for applications that have stringent QoS
requirements.
1. The trigger-based (on-demand) distributed QoS routing (TDR) protocol was proposed by De et al.for
supporting real-time applications in ad hoc wireless networks.
2. It operates in a distributed fashion. Every node maintains only the local neighborhood information in order
to reduce computation overhead and storage overhead. To reduce control overhead, nodes maintain only the
active routes. When a link failure is imminent, TDR utilizes the global positioning system-based (GPS)
location information of the destination to localize the reroute queries only to certain neighbors of the nodes
along the source-to-destination active route.
3. For a quick rerouting with reduced control overhead, rerouting is attempted from the location of an
imminent link failure, called intermediate node-initiated rerouting (INIR).
4. If INIR fails, then in order to keep the flow state disruption to a minimum, rerouting is attempted from the
source, which is termed source-initiated rerouting (SIRR).
Database Management
Activity-Based Database
1. In addition to the local neighborhood information, node N maintains a source table STN, a destination table
DTN, or an intermediate table ITN based on whether it actively participates in a session as the source (S), the
destination (D), or as an intermediate node (I), respectively.
2. These tables are referred to as the activity based database.
For a session, the source table contains the following fields:
session ID, source ID, destination ID, maximum bandwidth demand (MaxBW), maximum acceptable delay
(MaxDelay measured in terms of hop count), destination location (DLoc), next-node ID (NID) toward the
destination, and activity flag (NodActv).
An intermediate table contains the following fields:
session ID, source ID, destination ID, source location (SLoc), MaxBW, MaxDelay, DLoc, NID, previous-
node ID toward the source (PID), distance from the source (measured in terms of hop count), and NodActv.
Routing Protocol
The messages that are exchanged for initiating, maintaining, and terminating a real-time session are
described below.
1. If the source S has enough ResiBWS to satisfy the MaxBW for the session, the required bandwidth is
temporarily reserved for a certain duration within which it expects an acknowledgment from the destination
D.
2. If the source knows the location of the destination, it performs route discovery through selective forwarding.
3. In this approach, the source node takes advantage of location information of its neighbors and forwards route
requests to only selective neighbors that are lying closely toward the destination node and satisfying QoS
requirements of the connection request.
4. Otherwise, the source initiates a flooding-based initial route discovery process.
5. Before transmitting the route discovery packet, an entry is made in the source table STS for this session with
NodActv flag set to zero (i.e., idle).
6. To ensure the stability of routes and in order to reduce the control overhead, only selected neighbors, from
which packets were received with power level more than a threshold level (Pth 1 ), are considered during
route establishment. After receiving a route discovery packet, an intermediate node (IN) checks in its ITIN
whether any such packet was already received for the same session. If so, the current route discovery packet
is rejected to ensure loop-free routing.
7. Otherwise, it is the first discovery packet for a session. Then the intermediate node (IN) increments the hop-
count field of the received packet by one and checks for ResiBWIN. If it can meet the MaxBW requirement
for the session and if the updated hop-count field is less than MaxDelay, the required bandwidth is
temporarily reserved, and an entry is made into the activity table ITIN for the session with NodActv flag set
to zero.
8. Then the packet is forwarded to its downstream neighbors with the updated NID field.
9. If either or both of ResiBW and MaxDelay criteria cannot be satisfied, the discovery packet is simply
dropped. Upon receiving the first discovery packet, if the destination D is also able to satisfy both the
ResiBW and the MaxDelay criteria, the discovery packet and the corresponding route are accepted.
Route/Reroute Acknowledgment
1. After accepting the route, the destination node D builds DTD table with the NodActv flag set to (i.e.,active)
and sends an ACK to the source S along the selected route.
2. On receiving the ACK packet, all intermediate nodes and the source S set the NodActv flags in their
respective tables to 1 and refresh their ResiBW status.
3. The packet transmission for the session follows immediately.
1. In SIRR, when the received power level at an intermediate node falls below a threshold Pth 2 , the
intermediate node sends a rerouting indication to the source S.
2. Then the source S initiates the rerouting process through selective forwarding. But in INIR, when the power
level of a packet received from the next node toward the destination falls below a threshold Pth 1 (Pth 1>
Pth 2), it initiates a status query packet toward the source with appropriate identification fields and with a
flag field called route repair status (RR_Stat) set to zero.
3. If any upstream node is in the rerouting process, upon reception of the status query packet it sets the RR_Stat
flag to 1 and sends the status reply packet to the querying node.
4. On arriving at the source, the status query packet is discarded. If the querying node receives no status reply
packet before its received power level from the downstream node goes below Pth 2 , it triggers the alternate
route discovery process (i.e., SIRR). Otherwise, it relinquishes control of rerouting.
5. This query/reply process eliminates the chances of duplicate reroute discovery for a session. In both SIRR
and INIR, the alternate route discovery process is similar to the initial route discovery except that the
rerouting process takes advantage of the location information of the local neighbors and the approximate
location of the destination, and forwards the rerouting requests to only selected neighbors that are close to the
destination and that satisfy the delay and bandwidth constraints.
6. The threshold parameters Pth 1 and Pth 2 have to be selected judiciously in order to avoid unnecessary
rerouting.
Route Deactivation
1. In case of session completion or termination, the source node purges its corresponding ST table and sends a
route deactivation packet toward the destination.
2. Upon receiving a deactivation request, each node which was part of that session updates its ResiBW and
purges the activity table for that session.
3. No explicit deactivation packet is sent in case of rerouting, as the new route could still consist of some nodes
that were part of the old route.
1. Perkins et al. have extended the basic ad hoc on-demand distance vector (AODV) routing protocol to
provide QoS support in ad hoc wireless networks .
2.To provide QoS, packet formats have been modified in order to specify the service requirements which
must be met by the nodes forwarding a RouteRequest or a RouteReply.
1 .In a RouteRequest message, this field indicates the minimum bandwidth (in Kbps) that must be available
along an acceptable path from the source to the destination.
2. In a RouteReply message, it indicates the minimum bandwidth available on the route between the node
forwarding the RouteReply and the destination node. Using this field, the source node finds a path (if it
exists) to the destination node satisfying the minimum bandwidth constraint. Before forwarding the
RouteRequest, an intermediate node compares its available bandwidth with the bandwidth field in the
extension.
A)If the requested amount of bandwidth is not available, the node discards the RouteRequest message.
B)Otherwise, the node processes the RouteRequest as specified in the AODV protocol. The destination
node returns a RouteReply in response to a RouteRequest with the bandwidth field set to infinity (a very large
number).
C)Each node forwarding the RouteReply compares the bandwidth field in the RouteReply with its own link
capacity and updates the bandwidth field of the RouteReply with the minimum of the two, before forwarding
the RouteReply. This value is also stored in the routing table entry for the corresponding destination and
indicates the minimum available bandwidth to the destination.
1. The advantage of QoS AODV protocol is the simplicity of extension of the AODV protocol that can
potentially enable QoS provisioning.
2. As no resources are reserved along the path from the source to the destination, this protocol is not suitable for
applications that require hard QoS guarantees.
3. Node traversal time is only the processing time for the packet, so the major part of the delay at a node is
contributed by packet queuing and contention at the MAC layer.
4. A packet may experience much more delay than this when the traffic load is high in the network.
1. Lin proposed an admission control scheme over an on-demand QoS routing (OQR) protocol to guarantee
bandwidth for real-time applications. Since routing is on-demand in nature, there is no need to exchange
control information periodically and maintain routing tables at each node.
2. Similar to the bandwidth routing (BR) protocol, the network is time-slotted and bandwidth is the key QoS
parameter.
3. The path bandwidth calculation algorithm proposed in BR is used to measure the available end-to-end
bandwidth. The on-demand QoS routing protocol is explained below.
Route Discovery
1. During the route discovery process, the source node that wants to find a QoS route to the destination floods a
QoS route request (QRREQ) packet.
2. A QRREQ packet contains the following fields: packet type, source ID, destination ID, sequence number,
route list, slot array list, data, and TTL.
3. The pair {source ID, sequence number} is used to uniquely identify a packet. For each QRREQ packet, the
source node uses a new sequence number (which is monotonically increasing) in order to avoid multiple
forwarding of the same packet by intermediate nodes.
4. The route list records the nodes that have been visited by the QRREQ packet, whereas the slot array list
records free slots available at each of these nodes.
5. The TTL field limits the maximum length of the path to be found. A node N receiving a QRREQ packet
performs the following operations:
1. If a QRREQ with the same {source ID, sequence number} had been received already, this QRREQpacket
gets discarded.
2. Otherwise, the route list field is checked for the address of this node N. If it is present, node Ndiscards this
QRREQ packet.
3. Otherwise,
Node N decrements TTL by one. If TTL counts down to zero, it discards this QRREQ packet.
It calculates the path bandwidth from the source to this node. If it satisfies the QoS requirement, node N
records the available free slots in the slot array list of the QRREQ packet. Otherwise, node N discards this
QRREQ packet.
Node N appends the address of this node to the route list and rebroadcasts this QRREQ packet if it is not
the destination.
For the example shown in Figure 10.10, assume that the source S floods a QRREQ packet with bandwidth
requirement of two time-slots. Here, the destination D receives a QRREQ packet with the following
information in its fields. The route list field contains (S, A, B, C) and the slot array list contains
([A, {2, 5, 6, 7}], [B, {2, 5}], [C, {4, 5}], [D, {3, 8}]). The destination may receive more than one QRREQ
packet, each giving a unique feasible QoS path from the source to the destination.
Bandwidth Reservation
1. The destination node may receive one or more QRREQ packets, each giving a feasible QoS path for the
connection request.
2. The destination node selects the least-cost path among them. Then it copies the fields {route list, slot array
list} from the corresponding QRREQ packet to the QoS Route Reply (QRREP)
packet and sends the QRREP packet to the source along the path recorded in the route list.
3. As the QRREP traverses back to the source, each node recorded in the route list reserves the free slots that
have been recorded in the slot array list field.
4. Finally, when the source receives the QRREP, the end-to-end bandwidth reservation process is completed
successfully.
5. The reservations made are soft state in nature in order to avoid resource lock-up. The source can start sending
data packets in the data phase. At the end of the session, all reserved slots are
released.
Reservation Failure
1. The reservation of bandwidth may fail, either due to route breaks or because the free slots that are recorded in
the slot array list get occupied by some other connection(s) before the QRREP packet sent by the destination
reaches the corresponding intermediate nodes.
2. In the second case, the node at which reservation fails, sends a ReserveFail packet to the destination node.
3. The destination then restarts the reservation process along the next feasible path.
4. All nodes on the path from the interrupted node to the destination free the reserved slots for this connection
on receiving the ReserveFail packet.
5. If no connection could be set up due to nonavailability of feasible paths, the destination broadcasts a NoRoute
packet to notify the source.
6. Then the source either restarts the route discovery process, if it still needs a connection to the destination, or
rejects the call.
Route Maintenance
1. When a route gets broken, the nodes detecting the link break send a RouteBroken packet to the source and
the destination nodes.
2. In other words, once the next hop becomes unreachable, the upstream node which is toward the source node
sends a RouteBroken packet to the source, and the downstream node which is toward the destination sends
another RouteBroken packet to the destination.
3. The intermediate nodes relaying the RouteBroken packet release all reserved slots for this connection and
drop all data packets of this connection which are still pending in their respective queues.
4. After receiving the RouteBroken packet, the source restarts the route discovery process in order to reestablish
the connection over a new path, while the destination releases resources reserved for that connection.
1. OQR protocol uses an on-demand resource reservation scheme and hence produces lower control overhead.
2. Since it uses the CDMA-over-TDMA channel model, the network needs to be fully synchronized.
3. The on-demand nature of route discovery process leads to higher connection setup time.