- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Outline Introduction OTcl Trace File NAM Xgraph Introduction Why Simulator? 省錢 - 減少測試設備的購置成本 省時 - 加速演算法(協定)的修改調整 可依需求設定在任何的網路環境下來進行模擬 Introduction NS2 vs. OPNET Introduction Why NS2? 免費 open source - 新增、修改協定容易 研究標準 - 具公信力 Introduction NS2 源由 全名 - Network Simulator version 2 改版自REAL network simulator (1989) 由VINT project(UCB)所開發 目前由 SAMAN 和 CONSER 負責維護 Introduction NS2 特性 離散事件模擬(discrete-event) 由事件所驅動,紀錄不同時間不同事件之狀態 物件導向架構(object-oriented ) 可重用性(Reusability) 可維護性(Maintainability) : Introduction NS2 架構 Introduction C++ 處理封包傳送 修改或新增 agents、protocols… 不常更動, 執行速度快 OTcl 處理網路情境(scenario)模擬 運作已編譯過的 C++ 物件 常會更動, 執行速度較慢(interpreter) Introduction OTcl and C++:The Duality Introduction TCP/IP、NS2 和OSI 7-Layer 的大致對應關係 Introduction NS2 模擬流程 OTcl variables 設定 set x 100 # 設定 x 變數,x 值為100(注意這100是字串) set y 200 # 設定 y 變數,y 值為200 set z [expr $x+$y] # 透過 expr 將 $x $y 當成數字作數學運算, 並設定 z 變數為300 set a [set b 100] # 設定 a = b = 100 set array_(1) 21 # 設定一個陣列叫 array_, 並把 array_(1) 的值設為21 OTcl if 的範例 if { $k4 } { puts k 4 } else { puts k = 4 } # 如果變數 k 大於4, 則顯示出 k 4, 反之則顯示 k =4 OTcl while 的範例 set b 0 set i 100 while {$i = 0} { set b [expr $b+$i] incr i -1 } # 如在 i 大於等於0的情況下, 則將 b 的值和 i 相加並再回傳給 b, 然後 i 再減 1 OTcl for 的範例 for {set i 100} {$i =0} {incr i -1} { # for 迴圈內所要執行的程式碼 } procedure 的範例 proc show {} { # 副程式內容 } # 定義一個叫做 show 的副程式 Trace File Trace File Trace File 中各欄位的定義 1:代表事件的類別 r:代表目的端收到 packet +:代表 packet 放入 queue 中 -:代表 packet 從 queue 中取出 d:代表 queue 已經滿了,這個 packet 被 drop 掉 2:代表事件發生的時間 3:代表 packet 的 source node 4:代表 packet 的 destination node 5:代表 packet 的類別 Trace File Trace File 中各欄位的定義(Cont.) 6:代表 packet 的大小 (encoded in IP header) 7:代表 packet 的 flags 8:代表 connection(flow) 的 id 9:代表 source address ( node.port ) 10:代表 destinations address ( node.port ) 11:代表 packet 的 sequence number ( network layer protocols ) 12:代表 packet 的 id ( unique ) NAM Nam 是一個能將 NS2 模擬結果視覺化顯示出來的工具,它能顯示封包的流向和 Drop 等資訊 執行方式 nam trace-file NAM NAM 中有關 Node 的選項:c
文档评论(0)