offline sd sf mapping
TRANSCRIPT
Offline SD-SF MappingJay Mehta and Dinesh Ram Evana
NaaS – Network as a Service• Network as a Service (NaaS) is a modern option for enterprises to
consume and utilize different networking services and network functions away from their campus.
Network Function Virtualization (NFV)• Network Function Virtualization (NFV) is a core concept which enables
NaaS. NFV aims to address the problems faced by large NaaS providers’ networks. NFV is a network architecture concept. Using the technologies of IT virtualization, NFV virtualizes all the functions that are performed by traditional hardware appliances.• NFV decouples hardware from software.• Using concepts of NFV we can implement the network functions on
high-volume servers, storage and switches in a very flexible manner.
Virtualized Network Function (VNF)• The software implementations of the network functions that were
done by hardware is called Virtualized Network Function.
Service Function Chaining (SFC)• A Service Function Chain (SFC) request is received by the NaaS
provider which consists of a number of functions nodes, computation and bandwidth requirement and dependencies among these function nodes. The datacenters which serve the clients with network functions are called as Telecom Clouds (TC).
• A set of VNAs interconnected by virtual links, is referred to as a service function chain (SFC). The topology of an SFC can be as simple as a linear array (chain) or an irregular mesh that provides services for multiple packet flows (PFs).
Split Dependency:There are some cases that the traffic after one VNF will be split into two or more streams.One good example for this type is the load balancer (LB). When the LB is one of the VNFs in the chain it splits the incoming traffic into different branches to balance traffic.
Objective• Mapping of SFC request to SN.• Minimizing total bandwidth usage while doing so.• Minimize the number of utilized nodes.
SFC Request RepresentationGiven• List of 3-tuple for representing the chain of VNFs with bandwidth
requirement.• 3-tuple for representing the split dependency .• If more than 1 split dependencies in the request we’ll have a List.• Table for storing computation requirements with columns
Example SFC Representation
1. Request Chain = 2. Split Function = 3. Computation requirements table =
VNF 1
VNF 2
VNF 3
VNF 3
VNF 3
Substrate Network RepresentationGiven• Substrate network will be represented as a graph where is the nodes
and is the links.• Every node will have some computation capacity • Every link will have a cost and bandwidth and respectively.• Every node will be doing a virtualized network function .
Example SN Representation
N1 f130
N2 f310
N4 f2100
N5 f320
N3 f280
Algorithm Idea• The algorithm will start by mapping the that has maximum
bandwidth requirement. This way we’ll make sure that function that requires maximum bandwidth does get mapped and is not left unmapped in which case SFC request will not be served. If two have same bandwidth requirement then the one with higher will be mapped first. • For the substrate nodes, in case two nodes have the same
functionality then the node with less CPU available will be mapped.• Less Hops and Neighborhood first policy is used to minimize the total
bandwidth consumption across the substrate network.
Algorithm Steps1. Sort Request Chain in descending order of bandwidth requirement.2. Loop through the sorted request chain start nodes until all VNFs are
mapped on the substrate network.3. Map the VNFs to substrate nodes based on the neighborhood first
policy.4. Choose the lowest Computation Capacity Node which can perform
the Virtualized Network Function.5. Choose path which involves minimum hops, cost and bandwidth.
Algorithm applied on Example
N1 f130
N2 f310
N4 f2100
N5 f310
N3 f280
VNF 110
VNF 220
VNF35
VNF35
VNF35
122
2
Mapping VNF2 on Substrate Node
N1 f130
N2 f310
N4 f2100
N5 f310
N3 f280
VNF 110
VNF 220
VNF35
VNF35
VNF35
122
2
Mapped VNF2 to N3
N1 f130
N2 f310
N4 f2100
N5 f310
N3 f2
80-20
VNF 110
VNF 220
VNF35
VNF35
VNF35
122
2
Mapping VNF3 on Substrate Node
N1 f130
N2 f310
N4 f2100
N5 f310
N3 f2
80-20
VNF 110
VNF 220
VNF35
VNF35
VNF35
122
2Cost = 1 BW = 8
Cost = 4 BW = 8
Mapped VNF3(1st split) to N2
N1 f130
N2 f310-5
N4 f2100
N5 f310
N3 f2
80-20
VNF 110
VNF 220
VNF35
VNF35
VNF35
122
2Cost = 1 BW = 8-2
Cost = 4 BW = 8
Mapped VNF3(2nd Split) to N2
N1 f130
N2 f3
10-10
N4 f2100
N5 f310
N3 f2
80-20
VNF 110
VNF 220
VNF35
VNF35
VNF35
122
2Cost = 1 BW = 8-4
Cost = 4 BW = 8
Mapped VNF3(3rd Split) to N5
N1 f130
N2 f3
10-10
N4 f2100
N5 f310-5
N3 f2
80-20
VNF 110
VNF 220
VNF35
VNF35
VNF35
122
2Cost = 1 BW = 8
Cost = 4 BW = 8-2
Mapped VNF1 to N1
N1 f1
30-10
N2 f3
10-10
N4 f2100
N5 f310-5
N3 f2
80-20
VNF 110
VNF 220
VNF35
VNF35
VNF35
122
2Cost = 1 BW = 8-4
Cost = 4 BW = 8-2
One Possibility• If the user/client just provides with a request of network functions
that are required to be done and not the chain.• Our Algorithm will place the Split Function at the start of the chain
and followed by decreasing BW requirements.• This approach will minimize the overall bandwidth consumption of
our substrate network, because since the data streams will be split from the start, the low BW links on substrate network can be utilized.
VNF 2
VNF
VNF 1
VNF 1
VNF 3
VNF 3
VNF 3
Thank You