Network Routing: Metrics and NonTraditional Routing - PowerPoint PPT Presentation

1 / 124
About This Presentation
Title:

Network Routing: Metrics and NonTraditional Routing

Description:

... by batch map ... hard to scale to a large network. overhead in packet header ... 50 tx Low throughput. Exploit wireless characteristics 3 tx High throughput ... – PowerPoint PPT presentation

Number of Views:68
Avg rating:3.0/5.0
Slides: 125
Provided by: yangrich
Category:

less

Transcript and Presenter's Notes

Title: Network Routing: Metrics and NonTraditional Routing


1
Network Routing Metrics and Non-Traditional
Routing
  • Y. Richard Yang
  • 2/26/2009

2
Admin.
  • Project propose due
  • Friday

3
Recap Key Problems
  • Forwarding and location management
  • Routing
  • due to node mobility/wireless connectivity, link
    connectivity/quality can be highly dynamic
  • need to design routing protocols that are
    effective in handling dynamic topologies
  • there can be interference among links and paths
  • need good link performance metrics or scheduling

4
Recap Routing Protocols
  • Proactive protocols
  • distance vector
  • e.g., DSDV
  • link state
  • link reversal
  • e.g., partial link reversal, TORA
  • Reactive protocols
  • DSR
  • AODV

5
Recap ETX
  • ETX The predicted number of data transmissions
    required to successfully transmit a packet over a
    link
  • Link loss rate p
  • Expected number of transmissions
  • Problems of using ETX in 802.11 networks?

6
Problems of ETX
  • ETX does not handle multirate 802.11 networks
  • ETX does not work out well when nodes have
    multiple radios working on different channels

7
Extending ETX Multirate
  • In a multirate environment, need to consider link
    bandwidth
  • packet size S, Link bandwidth B
  • each transmission lasts for S/B

Routing in Multi-radio, Multi-hop Wireless Mesh
Network, Richard Draves, Jitendra Padhye, and
Brian Zill. Mobicom 2004.
8
Extending ETX Multirate
  • Add ETTs of all links on the path
  • Use the sum as path metric
  • Interpretation pick a path with the lowest total
    network occupation time
  • Q under what condition is SETT total network
    occupation time?

9
Extending ETX Channel Diversity with Multiradio
10
Impact of Interference
  • Interference reduces throughput
  • throughput of a path is lower if many links are
    on the same channel
  • path metric should be worse for non-diverse paths

11
Combining Link Metric into Path Metric Proposal 2
  • Group links on a path according to channel
  • assumes links on the same channel interfere with
    one another
  • pessimistic for long paths
  • Add ETTs of links in each group
  • Find the group with largest sum (BG-ETT)
  • this is the bottleneck group
  • too many links, or links with high ETT (poor
    quality links)
  • Use this largest sum as the path metric
  • Lower value implies better path

12
BG-ETT Example
0
5.33 ms
5.33 ms
1.5 Mbps
1.33 ms
4 ms
4 ms
2 Mbps
2.66 ms
2.66 ms
2.66 ms
3 Mbps
13
BG-ETT May Select Long Paths
14
Path Metric Putting it all together
  • SETT favors short paths
  • BG-ETT favors channel diverse paths
  • ß is a tunable parameter
  • Higher value more preference to channel
    diversity
  • Lower value more preference to shorter paths

15
Implementation and such
  • Measure loss rate and bandwidth
  • loss rate measured using broadcast probes similar
    to ETX
  • updated every second
  • bandwidth estimated using periodic packet-pairs
  • updated every 5 minutes
  • Implemented in a source-routed, link-state
    protocol, Multi-Radio Link Quality Source Routing
    (MR-LQSR)
  • nodes discover links to its neighbors, measure
    quality of those links
  • link information floods through the network
  • each node has full knowledge of the topology
  • sender selects best path
  • packets are source routed using this path

16
Evaluations
17
Media Throughput (Baseline, single radio)
18
Media Throughput (Baseline, two radios)
19
Impact of ß value
Channel diversity is important especially for
shorter paths
20
Summary
  • Link metrics are still an active research area

21
Summary Traditional Routing
  • So far, all routing protocols in the framework of
    traditional wireline routing
  • a graph representation of underlying network
  • point-to-point graph edges with costs
  • select a lowest-cost route for a src-dest pair
  • commit to a specific route before forwarding
  • Problems dont fully exploit path (spatial)
    diversity and wireless broadcast opportunities

22
Outline
  • Admin.
  • Link metrics
  • Non-traditional routing

23
Motivating Scenario I
  • Assumes independent loss
  • Tradition routing has to follow one pre-committed
    route
  • Does not allow exploration of opportunities

24
Motivating Scenario II
  • Traditional routing picks a single route, e.g.,
    src -gt B -gt D -gt dst
  • packets received off path are useless
  • However, one should take advantage of
    transmissions that reach unexpectedly far or
    unexpectedly short

25
Motivating Scenario III
  • A sends 1 packet to B B sends packet 3 to A
  • If R has both packets 1 and 3, it can combine
    them and explore coding and broadcast nature of
    wireless

26
Outline
  • Admin.
  • Link metrics
  • Non-traditional routing
  • motivation
  • network coding exploiting network broadcast

27
Coding
  • We have covered source coding (FEC, compression)
  • The new approach uses opportunistic network
    coding
  • goal increase the amount of information that is
    transported

28
Opportunistic Coding
29
Outline
  • Admin.
  • Link metrics
  • Non-traditional routing
  • motivation
  • network coding exploiting network broadcast
  • opportunistic routing ExOR

30
Opportunistic Routing (ExOR)
  • Group packets into batches
  • Instead of choosing a fix sequential path (e.g.,
    src-gtB-gtD-gtdst), the source chooses a list of
    forwarders (a forwarder list in the packets)
    using ETX-like metric
  • a background process collects ETX information via
    periodic link-state flooding
  • Forwarders are prioritized by ETX-like metric to
    the destination

31
ExOR Forwarding
  • The highest priority forwarder transmits when the
    batch ends
  • The remaining forwarders transmit in prioritized
    order
  • each forwarder forwards packets it receives yet
    not received by higher priority forwarders
  • status collected by batch map
  • A nodes stops sending the remaining packets in
    the batch if its batch map indicates over 90 of
    this batch has been received by higher priority
    nodes
  • the remaining packets transferred with
    traditional routing

32
Batch Map Example
  • Batch map indicates, for each packet in a batch,
    the highest-priority node known to have received
    a copy of that packet

33
Example Timeline
Forwarder list N24(dst), N20, N18, N11, N8, N17,
N13, N5(src)
34
Evaluations
  • 65 Node pairs
  • 1.0MByte file transfer
  • 1 Mbit/s 802.11 bit rate
  • 1 KByte packets
  • EXOR bacth size 100

35
Evaluation 2x Overall Improvement
1.0
0.8
0.6
Cumulative Fraction of Node Pairs
0.4
0.2
ExOR
Traditional
0
0
200
400
600
800
Throughput (Kbits/sec)
  • Median throughputs 240 Kbits/sec for ExOR,
  • 121 Kbits/sec for Traditional

36
25 Highest throughput pairs
1 Traditional Hop 1.14x
2 Traditional Hops 1.7x
3 Traditional Hops 2.3x
1000
ExOR
Traditional Routing
800
600
Throughput (Kbits/sec)
400
200
0
Node Pair
37
ExOR uses links in parallel
  • ExOR
  • 7 forwarders
  • 18 links
  • Traditional Routing
  • 3 forwarders
  • 4 links

38
ExOR moves packets farther
0.6
ExOR
Traditional Routing
Fraction of Transmissions
0.2
0.1
0
0
100
200
300
400
500
600
700
800
900
1000
Distance (meters)
  • ExOR average 422 meters/transmission
  • Traditional Routing average 205 meters/tx

39
Comments
  • Pros
  • takes advantage of link diversity (the
    probabilistic reception) to increase the
    throughput
  • does not require changes in the MAC layer
  • can cope well with unreliable wireless medium and
    mobility
  • Cons
  • maybe hard to scale to a large network
  • overhead in packet header (batch info)
  • batches increase delay

40
Outline
  • Admin.
  • Link metrics
  • Non-traditional routing
  • motivation
  • network coding exploiting network broadcast
  • opportunistic routing ExOR
  • opportunistic routing MIXIT

41
Mesh Networks Borrowed the Internet API
42
Wireless Naturally Provides Reliability Across
Links
99 (10-3 BER)
0
D
S
0
99 (10-3 BER)
Even 1 bit in 1000 incorrect ? Packet loss of 99
43
Implication
99 (10-3 BER)
Loss
0
D
S
Loss
0
99 (10-3 BER)
Link by link reliability ? 50 transmissions
44
Wireless Naturally Provides Reliability Across
Links
99 (10-3 BER)
0
D
S
0
99 (10-3 BER)
Spatial diversity Even if no correct packets,
every bit is likely received correctly at some
node
Current contract ? 50 tx ? Low throughput
Exploit wireless characteristics ?3 tx ? High
throughput
Exploit wireless characteristics ?3
transmissions
45
Useful with High Quality Links?
R1
1
0
Loss
Sa
Da
0
Pa
2
R2
Loss
R3
1
Loss
0
Db
Sb
0
R4
3
Pb
Loss
46
Useful with High Quality Links?
R1
1
0
Sa
Da
0
Pa
2
R2
R3
1
0
Current contract ? Inhibits concurrency Exploit
wireless characteristics ? Enables high
concurrency
Db
Sb
0
R4
3
Pb
47
Current Contract
  • Limits throughput, inhibits concurrency

New Contract Exploiting Wireless Characteristics
  • High throughput, high concurrency

48
MIXIT
  • New contract between layers to harness wireless
    characteristics
  • Novel symbol-level network code that scalably
    routes correct symbols
  • High concurrency MAC
  • Implementation and evaluation
  • 3-4x gain over shortest path routing
  • 2-3x gain over packet-level opp. routing

49
How does a Router Identify Correct Symbols?
  • PHY already estimates a confidence for every
    decoded symbol JB07
  • PHY LL delivers high confidence symbols to
    network layer

PHY Confidence
Packet
50
What Should Each Router Forward?
D
S
P1
P2
P1
P2
P1
P2
51
What Should Each Router Forward?
D
S
P1
P2
P1
P2
P1
P2
  • But overlap in correctly received symbols
  • Potential solutions
  • Forward everything ? Inefficient
  • Coordinate ? Unscalable

52
MIXIT Prevents Duplicates using Symbol Level
Network Coding
D
S
P1
P2
P1
P2
P1
P2
Forward random combinations of correct symbols
53
MIXIT Prevents Duplicates using Symbol Level
Network Coding
Routers create random combinations of correct
symbols
54
MIXIT Prevents Duplicates using Symbol Level
Network Coding
Solve 2 equations
Randomness prevents duplicates without
co-ordination
Destination decodes by solving linear equations
55
MIXIT Prevents Duplicates using Symbol Level
Network Coding
Routers create random combinations of correct
symbols
56
MIXIT Prevents Duplicates using Symbol Level
Network Coding
Solve 2 equations
  • Symbol Level Network Coding
  • No duplicates ? Efficient
  • No coordination ? Scalable

Destination decodes by solving linear equations
57
Destination needs to know which combinations it
received
(if both symbols were correct)
(if only s1 was correct)
(if only s2 was correct)
Nothing
(if neither symbol was correct)
58
Destination needs to know which combinations it
received
Use run length encoding
Coded Packet
Original Packets
59
Destination needs to know which combinations it
received
Use run length encoding
Coded Packet
Original Packets
60
Destination needs to know which combinations it
received
Use run length encoding
Coded Packet
Original Packets
61
Destination needs to know which combinations it
received
Use run length encoding
Coded Packet
Original Packets
62
Destination needs to know which combinations it
received
Use run length encoding
Run length encoding efficiently expresses
combinations
63
Symbol-level Network Coding
Forward random combinations of correct symbols
Coded Packet
Original Packets
64
Symbol-level Network Coding
Forward random combinations of correct symbols
Coded Packet
Original Packets
65
Symbol-level Network Coding
Forward random combinations of correct symbols
Coded Packet
Original Packets
66
Symbol-level Network Coding
Forward random combinations of correct symbols
Coded Packet
Original Packets
67
Symbol-level Network Coding
Forward random combinations of correct symbols
Use run length encoding to efficiently expresses
combinations in header
68
MIXIT Efficient and Scalable Symbol-level
Opportunistic Routing
Solve 2 equations
Original Symbols
  • Symbol Level Network Coding
  • No duplicates ? Efficient
  • No coordination ? Scalable

Destination decodes by solving linear equations
69
Routers May Forward Erroneous Bits Despite High
Confidence
MIXIT has E2E error correction capability!
Decode ECC
Symbol-Level Network Coding
ECC
Data
Data
Source
Destination
  • MIXITs Error Correcting Code (ECC)
  • Routers are oblivious to ECC
  • Optimal error correction capability
  • Rateless

70
High Concurrency MAC
w x ? NO! w u? YES!
u
w
x
  • Each node maintains a map of conflicting
    transmissions
  • Map is based on empirical measurements and built
    in distributed, online manner

71
Evaluation
  • Implementation on GNURadio SDR and USRP
  • Zigbee (IEEE 802.15.4) link layer
  • 25 node indoor testbed, random flows
  • Compared to
  • Shortest path routing based on ETX
  • MORE Packet-level opportunistic routing

72
Throughput Comparison
CDF
2.1x
MIXIT
3x
MORE
Shortest Path
Throughput (Kbps)
Throughput increase 3x over SPR, 2x over MORE
73
Where do the gains come from?
CDF
MIXIT
MORE
Shortest Path
Throughput (Kbps)
Take concurrency away from MIXIT
74
Where do the gains come from?
CDF
MIXIT without concurrency
1.5x
MORE
Shortest Path
Throughput (Kbps)
Without concurrency, 1.5x gain over MORE
Take concurrency away from MIXIT
75
Where do the gains come from?
MIXIT
CDF
MIXIT without concurrency
MORE
Shortest Path
Gains come from both moving to the symbol level
and high concurrency
Throughput (Kbps)
76
Where do the gains come from?Higher Concurrency?
CDF
1.4x
Throughput (Kbps)
MORE, enhanced with higher concurrency is only
1.4x better
77
Where do the gains come from?
CDF
1.5x
2.1x
Higher concurrency MAC fully exploits
symbol-level diversity
Throughput (Kbps)
78
Multiple Flows
MORE/SPR Higher congestion ? Lower
concurrency MIXIT Higher congestion ? High
concurrency
79
(No Transcript)
80
Geographical Routing
81
Motivations
  • A need for geographical based distribution
  • e.g., sensornets and location-based services
  • Reducing state overhead
  • the routing protocols we discussed so far may not
    scale to large-scale networks
  • maintain (end-to-end) routing states for each
    destination
  • thus overhead proportional to network size

82
GeoRouting Greedy Distance
S
D
  • Find neighbors who are the closest to destination
    D
  • To make progress, the chosen neighbor should be
    closer to destination

83
Geographical Routing
  • Each node only needs to keep state for its
    neighbors
  • Beaconing mechanism
  • each node broadcasts its MAC and position
  • to minimize costs piggybacking

84
Greedy Routing Not Always Works
D
85
Greedy Routing Works Well in Dense Networks
D
  • If node density is high, it is a low probability
    event for the region to have no nodes

86
Dealing with Void Right-Hand Rule
Right-hand rule When arriving at node x from
node y, the next edge traversed is the next one
sequentially counterclockwise about x from edge
(x,y)
87
Right Hand Rule on Convex Subdivision
Applying the right hand rule to convex
subdivision (namely a planar graph where every
internal face is a polytope) first remove the
edges crossing the line from source to
destination, and then apply the right hand rule
If not convex subdivision, removing crossing
edges may not work
88
Right-Hand Rule Does Not Work Well with Cross
Edges
z
v
D
u
  • x originates a packet to u
  • Right-hand rule results in the long detour
    x-u-z-w-u-x

w
x
89
Removing Cross Edges
z
v
D
u
w
  • Remove (w,z) from the graph
  • Right-hand rule results in the route x-u-z-v-D

x
90
How to Make a Graph Planar?
  • Convert a connectivity graph to planar
    non-crossing graph by removing bad edges
  • make sure the original graph will not be
    disconnected
  • two types of planar graphs
  • Relative Neighborhood Graph (RNG)
  • Gabriel Graph (GG)

91
Relative Neighborhood Graph
  • Edge uv can exist only if there does not exist
    another node w inside the intersection of the
    two circles centered at u and v with radius d(u,
    v)
  • i.e., no w such that d(w, u) lt d(u, v) and d(w,
    v) lt d(u, v)
  • Or equivalently ?w ? u, v d(u,v)
    maxd(u,w),d(v,w)

not empty ? remove uv
92
Gabriel Graph
  • An edge (u,v) exists between vertices u and v if
    no other vertex w is present within or on the
    circle whose diameter is uv.
  • ?w ? u, v d2(u,v) lt d2(u,w) d2(v,w)

Not empty ? remove uv
93
Examples
Full graph
GG subset
RNG subset
  • 200 nodes
  • randomly placed on a 2000 x 2000 meter region
  • radio range of 250 m
  • Bonus remove redundant, competing path ? less
    collision

94
Properties of GG and RNG
RNG
  • RNG is a sub-graph of GG
  • because RNG removes more edges
  • GG is a planar graph
  • and thus RNG is also planar
  • Connectivity
  • if the original graph isconnected, RNG is also
    connected

GG
95
Connectedness of RNG Graph
  • Key observation
  • any edge on the minimumspanning tree of the
    originalgraph is not removed
  • Assume (u,v) is such an edge but removed in RNG
    due to w

u
v
96
Delaunay Triangulation
  • Let disk(u,v,w) be a disk defined by the three
    points u,v,w
  • The Delaunay Triangulation (Graph)
  • There is a triangle of edges between three nodes
    u,v,w iff the disk(u,v,w) contains no other
    points
  • Properties of the Delaunay Triangulation graph
  • it is the dual of the Voronoi diagram
  • DT graph is planar

97
Some Interesting Properties
  • Since the MST(V) is connected and the DT(V) is
    planar, all the planar graphs above are connected
    and planar

98
Final Algorithm Greedy Perimeter Stateless
Routing (GPSR)
  • Maintenance
  • all nodes maintain a single-hop neighbor table
  • Use RNG or GG to make the graph planar
  • Routing
  • use greedy forwarding whenever possible
  • resort to perimeter routing when greedy
    forwarding fails and record current location Lc
  • resume greedy forwarding when we are closer to
    destination than Lc

99
Example
d
d
D
D
e
e
c
c
a
a
f
S
S
b
For details about GPSR algorithm, please GPSR.
100
Evaluations
  • 50, 112, and 200 nodes with 802.11 WaveLAN radios
  • Maximum velocity of 20 m/s
  • 30 CBR traffic flows, originated by 22 sending
    nodes
  • Each CBR flows at 2 Kbps, and uses 64-byte
    packets

101
Packet Delivery Success Rate
Very dense network 20 neighbors
102
Routing Protocol Overhead
103
Routing State
  • State per router for 200-node
  • GPSR node stores state for 26 nodes on average in
    pause time-0

104
Path Length
105
Worst Case of GeoRouting in Terms of Hop Count
  • A worst case scenario
  • destination is central node
  • source is any node on ring
  • any spine can go to middle
  • O(c) nodes along ring and O(c) nodes along each
    spine
  • Best path length O(c)O(c)
  • Geographic routing
  • Test O(c) spines of length O(c)
  • Cost O(c2) instead of O(c)

106
Geographic Routing
107
Pros and Cons of GPSR
  • Pros
  • low routing state and control traffic
  • scalable
  • handles mobility well
  • Cons
  • planarized graph is hard to guarantee under
    mobility
  • location might not be available everywhere (we
    will see the problem next week)
  • geographic distance does not correlate well with
    network proximity

108
Why Geographic Routing Without Location?
  • Location is hard to get
  • GPS takes power, doesnt work indoors, difficult
    to incorporate in small sensors
  • the network localization problem is difficult
  • True location may not be useful if there are
    obstacles

In the connectivity space, B is closer to
destination!!
109
Overview
  • Objective assign virtual coordinates to nodes
    so that
  • the coordinates are computed efficiently,
  • routing works well using the computed coordinates
  • Progress in three steps
  • the perimeter nodes and their locations are known
  • the perimeter nodes are known but not their
    coordinates are not known
  • nothing is known
  • We cover the first two steps

110
The Perimeter Nodes and Their Locations Are Known
  • Image a rubber band from each node to each
    (connected) neighbor
  • The force of a rubber band is proportional to
    its length, directedto the neighbor

111
The Perimeter Nodes and Their Locations Are Known
  • The equilibrium is achievedwhen the position p
    of a node is equal to the average of its
    neighbors
  • where n is number of neighbors
  • Algorithm
  • each node sends its position to its neighbors
  • a node updates its new position to be the average
    of those of its neighbors

112
Perimeter Nodes Are Known (True Positions)
3200 nodes 64 perimeter nodes on the boundary
113
Perimeter Nodes Are Known (10 iterations)
Internal nodes initialized as the center of the
square
114
Perimeter Nodes Are Known (100 iterations)
Internal nodes initialized as the center of the
square
115
Perimeter Nodes Are Known (1000 iterations)
Internal nodes initialized as the center of the
square
116
Routing Performance
  • 32000 packets with random source-destination pairs

Success rate using (distance) greedy routing
117
Two More Scenarios
Success rate 0.981 Avg. path length 17.3
Success rate 0.99 Avg. path length 17.1
118
Weird Shapes
119
The Perimeter Nodes Are Known But Their Locations
Are Not Known
  • Assume the distance between two nodes is the
    (minimum) number of hops to go from one to the
    other
  • Distances can be derived by flooding the network
  • each perimeter node sends a HELLO message with a
    hop counter of 0
  • when seeing a message from a perimeter node with
    a lower hop counter, a node increases the counter
    by 1 and forwards it

120
Virtual Coordinates by Triangulation
  • Each perimeter node solves the minimization
    problem
  • Detail

121
Convergence and Performance
One iteration success rate 0.992 avg. path
length 17.2 Ten iterations success rate
0.994 avg. path length 17.2
122
Backup Slides
123
Improving Resiliency
  • If perimeter vector is inaccurate, it results in
    inconsistent information
  • Augment with two beaconing nodes which provide
    two coordinate axes
  • special perimeter nodes or run leader election to
    select the two nodes
  • Origin is chosen as the center of gravity of all
    perimeter nodes
  • more robust to lost information

124
Selecting Perimeter Nodes
  • Rule A node is a perimeter node if
  • It is farthest away from the first beacon node
    among all its one-hop neighbors

125
Perimeter Node Detection
126
Convergence and Performance
Ten iterations success rate 0.996 avg. path
length 17.3
127
Projecting on Circle After First Computation
  • Circle center is center of gravity radius is
    average of distance of the perimeter nodes to the
    CG
  • Motivation maintain a consistent coordinate
    space

128
Virtual Polar Coordinate Space
  • Each node is assigned a label
  • label is number of hops to root and virtual angle
    range

Discussion how to do routing?
129
Build the Tree
  • Root node
  • starts as root
  • broadcasts level 0
  • A non-root node
  • receives message level n marks parent
  • broadcasts message saying level n1
  • All subtrees report size back to parent.
  • Root does assignment of virtual angles.

Question what about the issues of the described
algorithm?
130
Motivation for a Better Metric
131
Implementation and such
  • Modify DSDV or DSR
  • Example evaluation
  • in DSDV w/ ETX, route table is a snapshot taken
    at end of 90 second warm-up period
  • in DSR w/ ETX, source waits additional 15 sec
    before initiating the route request

132
ETX Performance
DSDV
DSR
Write a Comment
User Comments (0)
About PowerShow.com