NS2 新 AQM 实施
NS2 New AQM implementation
我目前正在研究 NS2,了解不同的队列管理器,包括 RED。我正在尝试合并非内置 NS2 的队列管理器,如 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 的一些说明,但 returns 同样的错误。
Berkeley Instructions |
NS2 instructions
任何帮助将不胜感激。谢谢!
编辑:我将错误粘贴在一个片段中以整齐地显示错误代码。
构建 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.patchhttps://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,Ubuntu16.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/
我目前正在研究 NS2,了解不同的队列管理器,包括 RED。我正在尝试合并非内置 NS2 的队列管理器,如 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 的一些说明,但 returns 同样的错误。
Berkeley Instructions | NS2 instructions
任何帮助将不胜感激。谢谢! 编辑:我将错误粘贴在一个片段中以整齐地显示错误代码。
构建 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.patchhttps://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,Ubuntu16.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/