69 #include "ns3/abort.h" 
   70 #include "ns3/core-module.h" 
   71 #include "ns3/internet-module.h" 
   72 #include "ns3/network-module.h" 
   73 #include "ns3/fd-net-device-module.h" 
   74 #include "ns3/applications-module.h" 
   75 #include "ns3/ipv4-static-routing-helper.h" 
   76 #include "ns3/ipv4-list-routing-helper.h" 
   89 main (
int argc, 
char *argv[])
 
   93   std::string deviceName (
"tap0");
 
   94   std::string remote (
"192.0.43.10"); 
 
   95   std::string network (
"1.2.3.4");
 
   96   std::string mask (
"255.255.255.0");
 
   97   std::string pi (
"no");
 
  104   cmd.
AddValue (
"deviceName", 
"Device name", deviceName);
 
  105   cmd.
AddValue (
"remote", 
"Remote IP address (dotted decimal only please)", remote);
 
  106   cmd.
AddValue (
"tapNetwork", 
"Network address to assign the TAP device IP address (dotted decimal only please)", network);
 
  107   cmd.
AddValue (
"tapMask", 
"Network mask for configure the TAP device (dotted decimal only please)", mask);
 
  108   cmd.
AddValue (
"modePi", 
"If 'yes' a PI header will be added to the traffic traversing the device(flag IFF_NOPI will be unset).", pi);
 
  109   cmd.
Parse (argc, argv);
 
  111   NS_ABORT_MSG_IF (network == 
"1.2.3.4", 
"You must change the local IP address before running this example");
 
  117   bool modePi = ( pi == 
"yes" ? 
true : 
false);
 
  146   addresses.
SetBase (tapNetwork, tapMask);
 
  164   internetStackHelper.
Install (node);
 
  172   uint32_t 
interface = ipv4->AddInterface (device);
 
  177   ipv4->
SetUp (interface);
 
  215   helper.
EnablePcap (
"fd-tap-ping", device, 
true);
 
uint32_t AddApplication(Ptr< Application > application)
 
void SetStopTime(Time stop)
Specify application stop time. 
 
keep track of time values and allow control of global simulation resolution 
 
virtual NetDeviceContainer Install(Ptr< Node > node) const 
 
void SetDefaultRoute(Ipv4Address nextHop, uint32_t interface, uint32_t metric=0)
Add a default route to the static routing table. 
 
hold variables of type string 
 
Ptr< NetDevice > Get(uint32_t i) const 
Get the Ptr<NetDevice> stored in this container at a given index. 
 
a class to represent an Ipv4 address mask 
 
aggregate IP/TCP/UDP functionality to existing Nodes. 
 
build a set of FdNetDevice objects attached to a virtua TAP network interface 
 
void Connect(std::string path, const CallbackBase &cb)
 
static void Add(std::string name, Ptr< Object > object)
Add the association between the string "name" and the Ptr<Object> obj. 
 
static void PingRtt(std::string context, Time rtt)
 
void SetTapIpv4Address(Ipv4Address address)
 
virtual void SetUp(uint32_t interface)=0
 
holds a vector of ns3::NetDevice pointers 
 
Callback< R > MakeCallback(R(T::*memPtr)(void), OBJ objPtr)
 
static void Bind(std::string name, const AttributeValue &value)
 
Parse command-line arguments. 
 
static void Destroy(void)
 
Access to the Ipv4 forwarding table, interfaces, and configuration. 
 
void SetDeviceName(std::string deviceName)
 
void Install(std::string nodeName) const 
 
#define NS_LOG_UNCOND(msg)
 
hold objects of type ns3::Ipv4Address 
 
void SetTapIpv4Mask(Ipv4Mask mask)
 
Ipv4 addresses are stored in host order in this class. 
 
NS_LOG_COMPONENT_DEFINE("PacketLossCounter")
 
Ptr< Ipv4StaticRouting > GetStaticRouting(Ptr< Ipv4 > ipv4) const 
 
int main(int argc, char *argv[])
 
a class to store IPv4 address information on an interface 
 
Helper class that adds ns3::Ipv4StaticRouting objects. 
 
void AddValue(const std::string &name, const std::string &help, T &value)
 
virtual void SetMetric(uint32_t interface, uint16_t metric)=0
 
virtual bool AddAddress(uint32_t interface, Ipv4InterfaceAddress address)=0
 
void Parse(int argc, char *argv[])
 
A helper class to make life easier while doing simple IPv4 address assignment in scripts. 
 
void EnablePcap(std::string prefix, Ptr< NetDevice > nd, bool promiscuous=false, bool explicitFilename=false)
Enable pcap output the indicated net device. 
 
#define NS_ABORT_MSG_IF(cond, msg)
Abnormal program termination if cond is true. 
 
void SetAttribute(std::string name, const AttributeValue &value)
 
Ptr< T > GetObject(void) const 
 
void SetStartTime(Time start)
Specify application start time. 
 
void SetBase(Ipv4Address network, Ipv4Mask mask, Ipv4Address base="0.0.0.1")
Set the base network number, network mask and base address.