+ All Categories
Home > Documents > Web Server Distributor1 Lecturer: Dr. Reuven Cohen Lab Engineer: Eng. Itai Dabran Project...

Web Server Distributor1 Lecturer: Dr. Reuven Cohen Lab Engineer: Eng. Itai Dabran Project...

Date post: 17-Dec-2015
Category:
Upload: gwendolyn-shelton
View: 215 times
Download: 2 times
Share this document with a friend
Popular Tags:
24
Web Server Distributor 1 Lecturer: Dr. Reuven Cohen Lab Engineer: Eng. Itai Dabran Project Supervisor: Daniel Segal Authors: Rony Fuks Yossi Peery Gil Sasson Fall 2000/1 Computer Science Department Technion- Israel Institute of Technology The Laboratory of Computer Communications and Networking
Transcript

Web Server Distributor 1

Lecturer: Dr. Reuven CohenLab Engineer: Eng. Itai DabranProject Supervisor: Daniel Segal 

Authors:  Rony Fuks   Yossi Peery  Gil Sasson Fall 2000/1

   Computer Science Department

Technion- Israel Institute of Technology

The Laboratory of Computer Communications and Networking

Web Server Distributor 2

Motivations High PerformancesHigh Performances E-Commerce, B2B, B2C, DotComE-Commerce, B2B, B2C, DotCom Hardware Technology Vs. Internet GrowthHardware Technology Vs. Internet Growth

How to Distribute ? How to Distribute ? Answer ……Answer …… Web Server DistributorWeb Server Distributor

Web Server Distributor 3

Theory

Web Server Distributor 4

Types of Load Balancers

HardwareHardware

NetworkNetwork

SoftwareSoftware

Web Server Distributor 5

Server Monitoring

Internal MonitoringInternal Monitoring

External MonitoringExternal Monitoring

ICMPICMP

TCPTCP

HTTPHTTP

Web Server Distributor 6

Server Selection

Round RobinRound Robin

Response Time Based DecisionResponse Time Based Decision

Sophisticated AlgorithmsSophisticated Algorithms

Web Server Distributor 7

Our Project

Web Server Distributor 8

Load Balancer

File Table

WS Table

Decision

Algorithms

Updates

Sampler

.

.

.

WS 1

HTTP

Client

WS n

HTTP

Client

GET =>

<=

REPLY

GET =>

<=

REPLY

Redirector

Worker ThreadWorker Thread

Worker Thread

Completion

Port Loop

OP

ACCEPT

OP

RECV

new HTTP

connects

HTTP

redirect

URI =>

<=Server IP

GUI

Our Project

Web Server Distributor 9

Our Project Redirector

Simple HTTP serverSimple HTTP server Using IO completion portsUsing IO completion ports Multi ThreadedMulti Threaded

Web Server Distributor 10

Our Project GUI

Web Server Distributor 11

Our Project GUI

MFC GUIMFC GUI Communication with the load Communication with the load

balancer and the redirector balancer and the redirector through message tunneling through message tunneling

Web Server Distributor 12

Our Project Sampler

AlgorithmAlgorithm Sampling algorithmSampling algorithm

Completed transactionCompleted transactionIncomplete transactionIncomplete transactionNo ResponseNo Response

Web Server Distributor 13

Our Project Sampler

Code StructureCode Structure Thread Creation/DestructionThread Creation/Destruction HTTP “GET” requestHTTP “GET” request Time measurementTime measurement Sampling RatioSampling Ratio Updating InterfaceUpdating Interface

Web Server Distributor 14

Our ProjectLoad Balancer

File TableFile Table Sampling ListSampling List Web Server TableWeb Server Table Decision AlgorithmDecision Algorithm

Web Server Distributor 15

Our ProjectLoad BalancerFile Table

Input Input ini fileini file

1.1. URIURI

2.2. File SizeFile Size

3.3. Server LocationServer Location

Output Output Hash Table Hash Table

Web Server Distributor 16

Our ProjectLoad BalancerSampling List

How to check WS ?How to check WS ? Same File on Each WSSame File on Each WS Go over hash tableGo over hash table Find all files that exist on all WS Find all files that exist on all WS

Web Server Distributor 17

Our ProjectLoad BalancerWeb Server Table

WS IIP No. Get

Resp. Time

Rank Avg. Rank

Weighted Rank

No. Time Out

Cont. Time Out

B. Sent[1]

B. Sent[2]

B. Sent[3]

B. Sent[4]

Max Capac

ity

0 132.68.37.60 57 20 1 1.25 1.25 0 0 2000 1000 2541 455 30000

1 132.68.37.61 57 30 2 2.645 2.645 0 0 1254 321 2145 1455 50000

2 132.68.37.62 57 26 1 3.25 8.54 2 0 6544 8745 9574 4576 80000

3 132.68.37.63 57 Inf. Inf. 4.47 Inf. 1 0 1598 4125 2255 2145 21000

4 132.68.37.64 57 22 1 1.55 5.68 4 0 1254 6987 1200 147 15000

5 132.68.37.65 57 Inf. Inf. 1.34 Inf. 3 3 2365 1547 520 254 12000

6 132.68.37.66 57 40 3 1.24 8.97 5 0 1025 1225 10 0 14000

Web Server Distributor 18

Our ProjectLoad BalancerWeb Server Table

Ranking ProcessRanking Process Results from Sampler (wait till time out)Results from Sampler (wait till time out)

What if we didn’t receive all the file ? What if we didn’t receive all the file ? Find lowest response timeFind lowest response time Find range (lowestXfactor)Find range (lowestXfactor) Find next range (etc`)Find next range (etc`)

WS IIP Resp. Time

Rank

0 132.68.37.60 20 1

1 132.68.37.61 30 2

2 132.68.37.62 26 1

3 132.68.37.63 Inf. Inf.

4 132.68.37.64 22 1

5 132.68.37.65 Inf. Inf.

6 132.68.37.66 40 3

Web Server Distributor 19

Our ProjectLoad BalancerWeb Server Table

WS IIP Resp. Time

Rank No. Time Out

Cont. Time Out

0 132.68.37.60 20 1 0 0

1 132.68.37.61 30 2 0 0

2 132.68.37.62 26 1 2 0

3 132.68.37.63 Inf. Inf. 1 0

4 132.68.37.64 22 1 4 0

5 132.68.37.65 Inf. Inf. 3 3

6 132.68.37.66 40 3 5 0

Time OutsTime Outs No. of time outsNo. of time outs Cont. Time outsCont. Time outs

Web Server Distributor 20

Our ProjectLoad BalancerWeb Server Table

Bytes Sent CalculationBytes Sent Calculation Dividing the bytes sent by periodsDividing the bytes sent by periods

WS IIP B. Sent[1]

B. Sent[2]

B. Sent[3]

B. Sent[4]

Max Capac

ity

0 132.68.37.60 2000 1000 2541 455 30000

1 132.68.37.61 1254 321 2145 1455 50000

2 132.68.37.62 6544 8745 9574 4576 80000

3 132.68.37.63 1598 4125 2255 2145 21000

4 132.68.37.64 1254 6987 1200 147 15000

5 132.68.37.65 2365 1547 520 254 12000

6 132.68.37.66 1025 1225 10 0 14000

Web Server Distributor 21

Our ProjectLoad BalancerWeb Server Table

Dividing the bytes sent by periodsDividing the bytes sent by periods• What is the logic behindWhat is the logic behind• Calculations of Clients Distributions TimesCalculations of Clients Distributions Times

Time Line0-150 -100 -50

Web Server Distributor 22

Our ProjectLoad BalancerWeb Server Table

Weighted Rank CalculationsWeighted Rank CalculationsWeighted Rank = Weighted Rank = (F1 X Rank +(F1 X Rank + F2 X Average Rank +F2 X Average Rank + F3 X No. Time Out +F3 X No. Time Out + F4 X Cont. Time Out ) +F4 X Cont. Time Out ) +

(B1 X B.Sent[1]/Max Capacity +(B1 X B.Sent[1]/Max Capacity + B2 X B.Sent[2]/Max Capacity +B2 X B.Sent[2]/Max Capacity + B3 X B.Sent[3]/Max Capacity +B3 X B.Sent[3]/Max Capacity + B4 X B.Sent[4]/Max Capacity )B4 X B.Sent[4]/Max Capacity )

Web Server Distributor 23

Our ProjectLoad Balancer Decision Algorithm

Best Server FunctionBest Server FunctionFind lowest weighted rankFind lowest weighted rankUpdate weighted rank/Bytes sentUpdate weighted rank/Bytes sent

If lowest weighted rank = If lowest weighted rank = If Continuous Time Out If Continuous Time Out MaxContTimeOut MaxContTimeOut

Return NullReturn Null

If Continuous Time Out If Continuous Time Out << MaxContTimeOut MaxContTimeOutReturn Redirector IPReturn Redirector IP

Web Server Distributor 24

Our Project

FINFIN


Recommended