0% found this document useful (0 votes)
27 views59 pages

ECS781P 2 CloudNetworking

This document discusses cloud networking and cloud applications. It covers topics such as energy efficiency and resource management in cloud computing, basics of internet addressing, content delivery networks, and reaching cloud services. It also discusses challenges in cloud application development including performance isolation, reliability, and workload distribution techniques like MapReduce. The document provides an overview of key concepts in cloud networking and applications.

Uploaded by

Yen-Kai Cheng
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views59 pages

ECS781P 2 CloudNetworking

This document discusses cloud networking and cloud applications. It covers topics such as energy efficiency and resource management in cloud computing, basics of internet addressing, content delivery networks, and reaching cloud services. It also discusses challenges in cloud application development including performance isolation, reliability, and workload distribution techniques like MapReduce. The document provides an overview of key concepts in cloud networking and applications.

Uploaded by

Yen-Kai Cheng
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 59

ECS781P

CLOUD COMPUTING

CLOUD NETWORKING

Lecturer: Dr. Sukhpal Singh Gill


School of Electronic Engineering and Computer Science
Contents
• Energy Efficiency and Resource Management
• Cloud applications
• Basics of Internet Addressing
• CDNs
• Reaching Cloud Services

2
3
Demand
Digital Transformation

5G and Smart Internet-of-Things


Phones (IoT) Devices

Machine
Digital
Learning,
Currencies
Artificial
and Blockchain
Intelligence (AI)

Augmented
Big Data, Data
Reality and
Analytics, Data
Virtual Reality
Mining
(AR/VR)

Source: Cisco Global Cloud Index: Forecast and Methodology, 2015–2020


Cloud Computing
Cloud Computing

Computing provisioned as service (typically within datacenters)

Quality of Service (QoS) requirements


• Deadlines, response time, energy, budget restrictions,
• Availability, reliability, security, etc.

Provisioned via Resource Management


Schedulers, oversubscription, etc.

Sukhpal Singh and Inderveer Chana, “QoS-aware Autonomic Resource Management in Cloud Computing: A Systematic Review”, ACM Computing Surveys,
vol. 48, no. 3, 46 pages, 2016,
Why Cloud Resource Management is challenging?

Shortage of Infrastructure

Cost

Time
Excess of Resources

Shortage and Excess of Resources


Why Cloud Resource Management is challenging?

Cost

Actual
Infrastructure
Demand

Time

Required Resource Management Model


1 minute of video stream =
0.0002kWh

PSY – Gangnam Style = 4 min 13s

As of 2022, watched 4.6b times

BCS estimates total of 418GWh…

Enough to power 95,886 UK homes…

For a year!

BCS: British Computer Society


9
Carbon Footprints
• Data centers used for hosting cloud applications consume
large amounts of electricity
• High operational cost for the cloud providers
• High carbon footprint on the environment
• In 2020, US data centers alone consumed 80 billion
kilowatt-hours of electricity
• = Two-year power consumption of all households in New York
• = The amount consumed by about 6.4 million average American
homes that year
• This is projected to be responsible for the emission of nearly 70
million tons of carbon pollution per annum in 2024.
• Source: US Natural Resources Defense Council (NRDC)

Sukhpal Singh Gill and Rajkumar Buyya, A Taxonomy and Future Directions for Sustainable Cloud Computing: 360
Degree View, ACM Computing Surveys, Volume 51, No. 5, Article No. 104, Pages: 1-33, ISSN 0360-0300, ACM Press,
New York, USA, January 2019.
Open Challenges
• Intermittency and unpredictability of renewable energy
sources (Wind and Solar):
• Powering data centers entirely with renewable energy sources is
difficult
• Mixed sources of energy for data centers:
• Grid power or brown energy
• Renewable energy sources or green energy

• Challenges:
• Minimizing brown energy usage
• Maximizing renewable energy utilization

Sukhpal Singh Gill and Rajkumar Buyya, Sustainable Cloud Computing Realization for Different Applications: A Manifesto, Digital Business:
Business Algorithms, Cloud Computing and Data Engineering, S. Patnaik, X. Yang, M. Tavana, F. Popentiu-Vladicescu, F. Qiao (eds) 95-117pp,
ISBN: 978-3-319-93939-1, Springer, Germany, July 2018.
Contents
• Energy Efficiency and Resource Management
• Cloud applications
• Basics of Internet Addressing
• CDNs
• Reaching Cloud Services

12
Cloud applications
• Cloud computing is very attractive to the
users:
• Economic reasons.
• low infrastructure investment.
• low cost - customers are only billed for resources used.
Cloud applications
• Convenience and performance.
• application developers enjoy the advantages of a just-in-time
infrastructure; they are free to design an application without
being concerned with the system where the application will
run.
• the execution time of compute-intensive and data-intensive
applications can, potentially, be reduced through
parallelization. If an application can partition the workload in
n segments and spawn n instances of itself, then the
execution time could be reduced by a factor close to n.

• Cloud computing is also beneficial for the providers of computing cycles - it


typically leads to a higher level of resource utilization.
Cloud applications (cont’d)

• Ideal applications for cloud computing:


• Web services.
• Database services.
• Transaction-based service. The resource requirements of
transaction-oriented services benefit from an elastic
environment where resources are available when needed
and where one pays only for the resources it consumes.
Cloud applications (cont’d)

• Applications unlikely to perform well on a cloud:


• Applications with a complex workflow and multiple
dependencies, as is often the case in high-performance
computing.
• Applications which require intensive communication among
concurrent instances.
• When the workload cannot be arbitrarily partitioned.
Challenges for cloud application development
• Performance isolation - nearly impossible to reach in a real
system, especially when the system is heavily loaded.

• Reliability - major concern; server failures expected when a large


number of servers cooperate for the computations.

• Cloud infrastructure exhibits latency and bandwidth fluctuations


which affect the application performance.

• Performance considerations limit the amount of data logging; the


ability to identify the source of unexpected results and errors is
helped by frequent logging.
Autoscaling
• Auto-scaling monitors the performance of cloud applications
and automatically adjusts the capacity to maintain steady,
predictable performance and to ensure required computational
power and storage space is available.
Workflows
• Process description - structure describing the tasks to be executed and
the order of their execution. Resembles a flowchart.
• The life cycle of a workflow - creation, definition, verification, and
enactment; similar to the life cycle of a traditional program (creation,
compilation, and execution).
Workflows
Load distribution
• How to divide the load
• Transaction processing systems → a front-end distributes the incoming
transactions to a number of back-end systems. As the workload increases new
back-end systems are added to the pool.
• For data-intensive batch applications two types of divisible workloads are possible:

• modularly divisible → load is a prior divided into pre-


defined modules.
• arbitrarily divisible → the workload can be partitioned into
an arbitrarily large number of smaller workloads of equal,
or very close size.
• Many applications in physics, biology, and other areas of computational
science and engineering obey the arbitrarily divisible load sharing model.
MapReduce philosophy
1. An application starts a master instance, M worker instances for the Map
phase and later R worker instances for the Reduce phase.
2. The master instance partitions the input data in M segments.
3. Each map instance reads its input data segment and processes the data.
4. The results of the processing are stored on the local disks of the servers
where the map instances run.
5. When all map instances have finished processing their data, the R
reduce instances read the results of the first phase and merge the partial
results.
6. The final results are written by the reduce instances to a shared storage
server.
7. The master instance monitors the reduce instances and when all of them
report task completion the application is terminated.
Application

Master instance

1 1 7

Map
Segment 1
instance 1 Local disk
Reduce
Segment 12 Map instance 1
Segment instance 2 Local disk Shared
Map Reduce storage
Segment 3 instance 3 Local disk instance 2

Shared
storage
Reduce
3 4 5 instance R 6
Map
Segment M instance M Local disk

Input data Map phase Reduce phase


Networked applications application
transport
network
data link
Programs that: physical

• run on (different) end systems


• communicate over network
• e.g., web server software communicates
with mobile browser software
• applications only on end systems
• allows for rapid app development, application
propagation transport
network
data link application
• two main interaction types physical transport
network
data link
• client – server physical

• peer to peer

25
Some cloud applications

26
Geo-distributed applications

J. Deng et al, Internet scale user-generated live video streaming: The Twitch case. Proc. Of PAM 2017 27
5 steps to building a cloud-ready application
• Design the application as a collection of services
• Data and Cloud Service
• Decouple the data
• Store on Public Cloud
• Consider communications between application components
• Combine communications into a single stream of data
• Model and design for performance and scaling
• Application (Amazon/eBay) will scale under an increasing load
• Make security systemic within the application
• Data Protection for healthcare application

28
Contents
• Energy Efficiency and Resource Management
• Cloud applications
• Basics of Internet Addressing
• CDNs
• Reaching Cloud Services

29
What is the Internet?
PC mobile network
• billions of connected
servers computing devices:
global ISP
wireless - hosts = end systems
laptop - running network apps
smartphone
wireless • communication links
links - fiber, copper,
radio, satellite home
wired - transmission rate: network regional ISP
links bandwidth

• packet switches: forward


router packets (chunks of data)
institutional
- routers and switches network
30
How does the Internet look like?
access access
net net
access
net
access
access net
net

access
IXP access
net
net
ISP A

Content provider network


access IXP access
net ISP C net

access
ISP B
net
access
net

access
net regional net
access
net
access access
net access net
net

Internet exchange point (IX or IXP) is the physical infrastructure through which Internet service providers (ISPs) and content delivery networks 31
(CDNs) exchange Internet traffic between their networks (autonomous systems).
It's a Network of networks
Tier 1 ISP Tier 1 ISP Google

IXP IXP IXP

Regional ISP Regional ISP

access access access access access access access access


ISP ISP ISP ISP ISP ISP ISP ISP

at center: small # of well-connected large networks


• “tier-1” commercial ISPs (e.g., Level 3, AT&T), national & international coverage
• content provider network (e.g, Google, Akamai): private network that connects its
data centers or racks to Internet, often bypassing tier-1, regional ISPs
32
The problem of addressing
• We need to be able to send requests to a service
from anywhere on the Internet
• How can we give a unique address to every
possible service?
• … in a way that the Internet can automatically find
its way until that address …
• Service addresses have multiple parts
Host name IP Address Port

33
IP addressing
223.1.1.1

• IP address: 32-bit 223.1.2.1

identifier for host, 223.1.1.2


223.1.1.4 223.1.2.9
router interface
• Internet-wide 223.1.3.27
223.1.1.3
223.1.2.2
identifiers
• Routers know how to get
packet to destination IP 223.1.3.1 223.1.3.2

• Dynamic: depend on
the subnetwork the 223.1.1.1 = 11011111 00000001 00000001 00000001
interface is connected 1 1
223 1

34
Subnets
• The whole space of IP addresses is allocated to ISPs and
other Internet entities (e.g. public clouds)
• Subnet: Set of interfaces that can physically reach each
other without an intervening router
• IP addresses belong to a subnet
• Dynamic Host Configuration Protocol (DHCP) assigns free IP
addresses when a machine joins a subnetwork
• IP Addresses have two parts:
- subnet part - high order bits
- host part - low order bits

<--Network address--><--Subnet address--><--Host address--> 130.5 . 5 . 25

35
Sockets
Socket: door between application process and
end-end-transport protocol
The API for applications to communicate across
the network
application application
socket controlled by
process process app developer

transport transport
network network controlled
link by OS
link Internet
physical physical

36
Sockets and ports
• Logical resources managed by the operating system
• Sockets are always assigned a free port when created
• Each process on a networked host can be addressed
remotely by the port number it is listening to
• TCP and UDP ports are independent
• For server-side applications, default port numbers are
defined
• HTTP -> 80
• HTTPS -> 443
• SMTP -> 25

37
DNS: domain name system
• Distributed database implemented in a hierarchy of
many name servers
• Maps hostnames to IP addresses
• Application-layer protocol: hosts, name servers
communicate to resolve names (address/name
translation)

38
DNS: a distributed, hierarchical database

Client wants IP for www.amazon.com:


• client queries root server → to find .com DNS server
DNS: a distributed, hierarchical database

Client wants IP for www.amazon.com:


• client queries root server → to find .com DNS server
DNS: a distributed, hierarchical database

Client wants IP for www.amazon.com:


• client queries root server → to find .com DNS server
• client queries .com DNS server to get amazon.com DNS server
• client queries amazon.com DNS server to get IP address for
www.amazon.com
Contents
• Energy Efficiency and Resource Management
• Cloud applications
• Basics of Internet Addressing
• CDNs
• Reaching Cloud Services

42
Web caches
• Cache servers aim to improve efficiency by reducing
- response time
- traffic to network
• Browser sends all HTTP requests to cache
- object in cache: Web cache
cache returns object
client
origin
- else cache requests server
object from origin
server, then returns
object to client

client origin
server
43
Content Delivery Network
• Infrastructure: large distributed system of servers
deployed in multiple data centers across the Internet
• Goal: serve content to end-users with high availability
and high performance
• Business:
- Media companies and e-commerce vendors pay CDN
operators to deliver their content
- CDN pays ISPs, carriers, and network operators for
hosting its servers in their data centres

44
CDN vs Non-CDN model
Non-CDN model CDN model

45
CDN deployments
• Servers deployed around the world, often deep
inside ISP networks
• Serve the same content from multiple (all)
locations
• Examples:
- Akamai
- Limelight
- Amazon CloudFront
- Level 3
- Windows Azure
- ChinaCache

46
CDN DNS Redirectioning

DNS

HTTP
Where is Google?

Source: Calder, Matt, et al. "Mapping the expansion of Google's serving infrastructure." Proceedings ACM IMC, 2013.
The Netflix server map

Source: Boettger et al, "Open connect everywhere: A glimpse at the internet ecosystem through the lens of the netflix cdn.“ SIGCOMM CCR

49
AWS CloudFront
Example: qmplus.qmul.ac.uk
• Which IP?
• https://www.whatismyip.com/
• https://www.whatismyipaddress.com/
• Which port?

51
Contents
• Energy Efficiency and Resource Management
• Cloud applications
• Basics of Internet Addressing
• CDNs
• Reaching Cloud Services

52
Reaching Virtual Machines
• VMs and Containers are created at a host, by
allocating resources.
• Connectivity is
provided by the
host
• Messages have
to physically go
through the host
Network Interface
Card (NIC)
53
VM to VM Communications
• VMs usually have private
IP addresses
• Reserved ranges that only
work locally
• E.g. 10.0.0.x, 192.168.0.x
• Interfaces are bridged by
hosts
• Also across multiple hosts

54
Reachability to the rest of the Internet
• NAT (Network
Address Translation)
• Middlebox translating
external ip + port into a
private ip + port
• DNS is a high-level
solution in public
clouds
• AWS Router 53

55
AWS Router 53
• Amazon Route 53 is a highly available and scalable
cloud Domain Name System (DNS) web service. It is
designed to give developers and businesses an
extremely reliable and cost-effective way
to route end users to Internet applications by
translating names like www.example.com into the
numeric IP addresses like 192.0.

56
57

You might also like