A Global Name Service for a Highly Mobile Internetwork
Abhigyan Sharma, Xiaozheng Tie, Hardeep Uppal, Arun Venkataramani, David Westbrook, Aditya Yadav
School of Computer Science University of Massachuse@s Amherst
1
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
Mobile arrived, but Internet unmoved
§ UnidirecBonal communicaBon iniBaBon
§ Redundant app-‐specific mobility support
2
Cleaner separaBon of locaBon and idenBty commonly advocated wisdom
?
Alice’s phone NoBficaBon systems VoIP/messaging Cloud storage
Bob
Alice
§ Ungraceful disrupBons
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
But DNS does separate idenFty / locaFon
§ 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 propagaBon can takes hours or days today!
3
Domain names IP addresses
+ connecBon migraBon techniques
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
Scalable global name service (GNS)
4
Goal: A massively scalable, logically centralized GNS to enable secure, name-‐based communicaFon with
flexible endpoint principals with arbitrary (fixed) names despite high mobility.
Global name service (GNS) interface device service content group of names
f0:56:81:c1:c0:eb node1.cs.umass.edu dropbox.com ne_lix.com/<object> devices in [lat,long,radius]
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
Outline
§ Poor intrinsic support for mobility today § Case for a next-‐generaFon GNS § Auspice GNS design § ImplementaBon and evaluaBon § Related work, open issues, summary
5
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
GNS criFcal to handle mobility
6
Global name service
Alice
IP1
IP2 IP3
IP4
IP5
Bob
IP6
IP7
Alice’s a
ddress? Pre-‐lookup mobility
Connect-‐Bme mobility
Individual mobility
Simultaneous mobility
Pre-‐lookup mobility
GNS criBcal or can significantly benefit mobility handling in any network architecture
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
DNS limitaFons
7
DNS
cache Load α 1/TTL Latency α 1/TTL
Mobility Mobility
Passive caching
StaBc placement
Hierarchical names
AuthoritaBve name-‐server ns.xyz.net
node1.xyz.net
.
com edu net
yahoo cnn umass
cs ece
FederaBon
DNSSEC key chain
Single root of trust
“JohnSmith2178@Amherst”!“Living room chandelier”!“Taxis near Times Square”!
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
Outline
§ Poor intrinsic support for mobility today § Case for a next-‐generaBon GNS § Auspice GNS design § ImplementaBon and evaluaBon § Related work, open issues, summary
8
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
GNS: Decoupling cerFficaFon and resoluFon
9
Nam
e: “Alice’s ph
one”
TLD name services
Auth. name services
Root name service (ICANN, US. Dept. of Commerce)
CerFficate search services
GUID=X, GN
S=Auspice Domain name system Global name system
3
3
4
4 1
0 Local name services
1
Local name services
2 Name cerFficaFon services
Managed DNS services
Auspice-‐like global name services
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
Resource cost
Name lookup latency
Consistent hashing with (staBc) k-‐replicaBon
Auspice
Resource limit
AcFve replicaFon cost-‐benefit tradeoff
10
Replicate-‐at-‐all-‐locaBons
Update cost for name i α (#replicasi) x (update_ratei)
Lookup latency for name i ?
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
Demand-‐aware acFve replicaFon
11
NS1
NS2
NS3
NS4
NS5
NS6
NS7
NS8 NS10 NS9
NS11
i
i
i
§ #replicas of name i α (read_ratei) / (update_ratei)
i i
i
j
j
j
Geolocality-‐aware Load-‐aware j j j
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
Placement reconfiguraFon engine
12
NS1
NS2
NS3
NS4
NS5
NS6
NS7
NS8 NS10 NS9
NS11
i i
i j
j
j
NS3 NS7 NS2
NS4
NS9
NS1
NS5 NS8
NS10
NS11
i
i
i
i = replica controller for name i i = name record for name i name i
Demand geo-‐distribuBon
i i
Consistent hashing based placement control plane
Planned demand-‐aware placement for data plane
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
Outline
§ Poor intrinsic support for mobility today § Case for a next-‐generaBon GNS § Auspice GNS design § ImplementaFon and evaluaFon § Related work, open issues, summary
13
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
ImplementaFon § Geo-‐distributed key-‐value store
§ Name cerBficaBon service
§ msocket user-‐level socket library with Auspice integraBon
14
GUID: { !{IPs: [123.45.67.89, 98.76.54.321]},!{geoloc:[lat, long]},!{TE_prefs: [“prefer WiFi”,…]},!{ACL: {whitelist: […]}},!…!}!
Human-‐readable name: [email protected]:phone GUID: 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
0
50
100
150
200
250
300
48K 96K 144K 192K
Look
up la
tenc
y (m
s)
Load (in req/sec, reads = 2 * writes)
9x
5.7x
Replicate-at-all-locationsRandom-K
DHT+Popularity (Codons)Auspice
Placement schemes comparison
15
Auspice gives close to best throughput and up to 9x lower latency than DHT+Popularity
Testbed: 16 server cluster emulaBng with 80 NS an 80 local NS Workload: 90% mobile names (geolocality 0.75), 10% service names
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
Managed DNS comparison
16
0
30
60
90
120
150
180
210
240
Look
up la
tenc
y (m
s)
Aus
pice
(5 re
plic
a)
Au
spic
e(1
0 re
plic
a)
Au
spic
e(1
5 re
plic
a)
Ultr
a D
NS
(16
repl
icas
)
One-‐third replicaBon 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 locaBons
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
§ Classical name services [Grapevine/ClearingHouse] used sta'c replicaBon • Context-‐based names like Lampson’s “descripBve names”
§ DHT-‐based DNS designs [CoDoNS] ensure load balance, oblivious to demand geo-‐locality • Locality-‐aware DHTs [SkipNet] (staBcally) place content close to origin, not near regions of its (dynamic) demand
§ Modern KV data stores support staBc geo-‐replicaBon [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)!msg msg msg msg msg
UNIVERSITY OF MASSACHUSETTS AMHERST • School of Computer Science
Auspice GNS summary Enables secure, name-‐based communicaBon
• arbitrary name/locaBon representaBon • flexible endpoint principals • handles all types of mobility
§ Key differences from DNS for today’s Internet • federaBon decoupling cerBficaBon and resoluBon • acBve replicaBon • demand-‐aware placement
18
Get your GUID at: http://gns.name!