Microsoft PowerPoint - NS-2無線網路模擬

Similar documents
Microsoft PowerPoint - Aqua-Sim.pptx

WLAN 2

中文朗科AirTrackTM T600 迷你无线路由器用户手册.doc

Microsoft PowerPoint - 数据通信-ch1.ppt

OSI OSI 15% 20% OSI OSI ISO International Standard Organization 1984 OSI Open-data System Interface Reference Model OSI OSI OSI OSI ISO Prototype Prot

MAN- Metropolitan Area Network Resilient Packet Ring a : 5GHz 54Mbps b : 2.4GHz 11Mbps c : MAC Bridge 802.1D 80

TCP/IP TCP/IP OSI IP TCP IP IP TCP/IP TCP/IP

工程师培训

投影片 1

第 1 章 概 述 1.1 计 算 机 网 络 在 信 息 时 代 中 的 作 用 1.2 计 算 机 网 络 的 发 展 过 程 *1.2.1 分 组 交 换 的 产 生 *1.2.2 因 特 网 时 代 *1.2.3 关 于 因 特 网 的 标 准 化 工 作 计 算 机 网 络 在

IP505SM_manual_cn.doc

9 Internet 10 Internet

SAPIDO GR-1733 無線寬頻分享器

计算机网络

解 除 身 份 验 证 机 密 性 Wep 等 一 些 加 密 机 制 MSDU 传 递 (MAC Service Data Unit) 负 责 将 数 据 传 送 给 实 际 的 接 收 端 传 输 功 率 控 制 (Transmit Power Control 简 称 TPC) 欧 洲 标 准

一、

第3章 计算机网络体系结构

Microsoft PowerPoint - Performance Analysis of Video Streaming over LTE using.pptx

经华名家讲堂

IP TCP/IP PC OS µclinux MPEG4 Blackfin DSP MPEG4 IP UDP Winsock I/O DirectShow Filter DirectShow MPEG4 µclinux TCP/IP IP COM, DirectShow I

ebook48-8

计算机网络

雲端計算與網路 - Final Project

Microsoft Word - Mail2000_SecurityPatch_

ebook140-8


UDP 8.2 TCP/IP OSI OSI 3 OSI TCP/IP IP TCP/IP TCP/IP Transport Control Protocol TCP User Datagram Protocol UDP TCP TCP/IP IP TCP TCP/IP TC

IC-900W Wireless Pan & Tilt Wireless Pan & Tilt Remote Control / Night Vision FCC ID:RUJ-LR802UWG

BYOD IP+Optical (IP NGN) API 4. End-to-End (Service Aware) 5. IP NGN (IP Next Generation Network) ( ) Prime Carrier Management Access Edge Co

Introduction

第 11 章 互聯網技術 11.1 互聯 網 和 萬 維 網 的 發 展 歷 史 A. 互聯網的發展 互聯網是由 ARPANET 開 始發展的 1969 年 美國國防部高級研究計劃署 (ARPA) 把部分軍事研究所和大 的電腦連接起來 建造了㆒個實驗性的電腦網絡 稱為 ARPANET 並 列 的功能

Learning Java

...1 What?...2 Why?...3 How? ( ) IEEE / 23

Microsoft Word - 39.doc

穨control.PDF

Microsoft Word htm

財金資訊-80期.indd

RAQMON Context Setting MG PDA Applications RTP / FTP/ HTTP TCP/UDP S ignaling control plane (e.g. RS VP, NS IS) Streaming Media, Transaction, Bulk dat

ebook140-9

Microsoft Word 期交所簡章 _110805_

Microsoft Word - 第3章.doc

Simulator By SunLingxi 2003

84

AMP NETCONNECT

11N 无线宽带路由器

Chapter #

目 录

目 彔 1. 准 备 工 作 登 彔 设 置 功 能 说 明 实 时 监 控 基 本 控 制 功 能 设 置 画 质 调 节 彔 像 与 抓 拍


F5

C3_ppt.PDF

热设计网

<4D F736F F D20B8DFB5C8D1A7D0A3B1BEBFC6CEEFC1AACDF8B9A4B3CCD7A8D2B5D3A6D3C3D0CDC8CBB2C5C5E0D1F8D6B8B5BCD2E2BCFBA3A B0E6A3A92E646F6378>

<4D F736F F F696E74202D FC2B2B3F85FA44AAB49B0BBB4FABB50B977A8BEA874B2CEC2B2A4B6BB50C0B3A5CE2E707074>

SERVERIRON ADX

声 明 本 公 司 及 全 体 董 事 监 事 高 级 管 理 人 员 承 诺 公 开 转 让 说 明 书 不 存 在 虚 假 记 载 误 导 性 陈 述 和 重 大 遗 漏, 并 对 其 真 实 性 准 确 性 完 整 性 承 担 个 别 和 连 带 的 法 律 责 任 本 公 司 负 责 人 和

EE Lecture 11 (Wireless Communications Systems)

景德镇陶瓷学院科技艺术学院

附錄四 中國企業H 股公司名單 (主板)

bnb.PDF

ch09.PDF


AL-M200 Series

untitled

Microsoft PowerPoint - ch0.ppt

1377_SNAP_Selection_Guide.fm

100Mbps 100Mbps 1000Mbps 100Mbps 1000Mbps 100Mbps 100Mbps PD LXT Mbps 100Mbps 100Mbps 1

K301Q-D VRT中英文说明书141009

<4D F736F F F696E74202D20A1B6CFEEC4BFD2BB20B3F5CAB6BCC6CBE3BBFACDF8C2E7A1B7C8CECEF1C8FD20CAECCFA A1A24950D0ADD2E9BACD4950B5D8D6B72E707074>

NSC-161

10 IBM Louis V. Gerstner, Jr. 15 Moore's Law EPC PC 2-2

Transcription:

NS-2 無線網路模擬 Speaker : Rung Shiang Cheng ( 程榮祥 ) Department of Computer and Communication Kun Shan University http://teachers.ksu.edu.tw/ 1

Outline 2

Linux 下的 NS-2 安裝與設定 3

NS-2 是什麼? Network Simulator, version 2 物件導向網路模擬器 Router, Link, End point, TCP/IP protocols C++, OTCL NS-2 的執行流程 4

NS-2 的下載與安裝 下載 NS-2 NS-2 網址 http://www.isi.edu/nsnam/ns/ Download and Build ns Getting everything at once Ns-allinone 安裝 NS-2 解壓縮 安裝 5

NS-2 的下載與安裝 6

NS-2 的下載與安裝 安裝完成訊息 7

NS-2 的下載與安裝 修改使用者環境設定 將 NS-2 要求設定的路徑, 加入 PATH 參數中 8

個別套件的安裝 以 NAM 為例 Download and Build ns Getting the Pieces 將下載的檔案移至 NS-allinone 的目錄下 9

個別套件的安裝 以 NAM 為例 使用 tar 指令將下載的檔案解壓縮 開始進行安裝 10

個別套件的安裝 以 NAM 為例 指定使用新的 NAM 版本來取代舊的版本 11

Getting Older Versions of Ns 12

TCL 簡介 13

TCL 語法簡介 Hello world! 設定變數 ( 例 1) 數學運算設定變數 ( 例 2) 14

流程控制 if 條件敘述 for 迴圈 ( 例 1) for 迴圈 ( 例 2) 15

流程控制 while 迴圈 16

程序 程式範例 執行結果 說明 程序基本的語法為 : proc name {params} {body}, 其中 name 為程序的名稱,params 是參數列表,body 則是程序的主體 定義完程序後就可以像其它任何的 tcl 指令一樣執行 17

陣列 程式範例 執行結果 說明 陣列的內容可以是數字或者是字串, 存放的位置不一定要用 0 1 2... 這樣的編號 18

輸出 程式範例 執行結果 說明 一般來說,puts 若是沒有指定輸出裝置的話, 內定的輸出裝置是螢幕, 但此範例中有指定輸出的裝置為檔案, 因此會將字串寫入檔案中 19

TCP 與 UDP 模擬實驗 20

模擬程式 (TCL Script) 的基本架構 21

網路架構圖 22

TCL Script # 產生模擬物件 # 定義執行程序 # 設定網路拓樸 撰寫模擬劇本 23

TCL Script TCP 封包長度預設為 1 Kbytes UDP Agent 在 NS-2 中,UDP Agents 的程式碼是放在 "ns-allinone-2.31/ns- 2.31/apps/udp.{cc, h}" 這兩個 C++ 原檔中 Application Layer 的應用程式, 可透過 sendmsg() 這個 C++ function 來取存 UDP Agent UDP 的 maximum segment size (MSS) 預設值為 1000 byte Agent/UDP set packetsize_ 1000 24

TCL Script CBR 在 0.1 秒開始傳送,4.5 秒結束 ; FTP 在 1.0 秒開始傳送,4.0 秒結束 25

模擬過程記錄檔的內容與格式 Trace record 的格式 部份記錄檔的內容 26

AWK 資料處理語言 AWK 簡介 以 Aho Weinberger Kernighan 三位設計者的字者命名 Pattern scanning and processing language Linux 大多取名為 gawk AWK 命令格式 可以直接指定要處理的動作, 或將欲處理的動作寫在一個命令稿中 27

AWK Script: 計算 End-to-End Delay 的範例

AWK Script: 計算 End-to-End Delay 的範例

AWK Script: 計算 End-to-End Delay 的範例 執行方法 ($ 為 shell 提示符號 ) $awk -f measure-delay.awk out.tr 執行結果

AWK Script: 統計傳送以及遺失封包的個數

AWK Script: 統計傳送以及遺失封包的個數

亂數產生器 Random Number Generator 33

亂數產生器 設定種子 (seed) 設定分佈 (distribution) E.g. Pareto Constant Uniform Exponential HyperExponentail 設定種子的範例 這個例子在 NS2 中產生一個亂數產生器, 並把種子的值設定為 1( 若種子的值為 0 的話, 則亂數產生器會在每次程式被執行時使用不同的種子 ) 34

Pareto Distribution 參數 expectation (avg_) shaper parameter (shape_) 範例 執行結果 35

Uniform distribution 參數 最小值 (min_) 最大值 (max_) 範例 執行結果 36

Exponential distribution 參數 平均值 (avg_) 範例 執行結果 37

亂數產生器使用範例 - 設定應用程式的啟動時間 模擬網路架構圖 38

亂數產生器使用範例 - 設定應用程式的啟動時間 FTP 的起始時間由亂數產 ( 時間介於 0 到 1 秒之間 ) 39

亂數產生器使用範例 - 設定應用程式的啟動時間 執行結果 40

分析 Throughput 的 awk 程式碼 2 3 0 1 統計在 1 秒到 5 秒之間, 由 R2 流向 D1,D2,D3 的資料量 41 R: receive (at to_node)

分析 Throughput 的 awk 程式碼 執行結果 42

亂數產生器使用範例 - 設定節點的初始位置 43

亂數產生器使用範例 - 設定節點的初始位置 (TCL 程式碼 ) ;# TCL 程式碼的撰寫流程 ;# 設定無線節點的個數 ;# 設定 X 軸座標的範圍 ;# 設定 Y 軸座標的範圍 ;# 設定 simulation 時間 44

亂數產生器使用範例 - 設定節點的初始位置 (TCL 程式碼 ) ;# 開啟資料記錄檔 ;# 產生拓撲物 ;# 設定 Node 的屬性 45

亂數產生器使用範例 - 設定節點的初始位置 (TCL 程式碼 ) ;# 設定亂數的範圍 46

亂數產生器使用範例 - 設定節點的初始位置 (TCL 程式碼 ) 47

亂數產生器使用範例 - 設定節點的初始位置 執行結果 48

乙太網路模擬 49

TCL 程式碼 指令格式 : Simulator instproc make-lan {nodes bw delay lltype ifqtype mactype chantype} 50

TCL 程式碼 51

模擬結果 BEB: Binary Exponential Backoff 52

NS-2 下的 IEEE 802.11 Ad Hoc 無線網路模擬

IEEE 802.11 的網路架構 Infrastructure Ad Hoc MAC DCF (contention-based Distributed Coordination Function Basic access Virtual carrier sensing (RTS/CTS) PCF (contention-free Point Coordination Function) 54

Media Access Mechanisms in IEEE 802.11 DCF 55

The 802.11 Frame Ns-2 中的 implement 56 mac-802_11.h

RTS CTS and ACK Frame 57

802.11 MAC 層和實體層使用的預設參數 ns-2.xx/tcl/lib/ns-default.tcl 58

TCP 在 802.11 網路上的預估效能 59

Ad Hoc 網路架構圖 60

TCL 程式碼 在這個例子中, 無線節點的傳送頻率被設為 2.4 GHz, 傳送距離是 40 公尺 (RXThresh_ =1.74293e-08), 接收距離是 90 公尺 61

無線節點的傳送範圍設定 計算結果 P r = PG G t t r 2 2 t hr 4 h d = (0.28183815 1 1 ) (1.5 2 1.5 2 ) / (250 4 ) = 3.652e-10 62

TCL 程式碼 63

TCL 程式碼 Parameters for MAC and PHY Layer 在 Ns-2 中,RTS CTS 以及 ACK 的大小分為別 20 14 14 byte ( 不含 PHYhdr,PHYhdr = PLCP preamble + PLCP header) 64

TCL 程式碼 設定 Node 的參數 產生 Node 並設定 Node 的位置 無線網路不需要去設定 Node 與 Node 之間的 Link 連線 65

TCL 程式碼 使用 FTP 來產生資料 ( 在第 0 秒時開始傳送 ) 66

TCL 程式碼 在指定的時間 "$end" 執行 stop 這個副程式並結束資料傳送 67

模擬結果 68

Multi-hop Ad Hoc 網路模擬 1. 撰寫 Unix shell script ( 假設儲存檔案名稱為 : runtcp) 2. 執行 script Hop-count 數對 TCP 效能的影響 69

記錄檔的部份內容 70

Mobile Node 的設定參數 在設定 Mobile-node 時, 可視需要設定相關的參數, 包括像 MAC 層所使用的傳輸協定 (-mactype) 信號傳遞時所使用的衰減模型 (-proptype) Queue 的種類 (-ifqtype) Queue 的長度 (-ifqlen) 以及是否考慮能源的限制 (-energymodel) 等 71

Movement Mobie-node 的移動設定 $node 會在時間 $time 時, 以指定的速度 <speed> (m/s) 由 <x1, y1> 向 <x2, y2> 移動 Example 72

Energy Extension Energy model 的設定 Energy model 是 Node 可以設定的屬性之一, 設定方法如下 : 設定傳送 / 接收所消耗的能源, 以及一開始所擁有的能源 Energy-aware node 的設定範例 73 ns-2.31/mobile/energy-model[.cc and.h]

Energy Model 的參考設定值 Wireless transceiver power consumption [1] Lucent IEEE 802.11 WaveLan PC card characteristics [2] [1] B. Bougard, S. Pollin, G. Lenoir, L. Van der Perre, F. Catthoor, W. Dehaene, "Energy-aware radio link control for OFDM-based WLAN", IEEE SIPS 2004. [2] L. M. Feeney and M. Nilsson, "Investigating the Energy Consumption of a Wireless Network Interface in an Ad-hoc Networking Environment", IEEE INFOCOM 2001. 74

有關 Mobile-node 的原始程式碼以及實作細節, 請參考 mobilenode.{cc.h} 這兩個檔案 下面列出在 ns-allinone- 2.31/ns-2.31/mobile/ 目錄下的相關檔案 : 75

NS-2 下的 TCP over IEEE 802.11WLAN 模擬 76

模擬架構圖 TCP Source (W0) 和 TCP Sink (Ni) 之間有一個 TCP 的 Connection, 其中 W0 和 W1 代表網路上的 Wired Node,AP 代表 Access Point,Ni (i = 1~ n) 則是 WLAN 裡面的 Wireless Station WLAN 模擬架構圖 77

TCL 程式碼 78

79

80

81

82

83

84

85

86

87

88

Unix Shell Script 假設儲存的檔案名稱為 : run_tcp 89

Unix Shell Script 的執行結果 90

計算 Goodput 的 AWK 程式 假設儲存的檔案名稱為 : goodput.sh 91

執行結果 92