Transcript 2. sparc
SPARC: use-cases and results
Requirements and Controller Architecture
Wolfgang John
[email protected]
November 23th 2012
Split Architecture for Carrier-Grade Networks.
EU FP7 Project
Start date: July 2010; End date: November 2012 (1 week ago …)
6 Partners:
=
23.11.2012
ER Kista
SPARC @ ACREO
ER Budapest
2
Split Architecture for Carrier-Grade Networks.
Mission: Applying Software Defined Networking (SDN) to operator networks
Results
23 publications, presentations and demos (GENI engineering conference, World
Telecommunication Congress, Globecom, etc.)
Standardization impact in ONF and IRTF
Key Project Deliverables
D2.2: Use cases, requirements, techno-economic study (CAPEX and OPEX), business
environment
D3.3: Main technical document, study of architecture and required extensions
D4.2: Documentation of specific OpenFlow extensions
D4.3: Technical documentation of implementation and prototyping activities
D5.2: Results of validation and performance evaluation
Movie: Summarizing the most important demo’s
(Soon) all to find on: http://www.fp7-sparc.eu
23.11.2012
SPARC @ ACREO
3
SPARC.
Project Team.
23.11.2012
SPARC @ ACREO
4
Use Case Areas.
Focus on Access/Aggregation.
Autoconfiguration
AAA
Network
Management
Service
Management
OAM subsystem
BRAS
GPON OLT
RGW
Outdoor
DSLAM
Business
Other Service
Platforms (mobile,
business, IPTV, VoIP,
...)
Data Centre
Backbone
Access/Aggregation
AGS1
AGS2
LER
LSR
DSLAM
Switch / Router
Optical transport
Optical transport
Business
23.11.2012
SPARC @ ACREO
5
SPARC.
Main Objectives.
The vision of SPARC is to define, implement & evaluate
a scalable carrier class Split Architecture.
Seven objectives of SPARC, with the three main objectives highlighted:
Definition of typical use cases for Split Architecture (D2.2)
Analysis and description of business potential (D2.2)
Definition of Split Architecture blueprint (D3.3)
Extension of the OpenFlow protocol (D3.3 and D4.2)
Development of SPARC prototype (D4.3)
Validation of SPARC prototype (D5.2)
Exploitation of results (papers, demos, presentations, videos)
23.11.2012
SPARC @ ACREO
6
SPARC Objectives.
Carrier-grade.
What is carrier-grade?
Scalability
Support large-scale deployments for carrier-grade networks. E.g. a controller shall
be able to control forwarding devices that could count in the order of hundreds.
Availability and Reliability
The availability of networking services shall be equivalent to that of traditional
technologies.
Network and service management
The ability to monitor, diagnose and centrally manage the network
Quality of Service
Allowing the assurance of SLAs using QoS guarantees for service attributes (e.g.
rate, loss, delay) and service isolation
Support for legacy technology
allowing deployment of new services in parallel to existing legacy protocol stacks
23.11.2012
SPARC @ ACREO
7
SPARC Requirements and Study Topics.
Overview.
Requirements (study topics)
from WP2
WP3: Problem and
Solution Description
WP4: OF Extensions
WP4: Prototype
Integration
/Implementation
WP5: Validation /
Performance
Evaluation
Controller Architecture
Yes
Yes
Yes
Yes
Network Management
Yes
No
No
No
Service Creation
Yes
Yes
Yes
Yes
Virtualization & Isolation
Yes
Yes
Yes
Yes
OAM
Yes
Yes
Yes
Yes
Openness & Extensibility
Yes
Yes
Yes
Yes
Control Channel Bootstrapping
& Topology Discovery
Yes
N/A
Yes
Yes
Network Resiliency
Yes
N/A
Yes
Yes
Energy-Efficient Networking
Yes
Yes
No
No
Quality of Service
Yes
No
No
No
Multilayer Aspects
Yes
No
No
No
Scalability
Yes (numerical
N/A
N/A
Yes
1
2
validation)
23.11.2012
SPARC @ ACREO
8
Intro to SplitArchitecture.
Evolution of SDN.
business applications
app
control
control
app
app
control
control
network services
OpenFlow
data
data
(I) today’s network
design
23.11.2012
data
data
data
SDN
control
software
OpenFlow
data
(II) generic OpenFlow
architecture proposed
initially by Stanford
SPARC @ ACREO
data
data
data
(III) SDN specified by
the ONF
9
Intro to SplitArchitecture.
Software-Defined Networking.
• OpenFlow-based SDN model, defined by the ONF
business applications
SDN
control
network services
software
data
23.11.2012
data
data
SPARC @ ACREO
10
Intro to SplitArchitecture.
Software-Defined Networking.
• OpenFlow-based SDN model, including a network hypervisor
– Virtualization and abstraction layer
– Position of hypervisor (below or above NOS) debatable
business applications
business applications
control program
hypervisor
SDN
control
network services
software
data
23.11.2012
data
data
network operating
system
data
data
SPARC @ ACREO
data
11
Intro to SplitArchitecture.
The SplitArchitecture concept.
• SPARC SplitArchitecture
– Again a split between data and control plane
– Forwarding and processing in data plane considered separately
business applications
control program
hypervisor
network operating
system
data
23.11.2012
data
data
SPARC @ ACREO
12
Intro to SplitArchitecture.
The SplitArchitecture concept.
• SPARC SplitArchitecture
– Again a split between data and control plane
– Forwarding and processing in data plane considered separately
hierarchical controller
concept
OpenFlow
23.11.2012
forwarding
forwarding
forwarding
processing
processing
processing
SPARC @ ACREO
13
Intro to SplitArchitecture.
The SplitArchitecture concept.
• SPARC SplitArchitecture
– Initial considerations on the role of network management
hierarchical controller
concept
network
management
system
OpenFlow
23.11.2012
forwarding
forwarding
forwarding
processing
processing
processing
SPARC @ ACREO
14
Intro to SplitArchitecture.
The SplitArchitecture concept.
• SPARC SplitArchitecture
– Recursively stacked control planes
– Abstracted network view ot higher planes via OpenFlow Interface
hier. control plane n+1 app
OpenFlow
hierarchical controller
concept
network
management
system
hier. control plane n
app
OpenFlow
filtered,
abstract
network
view
hier. control plane n-1 app
OpenFlow
23.11.2012
forwarding
forwarding
forwarding
processing
processing
processing
SPARC @ ACREO
15
Intro to SplitArchitecture.
The SplitArchitecture concept.
• SPARC SplitArchitecture
– Recursively stacked control planes
– Abstracted network view ot higher planes via OpenFlow Interface
hier. control plane n+1 app
OpenFlow
hierarchical controller
concept
network
management
system
hier. control plane n
app
OpenFlow
filtered,
abstract
network
view
hier. control plane n-1 app
OpenFlow
23.11.2012
forwarding
forwarding
forwarding
processing
processing
processing
SPARC @ ACREO
16
Hierarchical controller.
Design goals.
• Goals for a carrier-grade control layer:
– Increase flexibility
• Adapt control architecture to use-cases and business models
• Distribute the control layer to adapt to network capabilities
• Allowing both cross-layering and strict layering of control logic
– Increase scalability
• Operator networks are complex
-> divide and conquer the problem space
– Allow smooth migration
• Supporting control protocol operations with legacy domains
23.11.2012
SPARC @ ACREO
17
Hierarchical controller.
• Current situation: monolithic network elements
CP peers talk OSPF, IS-IS, STP, etc.
CP
CP
CP
DP
DP
DP
FWD engine (DP) and control logic (CP) sit jointly
on a single network element
23.11.2012
SPARC @ ACREO
18
Hierarchical controller.
Splitting Ccontrol and forwarding.
• Step 1 of SDN: Splitting control from data plane
But still the old situation the CP peers control a
single network element and use the old protocol for
sharing state as before (OSPF, IS-IS, LDP, STP, …)
CP
CP
CP
DP
DP
DP
OpenFlow
23.11.2012
SPARC @ ACREO
19
Hierarchical controller.
Centralizing control.
• Step 2 of SDN: Centralize control plane
Centralized control logic
OpenFlow
DP
DP
DP
Benefit: no complex protocols for sharing state among CP peers required any more.
23.11.2012
SPARC @ ACREO
20
Hierarchical controller.
OpenFlow as northbound interface.
• SPARC Idea #1: Exposing services via OpenFlow again!
OpenFlow
Mgmt API
Centralized control logic
OpenFlow
DP
DP
DP
Domain acts like a backplane within the emulated data path element.
23.11.2012
SPARC @ ACREO
21
Hierarchical controller.
Flow space registration.
• SPARC Idea #2: Integrate FlowVisor functionality into controller
OpenFlow
Mgmt API
OpenFlow
OpenFlow
Flowspace Mgmt
Centralized control logic
OpenFlow
DP
DP
DP
Higher layer controllers subscribe to parts of the flowspace (i.e. slices)
Replace the pub/sub interface (as in NOX) with flowspace reservation
23.11.2012
SPARC @ ACREO
22
Hierarchical controller.
Stacked control planes.
• Result: Hierarchical structuring of control planes!
Requires OpenFlow protocol extensions for management of:
* Flowspaces: allow plane (n) to register a slice of the flowspace on (n-1)
* Transport endpoints: allow plane (n) to control (CRUD) logical ports on (n-1)
23.11.2012
SPARC @ ACREO
23
Hierarchical controller.
Example: protocol stack.
• Example: Modular layering of a controller
SMTP
APP-CTL
IPv4
IP-CTL
ETH
ETH-CTL
SMTP
IP
IPv4
IPv6
ETH
ETH
ETH
ETH
PHY
PHY
PHY
PHY
OpenFlow
An IP router use
case: build an
IPv4/IPv6 router
An SMTP router use
case: build a Mail
Transport Agent (MTA)
The northbound interface is
OPENFLOW!
4/8/2015
23.11.2012
DP
=
PHY-CTL
• IP-CTL emulates a single IP layer
• ETH-CTL emulates Ethernet host stacks
• PHY-CTL is a data path element
SPARC @ ACREO
24
Considerations on network management.
The SplitArchitecture concept.
• SPARC SplitArchitecture
– Initial considerations on the role of network management
hier. control plane n+1 app
OpenFlow
hierarchical controller
concept
network
management
system
hier. control plane n
app
OpenFlow
filtered,
abstract
network
view
hier. control plane n-1 app
OpenFlow
23.11.2012
forwarding
forwarding
forwarding
processing
processing
processing
SPARC @ ACREO
25
Considerations on network management.
Control vs. management.
• Boundary between management and control is blurred
– Management functions are important in SplitArchitecture
Functionality
(Increased control granularity)
Today’s
Network
Management
Automation
(Program driven, automatic adjustment
of the network)
SplitArch/
SDN
Speed
(Beyond human time-scale)
23.11.2012
SPARC @ ACREO
26
Considerations on network management.
Assessment of functions.
• Which NM functions to embed in a controller?
– Q1: Already an essential part of SplitArchitecture/SDN control?
If not,
– Q2: Facilitates timely and automated configuration and flow steering?
If so,
– Q3: Possible with open and standardized extensions to the OF / OFConfig protocols? (no bloating with vendor or device specific models)
• Apply this question to NM function according the TMN/FCAPS
definitions of network management
23.11.2012
SPARC @ ACREO
27
Considerations on network management.
SPARC assessment example.
NM function
Element management functions:
Firmware management
Device monitoring (temp., etc)
Device monitoring: Power consumption
Control network bootstrapping
Resource and capability discovery
Logical swtich instatiation
Control channel (addresses and credentials)
Fault detection (equipment)
Alarm management
Logging of alarms
Logging of statistical data
Resource usage (cpu, buffer, queue-length)
Network management functions:
Topology discovery (creation of network view)
Path computation & setup
Flow table management
Tunnel management
Traffic engineering (creation of QoS paths)
Fault detection (link level)
Link performance monitoring
Network performance optimization
Resiliency measures
Service management functions:
Accounting
User management and AAA
Service definition and administration
Service OAM configuration
QoS management (service delay, loss)
SLA management
23.11.2012
FCAPS Groups
Q3 open
Q1 included? Q2 timely? interfaces?
Proposed CP
integration
config
performance
performance
config
config
config
config / security
fault
configuration
fault, accounting
performance, accounting
performance
no
no
no
no
yes
yes
yes
no
no
no
no
no
no
no
yes¹
no
no
no
no
no
yes
no
no
yes²
no
no
OF-mon
no
OF, OF-config
OF-config
OF-config
no
OF-config
no
no
OF-mon
no
no
yes¹
no
yes
yes
yes
no
yes
no
no
yes²
config
config
config
config
config
fault
performance
performance
performance/config
yes
yes
yes
yes
yes
yes³
no
no
yes
yes
yes
yes
yes
yes
yes
yes
yes
yes
OF
OF
OF
OF-config
OF
OF-mon
OF-mon
OF, OF-config
OF, OF-config
yes
yes
yes
yes
yes
yes
yes
yes
yes
accounting
no
no
no
no
accounting / security
no
no
no
no
config
no
no
no
no
yes*
config
no
yes
OF-config
performance
no
yes
OF-mon
yes*
accounting
no
no
no
no
¹ for energy-aware networking (see section 5.7)
² for logical switches sharing switch resources (see section 5.2.4)
SPARC @
ACREO
³ implemented
in SPARC
as BFD (see section 5.3.3)
* assuming service controller functionality in the CP, as in SPARC D4.3
28
Control and management architecture.
Summary.
• Result: A recursive and modular control plane architecture
control plane A
control plane B
hierarchical controller
concept
network
management
system
OpenFlow
23.11.2012
forwarding
forwarding
forwarding
processing
processing
processing
e.g. optical devices
SPARC @ ACREO
29
SPARC: use-cases and results
SPARC prototype implementations
Wolfgang John
[email protected]
November 23th 2012
Seamless MPLS
aka carrier grade packet transport
• Seamless MPLS
“…architecture which can be used to extend MPLS networks to integrate
access and aggregation networks into a single MPLS domain…”
draft-leymann-mpls-seamless-mpls-03
Forklifting access/aggregation to MPLS may be too expensive
apply SDN principles for Seamless MPLS
23.11.2012
SPARC @ ACREO
31
Seamless MPLS implementation.
Basic concept.
APP (CP) APP (CP)
Protocol
Proxy
Central
SPARC element
Controller
OSPF, LDP,
RSVP-TE, BGP …
OpenFlow
Service
CP
CP
Aggregation
Access
CP
CP
Switch
Switch
23.11.2012
IP/MPLS core
CP
IP Edge
Switch
SPARC @ ACREO
CP
IP
MPLS
CP
IP
MPLS
CP
GW
IP
MPLS
32
Seamless MPLS implementation.
Essential Functionalities.
LDP
OpenFlow MPLS CTRL
Protocol Proxy
Discovery
OSPF
End-to-end MPLS CTRL
SPARC Controller
NNI
OSPF, LDP
MPLS
CP
NOX Kernel
Client
OF
Edge
OF
Switch
MPLS
CP
MPLS
CP
OF
Switch
OF
Switch
Core
MPLS
Core
MPLS
Video
WEB
Client
Clients
1.
2.
3.
4.
OF
Edge
OF
Switch
OF
Switch
Core
MPLS
OPENFLOW MPLS Aggregation
IP/MPLS core
Services
Topology discovery of MPLS aggregation & core
Management of MPLS LSPs in aggregation
Signal end-to-end MPLS LSPs
Provision MPLS transport services (e.g. Pseudowire)
23.11.2012
SPARC @ ACREO
33
Seamless MPLS implementation.
1. Topology disovery of MPLS aggegation & core.
OSPF
Protocol Proxy
Discovery
Combine OpenFlow and legacy
topology discovery information
NOX Kernel
Client
MPLS
CP
MPLS
CP
Core
MPLS
Core
MPLS
Video
OF
Access
OF
Switch
OF
Switch
OF
Switch
MPLS
CP
WEB
Client
Clients
23.11.2012
OF
Access
OF
Switch
OF
Switch
OPENFLOW MPLS Aggregation
SPARC @ ACREO
Core
MPLS
IP/MPLS core
Services
34
Seamless MPLS implementation.
2. Management of MPLS LSPs in aggregation.
• Installs PtP, MPtP and PtMP
tunnels
SPARC Controller
Discovery
OpenFlow MPLS CTRL
• Reconfigures them upon topology
changes
NOX Kernel
Client
MPLS
CP
MPLS
CP
Core
MPLS
Core
MPLS
Video
OF
Access
OF
Switch
OF
Switch
OF
Switch
MPLS
CP
WEB
Client
Clients
23.11.2012
OF
Access
OF
Switch
OF
Switch
OPENFLOW MPLS Aggregation
SPARC @ ACREO
Core
MPLS
IP/MPLS core
Services
35
Seamless MPLS implementation.
3. Signaling end-to-end MPLS LSPs.
OpenFlow MPLS CTRL
NOX Kernel
Client
OF
Switch
MPLS
CP
MPLS
CP
Core
MPLS
Core
MPLS
MPLS Tunnel
MPLS Tunnel
OF
Access
• Nests them in MPtP tunnels in
aggregation
LDP
Discovery
OSPF
SPARC Controller
Protocol Proxy
End-to-end MPLS CTRL
• Topology synchronization with OSPF
• Spans end-to-end MPLS with LDP
OF
Switch
OF
Switch
Video
MPLS
CP
WEB
Client
Clients
23.11.2012
OF
Access
OF
Switch
OF
Switch
OPENFLOW MPLS Aggregation
SPARC @ ACREO
Core
MPLS
IP/MPLS core
Services
36
Split-BRAS
• Split-BRAS
BRAS is complex and expensive integrated node since it must handle all
subscriber traffic, hence it must cope with continuously increasing capacity
need, this means increasing cost
Traditional way of deploying BRAS will not scale
apply SDN principles to distribute BRAS functionality
23.11.2012
SPARC @ ACREO
37
Split BRAS.
Basic concept.
Common residential model
today with PPPoE
BRAS
RADIUS
AGS 1
Split Control and raw
forwarding
RAW
BRAS
AGS 1
Control session
IP
Edge
AGS 1
Control session
PPPoE tunnel
AGS 2
RADIUS
Roll raw BRAS toward
Access Node
Aggregation
specific tunnel
PPPoE tunnel
AGS 2
AGS 2
Control session
RAW
BRAS
AN
Client
(RGW)
23.11.2012
AN
AN
Client
(RGW)
Client
(RGW)
SPARC @ ACREO
RADIUS
PPPoE tunnel
38
Split BRAS.
Architecture Blueprint.
control plane
A
Applying a
recursive
control plane
control plane
B
data path
element
L3 fwd engine
PPP & PPPoE
IPoE
L2 fwd engine (disabled)
EoPhy
23.11.2012
SPARC @ ACREO
EoPhy
39
Split BRAS.
Concept.
Central
SPARC
element
Controller
Relay PPP
Request
RAW
BRAS
Aggregation
Access
23.11.2012
IP/MPLS core
IP Edge
SPARC @ ACREO
GW
40
Split BRAS.
Flexible placement.
Central
SPARC
element
Controller
Aggregation
RAW
BRAS
IP Edge
Access
Switch
Switch
23.11.2012
IP/MPLS core
GW
Switch
SPARC @ ACREO
41
Split BRAS.
Increased scalability.
Central
SPARC
element
Controller
Aggregation
RAW
BRAS
IP Edge
Access
RAW
Switch
BRAS
23.11.2012
IP/MPLS core
Switch
GW
Switch
SPARC @ ACREO
42
Summary of SPARC OpenFlow
Protocol Extensions implemented.
• MPLS
– Parsing MPLS headers
– Basic MPLS actions: push/pop header, change TTL, …
• PPP & PPPoE
– Terminate PPP & PPPoE tunnels
• Connectivity Check
– Pro-active monitoring of contuity with probe packets of MPLS-TP BFD format
– Used for monitoring adjacency and flow pairs (bidirectional path)
• OAM & Protection Notification
– About state changes of monitoring entities
– About protection events
• Pseudo Wire
– Support for Ethernet Pseudo Wire over MPLS PSN
– Not full implementation (i.e., no sequence numbers)
23.11.2012
SPARC @ ACREO
43