Assignment 9 CS594-ipp05 revised: 11/4/05 Assigned: 11/3/05 Due: 6:00pm 11/18/05 Objective: ns chapter 11 RED and RTT Points: 20 Description: To run ns (and xgraph and nam) on the CS linuux lab machines (cetus/hyrdra) you'll need to add some things your path and environment, see ~dunigan/ipp05/ns/README Use the Tcl you created for assignment 8 to build a new script based on the information provided in the text, section 11.8, page 271, Round-Trip Times section, e.g., agents on nodes s1/d1 and s3/d3. Your Tcl script should produce results similar to that in Table 11.3 and Figure 11.4 Provide command line arguments that are the TCP/Agents for the two flows, selecting from Agents Tahoe, Reno, Newreno, Vegas, Sack1, Fack, WestwoodNR ns chap11-3.tcl Newreno Newreno (Careful, agent Tahoe is just Agent/TCP and you'll need logic to use a sink Agent/TCPSink/Sack1 for Sack1 and Fack flavors) a) Report bandwidth for each Agent paired with itself (7 test cases). b) Comment on the pair with widest bandwidth differential and the pair with the smallest differential. Use the Sink agent's bytes_ variable to calculate final bandwidth. Also add a record procedure that records current simulation time, and current cwnd_ value in a trace file for each flow. The record procedure should run every 0.1 seconds. c) Provide a plot file (gif/jpg/png) for the cwnd traces for the Tahoe/Tahoe case, and another plot file for the WestwoodNR/WestwoodNR case. Comment on what you observe in these two plot files. (see Figure 11.4) How does RTT affect TCP recovery from packet loss? d) Finally, change all the "DropTail" to "RED" in your Tcl and re-run all 7 cases and report the bandwidths. What effect does RED have on the bandwidth differentials? Paste all of your results into an ANSWERS file that you submit with your documented tcl source code and your plot files. Put all of your files in a directory and then "cd" into that directory and from one of the lab machines use ~cs594ipp/594submit Protect your directory with "chmod" so others can't profit from your work. Notes: WestwoodNR and Vegas require high res times, so a WestwoodNR or Vegas flow should set the tick to 0.01, e.g. $tcp1 set tcpTick_ 0.01 Just use default values of ns for RED.