I've a lot of experience using this scnenario with single-hop, using the
NOAH adhoc agent. I have no experience in multihop.

Suggestions
a) creating only N1 to N4 nodes works?
b) same, adding BS?
c) same, adding M1 and a wired link?
d) use my simplified hierachical address tcl procs creation 
http://tagus.inesc-id.pt/~pestrela/ns2/ns2_haddr_tips.html

d) install my otcl debugging utilities, then find the tcl proc that gives
the error (in the initialization), then find a way to ignore the offending
node in the LS routing initialization (should be node M1, I think)


Pedro Vale Estrela
http://tagus.inesc-id.pt/~pestrela/ns2/



> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On 
> Behalf Of Ramzi Tka
> Sent: quarta-feira, 28 de Fevereiro de 2007 21:23
> To: [email protected]
> Subject: [ns] combined wireless and wired nodes in the same simulated 
> topolgy
> 
> 
> Hi all,
> Is it possible to simulate a wired-cum-wireless network composed by 
> several wireless nodes that run a given routing protocol and several 
> wired nodes partially meshed ( not all them are connected to the BS) . 
> Could these wired
> nodes use any routing protocol, or there is some contraints or problems
> for.
> I have tried with the ns-2  basic LS protocol . It doesn't function.
> The topology is the followin
> 
>    M1                                                N2
>                                                    *           *
>                                              *                      *
>    M2           BS * * * * * N1 *                                 N4
>                                              *                       *
>                                                     *          *
>     M3                                                N3
> 
> 
> I activated LS for bstation, sinkNode, sinkNode1, sinkNode2 and 
> sinkNode3 and assigned the relative cost for their links.
> ----------------------------------------------------------------------
> ----
> -----------------------------------
> $ns rtproto LS  $bstation $sinkNode $sinkNode1 $sinkNode2 $sinkNode3
> 
>   $ns cost $bstation $sinkNode 1
>   $ns cost $sinkNode $bstation 1
> 
>   $ns cost $sinkNode $sinkNode1 1
>   $ns cost $sinkNode1 $sinkNode  1
> 
>   $ns cost $sinkNode $sinkNode2 2
>   $ns cost $sinkNode2 $sinkNode 2
> 
>   $ns cost $sinkNode1 $sinkNode3 1
>   $ns cost $sinkNode3 $sinkNode1 1
> 
>   $ns cost $sinkNode2 $sinkNode3 2
>   $ns cost $sinkNode3 $sinkNode2 2
> ----------------------------------------------------------------------
> ----
> -----------------------------------
> 
> and I used hierarchical routing adressing :
> -------------------------------
> $ns node-config -addressType hierarchical
> AddrParams set domain_num_ 2                            ;# domain number
> lappend cluster_num 1 1                                 ;# cluster number
> for each domain
> AddrParams set cluster_num_ $cluster_num
> #lappend eilastlevel 1 [expr ($nb_mn+1)]                ;# number of nodes
> for each cluster (1 for sink and one for mobile nodes + base station
> lappend eilastlevel 4 [expr ($nb_mn+1)]                 ;# number of nodes
> for each cluster (4 for sink and one for mobile nodes + base station 
> AddrParams set nodes_num_ $eilastlevel
> 
> #creates the sink node in first addressing space.
> set sinkNode [$ns node 0.0.0]
> set sinkNode1 [$ns node 0.0.1]
> set sinkNode2 [$ns node 0.0.2]
> set sinkNode3 [$ns node 0.0.3]
> set sinkNode4 [$ns node 0.0.4]
> 
> for {set i 0} {$i < $nb_mn} {incr i} {
>         set wl_node_($i) [$ns node 1.0.[expr $i + 1]]   ;# create the node
> with given @.
>         $wl_node_($i) random-motion 0                   ;# disable random
> motion
>         $wl_node_($i) base-station [AddrParams addr2id [$bstation 
> node-addr]] }
> -------------------------------
> 
> The error message was :
> ----------------------------------------------------------------------
> ----
> ------------------------
> wrong # args: should be "set varName ?newValue?"
>     while executing
> "set nodeslist _o60 _o15 _o23 _o31 _o39"
>     ("eval" body line 1)
>     invoked from within
> "eval "set nodeslist $args""
>     (procedure "Agent/rtProto/LS" line 5)
>     (Agent/rtProto/LS init-all line 5)
>     invoked from within
> "Agent/rtProto/LS init-all _o60 _o15 _o23 _o31 _o39"
>     ("eval" body line 1)
>     invoked from within
> "eval Agent/rtProto/$proto init-all $rtprotos_($proto)"
>     ("foreach" body line 2)
>     invoked from within
> "foreach proto [array names rtprotos_] {
> eval Agent/rtProto/$proto init-all $rtprotos_($proto)
> }"
>     invoked from within
> "if [info exists rtprotos_] {
> foreach proto [array names rtprotos_] {
> eval Agent/rtProto/$proto init-all $rtprotos_($proto)
> }
> } else {
> Agent/rtProto/St..."
>     (procedure "_o1899" line 3)
>     (RouteLogic configure line 3)
>     invoked from within
> "[$self get-routelogic] configure"
>     (procedure "_o3" line 5)
>     (Simulator run line 5)
>     invoked from within
> "$ns run"
> --------------------------------------------------------------------------
> ----------
> 
> Could someone give me some idea, plz
> best regards
> Ramzi




Reply via email to