A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::LteX2HandoverTestCase Class Reference
+ Inheritance diagram for ns3::LteX2HandoverTestCase:
+ Collaboration diagram for ns3::LteX2HandoverTestCase:

Classes

struct  BearerData
struct  UeData

Public Member Functions

 LteX2HandoverTestCase (uint32_t nUes, uint32_t nDedicatedBearers, std::list< HandoverEvent > handoverEventList, std::string handoverEventListName, bool useUdp, std::string schedulerType, bool admitHo, bool useIdealRrc)
- Public Member Functions inherited from ns3::TestCase
virtual ~TestCase ()

Private Member Functions

void CheckConnected (Ptr< NetDevice > ueDevice, Ptr< NetDevice > enbDevice)
void CheckStatsAWhileAfterHandover (uint32_t ueIndex)
virtual void DoRun (void)
void SaveStatsAfterHandover (uint32_t ueIndex)

Static Private Member Functions

static std::string BuildNameString (uint32_t nUes, uint32_t nDedicatedBearers, std::string handoverEventListName, bool useUdp, std::string schedulerType, bool admitHo, bool useIdealRrc)

Private Attributes

bool m_admitHo
bool m_epc
Ptr< EpcHelperm_epcHelper
std::list< HandoverEventm_handoverEventList
std::string m_handoverEventListName
Ptr< LteHelperm_lteHelper
const Time m_maxHoDuration
uint32_t m_nDedicatedBearers
uint32_t m_nUes
std::string m_schedulerType
const Time m_statsDuration
std::vector< UeDatam_ueDataVector
bool m_useIdealRrc
bool m_useUdp

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 test case to this test suite.
void AddTestCase (TestCase *testCase, enum TestDuration duration)
 Add an individual test case to this test suite.
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

Definition at line 43 of file test-lte-x2-handover.cc.

Constructor & Destructor Documentation

ns3::LteX2HandoverTestCase::LteX2HandoverTestCase ( uint32_t  nUes,
uint32_t  nDedicatedBearers,
std::list< HandoverEvent handoverEventList,
std::string  handoverEventListName,
bool  useUdp,
std::string  schedulerType,
bool  admitHo,
bool  useIdealRrc 
)
Parameters
nUesnumber of UEs in the test
nDedicatedBearersnumber of bearers to be activated per UE
handoverEventList
handoverEventListName
useUdptrue if UDP is to be used, false if TCP is to be used
Returns

Definition at line 123 of file test-lte-x2-handover.cc.

Member Function Documentation

std::string ns3::LteX2HandoverTestCase::BuildNameString ( uint32_t  nUes,
uint32_t  nDedicatedBearers,
std::string  handoverEventListName,
bool  useUdp,
std::string  schedulerType,
bool  admitHo,
bool  useIdealRrc 
)
staticprivate

Definition at line 103 of file test-lte-x2-handover.cc.

Referenced by DoRun().

+ Here is the caller graph for this function:

void ns3::LteX2HandoverTestCase::CheckStatsAWhileAfterHandover ( uint32_t  ueIndex)
private

Definition at line 512 of file test-lte-x2-handover.cc.

References ns3::Time::GetSeconds(), m_statsDuration, m_ueDataVector, and NS_TEST_ASSERT_MSG_GT.

Referenced by DoRun().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::LteX2HandoverTestCase::DoRun ( void  )
privatevirtual

Definition at line 140 of file test-lte-x2-handover.cc.

References ns3::LteHelper::ActivateDataRadioBearer(), ns3::LteHelper::ActivateDedicatedEpsBearer(), ns3::EpcTft::Add(), ns3::ApplicationContainer::Add(), ns3::Ipv4StaticRouting::AddNetworkRouteTo(), ns3::LteHelper::AddX2Interface(), ns3::Ipv4AddressHelper::Assign(), ns3::LteHelper::AssignStreams(), ns3::EpcHelper::AssignUeIpv4Address(), ns3::LteHelper::Attach(), ns3::LteX2HandoverTestCase::UeData::bearerDataList, ns3::NetDeviceContainer::Begin(), BuildNameString(), CheckConnected(), CheckStatsAWhileAfterHandover(), ns3::NodeContainer::Create(), ns3::Simulator::Destroy(), ns3::LteX2HandoverTestCase::BearerData::dlSink, ns3::LteHelper::EnablePdcpTraces(), ns3::LteHelper::EnableRlcTraces(), ns3::NetDeviceContainer::End(), ns3::ApplicationContainer::Get(), ns3::NetDeviceContainer::Get(), ns3::NodeContainer::Get(), ns3::Ipv4InterfaceContainer::GetAddress(), ns3::Ipv4Address::GetAny(), ns3::NetDeviceContainer::GetN(), ns3::NodeContainer::GetN(), ns3::Object::GetObject(), ns3::EpcHelper::GetPgwNode(), ns3::LteHelper::GetRlcStats(), ns3::Ipv4StaticRoutingHelper::GetStaticRouting(), ns3::EpcHelper::GetUeDefaultGatewayAddress(), ns3::UniformRandomVariable::GetValue(), ns3::LteHelper::HandoverRequest(), ns3::PacketSinkHelper::Install(), ns3::BulkSendHelper::Install(), ns3::PointToPointHelper::Install(), ns3::InternetStackHelper::Install(), ns3::UdpClientHelper::Install(), ns3::MobilityHelper::Install(), ns3::LteHelper::InstallEnbDevice(), ns3::LteHelper::InstallUeDevice(), ns3::EpcTft::PacketFilter::localPortEnd, ns3::EpcTft::PacketFilter::localPortStart, m_admitHo, m_epc, m_epcHelper, m_handoverEventList, m_handoverEventListName, m_lteHelper, m_maxHoDuration, m_nDedicatedBearers, m_nUes, m_schedulerType, m_statsDuration, m_ueDataVector, m_useIdealRrc, m_useUdp, ns3::MilliSeconds(), ns3::EpsBearer::NGBR_VIDEO_TCP_DEFAULT, NS_LOG_FUNCTION, ns3::EpcTft::PacketFilter::remotePortEnd, ns3::EpcTft::PacketFilter::remotePortStart, ns3::Config::Reset(), ns3::TestCase::Run(), SaveStatsAfterHandover(), ns3::Simulator::Schedule(), ns3::Seconds(), ns3::BulkSendHelper::SetAttribute(), ns3::ObjectBase::SetAttribute(), ns3::Ipv4AddressHelper::SetBase(), ns3::PointToPointHelper::SetChannelAttribute(), ns3::Config::SetDefault(), ns3::Ipv4StaticRouting::SetDefaultRoute(), ns3::PointToPointHelper::SetDeviceAttribute(), ns3::LteHelper::SetEpcHelper(), ns3::MobilityHelper::SetMobilityModel(), ns3::MobilityHelper::SetPositionAllocator(), ns3::LteHelper::SetSchedulerType(), ns3::RandomVariableStream::SetStream(), ns3::ApplicationContainer::Start(), ns3::Simulator::Stop(), and ns3::LteX2HandoverTestCase::BearerData::ulSink.

void ns3::LteX2HandoverTestCase::SaveStatsAfterHandover ( uint32_t  ueIndex)
private

Definition at line 500 of file test-lte-x2-handover.cc.

References m_ueDataVector.

Referenced by DoRun().

+ Here is the caller graph for this function:

Member Data Documentation

bool ns3::LteX2HandoverTestCase::m_admitHo
private

Definition at line 72 of file test-lte-x2-handover.cc.

Referenced by DoRun().

bool ns3::LteX2HandoverTestCase::m_epc
private

Definition at line 69 of file test-lte-x2-handover.cc.

Referenced by DoRun().

Ptr<EpcHelper> ns3::LteX2HandoverTestCase::m_epcHelper
private

Definition at line 75 of file test-lte-x2-handover.cc.

Referenced by DoRun().

std::list<HandoverEvent> ns3::LteX2HandoverTestCase::m_handoverEventList
private

Definition at line 67 of file test-lte-x2-handover.cc.

Referenced by DoRun().

std::string ns3::LteX2HandoverTestCase::m_handoverEventListName
private

Definition at line 68 of file test-lte-x2-handover.cc.

Referenced by DoRun().

Ptr<LteHelper> ns3::LteX2HandoverTestCase::m_lteHelper
private

Definition at line 74 of file test-lte-x2-handover.cc.

Referenced by DoRun().

const Time ns3::LteX2HandoverTestCase::m_maxHoDuration
private

Definition at line 97 of file test-lte-x2-handover.cc.

Referenced by DoRun().

uint32_t ns3::LteX2HandoverTestCase::m_nDedicatedBearers
private

Definition at line 66 of file test-lte-x2-handover.cc.

Referenced by CheckConnected(), and DoRun().

uint32_t ns3::LteX2HandoverTestCase::m_nUes
private

Definition at line 65 of file test-lte-x2-handover.cc.

Referenced by DoRun().

std::string ns3::LteX2HandoverTestCase::m_schedulerType
private

Definition at line 71 of file test-lte-x2-handover.cc.

Referenced by DoRun().

const Time ns3::LteX2HandoverTestCase::m_statsDuration
private

Definition at line 98 of file test-lte-x2-handover.cc.

Referenced by CheckStatsAWhileAfterHandover(), and DoRun().

std::vector<UeData> ns3::LteX2HandoverTestCase::m_ueDataVector
private
bool ns3::LteX2HandoverTestCase::m_useIdealRrc
private

Definition at line 73 of file test-lte-x2-handover.cc.

Referenced by DoRun().

bool ns3::LteX2HandoverTestCase::m_useUdp
private

Definition at line 70 of file test-lte-x2-handover.cc.

Referenced by DoRun().


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