34 #include "ns3/boolean.h"
36 #include "ns3/ipv4-route.h"
37 #include "ns3/mesh-helper.h"
38 #include "ns3/simulator.h"
39 #include "ns3/double.h"
40 #include "ns3/uinteger.h"
41 #include "ns3/string.h"
42 #include "ns3/ipv4-address-helper.h"
44 #include "ns3/dsr-fs-header.h"
45 #include "ns3/dsr-option-header.h"
46 #include "ns3/dsr-rreq-table.h"
47 #include "ns3/dsr-rcache.h"
48 #include "ns3/dsr-rsendbuff.h"
49 #include "ns3/dsr-main-helper.h"
50 #include "ns3/dsr-helper.h"
84 const uint8_t*
data = buf.PeekData ();
108 std::vector<Ipv4Address> nodeList;
125 p->AddHeader (header);
126 p->RemoveAtStart (8);
129 uint32_t bytes = p->RemoveHeader (h2);
154 std::vector<Ipv4Address> nodeList;
166 p->AddHeader (header);
167 p->RemoveAtStart (8);
170 uint32_t bytes = p->RemoveHeader (h2);
194 std::vector<Ipv4Address> nodeList;
211 p->AddHeader (header);
212 p->RemoveAtStart (8);
215 uint32_t bytes = p->RemoveHeader (h2);
251 p->AddHeader (header);
252 p->RemoveAtStart (8);
254 uint32_t bytes = p->RemoveHeader (h2);
285 p->AddHeader (header);
286 p->RemoveAtStart (8);
287 p->AddHeader (header);
289 p->RemoveAtStart (8);
290 uint32_t bytes = p->RemoveHeader (h2);
325 p->AddHeader (header);
326 p->RemoveAtStart (8);
327 p->AddHeader (header);
329 p->RemoveAtStart (8);
330 uint32_t bytes = p->RemoveHeader (h2);
354 std::vector<Ipv4Address> ip;
373 std::vector<Ipv4Address> ip2;
454 Simulator::Destroy ();
uint32_t GetSize()
Number of entries.
uint32_t m_reqNo
Route request number.
void AddAtStart(uint32_t start)
Ipv4Address GetDestination() const
void SetDestination(Ipv4Address d)
Time GetSendBufferTimeout() const
Return the entry lifetime in the queue.
automatically resized byte buffer
IP_VECTOR GetVector() const
#define NS_TEST_EXPECT_MSG_EQ(actual, limit, msg)
Test that an actual and expected (limit) value are equal and report if not.
This test suite implements a Unit Test.
void DropPacketWithDst(Ipv4Address dst)
Remove all packets with destination IP address dst.
void AddTestCase(TestCase *testCase, enum TestDuration duration)
Add an individual child TestCase to this test suite.
void SetSendBufferTimeout(Time t)
Set the entry lifetime in the queue.
bool Find(Ipv4Address dst)
Check if a packet with destination dst exists in the queue.
bool LookupRoute(Ipv4Address id, DsrRouteCacheEntry &rt)
Lookup route cache entry with destination address dst.
Time GetExpireTime() const
Every class exported by the ns3 library is enclosed in the ns3 namespace.
bool Enqueue(DsrSendBuffEntry &entry)
Push entry in queue, if there is no entry with the same packet and destination address in queue...
bool DeleteRoute(Ipv4Address dst)
Delete the route with certain destination address.
virtual void DoRun(void)
Implementation to actually run this TestCase.
Ipv4 addresses are stored in host order in this class.
void SetMaxQueueLen(uint32_t len)
Set the maximum queue length.
DsrTestSuite g_dsrTestSuite
virtual void DoRun(void)
Implementation to actually run this TestCase.
void AddDsrOption(DsrOptionHeader const &option)
Serialize the option, prepending pad1 or padn option as necessary.
void SetVector(IP_VECTOR v)
uint32_t GetMaxQueueLen() const
Return the maximum queue length.
Time Seconds(double value)
Construct a Time in the indicated unit.
void SetExpireTime(Time exp)
bool AddRoute(DsrRouteCacheEntry &rt)
Add route cache entry if it doesn't yet exist in route cache.
The route request table entries.
virtual void DoRun(void)
Implementation to actually run this TestCase.
bool Dequeue(Ipv4Address dst, DsrSendBuffEntry &entry)
Return first found (the earliest) entry for the given destination.