58
Copyright 2009, USC/ISI. All rights reserved. 06/12/22 21:02 1 Recursive Networks Joe Touch Postel Center Director USC/ISI Research Assoc. Prof. USC CS and EE/Systems Depts.

Recursive Networks

  • Upload
    gunda

  • View
    46

  • Download
    0

Embed Size (px)

DESCRIPTION

Recursive Networks. Joe Touch Postel Center Director USC/ISI Research Assoc. Prof. USC CS and EE/Systems Depts. Active Research Areas. Virtual & recursive nets X-Bone, DynaBone, TetherNet*, RNA Optical IP networking OCDMA – MAC protocols, NIC design* - PowerPoint PPT Presentation

Citation preview

Page 1: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:09 1

Recursive Networks

Joe TouchPostel Center DirectorUSC/ISIResearch Assoc. Prof.USC CS and EE/Systems Depts.

Page 2: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Active Research Areas

Virtual & recursive nets X-Bone, DynaBone, TetherNet*, RNA

Optical IP networking OCDMA – MAC protocols, NIC design* Router – Tetris arch.+, hybrid O/E*, lookup,

TTL, IP checksum+ NSF CIAN at U. Arizona

Better-than-nothing Security PKI-free IKE, FastSec, TCP-AO

+=pat. pending; *=patented

04/21/23 21:09 2

Page 3: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Outline

Towards future network architectures Background on X-Bone VNs RNA

Intro. Design Implementation Implications Related work

04/21/23 21:09 3

Page 4: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Towards future network architectures

04/21/23 21:09 4

Page 5: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

What makes an architecture new?

Shaking the Hourglass (CCW 08) All exchanges are 1 packet Collosograms > RTT*delay No LANs? (L2 is only pt-pt)

What defines success? Fixing what's 'broken' Doing something new/different The Internet / circuits as a degenerate

case04/21/23 21:10 5

Page 6: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 6

Internet Architecture

Accused of ossification, but:

Ossification = stability Flexibility is abundant:

Shim layers: HIP, SHIM6, IPsec, TLS

Muxing layers: SCTP, RDDP, BEEP

Connections: MPLS, GRE, IKE, BEEP, SCTP

Virtualization: L2VPN, L3VPN/X-Bone/RON/Detour, L7-DHTs

Page 7: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 7

Motivation

Desire to support new capabilities Interlayer cooperation, dynamic layer

selection, layering created by virtualization

Desire to support emerging abstractions Overlay layers don’t map to 1-7 Support for recursive nodes (BARP, LISP, TRILL)

Desire to coordinate services in diff. places Security, soft-state, pacing, retransmission

Page 8: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Shannon Channel

Two preselected parties Homogenous endpoints

Unidirectional channel Preselected sender, preselected

receiver

04/21/23 21:10 8

Page 9: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

What is communication?

Shannon: shared bits Between fixed endpoints, known a priori

Shared bits between two parties How do we find the party to talk to?

04/21/23 21:10 9

Page 10: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

What SCs Ignore

What if you’re not directly connected? A) multihop B) multilayer

Why are multihop/multilayer interesting? Scalable = multihop Ubiquitous = multilayer I.e., all scalable, ubiquitous comms!

04/21/23 21:10 10

Page 11: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Observations

Networking is groups of interacting parties Groups are heterogeneous All members want to interact Groups can be dynamic (i.e., virtual)

Need an architecture that supports: Heterogeneity Interaction Virtualization

04/21/23 21:10 11

Page 12: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Heterogeneity leads to layering

M different interacting parties need M2 translators

or

M translators + common format

… i.e., a layer

04/21/23 21:10 12

Page 13: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Layering leads to resolution

IDs are local to a layer Whether names, paths, locations

Need to resolve IDs between layers Google, DNS, ARP, LISP encap tables

04/21/23 21:10 13

Page 14: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Interaction leads to forwarding

N parties need N2 circuits

or

O(N) links + forwarding

04/21/23 21:10 14

Page 15: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Virtualization leads to recursion

N parties want to group in arbitrary, dynamic ways.… such groups are inherently virtual

… and virtualization is inherently recursive

04/21/23 21:10 15

Control / deployment Network

Page 16: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 16

Recursion unifies layering, forwarding, & resolution

Layering (left) Heterogeneity via O(N) translators Supported by successive recursive resolution

Forwarding (right) N2 connectivity via O(N) links Supported by successive iterative resolution (tail

recursion)

Page 17: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

What makes this an architecture?

Abstraction for virtualization Tunnel as link Partitioned router as virtual router Partitioned host + internal router as virtual host

Abstractions for recursion Recursive router implemented as a network of

vrouters with vhosts at the router interfaces Recursion within the protocol stack

General template (metaprotocol + MDCM) Instantiates as different layers or forwarding

04/21/23 21:10 17

Page 18: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

X-Bone Virtual Nets

04/21/23 21:10 18

Page 19: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Virtual Net Req’ts

Internet-Compliant Architecture Hosts add/delete headers Routers transit (constant # headers)

Supports New Capabilities Concurrence (multiprocessing) Revisitation (multiple roles in one net) Recursion (to hide topology and/or

mgt.)

04/21/23 21:10 19

Page 20: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.August 26, 2003 20

VN Principles

TENET 1. Internet-like VIs = VRs + VHs + tunnels Emulating the Internet

TENET 2. All-Virtual Decoupled from their base network

TENET 3. Recursion-as-router Some of VRs are VI networks

Page 21: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.August 26, 2003 21

VN Corollaries

Behavior: VH adds/deletes headers VRs transit (constant # headers)

Structure: VIs support concurrence VIs support revisitation

Each VI has its own names, addresses Address indicates overlay context

Page 22: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.August 26, 2003 22

VN Architecture

Components: VH -> hosts include a hidden router VL -> 2 layers of encaps. (strong link, weak net) VR -> partitioned forwarding

Capabilities: Revisitation -> multihoming for VNs Recursion -> router as network, i.e., Rbridges,

LISP

>> RUNNING CODE (FreeBSD, Linux, Cisco)

Page 23: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.January 2004 23

Recursive Internet

Recursion as a router (vs. ASes) Network recursion examples

L3 = BARP (X-Bone), LISP (IRTF) L2 = Rbridges/TRILL

Control / deployment Network

Page 24: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 24

Recursion requires new layers – where? Why?

Wedge between (IPsec, left) or replicate (virtualization, right)

100bT

802.3IPsec

IP

TCP

BEEP

XDR

HTTP

100bT

802.3

IP

Virt. IP

Virt. IP

TCP

BEEP

XDR

HTTP

Page 25: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 25

Challenges of Layering

Which to add… IPv4/IPv6, TCP/DCCP/SCTP

When to add… Security, muxing, cong. control

Real vs. virtual What’s the difference?

Page 26: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 26

Scope defines a layer

Its endpoints A “hop” @layer N = E2E extent of layer N-1

The layer above What services this layer provides

The layer below What services this layer requires

E.g.: Shared state at diff. layers for diff. services Application binding Transport delivery Net security

The difference is scope

App

Trans

NetProcess

Program

Host

Page 27: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

RNA Intro.

04/21/23 21:10 27

Page 28: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 28

Motivation for RNA

Layers of a stack becoming more similar Security, soft-state, pacing, retransmission

Desire to support new capabilities Interlayer cooperation, dynamic layer selection

Desire to support emerging abstractions Overlay layers don’t map to 1-7 Support for recursive nodes (BARP, LISP, TRILL)

Is layering more than a coding artifact?

Page 29: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 29

Observations

1. Services are relative

2. A template can avoid recapitulation

3. Composition requires coordination

Page 30: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 30

Recapitulation

Component services repeat: handshake / state management security policy (admission control, filtering) multiplexing and demultiplexing retransmission reordering pacing / congestion control switching / forwarding

Compounded by virtualization Layer on layer on layer

Page 31: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 31

Composition Requires Coordination

Many services integrate layers Congestion control Message boundaries Security State establishment

Current interlayer interface is limited Defined by each layer No general security, state, etc. interface

Page 32: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 32

RNA Stack

One MP, many instances Needed layers, with needed services Layers limit scope, enable context sensitivity Scope defined by reach, layer above, layer

below

wireless

RNA mp-1

RNA mp-2

RNA mp-3

RNA mp-4

optical

RNA mp-1’

RNA mp-2

RNA mp-3

RNA mp-4

Page 33: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 33

RNA

One metaprotocol, many instances Needed layers, with needed services Layers limit scope, enable context sensitivity Scope defined by reach, layer above, layer

below Resolution connects the layers (red/green)

Page 34: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 34

Scope defines a layer

Its endpoints A “hop” @layer N = E2E extent of layer N-1

The layer above What services this layer provides

The layer below What services this layer requires

E.g.: Shared state at diff. layers for diff. services Application binding Transport delivery Net security

The difference is scope

App

Trans

NetProcess

Program

Host

Page 35: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

What makes this an architecture?

General template (metaprotocol + MDCM) Instantiates as different layers or forwarding

Abstraction for virtualization Tunnel as link Partitioned router as virtual router Partitioned host + internal router as virtual

host

Abstraction for recursion Recursive router implemented as a network of

vrouters with vhosts at the router interfaces

04/21/23 21:10 35

Page 36: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

What does RNA enable?

Integrate current architecture ‘stack’ (IP, TCP) vs. ‘glue’ (ARP, DNS)

Support needed improvements Recursion (AS-level LISP, L3 BARP, L2

TRILL) Revisitation

Supports “old horses” natively Dynamic ‘dual-stack’ (or more)

04/21/23 21:10 36

Page 37: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

The Hourglass Principle

Common interchange format between layers

04/21/23

37

HTTP DNS FTP NFS IM

PPM CDMA eNRZ ePCM

Page 38: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Multiple hourglasses

“Waist” is relative The common interchange = the waist

04/21/23 21:10 38

Page 39: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

RNA Design

04/21/23 21:10 39

Page 40: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 40

RNA MP Unifies…

“Resolve” unifies: Layer address translate/resolution

ARP, IP forwarding lookup BARP/LISP/TRILL lookup

Layer alternates selection IPv4/IPv6,

TCP/SCTP/DCCP/UDP

Iterative forwarding IP hop-by-hop,

DNS recursive queries

“Process data” unifies: Shared state, security, management Flow control, error control

Next-hopResolution

Next LayerResolution

LAYER(DATA, SRC, DST) Process DATA, SRC, DST into MSG WHILE (Here <> DST) IF (exists(lower layer))     Select a lower layer Resolve SRC/DST to next layer S’,D’      LAYER(MSG, S’, D’) ELSE FAIL /* can’t find destination */ ENDIF ENDWHILE /* message arrives here */ RETURN {up the current stack}

Page 41: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 41

RNA Metaprotocol

Template of basic protocol service: Establish / refresh state Encrypt / decrypt message Apply filtering Pace output via flow control Pace input to allow reordering Multiplex/demultiplex

includes switching/forwarding

SharedState

Next LayerResolution

Security

FlowControl

Page 42: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 42

Components of RNA MP

Instantiate MDCM’s “Process DATA”

Establish / refresh state Encrypt / decrypt message Apply filtering Pace output via flow control Pace input to allow reordering Multiplex/demultiplex as indicated

includes switching/forwarding

Page 43: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

RNA Implementation

04/21/23 21:10 43

Page 44: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

RNA MP Template

04/21/23 21:10 44

Page 45: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Instantiation

04/21/23 21:10 45

Page 46: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Click Implementation

04/21/23 21:10 46

Page 47: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Building a Stack

04/21/23 21:10 47

Page 48: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Composition Process

04/21/23 21:10 48

Page 49: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

RNA Implications

04/21/23 21:10 49

Page 50: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 50

RNA – fills the gaps

Between layers (left, from Choices) Affects next-layer

Between stacks (right, from Padlipsky) Affects next-hop

Page 51: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 51

Recursion supports Layering and Forwarding

Layering (left) Heterogeneity via O(N) translators Requires successive recursive discovery

Forwarding (right) N2 connectivity via O(N) links Requires successive iterative discovery

Page 52: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 52

Challenges

MP design Building a sensible, generic template

Stack management Supporting instantiation and composition

Supporting interlayer coordination Designing a sensible, recursive API Makes it easier to interface (to yourself, e.g.,

LEGO)

Supporting context sensitivity Detecting environment and autotuning

Page 53: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Other Components

Dynamic negotiation protocol Cross-layer negotiation, IETF TAE

Composable/recursive extensions Network management/SLAs Security (user/infrastructure) Non-comm services (storage, computation)

Integrated optimization Caching, precompute/prefetch Pinning, dampening

04/21/23 21:10 53

Page 54: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Related Work

04/21/23 21:10 54

Page 55: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.04/21/23 21:10 55

Related Work Summary Recursion in networking

X-Bone/Virtual Nets, Spawning Nets, TRILL, Network IPC, LISP RNA natively includes resolution and discovery

Protocol environments Modular systems: Click, x-Kernel, Netgraph, Flexible Stacks Template models: RBA, MDCM RNA adds a constrained template with structured services

Context-sensitive components PEPs, Shims, intermediate overlay layers, etc. RNA incorporates this into the stack directly

Configurable über-protocols XTP, TP++, SCTP RNA makes every layer configurable, but keeps multiple

layers.

Page 56: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

RNA and Network IPC

Similarities Recursive protocol stack Unified communication mechanism Focus on process-to-process interaction

Differences RNA uses MDCM to define IPC as combining a Shannon-

style channel with namespace coordination RNA provides a detailed (and demonstrated) mechanism

that achieves unification and recursion RNA supports both recursion and forwarding in a single

mechanism

04/21/23 21:10 56

Page 57: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Conclusions

Virtualization requires recursion Recursion supports layering Recursion supports forwarding

One recurrence to bind them all…

Recursion is a native network property Integrates and virtualization, forwarding and

layering in a single mechanism

04/21/23 21:10 57

Page 58: Recursive Networks

Copyright 2009, USC/ISI. All rights reserved.

Credits

MDCM Yu-Shun Wang

RNA Yu-Shun Wang, Venkata Pingali

Naming unification Venkata Pingali

Virtual networking (X-Bone et al.) Lars Eggert, Yu-Shun Wang, Greg Finn, Steve

Hotz, Oscar Ardaiz-Villanueava, Norihito Fujita

04/21/23 21:10 58