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