NetAnim problem - mmwave

300 views
Skip to first unread message

AleksandraL

unread,
Dec 28, 2016, 5:35:20 PM12/28/16
to ns-3-users

Hi,


I'm trying to build an animation from mmwave-tdma.cc example (attached).
I've done all the mandatory steps from nsnam.org:

  1. Ensure that your wscript includes the "netanim" module. Example as in: src/netanim/examples/wscript.
  2. Also include the header [#include "ns3/netanim-module.h"] in your test program
  3. Add the statement "AnimationInterface anim ("animation.xml");" before Simulator::Run()

but I get this error:


[aleksandra@localhost ns3-mmwave]$ sudo ./waf --run scratch/mmwave-tdma
Waf: Entering directory `/home/aleksandra/Documents/ns3-mmwave/build'
[ 930/2340] Compiling scratch/mmwave-tdma.cc
In file included from ./ns3/lte-spectrum-phy.h:42:0,
from ./ns3/lte-phy.h:36,
from ./ns3/lte-net-device.h:30,
from ./ns3/lte-ue-net-device.h:25,
from ./ns3/animation-interface.h:40,
from ./ns3/netanim-module.h:10,
from ../scratch/mmwave-tdma.cc:14:
./ns3/lte-harq-phy.h:39:8: error: redefinition of ‘struct ns3::HarqProcessInfoElement_t’
struct HarqProcessInfoElement_t
^~
In file included from ./ns3/mmwave-spectrum-phy.h:30:0,
from ./ns3/mmwave-phy.h:22,
from ./ns3/mmwave-net-device.h:18,
from ./ns3/mmwave-ue-net-device.h:12,
from ./ns3/mmwave-helper.h:14,
from ../scratch/mmwave-tdma.cc:7:
./ns3/mmwave-harq-phy.h:21:8: error: previous definition of ‘struct ns3::HarqProcessInfoElement_t’
struct HarqProcessInfoElement_t
^~

Waf: Leaving directory `/home/aleksandra/Documents/ns3-mmwave/build'
Build failed
-> task in 'mmwave-tdma' failed (exit status 1):
{task 139878128700752: cxx mmwave-tdma.cc -> mmwave-tdma.cc.1.o}
['/bin/g++', '-Wall', '-pthread', '-pthread', '-I.', '-I..', '-I/usr/include/gtk-2.0', '-I/usr/lib64/gtk-2.0/include', '-I/usr/include/pango-1.0', '-I/usr/include/atk-1.0', '-I/usr/include/cairo', '-I/usr/include/pixman-1', '-I/usr/include/libdrm', '-I/usr/include/gdk-pixbuf-2.0', '-I/usr/include/libpng16', '-I/usr/include/harfbuzz', '-I/usr/include/glib-2.0', '-I/usr/lib64/glib-2.0/include', '-I/usr/include/freetype2', '-I/usr/include/libxml2', '-DNS3_BUILD_PROFILE_DEBUG', '-DNS3_ASSERT_ENABLE', '-DNS3_LOG_ENABLE', '-DHAVE_SYS_IOCTL_H=1', '-DHAVE_IF_NETS_H=1', '-DHAVE_NET_ETHERNET_H=1', '-DHAVE_PACKET_H=1', '-DHAVE_IF_TUN_H=1', '-DHAVE_SQLITE3=1', '-DHAVE_GTK2=1', '-DHAVE_LIBXML2=1', '../scratch/mmwave-tdma.cc', '-c', '-o', '/home/aleksandra/Documents/ns3-mmwave/build/scratch/mmwave-tdma.cc.1.o']




I tried with mmwave-example.cc but I get the same error.



Please help :)

mmwave-tdma.cc

Konstantinos

unread,
Dec 28, 2016, 6:13:07 PM12/28/16
to ns-3-users
Hi,

The error you are getting has nothing to do with NetAnim or the way to visualize your scenario.
It is a standard C++ error ": error: redefinition of ‘struct ..." which if you search online you can find several links describing it

The error most probably comes from the mmwave modifications.

Regards
K

AleksandraL

unread,
Dec 29, 2016, 5:29:12 PM12/29/16
to ns-3-users
I left the idea of animation for now and just trying to get better understanding of mobility model.

I tried several scenarios with 2 enbs and 1 UE and the results are a bit confusing. Basically, for different scenarios I get the same data rates, but different SINRs?


Scenario 1: LOS, ENB1 position (0,0,0), ENB2 position (45,0,0) Data rate=3.08 Gbps, SINR=74.8 dB
Scenario 2: LOS, ENB1 position (0,0,0), ENB2 position (0,0,0) Data rate=3.08 Gbps, SINR=36.2 dB
Scenario 3: LOS, ENB1 position (0,0,0), ENB2 position (0,10,0) Data rate=3.08 Gbps, SINR=40.99 dB
Scenario 4: LOS, ENB1 position (0,0,0), ENB2 position (30,0,0) Data rate=3.08 Gbps, SINR=55.2 dB
Scenario 5: NLOS, ENB1 position (0,0,0), ENB2 position (30,0,0) Data rate=3.08 Gbps, SINR=34.58 dB


For all scenarios, UE speed is 20m/s, distmin=40m, distMax=45m and the script is mmwave-tdma.cc.


I am enclosing RxPacketTraces for all 4 scenarios as well as mmwave-tdma script for Scenario 1.

Could you please check?
mmwave-tdma.txt
RxPacketTrace_4.txt
RxPacketTrace_3.txt
RxPacketTrace_2.txt
RxPacketTrace_1.txt

Konstantinos

unread,
Dec 30, 2016, 4:39:34 AM12/30/16
to ns-3-users
Hi

mmWave module is not part of the main ns-3 code-base, hence not one supported by the ns-3 team.
If you have doupts about the results, I would suggest to contact the module developers/maintainers.

Regards
K

AleksandraL

unread,
Dec 30, 2016, 8:27:15 AM12/30/16
to ns-3-users
I have, and this is the response I've got. Could you please help me understand it?

Our active modulation and coding (AMC) scheme is based on the LTE, which selects the maximum CQI (maximum rate) for SINR above 20 dB. Here is a rough mapping between SINR and CQI sinr =[-6.1500,-4.3700,-2.3700,-0.4200,1.5300,3.4300,5.4600,7.2500,9.2800,11.1100,13.0000,14.9000,16.6400,18.4100,20.5400]; cqi = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]; Therefore, to observer different rate, you should make the receiver perceive SINR below 20 dB.

I should make some modifications at the receiver in order to get valid throughput values if the SINR is above 20 dB?

Konstantinos

unread,
Dec 30, 2016, 11:26:04 AM12/30/16
to ns-3-users
Hi,

I am not an expert on LTE, nor at AMC techniques, but from the reply you posted, I see that your SINR values are always above the 20.54dB, therefore you always get CQI 15 (the maximum).
There is no differentiation for the data rate. 

I do not know if there is a different AMC scheme for mmWAVE. Perhaps you have not configured your eNB appropriately, particularly the Rx power, or their distance. that's why you get such high SINR even in NLOS scenarios.

Regards
K.
Reply all
Reply to author
Forward
0 new messages