Next:
4. The Class Simulator
Up:
The Manual (formerly Notes
Previous:
3.8 Class InstVar
2. Simulator Basics
4. The Class Simulator
4.1 Simulator Initialization
4.2 Schedulers and Events
4.2.1 The List Scheduler
4.2.2 the heap scheduler
4.2.3 The Calendar Queue Scheduler
4.2.4 The Real-Time Scheduler
4.3 Other Methods
5. Nodes and Packet Forwarding
5.1 Simulator Methods: Creating the Topology
5.2 Node Methods: Configuring the Node
5.2.0.0.1 Control functions
5.2.0.0.2 Address and Port number management
5.2.0.0.3 Agent management
5.2.0.0.4 Tracking Neighbors
5.3 The Classifier
5.3.1 Address Classifiers
5.3.2 Multicast Classifiers
5.3.3 MultiPath Classifier
5.3.4 Hash Classifier
5.3.5 Replicator
5.4 Commands at a glance
6. Links: Simple Links
6.1 Instance Procedures for Links and SimpleLinks
6.1.0.0.1 Link procedures
6.1.0.0.2 SimpleLink Procedures
6.2 Connectors
6.3 Object hierarchy
6.4 Commands at a glance
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
8. Delays and Links
8.1 The LinkDelay Class
8.2 Commands at a glance
9. Agents
9.1 Agent state
9.2 Agent methods
9.3 Protocol Agents
9.4 OTcl Linkage
9.4.1 Creating and Manipulating Agents
9.4.2 Default Values
9.4.3 OTcl Methods
9.5 Examples: Tcp, TCP Sink Agents
9.5.1 Creating the Agent
9.5.2 Starting the Agent
9.5.3 Processing Input at Receiver
9.5.4 Processing Responses at the Sender
9.5.5 Implementing Timers
9.6 Creating a New Agent
9.6.1 Example: A ``ping'' requestor (Inheritance Structure)
9.6.2 The
recv
() and
timeout
() Methods
9.6.3 Linking the ``ping'' Agent with OTcl
9.6.4 Using the agent through OTcl
9.7 The Agent API
9.8 Different agent objects
9.9 Commands at a glance
10. Timers
10.1 C++ abstract base class TimerHandler
10.1.1 Definition of a new timer
10.1.2 Example: Tcp retransmission timer
10.2 OTcl Timer class
10.3 Commands at a glance
11. Packet Headers and Formats
11.1 A Protocol-Specific Packet Header
11.1.1 Adding a New Packet Header Type
11.2 Packet Classes
11.2.1 The Packet Class
11.2.2 p_info Class
11.2.3 The hdr_cmn Class
11.2.4 The PacketHeaderManager Class
11.3 Commands at a glance
12. Error Model
12.1 Implementation
12.2 Configuration
12.3 Multi-state error model
12.4 Commands at a glance
13. Local Area Networks
13.1 Tcl configuration
13.2 Components of a LAN
13.3 Channel Class
13.3.1 Channel State
13.3.2 Example: Channel and classifier of the physical layer
13.3.3 Channel Class in C++
13.4 MacClassifier Class
13.5 MAC Class
13.5.1 Mac State
13.5.2 Mac Methods
13.5.3 Mac Class in C++
13.5.4 CSMA-based MAC
13.6 LL (link-layer) Class
13.6.1 LL Class in C++
13.6.2 Example: Link Layer configuration
13.7 LanRouter class
13.8 Other Components
13.9 LANs and routing
13.10 Commands at a glance
14. The (Revised) Addressing Structure in NS
14.1 The Default Address Format
14.2 The Hierarchical Address Format
14.2.1 Default Hierarchical Setting
14.2.2 Specific Hierarchical Setting
14.3 The Expanded Node-Address Format
14.4 Expanding port-id field
14.5 Errors in setting address format
14.6 Commands at a glance
15. Mobile Networking in ns
15.1 The basic wireless model in ns
15.1.1 Mobilenode: creating wireless topology
15.1.2 Creating Node movements
15.1.3 Network Components in a mobilenode
15.1.4 Different types of Routing Agents in mobile networking
15.1.4.1 DSDV
15.1.4.2 DSR
15.1.4.3 TORA
15.1.4.4 AODV
15.1.5 Trace Support
15.1.6 Revised format for wireless traces
15.1.6.1 Explanation of new trace format
15.1.7 Generation of node-movement and traffic-connection for wireless scenarios
15.1.7.1 MobileNode Movement
15.1.7.2 Generating traffic pattern files
15.2 Extensions made to CMU's wireless model
15.2.1 wired-cum-wireless scenarios
15.2.2 MobileIP
15.3 Commands at a glance
16. Satellite Networking in
16.1 Overview of satellite models
16.1.1 Geostationary satellites
16.1.2 Low-earth-orbiting satellites
16.2 Using the satellite extensions
16.2.1 Nodes and node positions
16.2.2 Satellite links
16.2.3 Handoffs
16.2.4 Routing
16.2.5 Trace support
16.2.6 Error models
16.2.7 Other configuration options
16.2.8 support
16.2.9 Integration with other modules
16.2.10 Example scripts
16.3 Implementation
16.3.1 Use of linked lists
16.3.2 Node structure
16.3.3 Detailed look at satellite links
16.4 Commands at a glance
17. Restructuring ns node and new node APIs
17.1 New Node API
17.1.1 Node configuration
17.1.2 Node Creation
17.2 Comparison of new API vs old API
17.3 Advantages of the new node structure
17.4 Compatibility
17.5 Example scripts
17.6 Validation tests for new node API
17.7 Commands at a glance
18. Debugging ns
18.1 Tcl-level Debugging
18.2 C++-Level Debugging
18.3 Mixing Tcl and C debugging
18.4 Memory Debugging
18.4.1 Using dmalloc
18.4.2 Memory Conservation Tips
18.4.3 Some statistics collected by dmalloc
18.5 Memory Leaks
18.5.1 OTcl
18.5.2 C/C++
19. Energy Model in ns
19.1 The C++ EnergyModel Class
19.2 The OTcl interface
2000-08-24