supporting rapid mobility via locality in an overlay network ben y. zhao anthony d. joseph john d....
Post on 20-Dec-2015
213 views
TRANSCRIPT
Supporting Rapid Mobility via Locality in an Overlay Network
Ben Y. Zhao
Anthony D. Joseph
John D. Kubiatowicz
Sahara / OceanStoreJoint SessionJune 10, 2002
June 10, [email protected]
Ubiquitous Computing to the Edge
Trends– Network infrastructure growing fast (802.11b, 3G)– Edge devices getting smaller, more powerful– Edge devices increasing in storage capacity
Legacy mobility support not enough– Mobile IP focused on single roaming nodes– # of mobile devices reaching critical mass
E.g. ~400 million Cellphones, PDAs Sheer volume can overwhelm mobility infrastructure
– Devices need object location support for P2P applications (IM, file sharing, directory services)
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
Pushing the Limits of Mobility
What is the next step? Scenario I
– UCB Professor roaming to MIT, directing streaming media to his laptop, participating in video-conference
– Need: persistent connection with low latency delivery, and fast handover between proxies
Scenario II– Morning ride on BART, 100-1000 wired commuters
switching from proxy to proxy in tandem– Need: scalable solution to proxy handover for large
mobile groups (tourist groups, airplane passengers, etc…)
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
Legacy Mobility Support
Mobile IP review– Mobile Host (MH), Correspondent Host (CH)
Home Agent (HA), Foreign Agent (FA)– Path: CH HA FA MH
Issues– Triangle routing (High RDP)– More fault-prone– Higher BW
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
What Do We Need and Why?
Mobile IP weakness: triangle routing– High latency for messages and location updates– Messages / updates incur high costs in wide-area– Messages / updates susceptible to wide-area routing failures
Key insight: scalability via locality-awareness– Client requests result in load on overall network – Dampen / confine the impact of network operations:
reduce wide-area storage / communication costs, faults– In practice: minimize routing and update latency by localizing
communication
Strategy:– Leverage locality-aware overlay infrastructure: Tapestry
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
Tapestry Review
Decentralized object location and routing overlay– Related to approach in PRR97– Related projects: Pastry, Chord, CAN, Kademlia
Routing infrastructure based on prefix routing– Route to nearest node increasing prefix match by 1
AA93 4A6D 4361 437A 4378
Locality-aware design:– Proximity routing: local traffic confined to local network– Object location: replicate Log(N) pointers to object, place
disproportionate more replicates near object– Result: RDP of routing to node is small
Finds closest copy of object with low RDP
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
Mobile Tapestry
Intro Algorithms Evaluation Conclusion
Reduce mobility problem to object location
Register (MN) = Proxy “publish” object MN with reverse forwarding path
Routing to MN = Find object MN + forward by proxy
No HA, no FA, no triangle routingThe Internet is your home network!
June 10, [email protected]
Registration and Routing
Mobile node mn registers with nearby proxy P
RegisterMsg R publishes object named mn atnode P
Nodes store locationmapping <mn, P>
Message for mn routesto P, then to mn
Object location locality distance traveled by message proportional to actual distance between CH and P
B
R(mn)
A
mn
P1
P2
CH
RegisterMsg
Message to mn
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
Location Updates
mn moves from P1 to P2sends ProxyHandoverMsg U
mn sets up forward link fromP1 to P2
Update message U routesup until intersects old route at B
U backtracks to P1 to delete old references
Message M forwardedas RouteObjMsg toproxy P2, then to mn
Routing locality distance traveled by update “proportional” to distance between proxies
B
R(mn)
A
mn
P1
P2
CH
UpdateMsg
Message to mn
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
Mobile Objects
Extending object location to mobile nodes– Access data on roaming devices
Mobile object location– Extra step of indirection
CH routes message to mobile object MO– Route msg to MO, find <MO, MN>– Route msg to mobile address MN, find <MN, P>– Route msg to proxy P, then forward
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
Mobile Objects
P
B
R(mn) R(mo)
<mo, mn>
CH
A
location updateforwarding pointer
mn
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
Hierarchical Mobility
Scenario: – Networked bullet train in motion– Carrying passengers with 1000 networked devices
Train server is node in mobile Tapestry– Server registers with nearby proxies Px as node S
– Each proxy Px updates location of S
Each mobile device registers with train as MDi
– Server publishes MDi as local object<MDi, S> for all i
CH sends message to a device– Message routes to Di, finds mapping for S
– Message routes towards S, routes to P, then S, then Di.
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
Hierarchical Mobility
bullet train S
md1 md2 md3
md4 md5
P2 P1
B
R(S) R(md1)
<md1, S>
CH
A
location updateforward pointer
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
Levels of Type Indirection
Functionality enabled by multiple levels of indirection
Mobile node = object on static node (proxy)
Mobile object = object on mobile node
Mobile child = object on mobile node (proxy)
Potentially limitless levels of indirection for hierarchy of mobile devices
Proxy Node
Mobile Node
Mobile Child
Object onStatic Node
Object onMobile Node
Object onMobile Child
residing on
residing on
residing on
Indirection as
Indirection as
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
GUID Aliasing
Utilize redundancy for performance and stability Each node gets several aliases
– Generated by SHA-1(nodeID, int i) for (0 < i < 5)
Usage1. CH sends message to ALL aliases
MN receives first, drops duplicates
2. On initializing connection, CH sends message to ALL aliases. MN responds and indicates preferred alias.All subsequent communication uses chosen alias.
June 10, [email protected]
Simulation Framework
Packet level simulation– Simulation of network topologies
(5000 nodes, 4096 Tapestry nodes, 6 digit base 4 IDs for nodes / objects)
– No simulation of congestion or network-level traffic flow Experiments on GT-ITM topology
– Aggregated over 9 topologies– Each run over 3 random overlay placements
GUID aliasing– Initiate connection by using 3 parallel aliases– Quickly measure and pick alias for good performance
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
GUID Aliasing vs. Mobile IP
GUID Aliasing vs. Mobile IP
0
5
10
15
20
25
30
35
40
45
0 100 200 300 400 500 600
Shortest Path Latency from CH to MN (ms)
Lat
ency
RD
P
MIP Distant HA MIP Closeby HA Tapestry (2 GUIDs) Tapestry (5 GUIDs)
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
Update Latency w/ Rapid Mobility
Update Latency under Rapid Mobility
0
200
400
600
800
1000
1200
1400
1600
1800
2000
0 100 200 300 400 500 600
Latency Between Proxies (ms)
Lo
cati
on
Up
dat
e L
aten
cy (
ms)
Distant Home Agent Nearby Home Agent 2 GUIDs 5 GUIDs
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
Router Load vs. Mass Mobility
Maximum Router Load from Location Binding Updates
0
500
1000
1500
2000
2500
100 200 300 400 500 600 700 800 900 1000
# of Mobile Nodes Roaming at 1 Proxy/minute
Ma
x L
oa
d p
er
Ro
ute
r (M
sg
s/m
in)
Mobile IP Mobile Tapestry
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
Summing It Up…
Intro Algorithms Evaluation Conclusion
Mobility via indirection– Mobile nodes register as “objects” in infrastructure– Messages to mobile node redirect through location pointer
Distinctions from ROAM: all based on locality-awareness Performance
– Tapestry routes with locality low RDP for routing (even with indirection), fast location updates
Extreme scalability– Localize traffic around shortest path, stabilize wide-area– Use multiple levels of indirection for hierarchical mobility
Fault-tolerance– Reduce susceptibility to wide-area faults by localizing wide-area
traffic
June 10, [email protected]
For More Information…
Intro Algorithms Evaluation Conclusion
Tapestry / Bayeux / Brocade– http://www.cs.berkeley.edu/~ravenben/tapestry– Locality-awareness Mechanisms for Large-scale Networks
Zhao, Joseph, Kubiatowicz. Proc. of FuDiCo 2002
OceanStore– http://oceanstore.cs.berkeley.edu
Other relevant material:– http://www.cs.berkeley.edu/~ravenben
June 10, [email protected]
Towards Uniquitous Computing
Applications driving force– Leveraging resources on a global scale– Storage: file sharing, multimedia Rio, I-Pod– Connectivity: decentralized communication AIM/ICQ
How close are we?– Networking, Hardware scaling down, HCI,
management, … Some issues getting closer with time
– Devices decreasing in size – Increasing in power (Moore’s law)– Network connectivity expanding
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
Ongoing Issues I
Enabling edge devices– Less resources– Disconnected / mobile operation
Need infrastructure support
Intro Algorithms Evaluation Conclusion
June 10, [email protected]
Ongoing Issues II
Extending scale– Network increasing in size and complexity– Faults, misconfiguration, flash-crowds result in loss of
availability
Intro Algorithms Evaluation Conclusion