Aggressiveness Protective Fair Queuing for Bursty Applications

Post on 16-Jan-2016

42 views 2 download

Tags:

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

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)

APFQ - Nir Halachmi (IDC)

Background: Network planning

Link Capacity

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

APFQ - Nir Halachmi (IDC)

Background: Exploiters

Link Capacity

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

Drop

Exploiter

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

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.

APFQ - Nir Halachmi (IDC)

Bursty Application

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

on off

Time

on off

APFQ - Nir Halachmi (IDC)

Bursty Traffic

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

Link Capacity

Drop

Drop

APFQ - Nir Halachmi (IDC)

Aggressive Users

• Aggressive user use the idle time to get more BW

Link Capacity

Drop

Drop

APFQ - Nir Halachmi (IDC)

WFQ defensives

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

Link Capacity

Drop

Drop

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

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.

APFQ - Nir Halachmi (IDC)

Agenda

• Related Work.

• Solution Requirements.

• APFQ algorithm.

• APFQ analysis

• Simulation.

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

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

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.

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

APFQ - Nir Halachmi (IDC)

APFQ Illustrated• Polite user transmit data:

• Aggressive User Transmitted data under WFQ

Time

• Aggressive User Transmitted data under APFQ

APFQ - Nir Halachmi (IDC)

APFQ algorithm

Weight

71

W(0)

Time

Time

KBytes

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

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

APFQ - Nir Halachmi (IDC)

• Offered Data

•Total offered Data

• Transmitted Data WFQ

Naive Aggressive User

R

BSfR

N

BD

WFQ

naive

)(tR

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

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 )(

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

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.

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

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

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

APFQ - Nir Halachmi (IDC)

Optimal Strategy for sophisticated aggressive

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

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.

APFQ - Nir Halachmi (IDC)

Tests Set-upWorkstation 1

Workstation 2

Workstation 3

Workstation N

Server

Router

.

.

.

.

200Kb

200Kb

200Kb

200Kb

Link Capacity

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.

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

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.

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.

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

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).

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.

APFQ - Nir Halachmi (IDC)

Questions?

Thank You

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

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

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

APFQ - Nir Halachmi (IDC)

Sketch of proof

1

11 w

2

12 w

3

13 w

iwi

1