NS2

badadou Messages postés 2 Statut Membre -  
boubou9027 Messages postés 3 Date d'inscription   Statut Membre -
Bonjour, j'ai pas mal essayé de recompiler NS2, mais je n'arrive pas. dites moi comment je peux le faire?
Configuration: Windows XP
Internet Explorer 6.0

4 réponses

  1. cindy
     
    merci c est pas juste un probleme de compilation c est qu il ne reconnait pas le nom de la classe comme un type complet
    et j arrive pas a trouvé une solution pour qu il l accpete
    1
  2. cindy
     
    Bonjour

    je dois ajouter du code dans le fichier MAC802.11.
    J ai une classe qui s appel Mac820_11 qui hérite de la classe Mac
    je dois déclarer un objet de cette classe
    qd je fais Mac802_11 nom_de_l_objet il ne compile plus et me sort une erreur type incomplete
    D avance merci.
    0
  3. Thanahthaus Messages postés 140 Statut Membre 27
     
    Un simple make clean, suivi d'un make dans le répertoir ns2 suffit a le recomplier...
    0
    1. achkim Messages postés 9 Date d'inscription   Statut Membre 1
       
      Bonjour,
      j'aurai besoin de votre aide si vous voullez bien sur. hier quand j'ai installé NS-allinone-2.28 ça marche bien, et quand j'ai voulu rajouter les modules Wimax car je dois faire une simulation du handover de wimax rien ne marche. et j'ai refais l'installation de NS, l'exemple que j'ai exécuté hier marchait mais aujourdhui ne marche pas, voici ce qu'il m'affiche

      ns example1b.tcl
      ns: finish: couldn't execute "nam": no such file or directory
      while executing
      "exec nam example1b.nam &"
      (procedure "finish" line 7)
      invoked from within
      "finish"

      je vous remercie pour votre aide.
      0
  4. boubou9027 Messages postés 3 Date d'inscription   Statut Membre
     
    hello
    i would like to try to create the iridium satellite constellation
    but the nam cant' show me any thing, i don't know where is the problem
    please answer me!!!

    this is my code:

    global ns
    set ns [new Simulator]

    # Global configuration parameters
    HandoffManager/Term set elevation_mask_ 8.2
    HandoffManager/Term set term_handoff_int_ 10
    HandoffManager/Sat set sat_handoff_int_ 10
    HandoffManager/Sat set latitude_threshold_ 60
    HandoffManager/Sat set longitude_threshold_ 10
    HandoffManager set handoff_randomization_ true
    SatRouteObject set metric_delay_ true
    # Set this to false if opt(wiredRouting) == ON below
    SatRouteObject set data_driven_computation_ true
    # "ns-random 0" sets seed heuristically; other integers are deterministic
    ns-random 1
    Agent set ttl_ 32; # Should be > than max diameter in network

    # One plane of Iridium-like satellites

    global opt
    set opt(chan) Channel/Sat
    set opt(bw_down) 1.5Mb; # Downlink bandwidth (satellite to ground)
    set opt(bw_up) 1.5Mb; # Uplink bandwidth
    set opt(bw_isl) 25Mb
    set opt(phy) Phy/Sat
    set opt(mac) Mac/Sat
    set opt(ifq) Queue/DropTail
    set opt(qlim) 50
    set opt(ll) LL/Sat
    set opt(wiredRouting) OFF

    set opt(alt) 780; # Polar satellite altitude (Iridium)
    set opt(inc) 86.4; # Orbit inclination w.r.t. equator

    # XXX This tracing enabling must precede link and node creation
    set outfile [open out.tr w]
    $ns trace-all $outfile

    set nf [open out.nam w]
    $ns namtrace-all $nf

    # Create the satellite nodes
    # Nodes 0-99 are satellite nodes; 100 and higher are earth terminals

    $ns node-config -satNodeType polar \
    -llType $opt(ll) \
    -ifqType $opt(ifq) \
    -ifqLen $opt(qlim) \
    -macType $opt(mac) \
    -phyType $opt(phy) \
    -channelType $opt(chan) \
    -downlinkBW $opt(bw_down) \
    -wiredRouting $opt(wiredRouting)

    set alt $opt(alt)
    set inc $opt(inc)

    #source sat-iridium-nodes.tcl

    set plane 1
    set n0 [$ns node]; $n0 set-position $alt $inc 0 0 $plane
    set n1 [$ns node]; $n1 set-position $alt $inc 0 32.73 $plane
    set n2 [$ns node]; $n2 set-position $alt $inc 0 65.45 $plane
    set n3 [$ns node]; $n3 set-position $alt $inc 0 98.18 $plane
    set n4 [$ns node]; $n4 set-position $alt $inc 0 130.91 $plane
    set n5 [$ns node]; $n5 set-position $alt $inc 0 163.64 $plane
    set n6 [$ns node]; $n6 set-position $alt $inc 0 196.36 $plane
    set n7 [$ns node]; $n7 set-position $alt $inc 0 229.09 $plane
    set n8 [$ns node]; $n8 set-position $alt $inc 0 261.82 $plane
    set n9 [$ns node]; $n9 set-position $alt $inc 0 294.55 $plane
    set n10 [$ns node]; $n10 set-position $alt $inc 0 327.27 $plane

    incr plane
    set n15 [$ns node]; $n15 set-position $alt $inc 31.6 16.36 $plane
    set n16 [$ns node]; $n16 set-position $alt $inc 31.6 49.09 $plane
    set n17 [$ns node]; $n17 set-position $alt $inc 31.6 81.82 $plane
    set n18 [$ns node]; $n18 set-position $alt $inc 31.6 114.55 $plane
    set n19 [$ns node]; $n19 set-position $alt $inc 31.6 147.27 $plane
    set n20 [$ns node]; $n20 set-position $alt $inc 31.6 180 $plane
    set n21 [$ns node]; $n21 set-position $alt $inc 31.6 212.73 $plane
    set n22 [$ns node]; $n22 set-position $alt $inc 31.6 245.45 $plane
    set n23 [$ns node]; $n23 set-position $alt $inc 31.6 278.18 $plane
    set n24 [$ns node]; $n24 set-position $alt $inc 31.6 310.91 $plane
    set n25 [$ns node]; $n25 set-position $alt $inc 31.6 343.64 $plane

    incr plane
    set n30 [$ns node]; $n30 set-position $alt $inc 63.2 0 $plane
    set n31 [$ns node]; $n31 set-position $alt $inc 63.2 32.73 $plane
    set n32 [$ns node]; $n32 set-position $alt $inc 63.2 65.45 $plane
    set n33 [$ns node]; $n33 set-position $alt $inc 63.2 98.18 $plane
    set n34 [$ns node]; $n34 set-position $alt $inc 63.2 130.91 $plane
    set n35 [$ns node]; $n35 set-position $alt $inc 63.2 163.64 $plane
    set n36 [$ns node]; $n36 set-position $alt $inc 63.2 196.36 $plane
    set n37 [$ns node]; $n37 set-position $alt $inc 63.2 229.09 $plane
    set n38 [$ns node]; $n38 set-position $alt $inc 63.2 261.82 $plane
    set n39 [$ns node]; $n39 set-position $alt $inc 63.2 294.55 $plane
    set n40 [$ns node]; $n40 set-position $alt $inc 63.2 327.27 $plane

    incr plane
    set n45 [$ns node]; $n45 set-position $alt $inc 94.8 16.36 $plane
    set n46 [$ns node]; $n46 set-position $alt $inc 94.8 49.09 $plane
    set n47 [$ns node]; $n47 set-position $alt $inc 94.8 81.82 $plane
    set n48 [$ns node]; $n48 set-position $alt $inc 94.8 114.55 $plane
    set n49 [$ns node]; $n49 set-position $alt $inc 94.8 147.27 $plane
    set n50 [$ns node]; $n50 set-position $alt $inc 94.8 180 $plane
    set n51 [$ns node]; $n51 set-position $alt $inc 94.8 212.73 $plane
    set n52 [$ns node]; $n52 set-position $alt $inc 94.8 245.45 $plane
    set n53 [$ns node]; $n53 set-position $alt $inc 94.8 278.18 $plane
    set n54 [$ns node]; $n54 set-position $alt $inc 94.8 310.91 $plane
    set n55 [$ns node]; $n55 set-position $alt $inc 94.8 343.64 $plane

    incr plane
    set n60 [$ns node]; $n60 set-position $alt $inc 126.4 0 $plane
    set n61 [$ns node]; $n61 set-position $alt $inc 126.4 32.73 $plane
    set n62 [$ns node]; $n62 set-position $alt $inc 126.4 65.45 $plane
    set n63 [$ns node]; $n63 set-position $alt $inc 126.4 98.18 $plane
    set n64 [$ns node]; $n64 set-position $alt $inc 126.4 130.91 $plane
    set n65 [$ns node]; $n65 set-position $alt $inc 126.4 163.64 $plane
    set n66 [$ns node]; $n66 set-position $alt $inc 126.4 196.36 $plane
    set n67 [$ns node]; $n67 set-position $alt $inc 126.4 229.09 $plane
    set n68 [$ns node]; $n68 set-position $alt $inc 126.4 261.82 $plane
    set n69 [$ns node]; $n69 set-position $alt $inc 126.4 294.55 $plane
    set n70 [$ns node]; $n70 set-position $alt $inc 126.4 327.27 $plane

    incr plane
    set n75 [$ns node]; $n75 set-position $alt $inc 158 16.36 $plane
    set n76 [$ns node]; $n76 set-position $alt $inc 158 49.09 $plane
    set n77 [$ns node]; $n77 set-position $alt $inc 158 81.82 $plane
    set n78 [$ns node]; $n78 set-position $alt $inc 158 114.55 $plane
    set n79 [$ns node]; $n79 set-position $alt $inc 158 147.27 $plane
    set n80 [$ns node]; $n80 set-position $alt $inc 158 180 $plane
    set n81 [$ns node]; $n81 set-position $alt $inc 158 212.73 $plane
    set n82 [$ns node]; $n82 set-position $alt $inc 158 245.45 $plane
    set n83 [$ns node]; $n83 set-position $alt $inc 158 278.18 $plane
    set n84 [$ns node]; $n84 set-position $alt $inc 158 310.91 $plane
    set n85 [$ns node]; $n85 set-position $alt $inc 158 343.64 $plane

    # By setting the next_ variable on polar sats; handoffs can be optimized

    $n0 set_next $n10; $n1 set_next $n0; $n2 set_next $n1; $n3 set_next $n2
    $n4 set_next $n3; $n5 set_next $n4; $n6 set_next $n5; $n7 set_next $n6
    $n8 set_next $n7; $n9 set_next $n8; $n10 set_next $n9

    $n15 set_next $n25; $n16 set_next $n15; $n17 set_next $n16; $n18 set_next $n17
    $n19 set_next $n18; $n20 set_next $n19; $n21 set_next $n20; $n22 set_next $n21
    $n23 set_next $n22; $n24 set_next $n23; $n25 set_next $n24

    $n30 set_next $n40; $n31 set_next $n30; $n32 set_next $n31; $n33 set_next $n32
    $n34 set_next $n33; $n35 set_next $n34; $n36 set_next $n35; $n37 set_next $n36
    $n38 set_next $n37; $n39 set_next $n38; $n40 set_next $n39

    $n45 set_next $n55; $n46 set_next $n45; $n47 set_next $n46; $n48 set_next $n47
    $n49 set_next $n48; $n50 set_next $n49; $n51 set_next $n50; $n52 set_next $n51
    $n53 set_next $n52; $n54 set_next $n53; $n55 set_next $n54

    $n60 set_next $n70; $n61 set_next $n60; $n62 set_next $n61; $n63 set_next $n62
    $n64 set_next $n63; $n65 set_next $n64; $n66 set_next $n65; $n67 set_next $n66
    $n68 set_next $n67; $n69 set_next $n68; $n70 set_next $n69

    $n75 set_next $n85; $n76 set_next $n75; $n77 set_next $n76; $n78 set_next $n77
    $n79 set_next $n78; $n80 set_next $n79; $n81 set_next $n80; $n82 set_next $n81
    $n83 set_next $n82; $n84 set_next $n83; $n85 set_next $n84

    # configure the ISLs
    #source sat-iridium-links.tcl

    # Now that the positions are set up, configure the ISLs
    # Plane 1 intraplane
    $ns add-isl intraplane $n0 $n1 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n1 $n2 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n2 $n3 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n3 $n4 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n4 $n5 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n5 $n6 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n6 $n7 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n7 $n8 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n8 $n9 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n9 $n10 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n10 $n0 $opt(bw_isl) $opt(ifq) $opt(qlim)

    # Plane 2 intraplane
    $ns add-isl intraplane $n15 $n16 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n16 $n17 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n17 $n18 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n18 $n19 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n19 $n20 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n20 $n21 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n21 $n22 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n22 $n23 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n23 $n24 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n24 $n25 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n25 $n15 $opt(bw_isl) $opt(ifq) $opt(qlim)

    # Plane 3 intraplane
    $ns add-isl intraplane $n30 $n31 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n31 $n32 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n32 $n33 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n33 $n34 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n34 $n35 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n35 $n36 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n36 $n37 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n37 $n38 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n38 $n39 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n39 $n40 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n40 $n30 $opt(bw_isl) $opt(ifq) $opt(qlim)

    # Plane 4 intraplane
    $ns add-isl intraplane $n45 $n46 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n46 $n47 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n47 $n48 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n48 $n49 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n49 $n50 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n50 $n51 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n51 $n52 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n52 $n53 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n53 $n54 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n54 $n55 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n55 $n45 $opt(bw_isl) $opt(ifq) $opt(qlim)

    # Plane 5 intraplane
    $ns add-isl intraplane $n60 $n61 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n61 $n62 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n62 $n63 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n63 $n64 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n64 $n65 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n65 $n66 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n66 $n67 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n67 $n68 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n68 $n69 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n69 $n70 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n70 $n60 $opt(bw_isl) $opt(ifq) $opt(qlim)

    # Plane 6 intraplane
    $ns add-isl intraplane $n75 $n76 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n76 $n77 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n77 $n78 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n78 $n79 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n79 $n80 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n80 $n81 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n81 $n82 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n82 $n83 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n83 $n84 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n84 $n85 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl intraplane $n85 $n75 $opt(bw_isl) $opt(ifq) $opt(qlim)

    # Interplane ISLs
    # 2 interplane ISLs per satellite (one along the seam)

    # Plane 1-2
    $ns add-isl interplane $n0 $n15 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n1 $n16 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n2 $n17 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n3 $n18 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n4 $n19 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n5 $n20 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n6 $n21 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n7 $n22 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n8 $n23 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n9 $n24 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n10 $n25 $opt(bw_isl) $opt(ifq) $opt(qlim)

    # Plane 2-3
    $ns add-isl interplane $n15 $n30 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n16 $n31 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n17 $n32 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n18 $n33 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n19 $n34 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n20 $n35 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n21 $n36 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n22 $n37 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n23 $n38 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n24 $n39 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n25 $n40 $opt(bw_isl) $opt(ifq) $opt(qlim)

    # Plane 3-4
    $ns add-isl interplane $n30 $n45 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n31 $n46 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n32 $n47 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n33 $n48 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n34 $n49 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n35 $n50 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n36 $n51 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n37 $n52 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n38 $n53 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n39 $n54 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n40 $n55 $opt(bw_isl) $opt(ifq) $opt(qlim)

    # Plane 4-5
    $ns add-isl interplane $n45 $n60 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n46 $n61 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n47 $n62 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n48 $n63 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n49 $n64 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n50 $n65 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n51 $n66 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n52 $n67 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n53 $n68 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n54 $n69 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n55 $n70 $opt(bw_isl) $opt(ifq) $opt(qlim)

    # Plane 5-6
    $ns add-isl interplane $n60 $n75 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n61 $n76 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n62 $n77 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n63 $n78 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n64 $n79 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n65 $n80 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n66 $n81 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n67 $n82 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n68 $n83 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n69 $n84 $opt(bw_isl) $opt(ifq) $opt(qlim)
    $ns add-isl interplane $n70 $n85 $opt(bw_isl) $opt(ifq) $opt(qlim)

    # Set up terrestrial nodes
    $ns node-config -satNodeType terminal
    set n100 [$ns node]
    $n100 set-position 37.9 -122.3; # Berkeley
    set n101 [$ns node]
    $n101 set-position 42.3 -71.1; # Boston

    # Add GSL links
    # It doesn't matter what the sat node is (handoff algorithm will reset it)
    $n100 add-gsl polar $opt(ll) $opt(ifq) $opt(qlim) $opt(mac) $opt(bw_up) \
    $opt(phy) [$n0 set downlink_] [$n0 set uplink_]
    $n101 add-gsl polar $opt(ll) $opt(ifq) $opt(qlim) $opt(mac) $opt(bw_up) \
    $opt(phy) [$n0 set downlink_] [$n0 set uplink_]

    # Trace all queues
    $ns trace-all-satlinks $outfile
    $ns_ namtrace-all-satlinks $nf

    # Attach agents
    set udp0 [new Agent/UDP]
    $ns attach-agent $n100 $udp0
    set cbr0 [new Application/Traffic/CBR]
    $cbr0 attach-agent $udp0
    $cbr0 set interval_ 1.0

    set null0 [new Agent/Null]
    $ns attach-agent $n101 $null0

    $ns connect $udp0 $null0
    $ns at 1.0 "$cbr0 start"

    # We're using a centralized routing genie-- create and start it here
    set satrouteobject_ [new SatRouteObject]
    $satrouteobject_ compute_routes

    $ns at 30.0 "finish" ; # one earth rotation

    proc finish {} {
    global ns outfile nf
    $ns flush-trace
    close $outfile
    close $nf

    puts "running nam..."
    exec nam out.nam &

    exit 0
    }

    $ns run
    0