Post on 28-Feb-2018
7/25/2019 Sdn Nfv Openflow Forces 160130175942
1/89
!"# % #&'( )& % &*+,-! .
!"# % #&'()*+&,-. /+0 &-123!
435&678
/+0102304 56
9//:-; !
7/25/2019 Sdn Nfv Openflow Forces 160130175942
2/89
!"# % #&'( )& % &*+,-! J
ABC !"# /+0 #&' D
K0D*+0 0LGF:M2M2I !"#$!"# :24 #&' :+0N0 2004 3* 0LGF:M2 !"%!"# :24 #&' :+0
O31 :FF 13:+304 NM3E 3N* +0F:304 3+0241 ???
EFPE0 5FH++M2I *D 3E0 4M1Q2@Q*2
503N002 &'()*$#+',:24 &'((*,-+',.
+0
7/25/2019 Sdn Nfv Openflow Forces 160130175942
3/89
!"# % #&'( )& % &*+,-! S
.? 8'()*$#+',/+0 &'((*,-+',.
)2@0 3E0+0 N:1 FMTF0 *
7/25/2019 Sdn Nfv Openflow Forces 160130175942
4/89
!"# % #&'( )& % &*+,-! W
.? J=IB I-KKH+=I/L-+? ?*1;=I*?
P+:4MQ*2:F @*AAH2M@:Q*21 10+
7/25/2019 Sdn Nfv Openflow Forces 160130175942
5/89
!"# % #&'( )& % &*+,-! [
.? 9'0!#12 /+0,2$!'13-,4 .)225
P*4:6( 40
7/25/2019 Sdn Nfv Openflow Forces 160130175942
6/89
!"# % #&'( )& % &*+,-! a
J? 5-0/CR? I-KKH+=I/L-+? .-1,0
P*4:6b1 M2D+:13+H@3H+01 :+0 @*AG*104 *D A:26 4MV0+023 #03N*+; -F0A0231 9#-1B
_
1021*+1( 1A:+3GE*201( 2*305**;1( F:G3*G1( 401; @*AGH30+1( 10+
7/25/2019 Sdn Nfv Openflow Forces 160130175942
7/89
!"# % #&'( )& % &*+,-! h
J? 5B* ?*1;=I* )1-;=0*1 I1=?=?
LK*
S
1*;*+H*
K/1>=+
!*1;=I* P1-;=0*1M/+:1H)
7/25/2019 Sdn Nfv Openflow Forces 160130175942
8/89
!"# % #&'( )& % &*+,-! k
5.- I-K),*K*+?:4
7/25/2019 Sdn Nfv Openflow Forces 160130175942
9/89
!"# % #&'( )& % &*+,-! j
!"#
7/25/2019 Sdn Nfv Openflow Forces 160130175942
10/89
!"# % #&'( )& % &*+,-! .m
TM?
7/25/2019 Sdn Nfv Openflow Forces 160130175942
11/89
!"# % #&'( )& % &*+,-! ..
P/I:*< [-1./10=+> /M?
7/25/2019 Sdn Nfv Openflow Forces 160130175942
12/89
!"# % #&'( )& % &*+,-! .J
#*
7/25/2019 Sdn Nfv Openflow Forces 160130175942
13/89
!"# % #&'( )& % &*+,-! .S
2-+O>H1=+>
7/25/2019 Sdn Nfv Openflow Forces 160130175942
14/89
!"# % #&'( )& % &*+,-! .W
!*)/1/L-+ -[ 0/
7/25/2019 Sdn Nfv Openflow Forces 160130175942
15/89
!"# % #&'( )& % &*+,-! .[
2-+*K*+*?
PE0 )& G+*3*@*F N:1 5HMF3 3* 50 $'&'$(-:24+#
7/25/2019 Sdn Nfv Openflow Forces 160130175942
54/89
!"# % #&'( )& % &*+,-! [W
()*+&,-. K*??/>*
7/25/2019 Sdn Nfv Openflow Forces 160130175942
55/89
!"# % #&'( )& % &*+,-! [[
!*??=-+ ?*
7/25/2019 Sdn Nfv Openflow Forces 160130175942
56/89
7/25/2019 Sdn Nfv Openflow Forces 160130175942
57/89
!"# % #&'( )& % &*+,-! [h
e/11=*1 K*??/>*
82 )& 1NM3@E 4*01 2*3 0LGFM@M3F6 :@;2*NF04I0 A011:I0 +0@0MG3 *+ 0L0@HQ*2
)& 1NM3@E01 A:6 :+5M3+:+MF6 +0*+40+ A011:I0 0L0@HQ*2
M2 *+40+ 3* A:LMAMY0 G0+D*+A:2@0
]E02 3E0 *+40+ M2 NEM@E 3E0 1NM3@E 0L0@H301 A011:I01 M1 MAG*+3:23
*+ :2 0LGFM@M3 :@;2*NF04I0A023 M1 +0^HM+04
3E0 @*23+*FF0+ @:2 1024 : e/11=*1lJ*mH*?< A011:I0
CG*2 +0@0M
7/25/2019 Sdn Nfv Openflow Forces 160130175942
58/89
!"# % #&'( )& % &*+,-! [k
&-123!
7/25/2019 Sdn Nfv Openflow Forces 160130175942
59/89
[j
ForCES History
! FORwarding & Control Element Separation.
!IETF working group
"
Established in 2001
" Era of Network Processing Forum (NPF)
" Need for open and standardized programmable
interfaces for off-the-shelf network processor devices1
"Concluded in 2015
!Set of:
"
Protocols"Model
1https://datatracker.ietf.org/doc/charter-ietf-forces/03/
7/25/2019 Sdn Nfv Openflow Forces 160130175942
60/89
am
ForCES History Major milestones
Date RFC I/PS Milestone
July 2001 Working group established
Dec 2003 RFC3654 I Requirements RFC
Apr 2004 RFC3746 I Framework RFC
Jul 2009 (RFC6053) 1stinteroperability test
Mar 2010 RFC5810 PS ForCES Protocol
Mar 2010 RFC5811 PS SCTP-TML
Mar 2010 RFC5812 PS ForCES Model
Feb 2011 (RFC6984) 2ndinteroperability test
Jun 2013 RFC6956 PS LFB library (Data model)
May 2013 Re-chartered
Oct 2014 RFC7391 PS ForCES Protocol Extension
Nov 2014 RFC7408 PS ForCES Model Extension
Mar 2015 Working group concluded
7/25/2019 Sdn Nfv Openflow Forces 160130175942
61/89
a.
ForCES terminology
FE Model (RFC5812)
The FE model provides the basis to define the information elementsexchanged between the CE and the FE in the ForCES protocol.
The FE model is primarily an information model2, but includes
aspects of a data model.
Protocol (RFC5810)
The ForCES protocol is a master-slave protocol in which FEs areslaves and CEs are masters. Includes both the management of the
communication channel and the control messages.
2https://tools.ietf.org/html/rfc3444
7/25/2019 Sdn Nfv Openflow Forces 160130175942
62/89
aJ
Conceptual view
&-
701*H+@01 9d:+4N:+0Z!*`N:+0B
Network Device
Implementation Specific Interface
,-
&*+,-! :I023
ForCES protocol
! ForCES Protocol
! Binary
! Carrying information described
by model
! FE Model
! Representation of resources
!0+
7/25/2019 Sdn Nfv Openflow Forces 160130175942
63/89
aS
ForCES juxtaposition on SDN (RFC7426)
Network DeviceForwarding Plane Operational Plane
App
Device and Resource Abstraction Layer (DAL)
Co
ntrolPlane
Control Abstraction Layer (CAL)
AppService
Managem
ent
Plane
.
Management Abstraction Layer (MAL)
App Service
Network Service Abstraction Layer (NSAL)
Application Plane AppService
CPSouthbound
Interface
MP
Southbound
Interface
Service Interface
ForCESModel
ForCES
Protocol
7/25/2019 Sdn Nfv Openflow Forces 160130175942
64/89
aW
Network Element (NE)
Control Plane
ForCES Framework (RFC3746)
Control
Element (CE)Control
Element (CE)
Control
Element (CE)
Forwarding Plane
Forwarding
Element (FE)ForwardingElement (FE)
Forwarding
Element (FE)
ForCES protocol
! Network Element (NE)
! Packet Processing Entity
! Constitutes of CEs & FEs
! Multiple CEs to FEs for HA
! CEs/FEs Physical or Virtual
! NE components distributed
! Local (within one box)
! Geographical distributed (LAN/
WAN/Internet)
7/25/2019 Sdn Nfv Openflow Forces 160130175942
65/89
a[
ForCES Framework (RFC3746)
CEManager
FEManager
ForCES Network Element
Control Plane
Forwarding Plane
CE CE
FE FE
!
Managers (CE/FE)
! Bootstrap and subsidiary
mechanisms.
! CE/FE discovery
!
Determine which CEs/FEs willcommunicate.
! FE manager (part) in charter
" Subsidiary mechanism3
! Could be:
" A protocol (proprietary/open)
" E.g. ForCES3
" Simple text file
3https://www.ietf.org/id/draft-ietf-forces-lfb-subsidiary-management-01.txt (to be published)
7/25/2019 Sdn Nfv Openflow Forces 160130175942
66/89
aa
ForCES FE Model (RFC5812)
! ForCES FE Model
! NEs composed of logically separate packet processing elements
! Model FEs using Logical Functional Blocks (LFBs).
! Fine (or coarse as needed) grained operations
! Hardware/Software
! Physical/Virtual
! FE directed graph of LFB class instances
! Graph can be dynamic if supported by implementation
! Includes both Capability & State Model
! XML schema
!
Rules on how to describe LFB model libraries in XML.
ForCES FE Model(Meta Model)
LFB Model(Model)
Resource(Implementation)
7/25/2019 Sdn Nfv Openflow Forces 160130175942
67/89
ah
Forwarding Element (FE)
LFB Model (RFC5812)
Control
Element (CE)
! Written in XML
! Object-oriented approach! Model defines LFB Classes
! Instantiate LFB Instances
! Features! LFB Class Versioning
! LFB Class Inheritance
! Backwards/Forwards compatibility
! Point of interoperability between
implementations! Similar to SNMP MIBs
ForCES
Class 4Inst 1
Class 5Inst 1
Class 4Inst 2
Class 4Inst 3
Class 6Inst 1
Class 7Inst 1
7/25/2019 Sdn Nfv Openflow Forces 160130175942
68/89
ak
ForCES Model Core LFBs
! Core LFBs (FE Management as a whole)
! FEObject LFB (Class ID 1 RFC5812)
" Regards capabilities and state of FE e.g.:
" Instantiated LFBs (Can be used to instantiate new LFBs runtime)
"
LFB Topology (Can be used to change topology runtime)" Supported LFBs
! FEProtocol LFB (Class ID 2 RFC5810)
" Regards protocol functionality e.g.:
" All CEs
"
Heartbeat policies
" HA policies/capabilities
7/25/2019 Sdn Nfv Openflow Forces 160130175942
69/89
aj
! Logical Functional Block Class
! Fine-grained or coarse grained per need.
! Abstractions:
" Input / Output Ports
"
Frame Expected/Frame Produced" Packet
" Metadata
" Singleton/Group
" Components
" Capabilities
" Events
ForCES Model LFBs (RFC5812)
Packet/Metadata
Packet/MetadataPacket/MetadataPacket/Metadata
Packet/Metadata
Packet/MetadataPacket/MetadataPacket/Metadata
From/To CE
Components
Capabilities
Events
LFB Class
ForCES Model LFB Library
7/25/2019 Sdn Nfv Openflow Forces 160130175942
70/89
hm
ForCES Model LFB Library(RFC5812)
! Sequence of top-level elements
! Optional list (ordered)
! Description (Description)
! Load (Imports)
! Frame Definitions! Data Type Definitions
! Metadata Type Definitions
! LFB class Definition
7/25/2019 Sdn Nfv Openflow Forces 160130175942
71/89
h.
ForCES Model Frames
! Frames or Packets Definitions expected/producedfrom/at LFB ports
! Example:
IPv4
An IPv4 packet
F CES M d l D T
7/25/2019 Sdn Nfv Openflow Forces 160130175942
72/89
hJ
ForCES Model DataTypes
(RFC5812)!
Datatype definition!
C-like base datatypes
" Atomic
" char, uchar, byte[N]
" String, String[N], octetstring[N]
"
(u)int16, (u)int32, (u)int64" float32, float64
" Boolean
" Compound
" Struct
" Arrays
" Alias (Symbolic Links)
" Augmentations
! Building blocks for custom-defined datatypes.
7/25/2019 Sdn Nfv Openflow Forces 160130175942
73/89
hS
ForCES Model Metadata
! Metadata Type definition!
Data produced by LFBs to assist other LFBs processing
! E.g. PHYPortID.
! Atomic (RFC5812)/Compound (RFC7408) Data type
! Metadata ID MUST be LFB library unique
7/25/2019 Sdn Nfv Openflow Forces 160130175942
74/89
hW
ForCES Model LFB Class
! Define LFB classes
! LFB Class ID Globally (NE) Unique (uint32)
! Version
! Derived From (inheritance)
LFB Class Definition
Components
Capabilities
Events
7/25/2019 Sdn Nfv Openflow Forces 160130175942
75/89
h[
ForCES Model Components
! Operational Parameters visible to CE
! Component ID
! Unique per component level
! Access control
!
Read-only!
Read-write
! Read-reset
! Trigger-only
! Write-only
! Datatype Reference
7/25/2019 Sdn Nfv Openflow Forces 160130175942
76/89
ha
ForCES Model Capabilities
! Limitations or Capabilities advertised by LFB
! E.g. HA capabilities
! E.g. Port number Limit
! Similar to Components
! Read-Only
! Component ID unique
7/25/2019 Sdn Nfv Openflow Forces 160130175942
77/89
hh
ForCES Model Events
! Custom-defined
! Base ID unique
! Subscription-based
! Event Conditions
! Created
!
Deleted
! Changed
!
LessThan
!
GreaterThan
!
BecomesEqualTo (Model Extension)
! Filters
!
Threshold
!
Hysterisis
!
Count
!
Interval (in milliseconds)
! Event Reports (Component reported)
7/25/2019 Sdn Nfv Openflow Forces 160130175942
78/89
hk
ForCES Model LFB Example
PacketCounterCounts Packets
uint32
Monitor
A monitor LFB for packets
1.0
GoodPacketsGood packets
PacketCounter
BadPackets
Bad packets
PacketCounter
PacketCheckType of checks
CRCChecks for CRC
boolean
BadFrame
Checks for bad framesboolean
7/25/2019 Sdn Nfv Openflow Forces 160130175942
79/89
hj
ForCES Protocol (RFC5810)
Protocol Layer(ForCES protocol)
Transport Layer(SCTP)
Protocol Layer(ForCES protocol)
Transport Layer(SCTP)
CE
FE
! Protocol & Transport Layer
! ForCES! Base ForCES semantics and encapsulation (RFC 5810)
! Two phases:
" Pre-association
" Post-association
! Transport depends on underlying media. One isstandardized (RFC 5811) others expected to be
! Standardized TML: SCTP with strict priority schedule" High Priority (HP): Strictly reliable channel
" Medium Priority (MP): Semi-reliable
" Low Priority (LP): Unreliable channel
HP MP LP
7/25/2019 Sdn Nfv Openflow Forces 160130175942
80/89
km
ForCES Protocol (cont.)
Protocol Layer(ForCES protocol)
Transport Layer(SCTP)
Protocol Layer(ForCES protocol)
Transport Layer(SCTP)
CE
FE
!
Simple Commands (Verbs) (Model elements are nouns)! Set/Get/Del
! Set/Get Properties (for properties & events)
! Message Acknowledgment! Always/Never/On Failure/On success
! Transactional capability (2 Phase Commit)
! Various Execution modes!
Execute all or none! Execute till failure
! Execute on failure
! Scalability! Batching
! Command pipeline
! Security! IPSec
! Traffic Sensitive Heartbeating
! High Availability! Hot/Cold Standby
HP MP LP
7/25/2019 Sdn Nfv Openflow Forces 160130175942
81/89
k.
ForCES Protocol Addressing
! Addressing scheme similar to SNMP MIBs (OIDs)
! FEs in an NE uniquely distinguished by a 32-bit ID (FEID)
! FEID within FE Protocol LFB (Assigned by FE Manager)
! LFB Class IDs unique 32-bit ID (IANA assigned)
! LFB Instance ID unique per FE
! Components/Capabilities/Struct Components/Events have 32-
bit IDs
! Arrays Each row with a 32-bit row ID index
! Supports Key content addressable
! Path: Verb+/FEID/LFB Class/LFB Instance/Path to component
! E.g. GET /FE 3/Port/1/PortTable/ifindex10
! Wire: 7 /3/4/1/1/10
ForCES Protocol Message
7/25/2019 Sdn Nfv Openflow Forces 160130175942
82/89
kJ
ForCES Protocol Message
Construction
CommonHeader
RedirectTLV
LFBSelectTLV
ASResultTLV
ASTeardownTLV
OperationTLV
PathDataTLV
OptionalKeyInfoTLV
PathDataTLV
Result TLVFullData
TLVSparseData
TLV
7/25/2019 Sdn Nfv Openflow Forces 160130175942
83/89
kS
Newest additions
! Subsidiary mechanism LFB
! LFB to handle management functions on FEs
" Load/Unload new LFBs
" Setup CE connectivity
! InterFE LFB
! LFB to chain functionality of LFBs across multiple FEs
Forwarding Element (FE) Forwarding Element (FE)
LFB1 LFB2
LFB3 LFB4
LFB3
InterLFB LFB2
LFB3 LFB4
LFB3
LFB4InterLFB
7/25/2019 Sdn Nfv Openflow Forces 160130175942
84/89
kW
Usage Examples
FE
CE
FE
7/25/2019 Sdn Nfv Openflow Forces 160130175942
85/89
k[
Usage Examples (Data Center)
7/25/2019 Sdn Nfv Openflow Forces 160130175942
86/89
ka
Usage examples (SDN/NFV)
7/25/2019 Sdn Nfv Openflow Forces 160130175942
87/89
kh
Usage examples (Common model)
Network
Devices
ForCES Layer
Network
Devices
ForCES Layer
Network Devices
Hypervisor
VM
VNFVNF
VM
VNFVNF
VM
VNFVNF
Network Devices
Hypervisor
VM
VNFVNF
VM
VNFVNF
VM
VNFVNF
Network
Devices
VNF
VNF
VNF
Network
Devices
VNF
VNF
VNF
Network Manager
ForCES (for
configuration)
Network Devices
Hypervisor
ForCES Layer
App App App App
ForCES (for
management)
NetworkDevices
ForCES Layer
Open API (with ForCES
semantics)
ForCES Abstraction Layer
VM
VNF
ForCES
VNF
ForCES
VM
VNF
ForCES
VNF
ForCES
VM
VNF
ForCES
VNF
ForCES
VNF
ForCES
VNF
ForCES
VNF
ForCES
NetworkDevices
ForCES Layer
Network Devices
ForCES Layeryer
Network Devices
ForCES Layer
Network Devices
ForCES Layer
VNF
ForCES Layer
VNF
ForCES
7/25/2019 Sdn Nfv Openflow Forces 160130175942
88/89
kk
Summary & Conclusion
! ForCES has a potential to be used where separation isrequired.
! Besides datapath management! Wired
"
Device management (Up/Down)
"
Change device functionality (if device is capable)! Wireless
" Channel selection"
SSID management
"
Adjust RF parameters
" Access Control
! LTE"
Management of devices (from base stations to backbone) from acentral location
7/25/2019 Sdn Nfv Openflow Forces 160130175942
89/89
kj
Thank you for listening
RFC 3746
NE
CE
ForCES PL
SCTP TML
IPSec
FE
RFC5810RFC7121
RFC7391
RFC5811
RFC5811
ForCES PL
SCTP TML
IPSec
RFC5812RFC6956
RFC7408
RFC5813
CE Manager
FE Manager
ForCES RFC Roadmap