(CWW)隨著云計算技術及其業務的普及,數據中心云化發展逐步走向大型化、自動化、虛擬化,越來越多的分布式數據密集型應用傾向于部署在云環境中,如MapReduce、Storm、Spark等,云網絡中產生超大規模東西向數據流量將成為必然趨勢。上層應用共享底層物理網絡帶寬導致網絡擁塞成為常見現象,云業務服務質量需要加強保障。
網絡QoS(Quality of Service,服務質量)保障指一張網絡能夠利用各種基礎技術,為指定的網絡通信提供更好的服務能力,是網絡的一種安全機制,用來解決網絡延遲和阻塞等問題。QoS保障對于容量有限的網絡來說是十分重要的,而大型數據中心云業務就屬于“容量有限”的范疇。
(資料圖片僅供參考)
基于SDN架構的云資源池服務質量保障技術特點及解決方案
云基礎設施本質上是一個虛擬化的資源池,單個操作系統和網絡端口不再一一對應,在同一臺物理服務器上運行的多臺虛擬機之間存在著對物理網卡的競爭。傳統網絡QoS策略只針對物理端口,服務器所有網絡行為由接入交換機直接控制。而在虛擬化環境中,虛擬機和交換機之間隔著一層服務器網卡,虛擬機層面的業務流量難以區分、管理和控制。其將預定義SLA作為QoS的參數,缺乏一定的靈活性;而SDN可提供開放應用編程接口,這為QoS保障帶來新的契機。
本文設計了一套基于SDN的云數據中心業務流量QoS保障解決方案,在為云中的虛擬機業務流量提供自動化QoS保障的同時,盡可能提高物理鏈路利用率。通過增加虛擬接入層軟件交換機(OVS),將網絡接入移至物理服務器內部,進而實現對虛擬機網絡策略的管理。借助SDN南向接基于SDN架構的云資源池業務流量QoS保障口,實現針對業務類型的個性化流表自動下發機制,達到虛擬機業務流量調度至特別端口隊列的目的。借助SDN北向接口,監控全局虛擬機業務流量狀態以及端口隊列流量狀態,并在此基礎上設計基于實時業務流量端口隊列的帶寬動態調整策略。與此同時,采取分級控制的思路,在端口隊列針對性設計基于流的限速策略,從而達到虛擬機業務流量QoS保障的目的。
分級的虛擬機流量業務QoS保障解決方案
傳統網絡流量QoS保障通常基于業務類型,這是一種粗粒度的實現方式,在同一業務占滿物理帶寬的情況下,很難區分相同業務的優先級。本方案將虛擬機業務流量服務質量分兩級保障,分別為基于業務的帶寬保障和基于虛擬機的帶寬保障,在為云中虛擬機業務流量提供自動化QoS保障的同時,盡可能提高物理鏈路的利用率,有效解決了滿帶寬時同類業務QoS保障的問題,在更精細的層面上實現了對虛擬機業務流量的QoS保障。
個性化流表自動下發機制
在傳統網絡流量QoS保障實現中,SL A通常被用作QoS的輸入參數,最終生成的網絡層策略往往是預先定義的、靜態的。本方案在控制器層面上實現動態流表自動化下發機制,捕獲Packet-in消息,根據網絡拓撲中實時業務流量的情形,動態生成個性化流表并下發至交換機。
基于實時流量的端口隊列帶寬動態調整算法
針對動態調整實時流量的端口隊列帶寬,本文提出一項簡單帶寬協商自適應算法,可有效解決隊列帶寬競爭時業務流量QoS保障問題。
QoS保障算法、策略動態管理
采用模塊化和熱插拔思路,支持QoS保障策略和算法動態加載、更新、刪除,系統管理人員能夠自定義多種算法或策略,實現策略算法模塊與系統本身的高內聚、低耦合。
基于SDN架構云資源池服務質量保障方案
動態性是云計算的顯著特征之一,虛擬機可以隨時啟動、關閉、遷移。當前基于傳統網絡架構的模式在支撐云計算時缺乏一定的靈活性,尤其體現在云中業務流量QoS保障方面。在云環境下,同一臺宿主機上的多臺虛擬機共享物理網絡接口,在數據密集型業務負載過重時,勢必引發對網絡資源的競爭。傳統QoS保障技術因敏捷性和靈活性的天然缺失,導致其無法很好地解決云中存在的問題,SDN技術實現了控制平面與轉發平面的分離,擺脫了硬件對網絡架構的限制,實現了網絡層面較好的靈活性、敏捷性。除此之外,SDN的可編程性很好地解決了云環境下基于虛擬機業務流量的QoS保障問題。
云計算基礎設施層服務采取集中式控制架構,由云控制節點管理多個計算節點,虛擬機運行在計算節點之上,云控制節點負責虛擬機具體調度。本方案主要針對宿主機內部多臺虛擬機流量開展QoS保障,從而消除網絡資源競爭帶給虛擬機業務的影響。
具體解決方法
為體現虛擬機流量業務等級,對虛擬機業務進行分類,大致分為重要和非重要兩類。為體現不同業務流量的優先級,在宿主機物理網卡對應虛擬交換機的端口上做多個限速隊列,共享物理帶寬,通過隊列帶寬的不同實現各虛擬機業務種類優先級的區分。業務流量通過SDN控制器形成個性化流表,決策業務流匹配至不同隊列,并下發至交換機。
在為虛擬機業務流量提供QoS保障的同時,應盡可能提高鏈路利用率,故需滿足以下要求:優先保證重要業務的帶寬,即不同種類業務競爭網絡資源時,重要業務應盡可能占滿帶寬,非重要業務不參與競爭;系統出現重要業務流量低谷時,非重要業務如需要更多帶寬,系統將對隊列帶寬進行動態調整,以滿足非重要業務的帶寬需求;重要業務占滿物理帶寬時,它們之間也會出現網絡資源競爭,應按虛擬機所屬用戶的類別保障其業務QoS,即重要用戶的虛擬機重要業務將獲得更多帶寬資源。
因此,本文提出基于分級的虛擬機流量業務QoS保障解決方案,兩級保障措施如下。
基于業務的帶寬保障
對端口設置隊列,在隊列上做帶寬限制,將業務分類并映射到隊列中,隊列具備優先級,重要的應用映射到優先級最高的隊列中,優先級最高隊列中的服務將被優先保障。也就是說,優先級最高的隊列在其需要最大帶寬時,將獲得默認最大帶寬的權利。為提供業務的帶寬保障,本方案設計了基于實時流量的端口隊列帶寬動態調整算法。
基于虛擬機的帶寬保障
當端口上的所有隊列帶寬比趨于穩態,并且每個隊列帶寬占用率處于飽和時,在相同隊列里按不同虛擬機業務流的優先級做QoS保障,重要用戶的虛擬機將擁有更多的帶寬資源。為提供虛擬機的帶寬保障,本方案設計了基于流的細粒度QoS保障策略。
系統設計
虛擬機流量數據包發送至虛擬交換機,若無流表匹配,則發至控制器。控制器截獲Packet-in消息,根據特征庫分析其業務類型,并轉發至不同優先級的端口隊列;監控端口隊列流量情況,綜合虛擬機類別,決定是否對業務流進行限速,同時生成個性化流表下發至虛擬交換機。
個性化流表下發模塊接收到OpenFlow交換機發來的數據包,根據數據包分析其業務類型,進而調度到不同的隊列,從而實現粗粒度的QoS保障,最大程度提高網絡資源利用率,例如:當IP地址為10.0.0.1的虛擬機向位于不同計算節點的IP地址為10.0.0.2的虛擬機發送HTTP請求時,下發模塊會解析數據包,判斷其業務類型,并針對轉發路徑上的節點下發流表,規劃流量的轉發細節。
隊列帶寬動態調整模塊主要負責隊列端口流量的實時監控,通過簡單帶寬協商自適應算法,達到云中心重要業務優先保障的目的。業務流帶寬動態調整模塊主要是在重要端口隊列占滿物理帶寬時,根據用戶虛擬機的優先級,對重要級別低的虛擬機業務流進行限速。動態策略管理模塊主要負責維護多種QoS策略的動態加載和刪除。網絡管理人員可根據業務的變化,隨時添加和刪除自定義的QoS策略。
結語
QoS對于IT云資源池尤為重要,是業務穩定運行的重要保障。中移動信息技術有限公司是中國移動集團旗下IT領域的專業機構,致力于打造“可信、可管、可控、可視”的精品IT云,保障IT云安全、可靠、穩定運行。中國移動IT云(私有云)已形成了“一云六中心”整體布局,建成投產算力服務器規模超30萬臺,成為中國最大的一朵私有云。而QoS保障將助力運營商構建技術先進、安全高效的IT云網。
標簽: