Chapter 3
Cloud-Enabling
Technologies
By Yibeltal Gashaw
Outlines
Virtualization
Load balancing Technologies
Multitenant Cloud Computing Data Center
Technology Enabling Technology
Technologies
Virtualization
Technology
Broadband Networks and
Internet Architecture
Broadband Networks and Internet Architecture
• All clouds must be connected to a network; this inevitable requirement forms an
inherent dependency on internetworking.
• Internetworks, or the Internet, allow for the remote provisioning of IT resources
and are directly supportive of ubiquitous network access.
• Cloud consumers have the option of accessing the cloud using only private and
dedicated network links in LANs, although most clouds are Internet enabled.
• The potential of cloud platforms therefore generally grows in parallel with
advancements in Internet connectivity and service quality
Broadband Networks and Internet Architecture
• The Internet’s topology has become a dynamic and complex aggregate of ISPs
that are highly interconnected
• Internet Service Providers (ISPs) can freely deploy, operate, and manage their
networks in addition to selecting partner ISPs for interconnection.
• Advancement in packet switching technology and router interconnectivity
are used to construct the internetworking architecture this ISPs.
Internet Service Providers (ISPs)
• No centralized entity comprehensively governs the Internet, although bodies
like the Internet Corporation for Assigned Names and Numbers (ICANN)
supervise and coordinate Internet communications.
• Governmental and regulatory laws dictate the service provisioning conditions
for organizations and ISPs both within and outside of national borders.
• The Internet’s topology has become a dynamic and complex aggregate of ISPs
that are highly interconnected via its core protocols.
• Smaller branches extend from these major nodes of interconnection, branching
outwards through smaller networks until eventually reaching every Internet-
enabled electronic device.
Connectionless Packet Switching
• End-to-end (sender-receiver pair) data flows are divided into packets of a limited size
that are received and processed through network switches and routers, then queued
and forwarded from one intermediary node to the next.
• Each packet carries the necessary location information, such as the Internet Protocol
(IP) or Media Access Control (MAC) address, to be processed and routed at every
source, intermediary, and destination node.
Router-Based Interconnectivity
• A router is a device that is connected to multiple networks through which it forwards
packets.
• Even when successive packets are part of the same data flow, routers process and
forward each packet individually while maintaining the network topology information
that locates the next node on the communication path between the source and
destination nodes.
• Routers manage network traffic and gauge the most efficient hop for packet delivery,
since they are privy to both the packet source and packet destination.
Router-Based Interconnectivity
• The communication path that connects a cloud consumer with its cloud provider may
involve multiple ISP networks.
• The Internet’s mesh structure connects Internet hosts (endpoint systems) using
multiple alternative network routes that are determined at runtime.
• Communication can therefore be sustained even during simultaneous network
failures, although using multiple network paths can cause routing fluctuations and
latency.
Data Center Technology
Data Center Technology
• A data center is a facility made up of networked computers, storage systems, and
computing infrastructure that businesses and other organizations use to organize,
process, store large amounts of data.
• A business typically relies heavily on applications, services, and data within a data
center, making it a focal point and critical asset for everyday operations.
Data Center Technology
• A data center facility enables an organization to assemble its resources and infrastructure for
data processing, storage, and communication, including:
o systems for storing, sharing, accessing, and processing data across the organization;
o physical infrastructure to support data processing and data communication; And
o Utilities such as cooling, electricity, network access, and uninterruptible power supplies (UPS).
• Gathering all these resources in one data center enables the organization to:
o protect proprietary systems and data;
o Centralizing IT and data processing employees, contractors, and vendors;
o Enforcing information security controls on proprietary systems and data; And
o Realize economies of scale by integrating sensitive systems in one place.
Data Center Technology
• A modern data center concentrates an organization's data systems in a well-protected
physical infrastructure, which includes:
o Server;
o storage subsystems;
o networking switches, routers, and firewalls;
o cabling; And
o Physical racks for organizing and interconnecting IT equipment.
• Data Center Technologies
o Data Center Consolidation
o Data Center Colocation
Data Center Consolidation
• There is no need for a single data center.
• Modern businesses can use two or more data center installations in multiple locations for
greater flexibility and better application performance, reducing latency by locating
workloads closer to users.
• Consolidating data center facilities offers the ability to enhance operations, improve
redundancy and flexibility, deliver higher availability and better use of IT assets.
Data Center Colocation
• Datacenter operators may also pay a fee to rent server space in a colocation facility. A
colocation is an attractive option for organizations that want to avoid the large capital
expenditure associated with building and maintaining their data centers.
Virtualization
Virtualization
• Virtualization is the creation of a virtual (rather than actual) version of something, such as a server, a
desktop, a storage device, an operating system or network resources.
• In other words, Virtualization is a technique, which allows to share a single physical instance of a
resource or an application among multiple customers and organizations.
• It does by assigning a logical name to a physical storage and providing a pointer to that physical resource
when demanded.
• Creation of a virtual machine over existing operating system and hardware is known as Hardware
Virtualization.
• A Virtual machine provides an environment that is logically separated from the underlying hardware.
• The machine on which the virtual machine is going to create is known as Host Machine and that virtual
machine is referred as a Guest Machine.
Types Virtualization
Hardware Virtualization
• When the virtual machine software or virtual machine manager (VMM) is directly installed
on the hardware system is known as hardware virtualization.
• The main job of hypervisor is to control and monitoring the processor, memory and other
hardware resources.
• After virtualization of hardware system we can install different operating system on it and
run different applications on those OS.
• Hardware virtualization is mainly done for the server platforms, because controlling virtual
machines is much easier than controlling a physical server.
Types Virtualization
Operating system Virtualization
• When the virtual machine software or virtual machine manager (VMM) is installed on the
Host operating system instead of directly on the hardware system is known as operating
system virtualization.
• Operating System Virtualization is mainly used for testing the applications on different
platforms of OS.
Load Balancing Technology
Load Balancing
• Load balancing is the sharing of the loads between different nodes for effectively giving services
to the cloud user without hampering the underlying infrastructure.
• It is the distribution of loads over the different nodes which provides good resource utilization
when nodes are overloaded with job.
• Load balancing is a technique that ensures that no VM will be idle while other VMs are being
utilized
• Load balancing is a technique that is used to balance the load between the nodes or VM of the
cloud.
• Balancing means that it makes the less loaded node take additional loads and makes the highly
loaded node to be free from taking or accepting additional loads.
Load Balancing
• Load balancing has several important goals which are mentioned in different studies. Following
are listed some of them.
• To maintain system stability
• To improve system performance
• To improve availability in cloud system
• To make cloud systems to be available for future modification and enhancement
• To have a backup plan in case of system failure
• To reduce and minimize job response time
• To enhance and improve resource utilization
• However The main goal of load balancing is to have higher resource utilization with minimal
response time and minimum datacenter (DC) processing time.
Load Balancing
• The load balancing is done by using a load
balancing algorithm (LBA).
• LBA is a method that is implemented by the load
balancers to balance the load in the cloud VMs.
• In cloud computing, LBAs are used to manage
and distribute the loads across the VMs evenly.
• From architecture when we see this LBA they are
found in between the cloud load balancer and the
VM manager.
• Initially, the different requests that are sent by the
CSC or the cloudlets are received by the DC
controller. The DC controller controls the DC
activities.
• The load balancer is used to implement the
different policies that are used to manage and
balance loads
Load Balancing Algorithms
• In cloud computing, LBAs are algorithms that are used to balance the loads that are forwarded
to the nodes.
• Most likely CLBAs are considered as the scheduling algorithms that are used to manage and
schedule resource usage in the operating system. However, it’s obvious and clear that these
algorithms work for balancing a higher amount of load which is far greater than the personal
computers operating system.
• There are several kinds of LBA in which many studies have categorized them into two major
broad categories saying that
o Static and
o Dynamic LBAs
Static Cloud Load Balancing Algorithms
• Static CLBAs are algorithms that are used to balance loads of mainly small-scale cloud systems.
• Static CLBAs do not consider the initial state of the system. I.e. loads can be assigned to a working or
busy VM equally with the other VMs.
• The distribution of the load between the idle VM, less loaded VM and the overloaded VM is equal if they
are in a similar cloud system.
• The static types of CLBAs are mainly used for response time minimization in small-scale clouds.
• In the best case where all the first VMs are always free, the static algorithms perform excellent with
minimal response time unlikely if it has to be in the worst case when all the VMs are overloaded the
response time will take a considerable time until the VMs become free and give the response to the
request in the queue.
• LBAs like round-robin are good examples of this kind of algorithms.
Dynamic Cloud Load Balancing Algorithms
• The dynamic CLBAs depend on the prior knowledge of the VMs state. But unlike the static CLBAs
Dynamic CLBAs check the state of each node before assigning a load to the respective node.
• By using a dynamic LBA the state of the node is first checked either it is an overloaded or busy state in
that case if the node is busy the request will be transferred to the other node.
• Here, the algorithm will not stop until it gates the free node. Once after it has got it will pass the
request to that node and goes to handle other request or job.
• The main disadvantage of this dynamic CLBA is that it has added overhead for searching the free node
from the other nodes in the connection.
• This has a big effect at the time of worst-case when if all the nodes are handling a specific job for a long
burst time the algorithm may check for the free node repeatedly.
• Unlike the static CLBAs, these dynamic CLBAs are used to minimize response time and have higher
throughput in both large and small cloud systems.
Load Balancing Algorithms
Some Basic CLBAs
• Round Robin Algorithm
• Randomized Algorithm
• Min-Min Algorithm
• Max-Min Algorithm
• Throttled Algorithm
• Active VM Monitoring Algorithm (ESCE)
• Threshold Algorithm
• Honey Bee Algorithm
• Ant colony Algorithm
Cloud Analyst
• Deploying the LBA in real cloud applications or systems and actual performance testing in the
real cloud environment requires a wide range of cloud infrastructures.
• Since setting up this cloud infrastructure is very expensive and demands a large budget the
experiments and tests in cloud environment (CLBAs ) are done by using a cloud simulation tool
that has similar simulation capability for the implementation and experimentation of the CLBAs
like the real cloud environment.
• Cloud analyst is a simulation tool that is extended and built on CloudSim and it is used to
simulate cloud applications with different deployment configurations.
• Cloud analyst is developed in Australia, University Melbourne by Bhatiya Wickremasinghe and Rajkumar Buyya at CLOUDS laboratory of
the computer science and software engineering department.
Cloud Analyst
Cloud Analyst
• Cloud analyst has several promising features that it’s very useful for testing CLBAs with its
package.
• Cloud analyst offers a user to add personalized load balancing policy or LBA to its package to
test and evaluate its response time, DC processing time and other metrics.
• In Cloud analyst after simulation of a certain application, the response time will be presented in
different ways. I.e. the minimum, maximum and average response time will be stated. This is
because of the difference in the geographical location of the users accessing the cloud
application.
Cloud Analyst
• The other benefit of this Cloud analyst simulator is, it is user-friendly.
• Components in Cloud analyst are presented in the GUI (graphical user interface)
mode.
• Users can add VMs, add DCs, and configure the user bases and other
components by using the GUI of the simulator.
• In addition to this by using Cloud analyst, it is possible to extract the simulation
and experimental outputs inform of PDF formats.
• By using the Cloud analyst tool it is possible to do repeated experiments by saving
the experiment's input parameters and results in the form of XML.
Further Reading Assignments on Cloud Enabling Technologies
• Multitenancy technology
• The web technologies and the web services including the REST
• The Advancement on computer (Servers) Processing capability
• Mobile Computing (Advancement on smartphones)
• Containerization
• 3G, 4G and the 5G networks
2 pt.
Quiz 10 min
What is Cloud 3 pt. 2 pt.
computing? List the three What the two
Define on your basic service classifications of
own Term. models of cloud load balancing
computing algorithms?
1 2 3 4 5
List the four List at least four
deployment enabling
models of cloud technologies for
computing the cloud
End of chapter 3
Questions
???????????????????