[Ns-developers] 802.11 wireless LAN on ns-2

mathieu lacage Mathieu.Lacage at sophia.inria.fr
Sat Apr 15 13:41:41 PDT 2006


> 1. Is there any implementation of pcf or contention free poll available?

not in the current version.

> Because burst transmission would be easier to implement on that.
> Or, can you give me some other pointers to implement this.
> I tried to implement this in dcf, but it was difficult to manage timers in
> that.

the dcf.cc file implements a helper class which calculates when access
is granted to the medium according to the DCF (distributed contention
function). This dcf.cc file is used by dca-txop.cc for example to
implement a simple 802.11 mac which performs fragmentation and packet
retransmission in case of failure. 

If you want to deal with transmission bursts like in OAR or in 802.11e,
you need to ask the dcf.cc file for an access grant, and then, you can
start bursting rather than return the medium immediately after the end
of the transmission like in dca-txop.cc. So, you should not modify the
dcf.cc file but you should modify the callers of that file.

> 2. sequence number and fragment number are not set in mac header because it
> is assumed that at a time only one packet m_current would be in transmission
> until it is acknowledged.

which piece of code are you talking about ?

> 2. mac-simple does not take into account sifs and difs. This affects the
> throughput calculations.
> What other variants of mac are implemented?

mac-high-adhoc.cc,dca-txop.cc,dcf.cc,mac-low.cc are used to collectively
implement a 802.11 mac (without an ap). see the sample code in

> What does mac-low implement? Can you provide me with a sample for that.

mac-low is a simple wrapper around the Phy which simplifies the use of
the various 802.11 mac transmission mechanisms. It is a helper class
which deals with rate control and all the timers related to packet

mac-low.cc is used by dca-txop.cc to start packet transmissions when
access has been granted by dcf.cc. Access is asked to dcf.cc by
mac-high-adhoc.cc whenever a new packet is queued for transmission in
mac-queue-80211.cc. See mac-high-adhoc.cc, line 67, function


More information about the Ns-developers mailing list