Transcript
Page 1: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

15th June 2016, Wednesday University of Washington, Seattle, USA

Mohit P. Tahiliani, Dharmendra Kumar Mishra, Pranav Vankar

Wireless Information Networking Group,

National Institute of Technology Karnataka, Surathkal, India

[email protected]

8th Annual Workshop on ns-3 (WNS3 2016)

TCP Evaluation Suite for ns-3

Page 2: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Outline of the presentation

❑ Motivation

❑ Existing implementations

❑ Design and implementation of tcp-eval in ns-3

❑ User interaction with ns-3 tcp-eval

❑ Comparing TCP extensions in ns-3

❑ Results and discussions

❑ Validation issues

❑ Conclusions and the next goals

15th June 2016, Wednesday University of Washington, Seattle, USA

Page 3: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Motivation

❑ Congestion control algorithms continue to evolve . . .

❑ . . . and so do TCP extensions!

❑ Problem: not feasible to evaluate every TCP extension exhaustively

❑ Potential solution:

- derive some initial results and study the behaviour

- consider the promising ones for thorough evaluation

What is TCP Evaluation Suite?

- a set of well-defined, standard test cases to compare TCP extensions

- initially proposed by Transport Modeling Research Group (TMRG)

- modified by Internet Congestion Control Research Group (ICCRG)

- widely used today for evaluating new TCP extensions

15th June 2016, Wednesday University of Washington, Seattle, USA3

Page 4: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Existing implementations

❑ Wang, G., Y. Xia, and D. Harrison. “An NS2 TCP evaluation tool.”

draftirtf-tmrg-ns2-tcp-tool, IETF Internet Draft (expired) (2007).

- Two versions of code.

- Version 2 source: https://sourceforge.net/projects/tcpeval

❑ Shimonishi, Hideyuki, M. Y. Sanadidi, and Tutomu Murase. “Assessing

Interactions among Legacy and High-Speed TCPs.” PFLDnet 2007 (2007).

- designed for evaluating High-speed TCP extensions using ns-2

- Source: http://nrlweb.cs.ucla.edu/tcpsuite/index.html

15th June 2016, Wednesday University of Washington, Seattle, USA4

Page 5: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Existing implementations

❑ Li, Yee-Ting, Douglas Leith, and Robert N. Shorten. “Experimental

evaluation of TCP protocols for high-speed networks.” Networking, IEEE/

ACM Transactions on 15.5 (2007): 1109-1122.

- designed for evaluating High-speed TCP extensions using ns-2

- Source: http://www.hamilton.ie/net/eval/hi2005.htm

❑ Hayes, D., Ros, D., Andrew, L. and S. FLoyd, “Common TCP Evaluation

Suite” draft-irtf-iccrg-tcpeval-01, IETF Internet Draft (expired) (2015).

- The latest draft on TCP Evaluation Suite

- Source: https://bitbucket.org/hayesd/tcp-evaluation-suite-public

15th June 2016, Wednesday University of Washington, Seattle, USA5

Page 6: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Design and implementation of ns-3 tcp-eval

❑ Implemented as a separate model called tcp-eval in ns-3 (~5500 lines)

❑ Topologies:

- Dumbbell (single bottleneck topology)

- Parking lot (multiple bottlenecks topology)

❑ Traffic types:

- Long lived FTP

- Streaming video

- Interactive voice

❑ Performance metrics:

- Aggregate link utilization

- Mean queue length, and Packet drop rate

15th June 2016, Wednesday University of Washington, Seattle, USA6

Page 7: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Design and implementation of ns-3 tcp-eval

15th June 2016, Wednesday University of Washington, Seattle, USA

Figure: Class diagram of tcp-eval in ns-3

7

Page 8: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

User interaction with ns-3 tcp-eval

15th June 2016, Wednesday University of Washington, Seattle, USA

Figure: User interaction diagram of tcp-eval for dumbbell scenario

User

drive-dumbbell.cc

Results

point-to-point-dumbbell.ccdumbbell-topology.cc

eval-stats.cc

create-traffic.cc

traffic-parameters.cc

configure-topology.cc

1

2

3

4

5

6

7

8Core modules

Configuration module

Supporting module

Legends

8

Page 9: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

User interaction with ns-3 tcp-eval

15th June 2016, Wednesday University of Washington, Seattle, USA

Figure: User interaction diagram of tcp-eval for parking-lot scenario

User

drive-parking-lot.cc

Results

point-to-point-parking-lot.ccparking-lot-topology.cc

eval-stats.cc

create-traffic.cc

traffic-parameters.cc

configure-topology.cc

1

2

3

4

5

6

7

8

Core modules

Configuration module

Supporting module

Legends

9

Page 10: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Comparing TCP extensions in ns-3

❑ Five TCP extensions: Tahoe, Reno, NewReno, Westwood, Westwood+

❑ Three scenarios:

- Varying bottleneck bandwidth

- Varying RTT

- Varying the number of FTP flows

❑ Three Performance metrics:

- Link utilization

- Mean queue length

- Packet drop rate

❑ Output:

- PDF containing graphs (LaTex must be installed!)

15th June 2016, Wednesday University of Washington, Seattle, USA10

Page 11: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Results and discussions: varying bottleneck bandwidth

15th June 2016, Wednesday University of Washington, Seattle, USA

0

20

40

60

80

100

1 10 100

Lin

k U

tiliz

atio

n (

%)

Bandwidth (Mbps) Log Scale

Link Utilization with Bandwidth Changes

TahoeReno

NewrenoWestwood

Westwood+ 0

20

40

60

80

100

1 10 100

Lin

k U

tiliz

atio

n (

%)

Bandwidth (Mbps) Log Scale

Link Utilization with Bandwidth Changes

TahoeReno

NewrenoWestwood

Westwood+

Dumbbell topology Parking lot topology

11

Page 12: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Results and discussions: varying bottleneck bandwidth

15th June 2016, Wednesday University of Washington, Seattle, USA

Dumbbell topology Parking lot topology

0

20

40

60

80

100

1 10 100

Mean Q

ueue

Length

(%

)

Bandwidth (Mbps) Log Scale

Percent of Mean Queue Length with Bandwidth Changes

TahoeReno

NewrenoWestwood

Westwood+

0

20

40

60

80

100

1 10 100

Mean Q

ueue

Length

(%

)

Bandwidth (Mbps) Log Scale

Percent of Mean Queue Length with Bandwidth Changes

TahoeReno

NewrenoWestwood

Westwood+

12

Page 13: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Results and discussions: varying bottleneck bandwidth

15th June 2016, Wednesday University of Washington, Seattle, USA

Dumbbell topology Parking lot topology

0

2

4

6

8

1 10 100

Pack

et D

rop R

ate

(%

)

Bandwidth (Mbps) Log Scale

Packet Drop Rate with Bandwidth Changes

TahoeReno

NewrenoWestwood

Westwood+

0

2

4

6

8

1 10 100

Pack

et D

rop R

ate

(%

)

Bandwidth (Mbps) Log Scale

Packet Drop Rate with Bandwidth Changes

TahoeReno

NewrenoWestwood

Westwood+

13

Page 14: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Results and discussions: varying RTT

15th June 2016, Wednesday University of Washington, Seattle, USA

Dumbbell topology Parking lot topology

0

20

40

60

80

100

0.01 0.1 1

Lin

k U

tiliz

atio

n (

%)

RTT (s) Log Scale

Link Utilization with RTT Changes

TahoeReno

NewrenoWestwood

Westwood+ 0

20

40

60

80

100

0.01 0.1 1

Lin

k U

tiliz

atio

n (

%)

RTT (s) Log Scale

Link Utilization with RTT Changes

TahoeReno

NewrenoWestwood

Westwood+

14

Page 15: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Results and discussions: varying RTT

15th June 2016, Wednesday University of Washington, Seattle, USA

Dumbbell topology Parking lot topology

0

10

20

30

40

50

60

70

80

90

100

0.01 0.1 1

Mean Q

ueue

Length

(%

)

RTT (s) Log Scale

Percent of Mean Queue Length with RTT Changes

TahoeReno

NewrenoWestwood

Westwood+

0

10

20

30

40

50

60

70

80

90

100

0.01 0.1 1

Mean Q

ueue

Length

(%

)

RTT (s) Log Scale

Percent of Mean Queue Length with RTT Changes

TahoeReno

NewrenoWestwood

Westwood+

15

Page 16: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Results and discussions: varying RTT

15th June 2016, Wednesday University of Washington, Seattle, USA

Dumbbell topology Parking lot topology

0

2

4

6

8

0.01 0.1 1

Pack

et D

rop R

ate

(%

)

RTT (s) Log Scale

Packet Drop Rate with RTT Changes

TahoeReno

NewrenoWestwood

Westwood+

0

2

4

6

8

0.01 0.1 1

Pack

et D

rop R

ate

(%

)

RTT (s) Log Scale

Packet Drop Rate with RTT Changes

TahoeReno

NewrenoWestwood

Westwood+

16

Page 17: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Results and discussions: varying number of FTP flows

15th June 2016, Wednesday University of Washington, Seattle, USA

Dumbbell topology Parking lot topology

0

20

40

60

80

100

1 10 100

Lin

k U

tiliz

atio

n (

%)

FTP Log Scale

Link Utilization with FTP Changes

TahoeReno

NewrenoWestwood

Westwood+ 0

20

40

60

80

100

1 10 100

Lin

k U

tiliz

atio

n (

%)

FTP Log Scale

Link Utilization with FTP Changes

TahoeReno

NewrenoWestwood

Westwood+

17

Page 18: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Results and discussions: varying number of FTP flows

15th June 2016, Wednesday University of Washington, Seattle, USA

Dumbbell topology Parking lot topology

0

20

40

60

80

100

1 10 100

Mean Q

ueue

Length

(%

)

FTP Log Scale

Percent of Mean Queue Length with FTP Changes

TahoeReno

NewrenoWestwood

Westwood+ 0

20

40

60

80

100

1 10 100

Mean Q

ueue

Length

(%

)

FTP Log Scale

Percent of Mean Queue Length with FTP Changes

TahoeReno

NewrenoWestwood

Westwood+

18

Page 19: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Results and discussions: varying number of FTP flows

15th June 2016, Wednesday University of Washington, Seattle, USA

Dumbbell topology Parking lot topology

0

2

4

6

8

1 10 100

Pack

et D

rop R

ate

(%

)

FTP Log Scale

Packet Drop Rate with FTP Changes

TahoeReno

NewrenoWestwood

Westwood+

0

2

4

6

8

1 10 100

Pack

et D

rop R

ate

(%

)

FTP Log Scale

Packet Drop Rate with FTP Changes

TahoeReno

NewRenoWestwood

Westwood+

19

Page 20: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Validation issues

❑ Original tcp-eval is implemented in older version of ns-2 (ns-2.31!)

❑ ns-2.31 did not have many new TCPs

❑ Hence, tcp-eval contained custom implementations of new TCPs

❑ Latest tcp-eval implementation in ns-2 is on ns-2.35

❑ But there are several bugs identified, and its development has stopped

❑ Started aligning our implementation with that of tcp-eval for ns-2.35

15th June 2016, Wednesday University of Washington, Seattle, USA20

Page 21: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Conclusions and the next goals

❑ A ns-3 model for tcp-eval has been implemented, but not validated.

❑ Automates the cycle from setting parameters to collecting results

❑ Steps to reproduce the results have been provided.

Next goals:

❑ Align the model to latest version of tcp-eval (2016 summer project!)

❑ Evaluate the model by comparing its results to those obtained from ns-2

❑ Include support for more topologies (wireless) and AQM algorithms

❑ Provide per-flow analysis to the user.

15th June 2016, Wednesday University of Washington, Seattle, USA21

Page 22: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Acknowledgement

❑ All the reviewers, for the encouraging reviews!

❑ Tom Henderson, for guiding us through the validation procedure.

❑ All developers of TCP extensions in ns-3.

❑ The entire ns-3 community.

❑ Our research group at NITK Surathkal.

15th June 2016, Wednesday University of Washington, Seattle, USA22

Page 23: TCP Evaluation Suite for ns-3 · Outline of the presentation Motivation Existing implementations Design and implementation of tcp-eval in ns-3 User interaction with ns-3 tcp-eval

Thank you.


Top Related