• No results found

DATA COMMUNICATOIN NETWORKING

N/A
N/A
Protected

Academic year: 2021

Share "DATA COMMUNICATOIN NETWORKING"

Copied!
29
0
0

Loading.... (view fulltext now)

Full text

(1)

DATA COMMUNICATOIN

NETWORKING

Instructor: Ouldooz Baghban Karimi

Course Book: Computer Networking, A Top-Down Approach, Kurose, Ross

Slides:

- Course book Slides

(2)

Course Overview

Basics of Computer Networks

Internet & Protocol Stack

Application Layer

Transport Layer

Network Layer

Data Link Layer

Advanced Topics

Case Studies of Computer Networks

Internet Applications

Network Management

Network Security

(3)

Content Distribution Networks

Single server

 Single point of failure

 Easily overloaded

 Far from most clients

Popular content

 Popular site

(4)

Skewed Popularity of Web Traffic

“Zipf” or “power-law” distribution

Characteristics of WWW Client-based Traces

(5)

Proxy Caches

Reactively replicates

popular content

Smaller round-trip

times to clients

Reduces load on

origin servers

Reduces network load, and

bandwidth costs

Maintain persistent TCP

connections

client

Proxy

server

client origin server

(6)

Forward Proxy

Cache close to the client

 Improves client performance

 Reduces network provider’s costs

Explicit proxy

 Requires configuring browser

Implicit proxy

 Service provider deploys an “on path”

proxy

 … that intercepts and handles Web

requests

client

Proxy

server

(7)

Reverse Proxy

Cache close to server

 Improve client performance

 Reduce content provider cost

 Load balancing, content assembly, transcoding, etc.

Directing clients to the proxy

 Map the site name to the IP address of the proxy

Proxy

server

origin server origin server

(8)

Reverse Proxy

Cache close to server

 Improve client performance

 Reduce content provider cost

 Load balancing, content assembly, transcoding, etc.

Directing clients to the proxy

 Map the site name to the IP address of the proxy

Proxy

server

origin server origin server

(9)

Limitations of Web Caching

Much content is not cacheable

 Dynamic data

 Stock prices, scores, web cams  CGI scripts R

 Results depend on parameters  Cookies

 Results may depend on passed data

 SSL

 Encrypted data is not cacheable  Analytics

 Owner wants to measure hits

(10)

Content Distribution Network

Proactive content replication

 Content provider (e.g., CNN)

contracts with a CDN

CDN replicates the content

 On many servers spread

throughout the Internet

Updating the replicas

 Updates pushed to replicas when

the content changes

origin server in North America CDN distribution node CDN server in S. America CDN server in Europe CDN server in Asia

(11)

Server Selection Policy

Live server

 For availability

Lowest load

 To balance load across the servers

Closest

 Nearest geographically, or in round-trip time

Best performance

 Throughput, latency, …

Cheapest bandwidth, electricity, …

Requires continuous monitoring of

liveness, load, and performance

(12)

Server Selection Mechanism

Application

 HTTP redirection

Advantages

 Fine-grain control

 Selection based on client IP address

Disadvantages

 Extra round-trips for TCP connection to server  Overhead on the server

GET

Redirect

GET

OK

(13)

Server Selection Mechanism

Routing

 Anycast routing

Advantages

 No extra round trips  Route to nearby server

Disadvantages

 Does not consider network or server load  Different packets may go to different servers

 Used only for simple request-response apps

1.2.3.0/24

(14)

Server Selection Mechanism

Naming

 DNS-based server selection

Advantages

 Avoid TCP set-up delay

 DNS caching reduces overhead

 Relatively fine control

Disadvantage

 Based on IP address of local DNS server

 “Hidden load” effect  DNS TTL limits adaptation

1.2.3.4

1.2.3.5

DNS

query

local DNS server

(15)

Example: Akamai

Distributed servers

 Servers: ~61,000  Networks: ~1,000  Countries: ~70

Many customers

 Apple, BBC, FOX, GM IBM, MTV, NASA, NBC, NFL, NPR, Puma, Red

Bull, Rutgers, SAP, …

Client requests

 Hundreds of billions per day  Half in the top

45 networks

(16)

Akamai & DNSs

HTTP

cnn.com (content provider) DNS root server

1 2 Nearby Akamai cluster GET index. html http://cache.cnn.com/foo.jpg

HTTP

Akamai cluster Akamai global DNS server Akamai regional DNS server

End user

(17)

Akamai & DNSs

HTTP

cnn.com (content provider) DNS root server

1 2 Nearby Akamai GET index. html http://cache.cnn.com/foo.jpg

HTTP

Akamai cluster Akamai global DNS server Akamai regional DNS server

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Nearby Akamai DNS lookup cache.cnn.com Akamai cluster 3 4 ALIAS: g.akamai.net Akamai global DNS server Akamai regional DNS server

End user

(18)

Akamai & DNSs

HTTP

cnn.com (content provider) DNS root server

1 2 Nearby Akamai cluster GET index. html http://cache.cnn.com/foo.jpg

HTTP

Akamai cluster Akamai global DNS server Akamai regional DNS server

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Nearby Akamai cluster DNS lookup cache.cnn.com Akamai cluster 3 4 ALIAS: g.akamai.net Akamai global DNS server Akamai regional DNS server

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai cluster Akamai cluster 3 4 6 5 ALIAS a73.g.akamai.net DNS lookup g.akamai.net

End user

(19)

Akamai & DNSs

HTTP

cnn.com (content provider) DNS root server

1 2 Nearby Akamai GET index. html http://cache.cnn.com/foo.jpg

HTTP

Akamai cluster Akamai global DNS server Akamai regional DNS server

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Nearby Akamai DNS lookup cache.cnn.com Akamai cluster 3 4 ALIAS: g.akamai.net Akamai global DNS server Akamai regional DNS server

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai Akamai cluster 3 4 6 5 ALIAS a73.g.akamai.net DNS lookup g.akamai.net

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai Akamai cluster 3 4 6 5 8 7 Address 1.2.3.4

End user

(20)

Akamai & DNSs

HTTP

cnn.com (content provider) DNS root server

1 2 Nearby Akamai cluster GET index. html http://cache.cnn.com/foo.jpg

HTTP

Akamai cluster Akamai global DNS server Akamai regional DNS server

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Nearby Akamai cluster DNS lookup cache.cnn.com Akamai cluster 3 4 ALIAS: g.akamai.net Akamai global DNS server Akamai regional DNS server

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai cluster Akamai cluster 3 4 6 5 ALIAS a73.g.akamai.net DNS lookup g.akamai.net

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai cluster Akamai cluster 3 4 6 5 8 7 Address 1.2.3.4

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai cluster Akamai cluster 3 4 6 5 8 7 9 GET /foo.jpg Host: cache.cnn.com

End user

(21)

Akamai & DNSs

HTTP

cnn.com (content provider) DNS root server

1 2 Nearby Akamai GET index. html http://cache.cnn.com/foo.jpg

HTTP

Akamai cluster Akamai global DNS server Akamai regional DNS server

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Nearby Akamai DNS lookup cache.cnn.com Akamai cluster 3 4 ALIAS: g.akamai.net Akamai global DNS server Akamai regional DNS server

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai Akamai cluster 3 4 6 5 ALIAS a73.g.akamai.net DNS lookup g.akamai.net

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai Akamai cluster 3 4 6 5 8 7 Address 1.2.3.4

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai Akamai cluster 3 4 6 5 8 7 9 GET /foo.jpg

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai Akamai cluster 3 4 6 5 8 7 9 GET /foo.jpg 12 11 GET foo.jpg

End user

(22)

Akamai & DNSs

HTTP

cnn.com (content provider) DNS root server

1 2 Nearby Akamai cluster GET index. html http://cache.cnn.com/foo.jpg

HTTP

Akamai cluster Akamai global DNS server Akamai regional DNS server

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Nearby Akamai cluster DNS lookup cache.cnn.com Akamai cluster 3 4 ALIAS: g.akamai.net Akamai global DNS server Akamai regional DNS server

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai cluster Akamai cluster 3 4 6 5 ALIAS a73.g.akamai.net DNS lookup g.akamai.net

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai cluster Akamai cluster 3 4 6 5 8 7 Address 1.2.3.4

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai cluster Akamai cluster 3 4 6 5 8 7 9 GET /foo.jpg Host: cache.cnn.com

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai cluster Akamai cluster 3 4 6 5 8 7 9 GET /foo.jpg Host: cache.cnn.com 12 11 GET foo.jpg

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai cluster Akamai cluster 3 4 6 5 8 7 9 12 11 10

End user

(23)

Akamai & DNSs

HTTP

cnn.com (content provider) DNS root server

1 2 Nearby Akamai GET index. html http://cache.cnn.com/foo.jpg

HTTP

Akamai cluster Akamai global DNS server Akamai regional DNS server

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Nearby Akamai DNS lookup cache.cnn.com Akamai cluster 3 4 ALIAS: g.akamai.net Akamai global DNS server Akamai regional DNS server

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai Akamai cluster 3 4 6 5 ALIAS a73.g.akamai.net DNS lookup g.akamai.net

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai Akamai cluster 3 4 6 5 8 7 Address 1.2.3.4

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai Akamai cluster 3 4 6 5 8 7 9 GET /foo.jpg

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai Akamai cluster 3 4 6 5 8 7 9 GET /foo.jpg 12 11 GET foo.jpg

End user

HTTP

cnn.com (content provider) DNS root server

1 2 Akamai global DNS server Akamai regional DNS server Nearby Akamai Akamai cluster 3 4 6 5 8 7 9 12 11 10

End user

(24)

Akamai & DNSs

How Akamai Works:

Cache Hit

24

cnn.com (content provider) DNS root server Akamai server

1 2 Akamai high-level DNS server Akamai low-level DNS server Nearby hash-chosen Akamai server 7 8 9 10 GET index. html GET /cnn.com/foo.jpg

End user

(25)

Mapping System

 Equivalence classes of IP addresses

 IP addresses experiencing similar performance

 Quantify how well they connect to each other

 Collect and combine measurements

 Ping, traceroute, BGP routes, server logs

 E.g., over 100 TB of logs per days

 Network latency, loss, and connectivity

 Map each IP class to a preferred server cluster

 Based on performance, cluster health, etc.

 Updated roughly every minute

 Map client request to a server in the cluster

 Load balancer selects a specific server

(26)

Adapting to Failures

Failing hard drive on a server

 Suspends after finishing “in progress” requests

Failed server

 Another server takes over for the IP address  Low-level map updated quickly

Failed cluster

 High-level map updated quickly

Failed path to customer’s origin server

(27)

Akamai Transport Optimizations

Bad Internet routes

 Overlay routing through an intermediate server

Packet loss

 Sending redundant data over multiple paths

TCP connection set-up/teardown

 Pools of persistent connections

TCP congestion window and round-trip time

 Estimates based on network latency measurements

(28)

Akamai Application Optimizations

Slow download of embedded objects

 Prefetch when HTML page is requested

Large objects

 Content compression

Slow applications

 Moving applications to edge servers

 E.g., content aggregation and transformation  E.g., static databases (e.g., product catalogs)

(29)

Conclusion

Content distribution is hard

 Many, diverse, changing objects  Clients distributed all over the world  Reducing latency

Contribution distribution solutions

 Reactive caching

References

Related documents

in practice, biological treatment is part of secondary treatment processes) pro- vides BOD removal well beyond the levels that primary treatment can achieve, producing an

Attached as Exhibit 101 to this report are the following formatted in XBRL (Extensible Business Reporting Language): (i) Consolidated Balance Sheets at June 30, 2015 and December

This study examines the impact of economic openness (in the form of trade liberalization and net inflows of FDI) and political openness (political rights and civil liberties)

The Akamai NetAlliance Program was set up for companies to incorporate and combine Akamai technologies and services with their own products and services in order to create more

As regards the hormonal factors, recently, several studies described the role of estrogens in the pathogenesis of thyroid cancer in women and it was confirmed that sex hormone

26 Local DNS Server Mapping to Akamai cluster 1 Request Routing System Akamai high- level DNS server Akamai low-level DNS server Global Monitoring System Mapping

or Antique Gold frame Free Family Bonus Add-on Free CD of all the images taken CANVAS PACK All prints of graduate from the same image.. All family prints from the

Akamai currently has two service offerings within its evolving Application Performance Solutions (APS) line to improve the performance, availability and consistency of