26
ICN01 Colmar, France Jul y 10, 2001 1 A Performance Study of A Performance Study of Explicit Congestion Explicit Congestion Notification (ECN) with Notification (ECN) with Heterogeneous TCP Flows Heterogeneous TCP Flows Robert Kinicki and Zici Zheng Robert Kinicki and Zici Zheng Worcester Polytechnic Worcester Polytechnic Institute Institute Computer Science Department Computer Science Department Worcester, MA 01609 Worcester, MA 01609 USA USA

ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 1

A Performance Study of Explicit A Performance Study of Explicit Congestion Notification (ECN) with Congestion Notification (ECN) with

Heterogeneous TCP FlowsHeterogeneous TCP Flows

Robert Kinicki and Zici ZhengRobert Kinicki and Zici Zheng

Worcester Polytechnic InstituteWorcester Polytechnic Institute

Computer Science DepartmentComputer Science Department

Worcester, MA 01609Worcester, MA 01609

USAUSA

Page 2: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 2

OutlineOutline

• Motivation for Studying ECNMotivation for Studying ECN

• Performance MetricsPerformance Metrics

• Random Early Detection (RED) and ECN Random Early Detection (RED) and ECN Routers Routers

• Simulation Topology and Experimental Simulation Topology and Experimental ProceduresProcedures

• Results and AnalysisResults and Analysis

• ConclusionsConclusions

Page 3: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 3

Motivation for Studying ECNMotivation for Studying ECN

• Congestion is still an Internet problem.Congestion is still an Internet problem.

• Researchers advocate Active Queue Researchers advocate Active Queue Management (AQM) techniques such as Management (AQM) techniques such as RED and ECN for congestion control.RED and ECN for congestion control.

• RED has been shown to be difficult to tune.RED has been shown to be difficult to tune.

• RED can be unfair to heterogeneous flows.RED can be unfair to heterogeneous flows.

Page 4: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 4

Motivation for Studying ECNMotivation for Studying ECN• Researchers believe ECN is better after a Researchers believe ECN is better after a

few RED versus ECN comparison studies.few RED versus ECN comparison studies.

• The differences between RED and ECN The differences between RED and ECN behavior is not well understood.behavior is not well understood.

• Is ECN also unfair to heterogeneous flows?Is ECN also unfair to heterogeneous flows?

• What happens when there are many flows?What happens when there are many flows?

• Can ECN be adapted to perform better?Can ECN be adapted to perform better?

Page 5: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 5

Performance MetricsPerformance Metrics

• throughput (Mbps) - the aggregate rate of throughput (Mbps) - the aggregate rate of packets generated by all sources.packets generated by all sources.

• goodput (Mbps) - the rate at which packets goodput (Mbps) - the rate at which packets arrive at the receiver. arrive at the receiver. Goodput differs from Goodput differs from throughput in that retransmissions are throughput in that retransmissions are excludedexcluded from goodput. from goodput.

• delay (sec) - the time required to transmit a delay (sec) - the time required to transmit a packet from source node to receiver node.packet from source node to receiver node.

Page 6: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 6

Performance MetricsPerformance Metrics

n

iixn

1

2

2

1

n

iix

• Jain’s fairnessJain’s fairness

– For any given set of user throughputs (For any given set of user throughputs (xx11, x, x22,…x,…xn n ), the fairness ), the fairness index to the set is defined:index to the set is defined:

f(xf(x11, x, x22, …, x, …, xnn)) = =

• max-min fairnessmax-min fairness– A flow rate A flow rate x x is max-min fair if any rate is max-min fair if any rate xx cannot be increased cannot be increased

without decreasing some without decreasing some y y which is smaller than or equal to which is smaller than or equal to xx. To . To satisfy the min-max fairness criteria, the smallest throughput rate satisfy the min-max fairness criteria, the smallest throughput rate must be as large as possible.must be as large as possible.

• ““visual” max-min fairnessvisual” max-min fairness– the visual gap between the smallest and the largest goodputthe visual gap between the smallest and the largest goodput

Page 7: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 7

RED RoutersRED Routers

• Random Early Detection (RED) detects Random Early Detection (RED) detects congestion “early” by maintaining an congestion “early” by maintaining an exponentially-weighted average queue size.exponentially-weighted average queue size.

• RED probabilistically drops packets before RED probabilistically drops packets before the queue overflows to signal congestion to the queue overflows to signal congestion to TCP sources.TCP sources.

• RED attempts to avoid global RED attempts to avoid global synchronization and bursty packet drops.synchronization and bursty packet drops.

Page 8: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 8

ECN RoutersECN Routers• Explicit Congestion Notification (ECN) is a RED Explicit Congestion Notification (ECN) is a RED

extension that marks packets to signal congestion.extension that marks packets to signal congestion.• ECN must be supported by ECN must be supported by bothboth TCP senders and TCP senders and

receivers.receivers.• ECN-compliant TCP senders initiate their ECN-compliant TCP senders initiate their

congestion avoidance algorithm after receiving congestion avoidance algorithm after receiving marked ACK packets from the TCP receiver. marked ACK packets from the TCP receiver.

• Packets from non-ECN flows are treated by the Packets from non-ECN flows are treated by the RED mechanism in the ECN router.RED mechanism in the ECN router.

Page 9: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 9

RED and ECN Router ParametersRED and ECN Router Parameters• avg : avg : average queue sizeaverage queue size

avg = (1-wavg = (1-wqq) * avg + w) * avg + wq q * instantaneous queue size* instantaneous queue size

• wwqq : : weighting factor weighting factor 0.001 <= w0.001 <= wq q <= 0.004<= 0.004

• min_thmin_th : : average queue length threshold for triggering average queue length threshold for triggering probabilistic drops/marksprobabilistic drops/marks..

• max_th : max_th : average queue length threshold for triggering average queue length threshold for triggering forced dropsforced drops

• max_pmax_p : maximum dropping/marking probability : maximum dropping/marking probability pb = max_p * (avg – min_th) / (max_th – min_th)pb = max_p * (avg – min_th) / (max_th – min_th)

pa = pb / (1 – count * pb)pa = pb / (1 – count * pb)

• buffer_size: buffer_size: the size of the router queue in packetsthe size of the router queue in packets

Page 10: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 10

RED/ECN Router MechanismRED/ECN Router Mechanism

1

0

Average Queue Length

Min-threshold Max-threshold

Dropping/Marking Probability

Queue Size

max_p

Page 11: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 11

Simulation Topology and Simulation Topology and Experimental ProceduresExperimental Procedures

• three sets of heterogeneous flowsthree sets of heterogeneous flows– Fragile flows, Robust flows, Average flowsFragile flows, Robust flows, Average flows– flows delineated by distance from congested flows delineated by distance from congested

routerrouter

• two ECN variantstwo ECN variants– ECN: ECN with Drop after ECN: ECN with Drop after max_thmax_th– ECNM: ECN with Mark after ECNM: ECN with Mark after max_thmax_th

Page 12: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 12

Simulation TopologySimulation Topology

10mbps, 5ms

5ms45ms

: Source

: Sink

RouterF1

FmA1

Am

R1

Rm

.

.

.

.

.

. ...

145ms

600 Mbps

RTTs: (300ms, 100ms, 20ms)RTTs: (300ms, 100ms, 20ms)

Page 13: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 13

Experimental Procedures and Experimental Procedures and Parameter SettingsParameter Settings

• 100 second ns-2 simulations100 second ns-2 simulations

• n flows divided equally among three flow types (n = 3m)n flows divided equally among three flow types (n = 3m)

• input demand, i.e, aggregate flow capacity input demand, i.e, aggregate flow capacity fixed fixed at 600 at 600 MbpsMbps

• staggered start of half the flows (0 sec, 2 sec)staggered start of half the flows (0 sec, 2 sec)

• fixed RED/ECN and TCP parameters for all runsfixed RED/ECN and TCP parameters for all runs– wq = 0.001

– min_th = 5

– buffer_size = 50 packets

– TCP max_window_size = 30 packets

Page 14: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 14

Figure 2: RED and ECN GoodputFigure 2: RED and ECN Goodputmin_th = 5, max_th = 30min_th = 5, max_th = 30

5

5.5

6

6.5

7

7.5

8

8.5

9

9.5

10

0 100 200 300 400 500 600

Number of flows

Goo

dput

(M

bps)

ECN (max_p=0.1)RED (max_p=0.1)ECN (max_p=0.5)RED (max_p=0.5)

Page 15: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 15

Figure 3: RED and ECN DelayFigure 3: RED and ECN Delaymin_th = 5, max_th =30, max_p =0.5min_th = 5, max_th =30, max_p =0.5

0

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

0 100 200 300 400 500 600

Number of flows

One-

way

del

ay (

Sec

onds

)

ECN (Fragile flows)ECN (Average flows)ECN (Robust flows)RED (Fragile flows)RED (Average flows)RED (Robust flows)

Page 16: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 16

Figure 4: Goodput with 30 flowsFigure 4: Goodput with 30 flowsmin_th = 5min_th = 5

5

5.5

6

6.5

7

7.5

8

8.5

9

9.5

10

0 0.2 0.4 0.6 0.8 1

max_p

Goo

dput

(M

bps)

ECN (max_th=15)

RED (max_th=15)

ECN (max_th=30)

RED (max_th=30)

Page 17: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 17

Figure 5: Goodput with 120 flowsFigure 5: Goodput with 120 flowsmin_th = 5min_th = 5

5

5.5

6

6.5

7

7.5

8

8.5

9

9.5

10

0 0.2 0.4 0.6 0.8 1

max_p

Goo

dput

(Mbp

s)

ECN (max_th=15)

RED (max_th=15)

ECN (max_th=30)

RED (max_th=30)

Page 18: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 18

Figure 6: RED and ECN FairnessFigure 6: RED and ECN Fairnessmin_th = 5, max_th = 30min_th = 5, max_th = 30

0

0.1

0.2

0.3

0.4

0.5

0.6

0 100 200 300 400 500 600

Number of flows

Jain

's fa

irnes

s in

dex

ECN (max_p=0.1)

RED (max_p=0.1)

ECN (max_p=0.5)

RED (max_p=0.5)

Page 19: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 19

Figure 7: Goodput Distribution with Figure 7: Goodput Distribution with 30 flows30 flows

min_th = 5, max_th = 30, max_p = 0.2min_th = 5, max_th = 30, max_p = 0.2

0

1

2

3

4

5

6

7

8

9

10

20 30 40 50 60 70 80 90 100

Time (Seconds)

Goodput

(Mbps)

ECN (Aggregate) RED (Aggregate)ECN (Fragile) RED (Fragile)ECN (Average) RED (Average)ECN (Robust) RED (Robust)

Page 20: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 20

Figure 8: Goodput Distribution with Figure 8: Goodput Distribution with 30 flows30 flows

min_th = 5, max_th = 30, max_p = 0.8min_th = 5, max_th = 30, max_p = 0.8

0

1

2

3

4

5

6

7

8

9

10

20 30 40 50 60 70 80 90 100Time (Seconds)

Goo

dput

(M

pbs)

ECN (Aggregate) RED (Aggregate)

ECN (Fragile) RED (Fragile)

ECN (Average) RED (Average)

ECN (Robust) RED (Robust)

Page 21: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 21

Figure 9: Goodput Distribution with Figure 9: Goodput Distribution with 120 flows120 flows

min_th = 5, max_th = 30, max_p = 0.8min_th = 5, max_th = 30, max_p = 0.8

0

1

2

3

4

5

6

7

8

9

10

20 30 40 50 60 70 80 90 100

Time (Seconds)

Goo

dput

(M

bps)

ECN (Aggregate) RED (Aggregate) ECN (Fragile) RED (Fragile)

ECN (Average) RED (Average) ECN (Robust) RED (Robust)

Page 22: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 22

Figure 10: Throughput Distribution Figure 10: Throughput Distribution with 120 flowswith 120 flows

min_th = 5, max_th = 30, max_p = 0.8min_th = 5, max_th = 30, max_p = 0.8

0

1

2

3

4

5

6

7

8

9

10

20 30 40 50 60 70 80 90 100Time (Seconds)

Thro

ughp

ut (

Mbp

s)

ECN (Aggregate) RED (Aggregate) ECN (Fragile) RED (Fragile)

ECN (Average) RED (Average) ECN (Robust) RED (Robust)

Page 23: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 23

Figure 11: ECN and ECNM Goodput Figure 11: ECN and ECNM Goodput with 120 flowswith 120 flows

min_th = 5min_th = 5

0

1

2

3

4

5

6

7

8

9

10

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

max_p

ECNM (max_th=15)

ECN (max_th=15)

ECNM (max_th=30)

ECN (max_th=30)

Page 24: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 24

ConclusionsConclusions

• ECN provides higher goodput than RED.ECN provides higher goodput than RED.

• Both RED and ECN are unfair to Both RED and ECN are unfair to heterogeneous flows. ECN is fairer in some heterogeneous flows. ECN is fairer in some situations.situations.

• ECN performs better with a more aggressive ECN performs better with a more aggressive max_p max_p setting. This is more pronounced when setting. This is more pronounced when the number of flows generating the demand is the number of flows generating the demand is high.high.

Page 25: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 25

ConclusionsConclusions

• For fixed demand, as the number of flows For fixed demand, as the number of flows increase the performance of both RED and increase the performance of both RED and ECN decrease.ECN decrease.– This may be due to buffer contention at the

router and flow lockout.

• When there are many flows, increasing When there are many flows, increasing max_th max_th improves ECN goodput.improves ECN goodput.

Page 26: ICN01 Colmar, France July 10, 20011 A Performance Study of Explicit Congestion Notification (ECN) with Heterogeneous TCP Flows Robert Kinicki and Zici

ICN01 Colmar, France July 10, 2001 26

ConclusionsConclusions

• An adaptive version of ECN that varies An adaptive version of ECN that varies max_p max_p and and max_th max_th appears to be promising.appears to be promising.

• An adaptive ECN mechanism that varies An adaptive ECN mechanism that varies max_p max_p with flow type should with flow type should significantlysignificantly improve fairness.improve fairness.