2011年12月9日 星期五

Open vSwitch(開放虛擬交換標準)詳解


摘要:近些年,隨著虛擬化技術、交換技術以及雲計算服務的發展,虛擬交換(Virtual Switch)已經越來越多的引起人們的關注。 
從虛擬機器到虛擬交換
提到虛擬化,大家第一印象往往是虛擬機器(Virtual Machine),VMwareVirtualbox,這些大名鼎鼎的虛擬機器軟體不少人都耳熟能詳。對企業用戶來說,虛擬技術最直接的好處是通過靈活配置資源、程式來高資源的利用率,從而降低應用成本。近些年,隨著虛擬化技術、交換技術以及雲計算服務的發展,虛擬交換(Virtual Switch)已經越來越多的引起人們的關注。
顧名思義,虛擬交換就是利用虛擬平臺,通過軟體的方式形成交換機部件。跟傳統的物理交換機相比,虛擬交換機同樣具備眾多優點,一是配置更加靈活。一台普通的伺服器可以配置出數十台甚至上百台虛擬交換機,且埠數目可以靈活選擇。例如,VMwareESX一台伺服器可以模擬出248台虛擬交換機,且每台交換機預設虛擬埠即可達56個;二是成本更加低廉,通過虛擬交換往往可以獲得昂貴的普通交換機才能達到的性能,例如微軟的Hyper-V平臺,虛擬機器與虛擬交換機之間的連線速度輕易可達10Gbps
虛擬交換與Open vSwitch
2008年底,思科發佈了針對VMWareNexus 1000V虛擬交換機,一時之間在業界掀起不小的風頭,並被評為當年虛擬世界大會的最佳新產品。或許思科已經習慣了群星捧月,此後很長一段時間裡並沒有見到正式的虛擬交換標準形成。除了惠普一年多以後提出了VEPA(虛擬乙太網埠聚合器),其他廠家關注的多,做事的少。隨著雲計算跟虛擬技術的緊密融合,以及雲安全的角度考慮,技術市場曲線已經到了拐點,業界已經迫切需要一套開放的VS標準,眾多門派蠢蠢欲動。
烽煙即燃之際,Open vSwitch橫空出世,以開源技術作為基礎(遵循Apache2.0許可),由Nicira Networks開發,主要實現代碼為可移植的C代碼。它的誕生從一開始就得到了虛擬界大佬——Citrix System的關注。可能有讀者對Citrix不熟,但說到Xen恐怕就是婦孺皆知了,沒錯,Citrix正是Xen的東家。OVS20105月才發佈1.0版本。而早在1月初Citrix就在其最新版本的開放雲平臺(ref[2])中宣佈將Open vSwitch作為其預設元件,並在XenServer5.6 FP1中集成,作為其商用的Xen管理器(hypervisor)。除了XenXen Cloud PlatformXenServer之外,支持的其他虛擬平臺包括 KVMVirtualBox等。
OVS官方的定位是要做一個產品級品質的多層虛擬交換機,通過支持可程式設計擴展來實現大規模的網路自動化。設計目標是方便管理和配置虛擬機器網路,檢測多物理主機在動態虛擬環境中的流量情況。針對這一目標,OVS具備很強的靈活性。可以在管理程式中作為軟體switch運行,也可以直接部署到硬體設備上作為控制層。同時在Linux上支援內核態(性能高)、使用者態(靈活)。此外OVS還支援多種標準的管理介面,如NetlowsFlowRSPAN,ERSPAN, CLI。對於其他的虛擬交換機設備如VMwarevNetwork分散式交換機跟思科Nexus 1000V虛擬交換機等它也提供了較好的支援。
目前OVS的官方版本為1.1.0pre2,主要特性包括
虛擬機器間互聯的可視性;
支援trunking的標準802.1Q VLAN模組;
細細微性的QoS
每虛擬機器埠的流量策略;
負載均衡支援OpenFlow (參考openflow–打造彈性化的可控互聯網)
遠端配置相容Linux 橋接模組代碼
OVS獲取
由於是開源項目,代碼獲取十分簡單,最新代碼可以利用git從官方網站下載。此外官方網站還提供了比較清晰的文檔資料和應用常式,其部署十分輕鬆。當前最新代碼包主要包括以下模組和特性:
ovs-vswitchd 主要模組,實現switchdaemon,包括一個支持流交換的Linux內核模組;
ovsdb-server 羽量級資料庫伺服器,提供ovs-vswitchd獲取配置資訊;
ovs-brcompatd ovs-vswitch替換Linux bridge,包括獲取bridge ioctlsLinux內核模組;
ovs-dpctl 用來配置switch內核模組;
一些Scripts and specs 輔助OVS安裝在Citrix XenServer上,作為默認switch
ovs-vsctl 查詢和更新ovs-vswitchd的配置;
ovs-appctl 發送命令消息,運行相關daemon
ovsdbmonitor GUI工具,可以遠端獲取OVS資料庫和OpenFlow的流表。
此外,OVS也提供了支援OpenFlow的特性實現,包括
ovs-openflowd 一個簡單的OpenFlow交換機;
ovs-controller 一個簡單的OpenFlow控制器;
ovs-ofctl 查詢和控制OpenFlow交換機和控制器;
ovs-pki OpenFlow交換機創建和管理公開金鑰框架;
tcpdump的補丁,解析OpenFlow的消息;
結語
IT領域可以稱得上是人類歷史上最開放創新,也是最容易壟斷的行業。PC行業,wintel帝國曾塑造了不朽的神話,證明誰控制了cpuos,誰就控制了話語權,只要PC的軟硬體模式不發生革命性變化,wintel帝國的地位將是無人能撼的。後起之秀ARM借助重視能耗的東風,再加上智慧終端機技術的大發展才展露頭角。而在互聯網界,思科更是首先把握住了最核心的交換市場,早早登上至尊之位,即使是步後塵的juniperhuawei也只能是虎口奪食,各憑絕技分天下。現在虛擬交換技術的提出將給這一領域帶來新的契機,究竟鹿死誰手,更待後人評說。

沒有留言: