[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ns] Resend: HELP: AODV for MIP and HIER Addressing



HI,
I need some help, when I look into aodv.tcl and ns-lib.tcl, I find that aodv does not support mobile ip and hierrrachial addressing. Comment me if I am wrong. So I started modyfying some files in ns-lib.tcl in instproc create-aodv-agent as below:
 
 
Simulator instproc create-aodv-agent { node } {
 
        #
        #  Create the Routing Agent and attach it to port 255.
        #
 
##       set ragent [new Agent/AODV [$node id]]
 
#JUST ADDED#############
 set ragent [new Agent/AODV]
 set addr [$node node-addr]
     $ragent addr $addr
     $ragent node $node
#ADDING ENDS############ 
 
        #set ragent_($id) [new $opt(ragent) $id]
        #set ragent $ragent_($id)
        #$node attach $ragent 255
#JUST ADDED##############
 if [Simulator set mobile_ip_] {
       $ragent port-dmux [$node set dmux_]
    } 
    $node addr $addr
    $node set ragent_ $ragent($id)
#ADDING ENDS#############
 
        #$ragent if-queue [$node set ifq_(0)]    ;# ifq between LL and MAC
 
        $self at 0.0 "$ragent_($id) start"     ;# start BEACON/HELLO Messages
 
        #
        # Drop Target (always on regardless of other tracing)
        #
        #set drpT [cmu-trace Drop "RTR" $node]
        #$ragent drop-target $drpT
 
        #
        # Log Target
        #
        #set T [new Trace/Generic]
        #$T target [$ns_ set nullAgent_]
        #$T attach $tracefd
        #$T set src_ $id
        #$ragent log-target $T
   
##        $node set ragent_ $ragent
        return $ragent
}
 
It compiles(make) without any problem, however  when I run the program like wireless3.tcl as in the tutorial, I have error as below:
 

    (_o38 cmd line 1)
    invoked from within
"_o38 cmd addr 1.0.0"
    invoked from within
"catch "$self cmd $args" ret"
    (procedure "_o38" line 2)
    (SplitObject unknown line 2)
    invoked from within
"$ragent addr $addr"
    (procedure "_o3" line 7)
    (Simulator create-aodv-agent line 7)
    invoked from within
"$self create-aodv-agent $node"
    ("AODV" arm line 2)
    invoked from within
"switch -exact $routingAgent_ {
DSDV {
set ragent [$self create-dsdv-agent $node]
 
DSR {
$self at 0.0 "$node start-dsr"
}
 
AODV {
set ragent [$self c..."
    (procedure "_o3" line 27)
    (Simulator create-wireless-node line 27)
    invoked from within
"$self create-wireless-node $args"
    (procedure "_o3" line 16)
    (Simulator node line 16)
    invoked from within
"$ns_ node 1.0.0"
    (file "ind-adhoc_mip_aodv.tcl" line 129)
 
 
 
Anyone have any solution to my error or any solution to make sure aodv supports mip and hierr addressing, can you please, please help.
Thanks in advance,
Indran