check in the recv_timer() function

http://www.ece.rice.edu/~jpr/ns/docs/802_11.html#recv_timer()

On 8/29/06, Utente ns2 <[EMAIL PROTECTED]> wrote:
>
> Dear friends,
>
> look at the following code , extracted from the file wireless-phy.cc  :
>
>         if(propagation_) {
>                 s.stamp((MobileNode*)node(), ant_, 0, lambda_);
>                 Pr = propagation_->Pr(&p->txinfo_, &s, this);
>                 if (Pr < CSThresh_) { // This is the sensitivity of the
> wireless card
>                         pkt_recvd = 0;
>                         goto DONE;
>                 }
>                 if (Pr < RXThresh_) {
>                         /*
>                          * We can detect, but not successfully receive
>                          * this packet.
>                          */
>                         hdr_cmn *hdr = HDR_CMN(p);
>                         hdr->error() = 1;
>                 }
>         }
>
> One question about RXThresh_:
> if CSThresh_ < Pr < RXThresh_ we have that:
> A. pkt_recvd = 1 (the packet will be sent to the MAC Layer - thank you
> again, Joshua :-) )
> B: the packet is marked with hdr->error() = 1 .
> In the case Pr > RXThresh_ we will have that:
> A. pkt_recvd = 1 (the packet will be sent to the MAC Layer)
> B. hdr->error() is untouched, it is equal to 0
>
> So, the only difference introduced in the status of the packet by the
> RXThreshold is the flag 0/1 in the common header field.
>
> What I haven't understood is how MAC treats the above different kind of
> packets.
> It seems that at MAC level no difference is done between packet with
> hdr->error() = 0 and hdr->error() = 1.
> My guess is that once again the solution is in some inherited classes... but
> I really cannot see where...
>
> I hope you can give me some hints.
>
> Regards,
>
> Pasquale
>
> _________________________________________________________________
> MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/
>
>

Reply via email to