2. 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.
3. 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.
4. Virtualized Network Function (VNF)
• The software implementations of the network functions that were
done by hardware is called Virtualized Network Function.
5. 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).
6. 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.
7. Objective
• Mapping of SFC request to SN.
• Minimizing total bandwidth usage while doing so.
• Minimize the number of utilized nodes.
8. SFC Request Representation
Given
• 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
𝑉𝑁𝑓, 𝐶𝑃𝑈𝑓𝑢𝑙𝑙, 𝑖𝑛𝑠𝑡𝑎𝑛𝑐𝑒𝑠𝑡𝑜𝑡𝑎𝑙, 𝑐𝑝𝑢 𝑠𝑝𝑙𝑖𝑡.
10. Substrate Network Representation
Given
• 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 𝑉𝑁𝐹 𝑁𝑖 .
12. 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.
13. Algorithm Steps
1. 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.
22. 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