Download A Routing Protocol for k

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

RapidIO wikipedia , lookup

Backpressure routing wikipedia , lookup

Wireless security wikipedia , lookup

Point-to-Point Protocol over Ethernet wikipedia , lookup

AppleTalk wikipedia , lookup

Piggybacking (Internet access) wikipedia , lookup

Wake-on-LAN wikipedia , lookup

IEEE 802.1aq wikipedia , lookup

Deep packet inspection wikipedia , lookup

Multiprotocol Label Switching wikipedia , lookup

Computer network wikipedia , lookup

Internet protocol suite wikipedia , lookup

Zero-configuration networking wikipedia , lookup

Airborne Networking wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

IEEE 1355 wikipedia , lookup

Peering wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

Peer-to-peer wikipedia , lookup

Routing wikipedia , lookup

Routing in delay-tolerant networking wikipedia , lookup

Transcript
A Routing Protocol
for k-hop Networks
William List & Nitin Vaidya
University of Illinois – Urbana Champaign
Outline






Observations
Goals
The k-hop
Architecture
Routing
Simulations
Results
5/25/2017




Analysis
Conclusions
Related Work
Testbed
A Routing Protocol for k-hop Networks
2
Motivation

Ad-hoc networks are better-suited as "range
extensions” for wired networks
 Performance decreases as paths get longer
 Latency
 Overhead
 Success rate
 Most evident in highly dynamic networks

Wireless LANs are cheap and can be extended to
multiple hops for increased coverage
 Reduce
5/25/2017
dead spots in the network
A Routing Protocol for k-hop Networks
3
Goals

Assuming a network with a bound placed
on wireless paths, we would like to
 Improve

Even in high mobility scenarios
 Reduce

latency
Particularly for initial route setup
 Operate
5/25/2017
path reliability
with low overhead
A Routing Protocol for k-hop Networks
4
More Goals

Design and implement a testbed to verify
the feasibility of experimental routing
protocols
5/25/2017
A Routing Protocol for k-hop Networks
5
The k-hop Architecture

A k-hop network is a network that
 Supports
a maximum of k hops between two
wireless clients or a wireless client and a
gateway
 2k wireless hops possible if both wireless
endpoints are far apart and using gateways
 A mobile client is in-network if

5/25/2017
Within k-hops distance from a gateway AND there
is a mobile client to relay its packets
A Routing Protocol for k-hop Networks
6
Example k-hop Network (k=2)
Gateway
Mobile Clients
5/25/2017
A Routing Protocol for k-hop Networks
7
Routing




Want all mobile clients to be aware of their
surrounding gateways at all times
Want to support multiple paths to a destination
Want fast recovery in the case of route breakages
Two-tiered routing structure
 Between
mobile clients and between gateways
 What combination of pro/reactivity should we use?
5/25/2017
A Routing Protocol for k-hop Networks
8
Routing cont.

Gateways share information about routes to
mobile clients via
 Message
exchanges or
 A shared memory space

Mobile clients store learnt paths to gateways in
its Gateway List (GL)
 Think

of as multiple “default” routes
Use AODV-style sequence numbers to keep
messages in-order
5/25/2017
A Routing Protocol for k-hop Networks
9
Beaconing

A way for a gateway to notify all nearby
mobile clients of its presence.
 Periodic
(every x seconds)
 Broadcast up to k hops using a counter-based
scheme

Which mobile clients send a RREP
 Those
adding the gateway to their GL
 Those that have ongoing connections
5/25/2017
A Routing Protocol for k-hop Networks
10
Route Discovery (Mobile Client)
If route exists, send data right away
 Else, broadcast RREQ with TTL=k

 If
no reply, forward data packets to nearest
gateway
 If no gateway is known, send a special RREQ
to discover new gateways
5/25/2017
A Routing Protocol for k-hop Networks
11
Route Discovery (Gateway)

When data packets arrive
 Look
up shortest path in the global routing
table and forward packets

If path is stale at remote gateway

 If
It sends out a new RREQ for the destination to acquire
fresh path
no path is known or stale path is invalid
Page – RREQ sent by all gateways with TTL=k
 If destination is in-network, it should respond

5/25/2017
A Routing Protocol for k-hop Networks
12
Route Discovery cont.

Resulting connection is
 Local
if a direct path is found
 Remote if a gateway is used

Connection can migrate from remote to local
 A route
is overheard to the destination as a byproduct
of beaconing
 Gratuitous RREP sent to the destination to establish
reverse path
5/25/2017
A Routing Protocol for k-hop Networks
13
Route Recovery (Mobile Client)

If the connection was remote
 Switch
to a different gateway
 If no other gateway is available, page for new
gateways

If the connection was local
First try to send a RREQ with k to find a new route to
the destination
 If no route is found, use a gateway; connection is now
remote

5/25/2017
A Routing Protocol for k-hop Networks
14
Route Recovery (Gateway)

If path to destination fails
 Forward
to different gateway that has path
If no other gateway has a path, send local RREQ
with TTL=k
 On failure have all gateways page for the
destination to see if it is in-network

5/25/2017
A Routing Protocol for k-hop Networks
15
Simulation Setup





ns2 simulator
100 mobile clients in 2400 m x 600 m area
Gateways every 600 m (300 m from edges)
Multiple mobility patterns
CBR traffic between mobile clients
 64
byte packets with 200 ms spacing (2.5kb/s)
 Similar to traffic loads in previous works

Comparison to DSDV for local routing
5/25/2017
A Routing Protocol for k-hop Networks
16
Metrics

Packet Delivery Ratio
 Number
of received packets / number of
packets sent

End-to-end Path Latency
 Time
it takes for a packet to reach its
destination

Routing Overhead
 Measured
5/25/2017
per node in the network
A Routing Protocol for k-hop Networks
17
Simulations

30 connections between mobile clients
 In
other words, 60% of mobile clients are in a
connection
k = 2 and k = 3
 Speeds of 1, 5, 10 and 20 m/s

5/25/2017
A Routing Protocol for k-hop Networks
18
Packet Delivery Ratio (%)
Packet Delivery Ratio
100
95
90
85
80
75
0
5
10
15
20
Mobility (m/s)
k-Hop (k=2)
5/25/2017
k-Hop (k=3)
DSDV (k=2)
A Routing Protocol for k-hop Networks
DSDV (k=3)
19
Overhead
Overhead per Node (kbps)
1.2
1
0.8
0.6
0.4
0.2
0
0
5
10
15
20
Mobility (m/s)
k-Hop (k=2)
5/25/2017
k-Hop (k=3)
DSDV (k=2)
A Routing Protocol for k-hop Networks
DSDV (k=3)
20
Packet Latency
Path Latency (s)
0.2
0.15
0.1
0.05
0
0
5
10
15
20
Mobility (m/s)
k-Hop (k=2)
5/25/2017
k-Hop (k=3)
DSDV (k=2)
A Routing Protocol for k-hop Networks
DSDV (k=3)
21
Analysis

Overall
 Higher
packet delivery success rate as
compared to DSDV
 Less overhead
 Slightly higher end-to-end packet latencies
Interesting optimization: skip the local RREQ step
and latency improves dramatically
 Tradeoff: Average path length tends to be slightly
longer, especially as k increases

5/25/2017
A Routing Protocol for k-hop Networks
22
Analysis cont.

Beaconing incurs high instantaneous contention
in the network
 Data
packets get dropped during this period
 Scalability an issue as the number of connections
increases


More mobile clients respond to beacons in order to keep
reverse paths fresh
Routing tables for mobile clients remain small
 Only
have to store paths to nearest gateway and per
active destination
5/25/2017
A Routing Protocol for k-hop Networks
23
Analysis cont.

Temporary non-optimal paths are possible
 Gateways
prefer newer routes over those that have
expired, even if they are longer




Can overwrite a perfectly valid shorter path
Problem of updating “too much”
Needs strict comparison to Hierarchical AODV
Not clear whether mobile clients should do a
local search first for route discovery
5/25/2017
A Routing Protocol for k-hop Networks
24
Analysis cont.

Many variables that can be optimized
 Beacon
interval
 Count variable for broadcasting

Many variations that can be tested
 Route
recovery by all nodes
 Adding Multiple paths
 When to respond to a beacon
5/25/2017
A Routing Protocol for k-hop Networks
25
Conclusions
Supplementing an on-demand protocol
with pro-activity does not necessary
improve performance
 Extension of network only as good as the
density of mobile clients

 Inexpensive,
fixed relays could server better
as extensions
5/25/2017
A Routing Protocol for k-hop Networks
26
Conclusions cont.

Needs comparison with AODV/DSDV (or
FSR) implementations
 With/without

gateways, see related work
Overhead increases at high rate as the
number of end-to-end connections
increases
 As
seen when comparing to only 10
simultaneous connections
5/25/2017
A Routing Protocol for k-hop Networks
27
Conclusions cont.

Have to be careful with sequence numbers
when mixing paths to local destinations
and gateways
 Remember
that in a remote connection, the
source’s path to destination == gateway

Can get tricky when the destination moves within
local range
 Gotcha
– gateways passing data packets back
and forth for a destination
5/25/2017
A Routing Protocol for k-hop Networks
28
Testbed
Array of Linux laptops
 Framework written in C/C++.
 Adopts a modular approach to protocol
development
 Uses the ASL library to customize the
Linux kernel routing table.

5/25/2017
A Routing Protocol for k-hop Networks
29
Testbed Framework
User-space
Routing
Table
Kernel
ASL
Routing
Protocol
Engine
Packet
Dispatcher
Routing
Table
Sockets
TCP/IP
Stack
5/25/2017
Link
Manager
A Routing Protocol for k-hop Networks
Wireless
tools
30
Routing Protocol Engine





The core of the testbed that talks to other
components
Responsible for packet processing/creation
Controls routes with the User-space Routing
Table
Receives/sends packets from/to the Packet
Dispatcher.
Listens for events from the Link Manager.
5/25/2017
A Routing Protocol for k-hop Networks
31
Routing Table
Controlled by the Routing Protocol Engine
 Interfaces with the kernel routing table via
ASL

 ASL provides
functionality to
Capture outgoing packets with destinations not in
the kernel routing table.
 Insert/update/delete routes

5/25/2017
A Routing Protocol for k-hop Networks
32
Link Manager
Reports broken links to the Routing
Protocol Engine
 Can provides link information in some
cases, such as signal strength

 Uses
wireless tools event extensions
 Information received via a raw socket
5/25/2017
A Routing Protocol for k-hop Networks
33
Packet Dispatcher
Handles creation/management of UDP
sockets, including socket polling
 Able to send packets from the Routing
Protocol Engine and invoke callbacks for
packets it receives
 Event-driven model

5/25/2017
A Routing Protocol for k-hop Networks
34
Related Work

1997 – Y.B. Ko and N. Vaidya
 Super-MHs
(gateways) & Mini-MHs (clients)
 Multi-phase reactive route discovery process
Local flood (Super-MHs respond)
 Local flood by nearest Super-MHs
 Flood by ALL Super-MHs

 Time-intensive
5/25/2017
A Routing Protocol for k-hop Networks
35
Related Work cont.

2002 – K. Xu, X. Hong and M. Gerla
 LANMAR routing
(Local – FSR; Remote – DSDV)
 Clustering algorithm for backbone node (BN)
selection

Backbone nodes not the same as landmarks
 Mobile
nodes learn to route through BNs to take
advantage of shorter paths
 Relies on addresses to define subnets

5/25/2017
Mobile nodes must store entries for all nodes in the network
A Routing Protocol for k-hop Networks
36
Related Work cont.

2002 – C. Tschudin and R. Gold
 LUNAR is
simple protocol designed for
small-hop environments
5/25/2017
A Routing Protocol for k-hop Networks
37
Related Work cont.

2002 – K. Xu and M. Gerla
 Dynamic

Cluster-heads use long-range radios as backbone links
 Two

clustering algorithm
protocol combinations tested (intra/inter cluster)
AODV/AODV and DSDV/AODV
 DSDV/AODV
has lowest delay and highest packet
delivery success rate

5/25/2017
Note: clusters are single-hop, so DSDV does well
A Routing Protocol for k-hop Networks
38