Interference helper in ns-3.9

259 views
Skip to first unread message

Marteen Frissung

unread,
Aug 24, 2010, 6:14:14 AM8/24/10
to ns-3-users
Hi all,

I've downloaded ns-3.9 and have got some problems with the
InterferenceHelper class.
I observed that several changes have occured and especially regarding
the CalculateNoiseInterferenceW() method. However, I can't figure out
why these changes have
occured.
When I run some scripts of myself, I get this error:
assert failed. cond="current >= previous", file=../src/devices/wifi/
interference-helper.cc, line=545
terminate called without an active exception
which comes from the CalculatePer() method. This should mean that the
current NiChange time is smaller than the previous NiChange time but I
can't know why. I'm sure this is due to the changes in the
CalculateNoiseInterferenceW() method...

If anyone knows about this, some help will be gratefully welcome :)

Marteen

Pavel Boyko

unread,
Aug 24, 2010, 7:13:41 AM8/24/10
to ns-3-...@googlegroups.com
Hi, Marteen,

On Tue, Aug 24, 2010 at 2:14 PM, Marteen Frissung <m.fri...@gmail.com> wrote:
> I've downloaded ns-3.9 and have got some problems with the
> InterferenceHelper class.
> I observed that several changes have occured and especially regarding
> the CalculateNoiseInterferenceW() method. However, I can't figure out
> why these changes have
> occured.

InterferenceHelper was optimized for better runtime performance.

> When I run some scripts of myself, I get this error:
> assert failed. cond="current >= previous", file=../src/devices/wifi/
> interference-helper.cc, line=545
> terminate called without an active exception
> which comes from the CalculatePer() method. This should mean that the
> current NiChange time is smaller than the previous NiChange time but I
> can't know why. I'm sure this is due to the changes in the
> CalculateNoiseInterferenceW() method...

This looks like a bug, can you reproduce it using the simplest
possible test case? Please open a bug.

Pavel

Paolo Tagliani

unread,
Aug 24, 2010, 8:24:37 AM8/24/10
to ns-3-users
I have a question about the new InterferenceHelper. I'm developing a
new protocol and I use a modified function of Calculateper(). The ni
vector is the same as the old ni generated by the old
CalculateNoiseInterferenceW?
Thanks

Paolo

On 24 Ago, 13:13, Pavel Boyko <pavel.bo...@gmail.com> wrote:
>   Hi, Marteen,
>

Kirill And

unread,
Aug 24, 2010, 9:47:35 AM8/24/10
to ns-3-...@googlegroups.com
Hi!

The main reason of changing InterferenceHelper was to keep sorted
array of noise-interference changes instead of list of unsorted
events.

2010/8/24 Paolo Tagliani <pablos...@gmail.com>:


> I have a question about the new InterferenceHelper. I'm developing a
> new protocol and I use a modified function of Calculateper(). The ni
> vector is the same as the old ni generated by the old
> CalculateNoiseInterferenceW?


NiChanges returned by CalculateNoiseInterfernceW present a
"interference-noise profile" of a given packet, so it must be the
same, because, otherwise, packet will not be received correctly.


> Thanks
>
> Paolo
>
> On 24 Ago, 13:13, Pavel Boyko <pavel.bo...@gmail.com> wrote:
>>   Hi, Marteen,
>>
>> On Tue, Aug 24, 2010 at 2:14 PM, Marteen Frissung <m.friss...@gmail.com> wrote:
>> > I've downloaded ns-3.9 and have got some problems with the
>> > InterferenceHelper class.
>> > I observed that several changes have occured and especially regarding
>> > the CalculateNoiseInterferenceW() method. However, I can't figure out
>> > why these changes have
>> > occured.
>>
>>   InterferenceHelper was optimized for better runtime performance.
>>
>> > When I run some scripts of myself, I get this error:
>> > assert failed. cond="current >= previous", file=../src/devices/wifi/
>> > interference-helper.cc, line=545
>> > terminate called without an active exception
>> > which comes from the CalculatePer() method. This should mean that the
>> > current NiChange time is smaller than the previous NiChange time but I
>> > can't know why. I'm sure this is due to the changes in the
>> > CalculateNoiseInterferenceW() method...
>>
>>   This looks like a bug, can you reproduce it using the simplest
>> possible test case? Please open a bug.
>>
>>   Pavel
>


And could you, please, generate a scenario which reproduces this bug?


> --
> You received this message because you are subscribed to the Google Groups "ns-3-users" group.
> To post to this group, send email to ns-3-...@googlegroups.com.
> To unsubscribe from this group, send email to ns-3-users+...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/ns-3-users?hl=en.
>
>

--
Regards, Kirill Andreev
Wireless Software R&D Group,
IITP RAS

Quincy

unread,
Sep 9, 2010, 9:30:48 PM9/9/10
to ns-3-users
> When I run some scripts of myself, I get this error:
> assert failed. cond="current >= previous", file=../src/devices/wifi/interference-helper.cc, line=545
> terminate called without an active exception

I'm getting this problem as well - I have absolutely no idea how to
reproduce it using simple code as the new version just failed to run
code that I've been using (and forgotten about). I'm now trying to do
some debugging to see if I can make a test case.

Quincy

unread,
Sep 10, 2010, 12:10:06 AM9/10/10
to ns-3-users
Still don't have a short test code yet - however, the error seems to
be caused by InterferenceHelper::CalculateNoiseInterferenceW.

The line that caused the error is:
ni->insert (ni->begin(), NiChange (event->GetStartTime(),...

(ni is in correct order before that line, and is out of order after).
It seems that the assumption that the start time of the event is <=
1st entry of ni is somehow false.

Will look into it a bit more.

Quincy

unread,
Sep 10, 2010, 12:37:31 AM9/10/10
to ns-3-users
Bug 991
Reply all
Reply to author
Forward
0 new messages