| 研究生: |
蔡逸祥 Yi-Hsiang Tsai |
|---|---|
| 論文名稱: |
使用於OpenFlow網路架構下的網路狀態更新監錄機制 A Global State Consistent Update and Snapshot Mechanism for OpenFlow Switch Network |
| 指導教授: |
曾黎明
Li-Ming Tseng |
| 口試委員: | |
| 學位類別: |
碩士 Master |
| 系所名稱: |
資訊電機學院 - 資訊工程學系 Department of Computer Science & Information Engineering |
| 論文出版年: | 2013 |
| 畢業學年度: | 101 |
| 語文別: | 中文 |
| 論文頁數: | 76 |
| 中文關鍵詞: | 軟體定義網路 、全局快照 、全局一致性更新 、OpenFlow 、NetFPGA |
| 外文關鍵詞: | SDN, Global snapshot, Global consistent update, OpenFlow, NetFPGA |
| 相關次數: | 點閱:17 下載:0 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
隨著網路技術快速發展,已有許多不同的網路架構紛紛推陳出新。其中近年來最受重視的是軟體定義網路(Software Define Network, SDN),許多指標性的企業已紛紛投入。而OpenFlow則是最主流的軟體定義網路架構之一。而隨著軟體定義網路的發展,現有的網路設備已不足以全面支援軟體定義網路之需求,因此美國史丹佛大學開發出可程式化網卡NetFPGA以支援OpenFlow需求。
有別於傳統網路架構中的交換器,OpenFlow交換器的狀態不再是不可變動的,而是可以經由OpenFlow控制器動態設定,這使得網路供應商在管理網路時更便利。OpenFlow的一大特色為OpenFlow 交換器具有動態的記憶能力,因此可藉由類似學習的機制紀錄住flow entry。OpenFlow帶來了許多對於網路實驗及管理好處,但若沒有良好的系統狀態儲存機制,可能使得這些優勢無法發揮,因此仍有不少議題及問題值得探討及改善。
本論文探討幾個經典的分散式系統Global snapshot演算法:Chandy-Lamport演算法、Lai-Yang演算法、Mattern演算法。以及近年來應用前述演算法於OpenFlow的GENE-VIOLIN snapshot機制,以期分析及設計於OpenFlow架構下適用於備份及正確更新的Global Snapshot機制。
傳統的global snapshot機制通常可由任意程序自發性紀錄local state後發起,但在OpenFlow架構下若flow table有所變動必由OpenFlow controller發起。因此本論文提出以OpenFlow controller為唯一發起者,並定義openflow交換器更新flow table為snapshot時機之snapshot演算法,並僅加入簡單元件使得flow table更新前後之封包必保持因果關係正確性。
With the rapid development of Internet technology, there have been many innovative network architectures. Software Define Network (SDN), which has been adopted by a number of leading enterprises, has been greatly valued over the last few years. And OpenFlow is one of the mainstream Software Define Network architectures. However, as SDN develops, the existing Internet facility has become insufficient to meet its demand. Standford University in the US has therefore developed NetFPGA, a programmable NIC, to support OpenFlow.
Unlike traditional network architecture switches, the state of OpenFlow switches is no longer invariable, allowing suppliers to manage the networks more conveniently. One of the significant features of OpenFlow is that it has dynamic memory capacity, so it can record flow entries and modify it through an approach similar to learning. OpenFlow can bring great benefit to network experiments and management, but the advantages wouldn’t be brought to full play without a good mechanism for monitoring system states. Hence there are still issues and problems that need to be investigated and modified.
This dissertation discusses classic distributed system Global snapshot algorithms, including Chandy-Lamport algorithm, Lai-Yang algorithm, and Mattern algorithms, as well as GENE-VIOLIN snapshot algorithm, which applies the mentioned algorithms on OpenFlow. Analysis and design of a comprehensive Global snapshot mechanism that is applicable to the OpenFlow network architecture are also included here.
[1] N. McKeown, T. Anderson, H. Balakrishnan, G. Parulkar, L. Peterson, J. Rexford, S. Shenker, and J. Turner, "OpenFlow: enabling innovation in campus networks," ACM SIGCOMM Computer Communication Review, vol. 38, pp. 69-74, 2008.
[2] OpenFlow:OpenFlow Switch Specification Version 1.3.1September 6, 2012 https://www.opennetworking.org/images/stories/downloads/specification/openflow-spec-v1.3.1.pdf
[3] J. Naous, D. Erickson, G. A. Covington, G. Appenzeller, and N. McKeown, "Implementing an OpenFlow switch on the NetFPGA platform," in Proceedings of the 4th ACM/IEEE Symposium on Architectures for Networking and Communications Systems, 2008, pp. 1-9.
[4] NOX http://www.noxrepo.org/
[5] NOX:NOX API notes。https://github.com/noxrepo/nox-classic/wiki/NOX-API-notes。
[6] NOX:NOX GUI。https://github.com/noxrepo/nox-classic/wiki/NOX-GUI。
[7] NetFPGA:NetFPGA Technical Specifications。http://www.netfpga.org/php/specs.php。
[8] G. Gibb, J. W. Lockwood, J. Naous, P. Hartke, and N. McKeown, “NetFPGA─An Open Platform for Teaching How to Build Gigabit-Rate Network Switches and Routers”, IEEE Trans. Education, Vol 51, pp. 364-369, August 2008.
[9] K. M. Chandy and L. Lamport, "Distributed snapshots: determining global states of distributed systems," ACM Transactions on Computer Systems (TOCS), vol. 3, pp. 63-75, 1985.
[10] F. Mattern, "Efficient algorithms for distributed snapshots and global virtual time approximation," Journal of Parallel and Distributed Computing, vol. 18, 1993.
[11] T. H. Lai and T. H. Yang, "On distributed snapshots," Information Processing Letters, vol. 25, pp. 153-158, 1987.
[12] A. Kangarlou, D. Xu, U. C. Kozat, P. Padala, B. Lantz, and K. Igarashi, "In-network live snapshot service for recovering virtual infrastructures," Network, IEEE, vol. 25, pp. 12-19, 2011.
[13] M. Canini, D. Venzano, P. Peresini, D. Kostic, and J. Rexford, "A NICE way to test OpenFlow applications," NSDI, Apr, 2012.
[14] L. Lamport, "Time, clocks, and the ordering of events in a distributed system," Communications of the ACM, vol. 21, pp. 558-565, 1978.
[15] R. Garg, V. K. Garg, and Y. Sabharwal, "Efficient algorithms for global snapshots in large distributed systems," Parallel and Distributed Systems, IEEE Transactions on, vol. 21, pp. 620-630, 2010.
[16] A. D. Kshemkalyani, "Fast and message-efficient global snapshot algorithms for large-scale distributed systems," Parallel and Distributed Systems, IEEE Transactions on, vol. 21, pp. 1281-1289, 2010.
[17] A. Kangarlou, P. Eugster, and D. Xu, “VNsnap: Taking snapshots of virtual networked environments with minimal downtime,” IEEE/IFIP International Conference on Dependable Systems and Networks(DSN-DCCS), 2009.
[18] A. Kangarlou, P. Eugster, and D. Xu, "VNsnap: Taking Snapshots of Virtual Networked Infrastructures in the Cloud," 2012.
[19] A. Kangarlou, D. Xu, P. Ruth, and P. Eugster, “Taking snapshots of virtual networked environments,” 2nd International Workshop on Virtualization Technology in Distributed Computing, 2007.
[20] X. Jiang and D. Xu, “VIOLIN: Virtual Internetworking on Overlay INfrastructure,” Technical Report CSD TR 03-027, Purdue University, 2003.
[21] NOX. http://noxrepo.org/noxwiki/index.php/NOX_Installation
[22] The OpenFlow Switch Consortium. http://www.openflowswitch.org
[23] NETFPGA. http://www.openflow.org/wk/index.php/CentOS_NetFPGA_Install
[24] http://www.colasoft.com/packet_builder/
[25] http://www.wireshark.org/
[26] M. Reitblatt, N. Foster, J. Rexford, and D. Walker, "Consistent updates for software-defined networks: Change you can believe in!," in Proceedings of the 10th ACM Workshop on Hot Topics in Networks, 2011, p. 7.
[27] http://www.stanford.edu/class/cs244/2012/slides/cs244-sdn-intro-12.pdf
[28] L. Lamport, "A new solution of Dijkstra's concurrent programming problem," Communications of the ACM, vol. 17, pp. 453-455, 1974.
[29] G. Taubenfeld, "The black-white bakery algorithm and related bounded-space, adaptive, local-spinning and FIFO algorithms," in Distributed Computing, ed: Springer, 2004, pp. 56-70.