A Global Name Service for a Highly Mobile Internetwork
-
Upload
keely-erickson -
Category
Documents
-
view
32 -
download
3
description
Transcript of A Global Name Service for a Highly Mobile Internetwork
A Global Name Service for a Highly Mobile Internetwork
Abhigyan Sharma, Xiaozheng Tie, Hardeep Uppal, Arun Venkataramani, David Westbrook, Aditya Yadav
School of Computer ScienceUniversity of Massachusetts Amherst
1
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
Mobile arrived, but Internet unmoved
Unidirectional communication initiation
Redundant app-specific mobility support
2
Cleaner separation of location and identity commonly advocated wisdom
?
Alice’s phoneNotification systemsVoIP/messagingCloud storage
Bob
Alice
Ungraceful disruptions
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science 3
But DNS does separate identity / location
Challenge: scaling to handle update cost of frequent mobility while returning up-to-date values• Example: 10B devices, 100 addresses/day ≈ 1M updates/sec • DNS update propagation can takes hours or days today!
Domain names IP addresses
+ connection migration techniques
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science 4
Scalable global name service (GNS)
Goal: A massively scalable, logically centralized GNS to enable secure, name-based communication with
flexible endpoint principals with arbitrary (fixed) names despite high mobility.
Global name service (GNS)interface deviceservice content group of names
f0:56:81:c1:c0:ebnode1.cs.umass.edudropbox.comnetflix.com/<object>devices in [lat,long,radius]
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science 5
Outline
Poor intrinsic support for mobility today Case for a next-generation GNS Auspice GNS design Implementation and evaluation Related work, open issues, summary
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science 6
GNS critical to handle mobility
Global name service
Alic
eIP1
IP2
IP3
Bob’s address?
IP4
IP5
Bob
IP6
IP7
Alic
e’s a
ddre
ss?Pre-lookup mobility
Connect-time mobility
Individual mobility
Simultaneous mobility
Pre-lookup mobility
GNS critical or can significantly benefit mobility handling in any network architecture
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science 7
DNS limitations
DNS
cacheLoad α 1/TTLLatency α 1/TTL
MobilityMobility
Passive caching
Static placement
Hierarchical names
Authoritative name-server ns.xyz.net
node1.xyz.net
.
com edu net
yahoo cnn umass
cs ece
Federation
DN
SSEC key chain
Single root of trust
“JohnSmith2178@Amherst”“Living room chandelier”“Taxis near Times Square”
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science 8
Outline
Poor intrinsic support for mobility today Case for a next-generation GNS Auspice GNS design Implementation and evaluation Related work, open issues, summary
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science 9
GNS: Decoupling certification and resolution
Nam
e: “A
lice’
s p
hone
”
TLD name services
Auth. name services
Root name service (ICANN, US. Dept. of Commerce)
Certificate search services
GU
ID=X, G
NS=Auspice
Domain name system Global name system
getA
ddre
ss(X
) [IP
1, I
P 2,…
]
3
3
4
41
0Local name services
1
Local name services
2Name certification services
Managed DNS services
Auspice-like global name services
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science 10
Reso
urce
cos
t
Name lookup latency
Consistent hashing with (static) k-replication
Auspice
Resource limit
Active replication cost-benefit tradeoff
Replicate-at-all-locations
Update cost for name i α (#replicasi) x (update_ratei)
Lookup latency for name i ?
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
Demand-aware active replication
11
NS1
NS2
NS3
NS4
NS5
NS6
NS7
NS8NS10
NS9
NS11
i
i
i
#replicas of name i α (read_ratei) / (update_ratei)
ii
ij
j
j
Geolocality-aware Load-awarejjj
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science 12
Placement reconfiguration engine
NS1
NS2
NS3
NS4
NS5
NS6
NS7
NS8NS10
NS9
NS11
i i
ij
j
j
NS3
NS7
NS2
NS4
NS9
NS1
Paxos
NS5NS8
NS10
NS11
i
i
i
i = replica controller for name ii = name record for name iname i
Demandgeo-distribution
ii
Consistent hashing based placement control plane
Planned demand-aware placement for data plane
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science 13
Outline
Poor intrinsic support for mobility today Case for a next-generation GNS Auspice GNS design Implementation and evaluation Related work, open issues, summary
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science 14
Implementation Geo-distributed key-value store
Name certification service
msocket user-level socket library with Auspice integration
GUID: { {IPs: [123.45.67.89, 98.76.54.321]},{geoloc:[lat, long]},{TE_prefs: [“prefer WiFi”,…]},{ACL: {whitelist: […]}},…}
Human-readable name: [email protected]:phoneGUID: 21EC2020-3AEA-4069-A2DD-08002B30309D
MSocket socket = new MSocket([email protected]:phone);MServerSocket socket = new MServerSocket(8080);
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
Placement schemes comparison
15
Auspice gives close to best throughput and up to 9x lower latency than DHT+Popularity
Testbed: 16 server cluster emulating with 80 NS an 80 local NSWorkload: 90% mobile names (geolocality 0.75), 10% service names
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science 16
Managed DNS comparison
One-third replication cost, similar latency
60% less latency, similar cost
Auspice reduces cost/latency over today’s managed DNS
Ultra DNS (16 replicas) vs. Auspice 5/10/15 replicas out of 80 locations
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
Classical name services [Grapevine/ClearingHouse] used static replication• Context-based names like Lampson’s “descriptive names”
DHT-based DNS designs [CoDoNS] ensure load balance, oblivious to demand geo-locality• Locality-aware DHTs [SkipNet] (statically) place content close
to origin, not near regions of its (dynamic) demand Modern KV data stores support static geo-replication
[Cassandra] or manually-configured policy [Spanner]
Related work
17
“the XEROX system [Grapevine] was then … the most sophisticated name service in existence, but it was not clear that its heavy use of replication, light use of caching ... were appropriate”
msocket.bind([lat, long, radius])
msocket.send(msg)msgmsgmsgmsgmsg
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science 18
Auspice GNS summaryEnables secure, name-based communication • arbitrary name/location representation• flexible endpoint principals• handles all types of mobility
Key differences from DNS for today’s Internet• federation decoupling certification and resolution• active replication• demand-aware placement
Get your GUID at: http://gns.name