Architectural Support for Internet Evolution and...
Transcript of Architectural Support for Internet Evolution and...
Architectural Supportfor Internet Evolution and Innovation
George N. Rouskas
Department of Computer Science
North Carolina State University
http://net-silos.net/
Joint work with: Ilia Baldine (RENCI), Rudra Dutta, Anjing Wang, Mohan Iyer (NCSU)
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.1
Outline
Motivation: Challenges with Internet Architecture
SILO: A Meta-Design Framework
SILO as Research Tool: Cross-Layer Experimentation
Summary and Demo
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.2
In Search of Next Generation Internet
Early Pioneer Work
2000 01 02 03 04 05 06 07 08 09
NewArch (DARPA)
SIGCOMM FDNA
NSF FIND
Euro−FIRE
Euro−4WARD
Asia Future Internet Forum
Euro−NGI
10
NSF FIA
NSF GENI
Pouzin Society
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.3
Challenges with Current Architecture
Physical
Data Link
Network
Transport
App App App
1. Evolution: function-heavy protocols with built-in assumptions
2. High barrier to entry: for new data transfer protocols
3. Cross-layer design: lack of inter-layer interactions/controls
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.4
Protocol Evolution: Transport
Several distinct functions:
identify application endpoints (ports)
e2e congestion control
multi-homing (SCTP)
reliability semantics (TCP, RDP, SCTP, etc)
→ evolution of individual functions affects entire transport layer
Lack of clear separation between policies and mechanisms
window-based flow control vs. how window size may change
→ prevents reuse of various components
Built-in assumptions about IP addresses→ transition to IPv6, support for mobility difficult
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.5
High Barrier to Entry
New data transfer protocols difficult to implement/deploy
except for user-space
Experimental network designs crucial for:
gaining insight
understanding protocol operation
discovering new knowledge rooted in physical world
Implementations on commodity HW/SW remain challenging:
require modification of OS kernel
involve significant expertise
limit ability to “play” with network stack
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.6
Cross-Layer Design
Cross-layer design a major research theme over last decade:
wireless networks
TCP congestion control
optical networks (later)
· · ·
Adoption of ideas in operational networks quite slow:
no interfaces for inter-layer interactions/cross-layer controls
lack of experimental work→ reliance on simulation with invalid assumptions
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.7
Accommodating New Functionality
Deploy half-layer solutions (MPLS, IPSec)→ layers become markers for vague functional boundaries
Adapt existing implementation to new situations→ TCP over wireless/large bw/delay product networks
Implement own UDP-like data transfer→ no reuse or kernel optimizations
Abandon the old: new implementations for sensor networks→ Internet balkanization
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.8
Role-Based Architecture (RBA) [BFH 2003]
New abstraction: organize protocols in heaps, not stacks
Richer interactions among protocols→ flexibility
Require new system-level implementations
C
PayloadRSH 1RSH 2 RSH 3
A B
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.9
Recursive Network Architecture (RNA) [TP 2008]
Meta-protocol: generic protocol layer with basic services
Each layer in stack→ appropriately configured instantiation
Allows reuse, cleaner cross-layer interactions, dynamic composition
Physical
MP−4
MP−3
MP−2
MP−1
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.10
Recursive Network Architecture (RNA) [TP 2008]
Meta-protocol: generic protocol layer with basic services
Each layer in stack→ appropriately configured instantiation
Allows reuse, cleaner cross-layer interactions, dynamic composition
MP−4
MP−3
MP−2
MP−1
Wireless
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.10
Recursive Network Architecture (RNA) [TP 2008]
Meta-protocol: generic protocol layer with basic services
Each layer in stack→ appropriately configured instantiation
Allows reuse, cleaner cross-layer interactions, dynamic composition
Optical
MP−4
MP−3
MP−2
MP−1
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.10
Tng – Transport Next-Generation [FI2009]
Decomposes function-heavy transport layer
“true” e2e functions→ reliable packet transport
“middlebox” functions→ endpoint naming, congestion control
Negotiation plane→ cross-layer interactions
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.11
Layering As Optimization Decomposition
Protocol layers integrated into mathematical framework[CLCD 2007] [LSS 2006]
Global optimization problem: network utility maximization
Decomposition into subproblems→ layering
optimal modules (protocols) map to different layers
interfaces between layers coordinate the subproblems
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.12
Layering As Optimization Decomposition
Clean-state optimization→ layered network architecture
optimal layering 6= TCP/IP stack
various representations of optimization problem→ different layered architectures
(loose) coupling among layers→ cross-layer considerations
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.12
Our View
Internet architecture houses an effective design
But: it is not itself effective in enabling evolution
New architecture must be designed for adaptability/evolvability
New architecture must preserve/generalize layering
SILO objective: design for change
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.13
What is Architecture?
Fundamental elements/principles vs. design decisions
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.14
What is Architecture?
Fundamental elements/principles vs. design decisions
Diverse points of view→ FIND projects target: addressing, naming,routing, protocol architecture, security, management, economics,communication technologies (wireless, optical), · · ·
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.14
What is Architecture?
Fundamental elements/principles vs. design decisions
Diverse points of view→ FIND projects target: addressing, naming,routing, protocol architecture, security, management, economics,communication technologies (wireless, optical), · · ·
Our definition:
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.14
What is Architecture?
Fundamental elements/principles vs. design decisions
Diverse points of view→ FIND projects target: addressing, naming,routing, protocol architecture, security, management, economics,communication technologies (wireless, optical), · · ·
Our definition:
it is precisely the characteristics of the system that does notchange itself, but provides a framework within which thesystem design can change and evolve
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.14
Meta-Design Framework
Obtain a meta-design that explicitly allows for future change
Not a particular design or arrangement of specific features
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.15
Meta-Design Framework
Obtain a meta-design that explicitly allows for future change
Not a particular design or arrangement of specific features
The goal is not to design the “next” system, or the “best next”system, but rather a system that can sustain continuing change
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.15
SILO Architecture Highlights
Building Blocks: services of fine-grain functionality
Design Principles:
1. Generalize traditional layer stack
2. Enable inter-layer interactions:knobs: explicit control interfaces
3. Design for change:facilitate introduction of new services
4. Separate control from data functions
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.16
Generalization of Layering
Silo: vertical composition of services→ preserves layering principle
Per-flow instantiation of silos→ introduces flexibility and customization
Decoupling of layers and services→ services introduced at point in stack where necessary
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.17
Silos: Generalized Protocol Stacks
S1
S4
S5
S7
S8
Cross−ServiceTuning
Knobs
S1
S3
S6
S8
App
S2
S3
S6
S7
S9
Silo &ServiceMgmt
ComposabilityConstraints
App
Physical Layers
App
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.18
Inter-Layer Interactions (1)
Knobs: explicit control interfaces
adjustable parameters specific to functionality of service
enable info exchange among services
Algorithms may optimize jointly the behavior of services in a silo
knobs
Service
data interface
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.19
Inter-Layer Interactions (2)
Upward information passing
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.20
Inter-Layer Interactions (2)
Downward information passing
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.20
Inter-Layer Interactions (2)
Up-and-down information passing
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.20
Inter-Layer Interactions (2)
Silo-wide optimization/calibration
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.20
Design for Change
Architecture does not dictate services to be implemented
Provide mechanisms to:
introduce new services
compose services into silos
Ontology of services: describes
service semantics→ function, data/control interfaces
relationship among services→ relative ordering constraints
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.21
Ontology – Networking Knowledge
4,1service
method
control agent
application
physical layer
policies
silos
s
s
s
s
s
s1
2
3
4
56
m1,1
m1,2
m2,1
m
m
m
m
m1,2
1,1
4,1
3,1
3,2 m m m
mmm
m m
3,1
3,1
2,2
6,1 6,1
6,35,2
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.22
Service Composition
Constraints on composing services A and B:
A requires B
A forbids B
A must be above (below) B
A must be immediately above (below) B
Negations, AND, OR
Minimal set:
Requires, Above, ImmAbove, NotImmAbove
All pairwise condition sets realizable
Forbids = (A above B) AND (B above A)
Above = NOT Below
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.23
Service Composition Problem
Given: a set of essential services← application
Obtain a valid ordering of these and additional services
or, identify conflicts with constraints
Simple composition algorithm implemented
Ongoing research in formalizing the problem
OutputInput
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.24
The SILO Hourglass
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.25
The SILO Hourglass
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.25
SILO Software Prototype
http://net-silos.net/
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.26
Prototype Architecture
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.27
SILO As a Research Tool
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.28
SILO As a Research Tool
Deploys in a slice
Researcher brings:
custom services
tuning algorithms
ontology updates
Connect to measurement framework→ cross-layer protocolexperimentation tool
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.29
Software Defined Optics
Optical substrate can no longer be viewed as black box
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.30
Software Defined Optics
Optical substrate can no longer be viewed as black box
Collection of intelligent and programmable resources:
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.30
Software Defined Optics
Optical substrate can no longer be viewed as black box
Collection of intelligent and programmable resources:
optical monitoring, sensing mechanisms
amplifiers, impairment compensation devices
tunable optical splitters
configurable add-drop
programmable mux-demux (e.g., adjust band size)
adjustable slot size
· · ·
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.30
Cross-Layer Interactions
Impairment-aware RWAand network design
Placement of opticalsub-systems (converters,amplifiers, regenerators)
Traffic grooming
Inter-layer QoS and trafficengineering
Optical layer multicast
Multi-layer failurelocalization and recovery
· · ·
Physical
Data Link
Network
Transport
App App App
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.31
IMF Physical Infrastructure
VOA
SOA
PCB
NetFPGA
Infinera
DTN
Polatis
Switch
SOA-Control
Prototype
Board
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.32
IMF Cross-Service Demo
VOAPolatis
Optical
Switch
Reference Path
SOA
Eth1 Eth0
SILO Application
Gateway
SILO API
SILO
Tuning
Agent
Pkt
Cnt
MEAS
URE
SOA
C
IF
Swth
Video Stream
Source
SILO Application
Gateway
SILO API
SILO
Tuning
Agent
Pkt
Cnt
MEAS
URE
SOA
C
IF
Swth
Infinera
DTN
Video Stream
Render
NetFPGA
Physical
pins
Port Power&
BER Port Power
GPIB
Video
Monitor
&
IF switch
algorithm
XMPP
XMLRPCXMPP
PubSub
Server
Video
Monitor
&
IF switch
algorithm
VM
@ UNC-BEN
VM
@ RENCI-BEN
Legend:
BER – Bit Error Rate
DTN – Digital Transport Node
SOA – Semiconductor Optical Amplifier
VOA – Variable Optical Attenuator
SCPI - Standard Commands for
Programmable Instruments
GPIB - General Purpose Interface Bus
Physical Devices Software
Management Network
Optical Data Path @ BEN
SSHForw
arding
VM Monitor
VM
MonitorSSH
Forwarding
Attenuator
Control
Script by
SCPI
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.33
IMF Demo – Results
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.34
IMF Demo – Results
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.34
Summary
Vision – enable flexibility, evolution: “design for change”
fine-grain, reusable services, explicit control interfaceenables experimentation, flexibility, community of innovation
per-flow service composition (silos)ease of evolution, policies
Framework – provide architectural support to vision:
constrained composition
commoditize cross-layer interaction / optimization
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.35
Ongoing Efforts
New research directions
silos in the core and scalability
policy enforcement through composition constraints
(generalized) virtualization as a service
Extend the prototype
portfolio of reusable services
optical testbed deployment→ breakable experimental net (BEN)
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.36
Upcoming Book
Architectural Support for Internet Evolution and Innovation IEEE DLT, August 2010 – p.37