[LENA] Access to the EPS Radiobearer Transmission Queue Size

32 views
Skip to first unread message

Hamed Samie

unread,
Jul 26, 2016, 9:03:37 AM7/26/16
to ns-3-users
Hi experts,

I am interested to have access to the Transmission Queue Size of a EPS radio bearer. I already asked a question similarly to this before and as Marco explained me the Queue size is not in MAC layer  and is in RLC layer  (https://groups.google.com/forum/#!searchin/ns-3-users/hamed/ns-3-users/xprX1DzDS1A/W46lEsrZCgAJ).

But as I am really new in NS-3, I was wondering anybody can help me to make this access easily? For example we take the Lena-Simple.ccp as the reference to work. The radio bearer is defined in the RED color. So I want to have the access to "txQueueSize" variable.

I appreciate your help
Cheers
Hamed

#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/buildings-helper.h>
//#include "ns3/gtk-config-store.h"

using namespace ns3;

int main (int argc, char *argv[])
{   
  CommandLine cmd;
  cmd.Parse (argc, argv);
   
  ConfigStore inputConfig;
  inputConfig.ConfigureDefaults ();

  // Parse again so you can override default values from the command line
  cmd.Parse (argc, argv);

  Ptr<LteHelper> lteHelper = CreateObject<LteHelper> ();

  // Uncomment to enable logging
  //  lteHelper->EnableLogComponents ();
  //lteHelper->EnableMacTraces ();
  lteHelper->EnableRlcTraces ();

  // Create Nodes: eNodeB and UE
  NodeContainer enbNodes;
  NodeContainer ueNodes;
  enbNodes.Create (1);
  ueNodes.Create (1);

  // Install Mobility Model
  MobilityHelper mobility;
  mobility.SetMobilityModel ("ns3::
ConstantPositionMobilityModel");
  mobility.Install (enbNodes);
  BuildingsHelper::Install (enbNodes);
  mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel");
  mobility.Install (ueNodes);
  BuildingsHelper::Install (ueNodes);

  // Create Devices and install them in the Nodes (eNB and UE)
  NetDeviceContainer enbDevs;
  NetDeviceContainer ueDevs;
  // Default scheduler is PF, uncomment to use RR
  //lteHelper->SetSchedulerType ("ns3::RrFfMacScheduler");

  enbDevs = lteHelper->InstallEnbDevice (enbNodes);
  ueDevs = lteHelper->InstallUeDevice (ueNodes);

  // Attach a UE to a eNB
  lteHelper->Attach (ueDevs, enbDevs.Get (0));

  // Activate a data radio bearer
  enum EpsBearer::Qci q = EpsBearer::GBR_CONV_VOICE;
  EpsBearer bearer (q);
  lteHelper->ActivateDataRadioBearer (ueDevs, bearer);

  lteHelper->EnableTraces ();

  Simulator::Stop (Seconds (150.05));

  Simulator::Run ();

  Simulator::Destroy ();
  return 0;
}

Konstantinos

unread,
Jul 26, 2016, 9:11:39 AM7/26/16
to ns-3-users
Hi Hamed,

As far as I understand it, Marco's reply in your other query applies here as well.
To access the Queue you need to look at the RLC layer.

Please in the future attach the code as a file, not inline with your message.

Regards,
K.

Hamed

unread,
Jul 26, 2016, 9:39:40 AM7/26/16
to ns-3-users

Thanks Konstantinos for your reply. I will attach the file next time .

I am working on that but the exact code (line) is hard for me to write and this is why I wrote the question.

Cheers
Hamed

Hamed

unread,
Aug 23, 2016, 7:59:27 PM8/23/16
to ns-3-users
Dear Konstantinos,

After working on this issue, I updated my question. I appreciate if you can look at that (https://groups.google.com/forum/#!topic/ns-3-users/sV1-pIpkF3w)

Thanks

Hamed

On Tuesday, July 26, 2016 at 3:11:39 PM UTC+2, Konstantinos wrote:
Reply all
Reply to author
Forward
0 new messages