1 routing and scheduling in web server clusters. 2 reference the state of the art in locally...

31
1 Routing and Scheduling in Web Server Clusters

Upload: clare-mccormick

Post on 18-Dec-2015

219 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

1

Routing and Scheduling in Web Server Clusters

Page 2: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

2

Reference

The State of the Art in Locally Distributed Web-server Systems

Valeria Cardellini, Emiliano Casalicchio, Michele Colajanni and Philip S. Yu

Page 3: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

3

Objectives Routing in Distributed Web-based Servers

DNS-based routing mechanisms Web server routing mechanisms

Dispatching Algorithms Content-blind algorithms

Static Client aware Server aware Client and Server aware

Content-aware algorithms Client aware Client and Server aware

Page 4: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

4

Routing in Distributed Web-based Servers DNS-based routing mechanisms

Handles multiple web servers hosting a Web site The idea is conceived for locally distributed web

servers but it is also applicable for geographically distributed web servers

Web server routing mechanisms Routing mechanisms are implemented by the web

server Web servers can (re)direct a client request to

another node

Page 5: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

5

DNS-based routing

DNS-based routing intervenes at lookup phase

The authoritative DNS (A-DNS) server can select a different server for every address resolution

The A-DNS replies with (IP address, TTL)

Page 6: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

6

Web server routing

Triangulation HTTP redirection URL rewriting

Page 7: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

7

Web server routing: Triangulation The client sends packets to the first

contacted server The first node routes packets to a second

server Routing is done at the TCP/IP level

Triangulation is based on tunneling!

Page 8: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

8

Web server routing: HTTP redirection

HTTP protocol allows a Web server to respond to a client request with some redirection status code HTTP has a built-in redirection mechanism

HTTP redirection is good for Medium granularity down to individual Web pages Allowing content-aware routing

Drawbacks Extra round-trip time

Page 9: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

9

Web server routing: HTTP redirection

Page 10: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

10

Web server routing: HTTP rewriting

The first contacted server dynamically changes the links for the embedded objects within the Web page

This approach is used by Akamai This approach introduces additional load on

the redirecting Web server It also cause a considerable DNS overhead

Page 11: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

11

Dispatching AlgorithmsStrategies to select the target server of the web

clusters Static: Fastest solution to prevent web switch bottleneck,

but do not consider the current state of the servers Dynamic: Outperform static algorithms by using

intelligent decisions, but collecting state information and analyzing them cause expensive overheads

Requirements: (1) Low computational complexity (2) Full compatibility with web standards (3) state information must be readily available without much overhead

Page 12: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

12

Content blind approach Static Policies: Random distributes the incoming requests uniformly with equal

probability of reaching any server

Round Robin (RR) use a circular list and a pointer to the last selected server

to make the decision

Static Weighted RR (For heterogeneous severs) A variation of RR, where each server is assigned a weight

Wi depending on its capacity

Page 13: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

13

Content blind approach (Cont.) Dynamic Client state aware static partitioning the server nodes and to assign group

of clients identified through the clients information, such as source IP address

Server State Aware Least Loaded, the server with the lowest load.

Issue: Which is the server load index? Least Connection

fewest active connection first

Page 14: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

14

Content blind approach (Cont.) Server State Aware Contd.

Fastest Response responding fastest

Weighted Round RobinVariation of static RR, associates each server with a dynamically

evaluated weight that is proportional to the server load

Client and server state aware

Client affinity

instead of assigning each new connection to a server only on the basis of the server state regardless of any past assignment, consecutive connections from the same client can be assigned to the same server

Page 15: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

15

Considerations of content blind Static approach is the fastest, easy to

implement, but may make poor assignment decision

Dynamic approach has the potential to make better decisions, but it needs to collect and analyze state information, may cause high overhead

Overall, simple server state aware algorithm is the best choice, least loaded algorithm is commonly used in commercial products

Page 16: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

16

Page 17: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

17

Content aware approach

Client state aware Cache Affinity

The file space is partitioned among the server nodes.

Load Sharing . SITEA (Size Interval Task Assignment with Equal Load)

The web switch determines the size of the requested file and select the target server based on this information

. CAP (Client-Aware Policy)

The web switch requests are classified based on their impact on system resources: such as I/O bound, CPU bound

Page 18: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

18

Content aware approach (Cont.) Client state aware (Cont.) Service Partitioning

Employs specialized servers for certain type of requests

Client Affinity Using session identifier to assign all web transactions from

the same client to the same server

Page 19: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

19

Content aware approach (Cont.) Client and server state aware LARD (Locality aware request distribution)

Direct all requests of the same web object to the same server node as long as its utilization is below a given threshold.

Cache Manager A cache manager that is aware of the cache content of all

web servers.

Page 20: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

20

Page 21: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

21

Fair Scheduling in Web Servers

Page 22: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

22

Objectives

Create an arbitrary number of service quality classes and assign a priority weight for each class.

Provide service differentiation for different use classes in terms of the allocation of CPU and disk I/O capacities

Page 23: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

23

Page 24: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

24

Page 25: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

25

Page 26: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

26

Page 27: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

27

Page 28: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

28

Page 29: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

29

Page 30: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

30

Fair Scheduling in a Web Cluster: Objective

Provide service differentiation (or QoS guarantee) for different user classes in terms of the allocation of CPU and disk I/O capacities => Scheduling

Balance the Load among various nodes in the cluster to ensure maximum utilization and minimum execution time => Load Balancing

Page 31: 1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano

31

Request Scheduling

Two decisions: Which request should be serviced next

(Scheduling) according to each subscriber’s static resource

reservation and dynamic resource usage

Which RPN should service this request (Load Balancing)

according to the load information on each RPN (Least Load First) and also exploit access locality