ECS781P 2 CloudNetworking
ECS781P 2 CloudNetworking
CLOUD COMPUTING
CLOUD NETWORKING
2
3
Demand
Digital Transformation
Machine
Digital
Learning,
Currencies
Artificial
and Blockchain
Intelligence (AI)
Augmented
Big Data, Data
Reality and
Analytics, Data
Virtual Reality
Mining
(AR/VR)
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
Cost
Actual
Infrastructure
Demand
Time
For a year!
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.
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
• 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
access
IXP access
net
net
ISP A
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
33
IP addressing
223.1.1.1
• 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
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
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