A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
HwmpDoRfRegressionTest Class Reference

This is a test for intermediate reply and saving routing information about neighbour. More...

#include <hwmp-target-flags-regression.h>

+ Inheritance diagram for HwmpDoRfRegressionTest:
+ Collaboration diagram for HwmpDoRfRegressionTest:

Public Member Functions

 HwmpDoRfRegressionTest ()
 
virtual ~HwmpDoRfRegressionTest ()
 
void CheckResults ()
 
virtual void DoRun ()
 Implementation to actually run this TestCase. More...
 
- Public Member Functions inherited from ns3::TestCase
virtual ~TestCase ()
 Destructor. More...
 

Private Member Functions

void CreateDevices ()
 
void CreateNodes ()
 
void InstallApplications ()
 
void ResetPosition ()
 

Private Attributes

Ipv4InterfaceContainer m_interfaces
 
NodeContainerm_nodes
 
Time m_time
 Simulation time. More...
 

Additional Inherited Members

- Public Types inherited from ns3::TestCase
enum  TestDuration { QUICK = 1, EXTENSIVE = 2, TAKES_FOREVER = 3 }
 How long the test takes to execute. More...
 
- Protected Member Functions inherited from ns3::TestCase
 TestCase (std::string name)
 
void AddTestCase (TestCase *testCase) NS_DEPRECATED
 Add an individual child TestCase case to this TestCase. More...
 
void AddTestCase (TestCase *testCase, enum TestDuration duration)
 Add an individual child TestCase to this test suite. More...
 
std::string CreateDataDirFilename (std::string filename)
 
std::string CreateTempDirFilename (std::string filename)
 
bool GetErrorStatus (void) const NS_DEPRECATED
 
std::string GetName (void) const
 
bool IsStatusFailure (void) const
 
bool IsStatusSuccess (void) const
 
bool MustAssertOnFailure (void) const
 
bool MustContinueOnFailure (void) const
 
void ReportTestFailure (std::string cond, std::string actual, std::string limit, std::string message, std::string file, int32_t line)
 
void SetDataDir (std::string directory)
 

Detailed Description

This is a test for intermediate reply and saving routing information about neighbour.

4 stations and 3 UDP ping streams are initiated.

*  <-----------|----------->   Broadcast frame
*              |----------->|  Unicast frame
*            10          11            12           13
*             |            |<-----------|----------->|             ARP request (12 asks who has 10)
*             |            |            |<-----------|-----------> ARP request
*             |<-----------|----------->|            |             ARP request
* <-----------|----------->|            |            |             PREQ
*             |<-----------|----------->|            |             PREQ
*             |            |<-----------|            |             PREP
*             |<-----------|            |            |             PREP
*             |----------->|            |            |             ARP reply
*             |            |----------->|            |             ARP REPLY
*             |            |<-----------|            |             Data
*             |............|............|............|
*             |<-----------|----------->|            |             ARP request (11 asks who has 10)
*             |............|............|............|
*             |----------->|            |            |             ARP reply
*                  ^ Note, that this arp reply goes without route
*                  discovery procedure, because route is known from
*                  previous PREQ/PREP exchange
*             |<-----------|            |            |             DATA
*             |............|............|............|
* <-----------|----------->|            |            |             ARP request (10 asks who has 13)
*             |............|............|............|
*             |            |            |<-----------|-----------> PREQ (13 asks about 10) DO=0 RF=1
*             |            |            |----------->|             PREP (intermediate reply - 12 knows about 10)
*             |            |<-----------|----------->|             PREQ DO=1 RF=0
*             |............|............|............|
*             |----------->|            |            |             PREP
*             |            |----------->|            |             PREP
*             |            |            |----------->|             PREP
* 

Definition at line 67 of file hwmp-target-flags-regression.h.

Constructor & Destructor Documentation

HwmpDoRfRegressionTest::HwmpDoRfRegressionTest ( )

Definition at line 45 of file hwmp-target-flags-regression.cc.

HwmpDoRfRegressionTest::~HwmpDoRfRegressionTest ( )
virtual

Definition at line 51 of file hwmp-target-flags-regression.cc.

References m_nodes.

Member Function Documentation

void HwmpDoRfRegressionTest::CheckResults ( )

Definition at line 154 of file hwmp-target-flags-regression.cc.

References NS_PCAP_TEST_EXPECT_EQ, and PREFIX.

Referenced by DoRun().

+ Here is the caller graph for this function:

void HwmpDoRfRegressionTest::CreateNodes ( )
private

Definition at line 73 of file hwmp-target-flags-regression.cc.

References ns3::NodeContainer::Create(), ns3::MobilityHelper::Install(), m_nodes, ns3::MobilityHelper::SetMobilityModel(), and ns3::MobilityHelper::SetPositionAllocator().

Referenced by DoRun().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void HwmpDoRfRegressionTest::DoRun ( )
virtual

Implementation to actually run this TestCase.

Subclasses should override this method to conduct their tests.

Implements ns3::TestCase.

Definition at line 56 of file hwmp-target-flags-regression.cc.

References CheckResults(), CreateDevices(), CreateNodes(), InstallApplications(), m_nodes, and m_time.

+ Here is the call graph for this function:

void HwmpDoRfRegressionTest::InstallApplications ( )
private
void HwmpDoRfRegressionTest::ResetPosition ( )
private

Member Data Documentation

Ipv4InterfaceContainer HwmpDoRfRegressionTest::m_interfaces
private

Definition at line 81 of file hwmp-target-flags-regression.h.

Referenced by CreateDevices(), and InstallApplications().

NodeContainer* HwmpDoRfRegressionTest::m_nodes
private
Internal: It is important to have pointers here

Definition at line 78 of file hwmp-target-flags-regression.h.

Referenced by CreateDevices(), CreateNodes(), DoRun(), InstallApplications(), and ~HwmpDoRfRegressionTest().

Time HwmpDoRfRegressionTest::m_time
private

Simulation time.

Definition at line 80 of file hwmp-target-flags-regression.h.

Referenced by DoRun(), and InstallApplications().


The documentation for this class was generated from the following files: