【问题标题】:drop packet is showing in .cc file but is not included in trace file NS-2丢弃数据包显示在 .cc 文件中,但未包含在跟踪文件 NS-2 中
【发布时间】:2015-10-31 10:30:28
【问题描述】:

我正在运行一个存在瓶颈队列的脚本(Queue/LTEQueue/DLAirQueue,它有两个指向 DropTail 队列的对象指针)。使用此队列(通过 printf 检查,let, drop packet=8000)文件时显示丢弃的数据包,但不包含在跟踪文件 (.tr) 中(没有“d”) .

1. $ns simplex-link $eNB $UE($i) 10Mb 2ms DropTail 
2. $ns simplex-link $eNB $UE($i) 10Mb 2ms LTEQueue/DLAirQueue 

如果使用 1,则 [drop_->recv(p);] 有效;数据包像往常一样被丢弃,也显示在跟踪文件中。 但是,如果使用 2,则 [Packet::free(p);] 有效;没有丢包和跟踪文件一样。

谁能在这个问题上帮助那些在 NS 2.35 中使用 LTE 模型的人?

/common/connector.cc

void Connector::drop(Packet* p)
{
if (drop_ != 0)
drop_->recv(p);
else
Packet::free(p);
}

【问题讨论】:

    标签: ns2 lte


    【解决方案1】:

    ?您是否将新函数编译为新的可执行文件“ns”?

    (“ns 运行时”不使用 files.cc)。

    除此之外,ns2 是一个 tcl/otcl 应用程序,您必须调查是否还必须将新功能添加到 tcl/lib/{ [files].tcl } .... ( tcl/lib 中的更改/* 也必须编译成新的 'ns'。)


    【讨论】:

    • @Kund :我创建了一个使用 droptail 队列的新队列。我重新编译并制作了一个新的可执行文件 ns。当由 droptail 运行时,它显示“d”,但当由我的队列运行时,它没有显示“d”。为什么??我不明白。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-06
    • 2011-06-04
    • 2019-10-30
    • 1970-01-01
    • 1970-01-01
    • 2018-02-18
    相关资源
    最近更新 更多