亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

有效降低域內(nèi)重構(gòu)過程中網(wǎng)絡(luò)丟包率的交換機緩存方法

文檔序號:7782831閱讀:287來源:國知局
有效降低域內(nèi)重構(gòu)過程中網(wǎng)絡(luò)丟包率的交換機緩存方法
【專利摘要】本發(fā)明公開了一種有效降低域內(nèi)重構(gòu)過程中網(wǎng)絡(luò)丟包率的交換機緩存方法:在域內(nèi)重構(gòu)開始前以及重構(gòu)過程中,交換機緩存網(wǎng)絡(luò)中正在轉(zhuǎn)發(fā)或正在處理的報文;在重構(gòu)完成后,交換機依照新的流表重新處理已被緩存的報文,并有序轉(zhuǎn)發(fā)出。應(yīng)用該方法可令網(wǎng)絡(luò)在經(jīng)歷重構(gòu)期間的各個暫態(tài)過程轉(zhuǎn)換時,不丟失數(shù)據(jù)報、不中斷數(shù)據(jù)流,所有因重構(gòu)而滯留在網(wǎng)絡(luò)中的報文在重構(gòu)完成后依然能被正確轉(zhuǎn)發(fā),且能有效減少重構(gòu)造成的報文失序,從而提升了重構(gòu)時的網(wǎng)絡(luò)可用性,使得重構(gòu)前后網(wǎng)絡(luò)平穩(wěn)運行。
【專利說明】 有效降低域內(nèi)重構(gòu)過程中網(wǎng)絡(luò)丟包率的交換機緩存方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉軟件定義網(wǎng)絡(luò)【技術(shù)領(lǐng)域】,尤其涉及一種有效降低域內(nèi)重構(gòu)過程中網(wǎng)絡(luò)丟包率的交換機緩存方法。
【背景技術(shù)】
[0002]互聯(lián)網(wǎng)運行的過程中,網(wǎng)絡(luò)運營商常會根據(jù)需要調(diào)整網(wǎng)絡(luò)的域內(nèi)拓撲結(jié)構(gòu),以變更網(wǎng)絡(luò)基本屬性;或者增加、刪除、組合、調(diào)整網(wǎng)絡(luò)業(yè)務(wù),以配置業(yè)務(wù)功能,包括:防火墻的防護策略、各類報文的優(yōu)先級控制、接入速率控制、訪問策略、網(wǎng)絡(luò)用戶的接入認證、QoS保證、計費信息的收集、流量工程、網(wǎng)絡(luò)地址轉(zhuǎn)換NAT、虛擬專用網(wǎng)VPN及RVPN等。這些對網(wǎng)絡(luò)屬性或功能的重新配置稱為網(wǎng)絡(luò)重構(gòu)。
[0003]軟件定義網(wǎng)絡(luò)(SDN)在執(zhí)行域內(nèi)重構(gòu)時,會經(jīng)歷諸多暫態(tài)過程。這一期間,已經(jīng)在網(wǎng)絡(luò)上進行轉(zhuǎn)發(fā)而尚未到達的報文,可能會遇到重構(gòu)引起的各種暫態(tài)問題,如暫態(tài)環(huán)路(報文在一個網(wǎng)絡(luò)環(huán)中被惡性循環(huán)轉(zhuǎn)發(fā))或網(wǎng)絡(luò)黑洞(出入某一網(wǎng)絡(luò)區(qū)域的報文會被無聲地丟棄,源地址不會收到報文未能到達目的地址的通知)等,進而造成數(shù)據(jù)流中斷。當(dāng)網(wǎng)絡(luò)處在高度動態(tài)的情況下,暫態(tài)問題產(chǎn)生的重構(gòu)開銷尤為明顯。這嚴重降低了網(wǎng)絡(luò)的可用性。為了解決重構(gòu)期間的暫態(tài)問題,使得網(wǎng)絡(luò)在經(jīng)歷重構(gòu)時能安全、平穩(wěn)地運行,本發(fā)明對OpenFlow協(xié)議進行擴展,提出了一種重構(gòu)緩存策略。
[0004]本發(fā)明的內(nèi)容涉及以下SDN中的已有概念或技術(shù):
SDN控制器是根據(jù)OpenFlow協(xié)議設(shè)計的路由控制軟件,用于管理數(shù)據(jù)流、配置網(wǎng)絡(luò)設(shè)備、制定流表(Flow Tab I e )、承擔(dān)網(wǎng)絡(luò)業(yè)務(wù)與網(wǎng)絡(luò)設(shè)備間的通訊。一個域中可以有多個控制器,但一般只有一個控制器處在控制、管理狀態(tài)。
[0005]SDN中的交換機也服從OpenFlow協(xié)議。OpenFlow交換機由SDN控制器管控,保存有控制器制定的流表,并通過查詢流表表項來決定對報文的處理方式,包括轉(zhuǎn)發(fā)、緩存、提交控制器或丟棄等。
[0006]OpenFlow協(xié)議下的安全通道用來連接交換機和控制器,以供二者進行通信。

【發(fā)明內(nèi)容】

[0007]本發(fā)明應(yīng)用在SDN網(wǎng)絡(luò)域內(nèi),且該域內(nèi)只有單個控制器處在管控狀態(tài)。本發(fā)明包括以下步驟(參見圖1交換機緩存方法序列圖):
1、域內(nèi)重構(gòu)開始:控制器發(fā)起該控制器所管控域的域內(nèi)重構(gòu),并根據(jù)本次重構(gòu)的需求,找出域內(nèi)需要更新流表的交換機,最后計算這些交換機的新的流表;
2、交換機建立緩存,該步驟通過以下子步驟來實現(xiàn):
2.1、控制器利用安全通道,向所有需要更新流表的交換機發(fā)送Configuration消息(該消息由OpenFlow協(xié)議定義,用于控制器設(shè)置或查詢交換機上的配置信息),命令這些交換機進入報文緩存狀態(tài);
2.2、需要更新流表的交換機收到Configuration消息,分別開始執(zhí)行報文緩存(參見圖2交換機執(zhí)行報文緩存流程圖),具體為:
2.2.1、交換機掛起報文發(fā)送進程;
2.2.2、交換機建立報文緩沖進程;
2.2.3、報文緩沖進程利用讀鎖,鎖住原有接收緩沖區(qū),使得報文處理進程不可讀取接收緩沖區(qū);
2.2.4、報文緩沖進程建立報文接收緩沖隊列;
2.2.5、報文緩沖進程持續(xù)監(jiān)聽原有接收緩沖區(qū),若原有接收緩沖區(qū)中有報文,緩沖進程即把緩沖區(qū)中的報文轉(zhuǎn)存入報文接收緩沖隊列;
2.2.6、報文緩沖進程建立報文發(fā)送緩沖隊列;
2.2.7、報文緩沖進程持續(xù)監(jiān)聽原有發(fā)送緩沖區(qū),若原有發(fā)送緩沖區(qū)中有報文,緩沖進程即把緩沖區(qū)中的報文轉(zhuǎn)存入報文發(fā)送緩沖隊列;
2、2.8、交換機向控制器發(fā)送Packet-1n消息(該消息由OpenFlow協(xié)議定義,可以用于向控制器發(fā)送通知),表明已開始緩存報文;
3、執(zhí)行重構(gòu):控制器收到所有以上交換機的Packet-1n消息后,執(zhí)行域內(nèi)重構(gòu);通過重構(gòu),需要更新流表的交換機的流表被控制器更新;
4、交換機釋放緩存,該步驟通過以下子步驟來實現(xiàn):
4.1、控制器利用安全通道,分別向以上交換機發(fā)送Configuration消息,命令這些交換機釋放緩存;
4.2、這些交換機收到Configuration消息,分別開始釋放緩存(參見圖3交換機釋放報文緩存流程圖),具體為:
4.2.1、報文緩沖進程停止監(jiān)聽原有發(fā)送緩沖區(qū),不再將原有發(fā)送緩沖區(qū)中的報文轉(zhuǎn)存入報文發(fā)送緩沖隊列;
4.2.2、交換機恢復(fù)報文發(fā)送進程;
4.2.3、交換機將報文處理進程的輸入流重定向至報文發(fā)送緩沖隊列;
4.2.4、報文處理進程根據(jù)新的流表,重新處理報文發(fā)送緩沖隊列中的報文;
4.2.5、交換機監(jiān)聽報文發(fā)送緩沖隊列,當(dāng)該緩沖隊列為空時,將報文處理進程的輸入流重定向至報文接收緩沖隊列;
4.2.6、報文緩沖進程停止監(jiān)聽原有接收緩沖區(qū),不再將原有接收緩沖區(qū)中的報文轉(zhuǎn)存入報文接收緩沖隊列;
4.2.7、交換機監(jiān)聽報文接收緩沖隊列,當(dāng)該緩沖隊列為空時,將報文處理進程的輸入流重定向至原有接收緩沖區(qū);
4.2.8、交換機結(jié)束報文緩沖進程;
4.2.9、交換機向控制器發(fā)送Packet-1n消息,表明已釋放緩存;
5、重構(gòu)結(jié)束:控制器收到所有以上交換機的Packet-1n消息后,依據(jù)具體機制結(jié)束重構(gòu)。
[0008]本發(fā)明的有益效果是:應(yīng)用本發(fā)明提出的域內(nèi)重構(gòu)交換機緩存方法,可令網(wǎng)絡(luò)在經(jīng)歷重構(gòu)期間的各個暫態(tài)過程轉(zhuǎn)換時,不丟失數(shù)據(jù)報、不中斷數(shù)據(jù)流,所有因重構(gòu)而滯留在網(wǎng)絡(luò)中的報文在重構(gòu)完成后依然能被正確轉(zhuǎn)發(fā),且能有效減少重構(gòu)造成的報文失序,從而提升了重構(gòu)時的網(wǎng)絡(luò)可用性,使得重構(gòu)前后網(wǎng)絡(luò)平穩(wěn)運行。[0009]現(xiàn)有的SDN控制器,如NOX、Beacon、Maestro,并不保證網(wǎng)絡(luò)重構(gòu)時暫態(tài)過程下的網(wǎng)絡(luò)可用性,當(dāng)控制器配置新的鏈路參數(shù)時,各種暫態(tài)問題如暫態(tài)環(huán)路或網(wǎng)絡(luò)黑洞均存在。而本技術(shù)能夠消除這些暫態(tài)問題,盡可能減小了網(wǎng)絡(luò)的域內(nèi)重構(gòu)對上層用戶的影響;在域內(nèi)重構(gòu)時,使用本技術(shù)可使網(wǎng)絡(luò)對上層僅表現(xiàn)為延遲在短時間內(nèi)增大。因此,與現(xiàn)有技術(shù)相t匕,本發(fā)明優(yōu)勢在于利用了較為輕量級的方法完全保證了網(wǎng)絡(luò)在重構(gòu)期間的可用性。
【專利附圖】

【附圖說明】
[0010]圖1是交換機緩存方法序列圖;
圖2是交換機執(zhí)行報文緩存流程圖;
圖3是交換機釋放報文緩存流程圖;
圖4是重構(gòu)前的SDN業(yè)務(wù)網(wǎng)拓撲結(jié)構(gòu)示例圖;
圖5是重構(gòu)后的SDN業(yè)務(wù)網(wǎng)拓撲結(jié)構(gòu)示例圖。
【具體實施方式】
[0011]下面以控制器改變域內(nèi)SDN節(jié)點連接關(guān)系為例,結(jié)合圖4、圖5詳細描述本發(fā)明。
[0012]1、域內(nèi)重構(gòu)開始:控制器發(fā)起該控制器所管控域的域內(nèi)重構(gòu),并根據(jù)本次重構(gòu)的需求,對比重構(gòu)前原有的網(wǎng)絡(luò)拓撲(例如圖4)與所欲的新拓撲(例如圖5),求得需要更新流表的交換機為:交換機A、B、C、D、E,最后計算這五臺交換機的新流表;
2、交換機建立緩存,該步驟通過以下子步驟來實現(xiàn):
2.1、控制器利用安全通道(在圖4、圖5中以折線表示),分別向交換機A、B、C、D、E發(fā)送Configuration消息,命令這些交換機進入報文緩存狀態(tài);
2.2、這些交換機收到Configuration消息,分別開始執(zhí)行報文緩存(參見圖2交換機執(zhí)行報文緩存流程圖):
2.2.1、交換機掛起報文發(fā)送進程;
2.2.2、交換機建立報文緩沖進程;
2.2.3、報文緩沖進程利用讀鎖,鎖住原有接收緩沖區(qū),使得報文處理進程不可讀取接收緩沖區(qū);
2.2.4、報文緩沖進程建立報文接收緩沖隊列;
2.2.5、報文緩沖進程持續(xù)監(jiān)聽原有接收緩沖區(qū),若原有接收緩沖區(qū)中有報文,緩沖進程即把緩沖區(qū)中的報文轉(zhuǎn)存入報文接收緩沖隊列;
2.2.6、報文緩沖進程建立報文發(fā)送緩沖隊列;
2.2.7、報文緩沖進程持續(xù)監(jiān)聽原有發(fā)送緩沖區(qū),若原有發(fā)送緩沖區(qū)中有報文,緩沖進程即把緩沖區(qū)中的報文轉(zhuǎn)存入報文發(fā)送緩沖隊列;
2、2.8、交換機向控制器發(fā)送Packet-1n消息(該消息由OpenFlow協(xié)議定義,可以用于向控制器發(fā)送通知),表明已開始緩存報文;
3、執(zhí)行重構(gòu):控制器收到交換機A、B、C、D、E的Packet-1n消息后,執(zhí)行域內(nèi)重構(gòu);通過重構(gòu),交換機A、B、C、D、E的流表被控制器更新;
4、交換機釋放緩存,該步驟通過以下子步驟來實現(xiàn):
4.1、控制器利用安全通道,分別向交換機A、B、C、D、E發(fā)送Configuration消息,命令這些交換機釋放緩存;
4.2、這些交換機收到Configuration消息,分別開始釋放緩存(參見圖3交換機釋放報文緩存流程圖):
4.2.1、報文緩沖進程停止監(jiān)聽原有發(fā)送緩沖區(qū),不再將原有發(fā)送緩沖區(qū)中的報文轉(zhuǎn)存入報文發(fā)送緩沖隊列;
4.2.2、交換機恢復(fù)報文發(fā)送進程;
4.2.3、交換機將報文處理進程的輸入流重定向至報文發(fā)送緩沖隊列;
4.2.4、報文處理進程根據(jù)新的流表,重新處理報文發(fā)送緩沖隊列中的報文;
4.2.5、交換機監(jiān)聽報文發(fā)送緩沖隊列,當(dāng)該緩沖隊列為空時,將報文處理進程的輸入流重定向至報文接收緩沖隊列;
4.2.6、報文緩沖進程停止監(jiān)聽原有接收緩沖區(qū),不再將原有接收緩沖區(qū)中的報文轉(zhuǎn)存入報文接收緩沖隊列;
4.2.7、交換機監(jiān)聽報文接收緩沖隊列,當(dāng)該緩沖隊列為空時,將報文處理進程的輸入流重定向至原有接收緩沖區(qū);
4.2.8、交換機結(jié)束報文緩沖進程;
4.2.9、交換機向控制器發(fā)送Packet-1n消息,表明已釋放緩存;
5、重構(gòu)結(jié)束:控制器收到交換機A、B、C、D、E的Packet-1n消息后,依據(jù)具體機制結(jié)束重構(gòu)。
【權(quán)利要求】
1.有效降低域內(nèi)重構(gòu)過程中網(wǎng)絡(luò)丟包率的交換機緩存方法,其特征在于,包括以下步驟: (1)域內(nèi)重構(gòu)開始:控制器發(fā)起該控制器所管控域的域內(nèi)重構(gòu),并根據(jù)本次重構(gòu)的需求,找出域內(nèi)需要更新流表的交換機,最后計算這些交換機的新的流表; (2)交換機建立緩存,該步驟通過以下子步驟來實現(xiàn): (2.1)控制器利用安全通道,向所有需要更新流表的交換機發(fā)送Configuration消息,命令這些交換機進入報文緩存狀態(tài);所述Configuration消息由OpenFlow協(xié)議定義,用于控制器設(shè)置或查詢交換機上的配置信息; (2.2)需要更新流表的交換機收到Configuration消息,分別開始執(zhí)行報文緩存,具體為: (2.2.1)交換機掛起報文發(fā)送進程; (2.2.2)交換機建立報文緩沖進程; (2.2.3)報文緩沖進程利用讀鎖,鎖住原有接收緩沖區(qū),使得報文處理進程不可讀取接收緩沖區(qū); (2.2.4)報文緩沖進程建立報文接收緩沖隊列; (2.2.5)報文緩沖`進程持續(xù)監(jiān)聽原有接收緩沖區(qū),若原有接收緩沖區(qū)中有報文,緩沖進程即把緩沖區(qū)中的報文轉(zhuǎn)存入報文接收緩沖隊列; (2.2.6)報文緩沖進程建立報文發(fā)送緩沖隊列; (2.2.7)報文緩沖進程持續(xù)監(jiān)聽原有發(fā)送緩沖區(qū),若原有發(fā)送緩沖區(qū)中有報文,緩沖進程即把緩沖區(qū)中的報文轉(zhuǎn)存入報文發(fā)送緩沖隊列; (2.2.8)交換機向控制器發(fā)送Packet-1n消息,表明已開始緩存報文;所述Packet_in消息由OpenFlow協(xié)議定義,可以用于向控制器發(fā)送通知; (3)執(zhí)行重構(gòu):控制器收到所有以上交換機的Packet-1n消息后,執(zhí)行域內(nèi)重構(gòu),通過重構(gòu),需要更新流表的交換機的流表被控制器更新; (4)交換機釋放緩存,該步驟通過以下子步驟來實現(xiàn): (4.1)控制器利用安全通道,分別向以上交換機發(fā)送Configuration消息,命令這些交換機釋放緩存; (4.2)這些交換機收到Configuration消息,分別開始釋放緩存,具體為: (4.2.1)報文緩沖進程停止監(jiān)聽原有發(fā)送緩沖區(qū),不再將原有發(fā)送緩沖區(qū)中的報文轉(zhuǎn)存入報文發(fā)送緩沖隊列; (4.2.2)交換機恢復(fù)報文發(fā)送進程; (4.2.3)交換機將報文處理進程的輸入流重定向至報文發(fā)送緩沖隊列; (4.2.4)報文處理進程根據(jù)新的流表,重新處理報文發(fā)送緩沖隊列中的報文; (4.2.5)交換機監(jiān)聽報文發(fā)送緩沖隊列,當(dāng)該緩沖隊列為空時,將報文處理進程的輸入流重定向至報文接收緩沖隊列; (4.2.6)報文緩沖進程停止監(jiān)聽原有接收緩沖區(qū),不再將原有接收緩沖區(qū)中的報文轉(zhuǎn)存入報文接收緩沖隊列; (4.2.7)交換機監(jiān)聽報文接收緩沖隊列,當(dāng)該緩沖隊列為空時,將報文處理進程的輸入流重定向至原有接收緩沖區(qū);(4.2.8)交換機結(jié)束報文緩沖進程;(4.2.9)交換機向控制器發(fā)送Packet-1n消息,表明已釋放緩存;(5)重構(gòu)結(jié)束:控制器收到所有以上交換機的Packet-1n消息后,依據(jù)具體機制結(jié)束重
構(gòu)。
【文檔編號】H04L12/861GK103731370SQ201310742990
【公開日】2014年4月16日 申請日期:2013年12月30日 優(yōu)先權(quán)日:2013年12月30日
【發(fā)明者】吳春明, 潘戈, 周伯陽, 滕超, 王濱, 高文 申請人:浙江大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1