AMC in Multi UE case (with ListPositionAllocator)

70 views
Skip to first unread message

Ramakrishnan

unread,
Jan 3, 2018, 12:42:35 AM1/3/18
to ns-3-users
Hi, 

I am modifying the example "lena-simple-epc.cc" to make it a single eNB, multi UE scenario. 
I further want to distribute the UEs (without mobility) in the cell and hence am using the "ListPositionAllocator" to allocate the coordinates of eNB and UEs and set their position in the cell. 
eNodeB is at (0,0) and the range of cell is assumed to be 1.8KM (high value assumed to check whether MCS is lower for the cell-edge UEs). I am not setting the position of PGW and remote host. 

Somehow I am getting samples of MCS 28 for UEs that are at a distance from eNB. Any help here? I somehow suspect the position allocation of UEs and how it is installed in mobility object.. Any help would be highly appreciated.  

I am using the following configurations for UE and eNB:
  lteHelper->SetSchedulerType("ns3::PfFfMacScheduler");  
  lteHelper->SetEnbDeviceAttribute ("DlEarfcn", UintegerValue (100));
  lteHelper->SetEnbDeviceAttribute ("UlEarfcn", UintegerValue (100 + 18000));
  Config::SetDefault ("ns3::LteHelper::PathlossModel", StringValue ("ns3::OkumuraHataPropagationLossModel"));
  Config::SetDefault ("ns3::LteEnbNetDevice::UlBandwidth", UintegerValue(100));
  Config::SetDefault ("ns3::LteEnbNetDevice::DlBandwidth", UintegerValue(100));
  Config::SetDefault ("ns3::LteEnbRrc::DefaultTransmissionMode", UintegerValue (2));
  Config::SetDefault ("ns3::LteUePhy::TxPower", DoubleValue (23));
  Config::SetDefault ("ns3::LteEnbPhy::TxPower", DoubleValue (43));
  Config::SetDefault ("ns3::LteAmc::AmcModel", EnumValue (LteAmc::PiroEW2010));
  lteHelper->SetEnbAntennaModelType ("ns3::CosineAntennaModel");
  lteHelper->SetEnbAntennaModelAttribute ("Orientation", DoubleValue (-45.0));
  lteHelper->SetEnbAntennaModelAttribute ("Beamwidth", DoubleValue (60));
  lteHelper->SetEnbAntennaModelAttribute ("MaxGain", DoubleValue (14.0)); 

Thanks, 
Rama

***************CODE for setting the position of the eNB and UEs***************
  NodeContainer ueNodes;
  NodeContainer enbNodes;

  enbNodes.Create(numberOfeNBs);   // numberOfeNBs = 1
  ueNodes.Create(numberOfUEs);      // numberOfUEs = 10   --> This creates 10 UE NodeContainers

  MobilityHelper mobility;
  mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel");
  Ptr<ListPositionAllocator> positionAlloc = CreateObject<ListPositionAllocator> ();

   // Position of eNBs
   Vector v (0, 0, eNBHeight);    //eNBHeight = 30
   positionAlloc->Add (v);
   mobility.SetPositionAllocator (positionAlloc);
   mobility.Install (enbNodes);

   // Position of UEs attached to eNB
   for (uint32_t i = 0; i < numberOfeNBs; i++) //Works for 1 eNB only. Need to review for more
   {
          Ptr<UniformRandomVariable> posX = CreateObject<UniformRandomVariable> ();
          posX->SetAttribute ("Min", DoubleValue (500));
          posX->SetAttribute ("Max", DoubleValue (range));
      
    Ptr<UniformRandomVariable> posY = CreateObject<UniformRandomVariable> ();
          posY->SetAttribute ("Min", DoubleValue (500));
          posY->SetAttribute ("Max", DoubleValue (range));

          positionAlloc = CreateObject<ListPositionAllocator> ();
          for (uint32_t j = 0; j < numberOfUEs; j++)
          {
double xcoordinate = posX->GetValue ();
double ycoordinate = posY->GetValue ();
printf("UE %d XCoordinate %f YCoordinate %f\n", j, xcoordinate, ycoordinate); 
              positionAlloc->Add (Vector (xcoordinate, ycoordinate, ueHeight));                              //ueHeight = 1.5
              mobility.SetPositionAllocator (positionAlloc);
          }
          mobility.Install (ueNodes);       // Is there an issue here?
    }

Tommaso Pecorella

unread,
Jan 3, 2018, 7:03:15 PM1/3/18
to ns-3-users
Hi,

I don't see any evident issue in your code. Try posting the actual numbers you get.

T.

Ramakrishnan S

unread,
Jan 4, 2018, 1:09:13 AM1/4/18
to ns-3-...@googlegroups.com
Thanks Tommaso for your revert. 

Enclosing the "DlMacStats.txt" and "DlRsrpSinrStats.txt". 

Further I tried to use NetAmin to check for the distribution of UE - I enclose the NetAnim output (truncated XML and screenshot).
I actually got following warning during the compilation (or execution) - node 0 and node 1 are PGW and Remote Host whose position are not set. 
I see in NetAnim output that they are placed at some arbitrary location close to (0,0). I presume this is OK!
AnimationInterface WARNING:Node:0 Does not have a mobility model. Use SetConstantPosition if it is stationary
AnimationInterface WARNING:Node:1 Does not have a mobility model. Use SetConstantPosition if it is stationary

One additional input about the traffic profile - I am setting the UDP traffic at 10ms (Inter packet interval) and with default size of 1024 bytes for each UE (it may be a bit high for edge users). 

I see quite a few samples of 100 PRBs (single UE in TTI) with MCS28 and 2 layers in the logs for UEs that are more than 500m away from BTS. Is that expected scheduler behaviour? 

regards
Rama

--
Posting to this group should follow these guidelines https://www.nsnam.org/wiki/Ns-3-users-guidelines-for-posting
---
You received this message because you are subscribed to the Google Groups "ns-3-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ns-3-users+unsubscribe@googlegroups.com.
To post to this group, send email to ns-3-...@googlegroups.com.
Visit this group at https://groups.google.com/group/ns-3-users.
For more options, visit https://groups.google.com/d/optout.



--
-----------------------------------------
S. Ramakrishnan

DlMacStats.txt
NetAmin-screenshot.jpeg
DlRsrpSinrStats.txt
lena-simple-epc-multiple.xml

Tommaso Pecorella

unread,
Jan 4, 2018, 5:58:24 PM1/4/18
to ns-3-users
Hi,

the two "error" messages are not important, because they're just a warning for te two wired nodes. They're placed at 0,0,0 but it's not a big issue.

About the results... yes, they're strange, but they could be also normal. I'll forward the thread to the LTE maintainers for a check.

Cheers,

T.
Rama

To unsubscribe from this group and stop receiving emails from it, send an email to ns-3-users+...@googlegroups.com.

To post to this group, send email to ns-3-...@googlegroups.com.
Visit this group at https://groups.google.com/group/ns-3-users.
For more options, visit https://groups.google.com/d/optout.



--
-----------------------------------------
S. Ramakrishnan

Ramakrishnan S

unread,
Jan 10, 2018, 1:31:09 AM1/10/18
to ns-3-...@googlegroups.com
Hi Tommaso, 

Just wanted to follow up whether the LTE team able to have a look at this?

Thanks, 
Rama

To unsubscribe from this group and stop receiving emails from it, send an email to ns-3-users+unsubscribe@googlegroups.com.

To post to this group, send email to ns-3-...@googlegroups.com.
Visit this group at https://groups.google.com/group/ns-3-users.
For more options, visit https://groups.google.com/d/optout.



--
-----------------------------------------
S. Ramakrishnan

Reply all
Reply to author
Forward
0 new messages