趙正波
?
淺談一種支持細粒度并行的SDN虛擬化編程框
趙正波
中國電信股份有限公司浙江分公司,浙江 杭州 310000
基于一種支持細粒度并行的SDN虛擬化編程框分析,首先應明確SDN虛擬化編程現狀,然后掌握支持細粒度并行的方式。首先這種框架支持多種處理方法的共同執行,其次這種框架支持事件進行內部處理,最后分析并行編程模型,其主要內容有:流的抽象、網絡資源的抽象、事件處理接口、并行的數據對象操作。通過這些內容,提高SDN虛擬化編程速度與效率,增加準確性。
支持細粒度;SDN虛擬化;編程框
SDN虛擬化主要指軟件定義網絡,重視編程網絡思想。通過集中邏輯控制,將更多網絡功能病程可定義軟件,可以進行靈活編寫和簡單修改,實現整個網絡控制。網絡虛擬化技術能夠抽象分析地層的物理資源,掌握多個虛擬網絡之間的差異。SDN網絡虛擬化技術,結合了兩種技術優勢,有效增強網絡資源共享,增加網絡控制靈活性。但現有的虛擬化框剪性能與可擴展性較差,由此利用事件處理過程中的細粒度并行,提高框架性能和可擴展性,現對此進行分析[1]。
SDN虛擬化框架,在第三方控制器中使用,通知邏輯程序。為了較好地提升設備性能及可擴展性,使用粗粒度并行的方式,解決SDN事件。這種方法通過多條工作線程并行處理,不同事件中內部串行的執行方式有一定差異。事件內部處理中,復雜度高會增加處理時延[1]。但現有第三方控制器的工程器中的工程線不能承擔事件處理,還收發事件,其處理時延會影響I/O執行,導致框架邏輯控制層出現執行延誤。這種復雜事件處理,限制了網絡發展規模,利用細粒度并行編程方法可以應用OpenQoS,提升事件處理速度。
這種編程算法交換節點個數,會根據具體情況變化,有時間開銷。為了更好地滿足大規模網絡的性能要求,執行并行路由算法,遵守SDN數據中心的網絡MicroTE,計算可行路徑,提升整體計算效率。如果拓撲結構出現變化,算法的復雜度會有所增加。針對大規模網絡處理,確定MicroTE并行算法,分析其對計算速度的影響。比較分析已經提出的并行算法,使用細粒度提升QoS的路由功能,凸顯其支持作用,滿足復雜事件的處理要求。
解決復雜事件處理的時延,利用支持細粒度并行 的SDN虛擬化框架,針對邏輯層控制進行簡要分析。
首先,這種框架支持多種處理方法的共同執行,針對一些缺乏依賴關系的事件,處理應選取優先級比較執行。一種SDN事件可以綁定多種處理方法,形成固定的邏輯方法,從而保證運行的可靠性[2]。
其次,這種框架支持事件進行內部處理。并行執行針對邏輯復雜的事件,可以選用編程接口,在執行處理中動態生成多個任務并行執行[3]。在框架編程接口中,空間分流劃分能夠說明虛擬網絡及處理邏輯方法。在這個過程中,通過程序具體情況,如虛擬網絡資源的豐富程度,選取適合的操作方法,在多樣化的虛擬網絡中運用。不同類型的SDN消息可以反映框架運行狀態,對不同虛擬網絡中的處理任務,完善虛擬網絡資源,實現多個線程并行處理。
3.1 流的抽象
這種內容是SDN虛擬化框架中的重要工作,應進行網絡劃分構建虛擬網絡。框架設計中,需要使用相同類型的流,如TCP源口號和HTTP流。流的創建與移動,要符合實際應用,掌握框架特點,生成虛擬網絡,實現整體的邏輯控制。一旦物理網絡中的流消息傳送及時,框架就會根據流的信息內容,生成對應的流對象綜合處理,減少整體內容的占用,最后執行任務后,自動刪除信息[4]。
3.2 網絡資源的抽象
網絡資源的抽象需要與現有SDN虛擬化框架比對,整體運作中應明確自定義虛擬網絡資源的使用,Base-state類。編程人員可以結合實際情況任意使用網絡資源,確定網絡資源的操作手段,為虛擬網絡應用提供參考。
3.3 事件處理接口
編程中使用的框架,設立新的事件接口處理問題,針對任意SDN事件進行方法分配。處理方法可以與SDN事件綁定,當事件被觸發時,要將對應的處理方法調出,編程人員要掌握事件的對應代碼,現針對兩種處理方法進行合理分析。
一是針對特定的數據對象,以及處理該對象的方法,編程人員應進行事件與處理方法的綁定。當觸發SDN事件時,要調用這種處理方法,然后快速處理這種情況。
二是現有框架常用的方法,將一種處理方法與特定事件類型綁定。兩種處理方法的區別是執行處理的線程類型。如果類型對應,那么這種處理方法就會沿著I/O線程直接執行;如果類型不對應,就會將產生的任務交由計算線程執行。
3.4 并行的數據對象操作
本次框架主要利用兩種數據對象,不同類型的流會產生不同的流對象,編程人員要保存虛擬網絡資源的狀態對象。框架可以提供簡單的接口,在底層事件處理中,兩種不同類型的對象,應進行并行操作和同步[5]。例如,handle 方法是針對數據對象的并行操作方法,當SDN事件實例對象調用 handle 方法時,需要指定處理該對象的方法 method。當handle方法應用中,會產生動態任務,編程人員要根據實例對象,執行不同的線程[5]。
SDN虛擬化框架事件內部處理中,復雜度高會增加處理時延。但現有第三方控制器的工程器中的工程線不能承擔事件處理,還收發事件,其處理時延會影響I/O執行,導致框架邏輯控制層出現執行延誤。利用事件處理過程中的細粒度并行,提高框架性能和可擴展性,凸顯其支持作用,滿足復雜事件的處理要求。
[1]羅臘詠,賀鵬,關洪濤,李振宇,謝高崗.可編程虛擬路由器關鍵技術與原型系統[J].計算機學報,2013(7):1349-1363.
[2]龔向陽,王文東.一種面向多樣化網絡業務融合的SDN網絡架構[J].中興通訊技術,2013(5):16-21.
[3]謝立軍,胡宇翔,汪斌強,蘭巨龍,程國振,王志明.網絡可編程技術研究[J].電信科學,2016(2):1-12.
[4]段通,蘭巨龍,程國振,胡宇翔.基于元能力的SDN功能組合機制[J].通信學報,2015(5):160-170.
[5]諸葛斌,王保霞,王怡寧,吳春明,姚敏輝.基于軟件定義價格的SDN應用體系結構[J].電信科學,2015(8):7-17.
Talking about the Kind of Support Fine-Grained Parallel Programming SDN Virtual Box
Zhao Zhengbo
Zhejiang Branch of China Telecom Corporation Limited,Zhejiang Hangzhou 310000
Based on a fine-grained parallelism SDN virtualization programming box analysis,we should first define SDN virtualization programming situation,then grasp the support fine-grained parallel manner,the first such joint implementation framework supports a variety of treatment methods,and secondly that species framework to support events for internal processing.Finally parallel programming model,and its main contents are abstract abstract flow of network resources,event processing interface,parallel data object manipulation. Through these elements,improve SDN virtualization programming speed and efficiency,increase accuracy.
support for fine-grained;SDN virtualization;programming box
TP311.52
A
1009-6434(2016)07-0138-02