> <
http://personal.ee.surrey.ac.uk/Personal/K.Katsaros/media/ns3lab-sol/lab-5-solved.cc>).
>
> These are the lines:
>
> // turn off RTS/CTS for frames below 2200 bytes
> Config::SetDefault ("ns3::WifiRemoteStationManager::RtsCtsThreshold", StringValue (rtslimit));
> // Fix non-unicast data rate to be the same as that of unicast
> Config::SetDefault ("ns3::WifiRemoteStationManager::NonUnicastMode", StringValue (phyMode));
>
>
>
> On the first (non comment) line, about the RTS and CTS, according to
> what I read, and if I understood correctly, if the total value of the
> packet (data + headers + trailers) surpasses the value rtslimit then RTS
> is transmitted. (And then waits for a CTS to transmit the data packet).
>
> But what I don't understand is:
>
> 1. What is a WifiRemoteStationManager?
An object that holds the per-station state (such as whether it has HT
capabilities, what modes it supports) of the remote station. It is
responsible for holding state about fragmentation and RTS thresholds.
Also, rate control algorithms such as Minstrel are implemented as child
classes of the parent WifiRemoteStationManager class.
> 2. Bassically the second (non comment) line of the code. I don't get
> what it is used for.
>
Frames can be unicast or non-unicast (e.g. group address). It may be
the case that non-unicast frames, since they need to reach multiple
stations, may need to use a more robust (i.e. lower) data rate than the
mode used to send unicast to one or more (possibly close by) stations.
This attribute allows the user to specify the mode that is used when
sending non-unicast frames.
- Tom