Strange LTE EPC behaviour - (delay related)

1,158 views
Skip to first unread message

Konstantinos

unread,
Jan 8, 2013, 5:19:50 AM1/8/13
to ns-3-...@googlegroups.com
Hi all,

I am simulating the lena-simple-epc scenario (with 1 UE) and varying the interval of packets. I use ns-3.15 and the only modification in the code is the addition of the FlowMonitor to get the statistics for delay. 
I want to see the effect of the traffic load on the delay.

My results suggest that for the Uplink the delay is increased when the load is lower, which contradicts with what I expected.
For downlink it is always the same. I guess that's because I only have one UE.

These are my results:
Interval (msec): 1 , 10, 100, 1000 (Note: the interval for UDP client is the time to wait until the next transmission, so smaller interval means more traffic).
Avg. Delay: 0.017748 , 0.0219315, 0.021495, 0.0221295 (the same results for both PF and RR scheduler) 

How could such behaviour be explained? 

I attach the source just in case, but as I mentioned the only change is the addition of FlowMonitor.

Regards,
Konstantinos

lena-simple-epc.cc

Nicola Baldo

unread,
Jan 25, 2013, 12:40:51 PM1/25/13
to ns-3-...@googlegroups.com
One possible explanation could be that (IIRC) the LTE model of ns-3.15 only used PUSCH to measure UL channel quality, hence with less frequent data the channel state might become stale and the scheduler might fall back to a low MCS. But it's just a guess, you would need to do a bit of testing to confirm it. Anyway, the difference in the delay is quite small.

costa

unread,
Jul 28, 2013, 10:40:19 AM7/28/13
to ns-3-...@googlegroups.com
Hi,

I tried to run your code but got the answer below

Did not you get that answer?

$ ./waf --run scratch/lena-simple-epc
Waf: Entering directory `/home/jmicosta/tarballs/ns-allinone-3.16/ns-3.16/build'
[ 720/1820] cxx: scratch/lena-simple-epc.cc -> build/scratch/lena-simple-epc.cc.1.o
[ 722/1820] cxx: scratch/subdir/lena-simple-epc.cc -> build/scratch/subdir/lena-simple-epc.cc.3.o
../scratch/lena-simple-epc.cc: In function ‘int main(int, char**)’:
../scratch/lena-simple-epc.cc:200:62: error: suggest parentheses around comparison in operand of ‘&’ [-Werror=parentheses]
../scratch/lena-simple-epc.cc:207:62: error: suggest parentheses around comparison in operand of ‘&’ [-Werror=parentheses]
cc1plus: all warnings being treated as errors
Waf: Leaving directory `/home/jmicosta/tarballs/ns-allinone-3.16/ns-3.16/build'
Build failed
 -> task in 'lena-simple-epc' failed (exit status 1):
        {task 2142302188: cxx lena-simple-epc.cc -> lena-simple-epc.cc.1.o}
['/usr/bin/g++', '-O0', '-ggdb', '-g3', '-Wall', '-Werror', '-Wno-error=deprecated-declarations', '-fstrict-aliasing', '-Wstrict-aliasing', '-Ibuild', '-I.', '-I.', '-I/home/jmicosta/tarballs/ns-allinone-3.16', '-DNS3_ASSERT_ENABLE', '-DNS3_LOG_ENABLE', '../scratch/lena-simple-epc.cc', '-c', '-o', 'scratch/lena-simple-epc.cc.1.o']
Aborted (core dumped)

BR
Costa

Konstantinos

unread,
Jul 28, 2013, 11:39:04 AM7/28/13
to ns-3-...@googlegroups.com
Hi,

You may have a different version of compiler that complaints for warnings (unless you have changed something in the code).
As the compiler suggests, there is something in line 200 and 207 concerning the operator '&'. Perhaps if you change it to '&&' it will not complain.

Regards,
K.

costa

unread,
Jul 28, 2013, 1:59:56 PM7/28/13
to ns-3-...@googlegroups.com
Hi,

I am using ns-3.16 after your suggestion to replace the "&" with "&&" error was clean.

I expect after running the script have a file called "EPC_test.flowmon" 

Command used to run the script ./waf --run "scratch/lena-simple.epc --EnableFlowMonitor=1"

After running the script, and the file (EPC_test.flowmon) does not exist, detect that line 219 was commented after removed the comment from this line but the file is still not generated

line 219:  monitor->SerializeToXmlFile("EPC_test.flowmon", true, true);

BR,
Costa

Konstantinos

unread,
Jul 28, 2013, 2:12:59 PM7/28/13
to ns-3-...@googlegroups.com
Where do you look for this file? It should be in the ns-3 base directory (where you run the ./waf command) not inside the scratch.

joao costa

unread,
Jul 28, 2013, 2:49:17 PM7/28/13
to ns-3-...@googlegroups.com
Yes that is what is expected because this directory also pcap files.



2013/7/28 Konstantinos <dinos.k...@gmail.com>
--
You received this message because you are subscribed to a topic in the Google Groups "ns-3-users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/ns-3-users/Z2pgY6tbJgM/unsubscribe.
To unsubscribe from this group and all its topics, 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 http://groups.google.com/group/ns-3-users.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

costa

unread,
Jul 28, 2013, 3:21:33 PM7/28/13
to ns-3-...@googlegroups.com
Hi Konstantinos,

When you run this script to get the file EPC_test.flowmon?

BR,
Costa


2013/7/28 Konstantinos <dinos.k...@gmail.com>
To unsubscribe from this group and all its topics, send an email to ns-3-users+unsubscribe@googlegroups.com.

Konstantinos

unread,
Jul 29, 2013, 5:40:43 AM7/29/13
to ns-3-...@googlegroups.com
Yes, I get the xml file.


2013/7/28 Konstantinos <dinos.k...@gmail.com>
To unsubscribe from this group and all its topics, send an email to ns-3-users+...@googlegroups.com.

indra kyubi

unread,
Dec 11, 2014, 2:57:56 AM12/11/14
to ns-3-...@googlegroups.com
Hi sir, what can i do analize for traffic video on the ns3 with parameter troughput, delay and jitter?
thanks

senthil kumar

unread,
Jan 8, 2015, 11:23:21 PM1/8/15
to ns-3-...@googlegroups.com

hai i tried to run your code but i got these error and i am using ns-3.21

so can you help me ?

ubuntu@mn:~/tarballs/ns-allinone-3.21/ns-3.21$ sudo ./waf
sudo: unable to resolve host mn
Waf: Entering directory `/home/ubuntu/tarballs/ns-allinone-3.21/ns-3.21/build'
[2048/2410] cxx: scratch/lte-flowepc.cc -> build/scratch/lte-flowepc.cc.10.o
../scratch/lte-flowepc.cc: In function ‘int main(int, char**)’:
../scratch/lte-flowepc.cc:135:14: error: ‘class ns3::LteHelper’ has no member named ‘ActivateEpsBearer’
   lteHelper->ActivateEpsBearer (ueLteDevs, EpsBearer (EpsBearer::NGBR_VIDEO_TCP_DEFAULT), EpcTft::Default ());
              ^
In file included from ./ns3/object-factory.h:24:0,
                 from ./ns3/simulator.h:30,
                 from ./ns3/lte-helper.h:25,
                 from ../scratch/lte-flowepc.cc:21:
./ns3/object.h: In instantiation of ‘ns3::Ptr<T> ns3::CreateObject() [with T = ns3::EpcHelper]’:
../scratch/lte-flowepc.cc:61:56:   required from here
./ns3/object.h:423:37: error: cannot allocate an object of abstract type ‘ns3::EpcHelper’
   return CompleteConstruct (new T ());
                                     ^
In file included from ../scratch/lte-flowepc.cc:22:0:
./ns3/epc-helper.h:48:7: note:   because the following virtual functions are pure within ‘ns3::EpcHelper’:
 class EpcHelper : public Object
       ^
./ns3/epc-helper.h:75:16: note:         virtual void ns3::EpcHelper::AddEnb(ns3::Ptr<ns3::Node>, ns3::Ptr<ns3::NetDevice>, uint16_t)
   virtual void AddEnb (Ptr<Node> enbNode, Ptr<NetDevice> lteEnbNetDevice, uint16_t cellId) = 0;
                ^
./ns3/epc-helper.h:83:16: note:         virtual void ns3::EpcHelper::AddUe(ns3::Ptr<ns3::NetDevice>, uint64_t)
   virtual void AddUe (Ptr<NetDevice> ueLteDevice, uint64_t imsi) = 0;
                ^
./ns3/epc-helper.h:91:16: note:         virtual void ns3::EpcHelper::AddX2Interface(ns3::Ptr<ns3::Node>, ns3::Ptr<ns3::Node>)
   virtual void AddX2Interface (Ptr<Node> enbNode1, Ptr<Node> enbNode2) = 0;
                ^
./ns3/epc-helper.h:104:16: note:        virtual void ns3::EpcHelper::ActivateEpsBearer(ns3::Ptr<ns3::NetDevice>, uint64_t, ns3::Ptr<ns3::EpcTft>, ns3::EpsBearer)
   virtual void ActivateEpsBearer (Ptr<NetDevice> ueLteDevice, uint64_t imsi, Ptr<EpcTft> tft, EpsBearer bearer) = 0;
                ^
./ns3/epc-helper.h:115:21: note:        virtual ns3::Ptr<ns3::Node> ns3::EpcHelper::GetPgwNode()
   virtual Ptr<Node> GetPgwNode () = 0;
                     ^
./ns3/epc-helper.h:124:34: note:        virtual ns3::Ipv4InterfaceContainer ns3::EpcHelper::AssignUeIpv4Address(ns3::NetDeviceContainer)
   virtual Ipv4InterfaceContainer AssignUeIpv4Address (NetDeviceContainer ueDevices) = 0;
                                  ^
./ns3/epc-helper.h:131:23: note:        virtual ns3::Ipv4Address ns3::EpcHelper::GetUeDefaultGatewayAddress()
   virtual Ipv4Address GetUeDefaultGatewayAddress () = 0;
                       ^
In file included from ./ns3/object-factory.h:24:0,
                 from ./ns3/simulator.h:30,
                 from ./ns3/lte-helper.h:25,
                 from ../scratch/lte-flowepc.cc:21:
./ns3/object.h: In function ‘ns3::Ptr<T> ns3::CreateObject() [with T = ns3::EpcH
./ns3/object.h:424:1: error: control reaches end of non-void function [-Werror=r
 }
 ^
cc1plus: all warnings being treated as errors
Waf: Leaving directory `/home/ubuntu/tarballs/ns-allinone-3.21/ns-3.21/build'
Build failed
 -> task in 'lte-flowepc' failed (exit status 1):
        {task 140099676461200: cxx lte-flowepc.cc -> lte-flowepc.cc.10.o}
['/usr/bin/g++', '-O0', '-ggdb', '-g3', '-Wall', '-Werror', '-Wno-error=deprecat                                                                                                             aliasing', '-fwrapv', '-fstack-protector', '-fno-strict-aliasing', '-I.', '-I..'                                                                                                             86_64-linux-gnu/gtk-2.0/include', '-I/usr/include/atk-1.0', '-I/usr/include/cair                                                                                                             de/freetype2', '-I/usr/include/glib-2.0', '-I/usr/lib/x86_64-linux-gnu/glib-2.0/                                                                                                             bxml2', '-I/usr/include/python2.7', '-I/usr/include/x86_64-linux-gnu/python2.7',                                                                                                             T_H=1', '-DHAVE_PACKET_H=1', '-DHAVE_MPI=1', '-DHAVE_SQLITE3=1', '-DHAVE_IF_TUN_                                                                                                             c.cc', '-c', '-o', 'scratch/lte-flowepc.cc.10.o']

Tommaso Pecorella

unread,
Jan 9, 2015, 12:53:05 AM1/9/15
to ns-3-...@googlegroups.com
Hi,

this has been said many (too many) times.

Do Not Use a Script Built for Old ns-3 Releases on a Newer Release.

The script you are trying to compile is calling a function that was deprecated and then removed from the lte module.

T.

senthil kumar

unread,
Jan 9, 2015, 1:09:43 AM1/9/15
to ns-3-...@googlegroups.com
Hai sir,

I have solved that error.. and it was build successfully .. but when put scratch run command i got thses type of error?  

what is that mean for? 

ubuntu@mn:~/tarballs/ns-allinone-3.21/ns-3.21$ sudo ./waf --run scratch/lte-flowepc
sudo: unable to resolve host mn
Waf: Entering directory `/home/ubuntu/tarballs/ns-allinone-3.21/ns-3.21/build'
Waf: Leaving directory `/home/ubuntu/tarballs/ns-allinone-3.21/ns-3.21/build'
'build' finished successfully (2.522s)
assert failed. cond="ueIpv4 != 0", msg="UEs need to have IPv4 installed before EPS bearers can be activated", file=../src/lte/helper/point-to-point-epc-helper.cc, line=305
terminate called without an active exception
Command ['/home/ubuntu/tarballs/ns-allinone-3.21/ns-3.21/build/scratch/lte-flowepc'] terminated with signal SIGIOT. Run it under a debugger to get more information (./waf --run <program> --command-template="gdb --args %s <args>").


can you help me?

senthil kumar

unread,
Jan 13, 2015, 9:30:28 PM1/13/15
to ns-3-...@googlegroups.com
Hai dear Konstantinos,

I have solved those error..Thanks for your response..


i need one helpe sir can you please helpe me..

this is my scenario how can i do this?

I want to do Congestion problem in LTE networks using OpenFlow methods..

i need to do Load balancing among the LTE Gateway and Base Station due to the large number of UE devices.

so i need to solve this load balancing issues using Openflow to do flow control..

can anyone have some ideas for my scenario?

do you have any examples code for this?

i need to use LTE and OpenFlow module,  can anyone help me?

which examples script i have to take?

On Friday, 9 January 2015 17:05:54 UTC+8, Konstantinos wrote:
The problem is the same as before... you are using an script written for an older ns-3 release.

msg="UEs need to have IPv4 installed before EPS bearers can be activated"
this means you need to install the IPv4 stack on the UEs before you activate EPS bearers. 
Default EPS bearer is activated when you 'attach' a UE to the eNB, so it is just a re-ordering issue. 

Regards,
K.

Zinmar Myo

unread,
Jan 16, 2015, 2:22:01 AM1/16/15
to ns-3-...@googlegroups.com
Dear Senthil,
I have the same problem as you and I use ns-3.21. Mr Tommaso said that do not use script build for ns older version on the newer version and you said that you can solve this.
I am a beginner for ns3 lena and so let me know the way you have solved. I don't know how can I remove script build of older version.
looking forward your nice reply;
thank you for see my complex message

senthil kumar

unread,
Jan 17, 2015, 10:19:47 AM1/17/15
to ns-3-...@googlegroups.com
Hai dear ,

you want my codes?

Zinmar Myo

unread,
Jan 20, 2015, 4:53:58 AM1/20/15
to ns-3-...@googlegroups.com
Dear senthil,
 yes,  I want if possible
 thanks
best wishes

Konstantinos

unread,
Jan 9, 2015, 4:05:54 AM1/9/15
to ns-3-...@googlegroups.com
The problem is the same as before... you are using an script written for an older ns-3 release.

msg="UEs need to have IPv4 installed before EPS bearers can be activated"
this means you need to install the IPv4 stack on the UEs before you activate EPS bearers. 
Default EPS bearer is activated when you 'attach' a UE to the eNB, so it is just a re-ordering issue. 

Regards,
K.

On Friday, January 9, 2015 at 6:09:43 AM UTC, senthil kumar wrote:
Message has been deleted

rajesh chintha

unread,
Dec 8, 2016, 2:04:30 AM12/8/16
to ns-3-users
Thanks Konstantinos, it helped me
Reply all
Reply to author
Forward
0 new messages