欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于dht的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法、系統(tǒng)和網(wǎng)絡(luò)控制器的制作方法

文檔序號:7868709閱讀:349來源:國知局
專利名稱:一種基于dht的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法、系統(tǒng)和網(wǎng)絡(luò)控制器的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò)領(lǐng)域,尤其是涉及一種基于分布式哈希(DistributedHash Table, DHT)的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法、系統(tǒng)和網(wǎng)絡(luò)控制器。
背景技術(shù)
美國斯坦福大學(xué)于2008年提出了 OpenFlow (開放流表控制)協(xié)議,該協(xié)議采用轉(zhuǎn)發(fā)/控制分離架構(gòu),外置控制面實(shí)體采用OpenFlow協(xié)議控制轉(zhuǎn)發(fā)面設(shè)備,實(shí)現(xiàn)各種轉(zhuǎn)發(fā)邏輯。而轉(zhuǎn)發(fā)面設(shè)備主要功能就是根據(jù)OpenFlow網(wǎng)絡(luò)控制器下發(fā)的流表執(zhí)行受控轉(zhuǎn)發(fā),其行為是標(biāo)準(zhǔn)化的收到一條報(bào)文,取出其頭部L2/L3/L4相關(guān)字段值,以其作為關(guān)鍵字查找流表,匹配到一個(gè)表項(xiàng)后,根據(jù)表項(xiàng)內(nèi)容中的指令集對報(bào)文字段進(jìn)行變換,完畢后根據(jù)指示轉(zhuǎn)發(fā)到某一邏輯或物理端口。此協(xié)議進(jìn)一步演進(jìn),成為軟件定義網(wǎng)絡(luò)(Software DefinedNetwork, SDN)技術(shù)的基礎(chǔ),即可以在控制面采用軟件編程實(shí)現(xiàn)各種復(fù)雜的網(wǎng)絡(luò)應(yīng)用,而轉(zhuǎn)發(fā)面設(shè)備無需任何改變,由于控制面采用通用服務(wù)器+通用操作系統(tǒng),并且可以使用通用的軟件編程工具,也可以使用 Python (—種面向?qū)ο?、直譯式計(jì)算機(jī)程序設(shè)計(jì)語言)這樣的腳本編程語言實(shí)現(xiàn),這使得新的網(wǎng)絡(luò)協(xié)議的支持變得非常簡單,而且新技術(shù)部署周期大大縮短。一個(gè)基本的OpenFlow網(wǎng)絡(luò)包括網(wǎng)絡(luò)控制器和交換機(jī)兩個(gè)主要的控制實(shí)體。通常地,在網(wǎng)絡(luò)中部署一個(gè)集中的網(wǎng)絡(luò)控制器,負(fù)責(zé)整個(gè)網(wǎng)絡(luò)域中所有的OpenFlow交換機(jī)的管理域控制。然而,單個(gè)集中式的網(wǎng)絡(luò)控制器會(huì)成為網(wǎng)絡(luò)規(guī)模化的瓶頸,如與網(wǎng)絡(luò)控制器距離較遠(yuǎn)的交換機(jī)建立流的時(shí)延增加,單個(gè)網(wǎng)絡(luò)控制器處理交換路徑請求的吞吐量受限,端到端的路徑帶寬可控性差等。為此,學(xué)術(shù)界提出分布式網(wǎng)絡(luò)網(wǎng)絡(luò)控制器方案,如HyperFlow(超級流管理)、0ΝΙΧ等,這些方案一般是在網(wǎng)絡(luò)上部署多個(gè)網(wǎng)絡(luò)控制器共同管理與控制SDN網(wǎng)絡(luò)。公開號為US20110261722的美國專利申請公開的技術(shù)方案中將路由路徑信息放在流的首個(gè)數(shù)據(jù)報(bào)文頭部中,路徑上的交換機(jī)在進(jìn)行報(bào)文轉(zhuǎn)發(fā)時(shí)根據(jù)報(bào)文頭部的路由路徑信息建立轉(zhuǎn)發(fā)流表。對于這種大規(guī)模的網(wǎng)絡(luò),交換機(jī)和網(wǎng)絡(luò)控制器之間的連接選擇與維護(hù)、路徑的計(jì)算與下發(fā),經(jīng)常涉及多個(gè)交換機(jī)、多個(gè)網(wǎng)絡(luò)控制器,大大增加了網(wǎng)絡(luò)維護(hù)的成本。由此可見,在現(xiàn)有SDN的分布式網(wǎng)絡(luò)控制器方案中,路徑建立過程中經(jīng)常涉及多個(gè)網(wǎng)絡(luò)控制器、多個(gè)交換機(jī)的流表下發(fā),復(fù)雜的交互過程增加了事務(wù)維護(hù)的復(fù)雜性,且不利于管理面和轉(zhuǎn)發(fā)面的狀態(tài)統(tǒng)一,大大增加了網(wǎng)絡(luò)的維護(hù)成本。

發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供一種基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法和系統(tǒng),使得網(wǎng)絡(luò)控制器網(wǎng)絡(luò)實(shí)現(xiàn)自組織、交換機(jī)自動(dòng)接入,同時(shí)使得網(wǎng)絡(luò)路徑的計(jì)算與下發(fā)容
易管理。為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的
本發(fā)明提供了一種基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法,該方法包括交換機(jī)與分布式對等網(wǎng)絡(luò)中指定的網(wǎng)絡(luò)控制器建立路由控制通道;接收到路徑創(chuàng)建請求的網(wǎng)絡(luò)控制器作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器進(jìn)行路徑計(jì)算,生成P2P路徑創(chuàng)建請求消息,并沿路徑轉(zhuǎn)發(fā)所述P2P路徑創(chuàng)建請求消息;所述路徑上接收到所述P2P路徑創(chuàng)建請求消息的網(wǎng)絡(luò)控制器,向自身管理的交換機(jī)下發(fā)所述P2P路徑創(chuàng)建請求消息中攜帶的轉(zhuǎn)發(fā)流表,完成各自的本地路徑創(chuàng)建;其中,所述路徑上的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后,沿所述路徑轉(zhuǎn)發(fā)所述P2P路徑創(chuàng)建請求消息,所述路徑上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后沿相反路徑返回P2P路徑創(chuàng)建響應(yīng)消息;接收到所述P2P路徑創(chuàng)建響應(yīng)消息的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器,結(jié)合本地路徑創(chuàng)建結(jié)果,更新所述P2P路徑創(chuàng)建響應(yīng)消息,并沿所述相反路徑轉(zhuǎn)發(fā)更新后的P2P路徑創(chuàng)建響應(yīng)消息;首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息后,結(jié)合本地路徑創(chuàng)建結(jié)果,確定所述路徑是否創(chuàng)建成功。優(yōu)選地,所述交換機(jī)與分布式對等網(wǎng)絡(luò)中指定的網(wǎng)絡(luò)控制器建立路由控制通道,包括交換機(jī)與引導(dǎo)服務(wù)器直接返回的指定的網(wǎng)絡(luò)控制器列表中的網(wǎng)絡(luò)控制器建立路由控制通道;或者,引導(dǎo)服務(wù)器將交換機(jī)引導(dǎo)到任意的網(wǎng)絡(luò)控制器,交換機(jī)根據(jù)所述任意的網(wǎng)絡(luò)控制器返回的信息重定向到指定的網(wǎng)絡(luò)控制器、并與該指定的網(wǎng)絡(luò)控制器建立路由控制通道。優(yōu)選地,所述路由控制通道為OpenFlow協(xié)議通道、SNMP通道或DIAMATER通道。優(yōu)選地,所述路徑計(jì) 算得到路徑上網(wǎng)絡(luò)控制器的順序和路徑上交換機(jī)的順序。優(yōu)選地,所述P2P路徑創(chuàng)建請求消息的目的節(jié)點(diǎn)為所述路徑上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器;所述P2P路徑創(chuàng)建請求消息的路由路徑頭部由所述路徑上除了末節(jié)點(diǎn)網(wǎng)絡(luò)控制器之外的其他網(wǎng)絡(luò)控制器的標(biāo)識組成;所述P2P路徑創(chuàng)建請求消息的消息體由所述路徑上向各個(gè)交換機(jī)下發(fā)的轉(zhuǎn)發(fā)流表組成。優(yōu)選地,所述其他網(wǎng)絡(luò)控制器的標(biāo)識按所述路徑上的所述其他網(wǎng)絡(luò)控制器的順序排列;所述向各個(gè)交換機(jī)下發(fā)的轉(zhuǎn)發(fā)流表按照所述路徑上的交換機(jī)的順序排列。優(yōu)選地,所述首節(jié)點(diǎn)網(wǎng)絡(luò)控制器生成P2P路徑創(chuàng)建請求消息后,該方法還包括所述首節(jié)點(diǎn)網(wǎng)絡(luò)控制器向自身管理的交換機(jī)下發(fā)所述P2P路徑創(chuàng)建請求消息中攜帶的轉(zhuǎn)發(fā)流表。優(yōu)選地,所述路徑上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后沿相反路徑返回P2P路徑創(chuàng)建響應(yīng)消息,為若本地路徑創(chuàng)建成功,所述末節(jié)點(diǎn)網(wǎng)絡(luò)控制器返回成功的P2P路徑創(chuàng)建響應(yīng)消息;若本地路徑創(chuàng)建失敗,所述末節(jié)點(diǎn)網(wǎng)絡(luò)控制器返回失敗的P2P路徑創(chuàng)建響應(yīng)消息。優(yōu)選地,接收到所述P2P路徑創(chuàng)建響應(yīng)消息的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器,結(jié)合本地路徑創(chuàng)建結(jié)果,更新所述P2P路徑創(chuàng)建響應(yīng)消息,并沿所述相反路徑轉(zhuǎn)發(fā)更新后的P2P路徑創(chuàng)建響應(yīng)消息,為若本地路徑創(chuàng)建成功、且接收到的為成功的P2P路徑創(chuàng)建響應(yīng)消息,則沿所述相反路徑轉(zhuǎn)發(fā)更新后的、成功的P2P路徑創(chuàng)建響應(yīng)消息;若本地路徑創(chuàng)建成功、且接收到的為失敗的P2P路徑創(chuàng)建響應(yīng)消息,則沿所述相反路徑轉(zhuǎn)發(fā)更新后的、失敗的P2P路徑創(chuàng)建響應(yīng)消息;若本地路徑創(chuàng)建失敗,且接收到的為失敗或成功的P2P路徑創(chuàng)建響應(yīng)消息,則沿所述相反路徑轉(zhuǎn)發(fā)更新后的、失敗的P2P路徑創(chuàng)建響應(yīng)消息。優(yōu)選地,首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息后,結(jié)合本地路徑創(chuàng)建結(jié)果,確定所述路徑是否創(chuàng)建成功,為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到成功的P2P路徑創(chuàng)建響應(yīng)消息、且本地路徑創(chuàng)建成功時(shí),確認(rèn)所述路徑創(chuàng)建成功;首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到失敗的P2P路徑創(chuàng)建響應(yīng)消息或者本地路徑創(chuàng)建失敗時(shí),確認(rèn)所述路徑創(chuàng)建失敗,并重新進(jìn)行路徑計(jì)算。優(yōu)選地,所述路徑上的網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息后該方法還包括若接收到為失敗的P2P路徑創(chuàng)建響應(yīng)消息或者本地路徑創(chuàng)建失敗時(shí),網(wǎng)絡(luò)控制器對本地已下發(fā)的轉(zhuǎn)發(fā)流表進(jìn)行回滾操作。本發(fā)明還提供了一種基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)系統(tǒng),該系統(tǒng)包括交換機(jī)和網(wǎng)絡(luò)控制器,其中 所述交換機(jī),用于與分布式對等網(wǎng)絡(luò)中指定的網(wǎng)絡(luò)控制器建立路由控制通道;所述網(wǎng)絡(luò)控制器,用于接收到路徑創(chuàng)建請求時(shí)作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器進(jìn)行路徑計(jì)算,生成P2P路徑創(chuàng)建請求消息,并沿路徑轉(zhuǎn)發(fā)所述P2P路徑創(chuàng)建請求消息;還用于接收到所述P2P路徑創(chuàng)建請求消息時(shí),向自身管理的交換機(jī)下發(fā)所述P2P路徑創(chuàng)建請求消息中攜帶的轉(zhuǎn)發(fā)流表,完成本地路徑創(chuàng)建;還用于作為所述路徑上的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后,沿所述路徑轉(zhuǎn)發(fā)所述P2P路徑創(chuàng)建請求消息;還用于,作為所述路徑上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后沿相反路徑返回P2P路徑創(chuàng)建響應(yīng)消息;還用于作為路徑上的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到所述P2P路徑創(chuàng)建響應(yīng)消息時(shí),結(jié)合本地路徑創(chuàng)建結(jié)果,更新所述P2P路徑創(chuàng)建響應(yīng)消息,并沿所述相反路徑轉(zhuǎn)發(fā)更新后的P2P路徑創(chuàng)建響應(yīng)消息;還用于作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息后,結(jié)合本地路徑創(chuàng)建結(jié)果,確定所述路徑是否創(chuàng)建成功。優(yōu)選地,該系統(tǒng)還包括引導(dǎo)服務(wù)器,用于向所述交換機(jī)指定的網(wǎng)絡(luò)控制器列表;或者,將所述交換機(jī)引導(dǎo)到任意的網(wǎng)絡(luò)控制器;相應(yīng)的,所述交換機(jī),還用于與所述引導(dǎo)服務(wù)器直接返回的指定的網(wǎng)絡(luò)控制器列表中的網(wǎng)絡(luò)控制器建立路由控制通道;或者,根據(jù)所述任意的網(wǎng)絡(luò)控制器返回的信息重定向到指定的網(wǎng)絡(luò)控制器、并與該指定的網(wǎng)絡(luò)控制器建立路由控制通道。優(yōu)選地,所述網(wǎng)絡(luò)控制器,還用于作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器生成P2P路徑創(chuàng)建請求消息后,向自身管理的交換機(jī)下發(fā)所述P2P路徑創(chuàng)建請求消息中攜帶的轉(zhuǎn)發(fā)流表。優(yōu)選地,所述網(wǎng)絡(luò)控制器,還用于作為末節(jié)點(diǎn)網(wǎng)絡(luò)控制器,若本地路徑創(chuàng)建成功,沿相反路徑返回成功的P2P路徑創(chuàng)建響應(yīng)消息;若本地路徑創(chuàng)建失敗,沿相反路徑返回失敗的P2P路徑創(chuàng)建響應(yīng)消息。
優(yōu)選地,所述網(wǎng)絡(luò)控制器,還用于作為中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到所述P2P路徑創(chuàng)建響應(yīng)消息時(shí),若本地路徑創(chuàng)建成功、且接收到的為成功的P2P路徑創(chuàng)建響應(yīng)消息,則沿所述相反路徑轉(zhuǎn)發(fā)更新后的、成功的P2P路徑創(chuàng)建響應(yīng)消息;若本地路徑創(chuàng)建成功、且接收到的為失敗的P2P路徑創(chuàng)建響應(yīng)消息,則沿所述相反路徑轉(zhuǎn)發(fā)更新后的、失敗的P2P路徑創(chuàng)建響應(yīng)消息;若本地路徑創(chuàng)建失敗,且接收到的為失敗或成功的P2P路徑創(chuàng)建響應(yīng)消息,則沿所述相反路徑轉(zhuǎn)發(fā)更新后的、失敗的P2P路徑創(chuàng)建響應(yīng)消息。優(yōu)選地,所述網(wǎng)絡(luò)控制器,還用于作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息后,若接收到的為成功的P2P路徑創(chuàng)建響應(yīng)消息、且本地路徑創(chuàng)建成功時(shí),確認(rèn)所述路徑創(chuàng)建成功;若接收到的為失敗的P2P路徑創(chuàng)建響應(yīng)消息或者本地路徑創(chuàng)建失敗時(shí),確認(rèn)所述路徑創(chuàng)建失敗,并重新進(jìn)行路徑計(jì)算。優(yōu)選地,所述網(wǎng)絡(luò)控制器,還用于在接收到P2P路徑創(chuàng)建響應(yīng)消息后,若接收到為失敗的P2P路徑創(chuàng)建響應(yīng)消息或者本地路徑創(chuàng)建失敗時(shí),對本地已下發(fā)的轉(zhuǎn)發(fā)流表進(jìn)行回滾操作。本發(fā)明還提供了一種網(wǎng)絡(luò)控制器,包括路由控制協(xié)議模塊、分布式處理模塊、路由控制與下發(fā)模塊和分布式路由協(xié)議模塊,其中所述路由控制協(xié)議模塊,用于負(fù)責(zé)網(wǎng)絡(luò)控制器與交換機(jī)之間路由控制通道的建立以及網(wǎng)絡(luò)控制器與交換機(jī)之間信息的交互;所述分布式處理模塊,用于根據(jù)所述路由控制與下發(fā)模塊提供的路徑信息生成P2P路徑創(chuàng)建請求消息,提供給所述分布式路由協(xié)議模塊進(jìn)行轉(zhuǎn)發(fā);還用于根據(jù)所述路由控制與下發(fā)模塊提供的本地路徑創(chuàng)建結(jié)果生成P2P路徑創(chuàng)建響應(yīng)消息,提供給分布式路由協(xié)議模塊進(jìn)行轉(zhuǎn)發(fā);還用于接收所述分布式路由協(xié)議模塊提供的P2P路徑創(chuàng)建請求消息,并將其中攜帶的轉(zhuǎn)發(fā)流表提供給所述路由控制與下發(fā)模塊;還用于接收所述分布式路由協(xié)議模塊提供的P2P路徑創(chuàng)建響應(yīng)消息,并根據(jù)所述路由控制與下發(fā)模塊提供的本地路徑創(chuàng)建結(jié)果對接收的P2P路徑創(chuàng) 建響應(yīng)消息進(jìn)行更新后,提供給所述分布式路由協(xié)議模塊進(jìn)行轉(zhuǎn)發(fā);還用于根據(jù)路由控制與下發(fā)模塊提供的本地路徑創(chuàng)建結(jié)果和所述分布式路由協(xié)議模塊提供的P2P路徑創(chuàng)建響應(yīng)消息,確定路徑是否創(chuàng)建成功;路由控制與下發(fā)模塊,用于在首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到路徑創(chuàng)建請求時(shí)進(jìn)行路徑計(jì)算,得到路徑信息,并提供給所述分布式處理模塊;還用于將所述分布式處理模塊提供的轉(zhuǎn)發(fā)流表通過所述路由控制協(xié)議模塊下發(fā)給對應(yīng)的交換機(jī),完成本地路徑創(chuàng)建,并將本地路徑創(chuàng)建結(jié)果提供給所述分布式處理模塊;所述分布式路由協(xié)議模塊,用于沿路徑轉(zhuǎn)發(fā)或接收P2P路徑創(chuàng)建請求消息;還用于相反路徑轉(zhuǎn)發(fā)或接收所述P2P路徑創(chuàng)建響應(yīng)消息;還用于將接收到的P2P路徑創(chuàng)建請求消息或P2P路徑創(chuàng)建響應(yīng)消息提供給所述分布式處理模塊。優(yōu)選地,所述分布式處理模塊,還用于確定路徑創(chuàng)建失敗時(shí),通知所述路由控制與下發(fā)模塊執(zhí)行轉(zhuǎn)發(fā)流表回滾操作;所述路由控制與下發(fā)模塊,還用于通過所述路由控制協(xié)議模塊,對下發(fā)的轉(zhuǎn)發(fā)流表執(zhí)行回滾操作。本發(fā)明基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法和系統(tǒng)交換機(jī)與分布式對等網(wǎng)絡(luò)中指定的網(wǎng)絡(luò)控制器建立路由控制通道;接收到路徑創(chuàng)建請求的網(wǎng)絡(luò)控制器作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器進(jìn)行路徑計(jì)算,生成P2P路徑創(chuàng)建請求消息,并沿路徑轉(zhuǎn)發(fā)P2P路徑創(chuàng)建請求消息;路徑上接收到P2P路徑創(chuàng)建請求消息的網(wǎng)絡(luò)控制器,向自身管理的交換機(jī)下發(fā)P2P路徑創(chuàng)建請求消息中攜帶的轉(zhuǎn)發(fā)流表,完成各自的本地路徑創(chuàng)建;其中,路徑上的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后,沿路徑轉(zhuǎn)發(fā)P2P路徑創(chuàng)建請求消息,路徑上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后沿相反路徑返回P2P路徑創(chuàng)建響應(yīng)消息;接收到P2P路徑創(chuàng)建響應(yīng)消息的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器,結(jié)合本地路徑創(chuàng)建結(jié)果,更新P2P路徑創(chuàng)建響應(yīng)消息,并沿相反路徑轉(zhuǎn)發(fā)更新后的P2P路徑創(chuàng)建響應(yīng)消息;首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息后,結(jié)合本地路徑創(chuàng)建結(jié)果,確定路徑是否創(chuàng)建成功,使得網(wǎng)絡(luò)路徑的計(jì)算與下發(fā)容易管理。另外,交換機(jī)與分布式對等網(wǎng)絡(luò)中指定的網(wǎng)絡(luò)控制器建立路由控制通道,使得網(wǎng)絡(luò)控制器網(wǎng)絡(luò)實(shí)現(xiàn)自組織、交換機(jī)自動(dòng)接入。


圖1為本發(fā)明實(shí)施例提供的基于DHT的SDN網(wǎng)絡(luò)系統(tǒng)架構(gòu)示意圖;圖2為本發(fā)明實(shí)施例提供的基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法;圖3為本發(fā)明實(shí)施例提供的交換機(jī)與指定的網(wǎng)絡(luò)控制器建立路由控制通道的示意
圖4為本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)控制器進(jìn)行路徑計(jì)算與轉(zhuǎn)發(fā)的流程;圖5為本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)控制器處理P2P路徑創(chuàng)建請求消息的流程圖;圖6為本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)控制器處理P2P路徑創(chuàng)建請求消息的流程圖;圖7為本發(fā)明實(shí)施例中網(wǎng)絡(luò)控制器的結(jié)構(gòu)示意圖;圖8為本發(fā)明實(shí)施例中交換機(jī)的結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面結(jié)合附圖和具體實(shí)施例對本發(fā)明的技術(shù)方案進(jìn)一步詳細(xì)闡述。本發(fā)明基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方案基于的網(wǎng)絡(luò)架構(gòu)如圖1所示。圖1是本發(fā)明實(shí)施例提供的基于DHT的SDN網(wǎng)絡(luò)系統(tǒng)架構(gòu)示意圖,SDN網(wǎng)絡(luò)包括交換機(jī)網(wǎng)絡(luò)101、分布式對等網(wǎng)絡(luò)103和引導(dǎo)服務(wù)器105,其中交換機(jī)網(wǎng)絡(luò)101,由多個(gè)物理上互連的交換機(jī)102組成,交換機(jī)102之間通過物理鏈路進(jìn)行互聯(lián),每個(gè)交換機(jī)102根據(jù)MAC地址或DPID等信息通過哈希(HASH)算法、MID5算法等生成固定長度的交換機(jī)標(biāo)識(ID)。交換機(jī)102在上電時(shí)通過引導(dǎo)服務(wù)器105與指定的網(wǎng)絡(luò)控制器104之間建立可靠的路由控制通道,進(jìn)行相關(guān)的安全驗(yàn)證、基本信息上報(bào)、交換機(jī)配置等操作。交換機(jī)102完全受網(wǎng)絡(luò)控制器104控制,對于收到的數(shù)據(jù)報(bào)文,交換機(jī)102根據(jù)網(wǎng)絡(luò)控制器104下發(fā)的轉(zhuǎn)發(fā)流表進(jìn)行處理,對于查找本地流表無命中的數(shù)據(jù)報(bào)文,交換機(jī)102上報(bào)給網(wǎng)絡(luò)控制器104進(jìn)行處理。分布式對等網(wǎng)絡(luò)103,是由至少一個(gè)網(wǎng)絡(luò)控制器104組成的分布式DHT網(wǎng)絡(luò),如單跳(One-Hop) DHT, Pastry網(wǎng)絡(luò)等。網(wǎng)絡(luò)控制器104之間運(yùn)行分布式路由協(xié)議(如資源定位與發(fā)現(xiàn)協(xié)議(REsource LOcation And Discovery,簡稱RELOAD協(xié)議))進(jìn)行通信。其中,每個(gè)網(wǎng)絡(luò)控制器104根據(jù)IP地址等信息通過哈希(HASH)算法、MID5算法等生成固定長度的網(wǎng)絡(luò)控制器標(biāo)識(ID)。需要指出的是網(wǎng)絡(luò)控制器標(biāo)識和交換機(jī)標(biāo)識的均為同一固定長度的字符串,例如,對交換機(jī)的DPID或MAC地址進(jìn)行HASH或MID5運(yùn)算,得到128位的字符串作為標(biāo)識;對網(wǎng)絡(luò)控制器的IP地址進(jìn)行HASH或MID5運(yùn)算,得到128位的字符串作為標(biāo)識。每個(gè)網(wǎng)絡(luò)控制器104負(fù)責(zé)管理一個(gè)或多個(gè)交換機(jī)102 (即一個(gè)或多個(gè)交換機(jī)102分別與一個(gè)網(wǎng)絡(luò)控制器104建立路由控制通道),兩者之間的對應(yīng)關(guān)系的建立可以通過分布式算法來確定相關(guān)的原則,例如,兩者的標(biāo)識距離最近的交換機(jī)102和網(wǎng)絡(luò)控制器104建立路由控制通道,或者,兩者的標(biāo)識距離大于預(yù)定的閾值,且距離最小時(shí),對應(yīng)的交換機(jī)102和網(wǎng)絡(luò)控制器104建立路由控制通道。當(dāng)然,網(wǎng)絡(luò)控制器104和交換機(jī)102之間對應(yīng)關(guān)系的建立所依據(jù)的原則并不限于上述兩種方式,只要通過分布式算法確定的均可應(yīng)用。每個(gè)網(wǎng)絡(luò)控制器104對所管理的交換機(jī)102上報(bào)的數(shù)據(jù)報(bào)文進(jìn)行路由計(jì)算,并通過分布式路由協(xié)議向所管理的交換機(jī)102下發(fā)轉(zhuǎn)發(fā)流表以完成數(shù)據(jù)交換。引導(dǎo)服務(wù)器105,負(fù)責(zé)引導(dǎo)交換機(jī)102與指定的網(wǎng)絡(luò)控制器104建立路由控制通道。引導(dǎo)服務(wù)器105可以是普通的DNS服務(wù)器,負(fù)責(zé)將交換機(jī)102引導(dǎo)到任意的網(wǎng)絡(luò)控制器104,交換機(jī)102再通過該網(wǎng)絡(luò)控制器104返回的信息重定向到·指定的網(wǎng)絡(luò)控制器104 ;引導(dǎo)服務(wù)器105還可以與分布式對等網(wǎng)絡(luò)103進(jìn)行交互,直接將分布式算法確定的網(wǎng)絡(luò)控制器104通知給交換機(jī)102,交換機(jī)102直接與該網(wǎng)絡(luò)控制器104進(jìn)行路由控制通道建立。本發(fā)明實(shí)施例提供的基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法如圖2所示,包括如下步驟步驟201,交換機(jī)與分布式對等網(wǎng)絡(luò)中指定的網(wǎng)絡(luò)控制器建立路由控制通道。步驟202,接收到路徑創(chuàng)建請求的網(wǎng)絡(luò)控制器作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器進(jìn)行路徑計(jì)算,生成P2P路徑創(chuàng)建請求消息,并沿路徑轉(zhuǎn)發(fā)P2P路徑創(chuàng)建請求消息。步驟203,路徑上接收到P2P路徑創(chuàng)建請求消息的網(wǎng)絡(luò)控制器,向自身管理的交換機(jī)下發(fā)P2P路徑創(chuàng)建請求消息中攜帶的轉(zhuǎn)發(fā)流表,完成各自的本地路徑創(chuàng)建;其中,路徑上的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后,沿路徑轉(zhuǎn)發(fā)P2P路徑創(chuàng)建請求消息,路徑上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后沿相反路徑返回P2P路徑創(chuàng)建響應(yīng)消息。步驟204,接收到P2P路徑創(chuàng)建響應(yīng)消息的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器,結(jié)合本地路徑創(chuàng)建結(jié)果,更新P2P路徑創(chuàng)建響應(yīng)消息,并沿相反路徑轉(zhuǎn)發(fā)更新后的P2P路徑創(chuàng)建響應(yīng)消息;首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息后,結(jié)合本地路徑創(chuàng)建結(jié)果,確定路徑是否創(chuàng)建成功。下面結(jié)合附圖及具體實(shí)施例對本發(fā)明上述的方案進(jìn)行詳細(xì)說明。步驟201的實(shí)現(xiàn)方式包括交換機(jī)與引導(dǎo)服務(wù)器直接返回的網(wǎng)絡(luò)控制器列表中的網(wǎng)絡(luò)控制器建立路由控制通道;或者,引導(dǎo)服務(wù)器將交換機(jī)引導(dǎo)到任意的網(wǎng)絡(luò)控制器,交換機(jī)根據(jù)所述任意的網(wǎng)絡(luò)控制器返回的信息重定向到指定的網(wǎng)絡(luò)控制器、并與該指定的網(wǎng)絡(luò)控制器建立路由控制通道。圖3是本發(fā)明實(shí)施例提供的交換機(jī)與指定的網(wǎng)絡(luò)控制器建立路由控制通道的示意圖。其中,如圖3 (a)描述的是在交換機(jī)加入網(wǎng)絡(luò)過程中,交換機(jī)與引導(dǎo)服務(wù)器直接返回的網(wǎng)絡(luò)控制器列表中的網(wǎng)絡(luò)控制器建立路由控制通道;圖3 (b)描述的是引導(dǎo)服務(wù)器執(zhí)行普通的DNS服務(wù)器功能,負(fù)責(zé)將交換機(jī)引導(dǎo)到任意的網(wǎng)絡(luò)控制器,交換機(jī)根據(jù)任意的網(wǎng)絡(luò)控制器返回的信息重定向到指定的網(wǎng)絡(luò)控制器、并與該指定的網(wǎng)絡(luò)控制器建立路由控制通道。優(yōu)選地,本發(fā)明實(shí)施例所述的路由控制通道可以為OpenFlow協(xié)議通道、簡單網(wǎng)絡(luò)管理協(xié)議(SNMP, Simple Network Management Protocol)通道或 DIAMATER 通道。
如圖3 (a)所示,交換機(jī)加入網(wǎng)絡(luò)的具體步驟描述如下步驟301a、交換機(jī)向引導(dǎo)服務(wù)器請求與網(wǎng)絡(luò)控制器建立連接。步驟302a、引導(dǎo)服務(wù)器根據(jù)分布式算法選擇負(fù)責(zé)管理該交換機(jī)的一個(gè)網(wǎng)絡(luò)控制器,并該網(wǎng)絡(luò)控制器的信息返回給交換機(jī)。這里,引導(dǎo)服務(wù)器還可根據(jù)分布式算法選擇負(fù)責(zé)管理該交換機(jī)的一個(gè)或多個(gè)備份網(wǎng)絡(luò)控制器,并將備份網(wǎng)絡(luò)控制器的信息也返回給交換機(jī)。優(yōu)選地,網(wǎng)絡(luò)控制器的信息可以以列表的形式發(fā)送給交換機(jī)。該步驟中,選擇負(fù)責(zé)管理該交換機(jī)的網(wǎng)絡(luò)控制器即為上述的依據(jù)網(wǎng)絡(luò)控制器和交換機(jī)之間對應(yīng)關(guān)系的建立原則,選擇可與當(dāng)前交換機(jī)建立對應(yīng)關(guān)系的網(wǎng)絡(luò)控制器。步驟303a)、交換機(jī)根據(jù)引導(dǎo)服務(wù)器返回的網(wǎng)絡(luò)控制器列表,與網(wǎng)絡(luò)控制器列表中的一個(gè)或多個(gè)網(wǎng)絡(luò)控制器建立路由控制通道。引導(dǎo)服務(wù)器在返回網(wǎng)絡(luò)控制器列表時(shí),一般會(huì)將根據(jù)分布式算法確定的最合適的網(wǎng)絡(luò)控制器排列在第一位,將其他備份網(wǎng)絡(luò)控制器依次向后排列。優(yōu)選地,交換機(jī)可以按照排列順序優(yōu)先與排列最靠前的一個(gè)網(wǎng)絡(luò)控制器建立路由控制通道。如果與排列在第一位的網(wǎng)絡(luò)控制器不能建立路由控制通道,則嘗試與第二位的網(wǎng)絡(luò)控制器建立路由控制通道,依次類推。優(yōu)選地,根據(jù)分布式算法,交換機(jī)還可以與列表中的多個(gè)網(wǎng)絡(luò)控制器建立路由控制通道,具體如何從列表中選擇,通過分布式算法確定。

步驟304a)、網(wǎng)絡(luò)控制器與交換機(jī)建立路由控制通道,將交換機(jī)信息及交換機(jī)的網(wǎng)絡(luò)鄰居拓?fù)潢P(guān)系在分布式對等網(wǎng)絡(luò)中進(jìn)行更新。如圖3 (b)所示,交換機(jī)加入網(wǎng)絡(luò)的具體步驟描述如下步驟301b、交換機(jī)向引導(dǎo)服務(wù)器請求與網(wǎng)絡(luò)控制器建立連接。步驟302b、引導(dǎo)服務(wù)器執(zhí)行DNS重定向功能,返回一個(gè)網(wǎng)絡(luò)控制器列表I給交換機(jī)。步驟303b、交換機(jī)從網(wǎng)絡(luò)控制器列表I中任意選擇一個(gè)網(wǎng)絡(luò)控制器Ci發(fā)送OpenFlow協(xié)議通道建立請求。步驟304b、網(wǎng)絡(luò)控制器Ci根據(jù)分布式算法選擇負(fù)責(zé)管理該交換機(jī)的一個(gè)或多個(gè)網(wǎng)絡(luò)控制器,生成網(wǎng)絡(luò)控制器列表2。(該步驟選擇網(wǎng)絡(luò)控制器的實(shí)現(xiàn)與步驟202a相同)步驟305b、網(wǎng)絡(luò)控制器Ci向交換機(jī)返回重定向響應(yīng),指示交換機(jī)與網(wǎng)絡(luò)控制器列表2中的網(wǎng)絡(luò)控制器建立OpenFlow協(xié)議通道。步驟306b、交換機(jī)根據(jù)重定向響應(yīng),與網(wǎng)絡(luò)控制器列表2中的一個(gè)或多個(gè)網(wǎng)絡(luò)控制器建立OpenFlow協(xié)議通道。該實(shí)施例中假設(shè)交換機(jī)與網(wǎng)絡(luò)控制器列表2中網(wǎng)絡(luò)控制器Cj建立OpenFlow協(xié)議通道。步驟307b、網(wǎng)絡(luò)控制器Cj與交換機(jī)建立OpenFlow協(xié)議通道,將交換機(jī)信息及交換機(jī)的網(wǎng)絡(luò)鄰居拓?fù)潢P(guān)系在分布式對等網(wǎng)絡(luò)中進(jìn)行更新。上述步驟202的實(shí)現(xiàn)方式包括通過路徑計(jì)算可得到以下的路徑信息路徑上網(wǎng)絡(luò)控制器的順序和路徑上交換機(jī)的順序。進(jìn)行路徑計(jì)算的網(wǎng)絡(luò)控制器(首節(jié)點(diǎn)網(wǎng)絡(luò)控制器)生成P2P路徑創(chuàng)建請求消息,該消息的目的節(jié)點(diǎn)為路徑上的最后一個(gè)網(wǎng)絡(luò)控制器、即末節(jié)點(diǎn)網(wǎng)絡(luò)控制器;該消息的路由路徑頭部由路徑上除了末節(jié)點(diǎn)網(wǎng)絡(luò)控制器之外的其他網(wǎng)絡(luò)控制器的標(biāo)識組成,優(yōu)選地,其他網(wǎng)絡(luò)控制器的標(biāo)識按路徑上的其他網(wǎng)絡(luò)控制器的順序排列;該消息的消息體由路徑上向各個(gè)交換機(jī)下發(fā)的轉(zhuǎn)發(fā)流表組成,優(yōu)選地,向各個(gè)交換機(jī)下發(fā)的轉(zhuǎn)發(fā)流表按照路徑上的交換機(jī)的順序排列。在轉(zhuǎn)發(fā)時(shí),按照P2P路徑創(chuàng)建請求消息的路由路徑頭部,向下一個(gè)網(wǎng)絡(luò)控制器轉(zhuǎn)發(fā)P2P路徑創(chuàng)建請求消息。圖4是本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)控制器進(jìn)行路徑計(jì)算與轉(zhuǎn)發(fā)的流程。路徑計(jì)算節(jié)點(diǎn)Cl根據(jù)網(wǎng)絡(luò)拓?fù)湫畔⒑椭鳈C(jī)位置信息計(jì)算得到路由路徑,根據(jù)分布式算法獲取路徑上各交換機(jī)標(biāo)識和各網(wǎng)絡(luò)控制器標(biāo)識生成P2P路徑創(chuàng)建請求消息,進(jìn)行路由路徑的轉(zhuǎn)發(fā)。具體步驟描述如下步驟401、網(wǎng)絡(luò)控制器Cl收到路徑{src, dst}創(chuàng)建請求,計(jì)算路徑{src, dst}上的交換機(jī)順序和網(wǎng)絡(luò)控制器順序,假設(shè)交換機(jī)順序?yàn)閧SI,S2, S3, S4, S6, S7, S9},網(wǎng)絡(luò)控制器順序?yàn)閧Cl,C2, C3};步驟402、網(wǎng)絡(luò)控制器Cl根據(jù)分布式算法獲取路徑{src,dst}上的交換機(jī)標(biāo)識序列{H(S1),H(S1),*",H(S9)},并獲取路徑{src,dst}上的網(wǎng)絡(luò)控制器標(biāo)識序列{Ctl_IDl, Ctl_ID2, Ctl_ID3};步驟403、網(wǎng)絡(luò)控制器CI生成P2P路徑創(chuàng)建請求消息,該消息的路由路徑頭部為{Ctl_IDl,Ctl_ID2};該消息的目的節(jié)點(diǎn)為Ctl_ID3 ;該消息的消息體為路徑{src, dst}上向各個(gè)交換機(jī)下發(fā)的轉(zhuǎn)發(fā)流表{S1:FlowEntry list, S2:FlowEntry list,…,S9:FlowEntry list};步驟404、網(wǎng)絡(luò)控制器Cl根據(jù)路由路徑頭部{Ctl_IDl,Ctl_ID2},向網(wǎng)絡(luò)控制器C2轉(zhuǎn)發(fā)P2P路徑創(chuàng)建請求消息;網(wǎng)絡(luò)控制器C2根據(jù)該消息的目的節(jié)點(diǎn)向網(wǎng)絡(luò)控制器C3轉(zhuǎn)發(fā)P2P路徑創(chuàng)建請求消息。上述步驟203的實(shí)現(xiàn)方式為路徑上接收到P2P路徑創(chuàng)建請求消息的網(wǎng)絡(luò)控制器首選向自身管理的交換機(jī)下發(fā) P2P路徑創(chuàng)建請求消息中攜帶的轉(zhuǎn)發(fā)流表,完成本地路徑創(chuàng)建;然后,該網(wǎng)絡(luò)控制器根據(jù)P2P路徑創(chuàng)建請求消息的目的節(jié)點(diǎn)部判斷本節(jié)點(diǎn)是否為末節(jié)點(diǎn)網(wǎng)絡(luò)控制器,如果否,按照路由路徑頭部將P2P路徑創(chuàng)建請求消息轉(zhuǎn)發(fā)給下一個(gè)網(wǎng)絡(luò)控制器;如果是,即末節(jié)點(diǎn)網(wǎng)絡(luò)控制器沿相反路徑向上一個(gè)網(wǎng)絡(luò)控制器返回P2P路徑創(chuàng)建響應(yīng)消息。承接圖4所示的實(shí)施例,圖5是本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)控制器處理P2P路徑創(chuàng)建請求消息的流程圖。網(wǎng)絡(luò)控制網(wǎng)絡(luò)收到P2P路徑創(chuàng)建請求消息后,對于需要本節(jié)點(diǎn)負(fù)責(zé)的轉(zhuǎn)發(fā)流表下發(fā),并根據(jù)向下一節(jié)點(diǎn)繼續(xù)轉(zhuǎn)發(fā)P2P路徑創(chuàng)建請求消息。具體步驟描述如下步驟501,網(wǎng)絡(luò)控制器C2收到網(wǎng)絡(luò)控制器Cl轉(zhuǎn)發(fā)的P2P路徑創(chuàng)建請求消息;步驟502,網(wǎng)絡(luò)控制器C2首先向所負(fù)責(zé)的交換機(jī)下發(fā)對應(yīng)的轉(zhuǎn)發(fā)流表,如網(wǎng)絡(luò)控制器C2向交換機(jī)S2下發(fā)轉(zhuǎn)發(fā)流表S2:FlowEntry list,向S7下發(fā)轉(zhuǎn)發(fā)流表S7:FlowEntrylist,完成本地路徑創(chuàng)建;步驟503,完成本地路徑創(chuàng)建后,網(wǎng)絡(luò)控制器C2根據(jù)P2P路徑創(chuàng)建請求消息的目的節(jié)點(diǎn)判斷本節(jié)點(diǎn)是否為路徑{src,dst}上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器;步驟504,由于網(wǎng)絡(luò)控制器C2不是路徑{src,dst}上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器,因此,網(wǎng)絡(luò)控制器C2根據(jù)目的節(jié)點(diǎn)向網(wǎng)絡(luò)控制器C3轉(zhuǎn)發(fā)P2P路徑創(chuàng)建請求消息;步驟505,網(wǎng)絡(luò)控制器C3首先向所負(fù)責(zé)的交換機(jī)下發(fā)對應(yīng)的轉(zhuǎn)發(fā)流表,如網(wǎng)絡(luò)控制器C3向交換機(jī)S3下發(fā)轉(zhuǎn)發(fā)流表S3:FlowEntry list,向S4下發(fā)轉(zhuǎn)發(fā)流表S4:FlowEntrylist,完成本地路徑創(chuàng)建;步驟506,完成本地路徑創(chuàng)建后,網(wǎng)絡(luò)控制器C3根據(jù)P2P路徑創(chuàng)建請求消息的目的節(jié)點(diǎn)判斷本節(jié)點(diǎn)是否為路徑{src,dst}上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器;步驟507,由于網(wǎng)絡(luò)控制器C3是路徑{src,dst}上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器,因此,網(wǎng)絡(luò)控制器C3向上一個(gè)節(jié)點(diǎn)、即網(wǎng)絡(luò)控制器C2返回P2P路徑創(chuàng)建響應(yīng)消息。進(jìn)一步地,在上述步驟203的實(shí)現(xiàn)方式中對于路徑上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器,在完成本地路徑創(chuàng)建后,若本地路徑創(chuàng)建成功,則向上一個(gè)網(wǎng)絡(luò)控制器返回成功的P2P路徑創(chuàng)建響應(yīng)消息;如果本地路徑創(chuàng)建失敗,向上一個(gè)網(wǎng)絡(luò)控制器返回失敗的P2P路徑創(chuàng)建響應(yīng)消息。對于步驟204的實(shí)現(xiàn)對路徑上的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器,接收到P2P路徑創(chuàng)建響應(yīng)消息時(shí),根據(jù)本地路徑創(chuàng)建結(jié)果,若本地路徑創(chuàng)建成功、且接收到了成功的P2P路徑創(chuàng)建響應(yīng)消息,則相反路徑轉(zhuǎn)發(fā)更新后的成功的P2P路徑創(chuàng)建響應(yīng)消息;若本地路徑創(chuàng)建成功、且接收到的為失敗的P2P路徑創(chuàng) 建響應(yīng)消息,則沿相反路徑轉(zhuǎn)發(fā)更新后的、失敗的P2P路徑創(chuàng)建響應(yīng)消息;若本地路徑創(chuàng)建失敗,且接收到的為失敗或成功的P2P路徑創(chuàng)建響應(yīng)消息,則沿相反路徑轉(zhuǎn)發(fā)更新后的、失敗的P2P路徑創(chuàng)建響應(yīng)消息。對于首節(jié)點(diǎn)網(wǎng)絡(luò)控制器,接收到成功的P2P路徑創(chuàng)建響應(yīng)消息、且本地路徑創(chuàng)建成功時(shí),確認(rèn)路徑創(chuàng)建成功;接收到失敗的P2P路徑創(chuàng)建響應(yīng)消息或者本地路徑創(chuàng)建失敗時(shí),確認(rèn)路徑創(chuàng)建失敗,并重新進(jìn)行路徑計(jì)算。承接圖4、圖5的實(shí)施例,圖6是本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)控制器處理P2P路徑創(chuàng)建請求消息的流程圖。具體步驟描述如下步驟601,網(wǎng)絡(luò)控制器C2收到路徑{src,dst}上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器C3發(fā)送的失敗的P2P路徑創(chuàng)建響應(yīng)消息;步驟602,因?yàn)榫W(wǎng)絡(luò)控制器C2接收到的為失敗的P2P路徑創(chuàng)建響應(yīng)消息,且網(wǎng)絡(luò)控制器C2不是生成P2P路徑創(chuàng)建請求消息的節(jié)點(diǎn),所以,不管網(wǎng)絡(luò)控制器C2本節(jié)點(diǎn)的路徑創(chuàng)建是否成功,網(wǎng)絡(luò)控制器C2都向網(wǎng)絡(luò)控制器Cl返回失敗的P2P路徑創(chuàng)建響應(yīng)消息,同時(shí),網(wǎng)絡(luò)控制器C2對本地已經(jīng)下發(fā)的轉(zhuǎn)發(fā)流表進(jìn)行回滾操作;步驟603,網(wǎng)絡(luò)控制器Cl接收到失敗的P2P路徑創(chuàng)建響應(yīng)消息,因?yàn)榫W(wǎng)絡(luò)控制器Cl為生成P2P路徑創(chuàng)建請求消息的節(jié)點(diǎn),所以網(wǎng)絡(luò)控制器Cl確定路徑創(chuàng)建失敗,則需要重新進(jìn)行路徑計(jì)算,同時(shí),網(wǎng)絡(luò)控制器Cl對本地已經(jīng)下發(fā)的轉(zhuǎn)發(fā)流表進(jìn)行回滾操作。步驟604,網(wǎng)絡(luò)控制器C2收到路徑{src,dst}上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器C3發(fā)送的成功的P2P路徑創(chuàng)建響應(yīng)消息;步驟605,網(wǎng)絡(luò)控制器C2不是生成P2P路徑創(chuàng)建請求消息的節(jié)點(diǎn),網(wǎng)絡(luò)控制器C2判斷本地路徑創(chuàng)建是否成功,若成功,執(zhí)行步驟606 ;若失敗,執(zhí)行步驟607。步驟606,網(wǎng)絡(luò)控制器C2向上一個(gè)網(wǎng)絡(luò)控制器Cl返回成功的P2P路徑創(chuàng)建響應(yīng)消息,后續(xù)的流程包括步驟6061,網(wǎng)絡(luò)控制器Cl是生成P2P路徑創(chuàng)建請求消息的節(jié)點(diǎn),在接收到成功的P2P路徑創(chuàng)建響應(yīng)消息時(shí),判斷本地路徑創(chuàng)建是否成功,若成功,執(zhí)行步驟6062,路徑創(chuàng)建成功;若失敗,執(zhí)行步驟6063,路徑創(chuàng)建失敗,需要重新進(jìn)行路徑計(jì)算,同時(shí),對本地已經(jīng)下發(fā)的轉(zhuǎn)發(fā)流表進(jìn)行回滾操作。步驟607 ;網(wǎng)絡(luò)控制器C2向上一個(gè)網(wǎng)絡(luò)控制器Cl返回失敗的P2P路徑創(chuàng)建響應(yīng)消息,同時(shí),對本地已經(jīng)下發(fā)的轉(zhuǎn)發(fā)流表進(jìn)行回滾操作,后續(xù)的流程包括步驟6071,因?yàn)榫W(wǎng)絡(luò)控制器Cl是生成P2P路徑創(chuàng)建請求消息的節(jié)點(diǎn)、即首節(jié)點(diǎn),在接收到失敗的P2P路徑創(chuàng)建響應(yīng)消息時(shí),不論本地路徑創(chuàng)建是否成功,均確定為路徑創(chuàng)建失敗,需要重新進(jìn)行路徑計(jì)算,同時(shí)對本地已經(jīng)下發(fā)的轉(zhuǎn)發(fā)流表進(jìn)行回滾操作。為了實(shí)現(xiàn)上述方法,圖1中所示各個(gè)部分執(zhí)行的操作為交換機(jī),用于與分布式對等網(wǎng)絡(luò)中指定的網(wǎng)絡(luò)控制器建立路由控制通道;網(wǎng)絡(luò)控制器,用于接收到路徑創(chuàng)建請求時(shí)作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器進(jìn)行路徑計(jì)算,生成P2P路徑創(chuàng)建請求消息,并沿路徑轉(zhuǎn)發(fā)P2P路徑創(chuàng)建請求消息;還用于接收到P2P路徑創(chuàng)建請求消息時(shí),向自身管理的交換機(jī)下發(fā)P2P路徑創(chuàng)建請求消息中攜帶的轉(zhuǎn)發(fā)流表,完成本地路徑創(chuàng)建;還用于作為路徑上的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后,沿路徑轉(zhuǎn)發(fā)P2P路徑創(chuàng)建請求消息;還用于,作為路徑上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后沿相反路徑返回P2P路徑創(chuàng)建響應(yīng)消息;還用于作為路徑上的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息時(shí),結(jié)合本地路徑創(chuàng)建結(jié)果,更新P2P路徑創(chuàng)建響應(yīng)消息,并沿相反路徑轉(zhuǎn)發(fā)更新后的P2P路徑創(chuàng)建響應(yīng)消息;還用于作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息后,結(jié)合本地路徑創(chuàng)建結(jié)果,確定路徑是否創(chuàng)建成功。引導(dǎo)服務(wù)器,用于向交換機(jī)指定的網(wǎng)絡(luò)控制器列表;或者,將交換機(jī)引導(dǎo)到任意的網(wǎng)絡(luò)控制器;相應(yīng)的,交換機(jī),還用于與引導(dǎo)服務(wù)器直接返回的指定的網(wǎng)絡(luò)控制器列表中的網(wǎng)絡(luò)控制器建立路由控制通道;或者,根據(jù)任意的網(wǎng)絡(luò)控制器返回的信息重定向到指定的網(wǎng)絡(luò)控制器、并與該指定的網(wǎng) 絡(luò)控制器建立路由控制通道。網(wǎng)絡(luò)控制器,還用于作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器生成P2P路徑創(chuàng)建請求消息后,向自身管理的交換機(jī)下發(fā)P2P路徑創(chuàng)建請求消息中攜帶的轉(zhuǎn)發(fā)流表。網(wǎng)絡(luò)控制器,還用于作為末節(jié)點(diǎn)網(wǎng)絡(luò)控制器,若本地路徑創(chuàng)建成功,沿相反路徑返回成功的P2P路徑創(chuàng)建響應(yīng)消息;若本地路徑創(chuàng)建失敗,沿相反路徑返回失敗的P2P路徑創(chuàng)建響應(yīng)消息。網(wǎng)絡(luò)控制器,還用于作為中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息時(shí),若本地路徑創(chuàng)建成功、且接收到的為成功的P2P路徑創(chuàng)建響應(yīng)消息,則沿相反路徑轉(zhuǎn)發(fā)更新后的、成功的P2P路徑創(chuàng)建響應(yīng)消息;若本地路徑創(chuàng)建成功、且接收到的為失敗的P2P路徑創(chuàng)建響應(yīng)消息,則沿相反路徑轉(zhuǎn)發(fā)更新后的、失敗的P2P路徑創(chuàng)建響應(yīng)消息;若本地路徑創(chuàng)建失敗,且接收到的為失敗或成功的P2P路徑創(chuàng)建響應(yīng)消息,則沿相反路徑轉(zhuǎn)發(fā)更新后的、失敗的P2P路徑創(chuàng)建響應(yīng)消息。網(wǎng)絡(luò)控制器,還用于作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息后,若接收到的為成功的P2P路徑創(chuàng)建響應(yīng)消息、且本地路徑創(chuàng)建成功時(shí),確認(rèn)路徑創(chuàng)建成功;若接收到的為失敗的P2P路徑創(chuàng)建響應(yīng)消息或者本地路徑創(chuàng)建失敗時(shí),確認(rèn)路徑創(chuàng)建失敗,并重新進(jìn)行路徑計(jì)算。網(wǎng)絡(luò)控制器,還用于在接收到P2P路徑創(chuàng)建響應(yīng)消息后,若接收到為失敗的P2P路徑創(chuàng)建響應(yīng)消息或者本地路徑創(chuàng)建失敗時(shí),對本地已下發(fā)的轉(zhuǎn)發(fā)流表進(jìn)行回滾操作。
具體的,本發(fā)明實(shí)施例中網(wǎng)絡(luò)控制器的結(jié)構(gòu)如圖7所示,主要功能模塊包括路由控制協(xié)議模塊701、路由控制與下發(fā)模塊702、分布式處理模塊703、分布式路由協(xié)議模塊704和信息存儲模塊705,其中路由控制協(xié)議模塊701,主要負(fù)責(zé)網(wǎng)絡(luò)控制器與交換機(jī)之間的路由控制通道的建立與維護(hù),以及網(wǎng)絡(luò)控制器和交換機(jī)之間的信息傳遞。例如在處理交換機(jī)的路由控制通道的建立請求時(shí),若交換機(jī)標(biāo)識與網(wǎng)絡(luò)控制器標(biāo)識的對應(yīng)關(guān)系不符合分布式算法時(shí),則通過路由控制與下發(fā)模塊702向分布式處理模塊703查詢管理所述交換機(jī)的網(wǎng)絡(luò)控制器列表,并通過重定向響應(yīng)將該網(wǎng)絡(luò)控制器列表返回給交換機(jī)。網(wǎng)絡(luò)控制器和交換機(jī)之間的交互信息包括通信安全驗(yàn)證、交換機(jī)信息上報(bào)、交換機(jī)基本配置功能、交換機(jī)數(shù)據(jù)報(bào)文上報(bào)、交換機(jī)流表的下發(fā)與管理等。路由控制與下發(fā)模塊702,負(fù)責(zé)執(zhí)行路徑計(jì)算和轉(zhuǎn)發(fā)流表的下發(fā)、回滾等操作。對網(wǎng)絡(luò)拓?fù)渥兓录蛴脩魯?shù)據(jù)的轉(zhuǎn)發(fā)請求,路由控制與下發(fā)模塊702根據(jù)信息存儲模塊705中的網(wǎng)絡(luò)拓?fù)浜?或主機(jī)位置信息,進(jìn)行路徑計(jì)算,并與分布式處理模塊703交互生成P2P路徑創(chuàng)建請求消息。對來自分布式處理模塊703的P2P路徑創(chuàng)建請求消息,路由控制與下發(fā)模塊702向本節(jié)點(diǎn)負(fù)責(zé)的交換機(jī)通過路由控制協(xié)議模塊701下發(fā)相關(guān)轉(zhuǎn)發(fā)流表。對來自分布式處理模塊703的P2P路徑創(chuàng)建響應(yīng)消息,若為失敗,路由控制與下發(fā)模塊702向本節(jié)點(diǎn)負(fù)責(zé)的交換機(jī)通過路由控制協(xié)議模塊701刪除下發(fā)的轉(zhuǎn)發(fā)流表、即回滾操作。具體的路由控制與下發(fā)模塊702在·首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到路徑創(chuàng)建請求時(shí)進(jìn)行路徑計(jì)算,得到路徑信息,并提供給分布式處理模塊703.;還用于將分布式處理模塊703提供的轉(zhuǎn)發(fā)流表通過路由控制協(xié)議模塊701下發(fā)給對應(yīng)的交換機(jī),完成本地路徑創(chuàng)建,并將本地路徑創(chuàng)建結(jié)果提供給分布式處理模塊703。分布式處理模塊703,負(fù)責(zé)分布式對等網(wǎng)絡(luò)的業(yè)務(wù)處理,如P2P路徑創(chuàng)建請求消息的處理。當(dāng)進(jìn)行路徑創(chuàng)建時(shí),根據(jù)路由控制與下發(fā)模塊702提供的路徑信息,生成P2P路徑創(chuàng)建請求消息;處理P2P路徑創(chuàng)建請求消息時(shí),將轉(zhuǎn)發(fā)流表提供給路由控制與下發(fā)模塊702進(jìn)行下發(fā);處理P2P路徑創(chuàng)建響應(yīng)消息是,對于失敗響應(yīng),通知路由控制與下發(fā)模塊702將對下發(fā)的轉(zhuǎn)發(fā)流表執(zhí)行回滾操作。具體的分布式處理模塊703根據(jù)路由控制與下發(fā)模塊702提供的路徑信息生成P2P路徑創(chuàng)建請求消息,提供給分布式路由協(xié)議模塊704進(jìn)行轉(zhuǎn)發(fā);還用于根據(jù)路由控制與下發(fā)模塊702提供的本地路徑創(chuàng)建結(jié)果生成P2P路徑創(chuàng)建響應(yīng)消息,提供給分布式路由協(xié)議模塊704進(jìn)行轉(zhuǎn)發(fā);還用于接收分布式路由協(xié)議模塊704提供的P2P路徑創(chuàng)建請求消息,并將其中攜帶的轉(zhuǎn)發(fā)流表提供給路由控制與下發(fā)模塊703 ;還用于接收分布式路由協(xié)議模塊704提供的P2P路徑創(chuàng)建響應(yīng)消息,并根據(jù)路由控制與下發(fā)模塊702提供的本地路徑創(chuàng)建結(jié)果對接收的P2P路徑創(chuàng)建響應(yīng)消息進(jìn)行更新后,提供給分布式路由協(xié)議模塊704進(jìn)行轉(zhuǎn)發(fā);還用于根據(jù)路由控制與下發(fā)模塊702提供的本地路徑創(chuàng)建結(jié)果和分布式路由協(xié)議模塊704提供的P2P路徑創(chuàng)建響應(yīng)消息,確定路徑是否創(chuàng)建成功;分布式路由協(xié)議模塊704,負(fù)責(zé)與其它網(wǎng)絡(luò)控制器進(jìn)行消息交互,包括分布式路由表的維護(hù)、P2P路徑創(chuàng)建請求消息和P2P路徑創(chuàng)建響應(yīng)消息的路由等。信息存儲模塊,負(fù)責(zé)網(wǎng)絡(luò)控制器上相關(guān)數(shù)據(jù)的存儲,主要包括本節(jié)點(diǎn)管理的交換機(jī)狀態(tài)及對應(yīng)的轉(zhuǎn)發(fā)流表,以及根據(jù)分布式算法本節(jié)點(diǎn)負(fù)責(zé)管理的主機(jī)位置數(shù)據(jù)、全局網(wǎng)絡(luò)拓?fù)鋽?shù)據(jù)的存儲等。
具體的,本發(fā)明實(shí)施例中交換機(jī)的結(jié)構(gòu)如圖8所示,主要功能模塊包括路由控制協(xié)議模塊801、交換機(jī)控制模塊802和報(bào)文轉(zhuǎn)發(fā)功能模塊803。其中路由控制協(xié)議模塊801,負(fù)責(zé)網(wǎng)絡(luò)控制器與交換機(jī)之間的路由控制通道的建立與維護(hù),以及網(wǎng)絡(luò)控制器和交換機(jī)之間的信息傳遞。在向網(wǎng)絡(luò)控制器發(fā)送路由控制通道的建立請求時(shí),對于網(wǎng)絡(luò)控制器返回的重定向響應(yīng),可以向新的網(wǎng)絡(luò)控制器重新發(fā)起路由控制通道建立請求。網(wǎng)絡(luò)控制器和交換機(jī)之間的交互信息包括通信安全驗(yàn)證、交換機(jī)信息上報(bào)、交換機(jī)基本配置功能、交換機(jī)數(shù)據(jù)報(bào)文上報(bào)、交換機(jī)流表的下發(fā)與管理等。交換機(jī)控制模塊802,負(fù)責(zé)將相關(guān)的轉(zhuǎn)發(fā)面數(shù)據(jù)報(bào)文通過路由控制協(xié)議模塊801上報(bào)給網(wǎng)絡(luò)控制器,將網(wǎng)絡(luò)控制器下發(fā)的轉(zhuǎn)發(fā)流表映射為報(bào)文轉(zhuǎn)發(fā)功能模塊803的硬件要求的格式,下發(fā)到報(bào)文轉(zhuǎn)發(fā)功能模塊803。報(bào)文轉(zhuǎn)發(fā)功能模塊803,負(fù)責(zé)維護(hù)硬件上的轉(zhuǎn)發(fā)流表,并對數(shù)據(jù)報(bào)文進(jìn)行匹配處理與轉(zhuǎn)發(fā)。以上所述,僅 為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法,其特征在于,該方法包括 交換機(jī)與分布式對等網(wǎng)絡(luò)中指定的網(wǎng)絡(luò)控制器建立路由控制通道; 接收到路徑創(chuàng)建請求的網(wǎng)絡(luò)控制器作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器進(jìn)行路徑計(jì)算,生成P2P路徑創(chuàng)建請求消息,并沿路徑轉(zhuǎn)發(fā)所述P2P路徑創(chuàng)建請求消息; 所述路徑上接收到所述P2P路徑創(chuàng)建請求消息的網(wǎng)絡(luò)控制器,向自身管理的交換機(jī)下發(fā)所述P2P路徑創(chuàng)建請求消息中攜帶的轉(zhuǎn)發(fā)流表,完成各自的本地路徑創(chuàng)建;其中,所述路徑上的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后,沿所述路徑轉(zhuǎn)發(fā)所述P2P路徑創(chuàng)建請求消息,所述路徑上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后沿相反路徑返回P2P路徑創(chuàng)建響應(yīng)消息; 接收到所述P2P路徑創(chuàng)建響應(yīng)消息的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器,結(jié)合本地路徑創(chuàng)建結(jié)果,更新所述P2P路徑創(chuàng)建響應(yīng)消息,并沿所述相反路徑轉(zhuǎn)發(fā)更新后的P2P路徑創(chuàng)建響應(yīng)消息;首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息后,結(jié)合本地路徑創(chuàng)建結(jié)果,確定所述路徑是否創(chuàng)建成功。
2.根據(jù)權(quán)利要求1所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法,其特征在于,所述交換機(jī)與分布式對等網(wǎng)絡(luò)中指定的網(wǎng)絡(luò)控制器建立路由控制通道,包括 交換機(jī)與引導(dǎo)服務(wù)器直接返回的指定的網(wǎng)絡(luò)控制器列表中的網(wǎng)絡(luò)控制器建立路由控制通道;或者,引導(dǎo)服務(wù)器將交換機(jī)引導(dǎo)到任意的網(wǎng)絡(luò)控制器,交換機(jī)根據(jù)所述任意的網(wǎng)絡(luò)控制器返回的信息重定向到指定的網(wǎng)絡(luò)控制器、并與該指定的網(wǎng)絡(luò)控制器建立路由控制通道。
3.根據(jù)權(quán)利要求2所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法,其特征在于,所述路由控制通道為OpenFlow協(xié)議通道、SNMP通道或DIAMATER通道。
4.根據(jù)權(quán)利要求1所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法,其特征在于,所述路徑計(jì)算得到路徑上網(wǎng)絡(luò)控制器的順序和路徑上交換機(jī)的順序。
5.根據(jù)權(quán)利要求4所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法,其特征在于, 所述P2P路徑創(chuàng)建請求消息的目的節(jié)點(diǎn)為所述路徑上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器; 所述P2P路徑創(chuàng)建請求消息的路由路徑頭部由所述路徑上除了末節(jié)點(diǎn)網(wǎng)絡(luò)控制器之外的其他網(wǎng)絡(luò)控制器的標(biāo)識組成; 所述P2P路徑創(chuàng)建請求消息的消息體由所述路徑上向各個(gè)交換機(jī)下發(fā)的轉(zhuǎn)發(fā)流表組成。
6.根據(jù)權(quán)利要求5所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法,其特征在于, 所述其他網(wǎng)絡(luò)控制器的標(biāo)識按所述路徑上的所述其他網(wǎng)絡(luò)控制器的順序排列; 所述向各個(gè)交換機(jī)下發(fā)的轉(zhuǎn)發(fā)流表按照所述路徑上的交換機(jī)的順序排列。
7.根據(jù)權(quán)利要求1至6任一所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法,其特征在于,所述首節(jié)點(diǎn)網(wǎng)絡(luò)控制器生成P2P路徑創(chuàng)建請求消息后,該方法還包括所述首節(jié)點(diǎn)網(wǎng)絡(luò)控制器向自身管理的交換機(jī)下發(fā)所述P2P路徑創(chuàng)建請求消息中攜帶的轉(zhuǎn)發(fā)流表。
8.根據(jù)權(quán)利要求7所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法,其特征在于,所述路徑上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后沿相反路徑返回P2P路徑創(chuàng)建響應(yīng)消息,為 若本地路徑創(chuàng)建成功,所述末節(jié)點(diǎn)網(wǎng)絡(luò)控制器返回成功的P2P路徑創(chuàng)建響應(yīng)消息;若本地路徑創(chuàng)建失敗,所述末節(jié)點(diǎn)網(wǎng)絡(luò)控制器返回失敗的P2P路徑創(chuàng)建響應(yīng)消息。
9.根據(jù)權(quán)利要求8所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法,其特征在于,接收到所述P2P路徑創(chuàng)建響應(yīng)消息的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器,結(jié)合本地路徑創(chuàng)建結(jié)果,更新所述P2P路徑創(chuàng)建響應(yīng)消息,并沿所述相反路徑轉(zhuǎn)發(fā)更新后的P2P路徑創(chuàng)建響應(yīng)消息,為 若本地路徑創(chuàng)建成功、且接收到的為成功的P2P路徑創(chuàng)建響應(yīng)消息,則沿所述相反路徑轉(zhuǎn)發(fā)更新后的、成功的P2P路徑創(chuàng)建響應(yīng)消息; 若本地路徑創(chuàng)建成功、且接收到的為失敗的P2P路徑創(chuàng)建響應(yīng)消息,則沿所述相反路徑轉(zhuǎn)發(fā)更新后的、失敗的P2P路徑創(chuàng)建響應(yīng)消息; 若本地路徑創(chuàng)建失敗,且接收到的為失敗或成功的P2P路徑創(chuàng)建響應(yīng)消息,則沿所述相反路徑轉(zhuǎn)發(fā)更新后的、失敗的P2P路徑創(chuàng)建響應(yīng)消息。
10.根據(jù)權(quán)利要求9所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法,其特征在于,首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息后,結(jié)合本地路徑創(chuàng)建結(jié)果,確定所述路徑是否創(chuàng)建成功,為 首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到成功的P2P路徑創(chuàng)建響應(yīng)消息、且本地路徑創(chuàng)建成功時(shí),確認(rèn)所述路徑創(chuàng)建成功; 首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到失敗的P2P路徑創(chuàng)建響應(yīng)消息或者本地路徑創(chuàng)建失敗時(shí),確認(rèn)所述路徑創(chuàng)建失敗,并重新進(jìn)行路徑計(jì)算。
11.根據(jù)權(quán)利要求10所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法,其特征在于,所述路徑上的網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息后該方法還包括若接收到為失敗的P2P路徑創(chuàng)建響應(yīng)消息或者本地路徑創(chuàng)建失敗時(shí),網(wǎng)絡(luò)控制器對本地已下發(fā)的轉(zhuǎn)發(fā)流表進(jìn)行回滾操作。
12.—種基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)系統(tǒng),其特征在于,該系統(tǒng)包括交換機(jī)和網(wǎng)絡(luò)控制器,其中 所述交換機(jī),用于與分布式對等網(wǎng)絡(luò)中指定的網(wǎng)絡(luò)控制器建立路由控制通道; 所述網(wǎng)絡(luò)控制器,用于接收到路徑創(chuàng)建請求時(shí)作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器進(jìn)行路徑計(jì)算,生成P2P路徑創(chuàng)建請求消息,并沿路徑轉(zhuǎn)發(fā)所述P2P路徑創(chuàng)建請求消息;還用于接收到所述P2P路徑創(chuàng)建請求消息時(shí),向自身管理的交換機(jī)下發(fā)所述P2P路徑創(chuàng)建請求消息中攜帶的轉(zhuǎn)發(fā)流表,完成本地路徑創(chuàng)建;還用于作為所述路徑上的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后,沿所述路徑轉(zhuǎn)發(fā)所述P2P路徑創(chuàng)建請求消息;還用于,作為所述路徑上的末節(jié)點(diǎn)網(wǎng)絡(luò)控制器在完成本地路徑創(chuàng)建后沿相反路徑返回P2P路徑創(chuàng)建響應(yīng)消息;還用于作為路徑上的中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到所述P2P路徑創(chuàng)建響應(yīng)消息時(shí),結(jié)合本地路徑創(chuàng)建結(jié)果,更新所述P2P路徑創(chuàng)建響應(yīng)消息,并沿所述相反路徑轉(zhuǎn)發(fā)更新后的P2P路徑創(chuàng)建響應(yīng)消息;還用于作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息后,結(jié)合本地路徑創(chuàng)建結(jié)果,確定所述路徑是否創(chuàng)建成功。
13.根據(jù)權(quán)利要求12所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)系統(tǒng),其特征在于,該系統(tǒng)還包括引導(dǎo)服務(wù)器,用于向所述交換機(jī)指定的網(wǎng)絡(luò)控制器列表;或者,將所述交換機(jī)引導(dǎo)到任意的網(wǎng)絡(luò)控制器; 相應(yīng)的,所述交換機(jī),還用于與所述引導(dǎo)服務(wù)器直接返回的指定的網(wǎng)絡(luò)控制器列表中的網(wǎng)絡(luò)控制器建立路由控制通道;或者,根據(jù)所述任意的網(wǎng)絡(luò)控制器返回的信息重定向到指定的網(wǎng)絡(luò)控制器、并與該指定的網(wǎng)絡(luò)控制器建立路由控制通道。
14.根據(jù)權(quán)利要求12或13所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)系統(tǒng),其特征在于,所述網(wǎng)絡(luò)控制器,還用于作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器生成P2P路徑創(chuàng)建請求消息后,向自身管理的交換機(jī)下發(fā)所述P2P路徑創(chuàng)建請求消息中攜帶的轉(zhuǎn)發(fā)流表。
15.根據(jù)權(quán)利要求14所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)系統(tǒng),其特征在于, 所述網(wǎng)絡(luò)控制器,還用于作為末節(jié)點(diǎn)網(wǎng)絡(luò)控制器,若本地路徑創(chuàng)建成功,沿相反路徑返回成功的P2P路徑創(chuàng)建響應(yīng)消息;若本地路徑創(chuàng)建失敗,沿相反路徑返回失敗的P2P路徑創(chuàng)建響應(yīng)消息。
16.根據(jù)權(quán)利要求15所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)系統(tǒng),其特征在于, 所述網(wǎng)絡(luò)控制器,還用于作為中間節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到所述P2P路徑創(chuàng)建響應(yīng)消息時(shí),若本地路徑創(chuàng)建成功、且接收到的為成功的P2P路徑創(chuàng)建響應(yīng)消息,則沿所述相反路徑轉(zhuǎn)發(fā)更新后的、成功的P2P路徑創(chuàng)建響應(yīng)消息;若本地路徑創(chuàng)建成功、且接收到的為失敗的P2P路徑創(chuàng)建響應(yīng)消息,則沿所述相反路徑轉(zhuǎn)發(fā)更新后的、失敗的P2P路徑創(chuàng)建響應(yīng)消息;若本地路徑創(chuàng)建失敗,且接收到的為失敗或成功的P2P路徑創(chuàng)建響應(yīng)消息,則沿所述相反路徑轉(zhuǎn)發(fā)更新后的、失敗的P2P路徑創(chuàng)建響應(yīng)消息。
17.根據(jù)權(quán)利要求16所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)系統(tǒng),其特征在于, 所述網(wǎng)絡(luò)控制器,還用于作為首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到P2P路徑創(chuàng)建響應(yīng)消息后,若接收到的為成功的P2P路徑創(chuàng)建響應(yīng)消息、且本地路徑創(chuàng)建成功時(shí),確認(rèn)所述路徑創(chuàng)建成功;若接收到的為失敗的P2P路徑創(chuàng)建響應(yīng)消息或者本地路徑創(chuàng)建失敗時(shí),確認(rèn)所述路徑創(chuàng)建失敗,并重新進(jìn)行路徑計(jì)算。
18.根據(jù)權(quán)利要求17所述基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)系統(tǒng),其特征在于, 所述網(wǎng)絡(luò)控制器,還用于在接收到P2P路徑創(chuàng)建響應(yīng)消息后,若接收到為失敗的P2P路徑創(chuàng)建響應(yīng)消息或者本地路徑創(chuàng)建失敗時(shí),對本地已下發(fā)的轉(zhuǎn)發(fā)流表進(jìn)行回滾操作。
19.一種網(wǎng)絡(luò)控制器,其特征在于,包括路由控制協(xié)議模塊、分布式處理模塊、路由控制與下發(fā)模塊和分布式路由協(xié)議模塊,其中 所述路由控制協(xié)議模塊,用于負(fù)責(zé)網(wǎng)絡(luò)控制器與交換機(jī)之間路由控制通道的建立以及網(wǎng)絡(luò)控制器與交換機(jī)之間信息的交互; 所述分布式處理模塊,用于根據(jù)所述路由控制與下發(fā)模塊提供的路徑信息生成P2P路徑創(chuàng)建請求消息,提供給所述分布式路由協(xié)議模塊進(jìn)行轉(zhuǎn)發(fā);還用于根據(jù)所述路由控制與下發(fā)模塊提供的本地路徑創(chuàng)建結(jié)果生成P2P路徑創(chuàng)建響應(yīng)消息,提供給分布式路由協(xié)議模塊進(jìn)行轉(zhuǎn)發(fā);還用于接收所述分布式路由協(xié)議模塊提供的P2P路徑創(chuàng)建請求消息,并將其中攜帶的轉(zhuǎn)發(fā)流表提供給所述路由控制與下發(fā)模塊;還用于接收所述分布式路由協(xié)議模塊提供的P2P路徑創(chuàng)建響應(yīng)消息,并根據(jù)所述路由控制與下發(fā)模塊提供的本地路徑創(chuàng)建結(jié)果對接收的P2P路徑創(chuàng)建響應(yīng)消息進(jìn)行更新后,提供給所述分布式路由協(xié)議模塊進(jìn)行轉(zhuǎn)發(fā);還用于根據(jù)路由控制與下發(fā)模塊提供的本地路徑創(chuàng)建結(jié)果和所述分布式路由協(xié)議模塊提供的P2P路徑創(chuàng)建響應(yīng)消息,確定路徑是否創(chuàng)建成功; 路由控制與下發(fā)模塊,用于在首節(jié)點(diǎn)網(wǎng)絡(luò)控制器接收到路徑創(chuàng)建請求時(shí)進(jìn)行路徑計(jì)算,得到路徑信息,并提供給所述分布式處理模塊;還用于將所述分布式處理模塊提供的轉(zhuǎn)發(fā)流表通過所述路由控制協(xié)議模塊下發(fā)給對應(yīng)的交換機(jī),完成本地路徑創(chuàng)建,并將本地路徑創(chuàng)建結(jié)果提供給所述分布式處理模塊; 所述分布式路由協(xié)議模塊,用于沿路徑轉(zhuǎn)發(fā)或接收P2P路徑創(chuàng)建請求消息;還用于相反路徑轉(zhuǎn)發(fā)或接收所述P2P路徑創(chuàng)建響應(yīng)消息;還用于將接收到的P2P路徑創(chuàng)建請求消息或P2P路徑創(chuàng)建響應(yīng)消息提供給所述分布式處理模塊。
20.根據(jù)權(quán)利要求19所述網(wǎng)絡(luò)控制器,其特征在于, 所述分布式處理模塊,還用于確定路徑創(chuàng)建失敗時(shí),通知所述路由控制與下發(fā)模塊執(zhí)行轉(zhuǎn)發(fā)流表回滾操作; 所述路由控制與下發(fā)模塊,還用于通過所述路由控制協(xié)議模塊,對下發(fā)的轉(zhuǎn)發(fā)流表執(zhí)行回滾操作。
全文摘要
本發(fā)明公開了一種基于DHT的控制網(wǎng)絡(luò)實(shí)現(xiàn)方法和系統(tǒng),包括交換機(jī)與分布式對等網(wǎng)絡(luò)中指定的網(wǎng)絡(luò)控制器建立路由控制通道;首節(jié)點(diǎn)網(wǎng)絡(luò)控制器生成P2P路徑創(chuàng)建請求消息,并沿路徑轉(zhuǎn)發(fā),直到末節(jié)點(diǎn)網(wǎng)絡(luò)控制器;路徑上的每個(gè)網(wǎng)絡(luò)控制器根據(jù)P2P路徑創(chuàng)建請求消息,向自身管理的交換機(jī)下發(fā)P2P路徑創(chuàng)建請求消息中攜帶的轉(zhuǎn)發(fā)流表,完成各自的本地路徑創(chuàng)建;首節(jié)點(diǎn)網(wǎng)絡(luò)控制器根據(jù)接收到的P2P路徑創(chuàng)建響應(yīng)并結(jié)合本地路徑創(chuàng)建結(jié)果確定路徑是否創(chuàng)建成功。本發(fā)明還公開了一種網(wǎng)絡(luò)控制器。通過本發(fā)明使得網(wǎng)絡(luò)控制器網(wǎng)絡(luò)實(shí)現(xiàn)自組織、交換機(jī)自動(dòng)接入,同時(shí)使得網(wǎng)絡(luò)路徑的計(jì)算與下發(fā)容易管理。
文檔編號H04L29/08GK103051539SQ20121054359
公開日2013年4月17日 申請日期2012年12月14日 優(yōu)先權(quán)日2012年12月14日
發(fā)明者胡永生 申請人:中興通訊股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1
闸北区| 安达市| 汝阳县| 集贤县| 张家界市| 邢台市| 榆林市| 莱西市| 马山县| 台北县| 肃北| 历史| 秦皇岛市| 恭城| 麻栗坡县| 鲜城| 邳州市| 麻江县| 万年县| 赤城县| 通河县| 施甸县| 壶关县| 利津县| 沁源县| 奎屯市| 浪卡子县| 酒泉市| 文山县| 金堂县| 德化县| 左贡县| 黄梅县| 景谷| 二连浩特市| 大同县| 延川县| 三原县| 红河县| 淮北市| 晋江市|