撰寫ns2模擬器的時候,常會需要自行撰寫 agent 來驗證自己的系統是否能達成預期的功效
但是要在ns2中使用本身沒有提供的 agent 是需要在ns2中作些修改才能使用的
因此第一步就是在ns2中新增一個 agent.
Step 1.
把自訂的 agent 的資料夾放入「ns2 資料夾」中,名稱自訂(ZoneAgent) 「ns2資料夾」就等於下面這一串
|
|
↑ 就放在這個資料夾中
Step 2.
修改「ns2 資料夾」中的 Makefile.in 於 OBJ_CC= 該處加上 ZoneAgent/ZoneAgent.o
Step 3.
修改「ns2 資料夾」中 /common/packet.h 加上新的封包型態
ns2.32 之前:
在 enum packet_t 加上 PT_HybridZone ps.PT_NTYPE 需放置最後面
class p_info 的 public:p_info(){}內加上 name_[PT_HybridZone]=“PT_HybridZone”;
ps.PT_NTYPE 需放置最後面
ns2.32 之後:
static packet_t PT_NTYPE 前加上 static const packet_t PT_HybridZone=??
??是一個尚未用過得數字
但是請注意,這組數字一定要比 PT_NTYPE 的數字還小!
在class p_info 的 public:static void initName(){}內 name_[PT_NTYPE]= “undefined”; 前加上
name_[PT_HybridZone]=”ZoneAgent”;
Step 4.
開始編譯
case 1. (有改 Makefile.in 或 xx.h 時) 自「ns2 資料夾」中執行 ↓
|
|
case 2 (只有改 source code 亦即 xx.cc 時) 在「ns2 資料夾」中執行 make
以上資料參考至: sokoyo’s 隨手記