21 #include "ns3/aodv-neighbor.h" 
   22 #include "ns3/aodv-packet.h" 
   23 #include "ns3/aodv-rqueue.h" 
   24 #include "ns3/aodv-rtable.h" 
   25 #include "ns3/ipv4-route.h" 
   36   virtual void DoRun ();
 
  112     uint32_t bytes = p->RemoveHeader (h2);
 
  159     uint32_t bytes = p->RemoveHeader (h2);
 
  205     uint32_t bytes = p->RemoveHeader (h2);
 
  251     uint32_t bytes = p->RemoveHeader (h2);
 
  299   virtual void DoRun ();
 
  455     std::vector<Ipv4Address> prec;
 
  510     std::map<Ipv4Address, uint32_t> unreachable;
 
  513     unreachable.insert (std::make_pair (
Ipv4Address (
"4.3.2.1"), 3));
 
UnicastForwardCallback GetUnicastForwardCallback() const 
 
uint32_t RemoveHeader(Header &header)
Deserialize and remove the header from the internal buffer. 
 
maintain list of active neighbors 
 
void InvalidateRoutesWithDst(std::map< Ipv4Address, uint32_t > const &unreachable)
Update routing entries with this destinations as follows: 
 
Unit test for AODV routing table entry. 
 
bool MarkLinkAsUnidirectional(Ipv4Address neighbor, Time blacklistTimeout)
Mark entry as unidirectional (e.g. 
 
void SetOutputDevice(Ptr< NetDevice > dev)
 
SocketErrno
Enumeration of the possible errors returned by a socket. 
 
AODV route request queue. 
 
bool LookupRoute(Ipv4Address dst, RoutingTableEntry &rt)
Lookup routing table entry with destination address dst. 
 
Ipv4Header GetIpv4Header() const 
 
virtual void DoRun()
Implementation to actually run this TestCase. 
 
void Unicast2(Ptr< Ipv4Route > route, Ptr< const Packet > packet, const Ipv4Header &header)
 
bool Update(RoutingTableEntry &rt)
Update routing table. 
 
void Error(Ptr< const Packet >, const Ipv4Header &, Socket::SocketErrno)
 
void SetMaxQueueLen(uint32_t len)
 
static void Run(void)
Run the simulation. 
 
Time MilliSeconds(uint64_t value)
Construct a Time in the indicated unit. 
 
void SetUnicastForwardCallback(UnicastForwardCallback ucb)
 
#define NS_TEST_EXPECT_MSG_EQ(actual, limit, msg)
Test that an actual and expected (limit) value are equal and report if not. 
 
Ptr< NetDevice > GetOutputDevice() const 
 
void Error2(Ptr< const Packet >, const Ipv4Header &, Socket::SocketErrno)
 
void GetPrecursors(std::vector< Ipv4Address > &prec) const 
Inserts precursors in vector prec if they does not yet exist in vector. 
 
virtual void DoRun()
Implementation to actually run this TestCase. 
 
This test suite implements a Unit Test. 
 
void SetExpireTime(Time exp)
 
void SetLifeTime(Time lt)
 
void SetBalcklistTimeout(Time t)
 
ns3::aodv::AodvTestSuite g_aodvTestSuite
 
bool Enqueue(QueueEntry &entry)
Push entry in queue, if there is no entry with the same packet and destination address in queue...
 
Unit test for RequestQueue. 
 
bool InsertPrecursor(Ipv4Address id)
Insert precursor in precursor list if it doesn't yet exist in the list. 
 
void SetRreqCnt(uint8_t n)
 
bool IsPrecursorListEmpty() const 
Check that precursor list empty. 
 
virtual void DoRun()
Implementation to actually run this TestCase. 
 
void Error(Ptr< const Packet >, const Ipv4Header &, Socket::SocketErrno)
 
void SetErrorCallback(ErrorCallback ecb)
 
static EventId Schedule(Time const &delay, MEM mem_ptr, OBJ obj)
Schedule an event to expire after delay. 
 
void AddTestCase(TestCase *testCase, enum TestDuration duration)
Add an individual child TestCase to this test suite. 
 
Time GetQueueTimeout() const 
 
bool SetEntryState(Ipv4Address dst, RouteFlags state)
Set routing table entry flags. 
 
bool LookupPrecursor(Ipv4Address id)
Lookup precursor by address. 
 
void SetIpv4Header(Ipv4Header h)
 
Ipv4Address GetNextHop() const 
 
virtual void DoRun()
Implementation to actually run this TestCase. 
 
bool DeletePrecursor(Ipv4Address id)
Delete precursor. 
 
bool IsNeighbor(Ipv4Address addr)
Check that node with address addr is neighbor. 
 
void SetValidSeqNo(bool s)
 
Callback< R > MakeCallback(R(T::*memPtr)(void), OBJ objPtr)
 
Time GetBlacklistTimeout() const 
 
uint32_t GetMaxQueueLen() const 
 
Ptr< const Packet > GetPacket() const 
 
Ipv4InterfaceAddress GetInterface() const 
 
Time GetBadLinkLifetime() const 
 
void DropPacketWithDst(Ipv4Address dst)
Remove all packets with destination IP address dst. 
 
void DeleteAllPrecursors()
Delete all precursors. 
 
static void Destroy(void)
Execute the events scheduled with ScheduleDestroy(). 
 
void GetListOfDestinationWithNextHop(Ipv4Address nextHop, std::map< Ipv4Address, uint32_t > &unreachable)
Lookup routing entries with next hop Address dst and not empty list of precursors. 
 
void SetInterface(Ipv4InterfaceAddress iface)
 
Unit test for AODV routing table. 
 
Every class exported by the ns3 library is enclosed in the ns3 namespace. 
 
void SetFlag(RouteFlags flag)
 
void Invalidate(Time badLinkLifetime)
Mark entry as "down" (i.e. disable it) 
 
bool IsEqual(const CallbackBase &other) const 
Equality test. 
 
ErrorCallback GetErrorCallback() const 
 
uint32_t GetSize()
Number of entries. 
 
void SetBadLinkLifetime(Time t)
 
void Update(Ipv4Address addr, Time expire)
Update expire time for entry with address addr, if it exists, else add new entry. ...
 
void Unicast(Ptr< Ipv4Route > route, Ptr< const Packet > packet, const Ipv4Header &header)
 
The Routing table used by AODV protocol. 
 
Time GetExpireTime() const 
 
void SetUnidirectional(bool u)
 
Time GetExpireTime(Ipv4Address addr)
Return expire time for neighbor node with address addr, if exists, else return 0. ...
 
void Unicast(Ptr< Ipv4Route > route, Ptr< const Packet > packet, const Ipv4Header &header)
 
void SetHop(uint16_t hop)
 
Ipv4 addresses are stored in host order in this class. 
 
virtual void DoRun()
Implementation to actually run this TestCase. 
 
a class to store IPv4 address information on an interface 
 
uint32_t GetSeqNo() const 
 
void SetQueueTimeout(Time t)
 
bool AddRoute(RoutingTableEntry &r)
Add routing table entry if it doesn't yet exist in routing table. 
 
void Handler(Ipv4Address addr)
 
Time Seconds(double value)
Construct a Time in the indicated unit. 
 
void SetCallback(Callback< void, Ipv4Address > cb)
Handle link failure callback. 
 
void SetNextHop(Ipv4Address nextHop)
 
Ptr< Ipv4Route > GetRoute() const 
 
bool Find(Ipv4Address dst)
Finds whether a packet with destination dst exists in the queue. 
 
bool Dequeue(Ipv4Address dst, QueueEntry &entry)
Return first found (the earliest) entry for given destination. 
 
Unit test for AODV routing table entry. 
 
bool IsUnidirectional() const 
 
bool DeleteRoute(Ipv4Address dst)
Delete routing table entry with destination address dst, if it exists. 
 
RouteFlags GetFlag() const 
 
Ipv4Address GetDestination() const 
 
uint8_t GetRreqCnt() const 
 
void AddHeader(const Header &header)
Add header to this packet. 
 
bool GetValidSeqNo() const