[
Top
]
[
Contents
]
[
Index
]
[
?
]
Table of Contents
1. Random variables
1.1 Quick Overview
1.2 Background
1.3 Seeding and independent replications
1.4 class RandomVariable
1.5 Base class public API
1.6 Types of RandomVariables
1.7 Semantics of RandomVariable objects
1.8 Using other PRNG
1.9 More advanced usage
1.10 Publishing your results
1.11 Summary
2. Callbacks
2.1 Motivation
2.2 Using the Callback API
2.2.1 Using the Callback API with static functions
2.2.2 Using the Callback API with member functions
2.2.3 Building Null Callbacks
2.3 Callback locations in
ns-3
2.3.1 Socket API
2.3.2 Layer-2/Layer-3 API
2.3.3 Tracing subsystem
2.3.4 Routing
2.4 Implementation details
3. Attributes
3.1 Object Overview
3.1.1 Smart pointers
3.1.2 CreateObject
3.1.3 TypeId
3.1.4 Object Summary
3.2 Attribute Overview
3.2.1 Functional overview
3.2.2 Basic usage
3.2.2.1 Pointer-based access
3.2.2.2 Namespace-based access
3.2.3 Setting through constructors helper classes
3.2.4 Value classes
3.3 Extending attributes
3.3.1 Adding an existing internal variable to the metadata system
3.3.2 Adding a new TypeId
3.4 Adding new class type to the attribute system
3.5 ConfigStore
3.5.1 GTK-based ConfigStore
3.5.2 Future work
4. Object model
4.1 Object-oriented behavior
4.2 Object base classes
4.3 Memory management and class Ptr
4.3.1 Reference counting smart pointer (Ptr)
4.3.2 CreateObject and Create
4.3.3 Aggregation
4.3.3.1 Aggregation example
4.3.3.2 GetObject example
4.4 Downcasting
5. Real-Time Scheduler
5.1 Behavior
5.2 Usage
5.3 Implementation
6. Emulation
6.1 Behavior
6.1.1 Emu Net Device
6.1.2 Tap Net Device
6.2 Usage
6.2.1 Emu Net Device
6.2.2 Tap Net Device
6.3 Implementation
6.3.1 Emu Net Device
6.3.2 Tap Net Device
7. Packets
7.1 Packet design overview
7.2 Packet interface
7.2.1 Constructors
7.2.2 Adding and removing Buffer data
7.2.3 Adding and removing Tags
7.2.4 Fragmentation
7.2.5 Miscellaneous
7.3 Using Headers
7.4 Using Tags
7.5 Using Fragmentation
7.6 Sample program
7.7 Implementation details
7.7.1 Private member variables
7.7.2 Buffer implementation
7.7.3 Tags implementation
7.7.4 Memory management
7.7.5 Copy-on-write semantics
8. Sockets APIs
8.1 ns-3 sockets API
8.1.1 Basic operation and calls
8.1.1.1 Creating sockets
8.1.1.2 Using sockets
8.1.2 Packet vs. buffer variants
8.1.3 Sending dummy data
8.1.4 Socket options
8.1.5 Socket errno
8.1.6 Example programs
8.2 POSIX-like sockets API
9. Node and Internet Stack
9.1 NodeList
9.2 Internet stack aggregation
9.2.1 Internet Node structure
9.2.1.1 Layer-3 protocols
9.2.1.2 Layer-4 protocols and sockets
9.2.2 Internet Node interfaces
9.2.3 Example path of a packet
10. TCP models in ns-3
10.1 Generic support for TCP
10.2 ns-3 TCP
10.2.1 Usage
10.2.2 Current limitations
10.3 Network Simulation Cradle
10.3.1 Prerequisites
10.3.2 Configuring and Downloading
10.3.3 Building and validating
10.3.4 Usage
10.3.5 Stack configuration
10.3.6 NSC API
10.3.7 ns-3 implementation
10.3.8 Limitations
11. Routing overview
11.1 Overview
11.2 Support for multiple routing protocols
11.2.1 class Ipv4RoutingProtocol
11.2.2 Ipv4::AddRoutingProtocol
11.2.3 Ipv4L3Protocol::Lookup
11.3 Roadmap and Future work
11.4 Static routing
11.5 Unicast routing
11.6 Multicast routing
11.7 Global centralized routing
11.8 Global Unicast Routing API
11.9 Global Routing Implementation
11.10 Optimized Link State Routing (OLSR)
12. Wifi NetDevice
12.1 Overview of the model
12.2 Using the WifiNetDevice
12.2.1 YansWifiChannelHelper
12.2.2 YansWifiPhyHelper
12.2.3 WifiHelper
12.2.4 AdHoc WifiNetDevice configuration
12.2.5 Infrastructure (Access Point and clients) WifiNetDevice configuration
12.3 The WifiChannel and WifiPhy models
12.3.1 WifiChannel configuration
12.4 The MAC model
12.5 Wifi Attributes
12.6 Wifi Tracing
13. CSMA NetDevice
13.1 Overview of the model
13.1.1 CSMA Layer Model
13.2 CSMA Channel Model
13.3 CSMA Net Device Model
13.4 Using the CsmaNetDevice
13.5 CSMA Tracing
13.5.1 Upper-Level (MAC) Hooks
13.5.2 Lower-Level (PHY) Hooks
14. PointToPoint NetDevice
14.1 Overview of the model
14.2 Point-to-Point Channel Model
14.3 Using the PointToPointNetDevice
14.4 PointToPoint Tracing
14.4.1 Upper-Level (MAC) Hooks
14.4.2 Lower-Level (PHY) Hooks
15. Creating a new ns-3 model
15.1 Design-approach
15.1.1 Example: ErrorModel
15.2 Scaffolding
15.2.1 Review the ns-3 coding style document
15.2.2 Decide where in the source tree the model will reside in
15.2.3 waf and wscript
15.2.4 include guards
15.2.5 namespace ns3
15.3 Initial Implementation
15.3.1 use of class Object?
15.3.2 initial classes
15.3.3 how to include files from elsewhere
15.3.4 log component
15.3.5 constructor, empty function prototypes
15.3.6 key variables (default values, attributes)
15.3.7 test program 1
15.3.8 Object Framework
15.4 Adding a sample script
15.4.1 Add basic support in the class
15.4.2 Add Accessor
15.4.3 Plumb into the system
15.4.4 Create null functional script
15.5 Add subclass
15.5.1 How to subclass
15.6 Build core functions and unit tests
15.6.1 assert macros
15.6.2 Writing unit tests
16. Troubleshooting
16.1 Build errors
16.2 Run-time errors
[
Top
]
[
Contents
]
[
Index
]
[
?
]
This document was generated on
April, 2 2009
using
texi2html 1.78
.