The ns Manual
(formerly ns Notes and Documentation)1
The VINT Project
A Collaboration between researchers at
UC Berkeley, LBL, USC/ISI, and Xerox PARC.
Kevin Fall hkfall@ee.lbl.govi, Editor
Kannan Varadhan hkannan@catarina.usc.edui, Editor
December 10, 2008
ns c is LBNL’s Network Simulator [24]. The simulator is written in C++; it uses OTcl as a command and configuration
interface. ns v2 has three substantial changes from ns v1: (1) the more complex objects in ns v1 have been decomposed into
simpler components for greater flexibility and composability; (2) the configuration interface is now OTcl, an object oriented
version of Tcl; and (3) the interface code to the OTcl interpreter is separate from the main simulator.
Ns documentation is available in html, Postscript, and PDF formats. See http://www.isi.edu/nsnam/ns/ns-documentation.
html for pointers to these.
1The VINT project is a joint effort by people from UC Berkeley, USC/ISI, LBL, and Xerox PARC. The project is supported by the Defense Advanced
Research Projects Agency (DARPA) at LBL under DARPA grant DABT63-96-C-0105, at USC/ISI under DARPA grant ABT63-96-C-0054, at Xerox PARC
under DARPA grant DABT63-96-C-0105. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s)
and do not necessarily reflect the views of the DARPA.
Contents
1
Introduction
2 Undocumented Facilities
I
Interface to the Interpreter
3 OTcl Linkage
3.1 Concept Overview .
3.2 Code Overview . . .
3.3 Class Tcl
. . . .
. .
3.4 Class TclObject . . .
. . .
. . . .
3.5 Class TclClass . . . .
. . .
. . . .
. . . .
. . .
. . . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
3.3.1 Obtain a Reference to the class Tcl instance . .
. . .
3.3.2
. . .
3.3.3
. . .
3.3.4 Error Reporting and Exit .
. . .
3.3.5 Hash Functions within the Interpreter
3.3.6 Other Operations on the Interpreter
. . .
. . .
. . . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
Invoking OTcl Procedures . . . .
. . . .
. . . .
Passing Results to/from the Interpreter . .
. . . .
. . . .
. . . .
. .
. . . .
. . .
. . . .
. . . .
. . . .
3.4.1 Creating and Destroying TclObjects . . .
. . . .
. . . .
3.4.2 Variable Bindings .
. . . .
3.4.3 Variable Tracing .
. . . .
. . . .
3.4.4 commandMethods: Definition and Invocation . . . .
. . . .
3.5.1 How to Bind Static C++ Class Member Variables . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
3.6 Class TclCommand .
3.7 Class EmbeddedTcl .
3.8 Class InstVar
. . . .
II Simulator Basics
4 The Class Simulator
4.1 Simulator Initialization . .
4.2 Schedulers and Events
. .
the heap scheduler
. . . .
. . . .
4.2.1 The List Scheduler . . . .
4.2.2
. . . .
4.2.3 The Calendar Queue Scheduler
4.2.4 The Real-Time Scheduler
4.2.5
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
Precision of the scheduler clock used in ns
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
.
. . . .
4.3 Other Methods
. . .
4.4 Commands at a glance . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. .
. .
. .
. .
. .
. .
. .
. .
. .
1
2
6
8
9
9
10
10
11
11
11
12
12
13
13
14
15
17
18
20
21
23
24
25
27
28
28
28
29
30
30
30
31
31
32
5 Nodes and Packet Forwarding
. . .
. . . .
. . .
. . . .
5.1 Node Basics .
. . . .
5.2 Node Methods: Configuring the Node . .
5.3 Node Configuration Interface . . .
. . . .
. . . .
. . . .
5.4 The Classifier . . . .
. . . .
5.4.1 Address Classifiers . . . .
. . . .
. . .
5.4.2 Multicast Classifiers
5.4.3 MultiPath Classifier
. . .
. . . .
. . . .
. . . .
. .
5.4.4 Hash Classifier
5.4.5 Replicator . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
5.5 Routing Module and Classifier Organization . . .
. . . .
. . . .
. . . .
.
5.5.1 Routing Module
5.5.2 Node Interface . .
5.6 Commands at a glance . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
6 Links: Simple Links
6.1
. . .
6.2 Connectors
. . . .
6.3 Object hierarchy . . .
. . .
6.4 Commands at a glance . .
Instance Procedures for Links and SimpleLinks .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
.
7 Queue Management and Packet Scheduling
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
7.1 The C++ Queue Class . . .
7.1.1 Queue blocking . .
7.1.2
. . . .
. . . .
PacketQueue Class . . . .
7.2 Example: Drop Tail .
. . . .
7.3 Different types of Queue objects .
. . . .
7.4 Commands at a glance . .
7.5 Queue/JoBS .
. . .
. . . .
7.5.1 The JoBS algorithm . . .
. . . .
7.5.2 Configuration . . .
. . . .
. . .
7.5.3 Tracing . . .
7.5.4 Variables . .
. . .
. . . .
7.5.5 Commands at a glance . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
8 Delays and Links
8.1 The LinkDelay Class . . .
8.2 Commands at a glance . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. .
. .
9 Differentiated Services Module in ns
. . .
. . .
. . . .
. . . .
9.1 Overview . .
9.2
. . . .
. . . .
. . . .
Implementation . . .
9.2.1 RED queue in DiffServ module .
. . . .
9.2.2 Edge and core routers . . .
. . . .
. . . .
9.2.3
. . . .
. . . .
. . . .
. . . .
. . .
Policy . . . .
. . .
9.3 Configuration . . . .
9.4 Commands at a glance . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
10 Agents
10.1 Agent state
.
. . . .
10.2 Agent methods
. . .
10.3 Protocol Agents . . .
10.4 OTcl Linkage . . . .
. . . .
. . . .
. . . .
. . . .
10.4.1 Creating and Manipulating Agents . . . .
10.4.2 Default Values
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
2
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
35
35
37
39
40
43
44
45
45
47
48
48
50
51
53
54
56
56
57
60
60
61
62
63
64
68
68
68
70
71
71
72
75
75
76
77
77
78
78
78
79
80
82
86
86
86
87
88
88
88
. .
10.4.3 OTcl Methods
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . . .
. . . .
. . . .
10.5 Examples: Tcp, TCP Sink Agents
. . . .
. . . .
. . . .
. . . .
10.5.1 Creating the Agent
. . . .
10.5.2 Starting the Agent
. . . .
10.5.3 Processing Input at Receiver . . .
10.5.4 Processing Responses at the Sender
. . . .
10.5.5 Implementing Timers . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
10.6.1 Example: A “ping” requestor (Inheritance Structure) .
. . . .
10.6.2 The recv() and timeout() Methods . .
. . . .
10.6.3 Linking the “ping” Agent with OTcl . . .
10.6.4 Using the agent through OTcl
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
10.7 The Agent API
. . .
10.8 Different agent objects
. .
10.9 Commands at a glance . .
10.6 Creating a New Agent . . .
. . .
. . .
. . .
. . .
. . .
. . .
. .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
89
89
89
90
91
92
93
93
93
94
94
96
96
96
99
11 Timers
11.1 C++ abstract base class TimerHandler
. .
11.1.1 Definition of a new timer .
. . . .
11.1.2 Example: Tcp retransmission timer
. . . .
. . . .
11.2 OTcl Timer class
. . .
11.3 Commands at a glance . .
. . . .
. . . .
. .
. . . .
. . . .
. . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
12 Packet Headers and Formats
. . . .
. . . .
. . . .
. . .
12.2 Packet Classes . . . .
. . . .
12.1 A Protocol-Specific Packet Header . . . .
12.1.1 Adding a New Packet Header Type
. . . .
12.1.2 Selectively Including Packet Headers in Your Simulation . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . . .
. . . .
12.2.1 The Packet Class .
. . . .
12.2.2 p_info Class
. . . .
. . .
12.2.3 The hdr_cmn Class . . . .
. . . .
12.2.4 The PacketHeaderManager Class
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
12.3 Commands at a glance . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
13 Error Model
13.1 Implementation . . .
. . .
13.2 Configuration . . . .
. . .
13.3 Multi-state error model
. .
13.4 Commands at a glance . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
14 Local Area Networks
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
14.1 Tcl configuration . .
. . . .
14.2 Components of a LAN . .
. . . .
14.3 Channel Class . . . .
. . .
14.3.1 Channel State . . .
. . . .
14.3.2 Example: Channel and classifier of the physical layer .
. . . .
14.3.3 Channel Class in C++ . .
. . .
14.4 MacClassifier Class .
. . . .
. . . .
. . .
14.5 MAC Class
. . . .
. . . .
. . . .
. . . .
14.5.1 Mac State . .
. . .
. . . .
14.5.2 Mac Methods . . .
. . . .
. . . .
. . . .
14.5.3 Mac Class in C++ . . . .
. . . .
14.5.4 CSMA-based MAC . . . .
. . . .
. . . .
. . . .
. . . .
14.6 LL (link-layer) Class . . .
14.6.1 LL Class in C++ .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
.
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
3
101
. . 101
. . 102
. . 102
. . 105
. . 105
106
. . 106
. . 108
. . 108
. . 109
. . 109
. . 112
. . 112
. . 113
. . 114
116
. . 116
. . 117
. . 118
. . 119
121
. . 121
. . 122
. . 123
. . 123
. . 123
. . 123
. . 124
. . 125
. . 125
. . 125
. . 125
. . 126
. . 127
. . 127
14.6.2 Example: Link Layer configuration . . .
. . . .
. . . .
. . . .
. . . .
. . .
14.7 LanRouterclass . .
14.8 Other Components
. . .
.
14.9 LANs and ns routing . . .
14.10Commands at a glance . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . 127
. . 128
. . 128
. . 128
. . 130
15 The (Revised) Addressing Structure in NS
. . .
15.1 The Default Address Format
15.2 The Hierarchical Address Format .
. . . .
. . . .
15.2.1 Default Hierarchical Setting . . .
15.2.2 Specific Hierarchical Setting . . .
. .
. . . .
. . . .
. . . .
15.3 The Expanded Node-Address Format
15.4 Expanding port-id field . .
. . . .
15.5 Errors in setting address format . .
15.6 Commands at a glance . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
131
. . 131
. . 131
. . 132
. . 132
. . 132
. . 132
. . 133
. . 133
16 Mobile Networking in ns
. . . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
16.1 The basic wireless model in ns . .
. . . .
. . . .
. . . .
. . . .
. . . .
16.1.1 Mobilenode: creating wireless topology .
. . . .
. . . .
16.1.2 Creating Node movements . . . .
. . . .
. . . .
. . . .
16.1.3 Network Components in a mobilenode . .
. . . .
16.1.4 Different MAC layer protocols for mobile networking . . . .
. . . .
16.1.5 Different types of Routing Agents in mobile networking . . .
. . . .
. . . .
16.1.6 Trace Support . . .
. . . .
. . . .
16.1.7 Revised format for wireless traces . . . .
. . . .
16.1.8 Generation of node-movement and traffic-connection for wireless scenarios .
. . . .
. . . .
. . . .
. . . .
16.2 Extensions made to CMU’s wireless model
. .
. . . .
. . . .
16.2.1 wired-cum-wireless scenarios
16.2.2 MobileIP . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
134
. . 134
. . 134
. . 138
. . 139
. . 142
. . 143
. . 144
. . 148
. . 150
. . 151
. . 151
. . 152
. . 155
. . .
16.3 802.11 MAC protocol . . .
16.4 Lists of changes for merging code developed in older version of ns (2.1b5 or later) into the current version
. . . .
. . . .
(2.1b8)
. . .
16.5 Commands at a glance . .
. . . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . 157
. . 159
17 Satellite Networking in ns
. . . .
17.1 Overview of satellite models . . .
17.1.1 Geostationary satellites . .
. . . .
17.1.2 Low-earth-orbiting satellites . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
17.2 Using the satellite extensions . . .
. . . .
17.2.1 Nodes and node positions
. . . .
. . . .
17.2.2 Satellite links . . .
. . . .
17.2.3 Handoffs . .
. . .
. . . .
. . . .
. . . .
17.2.4 Routing . . .
. . .
. . . .
. . . .
17.2.5 Trace support . . .
. . . .
17.2.6 Error models . . .
. . . .
. . . .
17.2.7 Other configuration options
17.2.8 nam support
. . . .
. . . .
17.2.9 Integration with wired and wireless code
. . . .
17.2.10 Example scripts . .
. . .
. . . .
. . . .
17.3.1 Use of linked lists .
. . . .
17.3.2 Node structure . .
. . . .
17.3.3 Detailed look at satellite links
. . . .
. . . .
. . . .
. . . .
. . . .
. .
. . . .
17.4 Commands at a glance . .
17.3 Implementation . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
161
. . 161
. . 161
. . 162
. . 164
. . 164
. . 165
. . 167
. . 168
. . 169
. . 170
. . 171
. . 171
. . 171
. . 172
. . 172
. . 173
. . 173
. . 174
. . 176
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
4
18 Radio Propagation Models
. .
. . .
18.1 Free space model
. . . .
18.2 Two-ray ground reflection model .
18.3 Shadowing model . .
. . . .
. . . .
18.3.1 Backgroud .
.
18.3.2 Using shadowing model
. . . .
. . . .
18.4 Communication range . . .
18.5 Commands at a glance . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
19 Energy Model in ns
19.1 The C++ EnergyModel Class . . .
19.2 The OTcl interface .
. . . .
. . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
20 Directed Diffusion
. . . .
. . . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
20.1 What is Directed Diffusion?
. . . .
20.2 The diffusion model in ns .
. . . .
. . . .
20.3 Some mac issues for diffusion in ns
20.4 APIs for using filters in diffusion .
. . . .
20.5 Ping: an example diffusion application implementation . . . .
. . . .
. . . .
. . . .
. . . .
. . . .
20.5.1 Ping Application as implemented in C++ . . .
20.5.2 Tcl APIs for the ping application .
. . .
20.6 Changes required to add yr diffusion application to ns .
. . .
20.7 Test-suites for diffusion . .
20.8 Commands at a glance . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
21 XCP: eXplicit Congestion control Protocol
. . .
21.1 What is XCP? . . . .
. . . .
21.2 Implementation of XCP in NS . .
21.2.1 Endpoints in XCP . . . .
. . .
21.2.2 XCP Router .
. . . .
. . .
. . . .
21.2.3 XCP queue .
. . . .
. . .
21.3 XCP example script .
. . . .
21.4 Test-suites for XCP .
. . .
21.5 Commands at a glance . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
22 DelayBox: Per-Flow Delay and Loss
22.1 Implementation Details . .
22.2 Example . . .
. . .
22.3 Commands at a Glance . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
23 Changes made to the IEEE 802.15.4 Implementation in NS-2.31
. . . .
. . . .
23.1 Radio shutdown . . .
23.2 Other changes . . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
III Support
24 Debugging ns
. . . .
24.1 Tcl-level Debugging . . .
24.2 C++-Level Debugging . .
. . . .
24.3 Mixing Tcl and C debugging . . .
. . . .
24.4 Memory Debugging .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . . .
24.4.1 Using dmalloc . .
. . . .
24.4.2 Memory Conservation Tips . . . .
. . . .
24.4.3 Some statistics collected by dmalloc . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
5
178
. . 178
. . 179
. . 179
. . 179
. . 181
. . 181
. . 182
183
. . 183
. . 184
185
. . 185
. . 185
. . 186
. . 187
. . 187
. . 187
. . 188
. . 188
. . 190
. . 190
192
. . 192
. . 193
. . 193
. . 194
. . 194
. . 195
. . 198
. . 198
199
. . 199
. . 200
. . 201
203
. . 203
. . 204
205
206
. . 206
. . 206
. . 207
. . 208
. . 208
. . 209
. . 209
24.5 Memory Leaks
. . .
24.5.1 OTcl
. . . .
24.5.2 C/C++ . . . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . 209
. . 210
. . 210
25 Mathematical Support
. . . .
25.1 Random Number Generation . . .
. . . .
25.1.1 Seeding The RNG . . . .
. . . .
25.1.2 OTcl Support . . .
. . . .
. . . .
. . . .
. . .
25.1.3 C++ Support
. . . .
. . . .
. . .
25.2 Random Variables . .
. . . .
. . . .
. . .
25.3 Integrals . . .
. . . .
. . . .
25.4 ns-random . . . .
. . .
. . . .
25.5 Some mathematical-support related objects
25.6 Commands at a glance . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . . .
26 Trace and Monitoring Support
. . .
26.1 Trace Support . . . .
. . . .
26.1.1 OTcl Helper Functions . .
. .
26.2 Library support and examples
. . . .
26.3 The C++ Trace Class . . .
. . . .
26.4 Trace File Format . .
. . .
. . . .
. . .
26.5 Packet Types
. . . .
. . . .
26.6 Queue Monitoring . .
. . .
. . . .
26.7 Per-Flow Monitoring . . .
. . . .
26.7.1 The Flow Monitor
26.7.2 Flow Monitor Trace Format
. . . .
26.7.3 The Flow Class . .
26.8 Commands at a glance . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
27 Test Suite Support
27.1 Test Suite Components . .
27.2 Write a Test Suite . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
28 Dynamic Libraries
28.1 Motivation . .
28.2 Support
. . .
28.3 Usage . . . .
29 ns Code Styles
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
29.1 Indentation style . . .
29.2 Variable Naming Conventions
29.3 Miscellaneous . . . .
. . . .
. .
. . . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
IV Routing
30 Unicast Routing
30.1 The Interface to the Simulation Operator (The API) . .
. . . .
30.2 Other Configuration Mechanisms for Specialised Routing . . .
. . . .
30.3 Protocol Specific Configuration Parameters
30.4 Internals and Architecture of Routing . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
30.4.1 The classes .
. . .
30.4.2 Interface to Network Dynamics and Multicast .
. . .
. . .
30.5 Protocol Internals . .
. . .
30.6 Unicast routing objects . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . . .
. . . .
. . . .
6
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
211
. . 211
. . 212
. . 214
. . 215
. . 216
. . 217
. . 218
. . 219
. . 219
221
. . 221
. . 222
. . 223
. . 225
. . 226
. . 228
. . 229
. . 231
. . 231
. . 231
. . 232
. . 232
235
. . 235
. . 235
238
. . 238
. . 239
. . 239
240
. . 240
. . 240
. . 240
242
243
. . 243
. . 244
. . 245
. . 246
. . 246
. . 250
. . 251
. . 252
30.7 Commands at a glance . .
. . . .
. . . .
. . . .
. . .
. . . .
. . . .
. . . .
. . . .
. . .
. . . .
. . . .
. . 252
31 Multicast Routing
. . .
. . .
. . . .
. . . .
. . . .
31.1 Multicast API . . . .
31.2 Internals of Multicast Routing . .
. . . .
. . .
31.1.1 Multicast Behavior Monitor Configuration . .
. . .
31.1.2 Protocol Specific configuration . .
. . .
. . . .
. . . .
. . .
31.2.1 The classes .
. . .
31.2.2 Extensions to other classes in ns .
. . .
. . . .
31.2.3 Protocol Internals .
. . . .
. . .
. . . .
31.2.4 The internal variables . . .
. . . .
. . . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
31.3 Commands at a glance . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
32 Network Dynamics
.
32.1 The user level API
. . .
. . . .
32.2 The Internal Architecture .
. . . .
32.2.1 The class rtModel .
. . . .
32.2.2 class rtQueue . . . .
32.3 Interaction with Unicast Routing .
32.3.1 Extensions to Other Classes
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
32.4 Deficencies in the Current Network Dynamics API
. . . .
32.5 Commands at a glance . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
33 Hierarchical Routing
33.1 Overview of Hierarchical Routing . . . .
33.2 Usage of Hierarchical routing . . .
. . . .
33.3 Creating large Hierarchical topologies . .
33.4 Hierarchical Routing with SessionSim . .
33.5 Commands at a glance . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
V Transport
34 UDP Agents
34.1 UDP Agents .
. . .
34.2 Commands at a glance . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
35 TCP Agents
. .
. . . .
35.2 TCP Receivers (sinks)
35.1 One-Way TCP Senders . .
. . . .
35.1.1 The Base TCP Sender (Tahoe TCP)
. . . .
35.1.2 Configuration . . .
. . . .
35.1.3 Simple Configuration . . .
. . . .
35.1.4 Other Configuration Parameters .
. .
35.1.5 Other One-Way TCP Senders
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . . .
35.4 Architecture and Internals .
35.5 Tracing TCP Dynamics . .
. . . .
35.6 One-Way Trace TCP Trace Dynamics . .
35.7 One-Way Trace TCP Trace Dynamics . .
. . . .
35.2.1 The Base TCP Sink . . . .
35.2.2 Delayed-ACK TCP Sink .
. . . .
35.2.3 Sack TCP Sink . .
35.3 Two-Way TCP Agents (FullTcp) .
35.3.1 Simple Configuration . . .
35.3.2 BayFullTcp .
. . . .
. . . .
. . . .
. . . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
7
254
. . 254
. . 255
. . 256
. . 257
. . 257
. . 259
. . 262
. . 264
. . 264
267
. . 267
. . 269
. . 269
. . 270
. . 271
. . 271
. . 272
. . 272
274
. . 274
. . 274
. . 276
. . 277
. . 277
278
279
. . 279
. . 280
281
. . 282
. . 282
. . 282
. . 282
. . 283
. . 284
. . 285
. . 285
. . 285
. . 285
. . 286
. . 286
. . 287
. . 287
. . 289
. . 289
. . 289