I am a novice to the internals of ns-2. I would appreciate it if you can tell me where the mistake it. Looking at the structural diagram did not give me any answers w/ respect to multiple interfaces! Thanks, Sita
> > I am not sure if you are talking about this problem on routing agent...If > yes, it is normal since if you checked the structurural diagram of a > mobile node in NS2, you can find out that once the packet reaches the > destination, the address classifier and port classifier will forward it in > different way and the recv() in routing agent does not get invoked at > all...The solution also lies in that structural diagram!!!Think about the > condition on which address classifier and port classfier will make > different selection!! > > Hailun Tan >> >> Hi There, >> Thank you again for the reply. This is not my work, I am trying to use >> something from NRL for my WSN work. Basically they have multiple >> interfaces to a node. One channel carries just sensing info and another >> channel is used for routing to sink. They want the sensing info to come >> to >> the agent, so that it can send info about it to the sink on the other >> channel. That is why they have the up-target statement in the tcl code. >> By >> doing this, I was hoping the recv will come to the agent and it can >> handle >> it, but it does not. So I am not sure if the problem is in the interface >> implementation or somewhere else. Please share your thoughts. >> Regards, >> Sita >> >> >>> Hi again, >>> >>> Yes I understand a little more of what you are trying to accomplish, >>> but >>> i >>> still have some questions; Are you modifying an existing routing >>> protocol >>> in ns2? Do packets get forwarded correctly from source to destination >>> according to your Mac level trace? If the packets don't get forwarded >>> there is as you say something wrong with the link layer's connection to >>> the network layer (Your Router-module). When I designed my routing >>> protocol I started out with AODV and modified it. Also there are some >>> pictures of the architecture of the ns2 layers on the Internet that may >>> help you. And finally, you say that you changed some thing in the Link >>> layer's up target so your routing module will be the receiver of >>> packets, >>> I'm not sure if you need to do that, if I remember correctly a >>> classifier >>> gets the packet from the link layer and the classifier decides if the >>> packet shall be sent to the routing module for processing (forwarding) >>> or >>> if the packet shall be sent to agent level (when the pac >>> ket have reached it's destination). >>> >>> Regards Micke >>> >>> ----- Originalmeddelande ----- >>> Från: "Sita S. Krishnakumar" <[EMAIL PROTECTED]> >>> Datum: Tisdag, Januari 24, 2006 16:58 >>> Ämne: Re: [ns] Agent::recv method not reached >>> >>>> Mikael, >>>> Thanks for your reply. I have more information that may shed more >>>> light on >>>> the problem. >>>> I basically have a new agent designed. In my code, I specify that >>>> the link >>>> layer's 'up-target' is my agent node so that it can come to my >>>> recv() for >>>> processing. But looks like that is not working fine. >>>> The MAC layer receives the packet but the agent does not. That is >>>> why I >>>> see it in the MAC trace but not in the agent trace. Even if it >>>> does not >>>> come to my recv(), it should go to the agent's recv() - but it >>>> does not >>>> go there either. So I am not sure where it goes altogether. Also I >>>> am not >>>> sure what the 'add-ll' does when an agent is created. I am trying >>>> to add >>>> someone else's work. I am not sure why they didn't have an add-ll >>>> statement. >>>> This is work from NRL and they say it works in 2.27, I am trying >>>> to get it >>>> to work in 2.29 >>>> Thanks, >>>> Sita >>>> >>>> >>>> > Hi, >>>> > >>>> > I had a similar problem, but I?m not sure if I understand >>>> exactly what you >>>> > mean. >>>> > If you are sending one packet from "source" to "destination" >>>> over some >>>> > number of intermediate nodes, you will only see the packet at >>>> agent level, >>>> > if you have that trace level turned on in ns2 and you will only >>>> see it at >>>> > the source and destination node. If you want to do something >>>> with your >>>> > routing protocol when a data packet has been received at the >>>> destination> you have to understand that ns2's layers don't >>>> exactly work as the OSI >>>> > reference model. When a data packet reaches it's destination a >>>> classifier> sends it to the agent layer, so you will never see >>>> this packet at the >>>> > router layer(Network layer). If I remember correctly this has >>>> some thing >>>> > to do with the mobile node class. I know for a fact that the AODVUU >>>> > implementation uses a newer class where packets are received and >>>> sent> bottom up through all layers. So you could use this class or >>>> use a >>>> > function in agent::recev and call a function in your class but >>>> to do this >>>> > you have to get hold of that object created by ns2 if you >>>> > create a new one and do the call you will not be able to get >>>> access to >>>> > memory allocations done by your class. For more info on how to >>>> this Pedro >>>> > Vale Estrela posted some code that I used on this forum some >>>> month a go. >>>> > Hope this can help you in some way. >>>> > >>>> > Best regards, Micke J >>>> > ----- Originalmeddelande ----- >>>> > Från: "Sita S. Krishnakumar" <[EMAIL PROTECTED]> >>>> > Datum: Mondag, Januari 23, 2006 15:11 >>>> > Ämne: [ns] Agent::recv method not reached >>>> > >>>> >> >>>> >> Hello, >>>> >> I am trying to add a new routing protocol to ns-2. There are >>>> >> packets being >>>> >> generated and received by the nodes (i see it in the MAC trace), >>>> >> but it >>>> >> never reaches my recv() method. On stepping through, I saw that the >>>> >> Agent::recv() is not reached and hence it is not getting forwarded >>>> >> to my >>>> >> code for processing (no agent traces get printed out in the >>>> trace file >>>> >> about packets being received) . Any ideas on why this is happening? >>>> >> Thanks for your help. >>>> >> Regards, >>>> >> Sita >>>> >> >>>> >> >>>> > >>>> > >>>> >>>> >>>> >>> >>> >> >> > > > > -------------------------------------------------------------------------- > This email and any attachments may be confidential. They may contain > legally > privileged information or copyright material. You should not read, copy, > use or disclose them without authorisation. If you are not an intended > recipient, please contact us at once by return email and then delete both > messages. We do not accept liability in connection with computer virus, > data corruption, delay, interruption, unauthorised access or unauthorised > amendment. This notice should not be removed. >