xia: efficient support for evolvable internetworking...•cloud: nebula 3 can we support...
TRANSCRIPT
![Page 1: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/1.jpg)
XIA: Efficient Support for Evolvable Internetworking
Dongsu Han Ashok Anand Fahad Dogar Boyan Li Hyeontaek Lim Michel Machado
Arvind Mukundan Wenfei Wu Aditya Akella David G. Andersen John W. Byers
Srinivasan Seshan Peter Steenkiste
![Page 2: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/2.jpg)
IP: Narrow Waist of the Internet
IP
Applications
Technology
Innovation both above and below IP
But what about IP?
2 Hyeontaek Lim / NSDI '12
![Page 3: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/3.jpg)
Proposed -Centric Networking
• Service: Serval (This NSDI!)
• Content: Named Data Networking
• Mobility: MobilityFirst
• Cloud: Nebula
3
Can we support heterogeneous communication types on a single Internet architecture?
Problem: Focusing on one communication type may hinder using other communication types, as occurred to IP
Hyeontaek Lim / NSDI '12
![Page 4: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/4.jpg)
Future -Centric Networking
• Service, content, mobility, and cloud did not receive much attention before as now
• Yet more networking styles may be useful in the future
– E.g., DTN, wide-area multicast, …?
4
Can we support future communication types without redesigning the Internet architecture?
Problem: Introducing additional communication types to the existing network can be very challenging
Hyeontaek Lim / NSDI '12
![Page 5: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/5.jpg)
Legacy Router May Prevent Innovation
5
Can we allow using a new communication type even when the network is yet to natively support it?
Problem: Using a new communication type may require every legacy router in the network to be upgraded
“I got a computer with Awesome-Networking
announced in NSDI 2022! Can I use it right now?”
Internet
“Ouch, we just replaced all of our routers built in 2012. Can you wait for another
10 years for new routers?”
Hyeontaek Lim / NSDI '12
![Page 6: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/6.jpg)
XIA’s Goals and Design Pillars
6
Support multiple communication
types (heterogeneity)
Support future communication
types (evolution)
Allow using new communication
types at any point (incremental deployment)
“Principal types” “Fallbacks”
Hyeontaek Lim / NSDI '12
![Page 7: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/7.jpg)
7
Principal Types
Define your own communication model
Hyeontaek Lim / NSDI '12
![Page 8: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/8.jpg)
Principals
8
128.2.10.162
Current Internet
XIA
IP address
Host 0xF63C7A4…
Principal type
Type-specific identifier
Service 0x8A37037…
Content 0x47BF217…
Future …
Hash of host’s public key
Hash of content
Hash of service’s public key
Hyeontaek Lim / NSDI '12
![Page 9: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/9.jpg)
Principal Type-Specific Semantics
9
Contact a host
Use a service
Retrieve content
Host 0xF63C7A4…
Service 0x8A37037…
Content 0x47BF217…
Hyeontaek Lim / NSDI '12
![Page 10: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/10.jpg)
Principal Type-Specific Processing
10
XIA router
Host-specific processing
Common processing
Service-specific processing
Content-specific processing
…
Input Output
• Type-specific processing examples • Service: load balancing or service migration • Content: content caching
Hyeontaek Lim / NSDI '12
![Page 11: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/11.jpg)
Routers with Different Capabilities
• Routers are not required to support every principal type
– The only requirement: Host-based communication
11
Host
Common
Host-only router
Host
Common Service
Service-enabled router
Host
Common
Content-enabled router
Content
Hyeontaek Lim / NSDI '12
![Page 12: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/12.jpg)
Using Principal Types that are Not Understood by Legacy Routers?
12
Legacy router without
content support
Want to communicate using content principals
Content-enabled router
Content-enabled router
Hyeontaek Lim / NSDI '12
![Page 13: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/13.jpg)
13
Fallbacks
Tomorrow’s communication types… today!
Hyeontaek Lim / NSDI '12
![Page 14: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/14.jpg)
Fallbacks: Alternative Ways for Routers to Fulfill Intent of Packet
14
Content
Intent: Retrieve
Fallback: Contact ,
who understands request
What the network does:
• With content-enabled routers, use for routing
• Otherwise, use for routing (always succeeds)
Content
Host
Host
Content
Hyeontaek Lim / NSDI '12
![Page 15: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/15.jpg)
15
DAG-Based Address
Your address is more than a number
Hyeontaek Lim / NSDI '12
![Page 16: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/16.jpg)
DAG (Direct Acyclic Graph)-Based Addressing Enables Fallbacks
16
Intent Packet sender Routing choice
Another routing choice (with lower priority)
This host knows how to handle content request
Fallback
Content
Host
Hyeontaek Lim / NSDI '12
![Page 17: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/17.jpg)
DAG Addresses in Packet Header
17
Destination address
Source address
Payload
Common fields (Size, Hop limit, …)
(Extension headers)
For forward path
For return path
DAG encoding in paper
Including in-packet state for forwarding
Hyeontaek Lim / NSDI '12
![Page 18: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/18.jpg)
Scoping Using DAG
18
Host My laptop
Service Echo
Domain Tier-1 ISP
Domain Tier-2 ISP
Echo My laptop Tier-2 ISP Tier-1 ISP
More specific intent & Better scalability
Hyeontaek Lim / NSDI '12
![Page 19: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/19.jpg)
Service Binding with DAG
19
Service Web service
Initial contact to a service
Service Web service Host Server #57
When a particular host should serve subsequent service requests
“Late binding”
Hyeontaek Lim / NSDI '12
![Page 20: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/20.jpg)
DAG Allows Nested Fallbacks
20
Host Domain
Content
Hyeontaek Lim / NSDI '12
Service
Strong support for evolvable internetworking
![Page 21: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/21.jpg)
21
Can We Forward DAGs Rapidly?
Expressive ≠ Expensive
Hyeontaek Lim / NSDI '12
![Page 22: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/22.jpg)
XIA Software Router’s High Forwarding Throughput
22
Click-based implementation on commodity hardware 351 K table entries based on a Route Views snapshot
≤26% slowdown for small packets with 3 fallbacks
Hyeontaek Lim / NSDI '12
![Page 23: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/23.jpg)
XIA: eXpressive Internet Architecture
• Support for evolvable internetworking – Heterogeneous communication types
– Future communication types
– Incremental deployment of new communication types
• Principal types & fallbacks
• DAG-based addressing
23 Hyeontaek Lim / NSDI '12
![Page 24: XIA: Efficient Support for Evolvable Internetworking...•Cloud: Nebula 3 Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one](https://reader036.vdocuments.us/reader036/viewer/2022071218/60525a955a3b8a5304039143/html5/thumbnails/24.jpg)
• Prototype: github.com/XIA-Project/xia-core – Router, socket, content cache, etc.
– Supports LAN, XIA-over-IP, GENI
XIA: Enabling Evolution by eXpression
24
Something New
Something Old
Hyeontaek Lim / NSDI '12