30
Design of Content Anycasting for Future Internet 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M.

1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

Embed Size (px)

Citation preview

Page 1: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

Design of Content Anycasting for Future Internet

1

Proceeding the Second Exercises on Computer and Systems Engineering

Professor OKAMURA Laboratory.Othman Othman M.M.

Page 2: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

Outline:1. Introduction.2. Motivation.3. Background and current solutions.

1. Load-aware anycast [reference paper 2].2. Clustered BitTorrent [reference paper 3].

4. Content anycasting.1. OpenFlow Overview [reference paper 1].2. System Overview.3. Requesting Content.4. Usage Scenario.5. Implementation.

5. Conclusion.6. Q&A.

2

Page 3: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

1- Introduction:Current internet uses the Client/Server and the Peer to Peer

delivery model.

Number of users grows along with their needs and demands.

Wide variety of contents ranging from web pages and emails to online videos and large file transfer.

Content Delivery Networks (CDN) were created to provide fast access and high availability.

3

Page 4: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

1- Introduction:Many technologies created or used in CDNs:

Anycast.Load-aware Anycast [2] : which aims to improve the any cast.

Peer to Peer : e.g. BitTorrent.Clustered BitTorrent [3].

4

Page 5: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

2- Motivation:Future internet aims to create new internet architecture for

complex applications.Important to create enabling technologies.

Content anycasting aims to:provide the future internet’s CDN with a smarter, more flexible

anycasting.Fine granularity down to the content level.Operates in a way that violates the current internet layered

design.Efficiently use of the bandwidth in the whole network.

5

Page 6: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

3- Background and Current Solutions:

1. Load-aware Anycast [reference paper number 2].1. Anycast Overview.2. Load-aware Anycast architecture.3. Performance Evaluation.

2. Clustered BitTorrent [ reference paper number 3].1. Peer to Peer Overview.2. Clustered BitTorrent architecture.3. Peer Joining and Super Peer Selection Algorithms.4. Performance Evaluation.

6

Page 7: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

3.1: Load-aware Anycast [2]:

3.1.1: Anycast Overview:Redirecting packets towards the nearest endpoint.

7

Endpoint

A

Endpoint

B-1

Endpoint

B-2

10.10.10.1

10.10.10.1

192.168.0.2

192.168.0.1

Router 1 Router 2

Router 3Router 4

Destination Next-Hop Distance

192.168.0.0 127.0.0.1 010.0.0.1 192.168.0.1 110.0.0.1 192.168.0.2 2 Endpoint

AEndpoint

B-1

10.10.10.1

192.168.0.2

192.168.0.1

Router 1 Router 2

Router 3

Router 4

Destination Next-Hop Distance

192.168.0.0 127.0.0.1 010.0.0.1 192.168.0.1 110.0.0.1 192.168.0.2 2

Drawbacks:Not aware of network or

endpoint loads.Might cause session

disruption.

Page 8: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

3.1: Load-aware Anycast [2]:

3.1.2:Load-aware Anycast architecture:Assuming servers are in single AS with large footprint (tire-1).Rout Controller:

Centralized.Exchanges routs with Provider Edge routers (PE).Receive ingress l

8

Receive ingress load from PEs and server loads.

Aims to:Reduce distanceReact to server

overload.Reduce session

disruption.

Page 9: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

3.1: Load-aware Anycast [2]:

3.1.3: Performance Evaluation :4 different schemes:

SAC: Simple Anycast (native).SLB: Simple Load Balancing.ALB-A: Advanced Load Balancing, AlwaysALB-O: Advanced Load Balancing, On-overload

Figures show number of concurrent connections to each server.

9

(a) SAC

(b) ALB-A(c) ALB-O

Page 10: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

3.1: Load-aware Anycast [2]:

3.1.3: Performance Evaluation :

Fig 1. shows the average cost of each scheme.

10

Fig 2. shows the connection disruption:SAC is high due to

overloading some servers.

Page 11: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

3.2: Clustered BitTorrent [3]:

3.2.1: Peer to Peer Overview:Advantages of P2P:

Low cost of HW deployment.Scalable.Due to user contribution.

BitTorrent consists of peers and tracker (tracking server).

Disadvantages of BitTorrent:Randomness in connections : missing a near peer.Tracker bottleneck.

11

Page 12: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

3.2: Clustered BitTorrent [3]:

3.2.2: Clustered BitTorrent architectureGroup peers into clusters according to proximity, to solve the

randomness and improve performance.Super peer, one in each cluster acts as a local tracker for its

cluster, to solve the tracker overloading.

12

A new peer will :get list of super

peers form tracker upon request.

And perform a peer joining algorithm to find which cluster to join.

Page 13: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

3.2: Clustered BitTorrent[3]: 3.2.3: Peer Joining and Super Peer Selection Algorithms

Proximity is measured by distance: distance is measured by RTT (Round Trip Time) and TTL (Time To

Live)(hop count) measured by traceroute measurement.Peer Joining:

Done by new peers to find nearest cluster to join.After getting list of super peers from tracker, probe all of them,

and join the nearest.Super peer selection:

Chosen form list of seeds willing to be super seed in a new cluster.

Finding the farthest seed in the list of candidate seeds.

13

Page 14: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

3.2: Clustered BitTorrent [3]:

3.2.4: Performance Evaluation:Average completion time for a file

download is shown in the figure:30% reduction in 100 peer.35% reduction in 1500 peer.

14

Page 15: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

4- Content anycasting :

4.1: OpenFlow Overview[1]:Separates routing decision making (in controller) and the

forwarding (in the switch or router).

Matching in the switch or router is done according to Layer 2, 3 and VLAN headers.

Figure 1: OpenFlow switch (ref: Nick McKeown et al, “OpenFlow: enabling innovation in campus networks”)

15

Page 16: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

4- Content anycasting :

4.1: OpenFlow Overview [1]:OpenFlow relies on the Flow-table, which is contains:

Header fields are the ones the incoming packet is matched against:

The actions can be : forwarding the packet to physical port, enqueue the packet in a physical port’s queue, dropping the packet or modifying incoming packet’s header fields

Figure 2

Figure 1

16

Page 17: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

4- Content anycasting :

4.2: System Overview:Content Server:

supports content id.send redirection request to the anycast manager.Support the modified content request to serve contents to clients.

Anycast Manager: Manage and organize redirection requests between multiple anycast

managers. Creating redirections and sending them to the OpenFlow switches or

routers.Conte

nt Server

client

client

Anycast Manager

Anycast Manager

Autonomous System 1Autonomous System 2

17

Page 18: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

4- Content anycasting :

4.2: System Overview:OpenFlow router or switch:

caries out the redirection created by the anycast manager.Match incoming packets for content id and server IP address.If match change the destination IP to be that of other client.

User Client: contribute by providing content to other user clients.support the modified content request.

Content

Server

client

client

Anycast Manager

Anycast Manager

Autonomous System 1Autonomous System 2

18

Page 19: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

4- Content anycasting :

Anycast Manager:Functionality:

Receive the redirection request form the content server.

If the redirections are in the same AS make redirections and send them to the OpenFlow routers or switches.

And if in different AS send the redirection request to the appropriate anycast manager.

Receive redirection

request

Lookup AS numbers for each current user client’s IP address in the

redirection request

Generate copies of the redirection request each

designated for one AS

Is the copy for this AS

Create redirections

and send them

Send it to the anycast manager of the AS to which

this copy is designated to

NoYes

19

Page 20: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

4- Content anycasting :

4.3: Requesting Content:Two phases:Phase 1:

Client browses to find desired content.Client sends the request (e.g. HTTP GET)Server responds with content ID, to be sued in phase 2 to get the

file.

Phase 2:Uses 3 way handshake.Requires modification to the TCP.

20

Page 21: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

4- Content anycasting :

4.3: Requesting Content:Phase 2: TCP headers modifications:

Adding the content id: will be used to redirect the packet by the OpenFlow router or switch.

Upload capabilities: used by the redirection system to make the number of redirections according to it.

IP address: to tell the other part of the self IP address.Bit offset 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

0

32

64

96

128

160

192

224

256

Content id

Checksum Urgent Pointer

Options

Source Port Destination Port

Sequence Number

Acknowledgement Number

Data Offset

Reserved Flags Window Size

IP address

Upload capabilites

21

Page 22: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

4- Content anycasting :

4.3: Requesting Content:Phase 2: 3 way handshake:

Start with SYN packet that is sent to the server.

Using OpenFlow and the content id packet will be redirected to an other client (Current Client).

Current client acknowledge to the SYN with its IP in packet.

New client starts to use the Current client’s IP address in the session.

New ClientOpenFlo

wrouter

Current ClientDestination: serverIP :SYN Destination:

CurrentClientIP :SYN

SYN/ACKWith CurrentClientIP

Destination: CurrentClientIP :SYN

22

Page 23: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

4- Content anycasting :

4.4: Usage Scenario:

Content Server

Client A

anycast Manager

Client B

1

23

10.10.10.1

192.168.10.1192.168.20.1

if Destination IP: 10.10.10.1 & Content id: 12345Change : Destination IP: 192.168.10.1

23

Page 24: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

4- Content anycasting :

4.4: Usage Scenario:This figure shows the initiation of the redirection :Step 1: the server sends the redirection request, which includes

the contents ids and the IP addresses of the clients downloading those files along with their uploading capabilities.

Step 2: the anycast manager makes the OpenFlow redirections and sends them to the OpenFlow switch or router.

Step 3: OpenFlow switch or router stores the redirections.

24

Page 25: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

4- Content anycasting :

4.4: Usage Scenario:This figure shows the

first phase of the content request.

Step 1: client B requests the content id.

Step 2: server sends the content id to the client B.

Content Server

Client A

anycast Manager

Client B

1

2

10.10.10.1

192.168.20.1192.168.10.1

Content id: 12345

25

Page 26: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

4- Content anycasting :

4.4: Usage Scenario:

Content

Server

Client A

anycast Manager

Client B

1

2

3

Destination IP: 192.168.10.1Content id: 12345

10.10.10.1

192.168.10.1192.168.20.1

Destination IP: 10.10.10.1Content id: 12345

26

Page 27: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

4- Content anycasting :

4.4: Usage Scenario:This figure shows the second phase of requesting content:Step 1:

sending the first packet in the hand shake.Contains the content id.

Step 2:Redirected by the OpenFlow using the content id and

destination IP.

Step 3:Client A acknowledge to the packet sent in step 1.File transfer starts between client A and client B.

27

Page 28: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

4- Content anycasting :

4.5: Implementation:Currently we are building redirection system, modified

content server, modified clients and using the reference OpenFlow implementation.

First, Redirection system with one anycast manager.Second, duplicate redirection systems each with its own

anycast manager.Aiming to measure: communication cost, response time,

efficiency in different load patterns and others.And comparing those values to other solutions like the

anycast and peer to peer.

28

Page 29: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

5- Conclusion:Our design makes use of OpenFlow to perform the redirection

of packets along with using content id in addition to the destination IP to make the redirection decision.

And to enable that we designed a two phase content request, for getting the content id and using it.

The goal is provide the future internet’s CDNs with a smarter, more flexible anycasting which has a finer granularity that goes down to the content level rather than the server level in a way that violates the current internet’s layered design.

29

Page 30: 1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M

9- Q&A:Thank you for listening.

30