3. Idea Behind The Paper:
TO ADDRESS THE CHALLENGES OF
EFFICIENT VIRTUAL NETWORK
EMBEDDING (VNE) IN DATA
CENTERS.
NEW VNE ALGORITHMS TO BE
DESIGNED FOR FULL
UTILIZATION OF REGULAR AND
SYMMETRIC NATURE OF DATA
CENTER NETWORKS.
TO PREVENT RESOURCE WASTE
AND IMPROVE OVERALL RESOURCE
UTILIZATION.
4. Objectives:
Efficient Virtual Network Embedding (VNE): for efficient allocation
of physical resources in data centers for flexible resource
allocation
Resource Utilization Improvement: the goal of the algorithm to
increase resource utilization in data centers by optimizing resource
allocation and reducing transmission hops.
Load Balancing Enhancement: the algorithm aims to achieve load
balancing not only for single-dimensional resources but also for
multi-dimensional resources to prevent resource waste and improve
overall performance.
5. Motivation behind this Paper:
TO AVOID LOAD IMBALANCE, AS
IT IS PROMINENT IN DATA
CENTERS DUE TO POOLING OF
DATA CENTER RESOURCES,
MULTITENANCY AND
HETEROGENEITY
CHARACTERISTICS.
MULTIPLE PREVIOUS STUDIES
ONLY DID LOAD BALANCING IN
SINGLE DIMENSION WHICH MAY
LEAD TO UNDERUTILIZATION OR
OVERUTILIZATION OF SPECIFIC
RESOURCES, LIMITING OVERALL
EFFICIENCY.
TRADITIONAL VNE ALGORITHMS
ARE TAILORED FOR GENERIC
INTERNET TOPOLOGIES AND MAY
NOT FULLY EXPLOIT THE
REGULAR AND SYMMETRIC NATURE
OF DATA CENTER NETWORKS.
6. What is VNE?
• Virtual Network Embedding (VNE) refers to the
process of mapping virtual networks onto
physical infrastructure in a virtualized
environment, such as data centers or cloud
computing platforms. In VNE, the goal is to
efficiently allocate computing, storage, and
network resources to virtual networks while
ensuring optimal performance, resource
utilization, and cost-effectiveness. This
involves mapping the logical topology of virtual
networks, including virtual nodes and links,
onto the physical topology of the underlying
infrastructure, which may consist of servers,
switches, and links. VNE algorithms aim to
address challenges such as resource allocation,
topology mapping, load balancing, and
scalability to optimize the mapping of virtual
networks onto physical infrastructure and ensure
7. What is Load Balancing?
• Load balancing refers to the distribution of workloads
across multiple resources or servers to ensure optimal
utilization, performance, and reliability. In computing,
load balancing involves evenly distributing incoming
network traffic, requests, or computational tasks among
available servers, nodes, or resources. The primary
objectives of load balancing are to prevent overloading
of individual resources, avoid bottlenecks, maximize
resource utilization, and maintain system stability and
responsiveness. Load balancing mechanisms dynamically
allocate incoming requests or tasks to different
resources based on factors such as current resource
utilization, network conditions, and predefined policies
or algorithms.
• This ensures that no single resource is overwhelmed,
thereby enhancing system scalability, fault tolerance,
and overall performance. Load balancing is essential in
various computing environments, including data centers,
cloud computing platforms, and distributed systems, to
efficiently manage and optimize resource usage and
ensure seamless operation of applications and services.
8. Why Load Balancing is
required in VNE?
● Resource Utilization: Load balancing ensures that the computational and
network resources in the data center are utilized optimally. By evenly
distributing virtual network requests across physical resources, load
balancing prevents certain nodes or links from being underutilized while
others are overloaded.
● Performance Optimization: Efficient load balancing improves the overall
performance of the network by minimizing congestion and reducing response
times. It ensures that no single server or link becomes a bottleneck,
which can degrade the performance of virtual networks and applications.
● Fault Tolerance: Load balancing enhances the fault tolerance of the system
by redistributing traffic away from failed or degraded resources. In case
of hardware failures or network congestion, load balancing algorithms
redirect traffic to healthy resources, ensuring uninterrupted service
availability.
● Scalability: As the number of virtual network requests increases, load
balancing helps scale the system by dynamically allocating resources to
accommodate the growing demand. It allows the network to handle
fluctuations in traffic load efficiently without compromising performance
or stability.
● Cost Efficiency: Effective load balancing can lead to cost savings by
optimizing resource usage and reducing the need for additional hardware or
infrastructure. By maximizing the utilization of existing resources,
organizations can minimize operational expenses associated with data
9. ● Load Imbalance Problem of VNE in Data Centers
Illustrative Example:
● Figure 1 is presented to illustrate examples of VNE
scenarios.
● Fig. 1(a) depicts two virtual network requests.
● Fig. 1(b) and Fig. 1(c) demonstrate the mapping
results of two different VNE schemes within a pod in
a data center based on fat-tree topology.
● The gray area in each server represents the current
computing resource occupancy status, and the
numbers beside each access link represent the
current bandwidth occupancy status.
10. Observati
ons about
Paper:
• The mapping result of the green VN
request using embedding without
Multi-Dimensional Load Balancing
(MLB) leads to:
• Imbalance of computing loads
within the pod.
• Computing resource exhaustion
of one server, making it
impossible to map all the
virtual nodes of the orange VN
request within the same pod.
• Cross-pod node mapping
resulting in long-path link
mapping.
• There's an increase in the number
of hops due to the imbalance.
• We can observe that, the mapping
result of the green VN request
using embedding without MLB leads
to the imbalance of computing loads
within the pod and the computing
resource exhaustion of one server,
which makes it impossible to map
all the virtual nodes of the orange
VN request within the same pod.
12. Solution based on Proximal VNE
based on multi-dimensional load
balancing
Since this is a combinatorial optimization problem, which is
NP-hard. Therefore, we design a heuristic algorithm to get a
suboptimal solution.
Solution is based upon:
a) Node Mapping:
Node mapping in virtual network embedding (VNE) refers to the process
of assigning virtual nodes (representing virtual machines or other
network components) to physical nodes (servers or switches) within a
data center network. This mapping is essential for translating the logical
structure of virtual networks onto the physical infrastructure.
During node mapping, various factors are considered to ensure efficient
utilization of resources and optimal performance:
1. Resource Availability
2. Topology Constraints
3. Load Balancing
4. Fault Tolerance:
13. For Node Mapping:
Function in code: node_map(substrate, virtual, req_no)
Purpose: Node mapping determines which substrate nodes
will host the virtual nodes of a given virtual network
request (VNR). The goal is to find suitable substrate
nodes that can accommodate the resource requirements of
the virtual nodes.
Approach: The function iterates over the virtual nodes and
attempts to find a suitable substrate node for each
virtual node based on available resources. It employs a
worst-fit strategy to select the substrate node with the
maximum available capacity that meets the requirements of
the virtual node.
14. Algorithm
for Node
Mapping:
• Algorithm:
• Sort the substrate nodes in descending order of
available capacity (e.g., computational
resources, bandwidth).
• For each virtual node:
• Find the substrate node with the
maximum available capacity that satisfies
the resource requirements of the virtual
node.
• Assign the virtual node to the selected
substrate node.
• Update the available capacity of the
selected substrate node.
15. b) Link Mapping:
Link mapping in virtual network embedding (VNE)
involves determining the paths or routes that virtual
links will take within the physical network infrastructure.
Once virtual nodes are mapped to physical nodes, link
mapping establishes the connections between these
nodes by selecting the appropriate physical links.
Factors are considered to ensure efficient utilization of
resources and optimal performance during link
mapping :
1. Bandwidth Availability
2. Latency
3. Load Balancing
4. Resilience and Fault Tolerance
5. Topology Constraints
6. Quality of Service (QoS) Requirements
7. Resource Optimization Objectives
16. For Link Mapping:
Function in code: edge_map(substrate, virtual, req_no,
req_map, vne_list)
Purpose: Edge mapping determines how virtual edges will
be mapped onto substrate paths while ensuring that
bandwidth constraints are met. It aims to establish
substrate paths between the mapped virtual nodes.
Approach: The function iterates over the virtual edges
and attempts to find suitable substrate paths that can
accommodate the bandwidth requirements of the virtual
edges. It utilizes a modified breadth-first search (BFS)
algorithm to find substrate paths between mapped virtual
nodes.
17. Algorithm
for Link
Mapping:
• Use a modified BFS algorithm
to find a path between the
mapped substrate nodes of the
virtual edge.
• Ensure that the bandwidth
constraints of the virtual
edge are satisfied along the
substrate path.
• Update the bandwidth
availability of the substrate
edges along the selected
path.
• The worst-fit concept
is applied when selecting
substrate paths with
sufficient bandwidth to
accommodate the virtual
edges.
• The algorithm prioritizes
selecting substrate paths
with the maximum available
bandwidth that meets the