Bug 199 - ProbeRequestTimeout too large
ProbeRequestTimeout too large
Status: RESOLVED FIXED
Product: ns-3
Classification: Unclassified
Component: devices
pre-release
All All
: P3 normal
Assigned To: ns-bugs
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2008-06-03 14:16 UTC by Gustavo J. A. M. Carneiro
Modified: 2008-07-01 13:32 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Gustavo J. A. M. Carneiro 2008-06-03 14:16:02 UTC
In bug #177 the BeaconInterval default value was changed to 100 ms.  ProbeRequestTimeout is now set to 500 ms, which I think is too large.  I think it should be half the BeaconInterval by default, as before.

http://telecom.inescporto.pt/~gjc/Screenshot-(Untitled)%20-%20Wireshark-1.png

My real life captures show me that, in a particular case, all ProbeResponses arrive within 24 ms.  I think waiting no more than 50 ms by default seems reasonable.  Arguably 100 ms would not be a bad value either.  I don't have any hard value on this; only the device firmware knows...
Comment 1 Gustavo J. A. M. Carneiro 2008-06-03 14:19:04 UTC
diff -r 362f1a144828 src/devices/wifi/nqsta-wifi-mac.cc
--- a/src/devices/wifi/nqsta-wifi-mac.cc	Tue Jun 03 18:15:08 2008 +0100
+++ b/src/devices/wifi/nqsta-wifi-mac.cc	Tue Jun 03 19:17:12 2008 +0100
@@ -63,7 +63,7 @@ NqstaWifiMac::GetTypeId (void)
     .SetParent<WifiMac> ()
     .AddConstructor<NqstaWifiMac> ()
     .AddAttribute ("ProbeRequestTimeout", "XXX",
-                   TimeValue (Seconds (0.5)),
+                   TimeValue (Seconds (0.05)),
                    MakeTimeAccessor (&NqstaWifiMac::m_probeRequestTimeout),
                    MakeTimeChecker ())
     .AddAttribute ("AssocRequestTimeout", "XXX",



PS: the reason why this value is critical is because it affects how much time it takes to do an active scanning sweeping all the 12 or so WiFi channels available.  I am no WiFi expert, but as far as I know the STA needs to spend at least ProbeRequestTimeout in each channel; mutiply that time by 12, and...
Comment 2 Mathieu Lacage 2008-06-03 14:31:49 UTC
looks good. please, commit.