[ns] help me to find the segmentation fault

azua ab nora_azua at hotmail.com
Mon May 10 02:14:30 PDT 2004


anybody please help me to find where is the segmentation fault!if you guys 
know about this problem, do emails to me.below is my program


set ns [new Simulator]


set cir0  1000000

set cbs0    10000
set ebs0     3000

set rate0 4000000

set cir1  1000000

set cbs1    10000
set ebs1     6000

set rate1 4000000
set cir2  1000000
set cbs2    10000
set ebs2     9000
set rate2 4000000



set testTime 85.0

set packetSize 1000
#defining constants

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

# Set up the network topology shown at the top of this file:

set s1 [$ns node]

set s2 [$ns node]
set s3 [$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 DropTail

$ns duplex-link $s2 $e1 10Mb 5ms DropTail

$ns duplex-link $s3 $e1 10Mb 5ms DropTail


$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 DropTail


#$ns duplex-link-op $s1 $e1 orient down-right
#$ns duplex-link-op $s2 $e1 orient right

#$ns duplex-link-op $s3 $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_ 1

$qE1C setNumPrec 3

$qE1C addPolicyEntry [$s1 id] [$dest id] TokenBucket 10 $cir0 $cbs0 $ebs0

$qE1C addPolicyEntry [$s2 id] [$dest id] TokenBucket 20 $cir1 $cbs1 $ebs1
$qE1C addPolicyEntry [$s3 id] [$dest id] TokenBucket 30 $cir2 $cbs2 $ebs2

$qE1C addPolicerEntry TokenBucket 10 11

$qE1C addPolicerEntry TokenBucket 20 21
$qE1C addPolicerEntry TokenBucket 30 31
$qE1C addPHBEntry 10 0 0

$qE1C addPHBEntry 11 0 1

$qE1C addPHBEntry 20 1 0

$qE1C addPHBEntry 21 1 1
$qE1C addPHBEntry 30 2 0

$qE1C addPHBEntry 31 2 2

$qE1C configQ 0 0 60 84 0.02

$qE1C configQ 0 1 55 77 0.08
$qE1C configQ 1 0 50 70 0.14
$qE1C configQ 1 1 45 63 0.20
$qE1C configQ 2 0 40 56 0.26
$qE1C configQ 2 2 35 49 0.30

# Set DS RED parameters from Edge2 to Core:

$qE2C meanPktSize $packetSize

$qE2C set numQueues_ 1

$qE2C setNumPrec 3

$qE2C addPolicyEntry [$dest id] [$s1 id] TokenBucket 10 $cir0 $cbs0 $ebs0

$qE2C addPolicyEntry [$dest id] [$s2 id] TokenBucket 20 $cir1 $cbs1 $ebs1
$qE2C addPolicyEntry [$dest id] [$s3 id] TokenBucket 30 $cir2 $cbs2 $ebs2

$qE2C addPolicerEntry TokenBucket 10 11
$qE2C addPolicerEntry TokenBucket 20 21
$qE2C addPolicerEntry TokenBucket 30 31

$qE2C addPHBEntry 10 0 0

$qE2C addPHBEntry 11 0 1

$qE2C addPHBEntry 20 1 0

$qE2C addPHBEntry 21 1 1
$qE2C addPHBEntry 30 2 0

$qE2C addPHBEntry 31 2 2

$qE2C configQ 0 0 60 84 0.02

$qE2C configQ 0 1 55 77 0.08

$qE2C configQ 0 1 50 70 0.14
$qE2C configQ 1 1 45 63 0.20
$qE2C configQ 2 0 40 56 0.26
$qE2C configQ 2 2 35 49 0.30

# Set DS RED parameters from Core to Edge1:

$qCE1 meanPktSize $packetSize

$qCE1 set numQueues_ 1

$qCE1 setNumPrec 3

$qCE1 addPHBEntry 10 0 0

$qCE1 addPHBEntry 11 0 1

$qCE1 addPHBEntry 20 1 0

$qCE1 addPHBEntry 21 1 1
$qCE1 addPHBEntry 30 2 0

$qCE1 addPHBEntry 31 2 2

$qCE1 configQ 0 0 60 84 0.02

$qCE1 configQ 0 1 55 77 0.08
$qCE1 configQ 0 1 50 70 0.14
$qCE1 configQ 1 1 45 63 0.20
$qCE1 configQ 2 0 40 56 0.26
$qCE1 configQ 2 2 35 49 0.30

# Set DS RED parameters from Core to Edge2:

$qCE2 setSchedularMode PRI

$qCE2 addQueueRate 0 3000000

$qCE2 meanPktSize $packetSize

$qCE2 set numQueues_ 1

$qCE2 setNumPrec 3

$qCE2 addPHBEntry 10 0 0

$qCE2 addPHBEntry 11 0 1

$qCE2 addPHBEntry 20 1 0

$qCE2 addPHBEntry 21 1 1
$qCE2 addPHBEntry 30 2 0

$qCE2 addPHBEntry 31 2 2

$qCE2 configQ 0 0 60 84 0.02

$qCE2 configQ 0 1 55 77 0.08
$qCE2 configQ 0 2 50 70 0.14

$qCE2 configQ 1 0 45 63 0.20

$qCE2 configQ 1 1 40 56 0.26
$qCE2 configQ 2 2 35 49 0.30

# Set up one CBR connection between source1 and the destination:

set udp0 [new Agent/UDP]

$ns attach-agent $s1 $udp0

set cbr0 [new Application/Traffic/CBR]

$cbr0 attach-agent $udp0

$cbr0 set packet_size_ $packetSize

$udp0 set packetSize_ $packetSize

$cbr0 set rate_ $rate0

set null0 [new Agent/Null]

$ns attach-agent $dest $null0

$ns connect $udp0 $null0

# Set up one PARETO connection between source2 and the destination:
set udp1 [new Agent/UDP]
$ns attach-agent $s2 $udp0
set p [new Application/Traffic/Pareto]
$p set packetSize_ $packetSize
$p set burst_time_ 500ms
$p set idle_time_ 500ms
$p set rate_ $rate1
$p set shape_ 1.5
set null0 [new Agent/Null]
$ns attach-agent $dest $null0
$ns connect $udp1 $null0

# Set up the EXP connection between source3 and the destination:
set tcp2 [new Agent/TCP]
$ns attach-agent $s3 $tcp2
set exp2 [new Application/Traffic/Exponential]
$exp2 attach-agent $tcp2
set sink [new Agent/TCPSink]
$ns attach-agent $dest $sink
$ns connect $tcp2 $sink

proc finish {} {

    global ns nf
	$ns flush-trace
	close $nf
	exec nam hw.nam &
	exit 0

}



$qE1C printPolicyTable

$qE1C printPolicerTable


$ns at 0.0 "$cbr0 start"

$ns at 0.0 "$p start"
$ns at 0.0 "$exp2 start"

$ns at 20.0 "$qCE2 printStats"

$ns at 40.0 "$qCE2 printStats"

$ns at 60.0 "$qCE2 printStats"

$ns at 80.0 "$qCE2 printStats"

$ns at $testTime "$cbr0 stop"

$ns at $testTime "$p stop"
$ns at $testTime "$exp2 stop"

$ns at [expr $testTime + 1.0] "finish"



$ns run

_________________________________________________________________
Using a handphone prepaid card? Reload your credit online! 
http://www.msn.com.my/reloadredir/default.asp



More information about the Ns-users mailing list