aggressiveness protective fair queuing for bursty applications

44
APFQ - Nir Halachmi (IDC) Aggressiveness Protective Fair Queuing for Bursty Applications Nir Halachmi (IDC) Joint work with Dr. Anat Bremler Barr (IDC) and Prof. Hanoch Levy (TAU)

Upload: tahlia

Post on 16-Jan-2016

45 views

Category:

Documents


2 download

DESCRIPTION

Aggressiveness Protective Fair Queuing for Bursty Applications. Nir Halachmi (IDC) Joint work with Dr. Anat Bremler Barr (IDC) and Prof. Hanoch Levy (TAU). Background: Network planning. Network Designers use the traffic properties to plan the capacity of the network. Link Capacity. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Aggressiveness Protective Fair Queuing for Bursty Applications

Nir Halachmi (IDC)

Joint work with

Dr. Anat Bremler Barr (IDC) and Prof. Hanoch Levy (TAU)

Page 2: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Background: Network planning

Link Capacity

• Network Designers use the traffic properties to plan the capacity of the network.

Page 3: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Background: Exploiters

Link Capacity

• Exploiters– Malicious: Denial of Service (DDOS)– Innocent: pre-fetching, massive users

Drop

Exploiter

Page 4: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Background: Solution- Fair Scheduling protection against Exploiters

Link Capacity

• Weighted Fair Queuing (WFQ) mechanisms provides that the resource is fairly (typically equally) divided among all

Drop

Exploiter

Drop

1

1

Page 5: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Our main contribution

• The user traffic is bursty. • WFQ cannot provide fair service to bursty

applications in the presence of aggressive users

• We propose WFQ-like mechanism called Aggressiveness Protective Fair Queuing (APFQ) that solves this problem.

Page 6: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Bursty Application

• Many application are bursty (model on/off ~ active/idle)– Http

on off

Time

on off

Page 7: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Bursty Traffic

• Network Designers use the traffic burstiness property to plan the capacity of the network.

Link Capacity

Drop

Drop

Page 8: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Aggressive Users

• Aggressive user use the idle time to get more BW

Link Capacity

Drop

Drop

Page 9: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

WFQ defensives

• WFQ cannot provide good fairness in the presence of such aggressive users.

Link Capacity

Drop

Drop

Page 10: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

The effect of aggressive user on polite users (WFQ)

0.0%

10.0%

20.0%

30.0%

40.0%

50.0%

60.0%

70.0%

80.0%

90.0%

100.0%

Link Capacity (Kb/s)

Perc

en

tag

e o

f P

ackets

tra

nsm

itte

d (

%)

All Polite - Polite traffic avarege

Mixed users - Polite traffic avarege

Mixed users - Aggressive trafficavarege

Page 11: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Aggressiveness Protective Fair Queuing (APFQ)

We propose a new WFQ-like mechanism called Aggressiveness Protective Fair Queuing (APFQ) that solves this problem by dynamically decreasing the weight of the aggressive users.

Page 12: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Agenda

• Related Work.

• Solution Requirements.

• APFQ algorithm.

• APFQ analysis

• Simulation.

Page 13: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Related Work• Dynamic WFQ was proposed to handle the fact that

it is hard to assign static weight accurately [Shin and el.

2001][Makrakis and el. 2001]. – Fix the weight according to arrival rate or the queue

length.

– Does not address bursty traffic problem.

• Dynamic WFQ was proposed as part of a mechanism to handle DDOS [Thomas and el. 2003]

– Penalty mechanism to flows

– Does not deal with traffic burstiness and does not suggest or analyze the weight function mechanism

Page 14: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Solution Requirements

• Provide fairness to polite users.

• The limitation imposed on the users is a function of the system load.– Protect innocent users by negatively discriminating

aggressive users on an overloaded Network.

Link Capacity

Drop

Drop

Page 15: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

APFQ

• Dynamic weight function that reduces the weight assigned to aggressive users

• For every flow (user) the mechanism counts the amount of traffic that a source has generated in the near history

• It uses this amount to affect the weight given to the user.

Page 16: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Weight function

• BS – the assigned quota.• SM(t) – offered traffic during the last sliding.

window in time t.

• wo original fix weight.• α – punishment factor – configure by the system.

BStSM

BStSM

tSM

BSw

wtw

)(

)()

)(()(

0

0

Page 17: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

APFQ Illustrated• Polite user transmit data:

• Aggressive User Transmitted data under WFQ

Time

• Aggressive User Transmitted data under APFQ

Page 18: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

APFQ algorithm

Weight

71

W(0)

Time

Time

KBytes

Page 19: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Analysis pre conditions

• Polite user transmits at rate R for Ton and idle for Toff. • Aggressive user transmits at constant peak rate R.• N concurrently active users.• K aggressive users , N-K polite users.• For each user original fix weight wo = 1• Packets that are not transmitted within a period of ∆ from

their arrival time are dropped.• B is the output link capacity. • ∆ = Ton + Toff = sliding window size.• ƒ = burst factor =

TonTon

ToffTon

Page 20: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

• Offered Data

• Transmitted Data WFQ

• Transmitted Data APFQ

Polite User

onWFQ

politeT

N

BD

onAPFQpoliteon T

KN

BDT

N

B

on

on

Tt

TtR

0)(tR

Page 21: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

• Offered Data

•Total offered Data

• Transmitted Data WFQ

Naive Aggressive User

R

BSfR

N

BD

WFQ

naive

)(tR

Page 22: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

•Transmitted Data APFQ

• For α =1

• For α=2

Naive Aggressive User

dtTT

N

BTon

ononAPFQ

naive

tD

1

Dt

APFQ

naiveTonon

ondtTT

KN

B

1

N

BfTD

APFQ

naive )log1(on

N

B

f

fTD

APFQ

naive

)

11(on

Page 23: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Continuous Naive Aggressive • Continuous Naive Aggressive - an aggressive user that was active in the previous window size.

• I.e., offered traffic during the last sliding

• Hence the assigned weight is fixed

fR

BStw

1)(

RtSM )(

Page 24: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Continuous Naive Aggressive

onAPFQ

naivecontT

KN

BfD

1 1

onAPFQ

naivecontT

N

BfD

1 1

•Transmitted Data APFQ

•For α =1 Exactly as polite use under APFQ

• For α=2 Exactly as polite use under APFQf

1

Page 25: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Sophisticated Aggressive

• Sophisticated Aggressive user is assumed to know the function used by APFQ and optimizes its offered traffic in order to maximize the traffic APFQ will transmit for him.

• An approach for the sophisticated aggressive user is to offer the same amount of traffic as the mechanism allow her to transmit.

•Sophisticated Aggressive user is assumed to know the function used by APFQ and optimizes its offered traffic in order to maximize the traffic APFQ will transmit for him.

Page 26: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Sophisticated User Upper Bound

• Lemma: Under APFQ a sophisticated aggressive user cannot transmit in a period of duration ∆ more than (m+2)·BS traffic where m is derived from equation

BSfDAPFQ

tedsophistica 212

1

BSfDAPFQ

tedsophistica 2133

2

11

f

m

i i

Page 27: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Sketch of proof

1

11 w

2

12 w

3

13 w

iwi

1

BSRi

tt ii

1

1

onii

Titt

1

on

m

ion TTi1

Page 28: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Sophisticated User Lower Bound

• Lemma: There is a strategy where the sophisticated aggressive user can transmit during an interval of length ∆ under APFQ with α at least (m+1)·BS traffic where m is derived from equation

.1

BSfDAPFQ

tedsophistica 112

2

BSfDAPFQ

tedsophistica 1133

111

fi

m

i

Page 29: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Optimal Strategy for sophisticated aggressive

Page 30: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Analysis Summery

User TypeWFQ transmitted traffic

APFQ transmitted traffic (α=1)

APFQ transmitted traffic (α=2)

Polite user111

Naïve aggressive userƒ1 + log ƒ2

Continuous naïve aggressive user

ƒ1

Sophisticated userƒ

f

1

212 f 2)1(33 f

Page 31: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Simulation

• Simulated APFQ on NS2

• NS2 code implementing WFQ contributed by Paulo Losi

• APFQ was implemented as a software wrapper around WFQ.

Page 32: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Tests Set-upWorkstation 1

Workstation 2

Workstation 3

Workstation N

Server

Router

.

.

.

.

200Kb

200Kb

200Kb

200Kb

Link Capacity

Page 33: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Experiment 1

• Examine the percentage of packets transmitted per flow as a function of the link capacity.

• Scenario 1: 12 polite users

• Scenario 2: 10 polite users and 2 aggressive users.

Page 34: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Experiment 1 Results

0.0%

10.0%

20.0%

30.0%

40.0%

50.0%

60.0%

70.0%

80.0%

90.0%

100.0%

Link Capacity (Kb/s)

Perc

en

tag

e o

f P

ackets

tra

nsm

itte

d (

%)

All polite- WFQ Polite traffic avarege

Mixed users - WFQ Polite trafficavaregeMixed users- WFQ Aggressive trafficavaregeMixed users- APFQ Polite trafficavaregeMixed users- APFQ Aggressive trafficavarege

Page 35: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Experiment 2

• Examine how many aggressive users a given network can handle without negatively affecting the polite users.

• Test APFQ robustness to large networks.

Page 36: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Experiment 2

• 300 users with a variable number of aggressive users out of them.

• The number of aggressive users was increased in each round.

• The Link-capacity was set to 9000Kb/sec.

Page 37: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

0.0%

10.0%

20.0%

30.0%

40.0%

50.0%

60.0%

70.0%

80.0%

90.0%

100.0%

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49

Number Of Aggressive Users

Pre

cen

tag

e o

f P

acke

ts t

ran

smit

ted

(%)

WFQ Polite traffic avarege

WFQ Aggressive traffic avarege

APFQ polite traffic avarege

APFQ Aggressive trafficavarege

Experiment 2 Results

Page 38: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Implementation consideration

• APFQ can use a regular WFQ.

• Experiments revealed that Dynamic WFQ, in some scenarios, can causes disorder.

• The cause of the problem is that the WFQ implementation implicitly assumed the weight of the queues is constant (i.e. static weight).

Page 39: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Conclusion

• Aggressive users use the idle time to get more bandwidth.

• WFQ has a fairness problems in the presence of aggressive users.

• APFQ is a mechanism that provide fairness in such cases, using a dynamic weight function.

Page 40: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Questions?

Thank You

Page 41: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Problem demonstration

1

0.25P4F=4

P3F=3

Time

P6F=9

8 7 6 5 4 3 2

1

1P3F=3

P2F=2

Time

P4F=4

6 6 5 4 3 2 1

1

1P2F=2

P1F=1

Time

P3F=3

6 5 4 3 2 1 0

P4F=4

P5F=5

P5F=5

P1F=1

P1F=1

P2F=2

V_t =0

V_t =1

V_t =2

Page 42: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Problem demonstration

1

0.25

p6F=9

Time

P8F=13

8 7 6 5 4 3 2

P7F=6

P1F=1

P2F=2

P3F=3

P5F=5

P4F=4

1

0.25

p6F=9

Time

P8F=13

8 7 6 5 4 3 2

P7F=6

P1F=1

P2F=2

P3F=3

P5F=5

P4F=4

1

0.25p6F=9

Time

P8F=13

8 7 6 5 4 3 2

P7F=6

P1F=1

P2F=2

P3F=3

P5F=5

P4F=4

V_t =9.2

V_t =10

V_t =8.4

Page 43: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

1

0.25p6

F=9

Time

P8F=13

8 7 6 5 4 3 2

P5F=5

P1F=1

P2F=2

P3F=3

1

0.25p6

F=9

Time

P8F=13

8 7 6 5 4 3 2

P7F=6 P1

F=1P2

F=2P3

F=3

P4F=4

P4F=4

P5F=5

The new flow packet should have been transmitted by now

1

0.25p6F=9

Time

P8F=13

P7F=6

P5F=5

P1F=1

P2F=2

P3F=3

P4F=4

The new flow arrive and it’s finish time is set by the virtual time and not by the real round time (it finish time should have been 3)

V_t =7.6

V_t =6.8

V_t =6

Problem demonstration

P7F=6

Page 44: Aggressiveness Protective Fair Queuing for Bursty Applications

APFQ - Nir Halachmi (IDC)

Sketch of proof

1

11 w

2

12 w

3

13 w

iwi

1