Troubleshooting
http://nsnam.isi.edu/nsnam/index.php/Troubleshooting
http://ramakrishnamundugar.blogspot.tw/p/network-simulator-v2.html
2012年9月5日 星期三
2012年8月23日 星期四
ns2 - multi channel & 設定ll_(5)時發生錯誤訊息
http://www.cse.msu.edu/~wangbo1/ns2/nshowto8.html
原本的multi channel, 在添加新的interface時, 只有加五筆資料, 所以最多只能設定五個NIC資訊.
像我要設定ll_(5)時, 就會出現錯誤訊息了.
因為原本的code頂多只有到ll_(4)
(可參閱tcl/lib/ns-mobilenode.tcl)
========================================
簡單說, 如果我現在想要把NIC的資訊設定到8張網卡時, 要參考網址的修改資訊.
http://www.cse.msu.edu/~wangbo1/ns2/nshowto8.html
1. Modifications in tcl/lib/ns-lib.tcl
2. Modifications in tcl/lib/ns-mobilenode.tcl
像是原本語法是寫chan chan2 chan3 chan4 chan5, 那就在後面多加chan6, chan7, chan8.
還有$sndT5 target [$self set ll_(4)], 後面再多加$sndT6 target [$self set ll_(5)]....等
全部以此類推!!
========================================
還有ns-2.29/manual/manual.{cc, h}
在.h要NsObject *downtarget5_; 的後面多加三筆資訊
在.cc
1. 要在這個後面多加三組
else if (prte->nic_id == 5)
downtarget5_->recv(p, (Handler *)0);
2. 還有downtarget5_(0) 要再多三筆資訊
3. 這個也是
else if (strcasecmp (argv[1], "down-target-5") == 0) {
downtarget5_ = (NsObject *) obj;
return TCL_OK;
}
========================================
大概就是這樣吧 zzzZZZ....
========================================
補充幾個容易忘記設定的檔案:
gedit ns-2.29/tcl/lib/ns-lib.tcl -> 設定MCMI的數量
gedit ns-2.29/tcl/lib/ns-mobilenode.tcl -> 設定MCMI的數量
gedit ns-2.29/mac/mac-802_11.cc -> 設定MCMI的數量
========================================
需要修改檔案的清單備份
Multi-channel Multi-interface Extension
1. Modifications in tcl/lib/ns-lib.tcl
2. Modifications in tcl/lib/ns-mobilenode.tcl
3. Modifications in mac/arp.cc
4. Modifications in mac/channel.h
5. Modifications in mac/channel.cc
6. Modifications in mac/mac-802_11.cc
Use Multi-channel Multi-interface — Manual Routing Protocol (proposed in Hyacinth)
7. Modifications in tcl/lib/ns-lib.tcl
8. Modifications in tcl/lib/ns-mobilenode.tcl
9. Modifications in common/packet.h
10. Modifications in apps/udp.h
11. Modifications in apps/udp.cc
12. Modifications in tcp/tcp.h
13. Modifications in tcp/tcp.cc
14. Modifications in tcp/tcp-sink.h
15. Modifications in tcp/tcp-sink.cc
16. Manual routing protocol implmentation and NS2 configuration
Simuilation Results
17. Simulation results for validating the extension
原本的multi channel, 在添加新的interface時, 只有加五筆資料, 所以最多只能設定五個NIC資訊.
像我要設定ll_(5)時, 就會出現錯誤訊息了.
因為原本的code頂多只有到ll_(4)
(可參閱tcl/lib/ns-mobilenode.tcl)
========================================
簡單說, 如果我現在想要把NIC的資訊設定到8張網卡時, 要參考網址的修改資訊.
http://www.cse.msu.edu/~wangbo1/ns2/nshowto8.html
1. Modifications in tcl/lib/ns-lib.tcl
2. Modifications in tcl/lib/ns-mobilenode.tcl
像是原本語法是寫chan chan2 chan3 chan4 chan5, 那就在後面多加chan6, chan7, chan8.
還有$sndT5 target [$self set ll_(4)], 後面再多加$sndT6 target [$self set ll_(5)]....等
全部以此類推!!
========================================
還有ns-2.29/manual/manual.{cc, h}
在.h要NsObject *downtarget5_; 的後面多加三筆資訊
在.cc
1. 要在這個後面多加三組
else if (prte->nic_id == 5)
downtarget5_->recv(p, (Handler *)0);
2. 還有downtarget5_(0) 要再多三筆資訊
3. 這個也是
else if (strcasecmp (argv[1], "down-target-5") == 0) {
downtarget5_ = (NsObject *) obj;
return TCL_OK;
}
========================================
大概就是這樣吧 zzzZZZ....
========================================
補充幾個容易忘記設定的檔案:
gedit ns-2.29/tcl/lib/ns-lib.tcl -> 設定MCMI的數量
gedit ns-2.29/tcl/lib/ns-mobilenode.tcl -> 設定MCMI的數量
gedit ns-2.29/mac/mac-802_11.cc -> 設定MCMI的數量
========================================
需要修改檔案的清單備份
Multi-channel Multi-interface Extension
1. Modifications in tcl/lib/ns-lib.tcl
2. Modifications in tcl/lib/ns-mobilenode.tcl
3. Modifications in mac/arp.cc
4. Modifications in mac/channel.h
5. Modifications in mac/channel.cc
6. Modifications in mac/mac-802_11.cc
Use Multi-channel Multi-interface — Manual Routing Protocol (proposed in Hyacinth)
7. Modifications in tcl/lib/ns-lib.tcl
8. Modifications in tcl/lib/ns-mobilenode.tcl
9. Modifications in common/packet.h
10. Modifications in apps/udp.h
11. Modifications in apps/udp.cc
12. Modifications in tcp/tcp.h
13. Modifications in tcp/tcp.cc
14. Modifications in tcp/tcp-sink.h
15. Modifications in tcp/tcp-sink.cc
16. Manual routing protocol implmentation and NS2 configuration
Simuilation Results
17. Simulation results for validating the extension
2012年6月28日 星期四
在XP上利用apache提供WebDAV服務
有天發現iPad似乎可以利用WebDAV的東西, 這樣就可以有超大的網路空間了 科科~
然後try了一下, 似乎是成功了, 只是我不知道要怎麼上傳檔案 -.-
下載, 讀取檔案的話倒是沒問題 = =+
1. 去安裝apache ( 在 http://httpd.apache.org/download.cgi )
2. 進入apache的bin資料夾, 先建立你要的帳號, 以下為範例 (一行)
htdigest -c "C:/Program Files/Apache Software Foundation/Apache2.2/user.passwd" DAV-upload admin
(這個東西在 Apache2.2\cond\extra\httpd-dav.conf 有提到)
3. 進入apache安裝資料夾, 修改設定檔
( C:\Program Files\Apache Software Foundation\Apache2.2\conf )
需要修改 httpd.conf, 把裡面的這幾行前面的註解#刪掉
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule auth_digest_module modules/mod_auth_digest.so
Include conf/extra/httpd-dav.conf
4. 還要修改 extra資料夾下的httpd-dav.conf (Apache2.2\cond\extra\httpd-dav.con)
設定你想要的資料夾, 以下也是一個範例 XD
Alias /upload "D:/dav_upload"
Dav On
Order Allow,Deny
Allow from all
AuthType Digest
AuthName DAV-upload
AuthUserFile "C:/Program Files/Apache Software Foundation/Apache2.2/user.passwd"
AuthDigestProvider file
require user admin
5. 最後去ipad找webdav的程式, 網址輸入http://xxxxxxxxx/upload
然後輸入自己的帳號密碼, 就可以看到本機電腦上的D:/dav_upload裡面的東西 = =+
在設定過程中有看了這幾個網頁:
http://herb123456.pixnet.net/blog/post/1009884-%E3%80%90apache%E3%80%91webdav-%E7%9B%B8%E9%97%9C%E8%A8%AD%E5%AE%9A
http://www.errorhelp.com/search/details/86393/invalid-command-authdigestprovider-perhaps-mis-spelled-or-defined-by-a-module-not-included-in-the-server-configuration
http://robert-linux.blogspot.tw/2009/10/ubuntu904-apache2-webdav.html
http://llls.cpshs.tyc.edu.tw/mediawiki/index.php?title=%E8%A8%AD%E5%AE%9A%E7%B5%A6Ipad%E7%9A%84WebDav&redirect=no
----
好像記的有點凌亂 XD
---------------------------------
[2012.12.19 補充]
原本都一直無法上傳&刪除檔案, 在檢查設定檔有看到這句
DavLockDB "C:/Program Files/Apache Software Foundation/Apache2.2/var/DavLock"
當初安裝apache的時候並沒有var/DavLock這個資料夾, 建立這個資料夾後似乎一切都正常運作了!?
科科~~
然後try了一下, 似乎是成功了, 只是我不知道要怎麼上傳檔案 -.-
下載, 讀取檔案的話倒是沒問題 = =+
1. 去安裝apache ( 在 http://httpd.apache.org/download.cgi )
2. 進入apache的bin資料夾, 先建立你要的帳號, 以下為範例 (一行)
htdigest -c "C:/Program Files/Apache Software Foundation/Apache2.2/user.passwd" DAV-upload admin
(這個東西在 Apache2.2\cond\extra\httpd-dav.conf 有提到)
3. 進入apache安裝資料夾, 修改設定檔
( C:\Program Files\Apache Software Foundation\Apache2.2\conf )
需要修改 httpd.conf, 把裡面的這幾行前面的註解#刪掉
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule auth_digest_module modules/mod_auth_digest.so
Include conf/extra/httpd-dav.conf
4. 還要修改 extra資料夾下的httpd-dav.conf (Apache2.2\cond\extra\httpd-dav.con)
設定你想要的資料夾, 以下也是一個範例 XD
Alias /upload "D:/dav_upload"
Dav On
Order Allow,Deny
Allow from all
AuthType Digest
AuthName DAV-upload
AuthUserFile "C:/Program Files/Apache Software Foundation/Apache2.2/user.passwd"
AuthDigestProvider file
require user admin
5. 最後去ipad找webdav的程式, 網址輸入http://xxxxxxxxx/upload
然後輸入自己的帳號密碼, 就可以看到本機電腦上的D:/dav_upload裡面的東西 = =+
在設定過程中有看了這幾個網頁:
http://herb123456.pixnet.net/blog/post/1009884-%E3%80%90apache%E3%80%91webdav-%E7%9B%B8%E9%97%9C%E8%A8%AD%E5%AE%9A
http://www.errorhelp.com/search/details/86393/invalid-command-authdigestprovider-perhaps-mis-spelled-or-defined-by-a-module-not-included-in-the-server-configuration
http://robert-linux.blogspot.tw/2009/10/ubuntu904-apache2-webdav.html
http://llls.cpshs.tyc.edu.tw/mediawiki/index.php?title=%E8%A8%AD%E5%AE%9A%E7%B5%A6Ipad%E7%9A%84WebDav&redirect=no
----
好像記的有點凌亂 XD
---------------------------------
[2012.12.19 補充]
原本都一直無法上傳&刪除檔案, 在檢查設定檔有看到這句
DavLockDB "C:/Program Files/Apache Software Foundation/Apache2.2/var/DavLock"
當初安裝apache的時候並沒有var/DavLock這個資料夾, 建立這個資料夾後似乎一切都正常運作了!?
科科~~
2012年4月29日 星期日
ns: record: can't read "curq_": no such variable
又要去研究前人的code了 XD....
這次遇到的錯誤訊息是
ns: record: can't read "curq_": no such variable
後來, 照這個網頁的步驟, tcl就可以跑了 XD~
http://140.116.164.80/~smallko/ns2/BOOK2_FAQ.htm
這個故事告訴我們, 要把對方的code複製完整一點,最好是整個資料夾+.tcl檔
(要改的bug太多了, 那就改天吧!? XD)
這次遇到的錯誤訊息是
ns: record: can't read "curq_": no such variable
後來, 照這個網頁的步驟, tcl就可以跑了 XD~
http://140.116.164.80/~smallko/ns2/BOOK2_FAQ.htm
F.問題描述: 如何觀察無線節點的佇列長度。
這個故事告訴我們, 要把對方的code複製完整一點,最好是整個資料夾+.tcl檔
(要改的bug太多了, 那就改天吧!? XD)
2012年3月29日 星期四
2012年3月28日 星期三
2012年3月13日 星期二
ns2 奇怪的安裝錯誤訊息
這幾天在重新安裝ns2 + cygwin
可是./install之後, 一直遇到一堆錯誤訊息, 像是:
2 [main] gcc 44368 fork_copy: linked dll data/bss pass 0 failed, 0x5CF000.
.0x5CF040, done 0, windows pid 44008, Win32 error 487
1327733 [main] gcc 44368 fork_copy: linked dll data/bss pass 0 failed, 0x5CF000.
.0x5CF040, done 0, windows pid 44792, Win32 error 487
3641693 [main] gcc 44368 fork_copy: linked dll data/bss pass 0 failed, 0x5CF000.
.0x5CF040, done 0, windows pid 42164, Win32 error 487
7962427 [main] gcc 44368 fork_copy: linked dll data/bss pass 0 failed, 0x5CF000.
.0x5CF040, done 0, windows pid 43792, Win32 error 487
gcc: fork: Resource temporarily unavailable
而且我還有把那個路徑加入沙盒的例外清單, 可是沒用 XD
後來把防毒軟體關掉(avast), 結果就沒有這個訊息了 -.-
linux & printscreen
http://tips.webdesign10.com/how-to-take-a-screenshot-with-ubuntu-linux
看了這篇才知道原來工具列那邊有個按鈕可以直接抓圖 XD
而且他還有提到一些指令來抓圖, 只是我懶得去試 科科~~
2012年3月6日 星期二
office錯誤訊息
忘了存錯誤訊息了 -.-
只記得有看到這些關鍵字: runtime error r6034
原本電腦的office是2003, 剛剛裝了新版的2010 (新舊版共存)
可是之後打開word的時候, 就會出現那個錯誤訊息 orz....
最後用這個指定就修好了 (重新登錄dll !?)
for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s%1
後記: 重開機之後又會出現相同的錯誤訊息, 所以最後直接砍掉2010 -.-
2012年2月24日 星期五
2012年1月11日 星期三
fedora 10 & rar檔
以前明明直接用yum就可以裝unrar, 可是剛剛卻發現不能安裝 (找不到套件)
所以要改成手動安裝了 科科~
直接打:
wget ftp://fr2.rpmfind.net/linux/rpmfusion/nonfree/fedora/releases/10/Everything/i386/os/unrar-3.7.8-3.fc10.i386.rpm
然後安裝:
rpm -ivh unrar-3.7.8-3.fc10.i386.rpm
就可以用unrar來解壓縮檔案了 XD
unrar x filename.rar
2012年1月5日 星期四
Fedora10 & ns-2.29
在安裝ns-allinone-2.29.2的時候, 會出現一些錯誤訊息
ex:
common/packet.h:231: warning: deprecated conversion from string constant to 'char*'
還有
'typedef' was ignored in this declaration
然後在這邊看到一些討論
改一下Makefile似乎就安裝成功了 = =+
簡單說:
先確定電腦上有gcc34和g++34, 沒有的話就用yum裝一下
yum install compat-gcc-34-c++
然後去修改ns-2.29/Makefile.in
把line 36, 37的
CC = @CC@
CPP = @CXX@
改成
CC = gcc34
CPP = g++34
再去./install就成功了 XD
20120314補充:
packet.h那個錯誤訊息, 可以在Makefile的CCOPT後面加上-Wno-write-strings這個參數解決.
http://nsnam.isi.edu/nsnam/index.php/Troubleshooting
================================================
補充: nam似乎安裝失敗, 可能也要改它的makefile吧 (我用不到, 沒差 XD)
以下是log:
Ns-allinone package has been installed successfully.
Here are the installation places:
tcl8.4.11: /ns2/ns-allinone-2.29/{bin,include,lib}
tk8.4.11: /ns2/ns-allinone-2.29/{bin,include,lib}
otcl: /ns2/ns-allinone-2.29/otcl-1.11
tclcl: /ns2/ns-allinone-2.29/tclcl-1.17
ns: /ns2/ns-allinone-2.29/ns-2.29/ns
xgraph: /ns2/ns-allinone-2.29/xgraph-12.1
gt-itm: /ns2/ns-allinone-2.29/itm, edriver, sgb2alt, sgb2ns, sgb2comns, sgb2hierns
----------------------------------------------------------------------------------
Please put /ns2/ns-allinone-2.29/bin:/ns2/ns-allinone-2.29/tcl8.4.11/unix:/ns2/ns-allinone-2.29/tk8.4.11/unix
into your PATH environment; so that you'll be able to run itm/tclsh/wish/xgraph.
IMPORTANT NOTICES:
(1) You MUST put /ns2/ns-allinone-2.29/otcl-1.11, /ns2/ns-allinone-2.29/lib,
into your LD_LIBRARY_PATH environment variable.
If it complains about X libraries, add path to your X libraries
into LD_LIBRARY_PATH.
If you are using csh, you can set it like:
setenv LD_LIBRARY_PATH
If you are using sh, you can set it like:
export LD_LIBRARY_PATH=
(2) You MUST put /ns2/ns-allinone-2.29/tcl8.4.11/library into your TCL_LIBRARY environmental
variable. Otherwise ns/nam will complain during startup.
(3) [OPTIONAL] To save disk space, you can now delete directories tcl8.4.11
and tk8.4.11. They are now installed under /ns2/ns-allinone-2.29/{bin,include,lib}
After these steps, you can now run the ns validation suite with
cd ns-2.29; ./validate
訂閱:
文章 (Atom)