A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
lena-x2-handover-measures.cc File Reference
#include "ns3/core-module.h"
#include "ns3/network-module.h"
#include "ns3/internet-module.h"
#include "ns3/mobility-module.h"
#include "ns3/lte-module.h"
#include "ns3/applications-module.h"
#include "ns3/point-to-point-module.h"
#include "ns3/config-store-module.h"
+ Include dependency graph for lena-x2-handover-measures.cc:

Go to the source code of this file.

Functions

int main (int argc, char *argv[])
 Sample simulation script for an automatic X2-based handover based on the RSRQ measures. More...
 
void NotifyConnectionEstablishedEnb (std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti)
 
void NotifyConnectionEstablishedUe (std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti)
 
void NotifyHandoverEndOkEnb (std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti)
 
void NotifyHandoverEndOkUe (std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti)
 
void NotifyHandoverStartEnb (std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti, uint16_t targetCellId)
 
void NotifyHandoverStartUe (std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti, uint16_t targetCellId)
 

Function Documentation

int main ( int  argc,
char *  argv[] 
)

Sample simulation script for an automatic X2-based handover based on the RSRQ measures.

It instantiates two eNodeB, attaches one UE to the 'source' eNB. The UE moves between both eNBs, it reports measures to the serving eNB and the 'source' (serving) eNB triggers the handover of the UE towards the 'target' eNB when it considers it is a better eNB.

Definition at line 125 of file lena-x2-handover-measures.cc.

References ns3::LteHelper::ActivateDedicatedEpsBearer(), ns3::ListPositionAllocator::Add(), ns3::EpcTft::Add(), ns3::ApplicationContainer::Add(), ns3::Ipv4StaticRouting::AddNetworkRouteTo(), ns3::CommandLine::AddValue(), ns3::LteHelper::AddX2Interface(), ns3::Ipv4AddressHelper::Assign(), ns3::LteHelper::Attach(), first::clientApps, ns3::Config::Connect(), ns3::NodeContainer::Create(), ns3::Simulator::Destroy(), ns3::LteHelper::EnableMacTraces(), ns3::LteHelper::EnablePdcpTraces(), ns3::LteHelper::EnablePhyTraces(), ns3::LteHelper::EnableRlcTraces(), ns3::NetDeviceContainer::Get(), ns3::NodeContainer::Get(), ns3::Ipv4InterfaceContainer::GetAddress(), ns3::Ipv4Address::GetAny(), ns3::NodeContainer::GetN(), ns3::Object::GetObject(), ns3::LteHelper::GetPdcpStats(), ns3::LteHelper::GetRlcStats(), ns3::Ipv4StaticRoutingHelper::GetStaticRouting(), ns3::UniformRandomVariable::GetValue(), ns3::PacketSinkHelper::Install(), ns3::PointToPointHelper::Install(), ns3::InternetStackHelper::Install(), ns3::UdpClientHelper::Install(), ns3::MobilityHelper::Install(), ns3::LteHelper::InstallEnbDevice(), ns3::LteHelper::InstallUeDevice(), ns3::EpcTft::PacketFilter::localPortStart, ns3::MakeCallback(), ns3::EpsBearer::NGBR_VIDEO_TCP_DEFAULT, NotifyConnectionEstablishedEnb(), NotifyConnectionEstablishedUe(), NotifyHandoverEndOkEnb(), NotifyHandoverEndOkUe(), NotifyHandoverStartEnb(), NotifyHandoverStartUe(), NS_LOG_LOGIC, ns3::CommandLine::Parse(), ns3::EpcTft::PacketFilter::remotePortEnd, ns3::EpcTft::PacketFilter::remotePortStart, ns3::Simulator::Run(), first::serverApps, ns3::ObjectBase::SetAttribute(), ns3::Ipv4AddressHelper::SetBase(), ns3::PointToPointHelper::SetChannelAttribute(), ns3::Config::SetDefault(), ns3::Ipv4StaticRouting::SetDefaultRoute(), ns3::PointToPointHelper::SetDeviceAttribute(), ns3::LteHelper::SetEpcHelper(), ns3::LteHelper::SetHandoverAlgorithmAttribute(), ns3::LteHelper::SetHandoverAlgorithmType(), ns3::MobilityHelper::SetMobilityModel(), SetPosition(), ns3::MobilityHelper::SetPositionAllocator(), ns3::LteHelper::SetSchedulerType(), ns3::olsr::SetVelocity(), ns3::ApplicationContainer::Start(), startTime, and ns3::Simulator::Stop().

void NotifyConnectionEstablishedEnb ( std::string  context,
uint64_t  imsi,
uint16_t  cellid,
uint16_t  rnti 
)

Definition at line 76 of file lena-x2-handover-measures.cc.

Referenced by main().

+ Here is the caller graph for this function:

void NotifyConnectionEstablishedUe ( std::string  context,
uint64_t  imsi,
uint16_t  cellid,
uint16_t  rnti 
)

Definition at line 35 of file lena-x2-handover-measures.cc.

Referenced by main().

+ Here is the caller graph for this function:

void NotifyHandoverEndOkEnb ( std::string  context,
uint64_t  imsi,
uint16_t  cellid,
uint16_t  rnti 
)

Definition at line 104 of file lena-x2-handover-measures.cc.

Referenced by main().

+ Here is the caller graph for this function:

void NotifyHandoverEndOkUe ( std::string  context,
uint64_t  imsi,
uint16_t  cellid,
uint16_t  rnti 
)

Definition at line 63 of file lena-x2-handover-measures.cc.

Referenced by main().

+ Here is the caller graph for this function:

void NotifyHandoverStartEnb ( std::string  context,
uint64_t  imsi,
uint16_t  cellid,
uint16_t  rnti,
uint16_t  targetCellId 
)

Definition at line 89 of file lena-x2-handover-measures.cc.

Referenced by main().

+ Here is the caller graph for this function:

void NotifyHandoverStartUe ( std::string  context,
uint64_t  imsi,
uint16_t  cellid,
uint16_t  rnti,
uint16_t  targetCellId 
)

Definition at line 48 of file lena-x2-handover-measures.cc.

Referenced by main().

+ Here is the caller graph for this function: