NS-3 based Named Data Networking (NDN) simulator
ndnSIM: NDN, CCN, CCNx, content centric networks
API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
ns3::ndn Namespace Reference

ndnSIM namespace More...

Namespaces

 cs
 Namespace for ContentStore operations.
 
 error
 Namespace holding all errors from NDN.cxx API.
 
 fib
 Namespace for FIB operations.
 
 fw
 Namespace for Forwarding Strategy operations.
 
 pit
 Namespace for PIT operations.
 
 wire
 Namespace encapsulating wire operations.
 

Classes

class  ApiFace
 An application NDN face, providing richer API interface, compared to ndn::AppFace. More...
 
class  ApiFacePriv
 
class  App
 Base class that all NDN applications should be derived from. More...
 
class  AppDelayTracer
 Tracer to obtain application-level delays. More...
 
class  AppFace
 Implementation of application Ndn face. More...
 
class  AppHelper
 A helper to make it easier to instantiate an ns3::NdnConsumer Application on a set of nodes. More...
 
class  Blob
 Class representing a general-use binary blob. More...
 
class  Consumer
 NDN application for sending out Interest packets. More...
 
class  ConsumerBatches
 Ndn application for sending out Interest packets in batches. More...
 
class  ConsumerCbr
 Ndn application for sending out Interest packets at a "constant" rate (Poisson process) More...
 
class  ConsumerWindow
 Ndn application for sending out Interest packets (window-based) More...
 
class  ConsumerZipfMandelbrot
 NDN app requesting contents following Zipf-Mandelbrot Distbituion. More...
 
class  ContentStore
 Base class for NDN content store. More...
 
class  CsTracer
 NDN tracer for cache performance (hits and misses) More...
 
class  Data
 Data header. More...
 
class  DataException
 Class for Data parsing exception. More...
 
class  Exclude
 Class to represent Exclude component in NDN interests. More...
 
class  Face
 Virtual class defining NDN face. More...
 
class  FaceContainer
 A pool for Ndn faces. More...
 
class  Fib
 Class implementing FIB functionality. More...
 
class  ForwardingStrategy
 Abstract base class for Ndn forwarding strategies. More...
 
class  FwHopCountTag
 Packet tag that is used to track hop count for Interest-Data pairs. More...
 
class  GlobalRouter
 Class representing global router interface for ndnSIM. More...
 
class  GlobalRoutingHelper
 Helper for GlobalRouter interface. More...
 
class  HeaderHelper
 Class implementing functionality to detect Ndn packet type and create the corresponding object. More...
 
class  Interest
 NDN Interest (wire formats are defined in wire) More...
 
class  InterestException
 Class for Interest parsing exception. More...
 
class  IpFacesHelper
 Helper for NDN IP-based face creation. More...
 
class  IpFaceStack
 Application that provides functionality of creating IP-based faces on NDN nodes. More...
 
class  L3AggregateTracer
 NDN network-layer tracer for aggregate packet counts. More...
 
class  L3Protocol
 Implementation network-layer of NDN stack. More...
 
class  L3RateTracer
 NDN network-layer rate tracer. More...
 
class  L3Tracer
 Base class for network-layer (incoming/outgoing Interests and Data) tracing of NDN stack. More...
 
class  Limits
 Abstract class to manage Interest limits. More...
 
class  LimitsRate
 Structure to manage limits for outstanding interests. More...
 
class  LimitsWindow
 Structure to manage limits for outstanding interests (window-based limiting) More...
 
class  LinkControlHelper
 Helper class to control the up or down statuss of an NDN link connecting two specific nodes. More...
 
class  LocalInfoTag
 Packet tag that is used to keep information about face from which packet was received. More...
 
class  Name
 Class for NDN Name. More...
 
class  NetDeviceFace
 Implementation of layer-2 (Ethernet) Ndn face. More...
 
class  Pit
 Class implementing Pending Interests Table. More...
 
class  Producer
 A simple Interest-sink applia simple Interest-sink application. More...
 
class  RttEstimator
 Base class for all RTT Estimators. More...
 
class  RttHistory
 Helper class to store RTT measurements. More...
 
class  RttMeanDeviation
 The modified version of "Mean--Deviation" RTT estimator, as discussed by Van Jacobson that better suits NDN communication model. More...
 
class  StackHelper
 Adding Ndn functionality to existing Nodes. More...
 
class  TcpBoundaryHeader
 
class  TcpFace
 Implementation of TCP/IP NDN face. More...
 
struct  TcpPrefixRegistrator
 
class  UdpFace
 Implementation of UDP/IP NDN face. More...
 
class  UnknownHeaderException
 Exception thrown if NDN stack receives unrecognized message type. More...
 
class  Uri
 A helper class to convert to/from URI. More...
 
struct  Wire
 

Typedefs

typedef Name NameComponents
 
typedef Interest InterestHeader
 
typedef Data DataHeader
 
typedef Time TimeInterval
 
typedef std::deque< RttHistoryRttHistory_t
 

Functions

 NS_OBJECT_ENSURE_REGISTERED (ContentStore)
 
std::ostream & operator<< (std::ostream &os, const ContentStore &cs)
 
std::ostream & operator<< (std::ostream &os, const Fib &fib)
 
 NS_OBJECT_ENSURE_REGISTERED (ForwardingStrategy)
 
 NS_LOG_COMPONENT_DEFINE (ForwardingStrategy::GetLogName().c_str())
 
 NS_OBJECT_ENSURE_REGISTERED (AppFace)
 
std::ostream & operator<< (std::ostream &os, const Data &d)
 
 NS_OBJECT_ENSURE_REGISTERED (Face)
 
std::ostream & operator<< (std::ostream &os, const Face &face)
 
bool operator< (const Ptr< Face > &lhs, const Ptr< Face > &rhs)
 
 NS_OBJECT_ENSURE_REGISTERED (GlobalRouter)
 
bool operator== (const GlobalRouter::Incidency &a, const GlobalRouter::Incidency &b)
 
bool operator!= (const GlobalRouter::Incidency &a, const GlobalRouter::Incidency &b)
 
std::ostream & operator<< (std::ostream &os, const Interest &i)
 
 NS_OBJECT_ENSURE_REGISTERED (L3Protocol)
 
 NS_OBJECT_ENSURE_REGISTERED (NetDeviceFace)
 
 NS_OBJECT_ENSURE_REGISTERED (Pit)
 
std::ostream & operator<< (std::ostream &os, const Pit &pit)
 
static GlobalValue g_wireFormat ("ndn::WireFormat","Default wire format for ndnSIM. ndnSIM will be accepting packets ""in any supported packet formats, but if encoding requested, it will ""use default wire format to encode (0 for ndnSIM (default), 1 for CCNb)", IntegerValue(Wire::WIRE_FORMAT_NDNSIM), MakeIntegerChecker< int32_t >())
 
static uint32_t GetWireFormat ()
 
std::string PacketToBuffer (Ptr< const Packet > pkt)
 
Ptr< Packet > BufferToPacket (const std::string &buffer)
 
bool operator== (const Blob &a, const Blob &b)
 
bool operator< (const Blob &a, const Blob &b)
 
bool operator<= (const Blob &a, const Blob &b)
 
bool operator> (const Blob &a, const Blob &b)
 
bool operator>= (const Blob &a, const Blob &b)
 
std::ostream & operator<< (std::ostream &os, const Exclude &exclude)
 
 ATTRIBUTE_HELPER_CPP (Name)
 
std::ostream & operator<< (std::ostream &os, const Name &name)
 
std::istream & operator>> (std::istream &is, Name &name)
 
 ATTRIBUTE_HELPER_HEADER (Name)
 
 NS_OBJECT_ENSURE_REGISTERED (LimitsRate)
 
 NS_OBJECT_ENSURE_REGISTERED (LimitsWindow)
 
 NS_OBJECT_ENSURE_REGISTERED (RttEstimator)
 
 NS_OBJECT_ENSURE_REGISTERED (RttMeanDeviation)
 
template<class T >
static void NullDeleter (T *ptr)
 
template<class T >
static void NullDeleter (T *ptr)
 
std::ostream & operator<< (std::ostream &os, const CsTracer &tracer)
 Helper to dump the trace to an output stream.
 
template<class T >
static void NullDeleter (T *ptr)
 
template<class T >
static void NullDeleter (T *ptr)
 
std::ostream & operator<< (std::ostream &os, const L3Tracer &tracer)
 Helper to dump the trace to an output stream.
 
 NS_OBJECT_ENSURE_REGISTERED (App)
 
 NS_OBJECT_ENSURE_REGISTERED (ConsumerBatches)
 
 NS_OBJECT_ENSURE_REGISTERED (ConsumerCbr)
 
 NS_OBJECT_ENSURE_REGISTERED (ConsumerWindow)
 
 NS_OBJECT_ENSURE_REGISTERED (ConsumerZipfMandelbrot)
 
 NS_OBJECT_ENSURE_REGISTERED (Consumer)
 
 NS_OBJECT_ENSURE_REGISTERED (Producer)
 
 NS_OBJECT_ENSURE_REGISTERED (IpFaceStack)
 
static void ScheduledCreateTcp (Ptr< Node > node, Ipv4Address address, const std::string &prefix, int16_t metric)
 
static void ScheduledCreateUdp (Ptr< Node > node, Ipv4Address address, const std::string &prefix, int16_t metric)
 
 NS_OBJECT_ENSURE_REGISTERED (TcpFace)
 
 NS_OBJECT_ENSURE_REGISTERED (UdpFace)
 

Variables

static std::list< boost::tuple
< boost::shared_ptr
< std::ostream >, std::list
< Ptr< AppDelayTracer > > > > 
g_tracers
 
static std::list< boost::tuple
< boost::shared_ptr
< std::ostream >, std::list
< Ptr< CsTracer > > > > 
g_tracers
 
static std::list< boost::tuple
< boost::shared_ptr
< std::ostream >, std::list
< Ptr< L3AggregateTracer > > > > 
g_tracers
 
static std::list< boost::tuple
< boost::shared_ptr
< std::ostream >, std::list
< Ptr< L3RateTracer > > > > 
g_tracers
 
const double alpha = 0.8
 

Detailed Description

ndnSIM namespace