SlideShare a Scribd company logo
OpenDaylight
service function
chaining use-cases
14 October 2014
Contact: Abhijit Kumbhare & Vinayak Joshi
OpenDaylight SFC Use Cases | 2014-10-14 | Page 2
› SFC Architecture
› Use Cases
agenda
OpenDaylight SFC Use Cases | 2014-10-14 | Page 3
› Service Function Chaining provides the ability to define an
ordered list of a network services (e.g. firewalls, load
balancers, DPI, etc. – a.k.a. Service Functions).
› Services "stitched" together in the network to create a
service chain.
Service function chaining (SFC)
OpenDaylight SFC Use Cases | 2014-10-14 | Page 4
› Few problems in current Service Function Deployment Models:
– Topological dependencies
– Configuration complexity
– Manual service chain construction
– Consistent ordering of service functions enforcement
– Elastic service delivery
› SFC provides a framework to address problems mentioned
– Service Overlay
› Service specific overlay creates a path between service nodes
› Independent of network topology
- Multiple transport (overlay/underlay)
- Service functions located in the network as needed
- Allows arbitrary order of service functions
- Allows easy adding / removing of service functions
SFC Problem Statement
OpenDaylight SFC Use Cases | 2014-10-14 | Page 5
› Service Function Chain:
– the intended set of abstract service functions that must be traversed by the
classified packets and the order of traversal
– e.g. DPI followed by parental control
› Service Function Path:
– the actual instances of services traversed or specific instantiation of a
service chain.
› Classifier:
– determines what traffic needs to be chained based on policy.
SFC high level architecture
SFC-enabled Domain
Service
Classification
Function
Classify & Add
SFC
Encapsulation
Service
Function
Path
SF1 SF2 SFn
OpenDaylight SFC Use Cases | 2014-10-14 | Page 6
SFF1 SFF2 SFF3
SF1
› Service Function Forwarder
–responsible for delivering traffic to a Service Function using SFC
encapsulation
–e.g. an overlay switch like OVS
SFC Path
Normal Path
SF2 SF3
OpenDaylight SFC Use Cases | 2014-10-14 | Page 7
Classifier SFF1
SFF2
(Terminating)
SF1 SF2
› SFC Encapsulation
– Provides SFC identification
– Used by SFC-aware functions (SFFs & SFC-aware SFs)
– Different from outer transport encapsulation
– Transit routers/switches forward based on outer encapsulation
– SFC encap transport independent – any network transport may be used
Outer
Transport Pkt Data
Outer
Transport Pkt DataSFC Encap
Outer
Transport Pkt DataSFC Encap
Outer
Transport Pkt Data
OpenDaylight SFC Use Cases | 2014-10-14 | Page 8
Classifier SFF1
SFF2
(Terminating)
SF1 SF2
Outer
Transport Pkt Data
Outer
Transport Pkt DataSFC Encap
Outer
Transport Pkt Data
› Metadata
– Information passed between nodes
– Provides ability to exchange context information between classifiers and
SFs as well as between SFs
Outer
Transport MetadataSFC Encap Pkt Data
OpenDaylight SFC Use Cases | 2014-10-14 | Page 9
SFC ENCAP/Metadata: NETWORK
SERVICE HEADER (NSH)
› Provides
– Service Path Information (used for forwarding along SFP).
– Location within Service Path.
– Opaque application metadata
› Inserted after initial classification at service plane entry.
– May be inserted after L2 Header (new EthType requested)
– Expandable header
› Lifetime only within SFC domain.
Mandatory: Base Header (flags, next protocol) -4 bytes
Mandatory: Service Path Header (service plane forwarding
info i.e. SFP ID, service index) – 4 bytes
Mandatory: Context Headers (four headers, 4 bytes each)
Optional: Variable length Opaque context headers
OpenDaylight SFC Use Cases | 2014-10-14 | Page 10
Classifier SFF1
SFP
SFC
unaware SF
Outer
Transport Pkt Data
Outer
Transport Pkt DataSFC Encap
Outer
Transport Pkt DataSFC Encap
› SFC Proxy
–Removes and inserts SFC encapsulation on behalf of an SFC-
unaware service function
SFF2
(Terminating)
Outer
Transport Pkt Data
OpenDaylight SFC Use Cases | 2014-10-14 | Page 11
› Rationale
–SDN simplifies service chain provisioning & management
–Entire service chains can be provisioned & easily reconfigured
› Controller has overall view of the network – reduces chance of
inconsistent device configurations
› Service Chaining in Helium
–Receives information about chain and/or path to be constructed via
northbound API
–Constructs service paths
–Contributors from Cisco, Ericsson, Red Hat, Contextream, Brocade,
IBM, Citrix, etc.
SFC IN ODL
OpenDaylight SFC Use Cases | 2014-10-14 | Page 12
SFC ODL Components
OpenDaylight SFC Use Cases | 2014-10-14 | Page 13
Some Helium SFC GAPS
› Possible future work items
› Load Balancing & Fast Failover across SFs
– Keep alives for monitoring of SFs (input to fast failover & load balancing).
› Enforcement of policy
– In Helium – simple ACL based classification
– Possible integration with Group based policy
› Transport & Discovery to be programmed outside SFC
– Outside SDN, separate OF flows etc.
– Possible integration of other ODL discovery projects such as Source
Tracker in future.
OpenDaylight SFC Use Cases | 2014-10-14 | Page 14
USE CASES: YANG MODEL
FOR SFC
Network Service Header
IETF Draft
P.Quinn et. Al.
SFC Architecture
IETF Draft
P.Quinn &
J.Halpern
(Now J.Halpern & C.Pignataro)
Yang Model for SFC
IETF Draft
P.Quinn &
R.Penno
Yang Model files for SFC
(Model the data
structures for SFC)
Packet Classification
Yangs
Yangs for ACL
• SFC data model
is defines in
Yang files.
• Yang files are
fed into the MD-
SAL at compile
time.
• RESTCONF
APIs and
southbound
hooks created
from Yang.
OpenDaylight SFC Use Cases | 2014-10-14 | Page 15
use case 1: NSH with OVS (BASED on SFC ODL
MAILING LIST EXAMPLE)
Network Cloud
OVSDB 1
vnic1 vnic2
SFF1
(OVS Bridge 1)
vnic1
SFF2
(OVS Bridge 2)
SF1 (VM)
eth0
SF2 (VM)
eth0
SF3 (VM)
eth0
OVSDB 2
SF4 (VM)
eth0
SF5 (VM)
eth0
vnic1
SFF3
(OVS Bridge 3)
vnic1 vnic2
SFF4
(OVS Bridge 4)
eth0 eth1
eth0 eth1
VxLAN Tunnel:
VTEPs programmed
externally
Classify ones
and stamp NSH.
Remove NSH
OpenDaylight SFC Use Cases | 2014-10-14 | Page 16
USE CASE 2: OpenFlow-NO
SFC ENCAP
› Need for non-NSH service plane
– Not all SFFs are NSH compliant
– NSH support in OpenFlow is not standardized yet
– NSH implementation in h/w SFFs is even more challenging
– NSH EthType may not be recognized by some network elements
› Challenges due to absence of NSH
– Service plane re-identification at every service hop
› ACL classification at every SFF.
› No support for dynamic header changes.
– Identification of the service hop within service path
› Service index is not available.
› Determine the hop within an SFP using packet contents.
OpenDaylight SFC Use Cases | 2014-10-14 | Page 17
OPENFLOW: NO SFC ENCAP
(ERICSSON’S CONTRIBUTION)
› No SFC encapsulation (i.e. no NSH)
› OpenFlow 1.3.1 based implementation.
› L2 reachability of SFs and SFFs provided in Yang files.
– MAC & VLAN of the SFs/SFFs for L2 connected SFs/SFFs
– MAC & VLAN of the gateway for SFs/SFFs across L3 hops.
› Does not preclude various transports (VxLAN, GRE)
–Programmed outside SFC with/without OpenFlow
› Packet re-reclassification at every SFF.
› Determines service hop based on MAC of previous hop.
OpenDaylight SFC Use Cases | 2014-10-14 | Page 18
NO sFC encap with L2 REACHABLITY:
EXAMPLE SFp
SFF1 SFF2
SF1 SF2
Pkt Data
Outer
Transport
Pkt Data with
DMAC = SF1 MAC
SMAC = SFF1 MAC
Outer
Transport
Pkt Data with
DMAC = SFF2 MAC
SMAC = SF1 MAC
Outer
Transport
Pkt Data with
DMAC = SF3 (dummy SF to
exit service plane) MAC
SMAC = SFF2 MAC
1) Classify to
determine SFP
2) Determine current hop (H1)
from SMAC
1) Classify to
determine SFP
2) Determine current hop (H2)
from SMAC and send to SFF2
Pkt Data with
DMAC = SFF2 MAC
SMAC = SFF1 MAC
1) Classify to
determine SFP
2) Determine current hop (H2)
Outer
Transport
Pkt Data with
DMAC = SF2 MAC
SMAC = SFF2 MAC
Outer
Transport
Pkt Data with
DMAC = SF2 MAC
SMAC = SFF2 MAC
1) Classify to
determine SFP
2) Packet has to exit
service plane
OpenDaylight SFC Use Cases | 2014-10-14 | Page 19
SFC use case example DEEPDIVE
SFF
(CPQD Switch)
SF1 (IP NS)
GGSN
(IP NS)
PE
(IP NS)
VLAN 500 VLAN 600
VLAN 100 VLAN 100
2
1 3
OpenDaylight SFC Use Cases | 2014-10-14 | Page 20
SFC use case example
DEEPDIVE…
JSON for Service Function Path (for RESTCONF generated from Yang)
{
"service-function-paths": {
"service-function-path": [
{
"starting-index": 4,
"service-chain-name": "request",
"name": "request",
"path-id": 23,
"service-path-hop": [
{
"service_index": 1,
"hop-number": 1,
"service-function-name": "sf1",
"service-function-forwarder": “sff:1"
},
{
"service_index": 1,
"hop-number": 2,
"service-function-name": “pe",
"service-function-forwarder": “sff:1"
}
]
},
{
"starting-index": 4,
"service-chain-name": "response",
"name": "response",
"path-id": 39,
"service-path-hop": [
{
"service_index": 1,
"hop-number": 1,
"service-function-name": “ggsn",
"service-function-forwarder": “sff:1"
}
]
}
]
}
}
OpenDaylight SFC Use Cases | 2014-10-14 | Page 21
SFC use case example
DEEPDIVE…
Transport Configuration
sudo ofdatapath -i sff1_ggsn,sff1_sf1,sff1_pe -d 000000000001 ptcp:6681
sudo ofprotocol tcp:127.0.0.1:6681 tcp:<controller IP>:6653
Forward Path Transport
sudo dpctl tcp:127.0.0.1:6681 flow-mod cmd=add,table=10
eth_dst=00:00:08:01:02:01,vlan_vid=500 apply:output=2
sudo dpctl tcp:127.0.0.1:6681 flow-mod cmd=add,table=10
eth_dst=00:00:08:01:09:01,vlan_vid=100 apply:output=3
Reverse Path Transport
sudo dpctl tcp:127.0.0.1:6681 flow-mod cmd=add,table=10
eth_dst=00:00:08:01:01:01,vlan_vid=100 apply:output=1
OpenDaylight SFC Use Cases | 2014-10-14 | Page 22
SFC use case example
DEEPDIVE…
Flows created by ODL
Table 2: Packet classification
{table="2", match="oxm{in_port="1", eth_type="0x800"}", dur_s="155", dur_ns="272000", prio="32768", idle_to="0", hard_to="0",
cookie="0x0", pkt_cnt="0", byte_cnt="0", insts=[meta{meta="0x17", mask="0xffffffffffffffff"}, goto{table="3"}]},
{table="2", match="oxm{in_port="2", eth_type="0x800"}", dur_s="155", dur_ns="218000", prio="32768", idle_to="0", hard_to="0",
cookie="0x0", pkt_cnt="0", byte_cnt="0", insts=[meta{meta="0x17", mask="0xffffffffffffffff"}, goto{table="3"}]},
{table="2", match="oxm{in_port="3", eth_type="0x800"}", dur_s="155", dur_ns="150000", prio="32768", idle_to="0", hard_to="0",
cookie="0x0", pkt_cnt="0", byte_cnt="0", insts=[meta{meta="0x27", mask="0xffffffffffffffff"}, goto{table="3"}]},
Table 3: Hop identification
{table="3", match="oxm{metadata="0x17", metadata_mask="0xffff", eth_src="00:00:08:01:02:01", eth_type="0x800"}", dur_s="36",
dur_ns="228000", prio="256", idle_to="0", hard_to="0", cookie="0x14", pkt_cnt="0", byte_cnt="0",
insts=[apply{acts=[set_field{field:eth_dst="00:00:08:01:09:01"}, vlan_psh{eth="0x8100"}, set_field{field:vlan_vid="100"}]},
goto{table="10"}]},
{table="3", match="oxm{metadata="0x27", metadata_mask="0xffff", eth_src="00:00:08:01:09:01", eth_type="0x800"}", dur_s="36",
dur_ns="191000", prio="256", idle_to="0", hard_to="0", cookie="0x14", pkt_cnt="0", byte_cnt="0",
insts=[apply{acts=[set_field{field:eth_dst="00:00:08:01:01:01"}, vlan_psh{eth="0x8100"}, set_field{field:vlan_vid="100"}]},
goto{table="10"}]},
{table="3", match="oxm{all match}", dur_s="36", dur_ns="196000", prio="100", idle_to="0", hard_to="0", cookie="0x14", pkt_cnt="0",
byte_cnt="0", insts=[goto{table="4"}]},
Table 4: Sending Packet to the First Hop
{table="4", match="oxm{metadata="0x17", metadata_mask="0xffff", eth_type="0x800"}", dur_s="36", dur_ns="278000", prio="256",
idle_to="0", hard_to="0", cookie="0x14", pkt_cnt="0", byte_cnt="0", insts=[apply{acts=[set_field{field:eth_dst="00:00:08:01:02:01"},
vlan_psh{eth="0x8100"}, set_field{field:vlan_vid=“500"}]}, goto{table="10"}]},
OpenDaylight SFC Use Cases | 2014-10-14 | Page 23
USE CASE 3: NSH with
openflow
› Mainly meant for non-OVS, OpenFlow compliant switches
› Service plane is similar to Use Case 1
› Instead of OVSDB commands OpenFlow is used as southbound to
program SFFs
OpenDaylight SFC Use Cases | 2014-10-14 | Page 24
References
• ODL SFC Wiki Page
https://wiki.opendaylight.org/view/Service_Function_Chaining:Main
• Service Function Chaining Problem Statement IETF Draft
https://datatracker.ietf.org/doc/draft-ietf-sfc-problem-statement/
• Service Function Chaining Architecture IETF Draft:
https://datatracker.ietf.org/doc/draft-ietf-sfc-architecture/
• Yang Model for Service Function Chaining IETF Draft
https://datatracker.ietf.org/doc/draft-penno-sfc-yang/?include_text=1
• SFC IETF Working Group
https://datatracker.ietf.org/wg/sfc/charter/
OpenDaylight SFC Use Cases | 2014-10-14 | Page 25
ThaNK you !

More Related Content

What's hot

Building DataCenter networks with VXLAN BGP-EVPN
Building DataCenter networks with VXLAN BGP-EVPNBuilding DataCenter networks with VXLAN BGP-EVPN
Building DataCenter networks with VXLAN BGP-EVPN
Cisco Canada
 
Segment Routing Lab
Segment Routing Lab Segment Routing Lab
Segment Routing Lab
Cisco Canada
 
The Segment Routing Architecture (IEEE Globecom 2015)
The Segment Routing Architecture (IEEE Globecom 2015)The Segment Routing Architecture (IEEE Globecom 2015)
The Segment Routing Architecture (IEEE Globecom 2015)
nagendranainar
 
Operationalizing VRF in the Data Center
Operationalizing VRF in the Data CenterOperationalizing VRF in the Data Center
Operationalizing VRF in the Data Center
Cumulus Networks
 
Mlag invisibile layer 2 redundancy
Mlag invisibile layer 2 redundancyMlag invisibile layer 2 redundancy
Mlag invisibile layer 2 redundancy
Cumulus Networks
 
OSPF Summary LSA (Type 3 LSA)
OSPF Summary LSA (Type 3 LSA)OSPF Summary LSA (Type 3 LSA)
OSPF Summary LSA (Type 3 LSA)
NetProtocol Xpert
 
Routing Protocol EIGRP
Routing Protocol EIGRPRouting Protocol EIGRP
Routing Protocol EIGRP
Dmitry Figol
 
MPLS WC 2014 Segment Routing TI-LFA Fast ReRoute
MPLS WC 2014  Segment Routing TI-LFA Fast ReRouteMPLS WC 2014  Segment Routing TI-LFA Fast ReRoute
MPLS WC 2014 Segment Routing TI-LFA Fast ReRoute
Bruno Decraene
 
VPC PPT @NETWORKERSHOME
VPC PPT @NETWORKERSHOMEVPC PPT @NETWORKERSHOME
VPC PPT @NETWORKERSHOME
networkershome
 
segment routing MPLS SDN NFV World Congress - Paris 2017
segment routing MPLS SDN NFV World Congress - Paris 2017segment routing MPLS SDN NFV World Congress - Paris 2017
segment routing MPLS SDN NFV World Congress - Paris 2017
Rabah GUEDREZ
 
L3 and Multicasting PPT by NETWORKERS HOME
L3 and Multicasting PPT by NETWORKERS HOMEL3 and Multicasting PPT by NETWORKERS HOME
L3 and Multicasting PPT by NETWORKERS HOME
networkershome
 
OTV PPT by NETWORKERS HOME
OTV PPT by NETWORKERS HOMEOTV PPT by NETWORKERS HOME
OTV PPT by NETWORKERS HOME
networkershome
 
Fabric Path PPT by NETWORKERS HOME
Fabric Path PPT by NETWORKERS HOMEFabric Path PPT by NETWORKERS HOME
Fabric Path PPT by NETWORKERS HOME
networkershome
 
Implementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernelImplementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernel
Olivier Bonaventure
 
Ospf
OspfOspf
Introduction to segment routing
Introduction to segment routingIntroduction to segment routing
Introduction to segment routing
Rabah GUEDREZ
 
Otv notes
Otv notesOtv notes
Otv notes
Krunal Shah
 
Testbeds IntErconnections with L2 overlays - SRv6 for SFC
Testbeds IntErconnections with L2 overlays - SRv6 for SFCTestbeds IntErconnections with L2 overlays - SRv6 for SFC
Testbeds IntErconnections with L2 overlays - SRv6 for SFC
Stefano Salsano
 
Protocolo Spanning Tree
Protocolo Spanning TreeProtocolo Spanning Tree
Protocolo Spanning Tree
Alberto Jimenez
 
Xpress path vxlan_bgp_evpn_appricot2019-v2_
Xpress path vxlan_bgp_evpn_appricot2019-v2_Xpress path vxlan_bgp_evpn_appricot2019-v2_
Xpress path vxlan_bgp_evpn_appricot2019-v2_
Jide Akintola JNCIE-M&T/SP #496 CCIE-SP#28552
 

What's hot (20)

Building DataCenter networks with VXLAN BGP-EVPN
Building DataCenter networks with VXLAN BGP-EVPNBuilding DataCenter networks with VXLAN BGP-EVPN
Building DataCenter networks with VXLAN BGP-EVPN
 
Segment Routing Lab
Segment Routing Lab Segment Routing Lab
Segment Routing Lab
 
The Segment Routing Architecture (IEEE Globecom 2015)
The Segment Routing Architecture (IEEE Globecom 2015)The Segment Routing Architecture (IEEE Globecom 2015)
The Segment Routing Architecture (IEEE Globecom 2015)
 
Operationalizing VRF in the Data Center
Operationalizing VRF in the Data CenterOperationalizing VRF in the Data Center
Operationalizing VRF in the Data Center
 
Mlag invisibile layer 2 redundancy
Mlag invisibile layer 2 redundancyMlag invisibile layer 2 redundancy
Mlag invisibile layer 2 redundancy
 
OSPF Summary LSA (Type 3 LSA)
OSPF Summary LSA (Type 3 LSA)OSPF Summary LSA (Type 3 LSA)
OSPF Summary LSA (Type 3 LSA)
 
Routing Protocol EIGRP
Routing Protocol EIGRPRouting Protocol EIGRP
Routing Protocol EIGRP
 
MPLS WC 2014 Segment Routing TI-LFA Fast ReRoute
MPLS WC 2014  Segment Routing TI-LFA Fast ReRouteMPLS WC 2014  Segment Routing TI-LFA Fast ReRoute
MPLS WC 2014 Segment Routing TI-LFA Fast ReRoute
 
VPC PPT @NETWORKERSHOME
VPC PPT @NETWORKERSHOMEVPC PPT @NETWORKERSHOME
VPC PPT @NETWORKERSHOME
 
segment routing MPLS SDN NFV World Congress - Paris 2017
segment routing MPLS SDN NFV World Congress - Paris 2017segment routing MPLS SDN NFV World Congress - Paris 2017
segment routing MPLS SDN NFV World Congress - Paris 2017
 
L3 and Multicasting PPT by NETWORKERS HOME
L3 and Multicasting PPT by NETWORKERS HOMEL3 and Multicasting PPT by NETWORKERS HOME
L3 and Multicasting PPT by NETWORKERS HOME
 
OTV PPT by NETWORKERS HOME
OTV PPT by NETWORKERS HOMEOTV PPT by NETWORKERS HOME
OTV PPT by NETWORKERS HOME
 
Fabric Path PPT by NETWORKERS HOME
Fabric Path PPT by NETWORKERS HOMEFabric Path PPT by NETWORKERS HOME
Fabric Path PPT by NETWORKERS HOME
 
Implementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernelImplementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernel
 
Ospf
OspfOspf
Ospf
 
Introduction to segment routing
Introduction to segment routingIntroduction to segment routing
Introduction to segment routing
 
Otv notes
Otv notesOtv notes
Otv notes
 
Testbeds IntErconnections with L2 overlays - SRv6 for SFC
Testbeds IntErconnections with L2 overlays - SRv6 for SFCTestbeds IntErconnections with L2 overlays - SRv6 for SFC
Testbeds IntErconnections with L2 overlays - SRv6 for SFC
 
Protocolo Spanning Tree
Protocolo Spanning TreeProtocolo Spanning Tree
Protocolo Spanning Tree
 
Xpress path vxlan_bgp_evpn_appricot2019-v2_
Xpress path vxlan_bgp_evpn_appricot2019-v2_Xpress path vxlan_bgp_evpn_appricot2019-v2_
Xpress path vxlan_bgp_evpn_appricot2019-v2_
 

Similar to Layer 123 SDN World Congress OpenDaylight Service Function Chaining Use Cases

Container Service Chaining
Container Service ChainingContainer Service Chaining
Container Service Chaining
Open Networking Summit
 
OPNFV Service Function Chaining
OPNFV Service Function ChainingOPNFV Service Function Chaining
OPNFV Service Function Chaining
OPNFV
 
Cisco nx os
Cisco nx os Cisco nx os
Cisco nx os
Utpal Sinha
 
SD-WAN-Topologies_VERSA Technology.................pdf
SD-WAN-Topologies_VERSA Technology.................pdfSD-WAN-Topologies_VERSA Technology.................pdf
SD-WAN-Topologies_VERSA Technology.................pdf
sachidaddjrt
 
Sigtran Workshop
Sigtran WorkshopSigtran Workshop
Sigtran Workshop
Luca Matteo Ruberto
 
[OpenInfra Days Korea 2018] Day 2 - E6: "SONA: ONOS SDN Controller 기반 OpenSta...
[OpenInfra Days Korea 2018] Day 2 - E6: "SONA: ONOS SDN Controller 기반 OpenSta...[OpenInfra Days Korea 2018] Day 2 - E6: "SONA: ONOS SDN Controller 기반 OpenSta...
[OpenInfra Days Korea 2018] Day 2 - E6: "SONA: ONOS SDN Controller 기반 OpenSta...
OpenStack Korea Community
 
Optical Transport SDN by Peter Landon [APRICOT 2015]
Optical Transport SDN by Peter Landon [APRICOT 2015]Optical Transport SDN by Peter Landon [APRICOT 2015]
Optical Transport SDN by Peter Landon [APRICOT 2015]
APNIC
 
Advanced: 5G Service Based Architecture (SBA)
Advanced: 5G Service Based Architecture (SBA)Advanced: 5G Service Based Architecture (SBA)
Advanced: 5G Service Based Architecture (SBA)
3G4G
 
PLNOG 13: Jeff Tantsura: Programmable and Application aware IP/MPLS networking
PLNOG 13: Jeff Tantsura: Programmable and Application aware IP/MPLS networkingPLNOG 13: Jeff Tantsura: Programmable and Application aware IP/MPLS networking
PLNOG 13: Jeff Tantsura: Programmable and Application aware IP/MPLS networking
PROIDEA
 
ONOS Falcon planning presentation
ONOS Falcon planning presentationONOS Falcon planning presentation
ONOS Falcon planning presentation
Bill Snow
 
IP Infusion Application Note for 4G LTE Fixed Wireless Access
IP Infusion Application Note for 4G LTE Fixed Wireless AccessIP Infusion Application Note for 4G LTE Fixed Wireless Access
IP Infusion Application Note for 4G LTE Fixed Wireless Access
Dhiman Chowdhury
 
Segment Routing: A Tutorial
Segment Routing: A TutorialSegment Routing: A Tutorial
Segment Routing: A Tutorial
APNIC
 
SDN/OpenFlow #lspe
SDN/OpenFlow #lspeSDN/OpenFlow #lspe
SDN/OpenFlow #lspe
Chris Westin
 
Service Function Chaining in Openstack Neutron
Service Function Chaining in Openstack NeutronService Function Chaining in Openstack Neutron
Service Function Chaining in Openstack Neutron
Michelle Holley
 
IP QoS signaling in the IETF:Past, Present and Future
IP QoS signaling in the IETF:Past, Present and FutureIP QoS signaling in the IETF:Past, Present and Future
IP QoS signaling in the IETF:Past, Present and Future
John Loughney
 
3GPP 5G Control Plane Service Based Architecture
3GPP 5G Control Plane Service Based Architecture3GPP 5G Control Plane Service Based Architecture
3GPP 5G Control Plane Service Based Architecture
Sridhar Bhaskaran
 
CisCon 2018 - Overlay Management Protocol e IPsec
CisCon 2018 - Overlay Management Protocol e IPsecCisCon 2018 - Overlay Management Protocol e IPsec
CisCon 2018 - Overlay Management Protocol e IPsec
AreaNetworking.it
 
Cisco-6500-v1.0-R
Cisco-6500-v1.0-RCisco-6500-v1.0-R
Cisco-6500-v1.0-R
Aakash Agarwal
 
Summit 16: Service Function Chaining: Demo and Usage
Summit 16: Service Function Chaining: Demo and UsageSummit 16: Service Function Chaining: Demo and Usage
Summit 16: Service Function Chaining: Demo and Usage
OPNFV
 
Network Configuration Example: Configuring CoS to Support an MC-LAG on an FCo...
Network Configuration Example: Configuring CoS to Support an MC-LAG on an FCo...Network Configuration Example: Configuring CoS to Support an MC-LAG on an FCo...
Network Configuration Example: Configuring CoS to Support an MC-LAG on an FCo...
Juniper Networks
 

Similar to Layer 123 SDN World Congress OpenDaylight Service Function Chaining Use Cases (20)

Container Service Chaining
Container Service ChainingContainer Service Chaining
Container Service Chaining
 
OPNFV Service Function Chaining
OPNFV Service Function ChainingOPNFV Service Function Chaining
OPNFV Service Function Chaining
 
Cisco nx os
Cisco nx os Cisco nx os
Cisco nx os
 
SD-WAN-Topologies_VERSA Technology.................pdf
SD-WAN-Topologies_VERSA Technology.................pdfSD-WAN-Topologies_VERSA Technology.................pdf
SD-WAN-Topologies_VERSA Technology.................pdf
 
Sigtran Workshop
Sigtran WorkshopSigtran Workshop
Sigtran Workshop
 
[OpenInfra Days Korea 2018] Day 2 - E6: "SONA: ONOS SDN Controller 기반 OpenSta...
[OpenInfra Days Korea 2018] Day 2 - E6: "SONA: ONOS SDN Controller 기반 OpenSta...[OpenInfra Days Korea 2018] Day 2 - E6: "SONA: ONOS SDN Controller 기반 OpenSta...
[OpenInfra Days Korea 2018] Day 2 - E6: "SONA: ONOS SDN Controller 기반 OpenSta...
 
Optical Transport SDN by Peter Landon [APRICOT 2015]
Optical Transport SDN by Peter Landon [APRICOT 2015]Optical Transport SDN by Peter Landon [APRICOT 2015]
Optical Transport SDN by Peter Landon [APRICOT 2015]
 
Advanced: 5G Service Based Architecture (SBA)
Advanced: 5G Service Based Architecture (SBA)Advanced: 5G Service Based Architecture (SBA)
Advanced: 5G Service Based Architecture (SBA)
 
PLNOG 13: Jeff Tantsura: Programmable and Application aware IP/MPLS networking
PLNOG 13: Jeff Tantsura: Programmable and Application aware IP/MPLS networkingPLNOG 13: Jeff Tantsura: Programmable and Application aware IP/MPLS networking
PLNOG 13: Jeff Tantsura: Programmable and Application aware IP/MPLS networking
 
ONOS Falcon planning presentation
ONOS Falcon planning presentationONOS Falcon planning presentation
ONOS Falcon planning presentation
 
IP Infusion Application Note for 4G LTE Fixed Wireless Access
IP Infusion Application Note for 4G LTE Fixed Wireless AccessIP Infusion Application Note for 4G LTE Fixed Wireless Access
IP Infusion Application Note for 4G LTE Fixed Wireless Access
 
Segment Routing: A Tutorial
Segment Routing: A TutorialSegment Routing: A Tutorial
Segment Routing: A Tutorial
 
SDN/OpenFlow #lspe
SDN/OpenFlow #lspeSDN/OpenFlow #lspe
SDN/OpenFlow #lspe
 
Service Function Chaining in Openstack Neutron
Service Function Chaining in Openstack NeutronService Function Chaining in Openstack Neutron
Service Function Chaining in Openstack Neutron
 
IP QoS signaling in the IETF:Past, Present and Future
IP QoS signaling in the IETF:Past, Present and FutureIP QoS signaling in the IETF:Past, Present and Future
IP QoS signaling in the IETF:Past, Present and Future
 
3GPP 5G Control Plane Service Based Architecture
3GPP 5G Control Plane Service Based Architecture3GPP 5G Control Plane Service Based Architecture
3GPP 5G Control Plane Service Based Architecture
 
CisCon 2018 - Overlay Management Protocol e IPsec
CisCon 2018 - Overlay Management Protocol e IPsecCisCon 2018 - Overlay Management Protocol e IPsec
CisCon 2018 - Overlay Management Protocol e IPsec
 
Cisco-6500-v1.0-R
Cisco-6500-v1.0-RCisco-6500-v1.0-R
Cisco-6500-v1.0-R
 
Summit 16: Service Function Chaining: Demo and Usage
Summit 16: Service Function Chaining: Demo and UsageSummit 16: Service Function Chaining: Demo and Usage
Summit 16: Service Function Chaining: Demo and Usage
 
Network Configuration Example: Configuring CoS to Support an MC-LAG on an FCo...
Network Configuration Example: Configuring CoS to Support an MC-LAG on an FCo...Network Configuration Example: Configuring CoS to Support an MC-LAG on an FCo...
Network Configuration Example: Configuring CoS to Support an MC-LAG on an FCo...
 

Recently uploaded

GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 

Recently uploaded (20)

GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 

Layer 123 SDN World Congress OpenDaylight Service Function Chaining Use Cases

  • 1. OpenDaylight service function chaining use-cases 14 October 2014 Contact: Abhijit Kumbhare & Vinayak Joshi
  • 2. OpenDaylight SFC Use Cases | 2014-10-14 | Page 2 › SFC Architecture › Use Cases agenda
  • 3. OpenDaylight SFC Use Cases | 2014-10-14 | Page 3 › Service Function Chaining provides the ability to define an ordered list of a network services (e.g. firewalls, load balancers, DPI, etc. – a.k.a. Service Functions). › Services "stitched" together in the network to create a service chain. Service function chaining (SFC)
  • 4. OpenDaylight SFC Use Cases | 2014-10-14 | Page 4 › Few problems in current Service Function Deployment Models: – Topological dependencies – Configuration complexity – Manual service chain construction – Consistent ordering of service functions enforcement – Elastic service delivery › SFC provides a framework to address problems mentioned – Service Overlay › Service specific overlay creates a path between service nodes › Independent of network topology - Multiple transport (overlay/underlay) - Service functions located in the network as needed - Allows arbitrary order of service functions - Allows easy adding / removing of service functions SFC Problem Statement
  • 5. OpenDaylight SFC Use Cases | 2014-10-14 | Page 5 › Service Function Chain: – the intended set of abstract service functions that must be traversed by the classified packets and the order of traversal – e.g. DPI followed by parental control › Service Function Path: – the actual instances of services traversed or specific instantiation of a service chain. › Classifier: – determines what traffic needs to be chained based on policy. SFC high level architecture SFC-enabled Domain Service Classification Function Classify & Add SFC Encapsulation Service Function Path SF1 SF2 SFn
  • 6. OpenDaylight SFC Use Cases | 2014-10-14 | Page 6 SFF1 SFF2 SFF3 SF1 › Service Function Forwarder –responsible for delivering traffic to a Service Function using SFC encapsulation –e.g. an overlay switch like OVS SFC Path Normal Path SF2 SF3
  • 7. OpenDaylight SFC Use Cases | 2014-10-14 | Page 7 Classifier SFF1 SFF2 (Terminating) SF1 SF2 › SFC Encapsulation – Provides SFC identification – Used by SFC-aware functions (SFFs & SFC-aware SFs) – Different from outer transport encapsulation – Transit routers/switches forward based on outer encapsulation – SFC encap transport independent – any network transport may be used Outer Transport Pkt Data Outer Transport Pkt DataSFC Encap Outer Transport Pkt DataSFC Encap Outer Transport Pkt Data
  • 8. OpenDaylight SFC Use Cases | 2014-10-14 | Page 8 Classifier SFF1 SFF2 (Terminating) SF1 SF2 Outer Transport Pkt Data Outer Transport Pkt DataSFC Encap Outer Transport Pkt Data › Metadata – Information passed between nodes – Provides ability to exchange context information between classifiers and SFs as well as between SFs Outer Transport MetadataSFC Encap Pkt Data
  • 9. OpenDaylight SFC Use Cases | 2014-10-14 | Page 9 SFC ENCAP/Metadata: NETWORK SERVICE HEADER (NSH) › Provides – Service Path Information (used for forwarding along SFP). – Location within Service Path. – Opaque application metadata › Inserted after initial classification at service plane entry. – May be inserted after L2 Header (new EthType requested) – Expandable header › Lifetime only within SFC domain. Mandatory: Base Header (flags, next protocol) -4 bytes Mandatory: Service Path Header (service plane forwarding info i.e. SFP ID, service index) – 4 bytes Mandatory: Context Headers (four headers, 4 bytes each) Optional: Variable length Opaque context headers
  • 10. OpenDaylight SFC Use Cases | 2014-10-14 | Page 10 Classifier SFF1 SFP SFC unaware SF Outer Transport Pkt Data Outer Transport Pkt DataSFC Encap Outer Transport Pkt DataSFC Encap › SFC Proxy –Removes and inserts SFC encapsulation on behalf of an SFC- unaware service function SFF2 (Terminating) Outer Transport Pkt Data
  • 11. OpenDaylight SFC Use Cases | 2014-10-14 | Page 11 › Rationale –SDN simplifies service chain provisioning & management –Entire service chains can be provisioned & easily reconfigured › Controller has overall view of the network – reduces chance of inconsistent device configurations › Service Chaining in Helium –Receives information about chain and/or path to be constructed via northbound API –Constructs service paths –Contributors from Cisco, Ericsson, Red Hat, Contextream, Brocade, IBM, Citrix, etc. SFC IN ODL
  • 12. OpenDaylight SFC Use Cases | 2014-10-14 | Page 12 SFC ODL Components
  • 13. OpenDaylight SFC Use Cases | 2014-10-14 | Page 13 Some Helium SFC GAPS › Possible future work items › Load Balancing & Fast Failover across SFs – Keep alives for monitoring of SFs (input to fast failover & load balancing). › Enforcement of policy – In Helium – simple ACL based classification – Possible integration with Group based policy › Transport & Discovery to be programmed outside SFC – Outside SDN, separate OF flows etc. – Possible integration of other ODL discovery projects such as Source Tracker in future.
  • 14. OpenDaylight SFC Use Cases | 2014-10-14 | Page 14 USE CASES: YANG MODEL FOR SFC Network Service Header IETF Draft P.Quinn et. Al. SFC Architecture IETF Draft P.Quinn & J.Halpern (Now J.Halpern & C.Pignataro) Yang Model for SFC IETF Draft P.Quinn & R.Penno Yang Model files for SFC (Model the data structures for SFC) Packet Classification Yangs Yangs for ACL • SFC data model is defines in Yang files. • Yang files are fed into the MD- SAL at compile time. • RESTCONF APIs and southbound hooks created from Yang.
  • 15. OpenDaylight SFC Use Cases | 2014-10-14 | Page 15 use case 1: NSH with OVS (BASED on SFC ODL MAILING LIST EXAMPLE) Network Cloud OVSDB 1 vnic1 vnic2 SFF1 (OVS Bridge 1) vnic1 SFF2 (OVS Bridge 2) SF1 (VM) eth0 SF2 (VM) eth0 SF3 (VM) eth0 OVSDB 2 SF4 (VM) eth0 SF5 (VM) eth0 vnic1 SFF3 (OVS Bridge 3) vnic1 vnic2 SFF4 (OVS Bridge 4) eth0 eth1 eth0 eth1 VxLAN Tunnel: VTEPs programmed externally Classify ones and stamp NSH. Remove NSH
  • 16. OpenDaylight SFC Use Cases | 2014-10-14 | Page 16 USE CASE 2: OpenFlow-NO SFC ENCAP › Need for non-NSH service plane – Not all SFFs are NSH compliant – NSH support in OpenFlow is not standardized yet – NSH implementation in h/w SFFs is even more challenging – NSH EthType may not be recognized by some network elements › Challenges due to absence of NSH – Service plane re-identification at every service hop › ACL classification at every SFF. › No support for dynamic header changes. – Identification of the service hop within service path › Service index is not available. › Determine the hop within an SFP using packet contents.
  • 17. OpenDaylight SFC Use Cases | 2014-10-14 | Page 17 OPENFLOW: NO SFC ENCAP (ERICSSON’S CONTRIBUTION) › No SFC encapsulation (i.e. no NSH) › OpenFlow 1.3.1 based implementation. › L2 reachability of SFs and SFFs provided in Yang files. – MAC & VLAN of the SFs/SFFs for L2 connected SFs/SFFs – MAC & VLAN of the gateway for SFs/SFFs across L3 hops. › Does not preclude various transports (VxLAN, GRE) –Programmed outside SFC with/without OpenFlow › Packet re-reclassification at every SFF. › Determines service hop based on MAC of previous hop.
  • 18. OpenDaylight SFC Use Cases | 2014-10-14 | Page 18 NO sFC encap with L2 REACHABLITY: EXAMPLE SFp SFF1 SFF2 SF1 SF2 Pkt Data Outer Transport Pkt Data with DMAC = SF1 MAC SMAC = SFF1 MAC Outer Transport Pkt Data with DMAC = SFF2 MAC SMAC = SF1 MAC Outer Transport Pkt Data with DMAC = SF3 (dummy SF to exit service plane) MAC SMAC = SFF2 MAC 1) Classify to determine SFP 2) Determine current hop (H1) from SMAC 1) Classify to determine SFP 2) Determine current hop (H2) from SMAC and send to SFF2 Pkt Data with DMAC = SFF2 MAC SMAC = SFF1 MAC 1) Classify to determine SFP 2) Determine current hop (H2) Outer Transport Pkt Data with DMAC = SF2 MAC SMAC = SFF2 MAC Outer Transport Pkt Data with DMAC = SF2 MAC SMAC = SFF2 MAC 1) Classify to determine SFP 2) Packet has to exit service plane
  • 19. OpenDaylight SFC Use Cases | 2014-10-14 | Page 19 SFC use case example DEEPDIVE SFF (CPQD Switch) SF1 (IP NS) GGSN (IP NS) PE (IP NS) VLAN 500 VLAN 600 VLAN 100 VLAN 100 2 1 3
  • 20. OpenDaylight SFC Use Cases | 2014-10-14 | Page 20 SFC use case example DEEPDIVE… JSON for Service Function Path (for RESTCONF generated from Yang) { "service-function-paths": { "service-function-path": [ { "starting-index": 4, "service-chain-name": "request", "name": "request", "path-id": 23, "service-path-hop": [ { "service_index": 1, "hop-number": 1, "service-function-name": "sf1", "service-function-forwarder": “sff:1" }, { "service_index": 1, "hop-number": 2, "service-function-name": “pe", "service-function-forwarder": “sff:1" } ] }, { "starting-index": 4, "service-chain-name": "response", "name": "response", "path-id": 39, "service-path-hop": [ { "service_index": 1, "hop-number": 1, "service-function-name": “ggsn", "service-function-forwarder": “sff:1" } ] } ] } }
  • 21. OpenDaylight SFC Use Cases | 2014-10-14 | Page 21 SFC use case example DEEPDIVE… Transport Configuration sudo ofdatapath -i sff1_ggsn,sff1_sf1,sff1_pe -d 000000000001 ptcp:6681 sudo ofprotocol tcp:127.0.0.1:6681 tcp:<controller IP>:6653 Forward Path Transport sudo dpctl tcp:127.0.0.1:6681 flow-mod cmd=add,table=10 eth_dst=00:00:08:01:02:01,vlan_vid=500 apply:output=2 sudo dpctl tcp:127.0.0.1:6681 flow-mod cmd=add,table=10 eth_dst=00:00:08:01:09:01,vlan_vid=100 apply:output=3 Reverse Path Transport sudo dpctl tcp:127.0.0.1:6681 flow-mod cmd=add,table=10 eth_dst=00:00:08:01:01:01,vlan_vid=100 apply:output=1
  • 22. OpenDaylight SFC Use Cases | 2014-10-14 | Page 22 SFC use case example DEEPDIVE… Flows created by ODL Table 2: Packet classification {table="2", match="oxm{in_port="1", eth_type="0x800"}", dur_s="155", dur_ns="272000", prio="32768", idle_to="0", hard_to="0", cookie="0x0", pkt_cnt="0", byte_cnt="0", insts=[meta{meta="0x17", mask="0xffffffffffffffff"}, goto{table="3"}]}, {table="2", match="oxm{in_port="2", eth_type="0x800"}", dur_s="155", dur_ns="218000", prio="32768", idle_to="0", hard_to="0", cookie="0x0", pkt_cnt="0", byte_cnt="0", insts=[meta{meta="0x17", mask="0xffffffffffffffff"}, goto{table="3"}]}, {table="2", match="oxm{in_port="3", eth_type="0x800"}", dur_s="155", dur_ns="150000", prio="32768", idle_to="0", hard_to="0", cookie="0x0", pkt_cnt="0", byte_cnt="0", insts=[meta{meta="0x27", mask="0xffffffffffffffff"}, goto{table="3"}]}, Table 3: Hop identification {table="3", match="oxm{metadata="0x17", metadata_mask="0xffff", eth_src="00:00:08:01:02:01", eth_type="0x800"}", dur_s="36", dur_ns="228000", prio="256", idle_to="0", hard_to="0", cookie="0x14", pkt_cnt="0", byte_cnt="0", insts=[apply{acts=[set_field{field:eth_dst="00:00:08:01:09:01"}, vlan_psh{eth="0x8100"}, set_field{field:vlan_vid="100"}]}, goto{table="10"}]}, {table="3", match="oxm{metadata="0x27", metadata_mask="0xffff", eth_src="00:00:08:01:09:01", eth_type="0x800"}", dur_s="36", dur_ns="191000", prio="256", idle_to="0", hard_to="0", cookie="0x14", pkt_cnt="0", byte_cnt="0", insts=[apply{acts=[set_field{field:eth_dst="00:00:08:01:01:01"}, vlan_psh{eth="0x8100"}, set_field{field:vlan_vid="100"}]}, goto{table="10"}]}, {table="3", match="oxm{all match}", dur_s="36", dur_ns="196000", prio="100", idle_to="0", hard_to="0", cookie="0x14", pkt_cnt="0", byte_cnt="0", insts=[goto{table="4"}]}, Table 4: Sending Packet to the First Hop {table="4", match="oxm{metadata="0x17", metadata_mask="0xffff", eth_type="0x800"}", dur_s="36", dur_ns="278000", prio="256", idle_to="0", hard_to="0", cookie="0x14", pkt_cnt="0", byte_cnt="0", insts=[apply{acts=[set_field{field:eth_dst="00:00:08:01:02:01"}, vlan_psh{eth="0x8100"}, set_field{field:vlan_vid=“500"}]}, goto{table="10"}]},
  • 23. OpenDaylight SFC Use Cases | 2014-10-14 | Page 23 USE CASE 3: NSH with openflow › Mainly meant for non-OVS, OpenFlow compliant switches › Service plane is similar to Use Case 1 › Instead of OVSDB commands OpenFlow is used as southbound to program SFFs
  • 24. OpenDaylight SFC Use Cases | 2014-10-14 | Page 24 References • ODL SFC Wiki Page https://wiki.opendaylight.org/view/Service_Function_Chaining:Main • Service Function Chaining Problem Statement IETF Draft https://datatracker.ietf.org/doc/draft-ietf-sfc-problem-statement/ • Service Function Chaining Architecture IETF Draft: https://datatracker.ietf.org/doc/draft-ietf-sfc-architecture/ • Yang Model for Service Function Chaining IETF Draft https://datatracker.ietf.org/doc/draft-penno-sfc-yang/?include_text=1 • SFC IETF Working Group https://datatracker.ietf.org/wg/sfc/charter/
  • 25. OpenDaylight SFC Use Cases | 2014-10-14 | Page 25 ThaNK you !

Editor's Notes

  1. Testing
  2. Topological dependencies Rely on specific topologies – which limits scale Example: firewalls need “in”/”out” layer-2 segments – to add new firewalls need additional L2 segments Configuration complexity Consequence of topological dependencies Changing order of service functions => requires changes to topology => adds configuration complexity Results in static service delivery models (as network operators avoid due to complexity/risk of changes) Elastic Service Delivery Adding/removing service functions relies on VLAN/routing changes Hence rapid changes to service layer hard to realize