• 沒有找到結果。

網路可用頻寬量測工具研究

N/A
N/A
Protected

Academic year: 2021

Share "網路可用頻寬量測工具研究"

Copied!
109
0
0

加載中.... (立即查看全文)

全文

(1)

資訊學院 資訊學程

網路可用頻寬量測工具研究

A Study on A Network Available Bandwidth

Measuring Tool

研 究 生:林志達

指導教授:王協源 教授

(2)

網路可用頻寬量測工具研究

A Study on A Network Available Bandwidth Measuring Tool

研 究 生:林志達 Student:Chih-Ta Lin 指導教授:王協源 教授 Advisor:Shie-Yuan Wang

國 立 交 通 大 學

資訊學院 資訊學程

碩 士 論 文

A Thesis

Submitted to College of Computer Science National Chiao Tung University in partial Fulfillment of the Requirements

for the Degree of Master of Science

in

Computer Science

July 2011

Hsinchu, Taiwan, Republic of China

(3)

-i- 網路可用頻寬量測工具研究 學生:林志達 指導教授:王協源 教授 國 立 交 通 大 學 資 訊 學 院 資 訊 學 程 碩 士 班 摘 要 在現今網路科技快速演進且網路相關應用日趨多元的環境裡,網 路可用頻寬資訊對於各種網路應用而言是相當重要的資訊。常見的網 路可用頻寬量測技術可分為探測速率模型(Probe Rate Model, PRM) 以及探測間隔模型(Probe Gap Model, PGM)這兩大類型。使用 PRM 模 型的實作雖然較 PGM 模型實作有較高的量測準確性,但量測所需的時 間較長,並且由於其量測是以形成網路壅塞來推估當時的網路可用頻 寬,因此並不適合使用於真實的網路世界。相對於 PRM,PGM 模型則 具有輕量、快速、準確的特性,較適合用於真實世界的網路可用頻寬 量測工作。 在本論文的研究中,我們選擇了採用 PGM 模型的網路可用頻寬量 測工具—Spruce,設計包含不同網路拓樸、頻寬、背景流量類型、使 用頻寬比例、參數等情境的模擬案例,對 Spruce 的行為特性進行深 入的探討,同時藉此了解 PGM 模型的特性。並於觀察 Spruce 在不同 情境下的量測表現之後,提出改善的建議,透過模擬案例實驗證實, 我們的改良確實有效。

(4)

-ii-

A Study on A Network Available Bandwidth Measuring Tool

student:Chih-Ta Lin Advisors:Dr. Shie-Yuan Wang

Department Program of Computer Science National Chiao Tung University

ABSTRACT

In recent years, information technology grows rapidly. More and more network applications are adopted as parts of our everyday life, including video streaming, overlay-route selection, QoS verification and P2P applications. People concern about the network available bandwidth because many of network applications need to know the information of network available bandwidth to adjust their behaviors. There are two kinds of network available bandwidth meansuremnet tools proposed in past years: PRM(Probe Rate Model) and PGM(Probe Gap Model). PRM based tools are intrusive and cost much to get the estimation results. So PRM is generally considered not sutable for real life networks, while PGM based tools are light weight and faster that can be used in the real world.

In our thesis, we choose a PGM based network available bandwidth meansuring tool—Spruce to study its behaviors and characteristics under various kinds of topologies, background traffics, bandwidth usages and scenarios to get well understanding on PGM. We also propose our improvements on Spruce and verify our improvements by NCTUns network simulator, the results show that our improvemnets are more accurate than the original Spruce.

(5)

-iii-

誌 謝

在投入許多時間進行討論、研究、實驗、修正以及資料的整理與 撰寫之後,終於順利的完成了這本論文。因為工作的關係,從考上研 究所直到現在完成論文一轉眼竟已過了好幾個年頭。在交大這段學習 與研究的過程裡,最讓我感恩並且銘記在心的當然是指導教授王協源 教授的付出與鼓勵。謝謝老師體諒我工作的因素,犧牲了家庭與自已 的時間讓我在許多星期三的晚上單獨和老師一對一的討論,在每一次 的討論裡了解我的研究進度並且討論研究的結果,指點我可能的研究 方向與議題。在每次的討論結束時,總不忘鼓勵我,要我加油堅持下 去,趕快完成論文。也要感謝口試委員曾建超教授及趙禧綠教授百忙 之中抽空幫我進行口試,並且給我的論文許多寶貴的建議。 除此之外,非常感謝我的家人以及女友 Ann 的支持與體諒,讓我 能夠專注的進行研究,盡可能的不被其他外務及雜事所干擾,忍受我 在進度不順利時偶而發作的抱怨與情緒。也謝謝研究所的同學們以及 同事 Angel 與我分享論文撰寫的經驗並且提醒我留意口試申請的流 程、時間以及準備口試的注意事項。感謝你們在我完成碩士學位的過 程中所給予的陪伴與支持。 謹以這本論文獻給關心與支持我的師長及親朋好友們,謝謝你 們。

(6)

-iv-

目 錄

頁次 中文摘要……… …..…… ………….i 英文摘要………..……… … ………ii 誌 謝 ... iii 目 錄 ... iv 表 目 錄 ... viii 圖 目 錄 ... x 一、緒 論... 1 1.1 研究動機 ... 1 1.2 研究目的與貢獻 ... 3 1.2.1 研究目的 ... 3 1.2.2 主要貢獻 ... 4 1.3 論文內容結構與章節編排 ... 4 二、相關研究... 6 2.1 網路可用頻寬量測 ... 6 2.2 NCTUns 網路模擬器 ... 11 2.3 網路流量分析研究 ... 13 三、PGM 工具—Spruce 的設計原理... 16

(7)

-v- 3.1 Spruce 簡介 ... 16 3.2 Spruce 的假設與限制 ... 16 3.3 Spruce 設計架構 ... 16 3.4 Spruce 特性 ... 18 四、Spruce 量測機制的改良 ... 19 4.1 改良原有程式邏輯以提升執行效能 ... 19 4.2 對於原設計之探測封包間距計算方式的改良 ... 20 4.3 對原設計量測參數之擴充 ... 21 4.4 對於原設計量測結果評估方式之改良 ... 21 五、模擬環境與模擬結果 ... 23 5.1 研究與模擬方式 ... 23 5.2 模擬環境簡介 ... 25 5.2.1 硬體設備 ... 25 5.2.2 軟體設備 ... 25 5.2.3 工具軟體版本與用途 ... 26 5.3 模擬情境參數 ... 28 5.3.1 拓樸型式 ... 28 5.3.2 網路分類 ... 30 5.3.3 背景流量類型 ... 31

(8)

-vi- 5.3.4 已使用之頻寬分類 ... 32 5.3.5 背景流量路徑與量測路徑 ... 33 5.4 模擬設計 ... 35 5.5 模擬案例 ... 43 5.5.1 模擬執行方式 ... 43 5.6 模擬結果與分析 ... 44 5.6.1 模擬設計 A 之結果-比較對 Spruce 原設計進行效能改良 前後之執行時間 ... 44 5.6.2 模擬設計 B 之結果-確認對 Spruce 原設計進行效能改良 前後量測結果的正確性 ... 47 5.6.3 模擬設計 C 之結果-比較使用 Spruce 原設計與使用考慮 Ethernet header 之 intra pair gap 的實作對量測結果的影響 ... 49

5.6.4 模擬設計 D 之結果-比較使用不同 inter pair gap 分配對 量測結果的影響 ... 53

5.6.5 模擬設計 E 之結果-比較對 Spruce 原設計進行量測結果 評估方式改良前後之結果差異 ... 56

5.6.6 模擬設計 F 之結果-比較量測過程中可用頻寬變化對量 測結果的影響 ... 72 5.6.7 模擬設計 G 之結果-研究 Spruce 在 multi hops 環境下的

(9)

-vii-

量測結果 ... 75

六、結 論 ... 91

七、未來工作... 93

(10)

-viii-

表 目 錄

頁次

表 1、骨幹網路上 TCP 與 UDP 比例表 ... 13

表 2、各種通訊協定比例表 ... 14

表 3、Protocol packet size 統計表 ... 14

表 4、模擬情境參數分類表 ... 23 表 5、模擬環境所使用之硬體設備 ... 25 表 6、模擬環境所使用之軟體設備 ... 25 表 7、工具軟體版本與用途 ... 27 表 8、網路分類表 ... 30 表 9、背景流量類型表 ... 31 表 10、已使用之頻寬分類表 ... 32 表 11、背景流量路徑與量測路徑表 ... 33 表 12、模擬設計 A 之設計目的與說明 ... 35 表 13、模擬設計 A 所使用之 Spruce 設定 ... 35 表 14、模擬設計 B 之設計目的與說明 ... 36 表 15、模擬設計 B 所使用之 Spruce 設定 ... 36 表 16、模擬設計 C 之設計目的與說明 ... 37 表 17、模擬設計 C 所使用之 Spruce 設定 ... 37 表 18、模擬設計 D 之設計目的與說明 ... 38 表 19、模擬設計 D 所使用之 Spruce 設定 ... 38 表 20、模擬設計 E 之設計目的與說明 ... 39 表 21、模擬設計 E 所使用之 Spruce 設定 ... 39 表 22、模擬設計 F 之設計目的與說明 ... 40 表 23、模擬設計 F 所使用之 Spruce 設定 ... 40 表 24、模擬設計 G 之設計目的與說明 ... 41 表 25、模擬設計 G 所使用之 Spruce 設定 ... 41 表 26、模擬設計表 ... 42 表 27、進行模擬之模擬案例清單 ... 43 表 28、網路分類 A—模擬設計 A—背景流量類型 A 之模擬結果 ... 45 表 29、網路分類 B—模擬設計 A—背景流量類型 A 之模擬結果 ... 46 表 30、網路分類 A—模擬設計 B—背景流量類型 A 之模擬結果 ... 48 表 31、網路分類 B—模擬設計 B—背景流量類型 A 之模擬結果 ... 49 表 32、網路分類 A—模擬設計 C—背景流量類型 A 之模擬結果 ... 51 表 33、網路分類 B—模擬設計 C—背景流量類型 A 之模擬結果 ... 52 表 34、網路分類 A—模擬設計 D—背景流量類型 A 之模擬結果 ... 54

(11)

-ix- 表 35、網路分類 B—模擬設計 D—背景流量類型 A 之模擬結果 ... 55 表 36、模擬設計 E 之模擬結果匯整 ... 56 表 37、網路分類 A—模擬設計 E—背景流量類型 A 之模擬結果 ... 57 表 38、網路分類 B—模擬設計 E—背景流量類型 A 之模擬結果 ... 58 表 39、網路分類 A—模擬設計 E—背景流量類型 B 之模擬結果 ... 59 表 40、網路分類 B—模擬設計 E—背景流量類型 B 之模擬結果 ... 60 表 41、網路分類 A—模擬設計 E—背景流量類型 C 之模擬結果 ... 61 表 42、網路分類 B—模擬設計 E—背景流量類型 C 之模擬結果 ... 62 表 43、網路分類 A—模擬設計 E—背景流量類型 D 之模擬結果 ... 63 表 44、網路分類 B—模擬設計 E—背景流量類型 D 之模擬結果 ... 64 表 45、網路分類 A—模擬設計 E—背景流量類型 E 之模擬結果 ... 65 表 46、網路分類 B—模擬設計 E—背景流量類型 E 之模擬結果 ... 66 表 47、網路分類 A—模擬設計 E—背景流量類型 F 之模擬結果 ... 67 表 48、網路分類 B—模擬設計 E—背景流量類型 F 之模擬結果 ... 68

表 49、網路分類 A—模擬設計 E—背景流量類型 G、H、I 之模擬結果 ... 69

表 50、網路分類 B—模擬設計 E—背景流量類型 G、H、I 之模擬結果 ... 71 表 51、網路分類 A—模擬設計 F—背景流量類型 A、B、C、D、E 之模擬結果 72 表 52、網路分類 B—模擬設計 F—背景流量類型 A、B、C、D、E 之模擬結果 74 表 53、網路分類 C—模擬設計 G—背景流量類型 A 之模擬結果 ... 75 表 54、網路分類 D—模擬設計 G—背景流量類型 A 之模擬結果 ... 77 表 55、網路分類 C—模擬設計 G—背景流量類型 B 之模擬結果 ... 78 表 56、網路分類 D—模擬設計 G—背景流量類型 B 之模擬結果 ... 79 表 57、網路分類 C—模擬設計 G—背景流量類型 E 之模擬結果 ... 80 表 58、網路分類 D—模擬設計 G—背景流量類型 E 之模擬結果 ... 81 表 59、網路分類 C—模擬設計 G—背景流量類型 F 之模擬結果 ... 82 表 60、網路分類 D—模擬設計 G—背景流量類型 F 之模擬結果 ... 83 表 61、網路分類 C—模擬設計 G—背景流量類型 X 之模擬結果 ... 84 表 62、網路分類 D—模擬設計 G—背景流量類型 X 之模擬結果 ... 85 表 63、網路分類 E—模擬設計 G—背景流量類型 A 之模擬結果 ... 86 表 64、網路分類 E—模擬設計 G—背景流量類型 B 之模擬結果 ... 88 表 65、網路分類 E—模擬設計 G—背景流量類型 E 之模擬結果 ... 89 表 66、網路分類 E—模擬設計 G—背景流量類型 F 之模擬結果 ... 90

(12)

-x-

圖 目 錄

頁次

圖 1、narrow link 與 tight link ... 6

圖 2、探測間距模型(PGM)示意圖 ... 8 圖 3、NCTUns 模組化架構圖 ... 12 圖 4、研究與模擬流程圖 ... 24 圖 5、模擬實驗環境軟硬體架構圖 ... 26 圖 6、拓樸 A ... 28 圖 7、拓樸 B ... 29 圖 8、拓樸、背景流量與可用頻寬量測路徑圖-1 ... 33 圖 9、拓樸、背景流量與可用頻寬量測路徑圖-2 ... 34 圖 10、網路分類 A—模擬設計 A—背景流量類型 A 之模擬結果圖 ... 45 圖 11、網路分類 B—模擬設計 A—背景流量類型 A 之模擬結果圖 ... 46 圖 12、網路分類 A—模擬設計 B—背景流量類型 A 之模擬結果圖 ... 48 圖 13、網路分類 B—模擬設計 B—背景流量類型 A 之模擬結果圖 ... 49 圖 14、網路分類 A—模擬設計 C—背景流量類型 A 之模擬結果圖 ... 51 圖 15、網路分類 B—模擬設計 C—背景流量類型 A 之模擬結果圖 ... 52 圖 16、網路分類 A—模擬設計 D—背景流量類型 A 之模擬結果圖 ... 54 圖 17、網路分類 B—模擬設計 D—背景流量類型 A 之模擬結果圖 ... 55 圖 18、網路分類 A—模擬設計 E—背景流量類型 A 之模擬結果圖 ... 57 圖 19、網路分類 B—模擬設計 E—背景流量類型 A 之模擬結果圖 ... 58 圖 20、網路分類 A—模擬設計 E—背景流量類型 B 之模擬結果圖 ... 59 圖 21、網路分類 B—模擬設計 E—背景流量類型 B 之模擬結果圖 ... 60 圖 22、網路分類 A—模擬設計 E—背景流量類型 C 之模擬結果圖 ... 61 圖 23、網路分類 B—模擬設計 E—背景流量類型 C 之模擬結果圖 ... 62 圖 24、網路分類 A—模擬設計 E—背景流量類型 D 之模擬結果圖 ... 63 圖 25、網路分類 B—模擬設計 E—背景流量類型 D 之模擬結果圖 ... 64 圖 26、網路分類 A—模擬設計 E—背景流量類型 E 之模擬結果圖 ... 65 圖 27、網路分類 B—模擬設計 E—背景流量類型 E 之模擬結果圖 ... 66 圖 28、網路分類 A—模擬設計 E—背景流量類型 F 之模擬結果圖 ... 67 圖 29、網路分類 B—模擬設計 E—背景流量類型 F 之模擬結果圖 ... 68

圖 30、網路分類 A—模擬設計 E—背景流量類型 G、H、I 之模擬結果圖 .... 70

圖 31、網路分類 B—模擬設計 E—背景流量類型 G、H、I 之模擬結果圖 .... 71 圖 32、網路分類 A—模擬設計 F—背景流量類型 A、B、C、D、E 之模擬結果圖

(13)

-xi- ... 73 圖 33、網路分類 B—模擬設計 F—背景流量類型 A、B、C、D、E 之模擬結果圖 ... 74 圖 34、網路分類 C—模擬設計 G—背景流量類型 A 之模擬結果圖 ... 76 圖 35、網路分類 D—模擬設計 G—背景流量類型 A 之模擬結果圖 ... 77 圖 36、網路分類 C—模擬設計 G—背景流量類型 B 之模擬結果圖 ... 78 圖 37、網路分類 D—模擬設計 G—背景流量類型 B 之模擬結果圖 ... 79 圖 38、網路分類 C—模擬設計 G—背景流量類型 E 之模擬結果圖 ... 80 圖 39、網路分類 D—模擬設計 G—背景流量類型 E 之模擬結果圖 ... 81 圖 40、網路分類 C—模擬設計 G—背景流量類型 F 之模擬結果圖 ... 82 圖 41、網路分類 D—模擬設計 G—背景流量類型 F 之模擬結果圖 ... 83 圖 42、網路分類 C—模擬設計 G—背景流量類型 X 之模擬結果圖 ... 84 圖 43、網路分類 D—模擬設計 G—背景流量類型 X 之模擬結果圖 ... 85 圖 44、網路分類 E—模擬設計 G—背景流量類型 A 之模擬結果圖 ... 87 圖 45、網路分類 E—模擬設計 G—背景流量類型 B 之模擬結果圖 ... 88 圖 46、網路分類 E—模擬設計 G—背景流量類型 E 之模擬結果圖 ... 89 圖 47、網路分類 E—模擬設計 G—背景流量類型 F 之模擬結果圖 ... 90

(14)

-1-

一、緒 論

1.1 研究動機 隨著科技不斷的推陳出新,資訊相關技術也逐步隨著日新月異,在 知識快速成長的洪流裡,網際網路的應用已經成為社會大眾日常生活 不可或缺的一部份。近年來網路的應用可說無所不在,隨著行動與手 持裝置的普及化,人們對於網路的使用習慣也慢慢從定點的操作轉變 成隨處可見的行動應用。網路所提供的服務類型也由早期以文字瀏覽 為主的主從式應用程式,演變為點對點的應用,並且提供大量多媒體 的串流或社交服務。 由於電信技術的持續進步,網路頻寬也跟著隨之提升,讓企業與家 庭能夠以較合理的價格取得較大的網路頻寬,並且也使行動網路成為 日常生活隨手可得的網路連接方式。在此同時,一般大眾對於娛樂與 資訊的使用習慣亦隨之改變,例如由於網路頻寬的成長,使得網路電 視的發展日漸盛行,許多平台的廠商紛紛以家用網路提供比起傳統有 線電視系統更清晰與更高畫質的數位頻道,或是提供在手持式行動裝 置上的即時影音服務等等…。 在現在網際網路用戶的網路頻寬逐漸加大,網路服務應用日漸廣泛 之際,網路可用頻寬的探討成為一個相當重要的議題。對於許多在網 路上所提供的網路應用服務程式而言,必須要依據目前剩餘可用頻寬 的大小,考慮不同的應對與服務策略。例如網路上多媒體視訊串流的 服務,用戶端可能所處的環境會有 3G、WLan、光纖網路等不同情境, 服務提供者需要能針對不同的異質網路環境產生不同位元率的數位內 容,或是採用可調式的視訊編碼(Scalable Video Coding,SVC)技術 [1][2]解決不同的頻寬傳輸需求,這些工作都必須要正確的對目前可 用頻寬進行判斷後,才能執行相關的調整。

目前常見的網路可用頻寬量測技術一般分為探測間距模型(Probe Gap Model, PGM)及探測速率模型(Probe Rate Model, PRM)兩種主要 類型,我們將在本論文的第二章對這兩種模型進行詳細的說明。在許 多網路可用頻寬量測工具的比較結果中,採用 PRM 模型的工具雖然有 較高的量測準確性,但由於其探測方式是對網路注入大量的封包,藉

(15)

-2- 由壅塞的發生來找出網路可用頻寬,對於網路的效能將會產生極大的 影響,一般而言並不適合使用在真實的網路世界。而屬於 PGM 模型的 網路可用頻寬量測工具相對於 PRM 模型則具有對網路效能的影響較小 等特性。在 PGM 模型中,Spruce[3]具有準確、輕量的優點,並且各種 PGM 模型的實作在假設與理論基礎上都與 Spruce 相同。因此本論文計 畫對 Spruce 在各種不同情境下的量測結果進行分析比較,以了解 Spruce 的特性與效能,並做為後續 PGM 模型研究的參考;同時,我們 亦對 Spruce 原設計提出改良,且透過模擬的方式驗證我們改良後的 Spruce 在網路可用頻寬量測確實有較佳的表現。

(16)

-3- 1.2 研究目的與貢獻 1.2.1 研究目的 在本論文的研究中,我們希望對 Spruce 這個網路可用頻寬量測工 具進行完整的評估,以了解在各種不同情境:包含不同的網路環境、 各種特性的背景流量、不同的網路頻寬使用程度及不同的設定配置的 情況下,Spruce 對於網路可用頻寬量測結果的特性與準確性,以作為 後續分析及探討 PGM 模型之網路可用頻寬量測工作的研究基礎。 本論文的研究目的是希望對於 Spruce 的各種特性與其在各種網路 情境的表現進行分析,我們設計了超過 200 個案例來探討 Spruce 的網 路可用頻寬量測結果,並計畫執行超過 2000 次的網路實驗來取得量測 資訊。當研究網路議題的行為特性時,在真實的網路環境中進行網路 實驗,往往需要耗費大量的時間與成本才能夠建置出較具規模的 lab 環境,並且需要花費可觀的時間才能完成相關的研究實驗。相對的, 採用模擬真實網路環境的網路模擬器除了可以降低真實環境硬體建置 的經費與複雜度之外,更可以提升實驗執行的效率並且正確的完成各 種模擬案例。因此在本論文的研究中,我們計畫採用模擬的方式,使 用 NCTUns[4][5]這個網路模擬器平台進行實驗,並且將 Spruce 移植到 NCTUns 上進行模擬以評估其量測的結果。 在本論文中,我們除了觀察與研究 Spruce 所執行的網路可用頻寬 量測結果外,經由對 Spruce 原始碼的追蹤以及對於 Spruce 量測結果 的分析,對於分析後的相關議題我們亦在 Spruce 原設計機制進行改良, 並且在不同的模擬案例中比較對於原設計機制改善前後 Spruce 的測量 結果,以分析在各種不同網路情境下 Spruce 的量測表現。最後歸納分 析實驗的結果,證明我們的改善確實提升了 Spruce 這個網路可用頻寬 量測工具結果的準確性,並將在各種情境下 Spruce 的量測結果進行整 理與分析討論。

(17)

-4- 1.2.2 主要貢獻 本論文的主要研究貢獻包含: 1. 設計各種模擬的情境與案例,通過完整的大規模模擬實驗,以了解 Spruce 的行為特性。 2. 經由分析與檢視原 Spruce 的設計,修改 Spruce 的實作方式,在不 影響結果正確性的情況下,改善原實作的執行效率與資源佔用。在 模擬器上運作時,我們的改善可縮短模擬所需的時間,提高模擬執 行的效率。 3. 修改原實作對於頻寬探測的設計及對探測數據的處理邏輯,提高網 路可用頻寬量測結果的準確性。 1.3 論文內容結構與章節編排 本論文的內容結構與章節編排說明如下: 在「第二章、相關研究」中,我們將說明與本論文相關的研究文獻, 並 介 紹 兩 種 網 路 可 用 頻 寬 量 測 的 模 式—探測間距模型(Probe Gap Model, PGM)及探測速率模型(Probe Rate Model, PRM)。在本章中, 我們也將針對本論文在模擬實驗研究所使用的網路模擬器—NCTUns 進 行簡介。 在「第三章、PGM 工具—Spruce 的設計原理」中,我們將先簡要介 紹我們所要研究的網路可用頻寬量測工具—Spruce,接下來針對其設 計的假設做進一步的說明,最後詳細介紹 Spruce 完整的設計架構以及 Spruce 的特性。 在「第四章、Spruce 量測機制的改良」中,我們將說明本論文對於 原有 Spruce 實作的修改,使其能在 NCTUns 模擬器上順利運作;並將 說明我們對於原有 Spruce 設計的改良,使其在不影響量測結果正確性 的情況下,能有效提高執行的效能;並對 Spruce 的設計機制進行擴充, 使得進行可用頻寬偵測的 packet pair 與 packet pair 之間,可採用 exponential 或 uniform 分配,以比較配置不同 inter pair gap 分配 對於量測結果的影響;並進一步改良原設計中對於頻寬探測數據的處 理邏輯,以使量測結果的準確度能夠進一步的提升。

(18)

-5- 在「第五章、模擬環境與模擬結果」中,我們將針對本論文研究與 模擬的方式進行說明,接著說明模擬環境的規劃及使用的相關軟硬體 設備;並介紹於本論文所使用的模擬環境之中,對於拓樸型式、網路 分類、已使用頻寬比例、背景流量類型的設計。我們接著再依所預期 研究探討的主題規劃各種模擬設計,並結合上述各項設計規劃,定義 出本論文所要模擬的模擬案例。在本章節的最後,我們將說明模擬實 驗執行的方式,並將各個模擬案例的實驗結果予以整理紀錄,最後對 模擬結果進行分析得出研究結論,並將結論整理於「第六章、結論」 之中。 在「第七章、未來工作」中,我們將說明在本論文針對 Spruce 的 行為特性進行了解與分析之後,未來可再進一步討論與研究的相關議 題。

(19)

2.1 網路 在許 相當重要 頻寬量測 制的路由 等應用[ 在網 而具有最 bottlen 餘可使用 圖 1。 在相 式進行 而推算出 用頻寬的 路可用頻寬 許多網路相 要的議題 測的結果可 由選擇、多 7][8]。 網路路徑上 最小可用頻 neck link 用的頻寬進 圖 相關的文獻 ,藉由主動 出目前的網 的技術主要

寬量測 相關的應用 ,用來做 可以被廣 多媒體的 上,具有最 頻寬的鏈路 k。網路可 進行估計 圖 1、narr 資 獻中,評估 動的發送 網路可用 要分為兩

-6-二、相關

用中,網路 做為衡量網 廣泛的應用 的網路服務 最小網路頻 路我們即 可用頻寬的 ,narrow row link 資料來源 估網路可用 送探測封包 用頻寬。一 兩種類型[1

關研究

路可用頻寬 網路效能的 用在許多不 務、影音串 頻寬的鏈路 即稱為是 t 的量測即是 w link 與 k 與 tigh :[9] 用頻寬的方 包來對網路 一般利用發 10][11], 寬的量測普 的一個重要 不同的領域 串流、或點 路我們稱為 tight lin 是針對在 tight l t link 方法通常使 路目前的狀 發送探測封 其中探測 普遍被視為 要指標。網 域,例如 點對點的資 為 narrow nk,也就是 tight l ink 的示意 使用直接探 狀況進行評 封包來偵測 測速率模型 為是一個 網路可用 :壅塞控 資訊傳輸 w link, 是所謂的 ink 上剩 意圖請見 探測的方 評估,進 測網路可 型(Probe 個 用 控 輸 的 剩 見 方 進 可 e

(20)

-7-

Rate Model, PRM),是透過改變探測封包的傳送速率來偵測網路可用 頻寬;而另一種類型的網路可用頻寬偵測技術則是探測間距模型 (Probe Gap Model, PGM),這種類型的技術主要是利用探測封包之間 的間隔變化(Packet Dispersion),來推估可用頻寬。 PRM 探 測 速 率 模 型 也 就 是 一 般 所 說 的 疊 代 探 測 法 (interative probing)。PRM 的概念是如果傳送端所送出的探測封包速率 Ri小於網路 可用頻寬 A 時,則在接收端收到封包的速率 Ro會等於 Ri,如果傳送的 速率 Ri > A 時,偵測的封包在傳送過程中會被暫存在網路設備的 Queue 中,而發生延遲,使得 Ri > Ro,藉由觀察 Ri 與 Ro的轉折點可以找出 目前的網路可用頻寬。在 PRM 模型中,網路可用頻寬偵測是以 packet trains 的方式,由傳送端分數次每次傳送一連串的 packets,形成一 個 packet train,每次傳送的 packet train 都是以不同的速率送出。 由接收端負責觀察傳送端送出 packet trains 速率 Ri與接收端收到的 packet trains 速率 Ro,來評估網路可用頻寬。當接收端發現 Ri > Ro 時,表示傳送端目前傳送 packet train 的速率已經大於網路可用頻寬, 此時 PRM 的接收端會通知傳送端調降 Ri的速率,然後再慢慢增加傳送 速率,以逼近的方式使送出 packet train 的速率 Ri逐漸收斂到目前的 網路可用頻寬。在前人的研究中,如 Pathload[12]、 TOPP[13]、 Pathchirp[14]、YAZ[15]等均是屬於 PRM 模型的網路可用頻寬偵測工 具。 PGM 探測間距模型則是使用直接探測(Direct probing)的方式,由 傳送端以固定的速率 Ri將 packet pairs 傳送到接收端,然後接收端藉 由計算傳送端送出 packet pair 時的時間間距δin 與接收端收到該組 packet pair 時的時間間距δout 計算出目前的網路可用頻寬。傳送端 傳送 packet pair 的速率 Ri被設定為路徑上 tight link 的頻寬,所以 Ri會大於或等於網路可用頻寬 A。PGM 假設網路路徑上只有單一的一個 bottleneck link,且 bottleneck link 同時是 narrow link 也是 tight link;並且自 packet pair 中的第一個封包被傳送端送出直到該 packet pair 中的第二個封包被接收端收到的這段時間裡,queue 並不會是空 著的狀態。所以δout 就會是在 bottleneck 上傳送 packet pair 中第 一個 packet 以及在δin 時間內抵達傳送端的背景流量(cross traffic) 所需的時間,此時 PGM 送出探測的 packet pair 與 cross traffic

(21)

packets 在 PG 頻寬為 A cross t T = 在 bo A = 在δ X = 由公 δou δou u = 由公 A = 通常 s 如圖 2 所 圖 GM 模型中 A,則在 P traffic 所 δout - ottlenec C * (1 -in 時間內 C * u * 公式 1 與公 ut – δin ut – δin (δout -公式 2 與公 C * [ 1 常在 PGM 模 所示。 圖 2、探測 資 中,假設在 PGM 的 pac 所花的時間 δin…… k link 上 - u)…… 內抵達的背 δin…… 公式 3 可得 n = ( X / n = u * - δin) / 公式 4 可計 –(δout 模型中,假 -8-測間距模型 資料來源 在 bottlen cket pai 間 T 如公式 … (公式 1 上的頻寬使 (公式 2) 背景流量 … (公式 3 得公式 4: / C ) δin / δin… 計算出網路 - δin) 假設偵測封 型(PGM)示 :[17] neck lin r 探測期間 式 1: 1) 使用率 u 與 ) X 如公式 3) … (公式 路可用頻寬 / δin 封包的 pa 示意圖 k 上的頻寬 間,bott 與 A 的關係 3: 式 4) 寬 A 如公式 ] …… ( acket siz 頻寬為 C,網 tleneck l 係如公式 式 5: (公式 5) ze 是 L by 網路可用 link 傳送 式 2: ytes,若 用 送 若

(22)

-9-

要讓 packet pair 中的兩個 packets 是 back to back 的傳送,則會將 δin 依照公式 6 進行設定:

δin = L / C……(公式 6)

採 用 PGM 模 型 的 網 路 可 用 頻 寬 偵 測 工 具 包 括 : Delphi[18] 、 Spruce[3]、ABwE[19]、PTR[16]等。而不論是 PRM 或是 PGM 模型都共 同具有下列的假設條件:

1. 在探測路徑上的所有 router 都具有 FIFO queue。

2. 假設背景流量都是連續的流體交通模型(fluid traffic model), 在此模型下,我們把背景流量視為均勻的連續位元流,就如同水流 一般。因此,若背景交通之流量為 R,packet pair 中相鄰兩探測 封包抵達時間之間隔為δin 的情況下,packet pair 中兩探測封包 的傳輸過程中會穿插傳送 R*δin 的背景資料量。 3. 假設背景流量的平均速率改變非常緩慢,在單一探測的期間,可以 將背景流量速率視為常數。 Pathload[12]、TOPP[13]都是採用 PRM 模型的網路可用頻寬量測工 具,在每一回合的探測中也都使用固定流速的 packet train 進行偵測, 在不同回合的探測中,Pathload 使用類似二分搜尋法的方式改變送出 的 packet train 流速,以逐漸將結果收斂得到網路可用頻寬;而 TOPP 則是以線性的方式逐漸增加送出的 packet trains 的流速。由於在偵 測過程中送出的探測封包量極大,因此 pathload 及 TOPP 在偵測過程 中會降低整體網路的效能,並且整個探測過程需要耗費較長的時間。 pathChirp[14]則是傳送變動速率的 packet stream 來偵測網路可 用頻寬,這樣的 packet stream 稱為 chirp,在其中的 packets 間的 間距是以指數分配的方式傳送。並藉由觀察 chirp 中封包延遲的狀況 推斷出目前的網路可用頻寬。

Jacob Strauss[3]等人提出了採用 PGM 模型實作的網路可用頻寬量 測工具 Spruce,並且將 Spruce 與 IGI 及 Pathload 進行比較,發現 Spruce 量測過程所需的時間較短、準確性最高,並且在量測過程中對

(23)

-10-

網路效能影響最小,除此之外也可以準確量測具有單一 bottleneck 的 multihop paths 之網路可用頻寬。Huiming Wang[20]等人則提出基於 類似 Spruce 機制的 PGM 模型實作 TSprobe,以兩階段的探測方式量測 網路可用頻寬,TSprobe 沒有 tight link 與 narrow link 必須要是相 同 link 的限制,亦可在未知 bottleneck link capacity 的情況下運 作,在該論文中亦將 TSprobe 與 Pathload、pathChirp、IGI 與 Spruce 所需的探測封包數量進行實驗比較,證明 TSprobe 所需的探測封包較 少,且準確也相當高。 Li Lao 等人在文獻[21]中,比較 PGM 模型的網路可用頻寬量測工 具在 Multihop paths 上的表現,發現在 PGM 模型的網路可用頻寬量測 工具在 Multihop paths 情境的量測結果並不準確,並且會傾向於低估 網路可用頻寬。DONG-YAN ZHANG 等人[22]則在實際的網路環境以 single hop 的拓樸對 Pathload、IGI、pathChirp 及 Spruce 進行比較, 發現 pathload 的準確度最高,但由於注入的偵測封包流量太大,並不 建議在真實環境使用。Emanuele 等人在文獻[23]中以真實的網路設備 與電腦對目前許多網路可用頻寬量測工具進行比較,比較的結果發現 採用 PRM 模型的工具如 Assolo、Pathload、YAZ 的準確度較高,並且 能夠反應漸增的背景流量。

(24)

-11- 2.2 NCTUns 網路模擬器

在本論文中的網路模擬實驗是採用 NCTUns[4][5][24][26]網路模擬 器做為模擬平台,NCTUns 網路模擬器是由國立交通大學所發展,目前 NCTUns 已經廣泛的支援了各種網路的標準與規格,例如:Ethernet、光 纖網路、IEEE 802.11 a/b/e/p、GPRS、WiMAX (IEEE 802.16 d/e/j)、衛 星網路DVB-RCS 等。讓網路議題的研究者能夠使用這個平台,依照其 需求自訂所需的網路模擬環境,並設計不同的模擬情境以進行模擬與 研究。 NCTUns 網路模擬器是一個優秀的網路模擬平台,目前廣泛的被全世 界許多國家的使用者採用,做為在學術領域或商業領域進行網路行為 研究時的工具平台。NCTUns 具備下列的特性與優點: 1. 使用真實世界中的傳輸層與網路層的協定堆疊 (Protocol Stack),能 產生精確的模擬結果。 2. 真實世界的應用程式大多在不經修改的情形下可以直接運行於此 模擬器上。

3. 具有高度整合性的使用者圖形化介面 (Graphical User Interface) , 提供便捷的操作方式進行模擬情境的設計、執行與模擬結果檢視。 NCTUns 在架構的設計上包括了下列幾個基本的元件:(1) 修改後的 GNU/Linux 核心、(2) NCTUns 圖形化使用者介面、(3) NCTUns 模擬引 擎、(4) NCTUns 協定模組(Protocol Modules)。透過對於 GNU/Linux 核心的修改,NCTUns 提供真實世界中各種利用 Socket 介面撰寫之網路 應用程式在不經修改的情況下,可以直接做為模擬環境中任一網路設 備上所運行的應用程式。因此 NCTUns 能夠模擬在各種網路情境下應用 程式與網路的運作行為。NCTUns 的圖形化使用者介面則提供了一般使 用者直接以所見即所得的方式,在 NCTUns 模擬器上進行拓樸的設計規 劃,使得使用者可以在不用學習任何腳本(Script) 設計的情況下運作 NCTUns 完成網路的模擬研究。而在 NCTUns 模擬引擎的部份,則提供了 對於時間、事件、排程、封包裝填等重要工作一套完整的 API,讓通訊 協定的開發人員能夠操作相關的 API 快速進行開發;而通訊協定模組 的設計對於任意的網路設備協定堆疊(Protocol Stack) 採用了模組化

(25)

的設計 要以替換 模擬世界 NCTU NCTUns 也 行模擬的 模擬所需 擬,對於 ,透過此設 換或加入該 界中運行 Uns 除了以 也提供以 的模擬案例 需的設定檔 於大量的批 設計可以 該模組的 。NCTUns 圖 3、N 資 以 GUI 的方 Standalo 例並準備 檔之後,以 批次模擬工 -12-以使得使用 的方式,即 的模組化 NCTUns 模 資料來源 方式操作之 one[26]的 備好相關的 以 script 工作具有 用者在開發 即可使得其 化設計如圖 模組化架構 :[26] 之外,對於 的模式運作 的網路拓樸 t 指令方式 有極佳的便 發自己所需 其所設計之 圖 3 所示 構圖 於大量、批 作,讓使用 樸、背景流 式控制 NC 便利性。 需的模組後 之模組得以 : 批次的模擬 用者設計好 流量以及其 CTUns 進行 後,只需 以直接在 擬工作, 好所要執 其他執行 行網路模 需 在 執 行 模

(26)

-13- 2.3 網路流量分析研究

在本論文中,我們計畫對 Spruce 進行深入的探討,包含研究在類 似真實網路環境下的不同背景流量組合對於量測結果的比較分析。在 文獻[27][28]中,Min Zhang 等人研究在數個骨幹網路上的 TCP 與 UDP traffic,發現在近幾年 UDP 協定所佔的比例逐年上升,不論是 UDP packet 的數量、UDP flow 的數量、以及 UDP 資料的資料量都呈現這樣 的趨勢,分析的結果如表 1 所示:

表 1、骨幹網路上 TCP 與 UDP 比例表

Trace Sample UDP/TCP Ratio Total IP Traffic (pkts/bytes/flows) pkts bytes flows CAIDA-OC48 08-2002 0.11 0.03 0.11 (1371M/838GB/79M) 01-2003 0.12 0.05 0.27 (463M/267GB/26M) GigaSUNET 04-2006 0.06 0.02 1.06 (422M/294GB/9M) 11-2006 0.08 0.03 1.45 CAIDA-OC192 06-2008 0.14 0.05 1.43 (4427M/2279GB/197M) 02-2009 0.19 0.07 2.34 (1922M/1410GB/110M) OptoSUNET 01-2009 0.21 0.11 3.09 (1100M/657GB/41M) 在文獻[29]中,該機關對北非、南非、南美、中東、西歐、南歐、 西南歐、德國等 8 個地區進行統計與分析,發現自 2006 年開始,P2P 的流量逐年成長,主要以 P2P file sharing、多媒體串流服務等應用 成長最為迅速,在 2009 年時,P2P 已是網路最主要的服務協定(見表 2)。 文獻[29]分析各種不同的網路服務之流量後,發現其平均下行的 packet size 為 789bytes,該文獻統計各種協定的封包大小分析結果 如表 3。在我們的模擬案例中,對於各種 UDP 背景流量除了 Greedy UDP 以外,傳送的 packet size 均使用該文獻中的下行平均 packet size 789 bytes;在探討 UDP 與 TCP 流量混合的案例中,則以接近真實網路流量 的比例組合來進行研究,其中 UDP 流量所佔全部流量的比例為 0.11。

(27)

Pr Bit Dire eD File F Fr rotocol All Ares AVI tTorrent ectConnec t DNS Donkey e hosting Flash reenet 表 Down-strea Packet Siz (Bytes) 7 7 14 7 6 1 7 14 14 2 表 2、 資 3、Proto am ze Upstrea Packet Size (Bytes 789 28 718 45 415 10 771 37 672 26 55 6 793 41 468 5 454 5 228 13 -14-各種通訊 資料來源 ocol pac am t ) Average Packet Size (Bytes) 81 556 54 589 08 1015 70 587 66 479 64 107 13 610 54 1014 50 974 36 182 訊協定比例 :[29] cket size Protocol Pando POP PPLive PPStream QQ QQLive QuickTim e RDP Realmedi a RTP 例表 e 統計表 Down-stre Packet Si (Bytes) 9 10 10 m 6 4 m 14 1 14 8 eam ize ) Upstrea Packet Size (Bytes 931 35 032 7 067 32 602 38 440 10 56 103 474 4 149 9 441 5 825 12 am t s) Average Packet Size (Bytes) 59 688 72 672 25 691 87 496 09 308 34 417 48 1015 94 124 51 966 25 723 8 2 6 8 7 5 4 6 3

(28)

-15- FTP 1303 148 902 RTSP 1211 54 824 Gnutella 636 241 452 SIP 156 144 150 GRE 405 218 324 Skype 214 196 205 H323 79 101 89 SMTP 103 169 138 Halflife2 188 86 138 SopCast 602 214 423 HTTP 1153 187 758 Soulseek 759 536 654 ICMP 61 55 58 SSH 667 83 410 IMAP 656 221 374 SSL 740 229 512 iMesh 459 471 465 Steam 1438 48 1013 IPSEC 432 166 297 Telnet 202 62 129 IRC 299 58 177 Thunder 623 320 476 Manolito 1008 343 852 Tor 848 360 649 MMS 1207 48 788 TVAnts 677 194 455 MPEG 1393 51 940 TVUPlaye r 516 131 346 MSN 348 278 312 UUSee 776 96 471 NTP 76 76 76 VNC 113 190 150 OGG 1159 53 802 Windows Media 1355 51 886 OpenVPN 635 494 560 World of Warcraft 248 56 161 ORB 179 57 103 XMPP 357 96 224 Oscar 59 70 65 Yahoo 181 201 189 資料來源:[29]

(29)

-16-

三、PGM 工具—Spruce 的設計原理

3.1 Spruce 簡介

Spruce 是 J. Strauss[3]等人採用 PGM 模型所提出的網路可用頻寬 量測工具,在 Spruce 的設計中,偵測網路可用頻寬所送出的 packet pair 是由兩個傳送時間差為固定間距(intra pair gap)的 packets 組 成;而在所有 Spruce 傳送的 packet pairs 之間,packet pair 與 packet pair 的間距(inter pair gap)配置方式則是採用 exponential 分配。 Spruce 具有偵測快速、偵測時注入網路的封包數量較少、偵測結果正 確、對網路可用頻寬變化反應迅速以及偵測結果相對誤差較少的優 點。 3.2 Spruce 的假設與限制 Spruce 如同其他採用的 PGM 模型的網路可用頻寬量測工具,都具 具有以下的假設與限制:

1. 假設在探測路徑上只有單一的 bottleneck link,且與 tight link 及 narrow link 是相同的 link,並且該 link 的頻寬 C 已知。 2. 在探測路徑上的所有 router 都具有 FIFO queue,且在 packet pair

中的第一個封包被傳送端送出直到 packet pair 中的第二個封包被 送達接送端的這段期間,queue 不會被清空。

3. 假設背景流量都是連續的流體交通模型(fluid traffic model), 在此模型下,我們把背景流量視為均勻的連續位元流,就如同水流 一般。因此,若背景交通之流量為 R,packet pair 中相鄰兩探測 封包傳送時間之間隔為δin 的情況下,packet pair 中兩探測封包 的傳輸過程中會穿插傳送 R*δin 的背景資料量。

4. 假設背景流量的平均速率改變非常緩慢,在單一探測的期間,可以 將背景流量速率視為常數。

3.3 Spruce 設計架構

Spruce 的設計上假設 bottleneck link 上的頻寬 C 是已知的。在 Spruce 的傳送端,Spruce 會先設定一個 intra pair gap δin,這是

(30)

-17-

傳送端送出的 packet pair 中,第一個 packet 與第二個 packet 之間 距。在 Spruce 的接收端則會記錄收到 packet pair 中兩個 packets 的 間距δout,然後將 C、δin、δout 代入公式 5,可以計算出本組 packet pair 所探測出的網路可用頻寬 A。

在 Spruce 的傳送端,預設傳送的 packet size 是 1500 bytes,扣 除 28 bytes 的 UDP 及 IP header 後,程式實際送出的資料是 1472 bytes。 Spruce 所設定的δin 是 bottleneck link 傳送 1500 bytes data packet 所需要花的時間。這樣的設計可以使得在 packet pair 中第一個 packet 送出直到 packet pair 中第二個 packet 送達接收端的期間,queue 不 會是空的。接收端在收到探測的 packet pair 並計算δout 之後,將數 值代入公式 5 計算出該組 packet pair 所量測出的網路可用頻寬 A,持 續這樣的過程共 K 次,K 預設為傳送 100 組 packet pairs 進行探測, 然後將各組 packet pairs 的量測值計算簡單算術平均後做為量測結 果。

在 Spruce 的設計中,兩組 packet pairs 之間的 inter pair gap 是 以 exponential 分配的方式規劃,這個分配的平均值是遠大於 packet pair 中兩個 packet 的 intra pair gap 的。這樣的設計可以確保 Spruce 的探測封包不會影響到原本網路的效能。Spruce 在探測過程中會傳送 一系列的 packet pairs 進行網路頻寬偵測,在 packet pairs 中的 packets 都是大小為 1500 bytes 的 UDP 封包。在開始傳送之前,傳送 端會先計算 packet pair 之間的 inter pair gap,來確保探測封包的 速率被調整為 240Kb/s 或是 bottleneck link 頻寬的 5%,取兩者中較 小的值做為探測封包傳送的速率。例如,在一個 bottleneck 是 1.5Mb/s 的路徑上,inter pair gap 會被設定為 320ms,相當於探測封包的流 速是 75Kb/s。

在傳送端進行傳送探測封包的過程中,Spruce 會使用 polling loop 不停的讀取系統時間,並判斷是否該要送出下一個探測的 packet,在 傳送探測封包的過程中,Spruce 程式不會讓出處理器的時間,直到 packet pair 已被送出之後,Spruce 才會交出處理器資源。如果在 Spruce 傳送 packet pair 的第一個封包與第二個封包之間,作業系統 reschedule 使得 Spruce 讓出處理器時間,則當 Spruce 重新取得處理

(31)

-18-

器使用權後,Spruce 會放棄傳送該 packet pair 中的第二個封包,並 且開始傳送下一組 packet pair。

在 Spruce 的接收端收到傳送端送出的 UDP 探測封包時,Spruce 會 使用 SO_TIMESTAMP 這個 socket option,記錄下在收到每個封包時的 kernel timestamps,然後 Spruce 可以比較 packet pair 中的第一個 封包與第二個封包的 timestamp,算出這組 packet pair 的δout。最 後將 C、δin、δout 代入公式 5 計算出該組 packet pair 所測量出的 網路可用頻寬。

3.4 Spruce 特性

前面我們對 Spruce 的假設與設計做了詳細的說明,歸納 Spruce 這 個網路可用頻寬量測工具的特性如下:

1. Spruce 在各個 packet pair 之間的間距配置是採用 exponential 分配,而不是使用 packet trains 或是固定 inter pair gap 的方 式進行偵測。

2. Spruce 在 packet pair 內各 packet 間之 intra pair gap 經過仔細 的設計,以確保 bottleneck queue 在 packet pair 內的封包進行 探測的期間不會是空的。

3. Spruce 在設計時將網路可用頻寬量測的工作與鏈路頻寬量測的工 作切割,專注在進行網路可用頻寬量測之上。

4. Spruce 在探測期間並不會送出造成 narrow link 發生壅塞的探測 流量。

(32)

-19-

四、Spruce 量測機制的改良

在將 Spruce 移轉到 Fedora Core 12 並使 Spruce 在 NCTUns 模擬器 順利運作的過程裡,我們觀察 Spruce 的執行並配合 trace Spruce 的 原始碼,發現 Spruce 的原量測機制設計中,有幾個部份需要進行修正 與改良,分別說明如下:

4.1 改良原有程式邏輯以提升執行效能

在 Spruce 的論文與其程式的設計實作中,處理 packet pair 中第 一個 packet 與第二個 packet 之間的 intra pair gap 是使用強佔處理 器資源的方式設計,這是為了使第二個 packet 被傳送的時間距離第一 個 packet 傳送的時間能夠盡可能的接近δin,但這樣的設計方式一方 面造成了處理器資源被佔用,在探測的過程中會影響到其他程式的運 行,另一方面,在 NCTUns 的模擬平台上,程式運作的機制是由模擬器 fork 出新的執行緒來執行模擬環境中各節點上的應用程式,Spruce 這 樣的設計會使模擬器的運作效能相當遲緩。

我們修正了 Spruce 在處理 intra pair gap 的機制,將原本使用 loop 方式強行佔住處理器資源的程式碼片段進行改寫,使程式在 packet pair 中第二個 packet 等待被傳送的時間內會暫時讓出處理器資源,並 使第二個封包送出的時間能盡可能的接近原始的設計。

除此之外,目前程式在處理 inter pair gap 的機制是先進行 inter pair gap 的計算,然後依照所要傳送的 packet pairs 數量開啟一個陣 列,並將預定傳送 packet pairs 的時間寫入陣列之中。在兩組 packet pairs 之間等待傳送的時間仍是使用 loop 的方式佔住處理器資源等待。 我們將此部份的實做改為在每次送完一組 packet pair 之後,才計算 傳送距離下一組 packet pair 的傳送間隔 d,然後讓程式在 packet pair 與 packet pair 傳送間隔的時間將處理器資源讓出,這樣改良後的處 理機制對於整體系統的運作效能以及與其他應用程式的協同工作會有 較好的效率。

在經過我們上述所執行的效能改良之後,經由進行模擬實驗並分析 模擬執行的效能與結果,我們確認效能改良後的 Spruce 實作在執行模

(33)

-20-

擬的效能確實有所提升,並且這樣的修改不會影響到量測結果的正確 性。

4.2 對於原設計之探測封包間距計算方式的改良

Spruce 的實作希望 packet pair 中的兩個封包是 back to back 的 被傳送,假設 packet pair 中的 packet size 是 L,Spruce 在定義 intra packet gap (δin)時,是套用公式 6 的計算來求得所要使用的δin 間 隔大小。在比對 Spruce 傳送端與接收端的程式之後,我們發現 Spruce 在傳送端是如同公式 6 以傳送的 packet size L 與 bottleneck 的頻寬 C 去計算出δin;而在接收端是以 L /δin 去反推出 bottleneck link 的頻寬 C。在原設計的實作中,傳送端使用不含 UDP 及 IP header 的 packet size 為 1472 bytes 計算出δin,但在接收端卻使用包含 UDP 及 IP header 的 packet size 1500 bytes 去反推 bottleneck link 頻 寬 C,因此計算出的可用頻寬結果將被放大 (1500/1472)=1.9%。我們 修正原設計中收與送兩端在計算時使用的 packet size,都一致的使用 1500 bytes 來進行計算。

在 Spruce 原設計中,程式送出的 UDP 封包大小是 1472 bytes,加 計 UDP header 與 IP header 之後合計是 1500 bytes,但我們認為 Spruce 程式在使用公式 6 計算δin= L / C 時, 應以真正在 link 上傳送的 packet size 來計算。因此除了計算 UDP 以及 IP header 之外,應該還 要加計 Ethernet header 的大小才是真正在 link 上傳送的資料量。在 將 Ethernet header 納入計算之後,δin 的設定數值也將隨之改變。 我們的實作在 intra packet gap 的決定上加入考慮 Ethernet header 長度的選項,並比較是否計入 Ethernet header 對量測結果的影響。 經由進行模擬實驗並分析模擬執行的量測結果,我們確認改良探測 封包間距考慮 Ethernet header 後的 Spruce 實作在執行模擬的量測結 果正確性確實有所提升。

(34)

-21- 4.3 對原設計量測參數之擴充

如同前一章所述,在 Spruce 的原設計中,packet pair 與 packet pair 之間的 inter pair gap 配置是採用 exponential 分配,我們想探 討 inter pair gap 使用 exponential 分配或是其他分配對於量測結果 的影響。

在我們的實作中,對於配置 inter pair gap 的邏輯我們加入了 uniform 分配的選項,並透過模擬實驗分析 Spruce 在各種情境下採用 不同 inter pair gap 的對於量測結果正確性的影響。

4.4 對於原設計量測結果評估方式之改良

Spruce 原設計的量測機制是依序送出 K 組(預設 K=100)的 packet pairs 進行網路可用頻寬量測,接收端在每次收到一組 packet pair 之 後便將該組 packet pair 抵達接收端時的間距δout 代入公式 5,得到 該組 packet pair 所量測得到的網路可用頻寬值。然後將所有 packet pairs 測出有效的量測值計算簡單算術平均數做為量測結果。接收端只 有當每組 packet pair 的兩個 packets 都成功的接收到才會將該組結 果視為有效的量測值並納入運算,如果 packet pair 中的任一 packet 沒有被接收端收到的話,Spruce 會忽略掉該組 packet pair 中所收到 的 packet,不納入量測結果的計算。

我們觀察各種不同條件下 Spruce 所送出 K 組探測 packet pairs 的 量測結果之後發現,在某些測試情境之下,Spruce 的 K 組頻寬偵測 packet pairs 會有部份量測值是負數。若將這樣的量測值代入公式 5 來評估,則表示接收端收到的δout > 2 倍傳送端的δin;若以公式 4 來看,這樣的量測值表示網路頻寬的使用率 > 100%,我們認為如果將 這樣的量測值直接納入結果的統計並不合理,並且可能是 Spruce 傾向 於低估網路可用頻寬[21]的原因之一。在我們的實作中,若某組 packet pair 所量測出之網路頻寬使用率>100%,我們會認定為在該組 packet pair 量測當時,網路頻寬已 100%使用,並將該組 packet pair 量測的 網路可用頻寬結果視為 0。

在實際的網路世界中,背景流量可能是叢集式的網路流量,與 Spruce 假設的流體交通模型這種均勻且連續的流量有所不同。我們發

(35)

-22-

現在某些頻寬使用率較高的情況下,Spruce 所量測出的網路可用頻寬 果會較當時網路狀況的實際數值超出許多,通常會高出 20-40%。在實 際觀察 Spruce 接收端收到的 packet pairs 後發現,在網路頻寬使用 率較高的情況下,接收端有時無法完整的收到傳送端所送出的 packet pair 中的兩個 packets,未完整送達接收端的 packet pairs 會被認定 為是無效的探測,而使得在評估量測結果時所使用的 packet pairs 組 數較預期的樣本數少;並且在網路頻寬使用率較高的情況下,成功送 達接收端的這些 packet pairs 的個別測量結果通常有高估網路可用頻 寬的傾向。經由觀察 Spruce 量測的結果,我們認為當傳送端所送出的 packet pairs 有 30%以上無法完整的送到接收端時,當時的網路頻寬 使用率通常已達到 90%以上。在這樣的情況下,我們認為應該認定為當 時的網路可用頻寬已幾乎全部使用,而不是如原 Spruce 的設計以部份 packet pairs 的量測值來評估得出當時的網路使用率。以避免過於高 估當時的網路可用頻寬。

(36)

-23-

五、模擬環境與模擬結果

5.1 研究與模擬方式 在本論文的研究中,我們想要深入探討 Spruce 這個網路可用頻寬 量測工具在各種不同情境與參數設定的情況下,對於網路可用頻寬量 測結果之準確性的影響;並比較原有之 Spruce 機制與在我們改良後的 設計對於模擬效能與量測結果的改善情形。 我們首先對於不同的模擬情境參數進行分類如表 4,將各種不同的 網路分類搭配想要研究的模擬設計,並設定不同的背景流量與已使用 之頻寬,定義出各種的模擬案例。以定義出的模擬案例執行模擬並計 算各個模擬案例結果的平均值與標準差後,將模擬結果進行整理、分 析與歸納。 表 4、模擬情境參數分類表 情境參數 說明 網路分類 將我們模擬所使用之網路拓樸及所搭配的不同鏈路頻 寬組合進行分類。 模擬設計 針對所要探討的主題進行分類,以控制 Spruce 不同變 因子的方式進行研究分析,例如模擬設計 A 是要針對 Spruce 在我們改良前後對於量測效能的比較。 背景流量 對於模擬所使用的背景流量組合進行分類,包含 UDP 及 TCP 流量,以及兩者的混合。 已使用頻寬 對不同的頻寬使用率進行分類,做為在設計模擬案例時 使用。同時已使用頻寬的分類也包含在 Spruce 探測過 程中可用頻寬不是常數,會有所變化的情形。

(37)

-24-

我們進行研究與模擬的流程如下圖所示:

(38)

-25- 5.2 模擬環境簡介

本論文所進行的各項模擬實驗是採用 Fedora Core 12 搭配 NCTUns 模擬器,NCTUns 所使用的 Fedora Core 12 作業系統是以虛擬機器的 方式架構在 MS Windows 平台上,進行各種網路頻寬偵測行為的模擬研 究。本論文模擬實驗環境的軟硬體架構圖如圖 5 所示,模擬環境所使 用之軟硬體設備請參見 5.2.1 、5.2.2 。 5.2.1 硬體設備 本論文的模擬實驗所使用之硬體實體機器規格與虛擬機器之硬體 規格說明如表 5: 表 5、模擬環境所使用之硬體設備 實體/虛擬機器 項目 規格

實體機器 CPU Intel Core i7 2600 實體機器 記憶體 8GB

實體機器 硬碟空間 2TB

虛擬機器 CPU Intel Core i7 2600 虛擬機器 記憶體 1.5GB

虛擬機器 硬碟空間 20GB 5.2.2 軟體設備

本論文所進行之網路模擬實驗是以虛擬機器的方式安裝 Fedora Core 12 供 NCTUns 網路模擬器在其上運行。NCTUns 所運行之軟體環境 與實體機器之軟體環境說明如表 6: 表 6、模擬環境所使用之軟體設備 實體/虛擬環境 項目 版本 實體環境 作業系統 Windows Server 2008 R2 企業版 實體環境 虛擬機器程式 VMWare Workstation V7.1.1 虛擬環境 作業系統 Fedora Core 12

(39)

5.2..3 工具 在本 式過於費 定檔案再 執行模擬 說明如表 圖 具軟體版本 本論文中, 費時且不具 再經人工檢 擬工作與蒐 表 7: 圖 5、模擬 本與用途 由於模擬 具可行性 檢核,並以 蒐集模擬 -26-擬實驗環境 擬案例與總 性,因此我 以批次方 擬結果。本 境軟硬體架 總模擬次數 我們以程式 方式使用 N 本論文所使 架構圖 數較多,使 式的方式產 NCTUns 的 使用的工具 使用人工執 產生所需的 的 standal 具軟體版本 執行的方 的模擬設 one 模式 本與用途 方 設 式 途

(40)

-27- 表 7、工具軟體版本與用途 工具軟體及版本 用途說明 MS Visual Studio 2010 1. 製作各種情境之流量產生程式的設定檔 2. 改良 Spruce 之程式撰寫工具 gcc Fedora 上編譯 Spruce 之編譯程式 Shell script 1、產生模擬平台之流量設定檔 2、批次執行模擬工作 3、匯整所有模擬結果 MS Excel 2010 整理與分析模擬結果,並繪製圖表 Visio 2007 繪製流程圖

(41)

5.3 5.3. 模擬 在定 擬情境參 的模擬設 中,我們 量類型 種背景流 .1 拓樸 在本 網路拓樸 1. 拓樸 拓樸 hop 網路 bottlen 擬情境參數 定義本論文 參數進行分 設計搭配各 們將介紹我 、已使用頻 流量路徑與 樸型式 本論文中, 樸型式,以 樸 A 樸 A 的型式 路拓樸,在 neck link 數 文所要執行 分類,在 各種模擬 我們使用 頻寬之分 與量測路徑 我們預計 以下將分別 式如圖 6, 在本拓樸 k。 -28-行模擬之模 在設定模擬 擬情境參數 用的網路拓 分類進行說 徑。 計採用 sin 別說明我 是由 2 個 樸中,rout 圖 6、拓 模擬案例前 擬案例時, 數,定義出 拓樸型式, 說明,並說 ngle hop 我們在模擬 個路由器及 te 1 與 拓樸 A 前,我們先 將依所要 出不同的模 然後對網 說明在我們 與 multi 擬過程中所 及 4 個節點 router 2 先將各種不 要探討之各 模擬案例 網路分類 們模擬實驗 hops 兩種 所使用的拓 點所組成的 2 之間的 不同的模 各個議題 。在本節 、背景流 驗中的各 種不同的 拓樸: 的 single link 是 模 題 節 流 各 的 e 是

(42)

2. 拓樸 拓樸 樸型式來 具進行量 樸 B 樸 B 是拓樸 來探討在多 量測的結果 樸 A 的延伸 多個 link 果。拓樸 -29-伸,我們預 k 都有背景 B 的型式 圖 7、拓 預計使用這 景流量時 式請參見圖 拓樸 B 這個 mul ,使用網路 圖 7。 ti hops 的 路可用頻寬 的網路拓 寬量測工 拓 工

(43)

-30- 5.3.2 網路分類 在本論文中,我們將在前述不同的網路拓樸與不同的鏈路頻寬組合, 分組成為模擬時所會使用的網路分類,做為在模擬環境中進行網路可 用頻寬量測時使用。在本論文所定義的模擬案例中,我們將會使用的 網路分類說明如表 8: 表 8、網路分類表 網路 分類 拓樸 型式 鏈路頻寬 網路可用頻寬 量測方向 A 拓樸 A 1<->2 100Mbps 其他:雙向 1Gbps 6->5 B 拓樸 A 1<->2 10Mbps 其他:雙向 1Gbps 6->5 C 拓樸 B 1<->2、2<->7、7<->8 100Mbps 其他:雙向 1Gbps 12->5 D 拓樸 B 1<->2、2<->7、7<->8 10Mbps 其他:雙向 1Gbps 12->5 E 拓樸 B 1<->2、7<->8 100Mbps 2<->7 10Mbps 其他:雙向 1Gbps 12->5

(44)

-31- 5.3.3 背景流量類型

在本論文所研究的模擬案例中,我們也計畫探討不同網路背景流量 類型對於量測結果的比較。我們所使用的背景流量包含 TCP 與 UDP,並 探討 UDP 中不同 packet 傳送間隔分配與 packet size 分配對於網路可 用頻寬量測結果的影響。在文獻[29]的結果中,統計八大區域平均下 行的 packet size 是 789 bytes,我們所採用的 packet size 分配也將 以 789 bytes 為平均值。此外,我們所使用的背景流量類型也將包含 self-similar UDP 以及 TCP 與 UDP 混合的流量。參考文獻[27][28]的 資料,我們設定在所模擬的 TCP 與 UDP 混合背景流量中,UDP 所佔的比 例是背景流量的 11%。在本論文中,我們所定義的背景流量類型請參見 表 9。 表 9、背景流量類型表 背景流 量類型 通訊協定 Packet 傳送間隔分配 Packet size 分配 A UDP constant constant B UDP uniform uniform C UDP uniform exponential D UDP exponential uniform E UDP exponential exponential F UDP(self-similar) -- --

G UDP(greedy) greedy exponential H TCP(greedy) -- --

I UDP(self-similar) 佔流量

(45)

-32- 5.3.4 已使用之頻寬分類 在本論文的模擬情境中,我們對於 bottleneck link 上已使用的頻 寬比例進行分類與編號,在我們所設計的模擬案例裡,我們將對各個 模擬設計在各種不同已使用頻寬比例的情境下,執行網路可用頻寬偵 測所得到的量測結果進行分析,本論文中所定義的已使用頻寬之分類 說明如表 10: 表 10、已使用之頻寬分類表 已使用之 頻寬分類 說明 定義 A 全部頻寬未使用 使用率 0 % B 幾乎全部頻寬未使用 使用率 10 % C 已使用少量頻寬 使用率 25 % D 已使用一半頻寬 使用率 50 % E 已使用大量頻寬 使用率 75 % F 幾乎已使用全部頻寬 使用率 90 % G 已使用全部頻寬 使用率 100 % H 已使用頻寬隨時間不同變化 模擬過程: 0-3 秒使用率 25% 3-6 秒使用率 75% 6 秒之後使用率 50%

(46)

5.3..5 背景 在本 量路徑以 所述,網 網路分 A、 C、D 景流量路徑 本論文的模 以及網路可 網路分類與 表 分類 B 、E 圖 8、拓 背景 ABW 徑與量測路 模擬環境中 可用頻寬量 與背景流量 表 11、背景 4->3 4->3 拓樸、背景 景流量(4->3 W 量測(6-> -33-路徑 中,我們對 量測路徑 量路徑、 景流量路 背景流量 、11->9、 景流量與可 3) >5) 對不同的網 徑,背景流 量測路徑 徑與量測 量路徑 、10->6 可用頻寬量 網路分類配 流量路徑與 徑說明如圖 測路徑表 6->5 12-> 量測路徑 配置不同的 與量測路徑 圖 8 及圖 量測路 5 >5 徑圖-1 的背景流 徑如表 11 9: 路徑 流

(47)

圖 9、拓 背景 ABW 量 拓樸、背景 景流量(4->3 量測(12->5 -34-景流量與可 ) 背景流 5) 可用頻寬量 背 流量(10->6 量測路徑 背景流量(11 6) 徑圖-2 1->9)

(48)

-35- 5.4 模擬設計 在本論文的規畫中,我們將想要探討的數個主題分別定義成不同的 模擬設計,以比較 Spruce 原設計與我們改良後實作的結果。在每個模 擬設計中,Spruce 的程式將分別設定為組別 0 及組別 1 兩組,以這兩 組不同設定的模擬結果進行比較與分析。各模擬設計的設計目的、說 明、以及在該設計中所使用之 Spruce 設定分別說明如下: 1. 模擬設計 A 模擬設計 A 是為了比較對 Spruce 原設計進行效能改良前後之執行 時間,確認效能改良成效。關於模擬設計 A 的設計目的與說明請見表 12; 模擬設計 A 所使用之 Spruce 設定請見表 13: 表 12、模擬設計 A 之設計目的與說明 模擬設計編號 A 設計目的 比較對 Spruce 原設計進行效能改良前後之模擬執行所需 時間,確認效能改良成效。 模擬設計說明 為了確認我們對 Spruce 所進行的效能改良確實有效,我 們將原 Spruce 的設計與改良後的實作在各種不同的情境 下進行模擬,以確認效能改良的有效性以及改善程度 表 13、模擬設計 A 所使用之 Spruce 設定 組別 Spruce 原 設計 效能改良 計算δin 時考慮 Ethernet header 使用之 inter pair gap 分配 使用改良 後之量測 結果評估 0 ✔ 1 ✔ ✔

(49)

-36- 2. 模擬設計 B 模擬設計 B 是在模擬設計 A 確認了我們對 Spruce 效能改良的成效 之後,進一步確認對 Spruce 原設計進行效能改良前後量測結果的正確 性。關於模擬設計 B 的設計目的與說明請見表 14;模擬設計 B 所使用 之 Spruce 設定請見表 15: 表 14、模擬設計 B 之設計目的與說明 模擬設計編號 B 設計目的 確認對 Spruce 原設計進行效能改良前後量測結果的正確 性。 模擬設計說明 在確認我們對原 Spruce 所進行的效能改良確實有效後, 我們還要對效能改良前後的量測結果差異進行比較,確認 效能改良後量結果與原設計的差異程度。 表 15、模擬設計 B 所使用之 Spruce 設定 組別 Spruce 原 設計 效能改良 計算δin 時考慮 Ethernet header 使用之 inter pair gap 分配 使用改良 後之量測 結果評估 0 ✔ 1 ✔ ✔

(50)

-37- 3. 模擬設計 C

我們認為當在使用公式 6 決定探測的 packet pair 中之 intra pair gap δin 時,packet size L 應該是真正在 link 上傳輸的資料大小, 所以該要以考慮 Ethernet header 之後的 packet size 代入公式 6 來 決定δin。模擬設計 C 的設計目的就是比較 Spruce 原設計與使用考慮 Ethernet header 之 intra pair gap 的實作對量測結果的影響。關於 模擬設計 C 的設計目的與說明請見表 16;模擬設計 C 所使用之 Spruce 設定請見表 17:

表 16、模擬設計 C 之設計目的與說明 模擬設計編號 C

設計目的 比較 Spruce 原設計與使用考慮 Ethernet header 之 intra pair gap 的實作對量測結果的影響

模擬設計說明 我們想要了解在考慮了 Ethernet header 之後,由於使用 了不同的δin 大小,對於使用原 Spruce 之 intra pair gap 設計與使用考慮 Ethernet header 之 intra pair gap 在 量測結果的差異 表 17、模擬設計 C 所使用之 Spruce 設定 組別 Spruce 原 設計 效能改良 計算δin 時考慮 Ethernet header 使用之 inter pair gap 分配 使用改良 後之量測 結果評估 0 ✔ ✔ 1 ✔ ✔ ✔

(51)

-38- 4. 模擬設計 D

模擬設計 D 的設計目的是比較使用不同 inter pair gap 分配對量 測結果的影響。關於模擬設計 D 的設計目的與說明請見表 18;模擬設 計 D 所使用之 Spruce 設定請見表 19:

表 18、模擬設計 D 之設計目的與說明 模擬設計編號 D

設計目的 比較使用不同 inter pair gap 分配對量測結果的影響 模擬設計說明 原 Spruce 設計 inter pair gap 是配置為 exponential 分

配,我們想要探討如果改用相同平均值的 uniform 分配在 各種不同情境下量測的結果差異 表 19、模擬設計 D 所使用之 Spruce 設定 組別 Spruce 原 設計 效能改良 計算δin 時考慮 Ethernet header 使用之 inter pair gap 分配 使用改良 後之量測 結果評估 0 ✔ ✔ ✔ 1 ✔ ✔ ✔ ✔

(52)

-39- 5. 模擬設計 E 模擬設計 E 的設計目的是為了比較對 Spruce 原設計進行量測結果 評估方式改良前後之結果差異。關於模擬設計 E 的設計目的與說明請 見表 20;模擬設計 E 所使用之 Spruce 設定請見表 21: 表 20、模擬設計 E 之設計目的與說明 模擬設計編號 E 設計目的 比較對 Spruce 原設計進行量測結果評估方式改良前後之 結果差異 模擬設計說明 在觀察原 Spruce 設計執行的結果後,發現對於量測結果 的評估有不合理之處。在本模擬設計中,我們將比較在各 種情境下,原 Spruce 設計與我們對結果的評估方式改良 後的差異 表 21、模擬設計 E 所使用之 Spruce 設定 組別 Spruce 原 設計 效能改良 計算δin 時考慮 Ethernet header 使用之 inter pair gap 分配 使用改良 後之量測 結果評估 0 ✔ ✔ ✔ 1 ✔ ✔ ✔ ✔

(53)

-40- 6. 模擬設計 F 模擬設計 F 的設計目的是為了比較量測過程中, 可用頻寬若發生變 化對量測結果的影響。關於模擬設計 F 的設計目的與說明請見表 22; 模擬設計 F 所使用之 Spruce 設定請見表 23: 表 22、模擬設計 F 之設計目的與說明 模擬設計編號 F 設計目的 比較量測過程中可用頻寬變化對量測結果的影響 模擬設計說明 我們想要針對量測過程中,若可用頻寬發生變化的情形對 於量測結果的影響進行探討 表 23、模擬設計 F 所使用之 Spruce 設定 組別 Spruce 原 設計 效能改良 計算δin 時考慮 Ethernet header 使用之 inter pair gap 分配 使用改良 後之量測 結果評估 0 ✔ 1 ✔ ✔ ✔ ✔

(54)

-41- 7. 模擬設計 G

模擬設計 G 的設計目的是研究 Spruce 在 multi hops 環境下的量測 結果。關於模擬設計 G 的設計目的與說明請見表 24;模擬設計 G 所使 用之 Spruce 設定請見表 27:

表 24、模擬設計 G 之設計目的與說明 模擬設計編號 G

設計目的 研究 Spruce 在 multi hops 環境下的量測結果

模擬設計說明 我們想要探討在 multi hops 的環境下,各種不同背景流 量與背景流量組成對於量測結果的影響 表 25、模擬設計 G 所使用之 Spruce 設定 組別 Spruce 原 設計 效能改良 計算δin 時考慮 Ethernet header 使用之 inter pair gap 分配 使用改良 後之量測 結果評估 0 ✔ 1 ✔ ✔ ✔ ✔

(55)

-42- 在本小節的最後,我們將上述本論文中各個模擬設計之設計目的整 理如表 26: 表 26、模擬設計表 模擬設計 設計目的 A 比較對 Spruce 原設計進行效能改良前後之模擬執行所需時 間,確認效能改良之成效 B 確認對 Spruce 原設計進行效能改良前後量測結果的正確性 C 比較使用 Spruce 原設計與使用考慮 Ethernet header 之 intra

pair gap 的實作對量測結果的影響

D 比較使用不同 inter pair gap 分配對量測結果的影響

E 比較對 Spruce 原設計進行量測結果評估方式改良前後之結果 差異

F 比較量測過程中可用頻寬變化對量測結果的影響 G 研究 Spruce 在 multi hops 環境下的量測結果

(56)

-43- 5.5 模擬案例 在本論文的研究中,我們將針對 Spruce 設計各種模擬案例進行大 規模的研究,我們將前述之模擬情境參數與模擬設計結合,定義出我 們所要進行模擬的 273 個模擬案例。在本論文中,我們所要進行模擬 的模擬案例清單詳見表 27: 表 27、進行模擬之模擬案例清單 使用之 網路分類 採用之 模擬設計 使用之 背景流量類型 已使用之 頻寬分類 A、B A-D A A-H

A、B E A-F A-G A、B E G、H、I G A、B F A-E H C、D G A、B、E A-H C、D G F A-G C、D G X(4->3 用 A 10->6 用 B 11->9 用 E) A-H E G A、B、E A-H E G F A-G 5.5.1 模擬執行方式 在本論文的研究中,我們計畫對每個模擬案例比較 Spruce 原設計 以及我們改良之後的實作所量測的結果。對於每個模擬案例,我們分 別模擬執行 Spruce 原設計及我們改良後的實作各 5 次,再將 5 次量測 的結果計算算術平均與標準差,然後整理模擬的結果進行分析。 在每次的模擬中,我們執行模擬的時間為 30 秒。在模擬開始後 0.5 秒我們開始加入背景流量;在模擬開始後 3 秒啟動 Spruce 進行網路可 用頻寬量測,再記錄量測的結果進行統計與分析。

數據

圖 3 果圖 32、網路圖  路分類 A—模 模擬設計  -73-計 F—背景 景流量類型 型 A、B、CC、D、E 之 之模擬結

參考文獻

相關文件

(B)Data Bus 是在 CPU 和 Memory 之間傳送資料,所以是雙向性 (C)Address Bus 可用來標明 Memory 或 I/O Port 位址的地方 (D)Data Bus 的長度和 Address

由於較大型網路的 規劃必須考慮到資料傳 輸效率的問題,所以在 規劃時必須將網路切割 成多個子網路,稱為網 際網路。橋接器是最早

而使影像設計工具在操作時呈現非預設的結果。為此操作者可以利用重設 Photoshop 軟體

隨機實驗是一種過程 (process),是一種不能確定預知會

接收機端的多路徑測量誤差是GPS主 要誤差的原因之一。GPS信號在到達 地球沒有進到接收機之前,除了主要 傳送路徑之外,會產生許多鄰近目標 反射的路徑。接收機接收的首先是直

a 顧客使用信用卡在線上付款時,只要輸入其卡號及有效期

 Request.Cookies[ &#34;Cookie 名稱&#34; ].Value –取得使用者所傳送的 Cookie 內容. 

RMI,及 DCOM 這些以專屬 binary 格式傳送資料所不及之處,那 就是對程式語言、作業平台的獨立性--由於是純文字 XML 格 式,