[ns] Multi-interface support howto, by Ramon Aguero---really need help!!!
Hello, I am trying to modify NS-2.29 to support multiple interface according to "Adding Multiple Interface Support in NS-2" by Ramon Aguero, http://personales.unican.es/aguerocr. For routing agent, I choose AODV like some people. I encountered some problems and really need help. 1.I have two questions about Listing 5.5 in the tutorial. (1)"cmnh" doesn't exist and I wonder whether we should change "cmnh" to "hdr" according to listing 4.6. (2) Where should I declare the variable "Iface"? Should I declare it in aodv.h like declaring nIfaces, targetlist[MAX_IF] and ifqueuelist[MAX_IF] in aodv.h? 2. In Changes on the Route Table part, Ramon mentioned that a new variable interface must be added to the route entry definition. But I am not clear that in which file the route entry definition exists. Is the file aodv.h or aodv_rtable.h in aodv folder or rttable.h in routing.h folder? And in order to change the route table, how many files or classes need to be modified in total? Coul! d you give me some details to do this? It is very urgent, please help me!!! Any help and advice would be very appreciated. Thank you. Tina _ 用手机MSN聊天写邮件看空间,无限沟通,分享精彩! http://mobile.msn.com.cn/
[ns] Multi-interface support howto, by Ramon Aguero---really need help!!!
Hello, I am trying to modify NS-2.29 to support multiple interface according to "Adding Multiple Interface Support in NS-2" by Ramon Aguero, http://personales.unican.es/aguerocr. For routing agent, I choose AODV like some people. I encountered some problems and really need help. 1.I have two questions about Listing 5.5 in the tutorial. (1)"cmnh" doesn't exist and I wonder whether we should change "cmnh" to "hdr" according to listing 4.6. (2) Where should I declare the variable "Iface"? Should I declare it in aodv.h like declaring nIfaces, targetlist[MAX_IF] and ifqueuelist[MAX_IF] in aodv.h? 2. In Changes on the Route Table part, Ramon mentioned that a new variable interface must be added to the route entry definition. But I am not clear that in which file the route entry definition exists. Is the file aodv.h or aodv_rtable.h in aodv folder or rttable.h in routing.h folder? And in order to change the route table, how many files or classes need to be modified in total? Coul! d you give me some details to do this? It is very urgent, please help me!!! Any help and advice would be very appreciated. Thank you. Tina 用 Windows Live Spaces 展示个性自我,与好友分享生活! 了解更多信息! _ 多个邮箱同步管理,live mail客户端万人抢用中 http://get.live.cn/product/mail.html
[ns] Multi-interface support howto, by Ramon Aguero
Dear everyone, did any one implement suceessful the extension of ns-2 for multi-channel from Ramon Aguero at: http://personales.unican.es/aguerocr "many thanks for Ramon Aguero for his Document." I have some problems at Chapter 5, where to add Listing 5.5 and Section 5.3. in routingAgent.cc. (AODV.cc) I choice the AODV ad hoc routing agent to change. thanks
Re: [ns] Multi-interface support howto, by Ramon Aguero
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. >>> >> >> >> >>
Re: [ns] Multi-interface support howto, by Ramon Aguero
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) - 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 Best regards, Nguyen 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. >> > > > >
Re: [ns] Multi-interface support howto, by Ramon Aguero
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.
[ns] Multi-interface support howto, by Ramon Aguero
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.