sgps a hybrid of topology and location based protocol for ad hoc networks
DESCRIPTION
SGPS A Hybrid of Topology and Location Based Protocol for Ad hoc Networks. Jingyi Yu Computer Graphics Group. Topology-Oriented Distance Vector DSDV AODV TORA DSR Hierarchical HSR Landmark. Location Oriented Flooding LAR DREAM Hierarchical GLS SGPS. - PowerPoint PPT PresentationTRANSCRIPT
SGPSA Hybrid of Topology and Location Based Protocol for Ad hoc Networks
Jingyi YuComputer Graphics Group
Existing Routing Protocols for MANET
• Topology-Oriented– Distance Vector
• DSDV• AODV• TORA• DSR
– Hierarchical • HSR• Landmark
• Location Oriented– Flooding
• LAR• DREAM
– Hierarchical• GLS• SGPS
Analysis of Topology Based Protocol• DSDV (Destination-Sequenced DV)
• Modified Distance Vector• Use sequence numbers to
differentiate freshness(even and odd)
• Loop free• Fail to converge as node mobility
increases
• AODV (Ad hoc On-demand DV)• Combination of DSDV and DSR• Route Discovery from DSR• Sequence number from DSDV• Reverse Route and Forward
Route (avoid source routing)
• DSR (Dynamic Source Routing)• Aggressive caching• Reduce routing overhead when
flooding• Packets are forwarded according to
“source route”
• TORA (Temporally-order Routing Algorithm)
• Link reversal(Query/Update)• Flow of traffic, network tube• Need routing update delivered by
“temporal order”
Performance Analysis of Topology Oriented Protocols
• DSDV– Converge slowly
• TORA– Implemented on IMEP
• AODV– High delivery rate
• DSR– High delivery rate
This simulation is done for 50 nodes, 1500m x 300mEach node remains stationary for pause time seconds beforesending packets.
Performance Analysis of Topology Oriented Protocols (cont.)
• DSDV– Almost constant overhead
• TORA– Huge routing overhead– Why? Reliable IMEP
• AODV– Large routing overhead
• DSR– Low routing overhead
Location Oriented Routing
• Flooding Based– LAR
• Route discovery by flooding
• Request zone, cache previous position/speed
– DREAM • Periodical flood location
update• The further, the less
frequent update
• Hierarchical– GLS
• Geographical hierarchy• Geographical forwarding• Location servers• Forward pointer
– SGPS• Handle problems when
GPS fails• How to choose more
location servers
GLS Routing Pipeline• Why location servers?
– If every node knows any other node’s position, it can just send packets through geographic forwarding.Problem: Too much location update flooding through the networkSolution: Hierarchical approach, keep a limited amount of location servers
– If we have stationary leaders, those “unfortunate” will be the bottleneck and die out fasterSolution: Each node is some other nodes’ location server
Establish a space hierarchy
Recruiting location servers
Route discovery: Location query
Location responseGet Dest’s location
Route packets to Dest using Geographic
forwarding
Geographical Hierarchy
0000 0010
0001 0011
00 01
10 11
• Global Partitioning• 4 order-n squares form an order-(n+1) square• Each node easily maps its ID to HID• Can extend to module M space partition
• ID Space• Each node has a unique ID (IP to ID, etc)• Positive integer• “Closer” relation
Recruiting Location Servers (Location Update)
• “Closer” RelationA node Y is closer to X than a node Z to X if and only if one of the following is satisfied:
1. Yid < Zid < Xid 2. Yid > Xid and Zid < Xid 3. Z id > Yid >Xid
• Recruiting Location Servers– For each level of grid, a node chooses three nodes closest to its ID as
its location servers.– Keep a table of location servers’ HID– How to choose? Implicit recruiting, i.e., sending location update to each
level
Recruiting Location ServersAn Example
Packets Routing between Two Nodes• Location Query
– A sends a request to the least node greater than or equal to B for which A has location information and so on until the request reaches B
– B responds to A using geographic forwarding– At most N steps if A and B share some order-N square
• Bootstrapping–How does A recruit its location servers?
•A sends its location updates to an order-n square•The first node L picks up the update and begins a location query for A•Assumption: before a location update reaches an order-n square, all nodes have recruited their location servers of order-(n-1) square
–Geographical forwarding•A simple two hop distance vector protocol•Each node periodically broadcasts a list of all neighbors it can reach in one hop•Each entry of neighbor expires in a fixed time and is no longer broadcasted as neighbors, but can still be used. Why? (think of 802.11)
• HELLO messages are not unusual to get lost• Unicast is acknowledged, i.e., invalid entry will be removed due a forwarding packet failure
Proof of Correctness and Efficiency (by induction)
Claim: In n or fewer location query steps, a query reaches the node with the lowest ID closest to the destination in the order-n square containing the source.Suppose the destination is ID 0 and the query starts at X and the node with lowest ID (closest to 0) in order-n square is Y.
Base case:order-1 square. If X = Y, then with 0 step, query reaches Y1. If X != Y, then Y is the lowest node X can route. Otherwise if X can route some other node Y1 lower than Y outside its order-1 square, Y1 would have chosen Y rather than X as its location server.
Inductive step: order-(n+1) square. We want to show if the query is at node X with the lowest ID in its order-n square, then X will route the query to the node Y with the lowest ID in its order-(n+1) square in zero or one step.If X has the lowest node ID in order-(n+1) square, then the claim is trivially true.If X has not, then X will know Y’s location and will not know any node whose ID is lower than Y.
i) X will know Y’s location, since X has the lowest node ID in order-n square, Y must have selected X as its location server at X’s order-n square.
ii) X will not know the location of any node lower than Y outside of its order-(n+1) square since any such node would have chosen Y as its location server in X’s order-(n+1) square.
Thus the lowest node X can location is Y and the query can be forwarded there in one location query step.
Routing Using Location Servers
Problems with GLS• Flooding vs. Location Servers
– Flooding: • Efficient routing• Too much routing overhead
– Location Server:• Fixed amount of location updates• Scale well when nodes are
uniformed distributed• Not adaptive to node density
– Solution: • Balancing between flooding and
location update• Adaptive sub-division• Recruit more than one location
servers in each sibling grid Correct?
• What if location query fails– Forwarding pointer– On leaving an order-1 grid, each node
leaves a forwarding pointer in it indicating that it has moved to another grid
• What if GPS fails– A node can no longer know its position
and hence cannot send location update.Solution: Tunneling through its neighbors
Dynamic Hierarchy for GLS• Problems of naïve solution to
recruit more location servers– Increase routing overhead– Will not improve performance,
since each query will still pick the smallest ID node
• Dynamic Hierarchy– Dynamic space partition– Difficulty: hard to synchronize the
network
22 21 20
12 11 10
02 01 00
An example of a 3x3 grid
An Example of Dynamic Hierarchy
• Each node estimates the number of nodes in its order-1 square• If one detects the square is overwhelmed, it broadcasts to its neighbors SUB_DIVIDE• The next location update will use the new sub-division level to recruit location servers• It also indicates the subdivision level to all its location servers to keep the location servers updated. HID should be sub-division compatible
Bottleneck
Sub_div
Loc_update
SGPS and Tunneling
A B
1. GPS_FAIL Broadcast to all neighbors
2. ACK_OK
4. Forward new location and ID
3. Grant
•Tunneling•Three-way handshaking protocol•On detecting its GPS failure, each node broadcasts “recruiting tunnel server”•Those 1 ring neighbors who have GPS then reply ACK_OK•The GPS-failure node then chooses one of them as its tunnel server•It then update its location as the tunnel server location to its location servers
Simulation Results
Simulation Scenario
• 802.11 radio bandwidth 2Mbps• Distance threshold 200M• No node is a source in more than one connection• No node is a destination in more than 3 connections• Each connection sends 4 128byte packets per second for 20 seconds• Moving speed 10m/s
GLS vs. DSR
0
0.2
0.4
0.6
0.8
1
0 100 200 300 400 500 600 700
number of nodes
CB
R d
eliv
ery
rate 2x2 GLS
DSR
3x3 GLS
Location Query Failure
Broken links Congestion
Path Length Analysis
• 300 nodes with speed 10m/s • Query travels about 6 hops more than the geographic forwarding
• A tradeoff between routing efficiency and routing overhead
Avery Query Length vs. Response Length
0
2
4
6
8
10
12
14
1 2 3 4 5 6 7 8 9 10
Response Length
Qu
ery
Len
gth
2x2 GLS
Routing Overhead Analysis
DSR• route request• route reply• cached reply
GLS• HELLO• Location Update• Location Query• Location Response
GLS vs. DSR
0
5
10
15
20
25
30
0 100 200 300 400 500 600 700
number of nodes
prot
ocol
pac
kets
fo
rwar
ded
per
node
per
se
cond
2x2 GLS
DSR
3x3 GLS
Congestion
Not much increase, since almost half of the protocol packets are HELLO
Conclusion and Future work• Compare Topology-oriented and Location-oriented MANET routing
– DSR is the best of non-hierarchical topology routing– Unfair hierarchical routing is not desirable– Flooding based GPS routing incurs large routing overhead– Location server based routing maintains the fairness and avoid location
flooding. But GLS does not support adaptive hierarchy and does not know how to handle GPS failure
• SUB_DIVISION scheme to solve adaptive hierarchy– Implementation of GLS with 2x2 and 3x3 partition shows promising result– Need a consistent hierarchy ID for fine and coarse grid– Need aggregation-behavior scenario
• TUNNELING to solve GPS failure• Acknowledgement: Special thanks to Jingyang, Robert and Hari.