Вы находитесь на странице: 1из 50

Routing Protocols for Ad-Hoc Wireless Networks

Lecture#12

Traditional Routing
A routing protocol sets up a routing table in routers A node makes a local choice depending on global topology

Routing Table AT 1

Traditional Distance Vector Routing


Based on periodic exchanges of neighbor information (connectivity and cost) Changes at one node propagate slowly through the network Strategies needed to avoid the count to infinity problem (problems with fast topology changes)
Poisoned-reverse Split-horizon

Potential problems
Unreachable regions Routing loops
3

Tables

A
Dest. Next Metric A A 0 B B 1 C B 3

B
Dest. Next Metric A A 1 B B 0 C C 2

C
Dest. Next Metric A B 3 B B 2 C C 0

Update

B broadcasts the new routing information to his neighbors

Routing table is updated

(A, 1) (B, 0) (C, 1)

(A, 1) (B, 0) (C, 1)

A
Dest. Next Metric A A 0 B B 1 C B 3 2

B
Dest. Next Metric A A 1 B B 0 C C 1

C
Dest. Next Metric A B 3 2 B B 1 C C 0

New Node
broadcasts to update tables of C, B, A with new entry for D

(A, 1) (B, 0) (C, 1) (D, 2)

(A, 2) (B, 1) (C, 0) (D, 1)

(D, 0)

A
Dest. Next Metric A A 0 B B 1 C B 2 D B 3

B
Dest. Next Metric A A 1 B B 0 C C 1 D C 2

C
Dest. Next Metric A B 2 B B 1 C C 0 D D 1

Broken Link

A
Dest. Next Metric D B 3

B
Dest.c Next Metric D C 2

C
Dest. Next Metric B 1 D D

Loops

(D, 2)

(D, 2)

A
Dest. Next Metric D B 3

B
Dest. Next Metric D C 2

C
Dest. Next Metric D B 3

Count to Infinity

(D,5) (D,4) (D,4) (D,3) (D,2) (D,2)

A
Dest. Next D B Metric 3, 5,

B
Dest.c Next Metric D C 2, 4, 6

C
Dest. Next Metric D B 3, 5,

Interaction with Static Internet


Two network types
Transit network: a datagram can enter and then leave the network
Stub network: the network is either the sink or source for all datagrams

MANETs are envisioned as being only stub network (at least for now)
Reduces power and processing demands Simplifies routing interaction Mobile IP allows connectivity with the traditional static Internet

10

MANET vs.. Traditional Routing


Traditional routing algorithms are likely to be
Inefficient due to slow convergence times (e.g., using distance vector algorithms as in RIP)
Non-functional due to large amounts of data or inability to deal with asymmetric links

MANET routing must rely on data link information, not just network layer updates
Link layer determines connectivity and quality of links

Centralized approaches are too slow and not robust enough for MANET All (or almost all) nodes in a MANET may be routers Long-lived circuits cannot be used in MANETs Path length (hop count) may not be the best metric for routing in MANETs
11

Routing and Mobility


Goal of routing protocols
decrease routing-related overhead find short routes find stable routes (despite mobility)

Issues
Frequent route changes
Amount of data transferred between route changes may be much smaller than traditional networks

Route changes may be related to host movement Low bandwidth links

12

Issues in Designing a Routing Protocol for Ad Hoc Wireless Network


Mobility
Frequent path loss due to the movement of intermediate nodes or the end nodes
Requires faster convergence time

Wired routing protocols have slow convergence, therefore, not suitable for ad hoc networks

Limited bandwidth
Imposes constraint on routing protocols in maintaining the topological information Frequent changes in topology makes it difficult to maintain a consistent view of the topological information
Require more control overhead which results in more BW wastage
13

Issues in Designing a Routing Protocol for Ad Hoc Wireless Network


Error-Prone Shared Broadcast Radio Channel
Wireless links have time varying characteristics in terms of link capacity and link error probability Requires that routing protocols to interact with the MAC layer to find an alternate routes through better quality links Transmission results in collision of data packets and control packets
Required to find paths with less congestion

Hidden and exposed terminal problems


Collision of data and control packets and under utilization of BW is attributed to hidden and exposed node problems

Resource constraints
Battery life and processing power
Routing protocols must optimally used these resource
14

Qualitative Characteristics of an Ideal Routing Protocol


Fully distributed
Centralized routing involves high control overhead and are not scalable Distributed routing more tolerant Avoids the risk of single point failure

Adaptive to frequent topology changes Minimum route computation and maintenances Localized
Global state involves a huge state propagation control overhead

Loop free Free from stale route Unidirectional link support Packet collision minimum by limiting the broadcast Convergence must be quick Optimally use the resources Each node should try to store the stable route information only Provide certain level of QoS

15

Quantitative Performance Metrics


End-to-end throughput
External measure of routing effectiveness

End-to-end delay
External measure of routing effectiveness

Route acquisition time


Of particular concern with on-demand routing algorithms

Percentage of out-of-order datagram deliveries


Affects performance of higher-layer protocols like TCP

Efficiency (internal measures)


Ratio of average number of data bits transmitted to average number of data bits delivered Ratio of average number of control bits transmitted to average number of data bits delivered Ratio of average number of control and data packets transmitted to average number of data packets delivered
16

Performance Factors
Network size
Number of nodes

Network connectivity
Average degree of a node

Rate of change of the topology


Speed at which the network topology is changing

Link capacity
Effective data rate (bits/second) after affects of packet loss, coding, multiple access overhead, etc

Fraction of unidirectional links Traffic patterns


Uniform versus non-uniform destinations Bursty versus non-bursty traffic

Mobility
Model for node mobility

Fraction and frequency of sleeping nodes

17

Classification of Routing Protocols


Based in routing information update mechanisms
Proactive or table driven protocols Reactive or on-demand routing protocols Hybrid routing protocols

Based on the use of temporal information on routing


Use the temporal information regarding the lifetime of wireless links and the lifetime of the paths selected Routing protocols using past temporal information
Use past status of the link or the status of the link at the time of routing

Routing protocols that use future temporal information


Life time of wireless links, remaining battery life, prediction of location, and prediction of link availability

18

Classification of Routing Protocols


Based on the routing topology
Internet use hierarchical routing topology in order to reduce the state information maintained at the core routers Flat topology routing protocols
Use flat addressing scheme Presence of a unique addressing scheme in an ad hoc network

Hierarchical topology routing protocols


Make use of a logical hierarchy in the network and an associated addressing scheme Could be based on geographical information or it could be based on hop distance

Based on the utilization of specific resource


Power aware routing
Aims at minimizing the battery power, routing decisions are based on either globally or locally

Geographical information assisted routing


Reduce the control overhead by effectively utilizing the geographical information available
19

Classification of Routing Protocols

20

Based in Routing Information Update Mechanisms


Table Driven Routing Protocols (Proactive Protocols)
DSDV, WRP, CGSR, STAR

Protocol Trade-offs
Proactive protocols
Always maintain routes Little or no delay for route determination Consume bandwidth to keep routes up-to-date Maintain routes which may never be used

Reactive protocols
Lower overhead since routes are determined on demand Significant delay in route determination Employ flooding (global search) Control traffic may be bursty

Which approach achieves a better trade-off depends on the traffic and mobility patterns !!
22

Destination Sequenced Distance Vector (DSDV)


Each route table at each of the nodes, lists all available destinations and the number of hops to each Contains the shortest distance and the first node on the shortest path to every other node in the network Each entry is tagged with a sequence number that is originated by the destination node Each node periodically transmits updates
These updates indicate which nodes are accessible from each node and number of hops to reach them

It incorporates table updates with increasing sequence number tags to prevent loops, to counter the count-to-infinity problems, and for faster convergence Routing information is advertised by broadcasting or multicasting
Packets are transmitted periodically and incrementally
23

Route Advertisements
Data is kept for a length of time between the arrival of the first and the arrival of the best route
Advertisement of possibly unstable routes is delayed to reduce the number of rebroadcasts (damping fluctuations)

DSDV requires each mobile node to advertise its own routing table to each of its current neighbors Entries may change fairly dynamically Each mobile computer agrees to relay data packets to other computers upon request Mobile computer may exchange data with any other computer in a group
Even if the target is not within the range of direct communication

24

Route Establishment in DSDV

25

Route Maintenance in DSDV

26

Route Advertisements
Advertise to each neighbor own routing information
Destination Address Metric = Number of Hops to Destination Destination Sequence Number Other info (e.g. hardware addresses)

Rules to set sequence number information


On each advertisement increase own destination sequence number (use only even numbers) If a node is no more reachable (timeout) increase sequence number of this node by 1 (odd sequence number) and set metric = .
27

Route Table Entry Structure


Data broadcast by each mobile computer contains its new sequence number and
Destinations address Number of hops required to reach destination Sequence number of the information received regarding that destination

Within the header of the packet, the transmitted route tables will also contain
Hardware address of transmitting node Network address of transmitting node

28

Table Entries
Destination A B C Next A B B Metric 0 1 3 Seq. Nr A-550 B-102 C-588 Install Time 001000 001200 001200 Stable Data Ptr_A Ptr_B Ptr_C

D-312

001200

Ptr_D

Sequence number originated from destination


Ensures loop freeness

Install time when entry was made


Used to delete stale entries from table

Stable data pointer to a table holding information on how stable a route is


Used to damp fluctuations in network
29

Route Table Entry Structure


Routes with more recent sequence numbers are always preferred as the basis of forwarding decisions
But they are not necessarily advertised

Problem
One way links
Receiving a packet does not indicate the existence of path back to that neighbor

To avoid one way links


No mobile node inserts routing information received from a neighbor unless that neighbor shows that it can receive packets from the mobile node
30

Responding to Topology Change


Mobile nodes cause broken links as they move
Broken link is described by a metric of

Any route through the broken link is immediately assigned an and an updated sequence number
Sequence number is incremented by one Information describing a broken link is the only scenario in which sequence number is generated by any node other than destination

Such a route change is immediately disclosed in broadcast routing information

31

DSDV (New Node)


2. C inserts entry for D with sequence number D-000, then immediately broadcast own table 1. D broadcast for first time Send Sequence number D-000

(D, 0, D-000)

A
Dest. Next Metric A A 0 B B 1 C B 2 Seq. A-550 B-104 C-590

B
Dest. Next Metric Seq. A A 1 A-550 B B 0 B-104 C C 1 C-590

C
Dest. Next Metric A B 2 B B 1 C C 0 D D 1 Seq. A-550 B-104 C-590 D-000

32

DSDV (New Node cont.)


4. B gets this new information and updates its table. 3. C increases its sequence number to C-592 then broadcasts its new table.

(A, 2, A-550) (B, 1, B-102) (C, 0, C-592) (D, 1, D-000)

(A, 2, A-550) (B, 1, B-102) (C, 0, C-592) (D, 1, D-000)

A
Dest. Next Metric A A 0 B B 1 C B 2 Seq. A-550 B-104 C-590

B
Dest. Next Metric Seq. A A 1 A-550 B B 0 B-102 C C 1 C-592 D C 2 D-000

C
Dest. Next Metric A B 2 B B 1 C C 0 D D 1 Seq. A-550 B-102 C-592 D-000

33

DSDV (no loops, no count to infinity)


2. B does its broadcast -> no affect on C (C knows that B
has stale information because C has higher seq. number for destination D)

-> no loop -> no count to infinity

1. Node C detects broken Link: -> Increase Seq. Nr. by 1


(only case where not the destination sets the sequence number -> odd number)

(D, 2, D-100)

(D, 2, D-100)

A
Dest. Next Metric
D B 3

B
Seq.
D-100

C
Seq.
D-100

Dest.c Next Metric


D C 2

Dest. Next Metric


D D

Seq.
D-101

34

DSDV (Immediate Advertisement)


3. Immediate propagation B to A:
(update information has higher Seq. Nr. -> replace table entry)

2. Immediate propagation C to B:
(update information has higher Seq. Nr. -> replace table entry)

1. Node C detects broken Link: -> Increase Seq. Nr. by 1


(only case where not the destination sets the sequence number -> odd number)

(D, , D-101)

(D, , D-101)

A
Dest. Next Metric Seq. ... D B 4 D-100 3 D B D D

B
Dest.c Next Metric C C 3 2 Seq. ... D-100 D-101

C
Dest. Next Metric Seq. D B D-100 D 1 D D

D-101

D-101

35

Full/Incremental Update
Full Update
Send all of the routing information from own table Requires multiple Network Protocol Data Units (NPDU)

A full update is scheduled


When movements become frequent and the incremental update size approaches the size of a NPDU To make the next incremental update smaller

Incremental Update
Send only entries that have changed since last full Update Make it fit into one single packet

36

Route Selection Criteria


On receiving a new routing information
Information is compared to the information already available Metric is incremented by one New information is scheduled for advertisement

Any route with more recent sequence number is used


Routes with older sequence numbers are discarded

A route with sequence number equal to an existing route is chosen if it has a better metric
Older route may be discarded or stored as less preferable

37

Operating DSDV at Layer 2


Addresses stored in the route tables correspond to the layer at which the DSDV is operated
e.g., Operation at layer 3 uses network layer addresses

For operation at layer 2


Layer 3 protocol information along with layer 2 information should be included Each destination node would advertise which layer 3 protocols it supports Each node advertising reachability would also include the supported layer 3 protocols Changes would be part of incremental update

38

DSDV (Problem of Fluctuations)


P A Q What are Fluctuations
Entry for D in A: [D, Q, 14, D-100] D makes Broadcast with Seq. No. D-102 A receives from P Update (D, 15, D-102) -> Entry for D in A: [D, P, 15, D-102] A must propagate this route immediately A receives from Q Update (D, 14, D-102) -> Entry for D in A: [D, Q, 14, D-102] A must propagate this route immediately

11 Hops

10 Hops

(D,0,D-102)

This can happen every time D or any other node does its broadcast and lead to unnecessary route advertisements in the network, so called fluctuations
39

DSDV (Damping Fluctuations)


How to damp fluctuations P A Q
Record last and avg. Settling Time of every Route in a separate table. (Stable Data) Settling Time = Time between arrival of first route and the best route with a given seq. no A still must update his routing table on the first arrival of a route with a newer seq. no., but it can wait to advertising it. Time to wait is proposed to be 2*(avg. Settling Time) Like this, fluctuations in larger networks can be damped to avoid unnecessary advertisement, thus saving bandwidth
40

11 Hops

10 Hops

Summary
Advantages
Simple (almost like Distance Vector) Loop free through destination seq. numbers No latency caused by route discovery

Disadvantages
No sleeping nodes Bi-directional links required Overhead: most routing information never used Scalability is a major problem
41

Source Tree Adaptive Routing(STAR)


A bandwidth efficient routing protocol for ad hoc networks A variation of table-driven routing protocols, with the Least Overhead Routing Approach (LORA) as the key concept rather than the Optimum Routing Approach (ORA) that was employed by the most of the table-driven routing protocols LORA provides all the feasible paths with respect to some metric which may not be guaranteed optimal but with much less control overhead Every node broadcasts its source tree information
The set of links used by a router in its preferred path to a destination is called a source tree

Routers in STAR communicate their source routing trees to neighbors for all possible destinations
42

Source Tree Adaptive Routing(STAR)


Every node using its adjacent links, and the source tree broadcast by its neighbor links, builds a partial graph of its topology During initialization, a node sends its update messages about new destinations, the chances of routing loops, and costs of paths exceeding a given threshold Hence, each node will have a path to every destination node
The path, in most cases, would be sub-optimal

Such updates are communicated only when:


Routers determine long-term loops can be created New destinations are found When a destination becomes unavailable

43

Source Tree Adaptive Routing(STAR)


The basic update unit used to communicate changes to source trees is the Link State Update (LSU) STAR uses sequence numbers to validate the LSUs A sequence number associated with a link consists of a counter that can only be incremented by the head node (originator) of that link As LSUs for operational links never age out, there is no need for the head node of a link to send periodic LSUs to update links sequence number

44

Path Finding Approach


When a nodes s has data packets to send to a particular destination d, for which no path exists in its source-tree, its originates an update message to all its neighbors indicating the absence of a path to d This update message triggers another update message from a neighbor which has path to d Node s retransmits the update message as long as it does not have a path to d with increasing intervals between successive retransmissions After getting the source-tree update from a neighbor, the node s updates its source-tree and, using this, finds a path to all nodes in the network The data path contains information about the path to be traversed in order to prevent the possibility of routing loop formation

45

Route Maintenance
In the presence of a reliable broadcast mechanism, START assumes implicit route maintenance

Path breaks
The link update message about the unavailability of a next-hop node triggers an update message from a neighbor which has an alternate source tree indicating and alternate next-hop node to the destination

46

Route Maintenance
Handling the routing loops
When an intermediate node k receives a data packet to destination d, and one of the nodes in the packet`s traversed is present in node k`s path to the destination d, then it discards the packet and a RouteRepair update message is reliably sent to the node in the head of the route repair path The route repair path corresponds to the path k to x, where x is the last router in the data packet`s traversed path that is first found in the path k to d, that belongs to the source tree of k The RouteRepair packet contains the complete source tree of node k and the traversed path of the packet When an intermediate node receives a RouterRepair update message, it removes itself from the top of the route repair path and reliably sends it to the head of the route repair path
47

STAR Exchanging Update Messages


Update messages exchange depends on the routing approach used(ORA or LORA) For ORA to be supported in STAR, a router must send an update message whenever its source tree changes For LORA in STAR, a router reports updates to its source trees in event of unreachable nodes, new destinations, loops or cost exceeding a given threshold If the new source tree includes neighbors other than those present in the source tree that was last updated, the router must send its entire source tree in the update If the two source trees contain the same neighbors, the router sends only the updates needed to obtain the new tree from the old one
48

STAR Impact of the Link Layer


If the underlying MAC protocol does not provide collision-free transmission for reliable broadcasting, then in STAR, the router broadcasts to neighbors unreliably A packet must specify the path it has traversed A router must send its update reliably to the neighbor that caused it to change its source routing tree

49

Advantages
Low communication overhead among all the table-driven routing protocols The use of LORA approach in this table-driven routing protocol reduces the average control overhead compared to several other ondemand routing protocols

50

Вам также может понравиться