Bug 1629 - Make AODV Default to Disable Hello
Make AODV Default to Disable Hello
Status: RESOLVED FIXED
Product: ns-3
Classification: Unclassified
Component: aodv
pre-release
All All
: P5 enhancement
Assigned To: ns-bugs
:
Depends on: 1522
Blocks: 1606
  Show dependency treegraph
 
Reported: 2013-04-19 10:51 EDT by Andrew Stanton
Modified: 2013-08-16 01:40 EDT (History)
3 users (show)

See Also:


Attachments
Disable hello by default (986 bytes, patch)
2013-04-19 11:01 EDT, Andrew Stanton
Details | Diff
Disable hello by default, and remove conditional statement (1.24 KB, patch)
2013-04-19 11:02 EDT, Andrew Stanton
Details | Diff
Disable hello by default, and move the action of the conditional statement (1.53 KB, patch)
2013-04-19 11:02 EDT, Andrew Stanton
Details | Diff
All patches testing output (11.76 KB, text/plain)
2013-04-19 11:03 EDT, Andrew Stanton
Details
Outputs, notes, and comments of disabled hellos behavior in aodv example (16.36 KB, text/plain)
2013-04-19 11:04 EDT, Andrew Stanton
Details
Diff from bug1190 which might also fix Bug1629 (7.40 KB, patch)
2013-07-16 10:18 EDT, John Abraham
Details | Diff
Long run tests (2000s) Stability (322.19 KB, application/pdf)
2013-07-16 21:18 EDT, John Abraham
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Stanton 2013-04-19 10:51:36 EDT
Overview
---------
The hello implementation currently has a few behaviors that may not be ideal:

- Hellos are always sent by a node, regardless if node is participating in an active route (bug 1188) or not
- Other features in AODV RP are interacting with hellos that should not like RecvRequest and SendRequest (bug 1193) although this has been turned off
- Hellos are not suppressed if there was a recent broadcast (bug 1190, it was in this bug that the suggestion was made to disable hellos by default if the change could be validated)

Hellos have a requirement level of MAY in RFC (see 6.9.).

Patches
---------

I have a few patches to propose.  I ran the aodv test across all of them and they all passed.  I monitored the behavior of a modified aodv.cc example program to determine behavior changes and have found some behavior that lead me to develop several patches.  

1) Disable hello by default
2) Disable hello by default, and remove the conditional statement on hello bool in the constructor
3) Disable hello by default, and move the action of the conditional statement from the constructor to start method

Build 
---------
This is the dev build I tried the patches on

andrew@ubuntu:~/repos/ns-3-allinone/ns-3-dev$ hg summary
parent: 9694:eb7335c2423c tip
 add virtual destructor
branch: default
commit: 89 unknown (clean)
update: (current)

Ubuntu 10.04
Comment 1 Andrew Stanton 2013-04-19 11:01:20 EDT
Created attachment 1560 [details]
Disable hello by default
Comment 2 Andrew Stanton 2013-04-19 11:02:20 EDT
Created attachment 1561 [details]
Disable hello by default, and remove conditional statement
Comment 3 Andrew Stanton 2013-04-19 11:02:56 EDT
Created attachment 1562 [details]
Disable hello by default, and move the action of the conditional statement
Comment 4 Andrew Stanton 2013-04-19 11:03:24 EDT
Created attachment 1563 [details]
All patches testing output
Comment 5 Andrew Stanton 2013-04-19 11:04:02 EDT
Created attachment 1564 [details]
Outputs, notes, and comments of disabled hellos behavior in aodv example
Comment 6 Tom Henderson 2013-04-26 13:48:00 EDT
Andrew, thanks for these patches; we'll try to get to them soon after the upcoming ns-3.17 release.
Comment 7 Tommaso Pecorella 2013-07-10 15:33:10 EDT
When fixing this, remember to declare fixed also bugs:
- http://www.nsnam.org/bugzilla/show_bug.cgi?id=1188
- http://www.nsnam.org/bugzilla/show_bug.cgi?id=1190

or at least to assess if they're still valid.

From my understanding, the proposed patches should fix these as well.
Comment 8 John Abraham 2013-07-16 10:18:21 EDT
Created attachment 1637 [details]
Diff from bug1190 which might also fix Bug1629

Diff from bug1190 which might also fix Bug1629
Requires Patch for Bug1522
Comment 9 John Abraham 2013-07-16 21:18:26 EDT
Created attachment 1640 [details]
Long run tests (2000s) Stability
Comment 10 John Abraham 2013-08-16 01:40:09 EDT
author	John Abraham <john.abraham.in@gmail.com>
Thu, 15 Aug 2013 22:39:03 -0700 (43 seconds ago)
changeset 10161	7ea12911298b