NS2新的AQM实施

时间:2017-11-17 12:06:58

标签: ns2

我目前正在研究NS2关于包括RED在内的不同队列管理器。我正在尝试将非内置的队列管理器与FRED和BLUE结合使用。我一直在尝试几种方法和指令,包括那些只能在所述队列管理器的实际研究论文中找到的方法和指令。我也在这里搜索但没有运气。顺便说一句,我收到了这个错误。

invalid command name "Queue/FRED"
    while executing
"Queue/FRED create _o42 "
    invoked from within
"catch "$className create $o $args" msg"
    invoked from within
"if [catch "$className create $o $args" msg] {
if [string match "__FAILED_SHADOW_OBJECT_" $msg] {
delete $o
return ""
}
global errorInfo
error "class $..."
    (procedure "new" line 3)
    invoked from within
"new Queue/$qtype"
    ("default" arm line 3)
    invoked from within
"switch -exact $qtype {
ErrorModule {
if { [llength $args] > 0 } {
set q [eval new $qtype $args]
} else {
set q [new $qtype Fid]
}
}
intserv {
set qtyp..."
    (procedure "_o3" line 14)
    (Simulator simplex-link line 14)
    invoked from within
"_o3 simplex-link _o13 _o16 1Mb 10ms FRED"
    ("eval" body line 1)
    invoked from within
"eval $self simplex-link $n1 $n2 $bw $delay $type $args"
    (procedure "_o3" line 8)
    (Simulator duplex-link line 8)
    invoked from within
"$ns duplex-link $n1 $n2 1Mb 10ms FRED"
    (file "fred.tcl" line 31)

这些是我尝试添加FRED和BLUE的一些说明但返回相同的错误。

Berkeley Instructions | NS2 instructions

任何帮助将不胜感激。谢谢! 编辑:我将错误粘贴在一个片段中,以便整齐地显示错误代码。

1 个答案:

答案 0 :(得分:0)

构建ns2 + FRED的示例

tar xvf ns-allinone-2.34.tar.gz
cd ns-allinone-2.34/
patch -p0 < FRED_ns234.patch

https://drive.google.com/file/d/1sriJu2VjvxzT63XAdrohgCppx1nzu5j8/view?usp=sharing

export CC=gcc34 CXX=g++34 && ./install
cd ns-2.34/
cp ns ns234-FRED    (This is your backup and safe identifier for ns+FRED)
sudo cp ns234-FRED /usr/local/bin/

模拟:$ ns234-FRED [simulation].tcl

和ns-2.35→ns-allinone-2.35_gcc5.tar.gz https://drive.google.com/file/d/0B7S255p3kFXNVVlxR0ZNRGVORjQ/view?usp=sharing

补丁:FRED_ns235.patch https://drive.google.com/file/d/1xnYd0xXV53mLloL1Wjzh_HtGua71jpx5/view?usp=sharing

Ubuntu下载...

64位gcc34 https://drive.google.com/file/d/0B7S255p3kFXNRTkzQnRSNXZ6UVU/view?usp=sharing ... g ++ 34 https://drive.google.com/file/d/0B7S255p3kFXNV3J3bnVoWGNWdG8/view?usp=sharing

32位gcc34 https://drive.google.com/file/d/0B7S255p3kFXNTzNKRHBEMHFwNTg/view?usp=sharing ... g ++ 34 https://drive.google.com/file/d/0B7S255p3kFXNT0JTTVNDSHpNVGM/view?usp=sharing

安装:$ cd Downloads/ && sudo gdebi [package]_[arch]

Howto FRED,ns-2.35,Ubuntu 16.04

tar xvf ns-allinone-2.35_gcc5.tar.gz
cd ns-allinone-2.35/
patch -p0 < FRED_ns235.patch
./install              // Stops with queue/csfq* error.
cd ns-2.35/            // Edit the Makefile line 37 to CPP = g++34
make                   // Stops with linker error (Or earlier)
                       // Edit the Makefile line 37 to CPP = g++
make
cp ns ns235-FRED
sudo cp ns235-FRED /usr/local/bin/