xia: efficient support for evolvable internetworking...•cloud: nebula 3 can we support...

24
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

Upload: others

Post on 16-Oct-2020

2 views

Category:

Documents


0 download

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

• 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