• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      一種新的SDN架構(gòu)下端到端網(wǎng)絡(luò)主動(dòng)測(cè)量機(jī)制

      2017-01-11 14:20劉俊曾少華
      關(guān)鍵詞:軟件定義網(wǎng)絡(luò)計(jì)算機(jī)網(wǎng)絡(luò)

      劉俊 曾少華

      摘要:SDN是近年來(lái)網(wǎng)絡(luò)界的研究熱點(diǎn)之一,自斯坦福大學(xué)首次提出SDN概念以來(lái)已引起國(guó)內(nèi)外研究人員的極大關(guān)注和研究。SDN是一種新的網(wǎng)絡(luò)體系結(jié)構(gòu),其核心原則是分離控制平面和數(shù)據(jù)平面。隨著SDN網(wǎng)絡(luò)的快速發(fā)展,對(duì)SDN網(wǎng)絡(luò)進(jìn)行有效的網(wǎng)絡(luò)測(cè)量變得越來(lái)越重要。SDN網(wǎng)絡(luò)的構(gòu)架與傳統(tǒng)的TCP / IP網(wǎng)絡(luò)完全不同。這使得傳統(tǒng)的端到端網(wǎng)絡(luò)測(cè)量工具對(duì)于SDN網(wǎng)絡(luò)都不再適用。為了在SDN構(gòu)架下實(shí)現(xiàn)端到端的網(wǎng)絡(luò)測(cè)量,本文提出一種新的SDN網(wǎng)絡(luò)主動(dòng)測(cè)量機(jī)制。這種機(jī)制以主動(dòng)測(cè)量為目的,依據(jù)SDN網(wǎng)絡(luò)的新型構(gòu)架,對(duì)SDN協(xié)議和交換機(jī)進(jìn)行了擴(kuò)展完成相應(yīng)測(cè)試功能。仿真結(jié)果表明,該機(jī)制可以獲得準(zhǔn)確的網(wǎng)絡(luò)測(cè)量結(jié)果,并且具有良好的可擴(kuò)展性。

      關(guān)鍵詞:計(jì)算機(jī)網(wǎng)絡(luò);軟件定義網(wǎng)絡(luò);網(wǎng)絡(luò)測(cè)量

      中圖分類(lèi)號(hào):TP393.06文獻(xiàn)標(biāo)識(shí)碼:A

      Abstract:SDN is a new network architecture proposed by Stanford University. The kernel principle of SDN is that separating the control plane and the data plane of the network. With the rapid development of the SDN network, the research of efficient measurement mechanism on SDN network becomes more and more important. The unique features of SDN network make the measurement and monitoring techniques on SDN network quite different from those on traditional TCP/IP network. Based on the fully use of the characteristics of SDN, we construct a new active SDN network measurement mechanism to measure the endtoend path performance of the network. This mechanism takes the active SDN network measurement as the goal by extending the SDN protocol and the SDN switches. The simulation shows the mechanism can provide accurate network measurement results.

      Key words:computer network;software defined networking;active network measurement

      1引言

      SDN是一種新的網(wǎng)絡(luò)構(gòu)架,核心思想是網(wǎng)絡(luò)的控制平面和轉(zhuǎn)發(fā)平面分離,網(wǎng)絡(luò)設(shè)備具有開(kāi)放的可編程接口和網(wǎng)絡(luò)的集中控制。隨著SDN實(shí)驗(yàn)網(wǎng)絡(luò)和商用網(wǎng)絡(luò)規(guī)模的擴(kuò)大,對(duì)SDN網(wǎng)絡(luò)進(jìn)行準(zhǔn)確的測(cè)量和監(jiān)控,意義非常重大。現(xiàn)有SDN實(shí)現(xiàn)中,對(duì)SDN網(wǎng)絡(luò)進(jìn)行端到端主動(dòng)測(cè)量尚無(wú)較好解決方案。

      SDN網(wǎng)絡(luò)的構(gòu)架與傳統(tǒng)IP網(wǎng)絡(luò)區(qū)別很大,SDN控制器的加入使得SDN可以方便的進(jìn)行網(wǎng)絡(luò)被動(dòng)測(cè)量。在OpenFlow 交換機(jī)中,保存了流表相關(guān)統(tǒng)計(jì)信息,可以記錄收到數(shù)據(jù)包數(shù)、字節(jié)數(shù)等數(shù)據(jù)??刂破骺梢酝ㄟ^(guò)查詢(xún)獲取這些信息。這些被動(dòng)網(wǎng)絡(luò)測(cè)量方法不能獲得端到端的重要網(wǎng)絡(luò)參數(shù)如時(shí)延、抖動(dòng)、可用帶寬等。同時(shí),被動(dòng)測(cè)量會(huì)給SDN控制器帶來(lái)較大的負(fù)載,如果沒(méi)有專(zhuān)用硬件進(jìn)行相關(guān)統(tǒng)計(jì),影響控制器的處理能力。被動(dòng)測(cè)量SDN網(wǎng)絡(luò)的研究有:OFRewind[1]通過(guò)記錄和回放SDN 控制平面的流量來(lái)診斷網(wǎng)絡(luò)故障,這種方法對(duì)整個(gè)流進(jìn)行記錄。這是一種被動(dòng)SDN網(wǎng)絡(luò)測(cè)量方案,需要占用較多的數(shù)據(jù)存儲(chǔ)資源來(lái)存放網(wǎng)絡(luò)流量數(shù)據(jù)。OpenTM[2]通過(guò)網(wǎng)絡(luò)控制器主動(dòng)查詢(xún)OpenFlow交換機(jī)相關(guān)數(shù)據(jù)進(jìn)行網(wǎng)絡(luò)測(cè)量,獲取每個(gè)交換機(jī)的流統(tǒng)計(jì)數(shù)據(jù)。實(shí)際運(yùn)行時(shí)會(huì)給控制器和和交換機(jī)帶來(lái)較大的負(fù)載。SDN traceroute[3]采用了染色算法去捕獲相應(yīng)的探針包,實(shí)現(xiàn)了對(duì)流路徑的逐跳跟蹤,能夠在SDN網(wǎng)絡(luò)輸出數(shù)據(jù)包在網(wǎng)絡(luò)中的完整路徑。文獻(xiàn)[4]設(shè)計(jì)了一種SDN控制器控制測(cè)量實(shí)體進(jìn)行分布式測(cè)量機(jī)制,同時(shí)基于正則表達(dá)式、散列技術(shù)和可擴(kuò)展的統(tǒng)計(jì)函數(shù)庫(kù)等方式設(shè)計(jì)了一種分析測(cè)量日志的功能。本質(zhì)上這是一種分布式被動(dòng)SDN測(cè)量機(jī)制,不能取得主動(dòng)測(cè)量的相關(guān)網(wǎng)絡(luò)參數(shù)。文獻(xiàn)[5]對(duì)OpenFlow 軟交換機(jī)的性能進(jìn)行了測(cè)量分析。該測(cè)量方法也是采用被動(dòng)測(cè)量方法進(jìn)行的。

      在SDN網(wǎng)絡(luò)中,要進(jìn)行端到端的網(wǎng)絡(luò)主動(dòng)測(cè)量是較難實(shí)現(xiàn)的。傳統(tǒng)TCP/IP廣域網(wǎng)絡(luò)沒(méi)有控制中心,端到端網(wǎng)絡(luò)測(cè)量都是由網(wǎng)絡(luò)始端發(fā)起到終端進(jìn)行的,依靠的是ICMP等已有協(xié)議。而SDN網(wǎng)絡(luò)具有統(tǒng)一的SDN控制器,在控制器的參與下,測(cè)量可以不依賴(lài)ICMP協(xié)議進(jìn)行。如果有SDN控制器的全程參與,測(cè)量結(jié)果更為精準(zhǔn)可靠?,F(xiàn)有SDN網(wǎng)絡(luò)主動(dòng)測(cè)量解決方案都是通過(guò)加入額外的網(wǎng)絡(luò)探針或者通過(guò)PC客戶(hù)端發(fā)起測(cè)量的。這樣實(shí)現(xiàn)代價(jià)較大,且無(wú)法直接通過(guò)SDN控制器查詢(xún)測(cè)量結(jié)果。

      主被動(dòng)測(cè)量SDN網(wǎng)絡(luò)的研究有:Stanford大學(xué)開(kāi)發(fā)了一套OpenFlow網(wǎng)絡(luò)測(cè)量系統(tǒng)[6]??梢詼y(cè)量SDN網(wǎng)絡(luò)流數(shù)量、速率、時(shí)延、丟包率等性能參數(shù)。該系統(tǒng)在網(wǎng)絡(luò)中部署了多臺(tái)獨(dú)立的測(cè)試探針,每個(gè)探針與一臺(tái)OpenFlow交換機(jī)相連用于測(cè)量該交換機(jī)相關(guān)參數(shù)。這張實(shí)現(xiàn)方法測(cè)量準(zhǔn)確,但是必須部署大量探針設(shè)備,實(shí)現(xiàn)代價(jià)較高。Ofpeck[7]通過(guò)和OpenFlow交換機(jī)上的一臺(tái)PC上發(fā)起網(wǎng)絡(luò)測(cè)量,這種方法不涉及SDN控制器參與測(cè)量,測(cè)量數(shù)據(jù)準(zhǔn)確性與實(shí)時(shí)性有待進(jìn)一步提高。自動(dòng)測(cè)試數(shù)據(jù)包生成(Automatic Test Packet Generation,ATPG)[8]通過(guò)發(fā)出測(cè)量包來(lái)驗(yàn)證包轉(zhuǎn)發(fā)及擁塞、丟包情況,方便SDN網(wǎng)絡(luò)排除故障。但該方法不能進(jìn)行路徑的端到端性能測(cè)量。OpenSketch[9]是一種符合SDN構(gòu)架的主動(dòng)測(cè)量體系,將測(cè)量分離為轉(zhuǎn)發(fā)和控制兩部分??刂破矫嫔螼penSketch包含了任務(wù)庫(kù),設(shè)計(jì)了一套通用測(cè)量框架。數(shù)據(jù)平面上,OpenSketch 提出了一套三階段流水線(xiàn)。這套框架設(shè)計(jì)較為合理,準(zhǔn)確性較高,與本方案有類(lèi)似之處。PayLess[10]是一種通過(guò)主動(dòng)式信息采集進(jìn)行方法進(jìn)行網(wǎng)絡(luò)測(cè)量的方法。用戶(hù)可以在SDN控制器中同時(shí)運(yùn)行多個(gè)并發(fā)的測(cè)量任務(wù)。Payless可以動(dòng)態(tài)調(diào)整詢(xún)問(wèn)頻率,減少網(wǎng)絡(luò)測(cè)量的開(kāi)銷(xiāo),提高測(cè)量精度。這種方法不能取得端到端的網(wǎng)絡(luò)性能指標(biāo)。文獻(xiàn)[11]提出了一種計(jì)算SDN中的端到端時(shí)延的方法,這種方法是一種主動(dòng)探測(cè)和被動(dòng)探測(cè)相結(jié)合的方法,通過(guò)特殊方法計(jì)算出第一個(gè)數(shù)據(jù)包的時(shí)延,再通過(guò)快速方法計(jì)算相鄰數(shù)據(jù)包端到端時(shí)延之差。這種方法只能單一測(cè)量端到端時(shí)延,不能測(cè)量其他參數(shù),而且由于是推算出的時(shí)延而非實(shí)際探測(cè),其準(zhǔn)確性有待驗(yàn)證。

      為了充分利用SDN構(gòu)架下網(wǎng)絡(luò)設(shè)備具有開(kāi)放的可編程接口和網(wǎng)絡(luò)的集中控制的特性,在SDN網(wǎng)絡(luò)進(jìn)行精確端到端的網(wǎng)絡(luò)測(cè)量,本文提出了一種新的端到端網(wǎng)絡(luò)測(cè)量機(jī)制。這種機(jī)制的創(chuàng)新點(diǎn)如下:

      1)機(jī)制以SDN控制器為測(cè)量控制主體,以SDN交換機(jī)作為測(cè)量探針,無(wú)需增加額外設(shè)備,相對(duì)實(shí)現(xiàn)代價(jià)較小,具有較好的可用性。

      2)機(jī)制充分利用SDN網(wǎng)絡(luò)靈活構(gòu)架,對(duì)SDN協(xié)議和交換機(jī)進(jìn)行了軟件定義擴(kuò)展,擴(kuò)展嚴(yán)格遵守SDN API規(guī)范,保證了測(cè)量機(jī)制的普適性。

      2SDN構(gòu)架下一種端到端網(wǎng)絡(luò)主動(dòng)測(cè)量機(jī)制

      2.1測(cè)量機(jī)制

      本文中提出的端到端網(wǎng)絡(luò)測(cè)量機(jī)制,其核心思想是通過(guò)SDN控制器發(fā)起并完成探測(cè)。首先由SDN控制器發(fā)起測(cè)量任務(wù),讓源交換機(jī)發(fā)出特定測(cè)量包序列,通過(guò)SDN網(wǎng)絡(luò)逐跳轉(zhuǎn)發(fā)至目的交換機(jī)。目的交換機(jī)收到探測(cè)報(bào)文后返回給源交換機(jī),最后交還至控制器完成測(cè)試。完成一次SDN構(gòu)架下端到端網(wǎng)絡(luò)測(cè)量,其過(guò)程描述為以下5個(gè)步驟,具體如圖1所示:

      1)用戶(hù)通過(guò)網(wǎng)絡(luò)測(cè)量APP,在SDN控制器上發(fā)起測(cè)量任務(wù)。

      2)SDN控制器根據(jù)指定的源、目的交換機(jī),下發(fā)針對(duì)網(wǎng)絡(luò)測(cè)量的流表擴(kuò)展、Action擴(kuò)展,使源、目的交換機(jī)具有網(wǎng)絡(luò)測(cè)量包處理能力。

      3)SDN控制器構(gòu)造測(cè)試報(bào)文,指定測(cè)量源、目的地和測(cè)量流路徑的標(biāo)識(shí),并通過(guò)Packet out報(bào)文將測(cè)試報(bào)文送至源交換機(jī)。

      4)源交換機(jī)收到Packet out報(bào)文后,根據(jù)更新流表,對(duì)包進(jìn)行識(shí)別匹配,識(shí)別后打上時(shí)間戳進(jìn)行正常轉(zhuǎn)發(fā)。測(cè)量包在經(jīng)過(guò)非源、目的交換機(jī)時(shí),當(dāng)作普通IP數(shù)據(jù)包轉(zhuǎn)發(fā)。數(shù)據(jù)包到達(dá)目的交換機(jī)后,目的交換機(jī)通過(guò)下發(fā)的流表識(shí)別為測(cè)量包。目的交換機(jī)觸發(fā)網(wǎng)絡(luò)測(cè)量相應(yīng)Action,交換測(cè)量包源地址和目的地址,將數(shù)據(jù)包向源交換機(jī)傳遞。

      5)源交換機(jī)收到返回的測(cè)量包后,打上時(shí)間戳,通過(guò)Packetin報(bào)文將測(cè)量包通過(guò)控制通道返回至SDN控制器。SDN控制器提取相關(guān)測(cè)量結(jié)果完成一次測(cè)量。

      根據(jù)源交換機(jī)、目的交換機(jī)打下的時(shí)間戳,可以計(jì)算出源端至目的端的雙向時(shí)延、抖動(dòng)、丟包率等重要網(wǎng)絡(luò)參數(shù)。對(duì)于端到端可用帶寬測(cè)量,可以擴(kuò)展以上主動(dòng)測(cè)量機(jī)制,采用測(cè)量包速率模型(PRM)的方法進(jìn)行探測(cè)得出。PRM是利用自引入擁塞(self-induced congestion)現(xiàn)象進(jìn)行帶寬測(cè)量。發(fā)送端每次以不同的速率向網(wǎng)絡(luò)注入測(cè)量包。如果發(fā)送速率大于路徑可用帶寬,那么測(cè)量包會(huì)首先在緊鏈路出現(xiàn)排隊(duì),單向時(shí)延呈增大趨勢(shì);而如果發(fā)送速率小于路徑可用帶寬,測(cè)量包的單向時(shí)延沒(méi)有明顯的增大趨勢(shì)。發(fā)送端通過(guò)一定的算法調(diào)整發(fā)送速率,從而找到一個(gè)臨界點(diǎn)或臨界區(qū)域。典型的基于PRM的測(cè)量工具有PTR[12] 、Pathload[13]、Pathchirp[14]、TOPP[15]。本機(jī)制采用類(lèi)PRM方法實(shí)現(xiàn)了可用帶寬測(cè)量。

      2.2系統(tǒng)構(gòu)架

      依據(jù)SDN軟件定義網(wǎng)絡(luò)的控制與轉(zhuǎn)發(fā)分離的基本原理,本測(cè)量機(jī)制嚴(yán)格按照可軟件定義的思路設(shè)計(jì)。在增加網(wǎng)絡(luò)測(cè)量功能的同時(shí),不對(duì)SDN交換機(jī)做出大的改動(dòng)。整個(gè)測(cè)量系統(tǒng)分為兩部分:

      1)對(duì)SDN控制器進(jìn)行擴(kuò)展,開(kāi)發(fā)部署網(wǎng)絡(luò)測(cè)量APP。

      2)對(duì)SDN交換機(jī)原有流表和Action進(jìn)行擴(kuò)展,并由SDN控制器下發(fā)至源、目的交換機(jī)。

      2.3SDN網(wǎng)絡(luò)測(cè)量APP

      SDN網(wǎng)絡(luò)測(cè)量APP是根據(jù)SDN軟件可定義原理,根據(jù)SDN API規(guī)范進(jìn)行設(shè)計(jì),采用Python語(yǔ)言開(kāi)發(fā)。SDN網(wǎng)絡(luò)測(cè)量APP是測(cè)量的控制主體,負(fù)責(zé)完成測(cè)量任務(wù)的配置、下達(dá)和調(diào)度安排,并且將測(cè)量結(jié)果進(jìn)行回收、計(jì)算和保存。SDN網(wǎng)絡(luò)測(cè)量APP可以支持其所在SDN控制器管理的任何兩臺(tái)交換機(jī)作為測(cè)量的起點(diǎn)和終點(diǎn),可分為三個(gè)主要功能模塊,如圖2所示:

      1)任務(wù)調(diào)度模塊:由任務(wù)調(diào)度模塊負(fù)責(zé)創(chuàng)建任務(wù)并把任務(wù)插入到任務(wù)隊(duì)列中,并且按順序?qū)θ蝿?wù)隊(duì)列中的任務(wù)進(jìn)行調(diào)度執(zhí)行。

      2)測(cè)量通信管理模塊:該模塊向上監(jiān)聽(tīng)任務(wù)調(diào)度模塊發(fā)起的指令、向下對(duì)SDN控制器發(fā)送和接收測(cè)量信令消息。信令消息包括系統(tǒng)配置、任務(wù)下載與任務(wù)管理等;

      3)結(jié)果處理模塊:SDN網(wǎng)絡(luò)測(cè)量APP維護(hù)一個(gè)存放測(cè)量結(jié)果與系統(tǒng)全局配置的管理信息數(shù)據(jù)庫(kù)。任務(wù)執(zhí)行結(jié)束后會(huì)調(diào)用結(jié)果處理模塊將測(cè)量結(jié)果保存至外部數(shù)據(jù)庫(kù)中。

      2.4SDN交換機(jī)擴(kuò)展

      SDN交換機(jī)根據(jù)控制器下發(fā)的流表進(jìn)行轉(zhuǎn)發(fā)。在擴(kuò)展前,SDN交換機(jī)無(wú)法識(shí)別和轉(zhuǎn)發(fā)網(wǎng)絡(luò)測(cè)量包,不具備網(wǎng)絡(luò)主動(dòng)測(cè)量探針的功能。因此,為實(shí)現(xiàn)端到端網(wǎng)絡(luò)測(cè)量,需通過(guò)軟件定義方法,為傳統(tǒng)SDN交換機(jī)擴(kuò)展網(wǎng)絡(luò)測(cè)量探針的功能。具體包括如下兩部分功能擴(kuò)展:

      網(wǎng)絡(luò)測(cè)量包格式及SDN交換機(jī)流表擴(kuò)展。為了區(qū)分網(wǎng)絡(luò)測(cè)量包和一般流量包,本機(jī)制采用了新的包格式。具體利用IP包頭TOS(服務(wù)類(lèi)型)區(qū)域進(jìn)行區(qū)分, TOS中最后一位如果置位則為測(cè)量包。測(cè)量包還在包頭后的載荷內(nèi)預(yù)留了兩個(gè)時(shí)間戳字段,用于保存數(shù)據(jù)包發(fā)出、到達(dá)的時(shí)間。測(cè)量包按協(xié)議劃分,可區(qū)分為UDP測(cè)量包和TCP測(cè)量包。每種測(cè)量包分別用于單向時(shí)延測(cè)量、往返時(shí)延測(cè)量??捎脦挏y(cè)量也是通過(guò)單向時(shí)延測(cè)量計(jì)算得出的。TCP測(cè)量包還可根據(jù)端口號(hào)進(jìn)行如HTTP等應(yīng)用層延遲測(cè)量。應(yīng)用層延遲測(cè)量的測(cè)量包則由特殊端口號(hào)和TOS字段共同進(jìn)行標(biāo)識(shí)。

      SDN交換機(jī)包解析過(guò)程如下:對(duì)SDN交換機(jī)而言,數(shù)據(jù)包進(jìn)入交換機(jī)后,首先進(jìn)入包解析模塊進(jìn)行解析和匹配,之后才能進(jìn)入Pipeline進(jìn)行轉(zhuǎn)發(fā)。SDN交換機(jī)包解析模塊根據(jù)Packet結(jié)構(gòu),從協(xié)議解析表的根節(jié)點(diǎn)開(kāi)始進(jìn)行遍歷匹配,直至匹配到具體該數(shù)據(jù)包應(yīng)符合的類(lèi)型葉子節(jié)點(diǎn)。協(xié)議解析表中,包解析模塊通過(guò)每層節(jié)點(diǎn)的幀、包、端口號(hào)等字段,區(qū)分下層協(xié)議。匹配完成后包解析模塊就識(shí)別了該包的具體協(xié)議,并將該協(xié)議作為匹配結(jié)果放入Packet包結(jié)構(gòu)中。流表匹配項(xiàng)格式為T(mén)LV,由于為了實(shí)現(xiàn)可軟件定義的網(wǎng)絡(luò)測(cè)量支持,流表必須釆用TLV格式的匹配項(xiàng)。

      普通SDN交換機(jī)是無(wú)法區(qū)分測(cè)量包與正常流量包的。因此必須對(duì)協(xié)議轉(zhuǎn)發(fā)表即流表進(jìn)行擴(kuò)充,增加相應(yīng)數(shù)據(jù)結(jié)構(gòu),并將其數(shù)據(jù)結(jié)構(gòu)鏈接到原有協(xié)議轉(zhuǎn)發(fā)表上。SDN控制器需下發(fā)新的網(wǎng)絡(luò)測(cè)量包解析流表到源端、目的端SDN交換機(jī)。這樣,測(cè)量包的特殊字段也可以動(dòng)態(tài)的在流表項(xiàng)目匹配庫(kù)中得到匹配。開(kāi)始測(cè)試前,控制器下發(fā)多條協(xié)議表修改消息,在起點(diǎn)、終點(diǎn)SDN交換機(jī)上修改原有協(xié)議解析表。這樣測(cè)量流量數(shù)據(jù)包進(jìn)入包解析模塊時(shí),就能正常解析測(cè)量包,并將測(cè)量包類(lèi)型放入Packet結(jié)構(gòu)中保存,供Pipeline匹配相應(yīng)的測(cè)量Action操作。其他中間節(jié)點(diǎn)交換機(jī)不需要區(qū)分測(cè)量包與非測(cè)量包,直接把測(cè)量包當(dāng)成普通IP數(shù)據(jù)包轉(zhuǎn)發(fā)即可。圖3是一個(gè)改進(jìn)的可支持SDN網(wǎng)絡(luò)測(cè)量的協(xié)議解析表示意圖。3Action 擴(kuò)展

      SDN交換機(jī)的Pipeline流表由多個(gè)流表項(xiàng)組成。SDN交換機(jī)將Pipeline送來(lái)的數(shù)據(jù)包進(jìn)行匹配。在SDN交換機(jī)中,實(shí)際進(jìn)行數(shù)據(jù)包轉(zhuǎn)發(fā)操作的是預(yù)先設(shè)計(jì)好的Action操作,由Action操作具體進(jìn)行數(shù)據(jù)包處理。多個(gè)Action組合成一個(gè)Instruction?,F(xiàn)有OpenFlow實(shí)現(xiàn)了17種Action,其中給數(shù)據(jù)包進(jìn)行封裝的Action有兩種:VLAN頭封裝和MPLS頭封裝。但是現(xiàn)有17種Action中,沒(méi)有專(zhuān)門(mén)考慮對(duì)網(wǎng)絡(luò)測(cè)量包進(jìn)行處理。為了使Pipeline識(shí)別專(zhuān)用網(wǎng)絡(luò)測(cè)量包后能進(jìn)行處理,需要添加新Action來(lái)增強(qiáng)OpenFlow網(wǎng)絡(luò)的的擴(kuò)展性,使得其能夠滿(mǎn)足網(wǎng)絡(luò)測(cè)量中對(duì)主動(dòng)探測(cè)數(shù)據(jù)包和交互信令操作和處理的需求。新增Action有三個(gè):

      1)測(cè)量包打時(shí)間戳Action:交換機(jī)收到SDN控制器發(fā)來(lái)的Packet out報(bào)文后,在測(cè)量包打上時(shí)間戳(將時(shí)間寫(xiě)入測(cè)量包載荷專(zhuān)用字段)然后將數(shù)據(jù)包轉(zhuǎn)發(fā)給下一跳。

      2)測(cè)量包ECHO Action:目的交換機(jī)收到測(cè)量包后,經(jīng)判斷自己為數(shù)據(jù)包目的時(shí),如果為往返時(shí)延測(cè)量,則將測(cè)量包源地址及目的地址互換,并將包繼續(xù)轉(zhuǎn)發(fā)。

      3)測(cè)量包回收Action:目的交換機(jī)收到測(cè)量包后,如果為往單向時(shí)延測(cè)量,則打下時(shí)間戳后,通過(guò)Packetin報(bào)文將測(cè)量包通過(guò)控制通道返回至SDN控制器。

      本機(jī)制中采用現(xiàn)有的OpenFlow協(xié)議消息進(jìn)行交換,未擴(kuò)展新的OpenFlow協(xié)議消息??刂破髋c交換機(jī)之間的通信釆用OpenFlow協(xié)議進(jìn)行通信。通過(guò)本機(jī)制對(duì)網(wǎng)絡(luò)進(jìn)行主動(dòng)測(cè)量的過(guò)程中,直接采用現(xiàn)有的OpenFlow協(xié)議進(jìn)行控制器與交換機(jī)之間的通信。對(duì)于網(wǎng)絡(luò)測(cè)量包的發(fā)出、提取,直接采用OpenFlow協(xié)議中的Asynchronous類(lèi)型中Controller to switch類(lèi)報(bào)文完成。SDN控制器發(fā)送Packetoutput報(bào)文生成測(cè)量包。測(cè)量結(jié)果回收由SDN交換機(jī)使用Packet input notification將測(cè)量包返回SDN控制器。測(cè)量中無(wú)需增加新的OpenFlow消息類(lèi)型,這樣使得本機(jī)制具有更大的可通用性。

      4實(shí)驗(yàn)設(shè)計(jì)與結(jié)果分析

      4.1實(shí)驗(yàn)仿真平臺(tái)

      本文搭建了一個(gè)基于SDN的端到端網(wǎng)絡(luò)主動(dòng)測(cè)量系統(tǒng)測(cè)試環(huán)境,其中包括5臺(tái)服務(wù)器。其中1臺(tái)用于部署NOX控制器、4臺(tái)用于部署OpenFlow交換機(jī)。控制器與OpenFlow交換機(jī)軟硬件環(huán)境為:兩路服務(wù)器CPU八核3.0G,16G內(nèi)存,配置8個(gè)GE千兆網(wǎng)絡(luò)接口,操作系統(tǒng) Linux Ubuntu 12。采用兩臺(tái)思博倫Testcenter SPT-3U 以太網(wǎng)測(cè)試儀作為背景流量的發(fā)生與接收。

      測(cè)量組件網(wǎng)絡(luò)測(cè)量APP在NOX 控制器上運(yùn)行。控制器與交換機(jī)采用帶外管理的模式:NOX控制器的服務(wù)器采用多片網(wǎng)卡直連其他SDN交換機(jī)的專(zhuān)用網(wǎng)卡,作為專(zhuān)用通道用于協(xié)議通信。測(cè)試過(guò)程中,使用以太網(wǎng)測(cè)試儀模擬背景流量。背景流量由思博倫以太網(wǎng)測(cè)試儀從a接口注入網(wǎng)絡(luò),接收端的以太網(wǎng)測(cè)試儀在h端口進(jìn)行接收流量。背景流量采用TCP包進(jìn)行發(fā)送,報(bào)文長(zhǎng)度由100byte至1400byte逐漸遞增。速率由以太網(wǎng)測(cè)試儀調(diào)節(jié)后恒定在100Mbps。

      4.2PING值與丟包率測(cè)量

      SDN控制器設(shè)置第一臺(tái)SDN交換機(jī)為源交換機(jī),第四臺(tái)為目的交換機(jī)。每秒發(fā)起一次測(cè)量任務(wù),連續(xù)發(fā)10次,如產(chǎn)生丟包則補(bǔ)測(cè)。取10次測(cè)量結(jié)果算術(shù)平均值作為往返時(shí)延。測(cè)量包大小設(shè)為64byte,加上8個(gè)byte的前導(dǎo)字節(jié)以及12個(gè)byte幀間間隙,合計(jì)84byte。測(cè)量方法如下:

      1)SDN控制器上運(yùn)行的SDN網(wǎng)絡(luò)測(cè)量APP下達(dá)PING值測(cè)量任務(wù)。

      2)源交換機(jī)收到SDN控制器發(fā)來(lái)的PING的測(cè)量包后,在測(cè)量包打上時(shí)間戳(將當(dāng)時(shí)準(zhǔn)確時(shí)間寫(xiě)入測(cè)量包時(shí)間戳字段)然后將數(shù)據(jù)包轉(zhuǎn)發(fā)給下一跳。

      3)目的交換機(jī)收到測(cè)量包后,經(jīng)判斷自己為數(shù)據(jù)包目的時(shí),如果為往返時(shí)延測(cè)量,則將測(cè)量包源地址及目的地址互換,并將包繼續(xù)轉(zhuǎn)發(fā)。

      4)最后源交換機(jī)通過(guò)Packetin報(bào)文將測(cè)量包通過(guò)控制通道返回至SDN控制器。

      5)SDN控制器計(jì)算出往返時(shí)延返回給APP。

      測(cè)量結(jié)果分析:實(shí)驗(yàn)數(shù)據(jù)結(jié)果可見(jiàn)表1,從表1可知,PING值測(cè)量結(jié)果與由以太網(wǎng)測(cè)試儀直接進(jìn)行PING測(cè)試得到的PING值基本一致。由于測(cè)量點(diǎn)不完全一樣,以太網(wǎng)測(cè)量結(jié)果稍大。在丟包率測(cè)量過(guò)程中,由于采用PC服務(wù)器搭建的OpenFlow軟交換機(jī)處理能力有限,成為網(wǎng)絡(luò)性能瓶頸,在網(wǎng)絡(luò)背景流量包長(zhǎng)為100byte、200byte時(shí),試驗(yàn)網(wǎng)絡(luò)中背景流量包丟包嚴(yán)重,測(cè)量包也同樣產(chǎn)生丟包現(xiàn)象。測(cè)量包丟包率結(jié)果比由接收端以太網(wǎng)測(cè)試儀得到的背景流量丟包率稍低,這可能是因?yàn)镺penFlow軟交換機(jī)對(duì)于不通類(lèi)型、大小的數(shù)據(jù)包在隊(duì)列滿(mǎn)時(shí)丟棄原則不同造成的。

      4.3可用帶寬測(cè)量

      SDN控制器上運(yùn)行的SDN網(wǎng)絡(luò)測(cè)量APP下達(dá)可用帶寬測(cè)量任務(wù)。SDN控制器設(shè)置第一臺(tái)SDN交換機(jī)為源交換機(jī),第四臺(tái)為目的交換機(jī)。測(cè)量包大小設(shè)為1400byte。測(cè)量方法如下:

      SDN控制器控制源交換機(jī)不斷發(fā)出1400byte測(cè)量包,目的交換機(jī)將記錄測(cè)量包單向時(shí)延并返回給SDN控制器。SDN控制器線(xiàn)性增加發(fā)送速率,發(fā)現(xiàn)單向時(shí)延增加后停止測(cè)量。取5次1400測(cè)量包的發(fā)送速率算術(shù)平均值作為測(cè)量結(jié)果。如丟包率超過(guò)10%不能完成測(cè)量,則可用帶寬為零。由于同樣受到實(shí)驗(yàn)網(wǎng)絡(luò)包轉(zhuǎn)發(fā)率的限制,試驗(yàn)網(wǎng)絡(luò)達(dá)不到GE速率的線(xiàn)速轉(zhuǎn)發(fā)。根據(jù)采用以太網(wǎng)測(cè)試儀多次實(shí)驗(yàn)觀測(cè),試驗(yàn)網(wǎng)絡(luò)包轉(zhuǎn)發(fā)率軟交換機(jī)的轉(zhuǎn)發(fā)能力在0.4Mpps左右。以太網(wǎng)測(cè)試儀產(chǎn)生持續(xù)的100Mbps背景流不但占用了可用帶寬,而且在背景流包長(zhǎng)較小時(shí)占用了較大的包轉(zhuǎn)發(fā)資源。可用帶寬理論值可根據(jù)包轉(zhuǎn)發(fā)率和背景流包長(zhǎng)直接計(jì)算得出,作為可用帶寬測(cè)量的參考值。實(shí)驗(yàn)結(jié)果見(jiàn)表1,實(shí)驗(yàn)結(jié)果對(duì)比見(jiàn)圖5。

      測(cè)量結(jié)果分析表明:可用帶寬測(cè)量結(jié)果與可用帶寬參考值基本吻合。這種基于測(cè)量包速率模型(PRM)的方法進(jìn)行探測(cè),網(wǎng)絡(luò)開(kāi)銷(xiāo)較大。

      5結(jié)論

      本文提出了一種適用于SDN網(wǎng)絡(luò)的端到端的網(wǎng)絡(luò)主動(dòng)測(cè)量機(jī)制。該機(jī)制充分利用了SDN網(wǎng)絡(luò)可軟件定義的特點(diǎn),采用SDN交換機(jī)作為測(cè)試探針使用,對(duì)SDN控制器資源占用較少。實(shí)驗(yàn)結(jié)果表明,該機(jī)制可以較好地實(shí)現(xiàn)SDN網(wǎng)絡(luò)端到端的網(wǎng)絡(luò)主動(dòng)測(cè)量,在實(shí)驗(yàn)室環(huán)境下測(cè)量結(jié)果較為準(zhǔn)確,并且具有良好的可擴(kuò)展性。研究小組正在對(duì)該機(jī)制進(jìn)行進(jìn)一步實(shí)驗(yàn)測(cè)試,以提高測(cè)量精度并增加新的測(cè)量種類(lèi)。

      參考文獻(xiàn)

      [1]WUNDSAM A D,LEVOM S.SEETHARAMAN,at al.OFRewind:enabling record and replay troubleshooting for networks [C].In Proceedings of USENIXATC11,2011.

      [2]TOOTOONCHIAN A,GHOBADI M,GANJALI Y. OpenTM: traffic matrix estimator for OpenFlow networks[C] Proc of the 11th Passive and Active Measurement Conference. Berlin: SpringerVerlag,2010:201-210.

      [3]AGARWAL K,ROZNER E C,DIXON J.Carter.SDN traceroute: Tracing SDN forwarding without changing network behavior[C].In Workshop on Hot Topics in Software Dened Networking, 2014.

      [4]翁溪,陳嗚,張國(guó)敏,等.OpenFlow網(wǎng)絡(luò)測(cè)量分析系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)[J] .通信學(xué)報(bào),2015,36(3).

      [5]蔣培成,陳鳴,李兵.OpenFlow軟交換機(jī)的性能測(cè)量[J] .重慶郵電大學(xué)學(xué)報(bào):自然科學(xué)版,2013,25(1).

      [6]Stanford OpenFlow Measurement Infrastructure [EB/OL].https://OpenFlow.org/foswiki/bin/view/OpenFlow/Deployment/Measurement

      [7]Ofperk [EB/OL].http://archive.OpenFlow.org/wk/index.php/Ofperk

      [8]ZENG H,P KAZEMIAN G, VARGHESE, N.Mckeown Automatic test packet generation[J].IEEE/ACM Transactions on Networking , 2014, 22(2):554-566

      [9]YU Minlan, JOSE L, MIAO Rui. Software defined traffic measurement with OpenSketch [C].Proc of the 10th USENIX Symposium on Networked Systems Design and Implementation. Berkeley: USENIX Association,2013:29-42.

      [10]CHOWDHURY S R,BARI M F,AHMED R,et al. PayLess: A low cost network monitoring framework for software defined networks[C]. Proc. of the IEEE Network Operations & Management Symp. Washington: IEEE Computer Society Press, 2014. 1-9.

      [11]曉鵬,黃傳河,農(nóng)黃武,等.SDN中的端到端時(shí)延,計(jì)算機(jī)工程與科學(xué)[J].2016,38(1):67-72.

      [12]HU Ningning,STEENKISTE P. Evaluation and characterization of available bandwidth probing techniques[J]. IEEE Journal on Selected Areas in Communications, 2003, 21(6):879-894.

      [13]JAIN M,DOVROLIS C.Pathload : A measurement tool for endtoend available bandwidth [C].Fort Collins: Proc of Passive and Active Measurements workshop (PAM02), 2002:14-25

      [14]RIBEIRO V,RIEDI R,BARANIUK R,et al.PathChirp : Efficient available bandwidth estimation for network paths[C]. LaJolla, California: Workshop on Passive and Active Measurement (PAM), 2003.

      [15]MELANDER B B,JORKMAN M,GUNNING BERG P. A new endtoend probing and analysis method for estimating bandwidth bottlenecks[C]. San Francisco: Proc Global Internet Symposium, 2000.415-420.

      猜你喜歡
      軟件定義網(wǎng)絡(luò)計(jì)算機(jī)網(wǎng)絡(luò)
      基于應(yīng)用型人才培養(yǎng)的《計(jì)算機(jī)網(wǎng)絡(luò)》課程教學(xué)改革研究
      計(jì)算機(jī)網(wǎng)絡(luò)搭建中的虛擬仿真技術(shù)
      淺析計(jì)算機(jī)網(wǎng)絡(luò)安全的影響因素與防范措施
      人工智能在計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)中的應(yīng)用
      計(jì)算機(jī)網(wǎng)絡(luò)可靠性?xún)?yōu)化設(shè)計(jì)方法
      中國(guó)聯(lián)通SDN的思考和應(yīng)用實(shí)例
      業(yè)務(wù)功能鏈技術(shù)及其應(yīng)用探析
      針對(duì)大規(guī)模軟件定義網(wǎng)絡(luò)的子域劃分及控制器部署方法
      超高吞吐率Wi—Fi融合應(yīng)用新技術(shù)分析
      花莲市| 翁源县| 镇远县| 德昌县| 竹溪县| 肇源县| 乾安县| 岳池县| 宁海县| 和顺县| 吴堡县| 桓台县| 玉田县| 东源县| 敖汉旗| 眉山市| 芦溪县| 称多县| 临武县| 洪洞县| 灵川县| 西城区| 枝江市| 甘洛县| 巨鹿县| 灵台县| 双鸭山市| 织金县| 潢川县| 彭州市| 蒲城县| 镇沅| 包头市| 樟树市| 山东省| 中牟县| 溆浦县| 历史| 石家庄市| 买车| 吉木乃县|