Ns3 Projects for B.E/B.Tech M.E/M.Tech PhD Scholars.  Phone-Number:9688312542   E-mail:ns3simulation@gmail.com

LTE Simulation NS3

NS3 is the best choice for simulating LTE Projects.LTE is a 4G wireless communications standard developed by the 3rd Generation Partnership Project (3GPP) that’s designed to provide up to 10x the speeds of 3G networks for mobile devices.We provide research projects on LTE Simulation using NS3 Network Simulator.

LTE Facts:

  • It’s the successor technology not only of UMTS but also of CDMA 200.
  • It supports flexible carrier bandwidth, from 1.4 MHz up to 20 MHz as well as both FDD and TDD.
  • LTE is important because it will bring up to 50 times performance improvement and much better spectral efficiency to cellular networks
  • All LTE devices have to support MIMO transmissions, which allow the base station to transmit several data streams over the same carrier simultaneously.
  • QoS mechanism have been standardized on all interfaces to ensure that the requirement of voice calls for a constant delay and bandwidth, can still be met when capacity limits are reached.

Architecture of LTE:

LTE-Architecture

Parameters considered in LTE Projects:

  • Coverage
  • Peak data rate in LTE
  • Qos
  • Latency
  • Peak data rate in LTE
  • Modulation schemes etc.

Sample code for LTE:


#include "ns3/core-module.h"
#include "ns3/network-module.h"
#include "ns3/mobility-module.h"
#include "ns3/lte-module.h"
#include "ns3/config-store.h"
#include <ns3/string.h>
#include <fstream>
#include <ns3/buildings-helper.h>
using namespace ns3;
int main (int argc, char *argv[])
{
CommandLine cmd;
cmd.Parse (argc, argv);
ns3::ConfigStore::Mode=Save --ns3::ConfigStore::FileFormat=RawText" --run src/lte/examples/lena-first-sim
ns3::ConfigStore::Mode=Load --ns3::ConfigStore::FileFormat=RawText" --run src/lte/examples/lena-first-sim
Ptr<LteHelper> lteHelper = CreateObject<LteHelper> ();
lteHelper->SetAttribute ("FadingModel", StringValue ("ns3::TraceFadingLossModel"));
std::ifstream ifTraceFile;
ifTraceFile.open ("../../src/lte/model/fading-traces/fading_trace_EPA_3kmph.fad", std::ifstream::in);
if (ifTraceFile.good ())
{
lteHelper->SetFadingModelAttribute ("TraceFilename", StringValue ("../../src/lte/model/fading-traces/fading_trace_EPA_3kmph.fad"));
}
else
{
lteHelper->SetFadingModelAttribute ("TraceFilename", StringValue ("src/lte/model/fading-traces/fading_trace_EPA_3kmph.fad"));
}
lteHelper->SetFadingModelAttribute ("TraceLength", TimeValue (Seconds (10.0)));
lteHelper->SetFadingModelAttribute ("SamplesNum", UintegerValue (10000));
lteHelper->SetFadingModelAttribute ("WindowSize", TimeValue (Seconds (0.5)));
lteHelper->SetFadingModelAttribute ("RbNum", UintegerValue (100));
NodeContainer enbNodes;
NodeContainer ueNodes;
enbNodes.Create (1);
ueNodes.Create (1);
MobilityHelper mobility;
mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel");
mobility.Install (enbNodes);
BuildingsHelper::Install (enbNodes);
mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel");
mobility.Install (ueNodes);
BuildingsHelper::Install (ueNodes);
NetDeviceContainer enbDevs;
NetDeviceContainer ueDevs;
enbDevs = lteHelper->InstallEnbDevice (enbNodes);
ueDevs = lteHelper->InstallUeDevice (ueNodes);
lteHelper->Attach (ueDevs, enbDevs.Get (0));
enum EpsBearer::Qci q = EpsBearer::GBR_CONV_VOICE;
EpsBearer bearer (q);
lteHelper->ActivateDataRadioBearer (ueDevs, bearer);
Simulator::Stop (Seconds (0.005));
Simulator::Run ();
Simulator::Destroy ();
return 0;
}