讓 單 一 虛 擬 機 器 的 可 用 頻 寬 再 度 提 高 2.2 Open vswitch Open vswitch[4][5] 是 一 個 Apache 2.0 授 權 下 的 開 放 原 始 碼 軟 體, 透 過 軟 體 模 擬 出 一 個 多 層 虛 擬 交 換 器 功 能, 借 由 對



Similar documents
Microsoft Word doc

6-1-1極限的概念

所 3 學 分 課 程, 及 兩 門 跨 領 域 課 程 共 6 學 分 以 上 課 程 學 生 在 修 課 前, 必 須 填 寫 課 程 修 課 認 定 表, 經 班 主 任 或 指 導 教 授 簽 名 後 始 認 定 此 課 程 學 分 ) 10. 本 規 章 未 盡 事 宜, 悉 依 學 位

Microsoft Word - 第四章.doc

證 券 簡 易 下 單 :2121 證 券 簡 易 下 單 1. 主 工 具 列 的 視 窗 搜 尋 器 直 接 輸 入 點 擊 主 選 單 證 券 專 區 下 單 特 殊 下 單 2121 證 券 簡 易 下 單 畫 面 說 明 1. 下 單 區 2. 個 股 行 情 資 訊 與

目 錄 項 目 內 容 頁 數 1 手 機 要 求 3 2 登 記 程 序 3 3 登 入 程 序 4 4 輸 入 買 賣 指 示 6 5 更 改 指 示 14 6 取 消 指 示 18 7 查 詢 股 票 結 存 21 8 查 詢 買 賣 指 示 23 9 更 改 密 碼 查 詢 股

Microsoft Word - ch07

前 項 第 三 款 所 定 有 機 農 產 品 及 有 機 農 產 加 工 品 驗 證 基 準, 如 附 件 一 第 七 條 驗 證 機 構 受 理 有 機 農 產 品 及 有 機 農 產 加 工 品 之 驗 證, 應 辦 理 書 面 審 查 實 地 查 驗 產 品 檢 驗 及 驗 證 決 定 之

四 修 正 幼 兒 園 師 資 類 科 應 修 學 分 數 為 四 十 八 學 分, 並 明 定 學 分 數 抵 免 之 相 關 規 定 及 規 範 修 習 幼 兒 園 教 育 專 業 課 程 之 最 低 年 限 ( 修 正 條 文 第 五 條 ) 五 發 給 修 畢 師 資 職 前 教 育 證 明

第 6. 節 不 定 積 分 的 基 本 公 式 我 們 可 以 把 已 經 知 道 反 導 函 數 之 所 有 函 數 都 視 為 不 定 積 分 的 基 本 公 式 基 本 公 式 涵 蓋 的 範 圍 愈 大, 我 們 求 解 積 分 就 愈 容 易, 但 有 記 憶 不 易 的 情 事 研 讀

授 課 老 師 章 節 第 一 章 教 學 教 具 間 3 分 鐘 粉 筆 CNC 銑 床 教 學 內 容 CNC 銑 床 之 基 本 操 作 教 材 來 源 數 值 控 制 機 械 實 習 Ⅰ 1. 了 解 CNC 銑 床 的 發 展 2. 了 解 CNC 銑 床 刀 具 的 選 用 3. 了 解

PROSPECT EXPLORATION 壹 前 言 第 9 卷 第 2 期 中 華 民 國 100 年 2 月

章節

Microsoft PowerPoint - 資料庫正規化(ccchen).ppt

PowerPoint 簡報

長跨距暨挑高建築特殊結構系統之調查分析

內 政 統 計 通 報

e-Submission System Quick Reference Guide for Publication Related Matters (Chinese version)

xls


修 課 特 殊 規 定 : 一 法 律 系 學 生 最 低 畢 業 學 分 128;101 學 年 度 修 讀 法 律 系 雙 主 修 學 生 應 修 畢 法 律 專 業 目 64 學 分 ( 限 修 習 本 校 法 律 系 開 設 課 程, 不 得 以 原 學 系 或 外 校 課 程 抵 免 -

二 兒 歌 選 用 情 形 ( ) 2 ( ) ( )


校 長 遴 選 者 就 相 關 遴 選 事 項, 有 程 序 外 之 接 觸 遴 選 會 委 員 在 任 期 間 因 故 無 法 執 行 任 務 或 有 不 適 當 之 行 為 者, 由 各 該 主 管 機 關 解 聘 之 ; 其 缺 額, 依 第 一 項 至 第 五 項 規 定 聘 ( 派 ) 委

自 動 行 車 監 控 系 統 除 能 提 供 捷 運 系 統 全 自 動 化 無 人 駕 駛 環 境 外, 更 扮 演 著 確 保 行 車 安 全 及 服 務 品 質, 提 升 系 統 運 能 的 重 要 角 色 自 動 行 車 保 護 系 統


研究一:n人以『剪刀、石頭、布』猜拳法猜拳一次,決定一人勝

實德證券網上交易系統示範

16

(Microsoft Word - MOODLE990201\266i\266\245\244\342\245U )

簽 呈

101年度社會福利方案 網路線上操作手冊

Microsoft Word - Draft circular on Sub Leg Apr (chi)_Traditional

目 錄 壹 題 目 1: 新 增 商 品 ( 商 品 名 稱 為 玉 井 芒 果 乾 禮 盒 )... 3 貳 題 目 2: 新 增 商 品 ( 商 品 名 稱 為 紅 磚 布 丁 精 選 禮 盒 )... 5 參 題 目 3: 新 增 商 品 ( 商 品 名 稱 為 晶 鑽 XO 醬 禮 盒 ).

桃園市104年國民中學新進教師甄選各校複試方式及需求表

行政院金融監督管理委員會全球資訊網-行政院金融監督管理委員會


肆 研 究 方 法 進 行 本 研 究 前, 我 們 首 先 對 研 究 中 所 用 到 名 詞 作 定 義 定 義 : 牌 數 : 玩 牌 時 所 使 用 到 撲 克 牌 數 次 數 : 進 行 猜 心 術 遊 戲 時, 重 複 分 牌 次 數 數 : 進 行 猜 心 術 遊 戲 時, 每 次 分

(Microsoft Word - \246\250\301Z\272\336\262z.doc)

教育實習問與答:

一、 資格條件:

???T????????

目 錄 一 系 統 登 入... 2 ( 一 ) 系 統 登 入 畫 面... 2 ( 二 ) 首 次 登 入 請 先 註 冊... 3 ( 三 ) 忘 記 單 位 帳 號... 8 ( 四 ) 忘 記 密 碼 ( 五 ) 健 保 卡 更 換 ( 六 ) 重 寄 確 認 信.

<30332EAAFEA5F3A440A142A447A142A454A142A57CA147BEC7A5CDB14DB77EC3D2B7D3BEC7B2DFA661B9CF2E786C73>

NCKU elearning Manual

Microsoft Word - 立法會十四題附件.doc

「家加關愛在長青」計劃完成表現及評估報告

75 叁 積 木 遊 戲 的 教 學 功 能 一 促 進 體 能 發 展 二 發 展 社 會 技 巧 Ramsey 1991 Beaty 1995 ( ) ( ) ( ) 三 學 習 情 緒 處 理 國 教 之 友 第 59 卷 第 3 期 19

<4D F736F F F696E74202D20B2C431B860C2B2B3F82DC2BEB77EBEC7AED5B77CAD70BEC7BDD2B57BBAF5AD6EA65DC0B3B0EABBDAB77CAD70B7C7AB AE74B2A7A4C0AA E BACDBAE65BCD2A6A15D>

untitled

骨 折 別 日 數 表 1. 鼻 骨 眶 骨 ( 含 顴 骨 ) 14 天 11. 骨 盤 ( 包 括 腸 骨 恥 骨 坐 骨 薦 骨 ) 40 天 2. 掌 骨 指 骨 14 天 12. 臂 骨 40 天 3. 蹠 骨 趾 骨 14 天 13. 橈 骨 與 尺 骨 40 天 4. 下 顎 ( 齒

格 成 績 證 明 第 六 條 第 七 條 本 系 大 四 課 程 中 規 劃 日 本 韓 國 越 南 專 題 研 究, 學 生 需 於 大 四 時 修 習 該 課 程, 並 於 規 定 期 間 內 提 出 專 題 報 告, 取 得 合 格 成 績 證 明 本 系 規 定 學 生 畢 業 時 需 取

目 錄 頁 1. 歡 迎 使 用 網 上 預 約 面 談 訪 問 系 統 新 用 戶 新 用 戶 登 入 帳 戶 程 序 啟 動 網 上 預 約 面 談 訪 問 帳 戶 核 對 帳 戶 的 地 址 資 料

第一章 緒論

一 業 務 內 容 本 公 司 依 郵 政 法 第 5 條 得 經 營 下 列 業 務 : 單 位 : 新 臺 幣 千 元,% ,486,746, ,318,734, ,039,301,167

Microsoft Word - 雲林區_免試平台_國中模擬選填_操作手冊.doc

職能基準

行政院金融監督管理委員會全球資訊網-行政院金融監督管理委員會

128 提 示 樞 紐 分 析 表 的 用 途 樞 紐 分 析 表 是 指 可 以 用 來 快 速 合 併 和 比 較 大 量 資 料 的 互 動 式 表 格, 透 過 它 可 以 詳 細 分 析 數 值 資 料, 特 別 適 用 於 下 列 情 況 : 需 要 從 含 有 大 量 資 料 的 清

關 於 教 育 部 學 習 拍 立 得 教 育 部 於 (103) 年 度 整 合 各 縣 市 政 府 部 屬 機 構 大 學 及 民 間 的 數 位 資 源 與 服 務, 依 不 同 類 型, 分 別 匯 集 於 教 育 大 市 集 教 育 百 科 教 育 媒 體 影 音 教 育 部 學 習 拍

奇 妙 的 24 摘 要 從 撲 克 牌 中 隨 機 抽 取 4 張 牌 可 以 有 1820 種 牌 組, 在 這 1820 種 牌 組 中, 有 1362 組 可 經 由 四 則 運 算 的 方 式, 算 出 24 點, 有 458 組 無 解 快 速 求 解 的 方 法 有 相 加 法 因 數

目 錄

CONTENTS 訓 練 內 容 設 計 法 056 淡 季 期 的 訓 練 058 旺 季 期 的 訓 練 060 針 對 爬 坡 賽 的 訓 練 內 容 062 賽 後 的 資 料 分 析 PART4/ 鏑 木 毅 先 生 的 建 言 活 用 於 越 野 路 跑 的 心 跳 訓

2 2.1 A H ir@abchina.com 2

連江縣政府所屬學校兼任代課及代理教師聘任實施要點(草案)

文 ( 一 ) 閱 讀 理 解 英 語 數 學 社 會 自 然 及 國 文 ( 二 ) 語 文 表 達 等 各 科 此 外 嘉 義 區 則 另 外 單 獨 辦 理 測 驗 五 專 亦 有 辦 理 特 色 招 生 考 試 分 發 入 學, 與 高 中 高 職 分 開 辦 理, 但 成 績 同 樣 採

<4D F736F F D20B3E6A4B830312D2D2DBCC6BD75BB50BEE3BCC6AABAA55BB4EEB942BAE22E646F6378>

會 員 專 區 使 用 手 冊 目 錄 一 基 本 介 紹 會 員 專 區 登 入 位 置 主 畫 面 與 網 站 架 構 : 功 能 導 覽 列 說 明 :... 3 二 DOI 查 詢 與 維 護... 4 三 DOI 註 冊 期 刊 類 型...

ART_RAE16_ticket_cn_p.1

BSP 烤箱 - 封面-2

五 四 五 說 ( 代 序 ) 李 澤 厚 劉 再 復 I I II IV V VII 第 一 篇 五 四 新 文 化 運 動 批 評 提 綱 附 論 一 中 國 貴 族 精 神 的 命 運 ( 提 綱 )

2 工 礦 衛 生 技 師 證 明 文 件 者 火 災 學 消 防 法 規 警 報 系 統 消 防 安 全 設 備 專 技 人 員 專 門 職 業 及 技 術 人 員 高 等 考 試 技 師 考 試 高 考 ( 專 技 ) 專 科 三 高 等 檢 定 相 當 類 科 及 格 者 四 消 防 設 備

如何正確使用自己所擁有的正版音樂光碟?

投影片 1

第二組掃描器規範書

268 別 行 政 區 所 以, 全 國 人 民 代 表 大 會 根 據 憲 法 第 31 條 規 定 設 立 了 特 別 行 政 區 沒 有 憲 法 第 31 條 的 規 定, 就 沒 有 特 別 行 政 區 制 度 存 在 的 合 法 性 基 礎 62 正 如 上 述, 憲 法 為 特 別 行

寫 作 背 景 導 讀 [98] L Lyman Frank Baum

壹、組織編制 代碼:C0101意見反映

<4D F736F F D20B0EAA5C1A470BEC7BB50B0EAA5C1A4A4BEC7AF5AAFC5BD73A8EEA4CEB1D0C2BEADFBADFBC342BD73A8EEB1F8A4E5B9EFB7D3AAED A14B>

HSBC Holdings plc Interim Report Chinese

<4D F736F F D20B2C433B3B92020B971B8F4A4C0AA52A7DEA5A9>

Microsoft Word - 附件_table

C CH4.tpf

包 裝 維 生 素 礦 物 質 類 之 錠 狀 膠 囊 狀 食 品 營 養 標 示 應 遵 行 事 項 一 本 規 定 依 食 品 安 全 衛 生 管 理 法 第 二 十 二 條 第 三 項 規 定 訂 定 之 二 本 規 定 所 稱 維 生 素 礦 物 質 類 之 錠 狀 膠 囊 狀 食 品, 指

Acronis Backup & Recovery 11 進階版本

標 準 作 業 程 序 的 版 本 說 明 : 制 定 者 版 本 編 碼 日 期 日 期 主 要 秘 書 處 Version /12/ /12/03 第 一 版 秘 書 處 Version /12/ /12/31 第 一 版 第 一 次 秘

臺灣農產品生產追溯管理作業規範草案

斷, 讓 每 個 孩 子 在 學 習 過 程 是 跟 自 己 比 較 跟 自 己 競 爭, 以 提 升 個 人 學 習 的 意 願, 讓 學 生 明 確 知 道 自 己 的 學 習 成 果, 而 非 僅 得 知 測 驗 分 數 若 能 完 善 運 用 如 此 有 效 的 資 訊, 相 信 在 十 二

業 是 國 家 的 根 本, 隨 著 科 技 的 進 步 與 社 會 的 富 裕, 增 加 肥 料 的 施 用 量 與 農 病 蟲 害 防 治 方 法 的 提 升, 使 得 糧 食 產 量 有 大 幅 的 增 長, 但 不 當 的 農 業 操 作, 如 過 量 的 肥 料 農 藥 施 用 等, 對

CP70D0026D61ETW0R01-01-印刷

瑞興銀行

期交所規則、規例及程序

BOT_BS_audited_96

廿一世紀集居環境規劃與建築型態塑造之研究

55202-er-ch03.doc

( 二 ) 資 格 考 試 之 方 式 : 1. 筆 試 : 圖 書 資 訊 學 檔 案 學 或 出 版 與 數 位 科 技 ( 三 科 選 考 一 科 ), 考 試 時 間 3 小 時 筆 試 分 數 以 70 分 為 及 格, 如 不 及 格, 且 修 業 年 限 尚 未 屆 滿 者, 得 於

(Microsoft Word - IAS26_0106_\270\352\270\333__\272\364\255\266.doc)

第 2 頁 理 由 現 行 計 劃 3. 現 時, 學 生 如 欲 在 考 試 費 減 免 計 劃 下 申 領 考 試 費 減 免, 必 須 符 合 以 下 資 格 - (a) 首 次 應 考 香 港 中 學 會 考 ( 下 稱 會 考 ) 1 或 香 港 高 級 程 度 會 考 ( 下 稱 高 考

答客問

認可人士、註冊結構工程師及註冊岩土工程師作業備考 ADM-6

Transcription:

以 OpenFlow 實 作 區 域 網 路 管 理 模 組 陳 昶 禎 * 高 勝 助 國 立 中 興 大 學 資 訊 科 學 與 工 程 學 系 g101056004@mail.nchu.edu.tw, sjkao@cs.nchu.edu.tw 摘 要 隨 著 雲 端 運 算 的 概 念 普 及, 終 端 使 用 者 得 以 透 過 網 際 網 路 連 接 高 效 能 伺 服 器 達 到 隨 時 隨 地 的 服 務 需 求 為 了 有 效 地 提 升 服 務 品 質 及 增 加 系 統 設 備 的 使 用 率, 除 了 使 用 虛 擬 化 技 術 外, 資 料 中 心 的 為 了 及 時 處 理 動 態 的 網 路 需 求, 網 路 架 構 也 由 傳 統 的 分 散 式 管 理 架 構 演 變 為 將 控 制 層 集 中 管 理 的 新 型 架 構, 本 論 文 基 於 OpenFlow 協 定, 分 析 傳 統 區 域 網 路 服 務 模 組, 並 透 過 OpenFlow 控 制 器, 探 討 將 傳 統 網 路 功 能 模 組 以 OpenFlow 協 定 描 述 時 會 產 生 的 問 題, 並 以 Python 語 言 提 供 系 統 管 理 者 的 網 路 管 理 平 台 本 管 理 平 台 主 要 為 提 供 系 統 管 理 者 一 有 效 率 且 方 便 的 網 路 管 理 方 式, 在 考 量 以 traffic flow 交 換 的 網 路 環 境 下, 達 到 如 流 量 監 控 負 載 平 衡 及 IP 共 享 等 動 態 網 路 管 理 功 能 的 應 用 關 鍵 詞 : 虛 擬 化 Open vswitch SDN OpenFlow Abstract With the popularity in cloud computing, end users can ubiquitously request services to high -performance servers through Internet. In order to provide better quality of service and usage, the virtualization technique is widely adopted. A centralized approach for network operations in the data center adds a new management complexity. This paper introduces a method to resolve the challenges by translating common network management functions into flows based implementation using OpenFlow protocol. Our implementation also provides an efficient and easy way for the administrator. Through the adoption of traffic flow, our implementation is able to provide traffic monitoring, load balancing and IP sharing function. Keywords: Virtualization, Open vswitch, SDN, OpenFlow. 1. 前 言 在 資 訊 產 業 快 速 的 發 展 下, 伺 服 器 朝 著 多 核 心 的 架 構 發 展, 為 了 最 佳 化 伺 服 器 的 使 用 率 並 保 持 各 種 服 務 間 的 隔 離 性 (isolation), 利 用 虛 擬 化 技 術 已 是 服 務 提 供 者 常 用 的 策 略 為 了 降 低 建 置 高 效 能 虛 擬 機 的 成 本, 由 Intel 與 AMD 兩 家 CPU 大 廠 所 提 出 的 硬 體 輔 助 虛 擬 化 設 計 (hardware-assisted virtualization) Intel-VT 與 AMD-V, 使 服 務 提 供 者 取 得 高 效 能 的 虛 擬 機 器 成 本 大 幅 降 低, KVM(kernel-based virtual machine) 即 是 全 虛 擬 化 技 術 加 上 硬 體 輔 助 虛 擬 化 的 虛 擬 機 器 管 理 界 面 (Virtual Machine Monitor) 另 外, 為 提 供 虛 擬 機 器 交 換 網 路 封 包 之 能 力, 需 要 在 實 體 伺 服 器 中 建 置 虛 擬 交 換 器 來 提 供 虛 擬 機 器 與 實 體 網 路 的 封 包 交 換 路 徑, 並 透 過 虛 擬 交 換 器 的 管 理 工 具 進 行 VLAN QoS(Quality of Service) 及 流 量 的 監 測 與 控 管 有 別 於 傳 統 網 路, 虛 擬 交 換 器 的 數 量 往 往 十 分 龐 大, 管 理 上 也 較 為 複 雜 由 美 國 史 丹 佛 大 學 提 出 的 新 型 網 路 架 構 : 軟 體 定 義 網 路 (Software-Defined Networking, SDN), 基 於 OpenFlow 協 定, 將 網 路 分 為 資 料 層 (Data Plane) 與 控 制 層 (Control Plane), 將 虛 擬 交 換 器 的 行 為 管 理 統 一 交 由 控 制 層 的 控 制 器 (Controller) 軟 體 負 責 這 個 架 構 可 以 讓 網 路 管 理 者 借 由 單 一 的 控 制 器, 用 程 式 規 劃 虛 擬 交 換 器 之 間 的 網 路 拓 撲, 進 而 簡 化 管 理 的 複 雜 度 1.1 問 題 描 述 與 動 機 本 論 文 基 於 OpenFlow 協 定, 探 討 將 傳 統 網 路 管 理 技 術 轉 換 成 flow-based 的 規 則 時, 形 成 flow 優 先 權 序 列 性 flow 和 平 行 性 flow 問 題 提 出 以 多 個 Flow Table 為 基 礎 架 構 的 解 決 方 案, 並 實 作 出 不 同 的 flow set 組 合, 進 行 網 路 管 理 技 術 及 網 路 區 塊 [1][2] (network slice) 之 管 理 2. 相 關 研 究 為 了 建 構 以 SDN 架 構 為 基 礎 之 環 境 架 構, 我 們 需 先 了 解 如 何 使 用 Open vswitch 來 管 理 以 KVM 建 立 的 虛 擬 化 叢 集, 以 及 實 現 SDN 架 構 的 OpenFlow 協 定, 以 軟 體 的 方 式 管 理 網 路, 並 以 探 討 管 理 者 在 以 OpenFlow 協 定 為 基 礎 的 網 路 管 理 議 題 相 關 的 技 術 如 下 : 2.1 KVM virtio vhost Kernel-based Virtual Machine (KVM)[3] 是 結 合 硬 體 輔 助 虛 擬 化 技 術 的 Linux 全 虛 擬 化 解 決 方 案, 主 要 是 透 過 動 態 載 入 模 組 (loadable kernel module), 將 Linux 核 心 轉 換 為 一 個 系 統 程 序 (process),kvm 讓 虛 擬 機 器 的 位 址 空 間 獨 立 於 核 心, 虛 擬 機 的 運 算 請 求 得 以 在 核 心 空 間 (kernel-space) 使 用, 而 其 他 的 影 裝 置 模 擬, 則 是 透 過 執 行 於 使 用 者 空 間 (user-space) 的 模 擬 軟 體 QEMU 執 行 由 於 I/O 指 令 皆 是 透 過 QEMU 模 擬, 容 易 造 成 效 能 瓶 頸, 以 網 路 卡 效 能 為 例, 透 過 QEMU 模 擬 之 網 路 卡 頻 寬 約 為 100 Mb/s, 但 在 KVM-60 與 Linux kernel 2.6.25 以 上 的 版 本 提 供 了 virtio 的 核 心 模 組, 使 得 KVM 的 虛 擬 網 卡 可 以 提 供 1Gb/s 的 頻 寬 而 在 Linux kernel 3.0 提 供 了 vhost_net 模 組, 173

讓 單 一 虛 擬 機 器 的 可 用 頻 寬 再 度 提 高 2.2 Open vswitch Open vswitch[4][5] 是 一 個 Apache 2.0 授 權 下 的 開 放 原 始 碼 軟 體, 透 過 軟 體 模 擬 出 一 個 多 層 虛 擬 交 換 器 功 能, 借 由 對 於 多 種 虛 擬 化 技 術 支 援 的 多 樣 性, 提 供 方 便 管 理 和 配 置 虛 擬 機 器 的 網 路 架 構 由 於 其 變 動 性 小, 可 減 少 網 管 人 員 之 負 擔 目 前 Linux 已 提 供 了 基 於 Layer 2 之 封 包 交 換 模 組 Linux Bridge, 但 Open vswitch 與 Linux Bridge 仍 有 不 少 差 異 以 下 列 舉 出 Open vswitch 的 主 要 特 性 : 子 網 路 隔 離 機 制 : 借 由 對 於 封 包 進 入 的 路 由 器 埠 (switch port) 進 行 VLAN Tag 的 標 記, 標 記 方 式 與 802.1Q VLAN Model 相 同 且 支 援 VLAN Trunking 機 制 支 援 生 成 樹 協 定 (Spanning Tree Protocol,STP): 可 防 止 在 虛 擬 機 封 包 之 間 產 生 環 路 即 廣 播 風 暴, 並 可 提 供 備 用 路 徑 QoS 管 理 : 針 對 每 一 個 路 由 器 埠 進 行 流 量 決 策 支 援 多 種 通 道 協 定 : 可 利 用 GRE IPsec GRE 與 VXLAN over IPsec 與 交 換 器 建 立 路 由 支 援 OpenFlow 協 定 : 支 援 OpenFlow 1.0, 1.2, 1.3 版 2.3 Software-Defined Networking (SDN) Software-Defined Networking[6] 為 近 年 來 興 起 的 網 路 架 構, 具 有 動 態 可 管 理 低 成 本, 並 可 適 應 各 式 各 樣 環 境 的 網 路 架 構 此 架 構 將 傳 統 網 路 架 構 切 割 為 控 制 層 (control plane) 及 資 料 傳 輸 層 (data plane), 其 中 控 制 層 可 透 過 控 制 器 程 式 攥 寫 達 成 客 製 化 網 路 需 求, 並 有 許 多 開 源 的 控 制 器 專 案 如 NOX/POX[12], Beacon[13] 及 Ryu SDN Frame work[8] 等 SDN 之 主 要 定 義 如 下 [6]: 可 直 接 程 式 化 : 由 於 控 制 層 與 傳 輸 層 的 分 離, 網 路 控 制 層 可 經 由 程 式 管 理 敏 捷 性 : 對 於 封 包 轉 送 進 行 抽 象 控 制, 可 因 應 快 速 變 動 的 網 路 需 求 集 中 式 控 制 : 所 有 網 路 裝 置 皆 可 透 過 一 個 SDN 控 制 器 管 理, 達 到 集 中 化 的 網 路 管 理 機 制 可 程 式 化 設 定 : 網 路 管 理 者 可 以 透 過 動 態 且 自 動 的 SDN 程 式 對 自 己 的 網 域 進 行 管 理 即 最 佳 化 網 路 資 源 開 放 標 準 : 管 理 者 容 易 開 發 SDN 程 式 並 適 用 在 所 有 支 援 SDN 標 準 之 設 備 上, 而 不 用 考 慮 設 備 的 品 牌 系 統 等 問 題 2.4 OpenFlow OpenFlow[7] 是 一 個 由 史 丹 佛 大 學 所 開 發 的 開 放 協 定, 可 以 讓 管 理 人 員 自 行 定 義 與 設 計 OpenFlow 交 換 器 的 網 路 行 為, 藉 以 測 試 模 擬 及 管 理 網 域 在 OpenFlow 協 定 下 的 所 有 交 換 器, 其 封 包 傳 遞 流 程 皆 是 以 Flow 呈 現 並 記 錄 於 Flow Table 中 OpenFlow 交 換 器 主 要 是 透 過 控 制 器 (Controller) 來 控 制 網 路 行 為, 並 透 過 OpenFlow 協 定 與 安 全 通 道 (Secure Channel) 與 OpenFlow 交 換 器 溝 通, 如 圖 1 所 示 圖 1 OpenFlow 協 定 組 成 架 構 圖 一 個 OpenFlow 交 換 器 總 共 包 含 Flow Table Secure Channel 以 及 OpenFlow Protocol 三 個 主 要 部 分 Flow Table 包 含 Flow 中 個 欄 位 的 資 訊, 當 OpenFlow 交 換 器 處 理 封 包 時, 便 會 查 詢 表 格 中 的 Flow 資 訊, 並 以 對 應 的 規 則 處 理 封 包 當 交 換 器 無 法 查 到 與 該 封 包 特 徵 相 符 的 規 則 時, 則 會 透 過 Secure Channel 與 控 制 器 以 Packet-In Message 傳 遞 封 包 進 入 訊 息, 當 控 制 器 決 定 封 包 處 理 方 式 後, 也 會 透 過 Secure Channel 傳 送 Flow-Modify Message, 告 知 交 換 器 加 入 或 修 改 Flow 而 所 有 傳 輸 的 訊 息 (message) 皆 會 透 過 OpenFlow Protocol 定 義 的 訊 息 事 件 及 資 料 內 容 傳 輸, 因 訊 息 內 容 為 唯 一 的 語 法, 可 避 免 因 網 路 裝 置 的 廠 牌 不 同 而 造 成 不 相 容 的 問 題 在 Flow Table 中, 進 行 封 包 比 對 及 行 為 設 定 的 的 欄 位 主 要 有 三 個 部 分, 如 表 1 中,Match Fields 記 錄 該 Flow 要 比 對 的 封 包 特 徵, 若 封 包 的 欄 位 (header) 與 欄 位 上 的 值 相 符, 則 代 表 該 封 包 被 分 類 至 該 Flow 中 Counters 用 以 記 錄 符 合 該 Flow 的 封 包 數 與 資 料 大 小 而 Instruction 則 定 義 交 換 器 對 於 該 Flow 的 所 有 封 包 所 應 採 取 的 動 作 表 1 Flow Table 進 行 封 包 比 對 的 主 要 欄 位 Match fields Counters Instructions 目 前 OpenFlow 的 發 展 已 由 單 一 個 Flow Table 成 長 至 多 個 Flow Tables, 如 圖 2 中, 封 包 進 入 交 換 器 後, 會 從 Table 0 開 始,Flow Table 的 執 行 次 序 依 其 Table ID, 由 小 至 大, 以 管 線 化 (Pipeline) 的 方 式 執 行, 直 至 封 包 被 送 出 交 換 器, 或 被 交 換 器 丟 棄 174

圖 2 多 個 Flow Table 的 管 線 處 理 2.5 Ryu SDN Framework Ryu SDN Framework[8] 是 一 個 Apache 2.0 授 權 下 的 開 放 原 始 碼 軟 體 利 用 Python 實 作 OpenFlow 協 定 中 控 制 器 之 功 能, 並 透 過 API 的 方 式, 提 供 開 發 者 方 便 開 發 網 路 管 理 及 控 制 之 程 式 Ryu 完 整 支 援 OpenFlow 1.0, 1.2, 1.3, 1.4 以 及 Nicira Extensions 3. 研 究 方 法 在 每 個 虛 擬 路 由 器 執 行 進 階 網 路 管 理 功 能 時, Flow Table 會 產 生 相 同 特 徵 分 類 問 題 本 論 文 探 討 在 進 行 OpenFlow 協 定 (OpenFlow 1.3.3[9]) 管 理 區 域 網 路 時 會 遭 遇 到 的 問 題, 並 利 用 多 個 的 Flow Tables 的 管 線 機 制 (pipeline), 制 定 對 應 的 策 略 解 析 方 式, 實 作 出 基 於 OpenFlow 之 進 階 網 路 管 理 模 組, 實 踐 基 於 OpenFlow 協 定 的 流 量 監 控 封 包 修 改 及 轉 送 流 程 3.1 相 同 特 徵 分 類 問 題 為 了 對 封 包 進 行 分 類,OpenFlow Switch 會 對 進 入 交 換 器 的 封 包 進 行 特 徵 比 對, 當 其 特 徵 符 合 其 Flow 的 Match 欄 位 描 述 時, 便 會 執 行 該 Flow 的 行 動 (actions) 然 而 在 每 個 Flow 中, 若 Match 比 對 相 同 封 包 特 徵, 則 可 能 產 生, 語 意 錯 誤, 如 表 2 中, 管 理 者 希 望 丟 棄 所 有 目 標 為 B 的 封 包, 但 如 果 是 從 A 至 B 的 封 包 則 正 常 傳 遞 然 而 實 際 上 在 OpenFlow 交 換 器 會 丟 棄 所 有 送 至 B 的 封 包, 包 含 由 A 送 往 B 的 封 包, 造 成 管 理 策 略 與 實 際 行 為 不 符 合 的 現 象 [9] 為 避 免 封 包 行 為 錯 誤, 本 論 文 在 各 個 Flow Table 中, 將 Flow 制 定 固 定 的 優 先 權, 確 保 過 濾 封 包 的 正 確 性 Ryu 控 制 器 與 OpenFlow 交 換 器 連 線 成 功 時, 會 先 以 優 先 權 (Priority)100 的 方 式 插 入 Flow, 而 當 管 理 者 啟 用 進 階 網 路 管 理 功 能 時, 所 有 Flow 會 以 優 先 權 1000 插 入 Flow Table 中, 並 將 同 時 進 行 的 Flow 放 入 不 同 的 Flow Table 中, 以 避 免 相 同 的 優 先 權 卻 無 法 執 行 的 問 題 3.2 序 列 性 Flow 執 行 分 析 將 進 階 網 路 功 能 分 析 成 Flow Table 的 Flow 時, 會 在 Flow 的 actions 欄 位 上 增 加 許 多 不 同 的 行 動 雖 然 可 於 一 個 Flow 中 執 行 完 所 有 的 行 動, 但 也 造 成 動 態 規 劃 的 困 難 如 表 3 中, 若 IP 為 C 的 機 器 實 體 網 路 卡 位 址 改 變, 則 控 制 器 必 須 修 改 上 述 所 有 Flow 所 對 應 的 行 動 為 降 低 因 封 包 特 徵 改 變, 使 得 Flow 必 須 大 量 修 改 的 情 況, 本 論 文 利 用 Flow Table 的 管 線 特 性, 將 進 階 網 路 功 能 依 其 必 須 修 改 的 OSI model 分 層, 以 管 線 方 式 依 序 修 改, 並 加 入 相 對 應 的 Flow Table 中, 如 圖 3 中, 網 路 模 組 可 能 會 影 響 封 包 路 徑, 故 先 檢 查 其 實 體 網 路 位 址 是 否 需 要 被 修 改, 若 有 需 要 則 產 生 一 個 flow 負 責 進 行 封 包 轉 送, 若 還 有 其 他 封 包 特 徵 需 要 被 修 改, 則 會 將 產 生 對 應 的 flow 修 改 封 包 的 特 徵 欄 位, 直 到 沒 有 修 改 封 包 特 徵 的 需 求 為 止 表 3 利 用 單 一 flow 執 行 多 個 行 動 Match Priority Instructions dst_ip=a and dst_port=22 dst_ip=b and dst_port=80 100 100 Actions=[set(dst_IP=C), set(dst_mac=x), Forward(3)] Actions=[set(dst_IP=C), set(dst_mac=x), Forward(3)] 表 2 重 複 特 徵 的 flows Match Priority Instructions src_ip=a 100 Actions=[drop] src_ip=a, dst_ip=b 100 Actions=[Forward(1)] 圖 3 序 列 性 Flow 分 析 流 程 175

Flow set Index set 表 4 Flow 分 類 對 應 到 的 OpenFlow 行 為 Modification set Route set OpenFlow action Goto-Table Set(Rewrite packet headers) Goto-Table output Goto-Table 3.3 平 行 性 Flow 執 行 分 析 為 了 增 加 管 理 的 多 樣 性, 本 論 文 利 用 額 外 的 Flow Table, 對 經 過 Flow 的 封 包 採 樣, 以 不 干 擾 原 本 的 Flow 行 為 模 式 為 前 提 下, 進 行 統 計, 達 到 平 行 性 Flow 的 應 用 3.4 Flow Table 規 劃 由 於 序 列 性 Flow 執 行 分 析 會 將 原 本 的 進 階 網 路 策 略 修 改 為 多 條 具 有 相 依 性 的 Flow 執 行, 為 妥 善 管 理 切 割 後 的 Flow 及 所 屬 的 Flow Table, 本 論 文 利 用 Ryu SDN Framework 的 API 編 寫 程 式, 將 Flow 對 於 封 包 的 特 徵 與 行 動 欄 位 分 類 為 Index set Modification set 及 Route set 三 類 Index set 僅 只 是 封 包 應 被 送 往 哪 一 個 Flow Table 進 行 比 對, Modification set 則 會 根 據 需 要 修 改 封 包 特 徵, 而 Route set 則 會 根 據 封 包 上 標 注 的 實 體 網 路 卡 位 址 或 者 IP 位 址, 決 定 封 包 送 出 的 交 換 器 埠 (switch port), 本 論 文 所 規 劃 的 行 動 分 類 對 應 到 至 OpenFlow 會 使 用 到 的 預 設 行 為 如 表 4 在 交 換 器 正 常 傳 送 封 包 的 情 況 下,Ryu 控 制 器 僅 會 對 Index set 及 Route Function 至 OpenFlow 交 換 器 中, 由 Index set 決 策 進 入 交 換 器 的 封 包 所 屬 的 網 路 區 塊 (network slice), 並 在 該 網 路 區 塊 所 屬 的 Flow Table 決 定 欲 送 出 封 包 的 交 換 器 埠, 即 執 行 Route set 若 管 理 者 需 要 對 特 定 目 標 封 包 特 徵 進 行 修 改 時, 則 目 標 封 包 會 由 Index set 導 引 至 執 行 封 包 修 改 功 能 Flow Table, 執 行 完 Modification set 後, 在 送 入 網 路 區 塊 所 屬 的 Table 中 執 行 Route set 考 量 序 列 性 Flow 的 執 行 次 序 與 平 行 性 Flow 中 皆 須 比 對 執 行 Flow 的 需 求, 本 論 文 將 所 有 的 Flow Tables 分 類 為 以 下 五 個 類 別 :Index Table, Function Table, Slice Table, Route Table, Statistic Table 在 設 定 交 換 器 時,Ryu 控 制 器 讀 取 管 理 者 所 規 劃 的 交 換 器 設 定 檔 後, 會 將 進 入 OpenFlow 交 換 器 的 封 包 分 成 需 進 入 Modification set 的 待 修 改 封 包, 以 及 只 需 進 行 一 般 路 由 的 Route set 封 包, 將 這 兩 類 的 封 包 規 則 加 上 欲 對 應 到 下 一 個 Table 的 資 訊, 以 Flow 的 形 式 寫 入 Index Table, 完 成 初 始 化 的 設 定 當 OpenFlow 交 換 器 接 收 到 封 包 後, 會 先 將 封 包 送 進 Index Table 進 行 比 對, 比 對 的 特 徵 欄 位 會 根 據 管 理 者 所 需 有 所 不 同, 若 是 屬 於 需 要 修 改 特 徵 的 封 包, 會 將 封 包 送 入 Function Table 中 進 行 特 徵 欄 位 修 改, 若 在 Function Table 可 以 找 到 對 應 的 規 則, 則 會 套 用 符 合 Modification set, 反 之 則 會 傳 送 一 個 Packet-In Message 給 Ryu 控 制 器, 將 例 外 交 給 Ryu 控 制 器 處 理 在 修 改 過 欄 位 後,Modification set 會 將 封 包 轉 交 給 交 給 Slice Table 進 行 網 路 區 塊 的 分 類, 並 將 封 包 交 給 屬 於 該 網 路 區 塊 的 Route Table, 並 根 據 實 體 網 路 位 址 決 定 交 換 器 埠, 進 行 封 包 轉 發 封 包 從 進 入 交 換 器 至 送 出 交 換 器 的 流 程 如 圖 4 所 示, 當 封 包 進 入 後, 交 換 器 會 先 將 封 包 送 至 Index Table 比 對, 若 管 理 者 想 統 計 該 封 包 出 現 的 次 數 或 是 大 小, 則 交 換 器 會 先 產 生 一 個 封 包 的 副 本 送 往 Statistic Table 進 行 統 計, 而 Statistic Table 會 將 封 包 副 本 統 計 後 丟 棄, 並 等 待 管 理 者 調 閱 統 計 資 訊 時, 將 統 計 資 訊 回 傳 在 確 認 完 統 計 事 件 後, 若 該 封 包 特 徵 會 被 修 改, 則 封 包 會 送 入 Function Table, 並 根 據 管 理 者 需 求 決 定 是 否 進 行 統 計, 若 封 包 屬 於 Function Table 中 的 任 何 一 個 Modification set, 則 封 包 欄 位 會 被 修 改, 再 送 入 Slice Table 中 若 在 Function Table 中 沒 有 發 現 任 何 Flow 上 的 特 徵 欄 位 與 封 包 特 徵 相 符, 則 會 將 封 包 送 入 Ryu 控 制 器, 由 控 制 器 讀 取 管 理 者 設 定, 進 行 封 包 處 理 以 及 增 加 Flow 規 則 最 後, 封 包 會 經 由 Slice Table 分 配 至 各 個 網 路 區 塊 中, 借 由 建 立 實 體 網 路 位 址 與 交 換 器 埠 的 對 應 關 係, 決 定 封 包 送 出 的 路 徑 為 了 動 態 管 理 實 體 網 路 位 址 與 交 換 器 埠 的 對 應 關 係, 當 有 任 何 的 ARP 請 求 封 包 經 過 交 換 器 時, 皆 會 以 Packet-In 訊 息 方 式 通 知 控 制 器, 在 進 行 ARP 封 包 的 廣 播 前, 控 制 器 會 記 錄 來 源 端 實 體 網 路 位 址 對 應 到 的 交 換 器 埠 關 係 [10] 後, 將 該 次 的 關 係 加 入 該 Route Table 的 Route set 中, 完 成 對 應 關 係 的 記 錄 3.5 Ryu 控 制 器 之 設 計 規 劃 為 符 合 管 理 者 所 提 出 來 的 策 略 以 及 因 應 快 速 變 化 的 網 路 架 構, 本 論 文 在 控 制 器 之 設 計 規 劃 分 為 靜 態 及 動 態 兩 種 策 略 靜 態 策 略 負 責 規 劃 基 本 或 變 動 性 低 的 Flow 借 由 與 管 理 者 的 互 動 界 面, 進 行 靜 態 路 由 規 劃, 以 及 進 階 功 能 隻 基 本 策 略 規 劃, 並 將 其 策 略 儲 存, 已 對 應 動 態 的 策 略 規 劃 而 動 態 策 略 則 處 理 由 OpenFlow 交 換 器 送 至 控 制 器 的 策 略, 並 經 由 靜 態 策 略 加 入 新 的 Flow 或 修 改 原 有 的 Flow 當 控 制 器 開 始 執 行 時, 會 產 生 兩 個 執 行 緒 (Thread):S-Thread 與 D-Thread S-Thread 負 責 與 管 理 者 進 行 靜 態 策 略 管 理, 並 將 讀 取 到 的 策 略 轉 換 為 Flow 並 傳 送 加 入 Flow 至 Flow Table 的 訊 息 給 OpenFlow 交 換 器, 或 轉 換 為 特 徵 清 單, 並 將 其 特 徵 清 單 分 享 給 D-Thread D-Thread 會 接 收 由 OpenFlow 路 由 器 送 給 控 制 器 的 Packet-In 訊 息, 並 經 由 S-Thread 分 享 的 特 徵 清 單 產 生 Flow 物 件, 並 傳 送 加 入 Flow 至 Flow Table 的 訊 息 至 OpenFlow 交 換 器 中 176

控 制 器 操 作 交 換 器 中 的 前 11 個 Table, 並 對 於 其 Flow Table 做 與 章 節 3.4 相 同 的 規 劃 Ryu 控 制 器 會 將 Host A 與 Host B 的 Open vswitch 的 Flow Table 0 定 義 為 Index Table, 並 寫 下 Index set 至 Index Table 中, 並 將 Table 1 至 Table 4 的 功 能 記 錄 為 Function Table, 提 供 封 包 特 徵 修 改 的 Modification set 皆 會 寫 至 Function Table 上, 如 Table 1 是 用 來 進 行 Load Balancing 要 修 改 的 封 包 特 徵 的 Modification set 會 被 寫 入 至 Table 1, 若 有 其 他 需 求 如 NAT, Firewall 等 功 能 則 會 依 其 功 能 模 組 寫 入 相 對 應 的 Function Table 中 無 論 是 否 會 進 行 封 包 特 徵 的 修 改, 封 包 皆 會 被 送 入 Slice Table 中, 即 Table 5, 並 透 過 Slice Table 上 的 Index set 進 行 分 群, 將 封 包 送 入 對 應 網 路 區 塊 的 Route Table(Table 6 ~ Table 9), 此 時 封 包 經 由 本 身 實 體 網 路 位 址 對 應 到 交 換 器 埠 號 碼, 完 成 封 包 轉 送 程 序 若 管 理 者 有 統 計 需 求, 則 會 透 過 控 制 器 在 備 份 一 份 原 始 封 包 至 Statistic Table 中 統 計 圖 4 交 換 器 利 用 Flow Table 處 理 封 包 之 流 程 圖 5 實 作 環 境 之 架 構 圖 4. 方 法 實 作 與 分 析 為 驗 證 將 高 階 網 路 功 能 模 組 轉 換 為 基 於 OpenFlow 協 定 的 Flow 其 正 確 性, 測 試 之 網 路 模 組 以 流 量 監 控 功 能 負 載 平 衡 功 能 及 常 見 網 路 位 址 轉 換 功 能 (Network Address Translation, NAT) 的 進 行 功 能 檢 測 與 分 析 4.1 實 驗 環 境 本 論 文 利 用 KVM 虛 擬 化 技 術 部 署 一 虛 擬 伺 服 器 叢 集, 並 將 所 有 的 虛 擬 交 換 器 定 位 為 多 網 域 之 閘 道 器, 如 圖 5 中,Ryu 控 制 器 會 控 制 兩 個 扮 演 閘 道 器 角 色 的 Open vswitch 由 於 虛 擬 機 器 傳 輸 封 包 仍 需 透 過 虛 擬 交 換 器, 故 虛 擬 交 換 器 可 以 透 過 控 制 器 進 行 QoS 管 理 NAT(Network Address Translation) 負 載 平 衡 (Load balanc) 等 功 能 由 於 Open vswitich 可 用 的 Flow Table 最 大 數 量 為 254 個 (Table 0 ~ Table 253), 本 論 文 利 用 Ryu 圖 6 虛 擬 交 換 器 上 的 Flow Table 配 置 177

4.2 流 量 監 控 功 能 在 進 行 流 量 監 控 時, 必 須 先 設 定 欲 監 控 的 對 象 目 標, 本 次 實 作 為 確 認 負 載 平 衡 功 能, 將 監 控 目 的 端 IP 設 定 為 實 作 負 載 平 衡 之 兩 部 機 器 開 始 監 控 時, 可 以 透 過 直 接 觀 察 特 定 Flow Table 之 方 式 進 行 流 量 查 詢, 如 圖 7, 控 制 器 透 過 搜 集 durarion n_bytes 等 欄 位, 可 以 計 算 出 區 間 內 送 至 192.168.20.3 或 192.168.20.4 的 流 量 圖 7 虛 擬 交 換 器 上 的 流 量 統 計 情 形 4.3 負 載 平 衡 功 能 管 理 者 利 用 本 論 文 實 作 所 提 供 的 負 載 平 衡 模 組, 並 借 由 OpenFlow 協 定 實 作 負 載 平 衡 之 功 能, 設 定 兩 部 機 器 提 供 相 同 的 服 務 在 管 理 者 操 作 的 過 程 中, 會 輸 入 以 下 設 定 至 OpenFlow 控 制 器 : { "Balance": { "Group": [ { "Datapath": "Switch_ID", "Cond": "tcp_src_port", "Dst": "192.168.20.1:5001", "Set": mod_2 } ] } } 從 控 制 器 的 S-Thread 開 始, 控 制 器 程 式 分 析 語 法 中 的 Datapath 欄 位, 由 此 欄 位 取 得 OpenFlow 交 換 器 的 Datapath ID, 並 得 知 此 規 則 的 目 標 對 象 利 用 讀 取 Cond 欄 位 分 析 平 衡 策 略, 由 src_port 得 知 利 用 不 同 的 來 源 port 進 行 負 載 平 衡, 並 從 Set 欄 位 中 取 得 平 衡 規 則 並 加 入 靜 態 flows 至 Index table, 加 入 的 flows 如 下 所 示 : OFPMatch(oxm_fields= {'eth_type': 2048, 'ip_proto':6, tcp_dst =5001 }), [OFPInstructionGotoTable(len=8,table_id=2,type=1)] ) 其 中,OFPInstructionGotoTable 代 表 將 封 包 送 入 Table ID 為 2 的 Flow Table, 即 負 責 Load balance 功 能 的 Function Table 由 於 使 用 負 載 平 衡 功 能 後, 並 無 法 預 知 何 時 會 有 符 合 條 件 之 客 戶 端 來 訪, 故 S Thread 新 增 之 後 的 Flow 至 此 結 束 一 旦 有 符 合 條 件 的 客 戶 端 來 訪, 進 入 Index Table 後, 會 符 合 上 述 之 flows 的 Match 條 件, 而 傳 入 負 責 負 載 平 衡 的 Function Table, 本 例 假 設 來 訪 客 戶 端 的 的 來 源 port 為 40001, 由 於 在 Function Table 中 沒 有 任 何 的 Flow 規 則 可 以 處 理 目 前 的 封 包, 故 會 傳 送 Packet-In 訊 息 至 控 制 器 控 制 器 的 D-Thread 接 收 到 Packet-In 訊 息 後, 會 先 檢 查 該 封 包 是 由 交 換 器 的 哪 個 Flow Table 發 出, 如 本 例 發 出 訊 息 的 Flow Table 之 ID 為 1, 則 控 制 器 對 於 此 Flow Table 的 功 能 實 作 為 負 載 平 衡, 即 開 始 讀 取 S-Thread 所 提 供 的 特 徵 清 單, 並 將 產 生 的 flow 加 入 至 負 責 Load balance 功 能 的 Function Table, 加 入 的 Flows 如 下 所 示 : OFPMatch( oxm_fields= {'eth_type': 2048, 'ip_proto':6, tcp_src =40001}), [OFPInstructionActions( actions=ofpactionsetfield(eth_dst='11:22:33:44:55: 66'),type=4), OFPInstructionActions( actions=ofpactionsetfield(ipv4_dst='192.168.20.3'),type=4), OFPInstructionGotoTable(len=8,table_id=5,type=1)]) 上 述 的 flow 規 則 會 將 所 有 由 來 源 port 40001 送 至 192.168.20.1:5001 的 封 包 修 改 為 送 至 192.168.20.3:5001 的 封 包 此 外, 由 於 區 域 網 路 內 的 封 包 路 由 為 Layer 2 Learning, 故 必 須 將 其 封 包 的 目 標 實 體 網 路 位 址 修 改, 亦 即 將 eth_dst 欄 位 修 改 為 '11:22:33:44:55:66', 然 後 再 將 修 改 過 的 封 包 送 入 Slice Table(table_id=7) 最 後 交 換 器 在 Slice Table 中, 透 過 封 包 的 目 標 實 體 網 路 位 址 送 入 其 所 屬 的 Route Table, 然 後 再 往 目 標 主 機 所 屬 的 交 換 器 埠 送 出 由 上 述 流 程, 可 以 成 功 執 行 負 載 平 衡 之 功 能 由 於 網 路 功 能 與 封 包 傳 送 路 徑 的 規 劃 被 切 割, 即 便 提 供 服 務 的 目 標 主 機 位 址 改 變, 也 不 會 影 響 到 封 包 傳 送 路 徑 的 規 劃 為 檢 視 其 負 載 平 衡 的 正 確 性, 本 論 文 利 用 一 部 虛 擬 機 器 發 出 多 個 request session, 考 量 client 端 有 10-Gbit 的 網 路 交 換 能 力, 且 server 端 上 的 每 部 機 器 皆 具 有 1-Git 的 網 路 交 換 能 力 進 行 負 載 平 衡 測 試 本 次 測 試 由 1 個 request 開 始, 逐 步 測 試 至 同 時 發 出 32 個 request, 並 統 計 server 端 可 以 提 供 的 最 大 流 量 之 吞 吐 量 測 試 結 果 以 圖 8 表 示, 在 只 有 1 個 request 的 情 況 下, 只 會 利 用 到 一 部 機 器 提 供 服 務, 故 只 會 有 1Gbits/s 的 流 量, 而 在 2 個 或 者 是 更 多 個 request 時, 利 用 Load Balancing 功 能 皆 可 有 效 利 用 兩 部 機 器 的 頻 寬, 且 不 會 因 為 request 數 量 的 增 加 而 造 成 效 能 瓶 頸 178

頻 寬 (Mbits/s) server 提 供 之 最 大 流 量 (Gbits/s) 頻 寬 (Mbts/s) 第 十 三 屆 離 島 資 訊 技 術 與 應 用 研 討 會 論 文 集 2.8 3 2.6 2.4 2.2 1.8 2 1.6 1.4 1.2 1 1 2 4 8 16 32 同 時 發 出 的 request 數 圖 8 request 數 與 server 端 可 提 供 之 最 大 流 量 關 係 圖 4.4 IP 共 享 IP 共 享 為 區 域 網 路 上 常 用 的 功 能, 借 由 一 個 公 開 的 IP 位 址 (Public IP) 對 應 到 多 個 私 有 IP 位 址 (Private IP), 可 解 決 IP 位 址 不 足 及 區 域 網 路 防 護 等 問 題 本 論 文 將 IP 共 享 機 制 將 傳 統 NAT(Network Address Translation) 功 能 轉 換 為 OpenFlow 協 定 中 的 Multiple Flows 架 構, 並 與 以 VyOS[14] 為 基 礎 的 傳 統 閘 道 器 系 統 進 行 NAT 在 TCP port 轉 換 以 及 UDP port 轉 換 的 執 行 效 率 比 較, 如 圖 9 10 在 TCP 的 轉 換 效 率 上, 傳 統 閘 道 器 的 轉 換 效 率 平 均 為 942 Mbits/s, 而 本 論 文 方 法 的 轉 換 效 率 為 941 Mbits/s, 表 示 在 經 過 多 個 Flow Table 之 後, 轉 換 效 能 的 衰 退 仍 在 可 接 受 的 範 圍 UDP 轉 換 效 率 的 測 試 中, 傳 統 閘 道 器 的 轉 換 效 率 平 均 為 804 Mbits/s, 而 本 論 文 實 作 之 效 率 為 807 Mbits/s, 其 轉 換 效 率 略 優 於 傳 統 閘 道 器 相 較 於 傳 統 閘 道 器, 利 用 OpenFlow 所 實 作 的 網 路 功 能 還 具 備 切 割 子 網 域, 將 一 個 大 型 區 域 網 路 再 切 割 成 數 個 小 的 虛 擬 區 域 網 路, 並 在 其 中 提 供 負 載 平 衡 之 功 能, 提 供 多 功 能 且 高 效 率 的 網 路 管 理 5. 結 論 由 於 SDN 架 構 的 提 出, 對 於 網 路 功 能 的 管 理 帶 來 龐 大 的 改 變 由 於 控 制 層 與 資 料 層 的 分 離, 管 理 者 可 透 過 單 一 控 制 器 對 所 有 的 交 換 器 下 達 同 步 的 設 定, 也 可 以 針 對 每 個 交 換 器 進 行 個 別 的 最 佳 化, 借 由 比 對 封 包 特 徵, 管 理 者 對 於 區 域 網 路 的 管 理 不 再 僅 限 於 特 定 的 條 件, 而 是 可 以 透 過 開 發 人 員 所 編 寫 的 軟 體, 進 行 客 制 化 區 域 網 路 拓 樸 監 控 與 管 理 本 論 文 基 於 OpenFlow 網 路 管 理 協 定, 針 對 其 特 性 分 析, 借 由 多 個 Flow Tables, 將 衝 突 的 封 包 特 徵 進 行 排 序, 解 決 Flow 規 劃 與 管 理 者 預 期 不 符 之 問 題, 並 將 傳 統 網 路 架 構 中 常 使 用 的 模 組 轉 換 為 基 於 OpenFlow 協 定 的 Flow set, 並 將 Flow 插 入 規 劃 的 Flow Table 中, 除 了 可 以 滿 足 網 路 模 組 所 需 執 行 的 功 能, 也 可 避 免 因 Flow 的 增 刪 而 造 成 交 換 器 邏 輯 錯 誤 或 封 包 轉 送 失 效 等 問 題 未 來 可 將 路 由 器 (router) 的 網 路 功 能 加 入 探 討, 分 析 其 封 包 特 徵, 並 以 此 方 法 為 基 礎, 發 展 屬 於 路 由 器 的 Flow 分 析 策 略 與 設 定 平 台 990 980 970 960 950 940 930 1 6 11 16 21 26 31 36 41 46 51 56 圖 9 VyOS 與 本 論 文 方 法 在 TCP port 轉 換 比 較 809 808 807 806 805 804 803 802 801 800 799 時 間 (s) OpenFlow TCP VyOS TCP 1 6 11 16 21 26 31 36 41 46 51 56 時 間 (s) OpenFlow UDP VyOS UDP 圖 10 VyOS 與 本 論 文 方 法 在 UDP port 轉 換 比 較 參 考 文 獻 [1] R. Sherwood, G. Gibb, K.-k. Yap, M. Casado, N. McKeown, G. Parulkar, Can the production network be the testbed?, Proceedings of the 9th USENIX conference on Operating systems design and implementation, Vancouver, BC, Canada, Oct 2010. [2] S. Gutz, A. Story, C. Schlesinger, N. Foster, Splendid isolation: a slice abstraction for software-defined networks. Proceedings of the first workshop on Hot topics in software defined networks, Helsinki, Finland, Aug 2012. [3] Y. Goto, Kernel-based Virtual Machine Technology. Fujitsu Scientific & Technical Journal, vol. 47, pp. 362-368, July 2011. [4] B. Pfaff, J. Pettit, et al., Extending networking into the virtualization layer. Proc. HotNets, Oct. 2009. [5] Open vswitch, Available from: http://openvswitch.org/ (Date of access: April, 2013). [6] Open Networking Foundation, Software-Defined Networking: The New Norm for Networks. ONF White Paper, April 12, 2012. 179

[7] N. McKeown, T. Anderson, H. Balakrishnan, G. Parulkar, L. Peterson, J. Rexford, S. Shenker, and J. Turner, OpenFlow: enabling innovation in campus networks. SIGCOMM Computer Communication Review, vol. 38, no. 2, pp. 69-74, Apr. 2008. [8] Ryu SDN Framework, Available from: http://osrg.github.io/ryu/ (Date of access: April, 2014). [9] Open Networking Foundation, OpenFlow Switch Specificstion 1.3.3. ONF Specification, Dec 18, 2013. [10] Nate Foster, Rob Harrison, Matthew L. Meola, Michael J. Freedman, Jennifer Rexford, and David Walker, Frenetic: A high-level langauge for OpenFlow networks. Proceedings of the Workshop on Programmable Routers for Extensible Services of Tomorrow, Nov 2010. [11] J. Matias, B. Tornero, A. Mendiola, E. Jacob, N. Toledo, Implementing Layer 2 Network Virtualization Using OpenFlow: Challenges and Solutions. Software Defined Networking (EWSDN) on 2012 European Workshop, vol., no., pp.30,35, 25-26 Oct. 2012. [12] POX, Available from: http://www.noxrepo.org/pox/about-pox/ (Date of access: Oct, 2013). [13] The Beacon Controller, Available from: https://openflow.stanford.edu/display/beacon/h ome (Date of access: Dec, 2013). [14] VyOS, Available from: http://vyos.net/wiki/main_page (Date of access: Mar, 2014) 180