challenges of service provisioning in mpls openflow

12
Challenges of Service Provisioning in MPLS OpenFlow Dávid JOCHA, András KERN, Zoltán Lajos KIS, Attila TAKÁCS Ericsson Research Hungary WTC 2012 SDN Workshop

Upload: others

Post on 05-Dec-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Challenges of Service Provisioning in MPLS OpenFlow

Dávid JOCHA, András KERN, Zoltán Lajos KIS, Attila TAKÁCS

Ericsson Research

Hungary

WTC 2012

SDN Workshop

SPARC Semi-Centralized Control for Carrier-Grade Aggregation

Video

WEB

MPLS CP

MPLS CP

OF Switch

OF Switch

OF Switch

OF Switch

OF Edge

OF Edge

IP/MPLS core OPENFLOW MPLS Aggregation

NNI OSPF, LDP

RSVP-TE, BGP

OF Switch

Core MPLS

Core MPLS

Core MPLS

Services Clients

Client

UNI

IGMP

Centralized control Intelligence

MPLS CP

Control Protocols

Client

Control Protocols

basic forwarding functions

Control Entity

Legacy Distributed control

• SPARC aims carrier grade split architectures

• With focus on operators’ networks

• OpenFlow as split architecture enabler

Split control (OpenFlow-MPLS) in acc/agg, interworking with legacy IP/MPLS core

Heterogeneous Services on top of a Homogenous Transport

• Vast number of services

– Different characteristics, service specific control

– Service mix can change frequently and rapidly

Video

WEB

MPLS CP

MPLS CP

OF Switch

OF Switch

OF Switch

OF Switch

OF Edge

OF Edge

IP/MPLS core OPENFLOW MPLS Aggregation

NNI OSPF, LDP

RSVP-TE, BGP

OF Switch

Core MPLS

Core MPLS

Core MPLS

Services Clients

Client

UNI

IGMP

Centralized control Intelligence

MPLS CP

Control Protocols

Client

Control Protocols

basic forwarding functions

Control Entity

Legacy Distributed control

SPARC control framework

Transport

Controller

Aggregation Domain

Tunnel Management

End-to-End Tunnel Management NNI Protocols OSPF, LDP, RSVP-TE

OpenFlow controller kernel

Topology

DB Flow

management

vRIB

Interface

Mapper

Transport Visor Transport Visor Transport Visor Transport Resource Visor

Service

Controller

Service

Controller

Service

Controller

Generic controller

framework Adapted to our Use-case

Residential

Internet access

IPTV Business LAN

• Hierarchical controller structure – Layered control plane,

interworking with eachother

– Recursive Stacking

– Interfaces

Users

Users Channels

Multicast logic

Endpoints

DHCP OAM module

Control layer (n)

Control layer (n-1)

Control layer (n+1)

DP

CTRL

CTRL

DP

CTRL CTRL

DP DP

Service example 1: Virtual Private LAN Service (VPLS)

OF Switch

OF Switch

OF Switch

OF Edge

OF Switch

Client

Client OF1.0 MPLS or OF 1.1

OF Edge

Client

Transport Controller

VPLS Controller

Legend:

Service MPLS tunnel

Transport MPLS tunnel

Transport and service are the two mayor layers

Virtualized view of the

network

OF Switch

Service Example 2: Residential Service with BRAS

Video

WEB

OF Switch

OF Switch

OF Switch

OF Edge

OF Switch

Client

Client OF1.0 MPLS or OF 1.1

OF Edge

BRAS

MPLS OpenFlow Controller

NOX kernel

MPLS Transport Application

L2 VPN Control APP L3 VPN Control APP

Residential Service APP • Broadband Remote Access Server (BRAS) functions include:

– AAA

– PPP termination

Legend:

L3 MPLS VPN tunnel

aka IP-MPLS-MPLS

L2 VPN tunnel aka

ETH-PW-MPLS

Transport MPLS tunnel

L2 and L3 type tunnels contribute to the same (higher layer) service

What is missing in standard OpenFlow?

• Flexible encapsulation needed – L3 in L2: supported

– L2 in L3, L2 in L2: not supported

– L2/L3 connectivity on the top of MPLS Pseudowire (PWE)

• Stateful processing at endpoints – Per packet processing in controller does not scale

Data plane layers

OF MPLS

core MPLS OF

VLC server

OF MPLS

OF MPLS

OF Internal MPLS

End-to-End MPLS

PWE (E-TREE)

L2 connectivity

SE

OpenFlow protocol extension: Stateful processing and endpoints

• Packet processor

– Extending the datapath functionality with stateless

and stateful packet processing, backward compatible

– Examples: PW, LLDP, Meters, IPv4 defragmentation,

BFD, … Flow

Table

Flow

Flow

Flow

Flow

Port

Group

Processor

Processor

Processor

Flow

Table

Flow

Flow

Flow

Flow

Processor

Processor

Flow Processor

OpenFlow protocol extension: Pseudowires

• To be supported

– Bottom of stack bit support

(match, set)

– Push/Pop labels/GALS/G-

Ach header/control word

before Layer 2

– Ability to POP labels and

figure out data type

underneath it

– Ability to process control

word and G-Ach header for

OAM etc

Physical

Data-Link

PSN

PSN Convergence

PW Demultiplexer

Encapsulation

Payload

Sequencing

Timing

Payload Conv.

Outer MPLS Label

PW Label

Control Word Flags, Frag, Len, Seg#

RTP

Payload

Physical

Data-Link

PWE3 over

MPLS

Generic

PWE3

Example: PW Implementation (with BFD)

Flow

Table

Flow

Flow

Flow

Port

PW MPLS

Ingress

Flow

Port

BFD

User traffic

VCCV (IPv4 pkts)

PW MPLS

Egress

User traffic

VCCV (IPv4 pkts)

Flow

Flow

Table

Flow

Flow

Flow

Flow

Flow

Group

Port

Port

ETH

IP

TCP

IP

UDP

BFD

VCCV CV

ETH

MPLS (PW)

VCCV CV

ETH

MPLS (PW)

MPLS (LSP)

+metadata

VCCV CV

ETH

MPLS (PW)

MPLS (LSP)

VCCV CV

ETH

MPLS (PW)

+metadata

ETH

IP

TCP

ETH

IP

TCP

ETH

IP

TCP

ETH

IP

TCP

ETH

IP

TCP

ETH

IP

TCP

ETH

IP

TCP

IP

UDP

BFD

IP

UDP

BFD

IP

UDP

BFD

IP

UDP

BFD

IP

UDP

BFD

Outlook

• Management aspects

– OAM

– Network Management System

• QoS

– OpenFlow support

• Other encapsulation modes

– PBB

– GRE

Thank you for your attention!