[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ns] mac-802_11.cc ACKTimeout looks incorrect & sifs/difs used incorectly?



> > 1) In mac-802_11.h, it defines ACKTimeout to be:
> >
> > #define ACKTimeout(len) (DATA_Time(len) + ACK_Time + sifs_ +
> > difs_)


The Ref is in the source code

 *  IEEE 802.11 Spec, section 9.2.8
 *	- After transmitting DATA, a node waits ACKTimeout
 *	  seconds for an ACK.

I think acktimeout is correct, because in DCF mode a node has to defer
for an interval of at least difs.

> > 2) In mac-802_11.cc:
> >
> > void Mac802_11::tx_resume()
> > {
> >       .........
> >     else if(pktTx_) {
> >                if(mhBackoff_.busy() == 0)
> >                         mhDefer_.start(difs_);

I had the same problem and I think that this is a bug.

Rankster

Jun Zhao wrote:
> 
> I am concerned about the same problem.
> 
> But I did not find out the specs. about ACK timeout in the 1999 version. Can
> you give me the ref.?
> ----- Original Message -----
> From: "Susan Tsao" <[email protected]>
> To: "Ns-Users (E-mail)" <[email protected]>
> Sent: Saturday, October 06, 2001 8:05 AM
> Subject: [ns] mac-802_11.cc ACKTimeout looks incorrect & sifs/difs used
> incorectly?
> 
> > Hello,
> >
> > I have 2 quesiton relating to NS implementation of the Mac 802.11
> > protocol.
> >
> > 1) In mac-802_11.h, it defines ACKTimeout to be:
> >
> > #define ACKTimeout(len) (DATA_Time(len) + ACK_Time + sifs_ +
> > difs_)
> >
> >     But according to standard, it should be:
> > #define ACKTimeout(len) (DATA_Time(len) + ACK_Time + sifs_ +
> > sifs_)
> >
> > 2) In mac-802_11.cc:
> >
> > void Mac802_11::tx_resume()
> > {
> >       .........
> >     else if(pktTx_) {
> >                if(mhBackoff_.busy() == 0)
> >                         mhDefer_.start(difs_);
> >    .........
> > }
> >
> > According to standards:  Upon receiving a CTS frame, station will wait
> > for SIFS period before sending DATA
> > However, according to the above code, station waits for DIFS period
> > before sending DATA.
> > Can someone please explain to me whether this is a bug in the code or
> > did I misinterpret the standard.
> > Thank you.
> > Susan
> >
> >