Dear All
               I am trying to make a simulation with
satellite+wired+wireless nodes in the scenario using hierarchical addresses.
I have downloaded and modified the example given below: when i run the
example without hierarchical addresses it runs fine but when i use
hierarchical addresses it gives me following error:
******************************************************************************************************************************************
ERROR:
[...@localhost NS2]$ ns aawal.tcl
num_nodes is set 6
Stub No. 1
size of istr[i] is > unsigned long
Error!!
str2addr:Address 1784827763 outside range of address field length 2048

******************************************************************************************************************************************



**************************************************
Source code Example  Starts here
***************************************************

### This simulation is an example of combination of wired, wireless
### and geo-satellite topologies.

set ns   [new Simulator]



$ns node-config -addressType hierarchical
AddrParams set domain_num_  2                      ;# domain number
AddrParams set cluster_num_ {5 5}    ;# cluster number for each domain 
lappend tmp 5                                      ;# CN
lappend tmp 5                                      ;# RCST 1
lappend tmp 5                                      ;# Satellite
lappend tmp 5                                      ;# RCST 0
lappend tmp 5                                      ;# router
lappend tmp 5                                      ;# 802.16 MNs+BS
lappend tmp 5                                      ;# 802.16 MNs+BS
lappend tmp 5                                      ;# 802.11 MNs+AP
lappend tmp 5                                      ;# 802.11 MNs+AP
lappend tmp 5                                      ;# MultifaceNode
lappend tmp 5                                      ;# MultifaceNode
lappend tmp 5                                      ;# MultifaceNode
AddrParams set nodes_num_ $tmp






global opt_sat
set opt_sat(chan)           Channel/Sat
set opt_sat(bw_up)              0.5Mb
set opt_sat(bw_down)    0.5Mb
set opt_sat(phy)            Phy/Sat
set opt_sat(mac)            Mac/Sat
set opt_sat(ifq)            Queue/DropTail
set opt_sat(qlim)                       50
set opt_sat(ll)             LL/Sat

global opt_mobile
set opt_mobile(chan)       Channel/WirelessChannel
set opt_mobile(prop)       Propagation/TwoRayGround
set opt_mobile(netif)      Phy/WirelessPhy
set opt_mobile(mac)        Mac/802_11
set opt_mobile(ifq)        Queue/DropTail/PriQueue
set opt_mobile(ll)         LL
set opt_mobile(ant)        Antenna/OmniAntenna
set opt_mobile(ifqlen)         50
set opt_mobile(tr)          test-mobile-satellite.tr
set opt_mobile(namtr)       test-mobile-satellite.nam
set opt_mobile(nn)             5
set opt_mobile(adhocRouting)   NOAH
set opt_mobile(stop)           50
set num_wired_nodes      2
set num_bs_nodes         1
set net_distance                10000.0

set opt_mobile(x) [expr $opt_mobile(nn) * 100.0 * 2 + 100.0 + $net_distance]
set opt_mobile(y) 1000

# set up for hierarchical routing
#  $ns node-config -addressType hierarchical
#  AddrParams set domain_num_ 4
#  lappend cluster_num 1 1 1 1
#  AddrParams set cluster_num_ $cluster_num
#  lappend eilastlevel 20 20 20 20
#  AddrParams set nodes_num_ $eilastlevel

# create topology of the wireless nodes to keep connectivity info
  set topo   [new Topography]
  $topo load_flatgrid $opt_mobile(x) $opt_mobile(y)
  # god needs to know the number of all wireless interfaces
  create-god [expr $opt_mobile(nn) + $num_bs_nodes]

# setup the trace file
  set tracefd  [open $opt_mobile(tr) w]
  $ns trace-all $tracefd
  $ns trace-all-satlinks $tracefd
  set namtracefd [open $opt_mobile(namtr) w]
  $ns namtrace-all $namtracefd

# Set up satellite and terrestrial nodes
# Configure the node generator for bent-pipe satellite
# geo-repeater uses type Phy/Repeater
  $ns node-config -satNodeType geo-repeater \
                -phyType Phy/Repeater \
        -channelType $opt_sat(chan) \
                -downlinkBW $opt_sat(bw_down)  \
                -wiredRouting ON

# GEO satellite at 95 degrees longitude West
puts "Stub No. 1"
  set geo [$ns node 0.2.0]
puts "Stub No. 2"
  $geo set-position 13#-95

$geo color red
$geo shape box

# Configure the node generator for satellite terminals
 $ns node-config -satNodeType terminal \
                -llType $opt_sat(ll) \
                -ifqType $opt_sat(ifq) \
                -ifqLen $opt_sat(qlim) \
                -macType $opt_sat(mac) \
                -phyType $opt_sat(phy) \
                -channelType $opt_sat(chan) \
                -downlinkBW $opt_sat(bw_down) \
                -wiredRouting ON

# Two terminals: one in NY and one in SF
 set vsat1 [$ns node 0.3.0]
 $vsat1 set-position 43.71 10.38; # NY
 set vsat2 [$ns node 0.1.0]
 $vsat2 set-position 43.71 10.38; # SF


#new-terminal 43.71 10.38
#new-terminal 43.71 10.38



$vsat1 color blue
$vsat1 shape hexagone

$vsat2 color green
$vsat2 shape hexagone


# Add GSLs to geo satellites
 $vsat1 add-gsl geo $opt_sat(ll) $opt_sat(ifq) $opt_sat(qlim) $opt_sat(mac)
$opt_sat(bw_up) \
    $opt_sat(phy) [$geo set downlink_] [$geo set uplink_]
 $vsat2 add-gsl geo $opt_sat(ll) $opt_sat(ifq) $opt_sat(qlim) $opt_sat(mac)
$opt_sat(bw_up) \
    $opt_sat(phy) [$geo set downlink_] [$geo set uplink_]

# unset the satellite node type, to create other nodes.
  $ns unset satNodeType_
  $ns unset channelType_
  $ns node-config -reset
  

# create some desktop pc to transfer data from olsr to satellite
  set w1 [$ns node 0.4.0]
  $w1 color blue
$ns at 0.0 "$w1 add-mark w1 blue"

  set w2 [$ns node 0.0.0]
$w2 color green
$ns at 0.0 "$w2 add-mark w2 green"




# create links from desktop to vsat
  $ns duplex-link $w1 $vsat1 100Mb 0.01ms DropTail
  $ns duplex-link $w2 $vsat2 100Mb 0.01ms DropTail

  $ns node-config -adhocRouting $opt_mobile(adhocRouting) \
                 -llType $opt_mobile(ll) \
                 -macType $opt_mobile(mac) \
                 -ifqType $opt_mobile(ifq) \
                 -ifqLen $opt_mobile(ifqlen) \
                 -antType $opt_mobile(ant) \
                 -propInstance [new $opt_mobile(prop)] \
                 -phyType $opt_mobile(netif) \
                 -channel [new $opt_mobile(chan)] \
                 -topoInstance $topo \
                 -wiredRouting ON \
                 -agentTrace ON \
                 -routerTrace ON \
                 -macTrace ON

# create base station 1
  set BS1 [$ns node 1.0.0]
  $BS1 random-motion 0


  $BS1 color yellow
  $BS1 shape box


  $BS1 set X_ [expr $opt_mobile(nn) * 100.0]
  $BS1 set Y_ [expr 500.0 + ((($opt_mobile(nn) * 93) % 21) - 10 ) * 10.0]
  $BS1 set Z_ 0.0

#---------------------------------------------------------------------------
# Create mobile nodes
#---------------------------------------------------------------------------

for {set i 0} {$i < $opt_mobile(nn)} {incr i} {
    set node1($i) [$ns node 1.0.[expr $i+1]]
    
    $node1($i) color green


    $node1($i) random-motion 1
    $node1($i) set X_ [expr $i * 100.0 + $net_distance]
    $node1($i) set Y_ [expr 500.0 + ((($i * 93) % 21) - 10 ) * 10.0]
    $node1($i) set Z_ 0.0
    $ns initial_node_pos $node1($i) 20
    $node1($i) base-station [AddrParams addr2id [$BS1 node-addr]]
}


# create links between wired and BS nodes
  $ns duplex-link $w1 $BS1 100Mb 1ms DropTail


# setup TCP connections
  set tcp1 [new Agent/TCP]
  $ns attach-agent $node1(0) $tcp1

  set sink1 [new Agent/TCPSink]
  $ns attach-agent $w2 $sink1

  
  set ftp1 [new Application/FTP]
  $ftp1 attach-agent $tcp1

$ns connect $tcp1 $sink1


$ns at 2 "$cbr start"
$ns at 25 "$cbr stop"

  $ns at 3 "$ftp1 start"
  $ns at 45 "$ftp1 stop"

  for {set i 1} {$i < $opt_mobile(stop)} {} {
      $ns at $i "puts $i\n"
                set i [expr $i * 1.2]
   }

  #for {set i } {$i < $opt_mobile(nn) } {incr i} {
   #   $ns at $opt_mobile(stop).0000010 "$node1($i) reset";
  #}
  #$ns at $opt_mobile(stop).0000010 "$BS1 reset";

  $ns at $opt_mobile(stop).1 "puts \"NS EXITING...\" ; $ns halt"

  puts "Starting Simulation..."
  $ns run



**************************************************
Source code Example  Ends here
***************************************************

Can anyone please help me in sorting this problem.

Best Regards
Sahib

-- 
View this message in context: 
http://old.nabble.com/problem-in-satellite%2Bwired%2Bwireless-with-hierarchical-addresses-tp28245132p28245132.html
Sent from the ns-users mailing list archive at Nabble.com.

Reply via email to