Class List

Here are the classes, structs, unions and interfaces with brief descriptions:
ns3::AarfWifiManagerAARF Rate control algorithm
ns3::AddressPolymophic address class
ns3::AddressValueHold objects of type ns3::Address
ns3::AdhocWifiMacAdhoc state machine
ns3::olsr::AgentClass implementing the OLSR state machine
ns3::Object::AggregateIteratorIterate over the objects aggregated to an ns3::Object
ns3::AmrrWifiManagerAMRR Rate control algorithm
ns3::ApplicationThe base class for all ns3 applications
ns3::ApplicationContainerHolds a vector of ns3::Application pointers
ns3::ArfWifiManagerARF Rate control algorithm
ns3::ArpCacheAn ARP cache
ns3::ArpHeaderThe packet header for an ARP packet
ns3::ArpIpv4InterfaceIpv4 Interface which uses ARP
ns3::ArpL3ProtocolAn implementation of the ARP protocol
ns3::AttributeAccessorAllow setting and getting the value of an attribute
ns3::AttributeCheckerRepresent the type of an attribute
ns3::TypeId::AttributeInfoStore together a set of attribute properties
ns3::AttributeListContainer of attributes to be used during object's construction and in ns3::Object::Set
ns3::AttributeValueHold a value for an Attribute
ns3::BackoffThe backoff class is used for calculating backoff times when many net devices can write to the same channel
ns3::BooleanValueHold a bool native type
ns3::BridgeChannelVirtual channel implementation for bridges (BridgeNetDevice)
ns3::BridgeNetDeviceVirtual net device that bridges multiple LAN segments
ns3::BufferAutomatically resized byte buffer
ns3::Callback< R, T1, T2, T3, T4, T5, T6 >Callback template class
ns3::CandidateQueueA Candidate Queue used in static routing
ns3::ChannelAbstract Channel Base Class
ns3::ChunkAbstract base class for ns3::Header and ns3::Trailer
ns3::CommandLineParse command-line argumentsInstances of this class can be used to parse command-line arguments: users can register new arguments with CommandLine::AddValue but the most important functionality provided by this class is that it can be used to set the 'initial value' of every attribute in the system with the --TypeIdNameAttributeName=value syntax and it can be used to set the value of every GlobalValue in the system with the --GlobalValueName=value syntax
ns3::CompositePropagationLossModelComposite propagation loss model
ns3::ConfigStoreStore and load simulation attribute configuration
ns3::ConstantRateWifiManagerUse constant rates for data and control transmissions
ns3::ConstantSpeedPropagationDelayModelPropagation speed is constant
ns3::ConstantVariableA random variable that returns a constantClass ConstantVariable defines a random number generator that returns the same value every sample
ns3::CriticalSectionA class which provides a simple way to implement a Critical Section
ns3::CsmaChannelCsma Channel
ns3::CsmaDeviceRecCsmaNetDevice Record
ns3::CsmaHelperBuild a set of CsmaNetDevice objects
ns3::CsmaNetDeviceA Device for a Csma Network Link
ns3::DataRateClass for representing data rates
ns3::DataRateValueHold objects of type ns3::DataRate
ns3::DcaTxopHandle packet fragmentation and retransmissions
ns3::DcfManagerManage a set of ns3::DcfState
ns3::DcfStateKeep track of the state needed for a single DCF function
ns3::DelayJitterEstimationQuick and dirty delay and jitter estimation
ns3::DeterministicVariableNon-random variableDefines a random variable that has a specified, predetermined sequence. This would be useful when trying to force the RNG to return a known sequence, perhaps to compare NS-3 to some other simulator
ns3::DoubleValueHold an floating point type
ns3::DropTailQueueA FIFO packet queue that drops tail-end packets on overflow
ns3::EmpiricalVariableEmpiricalVariable distribution random varDefines a random variable that has a specified, empirical distribution. The distribution is specified by a series of calls to the CDF member function, specifying a value and the probability that the function value is less than the specified value. When values are requested, a uniform random variable is used to select a probabililty, and the return value is interpreted linerarly between the two appropriate points in the CDF. The method is known as inverse transform sampling: (http://en.wikipedia.org/wiki/Inverse_transform_sampling)
ns3::emptyMake Callback use a separate empty type
ns3::EmptyAttributeValueA class for an empty attribute value
ns3::ArpCache::EntryA record that that holds information about an ArpCache entry
ns3::EnumValueHold variables of type 'enum'
ns3::ErrorModelGeneral error model that can be used to corrupt packets
ns3::EthernetHeaderPacket header for Ethernet
ns3::EthernetTrailerPacket trailer for Ethernet
ns3::EventGarbageCollectorAn object that tracks scheduled events and automatically cancels them when it is destroyed. It is useful in situations where multiple instances of the same type of event can simultaneously be scheduled, and when the events should be limited to the lifetime of a container object
ns3::EventIdIdentifier for simulation events
ns3::EventImplSimulation event
ns3::EventLockBase class for locking functionality for events
ns3::ExponentialVariableExponentially Distributed random varThis class supports the creation of objects that return random numbers from a fixed exponential distribution. It also supports the generation of single random numbers from various exponential distributions
ns3::FriisPropagationLossModelFriis propagation loss model
ns3::GlobalRouteManagerA global global router
ns3::GlobalRouteManagerImplA global router implementation
ns3::GlobalRouteManagerLSDBThe Link State DataBase (LSDB) of the Global Route Manager
ns3::GlobalRouterAn interface aggregated to a node to provide global routing info
ns3::GlobalRoutingLinkRecordA single link record for a link state advertisement
ns3::GlobalRoutingLSALink State Advertisement (LSA) for a router, used in global routing
ns3::GlobalValueHold a so-called 'global value'
ns3::GnuplotSimple class to generate gnuplot-ready plotting commands from a set of datasets
ns3::GnuplotDatasetStore a dataset to be used by ns3::Gnuplot
ns3::GridPositionAllocatorAllocate positions on a rectangular 2d grid
ns3::GtkConfigStoreA class that provides a GTK-based front end to ns3::ConfigStore
ns3::HeaderProtocol header serialization and deserialization
ns3::HeapSchedulerBinary heap event scheduler
ns3::HierarchicalMobilityModelHierachical mobility model
ns3::IdealWifiManagerIdeal rate control algorithm
ns3::InetSocketAddressInet address class
ns3::IntegerValueHold a signed integer type
ns3::IntEmpiricalVariableInteger-based empirical distributionDefines an empirical distribution where all values are integers. Indentical to EmpiricalVariable, except that the inverse transform sampling interpolation described in the EmpiricalVariable documentation is modified to only return integers
ns3::InternetStackHelperAggregate ip/tcp/udp functionality to existing Nodes
ns3::IntToType< v >
ns3::Ipv4Access to the Ipv4 forwarding table and to the ipv4 interfaces
ns3::Ipv4AddressIpv4 addresses are stored in host order in this class
ns3::Ipv4AddressGeneratorThis generator assigns addresses sequentially from a provided network address; used in topology code
ns3::Ipv4AddressHelperA helper class to make life easier while doing simple IPv4 address assignment in scripts
ns3::Ipv4AddressValueHold objects of type ns3::Ipv4Address
ns3::Ipv4EndPointA representation of an internet endpoint/connection
ns3::Ipv4EndPointDemuxDemultiplexes packets to various transport layer endpoints
ns3::Ipv4HeaderPacket header for IPv4
ns3::Ipv4InterfaceThe IPv4 representation of a network interface
ns3::Ipv4InterfaceContainerKeep track of a set of ipv4 interfaces
ns3::Ipv4L3ProtocolImplement the Ipv4 layer
ns3::Ipv4L4ProtocolL4 Protocol abstract base class
ns3::Ipv4LoopbackInterfaceAn IPv4 loopback interface
ns3::Ipv4MaskClass to represent an Ipv4 address mask
ns3::Ipv4MaskValueHold objects of type ns3::Ipv4Mask
ns3::Ipv4MulticastRouteA record of an IPv4 multicast route
ns3::Ipv4RouteA record of an IPv4 route
ns3::Ipv4RoutingProtocolBase class for IPv4 routing protocols
ns3::Ipv4StaticRoutingStatic routing protocol for IP version 4 stacks
ns3::TagIterator::Item
ns3::Buffer::IteratorIterator in a Buffer instance
ns3::JakesPropagationLossModelJakes propagation loss model
ns3::ListErrorModelProvide a list of Packet uids to corrupt
ns3::ListPositionAllocatorAllocate positions from a deterministic list specified by the user
ns3::ListSchedulerStd::list event scheduler
ns3::LlcSnapHeaderHeader for the LLC/SNAP encapsulation
ns3::LogDistancePropagationLossModelLog distance propagation model
ns3::LogNormalVariableLog-normal Distributed random varLogNormalVariable defines a random variable with log-normal distribution. If one takes the natural logarithm of random variable following the log-normal distribution, the obtained values follow a normal distribution. This class supports the creation of objects that return random numbers from a fixed lognormal distribution. It also supports the generation of single random numbers from various lognormal distributions
ns3::Mac48AddressEUI-48 address
ns3::Mac48AddressValueHold objects of type ns3::Mac48Address
ns3::Mac64AddressEUI-64 address
ns3::MacLowHandle RTS/CTS/DATA/ACK transactions
ns3::MacLowNavListenerListen to NAV events
ns3::MacLowTransmissionListenerListen to events coming from ns3::MacLow
ns3::MacLowTransmissionParametersControl how a packet is transmitted
ns3::MapSchedulerStd::map event scheduler
ns3::MobilityHelperAssign positions and mobility models to nodes
ns3::MobilityModelKeep track of the current position of an object
ns3::NetDeviceNetwork layer to device interface
ns3::NetDeviceContainerHolds a vector of ns3::NetDevice pointers
ns3::NodeA network Node
ns3::NodeContainerKeep track of a set of node pointers
ns3::NodeListList of simulation nodes
ns3::NormalVariableClass NormalVariable defines a random variable with a normal (Gaussian) distribution.This class supports the creation of objects that return random numbers from a fixed normal distribution. It also supports the generation of single random numbers from various normal distributions
ns3::NqapWifiMacNon-QoS AP state machine
ns3::NqstaWifiMacNon-QoS STA state machine
ns3::Ns2MobilityHelperTopology object which can read ns2's movement files generated by the CMU setdest tool
ns3::NscTcpL4ProtocolNsc wrapper glue, to interface with the Ipv4 protocol underneath
ns3::NscTcpSocketFactoryImplSocket factory implementation for creating instances of NSC TCP
ns3::NscTcpSocketImplSocket logic for the NSC TCP sockets
ns3::ObjectBase class which provides memory management and object aggregation
ns3::ObjectBaseImplement the ns-3 type and attribute system
ns3::ObjectFactoryInstantiate subclasses of ns3::Object
ns3::ObjectFactoryValueHold objects of type ns3::ObjectFactory
ns3::ObjectVectorValueContain a vector of ns3::Object pointers
ns3::OlsrHelperHelper class that adds OLSR routing to nodes
ns3::OnoeWifiManagerImplementation of rate control algorithm developed by Atsushi Onoe
ns3::OnOffApplicationGenerate traffic to a single destination according to an OnOff pattern
ns3::OnOffHelperInstanciate an ns3::OnOffApplication on a set of nodes
ns3::PacketNetwork packets
ns3::PacketSinkReceive and consume traffic generated to an IP address and port
ns3::PacketSocketA PacketSocket is a link between an application and a net device
ns3::PacketSocketAddressAddress for a packet socket
ns3::PacketSocketFactory
ns3::PacketSocketHelperGive ns3::PacketSocket powers to ns3::Node
ns3::ParetoVariableParetoVariable distributed random varThis class supports the creation of objects that return random numbers from a fixed pareto distribution. It also supports the generation of single random numbers from various pareto distributions
ns3::PcapWriterPcap output for Packet logger
ns3::PendingDataClass for managing I/O between applications and TCP
ns3::PointerValueHold objects of type Ptr<T>
ns3::PointToPointChannelSimple Point To Point Channel
ns3::PointToPointHelperBuild a set of PointToPointNetDevice objects
ns3::PointToPointNetDeviceA Device for a Point to Point Network Link
ns3::PositionAllocatorAllocate a set of positions. The allocation strategy is implemented in subclasses
ns3::PppHeaderPacket header for PPP
ns3::PropagationDelayModelCalculate a propagation delay
ns3::PropagationLossModelModelize the propagation loss through a transmission medium
ns3::Ptr< T >Smart pointer class similar to boost::intrusive_ptr
ns3::QueueAbstract base class for packet Queues
ns3::RandomDirection2dMobilityModelRandomDirection mobility model
ns3::RandomDiscPositionAllocatorAllocate random positions within a disc according to a pair of random variables
ns3::RandomPropagationDelayModelPropagation delay is random
ns3::RandomPropagationLossModelThe propagation loss is random
ns3::RandomRectanglePositionAllocatorAllocate random positions within a rectangle according to a pair of random variables
ns3::RandomStream
ns3::RandomVariableThe basic RNG for NS-3.Note: The underlying random number generation method used by NS-3 is the RngStream code by Pierre L'Ecuyer at the University of Montreal
ns3::RandomVariableValueHold objects of type ns3::RandomVariable
ns3::RandomWalk2dMobilityModel2D random walk position model
ns3::RandomWaypointMobilityModelRandom waypoint mobility model
ns3::RateErrorModelDetermine which packets are errored corresponding to an underlying distribution, rate, and unit
ns3::Rectangle2d rectangle
ns3::RectangleValueHold objects of type ns3::Rectangle
ns3::RefCountBaseBase class that provides implementations of reference counting operations
ns3::RngStreamCombined Multiple-Recursive Generator MRG32k3a
ns3::RraaWifiManagerRobust Rate Adaptation Algorithm
ns3::RttHistoryImplements several variations of round trip time estimators
ns3::SchedulerMaintain the event list
SequenceNumberClass to manage arithmetic operations on sequence numbers (mod 2^32)
ns3::SequentialVariableReturn a sequential list of valuesClass SequentialVariable defines a random number generator that returns a sequential sequence. The sequence monotonically increases for a period, then wraps around to the low value and begins monotonicaly increasing again
ns3::SimpleChannelA simple channel, for simple things and testing
ns3::SimpleNetDeviceSimple net device for simple things and testing
ns3::SimulationSingleton< T >
ns3::SimulatorControl the scheduling of simulation events
ns3::Singleton< T >Template singleton
ns3::SocketA low-level Socket API based loosely on the BSD Socket API.A few things to keep in mind about this type of socket:

  • it uses ns-3 API constructs such as class ns3::Address instead of C-style structs
  • in contrast to the original BSD socket API, this API is asynchronous: it does not contain blocking calls. Sending and receiving operations must make use of the callbacks provided.
  • It also uses class ns3::Packet as a fancy byte buffer, allowing data to be passed across the API using an ns-3 Packet instead of a raw data pointer.
  • Not all of the full POSIX sockets API is supported
ns3::SocketAddressTagThis class implements a tag that carries an address of a packet across the socket interface
ns3::SocketFactoryObject to create transport layer instances that provide a socket API to applications
ns3::SocketIpTtlTagThis class implements a tag that carries the socket-specific TTL of a packet to the IP layer
ns3::SPFVertexVertex used in shortest path first (SPF) computations. See RFC 2328, Section 16
ns3::SsidIEEE 802.11 SSID
ns3::SsidValueHold objects of type ns3::Ssid
ns3::StaticMobilityModelPosition model for which the current position does not change once it has been set and until it is set again explicitely to a new value
ns3::StaticSpeedMobilityModelPosition model for which the current speed does not change once it has been set and until it is set again explicitely to a new value
ns3::StringValueHold variables of type string
ns3::SynchronizerBase class used for synchronizing the simulation events to some real time "wall clock."
ns3::SystemConditionA class which provides a relatively platform-independent conditional-wait thread synchronization primitive
ns3::SystemMutexA class which provides a relatively platform-independent Mutual Exclusion thread synchronization primitive
ns3::SystemThreadA class which provides a relatively platform-independent thread primitive
ns3::SystemWallClockMsMeasure wall-clock time in milliseconds
ns3::TagTag a set of bytes in a packet
ns3::TagBufferRead and write tag data
ns3::TagIteratorIterator over the set of tags in a packet
ns3::TagListKeep track of the tags stored in a packet
ns3::TcpHeaderHeader for the Transmission Control Protocol
ns3::TcpL4ProtocolA layer between the sockets interface and IP
ns3::TcpSocket(abstract) base class of all TcpSockets
ns3::TcpSocketFactoryAPI to create TCP socket instances
ns3::TcpSocketFactoryImplSocket factory implementation for native ns-3 TCP
ns3::TcpSocketImplAn implementation of a stream socket using TCP
ns3::TestBase class for new regressions tests
ns3::TestManagerGather and run all regression tests
ns3::TimeMinMaxAvgTotalCalculator
ns3::TimerSimple Timer class
ns3::TimeUnit< N >Keep track of time unit
ns3::TimeValueHold objects of type ns3::Time
ns3::TracedCallback< T1, T2, T3, T4 >Forward calls to a chain of CallbackAn ns3::TracedCallback has almost exactly the same API as a normal ns3::Callback but instead of forwarding calls to a single function (as an ns3::Callback normally does), it forwards calls to a chain of ns3::Callback. TracedCallback::Connect adds a ns3::Callback at the end of the chain of callbacks. TracedCallback::Disconnect removes a ns3::Callback from the chain of callbacks
ns3::TracedValue< T >Trace classes with value semantics
ns3::TraceSourceAccessorControl access to objects' trace sources
ns3::TrailerProtocol trailer serialization and deserialization
ns3::TriangularVariableTriangularly Distributed random varThis distribution is a triangular distribution. The probablility density is in the shape of a triangle
ns3::TypeIdUnique identifier for an interface
ns3::TypeIdValueHold objects of type ns3::TypeId
ns3::UdpEchoClientA Udp Echo client
ns3::UdpEchoServerA Udp Echo server
ns3::UdpHeaderPacket header for UDP packets
ns3::UdpL4ProtocolImplementation of the UDP protocol
ns3::UdpSocket(abstract) base class of all UdpSockets
ns3::UdpSocketFactoryAPI to create UDP socket instances
ns3::UdpSocketFactoryImplObject to create UDP socket instances
ns3::UdpSocketImplA sockets interface to UDP
ns3::UintegerValueHold an unsigned integer type
ns3::UniformVariableThe uniform distribution RNG for NS-3.This class supports the creation of objects that return random numbers from a fixed uniform distribution. It also supports the generation of single random numbers from various uniform distributions
ns3::Vector3d cartesian position vector
ns3::VectorValueHold objects of type ns3::Vector
ns3::WallClockSynchronizerClass used for synchronizing the simulation events to a real-time "wall clock" using Posix Clock functions
ns3::WatchdogVery simple watchdog
ns3::WeibullVariableWeibullVariable distributed random varThis class supports the creation of objects that return random numbers from a fixed weibull distribution. It also supports the generation of single random numbers from various weibull distributions
ns3::WifiChannelA 802.11 Channel
ns3::WifiHelperHelps to create WifiNetDevice objects
ns3::WifiMacBase class for all MAC-level wifi objects
ns3::WifiMacQueue802.11e-specific queue
ns3::WifiModeRepresent a single transmission mode
ns3::WifiModeFactoryCreate WifiMode class instances and keep track of them
ns3::WifiModeFactory::WifiModeItem
ns3::WifiModeValueHold objects of type ns3::WifiMode
ns3::WifiNetDeviceHold together all Wifi-related objects
ns3::WifiPhy802.11 PHY layer model
ns3::WifiPhyListenerReceive notifications about phy events
ns3::WifiRemoteStationHold per-remote-station state
ns3::WifiRemoteStationManagerHold a list of per-remote-station state