NS2 programa TCP por erro de canal barulhento

1

Definir modelo de erro no link n2 para n3

set loss_module [novo ErrorMode] $ loss_module set rate_ 0.1

Crie a instância do Simulador

definir ns [novo simulador] $ ns cor Vermelho $ ns cor Azul

Abra o arquivo de rastreamento do NAM

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

Abra o arquivo de rastreamento

defina tf [abrir out.tr w] set windowVsTime2 [open WindowVsTimeNReno w] $ ns trace-all $ tf

Definir um procedimento de 'acabamento'

proc finish {} {     global ns nf tf     $ ns flush-trace     fechar $ nf     cose $ tf     exec nam out.nam & amp;     sair 0 }

Crie quatro nós

set n0 [ns $ ns] set n1 [ns $ ns] set n2 [ns $ ns] set n3 [$ ns node]

$ ns em 0,1 "n1 label \" CBR \ "" $ ns em 1.0 "n0 label \" FTP \ ""

Criar links entre os nós

$ ns duplex-link $ n0 $ n2 2Mb 10 ms DropTail $ ns duplex-link $ n1 $ n2 2Mb 10 ms DropTail $ ns simplex-link $ n2 $ n3 0.07Mb 20ms DropTail $ ns simplex-link $ n3 $ n2 0.07Mb 20ms Droptail

Definir o tamanho da fila para o link n2-n3 a 10

$ ns limite da fila $ n2 $ n3 10

Monitore a fila para o link n2-n3 para NAM

$ ns simplex-link op $ n2 $ n3 queuePos 0.5

Definir modelo de erro no link n3 para n2

set loss_module [novo ErrorModel] $ loss_module set rate_ 0,2 $ loss_module ranvar [new RandomVariable / Uniform] $ loss_module drop-target [novo agente / nulo] $ ns lossmodel $ loss_module $ n2 $ n3

desanexar tcp e afundar agente

$ ns em 624,5 "$ ns detach-agent $ n0 $ tcp; $ ns detach-agent $ n3 $ sink"

$ ns em 625,0 "acabamento" $ ns é executado

O erro que estou recebendo depois de executar o código acima é o seguinte:

nome do comando inválido

"ErrorMode"

durante a execução

"ErrorMode create _o3"

invocado de dentro

"catch" $ className cria $ o $ args "msg"

invocado de dentro

"if [catch" $ className criar $ o $ args "msg] {

if [string match "__FAILED_SHADOW_OBJECT_" $ msg] {

excluir $ o

return ""

}

global errorInfo

erro "class $ ..."

(procedure "new" line 3)

invoked from within

"novo ErrorMode"

invoked from within

"set loss_module [new ErrorMode]"

(file "u.tcl" line 2)
    
por Vishavdeep 11.10.2015 / 17:43

0 respostas