[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ns] Segmentation fault in Nortel's Diffserv Module
Hi,
I am using Nortel's Diffserv module to do some experiments, but I met
'segmentation default (core dumped)' when I tried to add two physical
queue (each has 3 virtual queue). Related TCL scripts are listed below,
could any body tell me why segmentaion fault happed? Thank you very
much!
# This script is modifed from ds-cbr-trtcm.tcl
set ns [new Simulator]
set cir0 1000000
set cbs0 2000
set pir0 1000000
set pbs0 3000
set rate0 3000000
set cir1 1000000
set cbs1 2000
set pir1 1000000
set pbs1 3000
set rate1 3000000
set testTime 85.0
set packetSize 1000
# Set up the network topology shown at the top of this file:
set s1 [$ns node]
set s2 [$ns node]
set e1 [$ns node]
set core [$ns node]
set e2 [$ns node]
set dest [$ns node]
$ns duplex-link $s1 $e1 10Mb 5ms CBQ
$ns duplex-link $s2 $e1 10Mb 5ms CBQ
$ns simplex-link $e1 $core 10Mb 5ms dsRED/edge
$ns simplex-link $core $e1 10Mb 5ms dsRED/core
$ns simplex-link $core $e2 5Mb 5ms dsRED/core
$ns simplex-link $e2 $core 5Mb 5ms dsRED/edge
$ns duplex-link $e2 $dest 10Mb 5ms CBQ
$ns duplex-link-op $s1 $e1 orient down-right
$ns duplex-link-op $s2 $e1 orient up-right
$ns duplex-link-op $e1 $core orient right
$ns duplex-link-op $core $e2 orient right
$ns duplex-link-op $e2 $dest orient right
set qE1C [[$ns link $e1 $core] queue]
set qE2C [[$ns link $e2 $core] queue]
set qCE1 [[$ns link $core $e1] queue]
set qCE2 [[$ns link $core $e2] queue]
# Set DS RED parameters from Edge1 to Core:
$qE1C meanPktSize $packetSize
$qE1C set numQueues_ 2
$qE1C setNumPrec 3
$qE1C addPolicyEntry [$s1 id] [$dest id] trTCM 10 $cir0 $cbs0 $pir0
$pbs0
$qE1C addPolicyEntry [$s2 id] [$dest id] trTCM 18 $cir1 $cbs1 $pir1
$pbs1
$qE1C addPolicerEntry trTCM 10 12 14
$qE1C addPolicerEntry trTCM 18 20 22
$qE1C addPHBEntry 10 0 0
$qE1C addPHBEntry 12 0 1
$qE1C addPHBEntry 14 0 2
$qE1C addPHBEntry 18 1 0
$qE1C addPHBEntry 20 1 1
$qE1C addPHBEntry 22 1 2
puts "qE1C addPHBEntry OK!"
~~~~~~ I get OK message here
$qE1C configQ 0 0 80 100 0.02
$qE1C configQ 0 1 60 80 0.10
$qE1C configQ 0 2 40 60 0.20
$qE1C configQ 1 0 20 40 0.10
puts "OK!"
~~~~~~ I get OK message here
$qE1C configQ 1 1 10 20 0.20
puts "OK!"
~~~~~~ NO OK message, segmentation fault here
$qE1C configQ 1 2 5 10 0.30