I'm not sure I understand, and perhaps I've not adequately described what
I'm trying to do, so I'll try again using a semi-hypothetical scenario:
(Please keep in mind I'm new to ns!)

Suppose I've got the following topology:

N1 - N2 - N3

And three "different" agents, (A1,A2,A3) which have all been implemented
differently in C++.  The basic idea is that I want these agents to
automatically communicate with each other...

In C++ I've written an A1::command() function that will 'send' sends an IP
packet to the A2 agent.  When the A2 agent receives this packet, it then
sends a packet back to A1, which then gets returned to A2 (basically a 3-way
handshake).  A2 should then automatically send another packet to the A3
agent by creating a packet, and inserting N3's address in the IP header.
(I'm assuming all of my agents and nodes know about the topology)

In TCL I've done this:
------------------------------------
set n1 [$ns node]
set n2 [$ns node]
set n3 [$ns node]

set a1 [new Agent/A1]
set a2 [new Agent/A2]
set a3 [new Agent/A3]

$ns attach-agent $n1 $a1
$ns attach-agent $n2 $a2
$ns attach-agent $n3 $a3

$ns connect $a1 $a2
#$ns connect $a2 $a3 ;# if I do this, the handshake doesn't work

$ns at 0.0 $a1 send
------------------------------------

When I run this, ns gives me this error:

--- Classfier::no-slot{} default handler (tcl/lib/ns-lib.tcl) ---
        _o158: no target for slot 3
        _o158 type: Classifier/Port
content dump:
classifier _o158
        0 offset
        0 shift
        2147483647 mask
        1 slots
                slot 0: _o153 (Agent/A3)
---------- Finished standard no-slot{} default handler ----------


Basically I want A3 to look at any or all packets send to N3.  How can I
force this? 

I'm using ns-2.29 on Mac OS X 10.4.7.

Thanks in advance!

Brad


On 7/2/06 6:10 PM, "Mark Shifrin" <[EMAIL PROTECTED]> wrote:

> no problem with tcp
> you can do attach agent as many time as you want to a single node.
> you must first define it as tcp-source. and then to choose the application
> which runs over this
> tcp, for example i did it with FTP. moreover you can do it for n, within a
> loop
> 
> --- Brad Montgomery <[EMAIL PROTECTED]> wrote:
> 
>> 
>> Hello All,
>> 
>> I'm wondering if it's possible to have a single Agent connected to 2 or more
>> other Agents. I have a topology similar to this:
>> 
>>       N2
>>       |
>> N0 -- N1 -- N3 -- N4
>> 
>> I have an agents A0, A2, A3 connected to N0, N2, N3 respectively, and I
>> would like A0 to send a packet to A2, which would then in turn send a packet
>> to A3.  Is this possible?
>> 
>>> From reading the mailing list archives, it seems like this may not be
>> possible, so my second question would be this:
>> 
>> Is it possible to attach an agent to a Node, and force that agent's recv
>> function to get executed for every packet that passes through that node?
>> For example: Could N2 send a packet to N4, so that A3's recv function
>> processes that packet before sending it onward.
>> 
>> Any help is GREATLY appreciated!
>> 
>> Brad 
>> 
>> 
> 
> 
> enjoy the life - 
> Mark
> 
> __________________________________________________
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com 

Reply via email to