Hello Nguyen,

(see inline)

At 02:11 30/01/2007, Nguyen Lan wrote:
>Hi Razmon,
>
>I have a question related to  the multi-interface support in ns2
>- In Listing 4.4: hdr->iface() = addr(), addr is index of the interface 
>that received this packet. But how can I get that value (which variant or 
>function)

The addr() method is declared in the Mac class and, since Mac802_11 
inherits from this, you can use it. It will return the index_, which is 
somehow mapped to the mac address.

>- And in struct hdr_cmn (packet.h) there is a field name iface_ to store 
>received interface index. Can I use it in Listing 4.4 like hdr->iface_ = xxx

Well, basically the hdr->iface() method, just returns (in-line) the iface_ 
field (see definition of struct hdr_cmn in packet.h); so you are saying the 
same thing.

>Best regards,
>Nguyen

Cheers,
Ramón

>Ramon Aguero wrote:
>>Hi Shahatha,
>>
>>As we say in the report we didn't use aodv, so we really appreciate that 
>>you work on this, it would be good trying to extend the report with your 
>>own experience on AODV.
>>
>>We have been doing a quick overlook of the aodv code (which we have not 
>>personally used that much) and this is what we can tell for the listings 
>>of chapter 5:
>>
>>- Listing 5.3 has to be used whenever the AODV needs to send a broadcast 
>>packet, which happens, as far as we can tell, in the following methods of 
>>the aodv.cc file: sendRequest, sendError, sendHello and forward; in this 
>>latter case only when the destination address is broadcast. In all of 
>>this, you should have the following command:
>>Scheduler::instance().schedule(target_,pkt,*); --- * means either 0 or JITTER
>>and you should change it for listing 5.3.
>>
>>- Listing 5.4 has to be used instead of the unicast transmissions of 
>>aodv.cc, this time in sendReply and forward methods. In this case, the 
>>Iface variable has to be the appropriate interface index, which needs to 
>>be stored within the corresponding route table entry (see section 5.3 of 
>>the document).
>>
>>- Listing 5.5 is the one that allows you to get the correct interface. 
>>When you have to create a route table entry, you need to indicate the 
>>corresponding index for the output interface, which will be used 
>>afterwards to send packets (see previous answer). This means that the 
>>corresponding struct/class for your route table entry needs to be 
>>updated, so as to be able to keep this index.
>>Thanks to the changes of the mac-802_11.cc file (listing 4.6), the 
>>required value is store on the common header of the packet, that's the 
>>cmnh variable of the listing. Iface will just hold the index that will be 
>>used for creating/updating the route table entry. After a quick overlook 
>>of the code, this seems to be needed in two methods: recvRequest and 
>>recvReply.
>>
>>Cheers,
>>Ramón
>>
>>At 10:53 18/01/2007, Shahatha wrote:
>>
>>
>>>Hello,
>>>
>>>   did any one implement the extension of ns-2 for multi-channel
>>>   from Ramon Aguero at:
>>>
>>>   http://personales.unican.es/aguerocr>http://personales.unican.es/aguerocr
>>>"many thanks for Ramon Aguero for his Dokument."
>>>
>>>
>>>   i have some problems at Chapter 5, where to add the listing 5.3 
>>> Listing 5.5 and Listing 5.6
>>>   in routingAgent.cc. (AODV.cc)
>>>   i choice  the AODV ad hoc routing agent to change.
>>>
>>>   i think i can copy the Listing above 1 by 1 to the AODV.cc.!!!!
>>>
>>>   thanks
>>>
>>>
>>>
>>>
>>>---------------------------------
>>>NEU: Fragen stellen - Wissen, Meinungen und Erfahrungen teilen. Jetzt 
>>>auf Yahoo! Clever.
>>>
>>
>>
>>
>>


Reply via email to