專利名稱:基于開放流協(xié)議的控制面設(shè)備的發(fā)現(xiàn)處理方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域,具體而言,涉及一種基于開放流(OpenFlow,簡稱為0F)協(xié)議的控制面設(shè)備的發(fā)現(xiàn)處理方法及裝置。
背景技術(shù):
軟件定義網(wǎng)絡(luò)(Software Defined Network,簡稱為SDN)是一種新型的網(wǎng)絡(luò)架構(gòu),它的設(shè)計理念是將網(wǎng)絡(luò)的控制平面與數(shù)據(jù)轉(zhuǎn)發(fā)平面進(jìn)行分離,并實(shí)現(xiàn)可編程化控制。通常將SDN網(wǎng)絡(luò)架構(gòu)抽象定義成三層:第一層是轉(zhuǎn)發(fā)面實(shí)體,包括實(shí)現(xiàn)這種轉(zhuǎn)發(fā)功能的各種軟硬件組件;第二層是針對第一層轉(zhuǎn)發(fā)實(shí)體進(jìn)行管理和控制的實(shí)體,第三層是基于前兩層基礎(chǔ)網(wǎng)絡(luò)的應(yīng)用和服務(wù)。前兩層之間的接口稱之為SDN的南向接口,目前OpenFlow協(xié)議是南向接口的主流協(xié)議,它以流表為基礎(chǔ),控制細(xì)顆粒度的轉(zhuǎn)發(fā)表及其行為,具有很強(qiáng)的表達(dá)能力,適應(yīng)能力強(qiáng)。OpenFlow協(xié)議是一種交換技術(shù),該技術(shù)最早由斯坦福大學(xué)提出,旨在基于現(xiàn)有傳輸控制協(xié)議(Transfer Control Protocol,簡稱為 TCP)/互聯(lián)網(wǎng)協(xié)議(Internet Protocol,簡稱為IP)技術(shù)條件,以創(chuàng)新的網(wǎng)絡(luò)互聯(lián)理念解決當(dāng)前網(wǎng)絡(luò)的種種弊病,OpenFlow協(xié)議的核心思想是將由交換機(jī)/路由器控制的數(shù)據(jù)包轉(zhuǎn)發(fā)過程,演化為由OpenFlow轉(zhuǎn)發(fā)面設(shè)備(例如OF Switch,也包括其他支持OpenFlow/OF-Config協(xié)議和流表機(jī)制的轉(zhuǎn)發(fā)面設(shè)備,例如AP、路由器)和控制服務(wù)器(例如OF Controller)分別完成的獨(dú)立過程,進(jìn)而實(shí)現(xiàn)數(shù)據(jù)轉(zhuǎn)發(fā)和路由控制的分離。在傳統(tǒng)網(wǎng)絡(luò)中數(shù)據(jù)包的流向是人為指定的,雖然交換機(jī)、路由器擁有控制權(quán),卻沒有數(shù)據(jù)流的概念,所以只能進(jìn)行數(shù)據(jù)包級別的交換。然而在OpenFlow網(wǎng)絡(luò)中,控制服務(wù)器將取代路由器,由控制服務(wù)器(OF Controller)通過預(yù)先規(guī)定好的接口操作來決策所有數(shù)據(jù)包在網(wǎng)絡(luò)中傳輸路徑,從而達(dá)到控制數(shù)據(jù)轉(zhuǎn)發(fā)的目的。OpenFlow協(xié)議運(yùn)行在安全傳輸層協(xié)議(Transport Layer Security Protocol,簡稱為TLS)和無保護(hù)TCP連接之上,如果OpenFlow轉(zhuǎn)發(fā)面設(shè)備在轉(zhuǎn)發(fā)數(shù)據(jù)包時,遇到未指定轉(zhuǎn)發(fā)路徑的數(shù)據(jù)包,則由該設(shè)備發(fā)送查詢消息至與其建鏈的OpenFlow控制器,由該控制器決策該數(shù)據(jù)包的轉(zhuǎn)發(fā)路徑。這樣就要求OpenFlow轉(zhuǎn)發(fā)面設(shè)備和Openflow控制器必須在OpenFlow轉(zhuǎn)發(fā)面設(shè)備轉(zhuǎn)發(fā)報文前建立鏈接。OpenFlow協(xié)議V1.3版本開始分離出Of-Config協(xié)議,將對SDN轉(zhuǎn)發(fā)面設(shè)備配置管理方面的功能剝離出來,形成單獨(dú)的通道,Of-Config協(xié)議可以運(yùn)行在TCP、安全套接層(Secure Socket Layer,簡稱為SSL)協(xié)議、用戶數(shù)據(jù)協(xié)議(User Date Protocol,簡稱為UDP)或數(shù)據(jù)報文安全傳輸層(Datagram Transport Layer Security,簡稱為DTLS)協(xié)議等協(xié)議上。OF配置點(diǎn)(OF Configuration Point)設(shè)備配置OpenFlow轉(zhuǎn)發(fā)面設(shè)備時,可以為其配置OpenFlow控制器的地址,但這又要求OpenFlow轉(zhuǎn)發(fā)面設(shè)備能有效的動態(tài)發(fā)現(xiàn)Of-Config管理配置點(diǎn)。目前OpenFlow協(xié)議族沒有定義相應(yīng)的發(fā)現(xiàn)機(jī)制,OpenFlow轉(zhuǎn)發(fā)面設(shè)備只能通過靜態(tài)配置發(fā)現(xiàn)OpenFlow控制面設(shè)備(包括OpenFlow Controller和OpenFlowConfiguration Point設(shè)備),該方法對于OpenFlow轉(zhuǎn)發(fā)面設(shè)備發(fā)現(xiàn)OpenFlow控制面設(shè)備機(jī)制來說還是不夠完善,不便于運(yùn)行維護(hù)較大規(guī)模的OpenFlow網(wǎng)絡(luò),例如,在較大規(guī)模的OpenFlow網(wǎng)絡(luò)中,管理員需要規(guī)劃控制面設(shè)備對轉(zhuǎn)發(fā)面設(shè)備進(jìn)行管理控制的對應(yīng)關(guān)系,并在大量轉(zhuǎn)發(fā)面設(shè)備上配置其對應(yīng)的控制面設(shè)備的地址信息。一旦控制面設(shè)備發(fā)生故障,轉(zhuǎn)發(fā)面設(shè)備還不能自適應(yīng)調(diào)整,接入新的控制面設(shè)備。而且在根據(jù)不同物理設(shè)備部署不同業(yè)務(wù)或分域管理不同設(shè)備廠商設(shè)備的應(yīng)用場景下,配置更繁瑣。針對相關(guān)技術(shù)中的上述問題,目前尚未提出有效的解決方案。
發(fā)明內(nèi)容
針對相關(guān)技術(shù)中,尚無有效的解決方案可以讓轉(zhuǎn)發(fā)面設(shè)備自動發(fā)現(xiàn)控制面設(shè)備,本發(fā)明提供了一種基于OpenFlow協(xié)議的控制面設(shè)備的發(fā)現(xiàn)處理方法及裝置,以至少解決上述問題。根據(jù)本發(fā)明的一個方面,提供了一種基于OpenFlow協(xié)議的控制面設(shè)備的發(fā)現(xiàn)處理方法,包括:接收來自基于OpenFlow協(xié)議的轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息,其中,該標(biāo)識信息為轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息,上述標(biāo)識信息與管理信息數(shù)據(jù)庫(Management InformationBase,簡稱為MIB)中的控制面設(shè)備信息相對應(yīng);根據(jù)上述標(biāo)識信息在管理信息數(shù)據(jù)庫中匹配得到控制面設(shè)備信息;向轉(zhuǎn)發(fā)面設(shè)備發(fā)送上述控制面設(shè)備信息。優(yōu)選地,在接收上述標(biāo)識信息之前,包括:獲取SDN中預(yù)先分域后指定域中的各個控制面設(shè)備信息;將指定域中各個控制面設(shè)備信息存儲至管理信息數(shù)據(jù)庫。優(yōu)選地,上述標(biāo)識信息包括:轉(zhuǎn)發(fā)面設(shè)備所屬指定域的域名信息。優(yōu)選地,上述方法應(yīng)用于SDN中的動態(tài)主機(jī)配置協(xié)議(Dynamic Host ConfigureProtocol,簡稱為DHCP)設(shè)備。優(yōu)選地,向轉(zhuǎn)發(fā)面設(shè)備發(fā)送控制面設(shè)備信息包括:通過DHCP報文中的指定字段向轉(zhuǎn)發(fā)面設(shè)備發(fā)送控制面設(shè)備信息。優(yōu)選地,上述指定字段包括:選項(Option)字段。優(yōu)選地,接收來自基于OpenFlow協(xié)議的轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息時,還包括:接收轉(zhuǎn)發(fā)面設(shè)備的請求消息,其中,該請求消息用于請求DHCP設(shè)備為轉(zhuǎn)發(fā)面設(shè)備分配地址。優(yōu)選地,上述方法還包括:接收網(wǎng)絡(luò)管理系統(tǒng)(Network Management System,簡稱為WS)的查詢請求消息;在查詢請求消息的觸發(fā)下,通過WS將管理信息數(shù)據(jù)庫中的控制面設(shè)備信息發(fā)送至SDN中除DHCP設(shè)備之外的其它DHCP設(shè)備。根據(jù)本發(fā)明的另一個方面,提供了一種基于OpenFlow協(xié)議的控制面設(shè)備的發(fā)現(xiàn)處理裝置,包括:接收模塊,用于接收來自基于OpenFlow協(xié)議的轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息,其中,該標(biāo)識信息為所述轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息,上述標(biāo)識信息與管理信息數(shù)據(jù)庫中的控制面設(shè)備信息相對應(yīng);匹配模塊,用于根據(jù)上述標(biāo)識信息在管理信息數(shù)據(jù)庫中匹配得到控制面設(shè)備信息;發(fā)送模塊,用于向轉(zhuǎn)發(fā)面設(shè)備發(fā)送控制面設(shè)備信息。優(yōu)選地,上述裝置包括:獲取模塊,用于獲取軟件定義網(wǎng)絡(luò)(SDN)中預(yù)先分域后指定域中的各個控制面設(shè)備信息;存儲模塊,用于將指定域中各個控制面設(shè)備信息存儲至管理信息數(shù)據(jù)庫。通過本發(fā)明,采用根據(jù)轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息匹配得到控制面設(shè)備信息,并將該控制面設(shè)備信息發(fā)送至轉(zhuǎn)發(fā)面設(shè)備的技術(shù)手段,解決了相關(guān)技術(shù)中,尚無有效地讓轉(zhuǎn)發(fā)面設(shè)備自動發(fā)現(xiàn)控制面設(shè)備的技術(shù)問題,從而實(shí)現(xiàn)了轉(zhuǎn)發(fā)面設(shè)備對控制面設(shè)備的自動發(fā)現(xiàn),進(jìn)而可以實(shí)現(xiàn)轉(zhuǎn)發(fā)面設(shè)備可以對控制面設(shè)備的自適應(yīng)調(diào)整。
此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:圖1為根據(jù)本發(fā)明實(shí)施例1的基于OpenFlow協(xié)議的控制面設(shè)備的發(fā)現(xiàn)處理方法的流程圖;圖2為根據(jù)本發(fā)明實(shí)施例1的基于OpenFlow協(xié)議的控制面設(shè)備的發(fā)現(xiàn)處理裝置的結(jié)構(gòu)框圖;圖3為根據(jù)本發(fā)明實(shí)施例1的基于OpenFlow協(xié)議的控制面設(shè)備的發(fā)現(xiàn)處理裝置的另一結(jié)構(gòu)框圖;圖4為根據(jù)本發(fā)明實(shí)施例2的SDN網(wǎng)絡(luò)自動發(fā)現(xiàn)OpenFlow控制面設(shè)備的流程示意圖;圖5為根據(jù)本發(fā)明實(shí)施例3的SDN網(wǎng)絡(luò)自動發(fā)現(xiàn)OpenFlow控制面設(shè)備的流程示意圖;圖6為根據(jù)本發(fā)明實(shí)施例4的SDN網(wǎng)絡(luò)自動發(fā)現(xiàn)OpenFlow控制面設(shè)備的流程示意圖;圖7為根據(jù)本發(fā)明實(shí)施例5的SDN網(wǎng)絡(luò)自動發(fā)現(xiàn)OpenFlow控制面設(shè)備的流程示意圖;圖8為根據(jù)本發(fā)明實(shí)施例的OpenFlow設(shè)備上報設(shè)備信息的擴(kuò)展選項OptionA示意圖;圖9為根據(jù)本發(fā)明實(shí)施例的DHCPv4下發(fā)OpenFlow控制面設(shè)備信息給轉(zhuǎn)發(fā)面設(shè)備的擴(kuò)展選項OptionBl示意圖;圖10為根據(jù)本發(fā)明實(shí)施例的DHCPv6下發(fā)OpenFlow控制面設(shè)備信息給轉(zhuǎn)發(fā)面設(shè)備的擴(kuò)展選項0ptionB2示意圖。
具體實(shí)施例方式下文中將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本發(fā)明。需要說明的是,在不沖突的情況下,本申請中的實(shí)施例及實(shí)施例中的特征可以相互組合。實(shí)施例1圖1為根據(jù)本發(fā)明實(shí)施例1的基于OpenFlow協(xié)議的控制面設(shè)備的發(fā)現(xiàn)處理方法的流程圖。如圖1所示,該方法包括:步驟S102,接收來自基于OpenFlow協(xié)議的轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息,其中,該標(biāo)識信息為轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息,上述標(biāo)識信息與MIB中的控制面設(shè)備信息相對應(yīng);步驟S104,根據(jù)上述標(biāo)識信息在MIB中匹配得到上述控制面設(shè)備信息;步驟S106,向轉(zhuǎn)發(fā)面設(shè)備發(fā)送控制面設(shè)備信息。通過上述各個處理步驟,由于采用根據(jù)與控制面設(shè)備信息對應(yīng)的轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息來自動匹配得到上述控制面設(shè)備信息并發(fā)送給轉(zhuǎn)發(fā)面設(shè)備的技術(shù)手段,代替了采用靜態(tài)配置發(fā)現(xiàn)OpenFlow控制面設(shè)備的方式,因此,可以實(shí)現(xiàn)轉(zhuǎn)發(fā)面設(shè)備對控制面設(shè)備的自動發(fā)現(xiàn)。在本實(shí)施例中,為了便于對控制面設(shè)備的管理,可以對上述控制面設(shè)備信息進(jìn)行分域管理,具體地,在接收標(biāo)識信息之前,獲取SDN中預(yù)先分域后指定域中的各個控制面設(shè)備信息,將指定域中各個控制面設(shè)備信息存儲至管理信息數(shù)據(jù)庫。在對上述控制面設(shè)備信息進(jìn)行分域管理時,上述標(biāo)識信息可以包括但不限于:上述轉(zhuǎn)發(fā)面設(shè)備所屬上述指定域的域名信息。在本實(shí)施例中,上述方法可以但不限于應(yīng)用于SDN中的網(wǎng)絡(luò)設(shè)備。此時,可以通過DHCP報文中的指定字段向轉(zhuǎn)發(fā)面設(shè)備發(fā)送控制面設(shè)備信息。該指定字段包括但不限于:選項(Option)字段。在本實(shí)施例中,可以在接收來自基于OpenFlow協(xié)議的轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息時,接收轉(zhuǎn)發(fā)面設(shè)備的請求消息,其中,該請求消息用于請求DHCP (包括DHCPv4和DHCPv6)設(shè)備為轉(zhuǎn)發(fā)面設(shè)備分配地址。在本實(shí)施例中,為了實(shí)現(xiàn)跨DHCP設(shè)備管理網(wǎng)絡(luò)的發(fā)現(xiàn)機(jī)制,在本實(shí)施例中,還可以接收網(wǎng)絡(luò)管理系統(tǒng)匪S的查詢請求消息;在查詢請求消息的觸發(fā)下,通過WS將管理信息數(shù)據(jù)庫中的控制面設(shè)備信息發(fā)送至SDN中除上述DHCP設(shè)備之外的其它DHCP設(shè)備。在本實(shí)施例中還提供了一種基于OpenFlow協(xié)議的控制面設(shè)備的發(fā)現(xiàn)處理裝置,用于實(shí)現(xiàn)上述實(shí)施例及優(yōu)選實(shí)施方式,已經(jīng)進(jìn)行過說明的不再贅述,下面對該裝置中涉及到的模塊進(jìn)行說明。如以下所使用的,術(shù)語“模塊”可以實(shí)現(xiàn)預(yù)定功能的軟件和/或硬件的組合。盡管以下實(shí)施例所描述的裝置較佳地以軟件來實(shí)現(xiàn),但是硬件,或者軟件和硬件的組合的實(shí)現(xiàn)也是可能并被構(gòu)想的。圖2為根據(jù)本發(fā)明實(shí)施例1的基于OpenFlow協(xié)議的控制面設(shè)備的發(fā)現(xiàn)處理裝置的結(jié)構(gòu)框圖。如圖2所示,該裝置包括:接收模塊20,連接至匹配模塊22,用于接收來自基于OpenFlow協(xié)議的轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息,其中,該標(biāo)識信息為上述轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息,上述標(biāo)識信息與管理信息數(shù)據(jù)庫中的控制面設(shè)備信息相對應(yīng);匹配模塊22,連接至發(fā)送模塊24,用于根據(jù)上述標(biāo)識信息在管理信息數(shù)據(jù)庫中匹配得到上述控制面設(shè)備信息;發(fā)送模塊24,用于向上述轉(zhuǎn)發(fā)面設(shè)備發(fā)送控制面設(shè)備信息。通過上述各個模塊實(shí)現(xiàn)的功能,同樣可以實(shí)現(xiàn)轉(zhuǎn)發(fā)面設(shè)備對控制面設(shè)備的自動發(fā)現(xiàn)。在本實(shí)施例中,如圖3所示,上述裝置還可以包括以下模塊:獲取模塊26,連接至存儲模塊28,用于獲取SDN中預(yù)先分域后指定域中的各個控制面設(shè)備信息;存儲模塊28,用于將指定域中各個控制面設(shè)備信息存儲至管理信息數(shù)據(jù)庫。為了更好地理解上述實(shí)施例,以下結(jié)合實(shí)施例2-5詳細(xì)說明,其中DHCP以DHCPv4為例,但不限于DHCPv4,例如還可以為DHCPv6。實(shí)施例2本實(shí)施例的目的在于提供一種SDN網(wǎng)絡(luò)自動發(fā)現(xiàn)OpenFlow控制面設(shè)備的方法,其可以簡化OpenFlow的網(wǎng)絡(luò)配置,完善Openflow網(wǎng)絡(luò)轉(zhuǎn)發(fā)面設(shè)備發(fā)現(xiàn)控制面設(shè)備的機(jī)制,使OpenFlow的網(wǎng)絡(luò)更加智能化,提高OpenFlow網(wǎng)絡(luò)的可維護(hù)性。本實(shí)施例的主要設(shè)計思想在于,在SDN網(wǎng)絡(luò)控制面的DHCP設(shè)備(DHCP Server、DHCP Proxy、DHCP Relay Agent等)上借助DHCP交互流程自動學(xué)習(xí)該DHCP管理域內(nèi)的Openflow控制面設(shè)備,并把自動學(xué)習(xí)的結(jié)果,保存在本地維護(hù)的一個管理信息數(shù)據(jù)庫(MIB)中,實(shí)現(xiàn)分域管理這些Openflow控制面設(shè)備。在OpenFlow轉(zhuǎn)發(fā)面設(shè)備向DHCP服務(wù)器申請IP地址時,由DHCP設(shè)備根據(jù)OpenFlow轉(zhuǎn)發(fā)面設(shè)備上報選項中的域名信息匹配本地MIB中的存儲條目,將匹配的結(jié)果(SDN網(wǎng)絡(luò)的相同管理域內(nèi)可用的OpenFlow控制面設(shè)備信息列表)通過DHCP報文中的Option選項通告給OpenFlow轉(zhuǎn)發(fā)面設(shè)備,以便讓其可以根據(jù)自身需要選擇合適的OpenFlow控制面設(shè)備進(jìn)行建鏈,實(shí)現(xiàn)OpenFlow轉(zhuǎn)發(fā)面設(shè)備自動發(fā)現(xiàn)OpenFlow控制面設(shè)備的功能。如圖4所示,DHCP設(shè)備提供、管理、維護(hù)著一個MIB數(shù)據(jù)表,該管理信息庫的數(shù)據(jù)表主要管理OpenFlow網(wǎng)絡(luò)中的OpenFlow轉(zhuǎn)發(fā)面設(shè)備、OpenFlow Controller和OpenFlowConfiguration Point等設(shè)備信息,該MIB數(shù)據(jù)表可以在本地通過命令修改,也可以通過NMS遠(yuǎn)程修改或DHCP協(xié)議模塊觸發(fā)自動學(xué)習(xí)修改,其表項字段建議包括設(shè)備角色、設(shè)備地址、域名、設(shè)備唯一標(biāo)識、設(shè)備管理負(fù)荷和信息來源等。該MIB數(shù)據(jù)表各個字段意義說明如下:設(shè)備角色(Role):描述該設(shè)備是OpenFlow轉(zhuǎn)發(fā)面設(shè)備(0)、0penFlow Controller(I)還是 OpenFlow Configuration Point (2)。設(shè)備地址(IP地址):0penFlow設(shè)備的南向接口建鏈IP地址,可以是IPv4或IPv6地址。域名:表示OpenFlow設(shè)備歸屬的管理域,域名字符串為空時,按默認(rèn)域名處理。SDN網(wǎng)絡(luò)的管理人員可以根據(jù)設(shè)備廠商分類、業(yè)務(wù)類型或虛擬運(yùn)營商分類來規(guī)劃網(wǎng)絡(luò)的管理域,分域管理網(wǎng)絡(luò)中的不同設(shè)備。域名可以在設(shè)備出廠時靜態(tài)配置,或本地管理口命令配置,也可以在接入管理網(wǎng)絡(luò)后,由OpenFlow控制面設(shè)備動態(tài)配置修改。設(shè)備唯一標(biāo)識:表征設(shè)備的全局唯一標(biāo)識,建議是一個特定編碼格式的字符串。設(shè)備管理負(fù)荷:僅對OpenFlow控制面設(shè)備有效,表示管理設(shè)備負(fù)荷的指標(biāo)數(shù)據(jù),可以是OpenFlow鏈接數(shù)和滿載鏈接數(shù)的百分比,也可以綜合其他指標(biāo)。這些指標(biāo)數(shù)據(jù)可以由這些OpenFlow控制面設(shè)備動態(tài)更新,OpenFlow轉(zhuǎn)發(fā)面設(shè)備在沒有優(yōu)先級建議的情況下,優(yōu)先選擇負(fù)荷較輕的控制面設(shè)備建鏈。信息來源:表示一條數(shù)據(jù)表記錄的生成原因,例如匪S遠(yuǎn)程配置,本地配置和自動學(xué)習(xí)。這幾種生成原因可以設(shè)定有一定的優(yōu)先級,例如本地配置優(yōu)先于匪S遠(yuǎn)程配置,匪S遠(yuǎn)程配置優(yōu)先于自動學(xué)習(xí)。當(dāng)然這種優(yōu)先級關(guān)系可以配置設(shè)定。一種生成原因的數(shù)據(jù)表記錄一般只能以相同信息來源的刪除動作來刪除,除非該數(shù)據(jù)表記錄被高優(yōu)先級的相同設(shè)備的數(shù)據(jù)表記錄所替換。同時該MIB數(shù)據(jù)表可以被匪S查詢,匪S獲悉該DHCP設(shè)備的MIB數(shù)據(jù)表自動學(xué)習(xí)到的記錄后,可以向SDN中的其他DHCP設(shè)備下發(fā)這些記錄,實(shí)現(xiàn)跨DHCP設(shè)備管理網(wǎng)絡(luò)的發(fā)現(xiàn)機(jī)制。由此可見本方案中DHCP設(shè)備不再是單純地執(zhí)行或代理執(zhí)行地址分配的動作,還實(shí)現(xiàn)了對其管理范疇內(nèi)的SDN網(wǎng)絡(luò)設(shè)備進(jìn)行統(tǒng)一管理,所以這種能夠處理DHCP報文并執(zhí)行網(wǎng)絡(luò)節(jié)點(diǎn)信息管理的設(shè)備也可以為某些網(wǎng)關(guān)設(shè)備,包括BNG等。
以下對本實(shí)施例即圖4中所涉及的步驟描述:步驟S402 =OpenFlow控制面設(shè)備I啟動后,通過DHCP協(xié)議中的DHCP Discover報文攜帶擴(kuò)展的選項OptionA上報該設(shè)備的角色和域名Domainl等信息,如果它不需要通過DHCP獲取地址,可以攜帶自身已有地址來申請,本質(zhì)上它只是通過DHCP報文上報自身的設(shè)備信息給DHCP設(shè)備來形成MIB數(shù)據(jù)表條目。DHCP設(shè)備在應(yīng)答DHCP請求后,添加一個設(shè)備信息記錄到MIB數(shù)據(jù)表中,OpenFlow控制面設(shè)備I后續(xù)的負(fù)荷變化可以通過提前續(xù)租或特定的DHCP類型報文攜帶選項OptionA動態(tài)更新給DHCP設(shè)備MIB數(shù)據(jù)表。OpenFlow控制面設(shè)備I釋放地址時,在DHCP Release報文中攜帶擴(kuò)展的選項OptionA,DHCP設(shè)備刪除本地MIB信息表中的對應(yīng)的設(shè)備記錄。步驟S404 =OpenFlow控制面設(shè)備2啟動后,通過DHCP協(xié)議中的DHCP Discover報文攜帶擴(kuò)展的選項OptionA上報該設(shè)備的角色和域名Domain2等信息。DHCP設(shè)備采用步驟I相同的方式添加一個新的設(shè)備信息記錄到MIB數(shù)據(jù)表中。OpenFlow控制面設(shè)備2釋放地址時,在DHCP Release報文中攜帶擴(kuò)展的選項OptionA,DHCP設(shè)備刪除本地MIB信息表中的對應(yīng)的設(shè)備記錄。步驟S406 =OpenFlow轉(zhuǎn)發(fā)面設(shè)備I啟動正常后,通過DHCP協(xié)議中的DHCPDiscover中的選項OptionA上報域名Domainl來并獲取IP地址,DHCP設(shè)備將分配到的地址告知OpenFlow轉(zhuǎn)發(fā)面設(shè)備I的同時,攜帶特殊的選項OptionB將其MIB數(shù)據(jù)表記錄中匹配到Domainl的OpenFlow控制面設(shè)備信息列表下發(fā)給OpenFlow轉(zhuǎn)發(fā)面設(shè)備I,從而讓其發(fā)現(xiàn)OpenFlow控制面設(shè)備I。OpenFlow轉(zhuǎn)發(fā)面設(shè)備I開始嘗試和OpenFlow控制面設(shè)備I建鏈。OpenFlow轉(zhuǎn)發(fā)面設(shè)備I釋放地址時,在DHCP Release報文中攜帶擴(kuò)展的選項OptionA,DHCP設(shè)備刪除本地MIB信息表中的對應(yīng)的設(shè)備記錄。步驟S408 =OpenFlow轉(zhuǎn)發(fā)面設(shè)備2啟動正常后,通過DHCP協(xié)議中的DHCPDiscover中的選項上報域名Domain2來并獲取IP地址。然后采用步驟3相同的方式發(fā)現(xiàn)OpenFlow控制面設(shè)備2,并開始嘗試和OpenFlow控制面設(shè)備2建鏈。OpenFlow轉(zhuǎn)發(fā)面設(shè)備
2釋放地址時,在DHCP Release報文中攜帶擴(kuò)展的選項OptionA,DHCP設(shè)備刪除本地MIB信息表中的對應(yīng)的設(shè)備記錄。步驟S410:匪S設(shè)備查詢DHCP設(shè)備MIB數(shù)據(jù)表,獲悉其學(xué)習(xí)到的OpenFlow設(shè)備信息,根據(jù)匪S配置的策略,有選擇地向其他DHCP設(shè)備下發(fā)其獲悉的OpenFlow控制設(shè)備信息。當(dāng)然,也允許DHCP設(shè)備通過特定接口主動上報或和更換自己學(xué)習(xí)到的MIB數(shù)據(jù)表記錄。以上5個步驟沒有嚴(yán)格的時序關(guān)系,任何一個步驟都可能先發(fā)生,OpenFlow轉(zhuǎn)發(fā)面設(shè)備可能在第一次申請地址時沒能從DHCP設(shè)備發(fā)現(xiàn)任何OpenFlow控制面設(shè)備,它可以選擇其他發(fā)現(xiàn)方式(例如多播探測、本地的靜態(tài)配置)來發(fā)現(xiàn)一個廣播域內(nèi)的OpenFlow控制面設(shè)備,也可以延時重新嘗試從DHCP設(shè)備發(fā)現(xiàn)OpenFlow控制面設(shè)備。DHCP設(shè)備通過選項OptionB給OpenFlow轉(zhuǎn)發(fā)面設(shè)備下發(fā)同一個管理域內(nèi)的OpenFlow控制面設(shè)備信息列表時,列表中的OpenFlow控制面設(shè)備的順序可以用來表示其優(yōu)先級建議。如果有多個OpenFlow控制面設(shè)備,OpenFlow轉(zhuǎn)發(fā)面設(shè)備會依次向這些設(shè)備發(fā)起建鏈請求,直到和某個合適的OpenFlow控制面設(shè)備成功建鏈。OpenFlow轉(zhuǎn)發(fā)面設(shè)備的管理口(用于發(fā)起DHCP交互流程,并在發(fā)現(xiàn)OpenFlow控制面設(shè)備后和其建鏈)和轉(zhuǎn)發(fā)口應(yīng)有明確的區(qū)分,管理口支持DHCP/TCP/SSL/OpenFlow等協(xié)議的處理,不需流表或有默認(rèn)的流表,而轉(zhuǎn)發(fā)口在沒有OpenFlow控制面設(shè)備配置前無需支持這些協(xié)議,這種區(qū)分可以是軟件或固件上的差異,也可以是設(shè)備部署和本地配置上的選擇。
采用本實(shí)施例中的上述方案,為OpenFlow轉(zhuǎn)發(fā)面設(shè)備自動發(fā)現(xiàn)OpenFlow控制面設(shè)備提供了可行性,使SDN網(wǎng)絡(luò)中OpenFlow轉(zhuǎn)發(fā)面設(shè)備和控制面設(shè)備的部署更加智能化。
為了更好地理解上述實(shí)施例1-2,以下結(jié)合實(shí)施例3-5詳細(xì)說明。
以下實(shí)施例3-5提供的SDN網(wǎng)絡(luò)自動發(fā)現(xiàn)OpenFlow控制面設(shè)備的方案,由OpenFlow轉(zhuǎn)發(fā)面設(shè)備借助于和DHCP設(shè)備的DHCP報文交互自動發(fā)現(xiàn)OpenFlow控制面設(shè)備,在OpenFlow控制面設(shè)備部署相對穩(wěn)定的網(wǎng)絡(luò)中,能提供良好的服務(wù)。
以下實(shí)施例3-5可以基于以下設(shè)計思想實(shí)現(xiàn):在SDN中,OpenFlow轉(zhuǎn)發(fā)面設(shè)備可以通過DHCPv4/DHCPv6設(shè)備動態(tài)發(fā)現(xiàn)OpenFlow控制面設(shè)備。和DHCPv4類似,OpenFlow控制面設(shè)備可以在DHCPv6Solicit報文中上報本設(shè)備管理信息給DHCPv6設(shè)備,OpenFlow轉(zhuǎn)發(fā)面設(shè)備在申請地址的過程中,DHCPv6設(shè)備可以通過DHCPv6Advertise或者是DHCPv6Reply報文下發(fā)匹配該OpenFlow轉(zhuǎn)發(fā)面設(shè)備管理域的OpenFlow控制面設(shè)備信息給該OpenFlow轉(zhuǎn)發(fā)面設(shè)備。另外對于DHCP設(shè)備上通過DHCP流程學(xué)習(xí)到的SDN網(wǎng)絡(luò)設(shè)備都可以被這些設(shè)備的DHCP Release報文觸發(fā)刪除。
實(shí)施例3
該實(shí)施例主要描述OpenFlow控制面設(shè)備控制器和配置點(diǎn)不分離場景下,OpenFlow轉(zhuǎn)發(fā)面設(shè)備通過DHCP服務(wù)器發(fā)現(xiàn)OpenFlow控制面設(shè)備并正常建鏈的過程。為了便于描述,并僅作為一種示例,本實(shí)施例中采用DHCPv4協(xié)議描述該動態(tài)發(fā)現(xiàn)流程。DHCP設(shè)備為 DHCP Server, OpenFlow 控制面設(shè)備為 OpenFlow Controller, OpenFlow 轉(zhuǎn)發(fā)面設(shè)備為OpenFlow Switch,該實(shí)施例下沒有提供單獨(dú)的OpenFlow Configuration Point設(shè)備,由OpenFlow Controller執(zhí)行配置工作,并具體描述了 DHCP設(shè)備感知SDN網(wǎng)絡(luò)OpenFlow設(shè)備釋放地址或離線時的處理。
業(yè)務(wù)詳細(xì)流程圖參見圖5所示:
步驟S502:OpenF1w Controller 啟動后,發(fā)送 DHCP 發(fā)現(xiàn)(Discover)報文給 DHCP服務(wù)器(可以攜帶已有地址申請)。在OF Controller設(shè)備發(fā)送的DHCP Discover報文中,通過擴(kuò)展選項OptionA攜帶設(shè)備角色、域名等字段信息給DHCP服務(wù)器。擴(kuò)展的選項OptionA格式建議詳見圖8,該報文也可以不攜帶擴(kuò)展的選項OptionA,讓DHCP Request攜帶該選項。
步驟S504 =DHCP服務(wù)器創(chuàng)建DHCP用戶會話,解析OpenFlow控制面設(shè)備Controller攜帶上來的擴(kuò)展選項OptionA,將信息暫存在DHCP服務(wù)器上。DHCP服務(wù)器發(fā)送DHCP供給(Offer)報文攜帶分配的IP地址和其他配置信息給OpenFlow Controller。
步驟S506: OpenF I ow Controller 選擇合適的地址,并發(fā)送 DHCP 請求(Request)至DHCP服務(wù)器進(jìn)行確認(rèn),如果DHCP Discover報文沒有攜帶過選項OptionA, DHCP Request報文就必須攜帶選項OptionA上報自身信息。建議只在DHCP Request報文中攜帶選項OptionA0
步驟S508 =DHCP服務(wù)器收到DHCP Request后,解析選項OptionA中的信息,同時獲取判斷0ption54字段中的DHCP服務(wù)器地址是否和自己相同,如果不同或者DHCP Request報文超時異常,則刪除步驟S504或本步驟中DHCP服務(wù)器緩存的OpenFlowController的設(shè)備角色、域名等信息記錄。如果相同,DHCP服務(wù)器發(fā)送DHCP響應(yīng)(Ack)報文給OpenFlow Controller,同時將OpenFlow Controller的信息作為一條記錄寫入DHCP服務(wù)器本地的MIB數(shù)據(jù)表。
步驟S510:匪S查詢DHCP服務(wù)器的MIB數(shù)據(jù)表,獲悉DHCP服務(wù)器學(xué)習(xí)到的OpenFlow Controller信息。該步驟前面的描述動作和前后步驟沒有嚴(yán)格時序關(guān)系。也允許DHCP服務(wù)器通過特定的接口主動上報自己學(xué)習(xí)到的OpenFlow Controller的信息。
步驟S512:OpenFlow Switch 發(fā)送 DHCP 發(fā)現(xiàn)(Discover)報文至 DHCP 服務(wù)器申請IP地址,也可以攜帶選項OptionA上報自身設(shè)備信息給DHCP服務(wù)器,但是不建議在此報文中攜帶。
步驟S514 =DHCP服務(wù)器發(fā)送含有IP地址和其他配置信息的DHCP Offer報文給OpenFlow Switch 設(shè)備。
步驟S516 =OpenFlow Switch以廣播方式向各DHCP服務(wù)器回應(yīng)DHCP請求(Request)報文進(jìn)行確認(rèn),DHCP Request報文中可以攜帶選項OptionA上報自身信息。
步驟S518 =DHCP 服務(wù)器收到 OpenFlow Switch 的 DHCP Request 報文后,判斷0ption54字段中的DHCP Server的IP地址是否與自己的相同。如果相同,DHCP服務(wù)器會向OpenFlow Switch發(fā)送包含它所提供的IP地址和其它選項信息的DHCP ACK確認(rèn)報文。同時DHCP服務(wù)器解析DHCP Request報文攜帶的選項OptionA,獲取OpenFlow Switch設(shè)備信息,將其作為一條記錄保存到該DHCP服務(wù)器本地的MIB數(shù)據(jù)表(在MIB數(shù)據(jù)表添加OpenFlow Switch設(shè)備信息的記錄為可選動作),并用OpenFlow Switch設(shè)備域名在其MIB數(shù)據(jù)表中匹配,將匹配到的OpenFlow ControlIer設(shè)備信息按優(yōu)先級排序作優(yōu)選建議,將排序后的OpenFlow Controller設(shè)備信息列表填充擴(kuò)展選項OptionB由DHCP ACK報文攜帶給 OpenFlow Switch。
步驟S520 =OpenFlow Switch收到DHCP服務(wù)器的DHCP Ack報文后,解析其中的擴(kuò)展選項OptionB,從該選項信息獲悉自己所屬管理域的OpenFlow Controller設(shè)備地址。OpenFlow Switch 主動嘗試和 OpenFlow Controller 建鏈。
步驟S522:0penFlow Controller 和 OpenFlow Switch 成功建鏈后,OpenFlowController 管理的 OpenFlow Switch 數(shù)量變化,OpenFlow Controller 通過 DHCP Request報文提前續(xù)租,并攜帶選項OptionA更新DHCP服務(wù)器本地的MIB數(shù)據(jù)表記錄。當(dāng)然也允許使用DHCP Inform報文來攜帶選項OptionA,以達(dá)到同樣的效果。
步驟S524 =OpenFlow Switch釋放地址或沒有及時續(xù)租,DHCP服務(wù)器回收地址,并刪除本地MIB數(shù)據(jù)表中對應(yīng)該OpenFlow Switch的記錄。
步驟S526 =OpenFlow Controller釋放地址沒有及時續(xù)租,DHCP服務(wù)器回收地址并刪除本地MIB數(shù)據(jù)表中對應(yīng)該OpenFlow Controller的記錄。
步驟S528:匪S查詢DHCP服務(wù)器的MIB數(shù)據(jù)表,獲悉DHCP服務(wù)器學(xué)習(xí)到的OpenFlow Controller 信息,得知 DHCP 服務(wù)器之前學(xué)習(xí)到的 OpenFlow Controller 等 SDN設(shè)備失效后,匪S上對應(yīng)的記錄也刪除,并同步更新它對其他DHCP設(shè)備下發(fā)的配置。該步驟前面的描述動作和前后步驟沒有嚴(yán)格時序關(guān)系。和步驟S510 —樣,允許DHCP服務(wù)器通過特定的接口主動上報自己學(xué)習(xí)到的OpenFlow Controller信息變更。
OpenFlow Switch 根據(jù) DHCP 服務(wù)器下發(fā)的 OpenFlow Controller 設(shè)備列表,發(fā)現(xiàn)可以與之建鏈的OpenFlow Controller,這些OpenFlow Controller可以是DHCP服務(wù)器本地學(xué)習(xí)的,也可以是匪S從其他網(wǎng)絡(luò)管理域的DHCP服務(wù)器上獲悉的,也可以是DHCP服務(wù)器本地靜態(tài)配置到MIB數(shù)據(jù)表中的。
實(shí)施例4
該實(shí)施例主要描述OpenFlow控制面設(shè)備控制器和配置點(diǎn)不分離場景下,OpenFlow轉(zhuǎn)發(fā)面設(shè)備通過DHCP代理設(shè)備發(fā)現(xiàn)OpenFlow控制面設(shè)備并正常建鏈的過程。為了便于描述,并僅作為一種示例,本實(shí)施例中采用DHCPv4協(xié)議描述該動態(tài)發(fā)現(xiàn)流程。本實(shí)施例中描述的DHCP設(shè)備為DHCP Proxy,后端還有DHCP服務(wù)器,OpenFlow控制面設(shè)備為OpenFlow Controller, OpenFlow轉(zhuǎn)發(fā)面設(shè)備為OpenFlow Switch,該實(shí)施例下沒有提供單獨(dú)的 OpenFlow Configuration Point 設(shè)備,由 OpenFlow Controller 執(zhí)行配置工作。該實(shí)施例不再描述OpenFlow設(shè)備釋放地址或離線時DHCP設(shè)備的處理流程,相關(guān)流程可參考實(shí)施例3的相關(guān)描述。
本實(shí)施例的業(yè)務(wù)詳細(xì)流程參見圖6所示:
步驟S602:0penFlow Controller啟動后,發(fā)送DHCP Discover報文給DHCP Proxy(可以攜帶已有地址申請)。在OF Controller設(shè)備發(fā)送的DHCP Discover報文中,通過擴(kuò)展選項OptionA攜帶設(shè)備角色、域名等字段信息給DHCP Proxy。擴(kuò)展的選項OptionA格式建議詳見圖8,該報文也可以不攜帶擴(kuò)展的選項OptionA,讓DHCP Request攜帶該選項。
步驟S604:支持學(xué)習(xí)管理SDN網(wǎng)絡(luò)設(shè)備信息的DHCP Proxy收到DHCP Discover報文后,創(chuàng)建DHCP用戶會話,截獲其中擴(kuò)展選項OptionA,并重組一個DHCP Discover單播報文發(fā)往其代理的DHCP服務(wù)器。
步驟S606 =DHCP服務(wù)器創(chuàng)建DHCP用戶會話,發(fā)送DHCP Offer報文攜帶分配的IP地址和其他配置信息給DHCP代理(Proxy ),由DHCP Proxy代為發(fā)送給OpenFlowController。
步驟S608:DHCP Proxy 將收到的 DHCP Offer 報文轉(zhuǎn)發(fā) OpenFlow Controller。
步驟S610:0penFlow Controller 選擇合適的地址,并發(fā)送 DHCP Request 至 DHCPProxy進(jìn)行確認(rèn),如果DHCP Discover報文沒有攜帶過選項OptionA, DHCP Request報文就必須攜帶選項OptionA上報自身信息。建議只在DHCP Request報文中攜帶選項OptionA。
步驟S612:DHCP Proxy收到DHCP Request報文后,截獲并解析選項OptionA中的信息,同時獲取判斷0ption54字段中的DHCP服務(wù)器地址是否和自己代理的DHCP服務(wù)器地址一致,如果不同或者DHCP Request報文超時異常,則刪除步驟S604或本步驟中緩存的OpenFlow Controller的設(shè)備角色、域名等信息記錄。如果相同,DHCP Proxy重組不攜帶選項OptionA的DHCP Request單播報文發(fā)送DHCP服務(wù)器。
步驟S614 =DHCP服務(wù)器收到DHCP Request后,獲取判斷0ption54字段中的DHCP服務(wù)器地址是否和自己相同,如果相同就發(fā)送DHCP ACK報文給DHCP Proxy,由DHCP Proxy代為發(fā)送給 OpenFlow Controller。
步驟S616:DHCP Proxy 收到 DHCP ACK 報文后,將 OpenFlow Controller 的信息作為一條記錄寫入DHCP Proxy本地的MIB數(shù)據(jù)表,同時將報文發(fā)送給OpenFlow Controller。
步驟S618:NMS查詢DHCP Proxy的MIB數(shù)據(jù)表,獲悉DHCP Proxy學(xué)習(xí)到的OpenFlow Controller信息。該步驟前面的描述動作和前后步驟沒有嚴(yán)格時序關(guān)系。也允許DHCP Proxy通過特定的接口主動上報自己學(xué)習(xí)到的OpenFlow Controller的信息。
步驟S620:0penFlow Switch 發(fā)送DHCP Discover 報文至DHCP Proxy,希望向 DHCP服務(wù)器申請IP地址,可以在該報文中攜帶選項OptionA上報自身設(shè)備信息,但是不建議在DHCP Discover 報文中攜帶 OptionA。
步驟S622:DHCP Proxy 收到 DHCP Discover 報文后截獲選項 OptionA,創(chuàng)建 DHCP會話,重組一個DHCP Discover單播報文發(fā)送其代理的DHCP服務(wù)器。
步驟S624 =DHCP服務(wù)器發(fā)送含有IP地址和其他配置信息的DHCP Offer報文給DHCP Proxy,由 DHCP Proxy 代為發(fā)送給 OpenFlow Switch。
步驟S626:DHCP Proxy 將收到的 DHCP Offer 報文轉(zhuǎn)發(fā) OpenFlow Switch。
步驟S628:0penFlow Switch 以廣播方式向 DHCP Proxy 回應(yīng) DHCP Request 報文進(jìn)行確認(rèn),DHCP Request報文中可以攜帶選項OptionA上報自身信息。
步驟S630:DHCP Proxy 收到 OpenFlow Switch 的 DHCP Request 報文后,判斷0ption54字段中的DHCP Server的IP地址是否與自己代理的DHCP服務(wù)器地址相同。如果相同,DHCP Proxy解析DHCP Request報文攜帶的選項OptionA,獲取并保存OpenFlowSwitch設(shè)備信息。DHCP Proxy重組一個不攜帶選項OptionA的DHCP Request單播報文發(fā)送DHCP服務(wù)器。
步驟S632 =DHCP服務(wù)器收到DHCP Proxy轉(zhuǎn)發(fā)的DHCP Request報文后,判斷0ption54字段中的DHCP Server的IP地址是否與自己的相同。如果相同,DHCP Server會向DHCP Proxy發(fā)送包含它所提供的IP地址和其它選項信息的DHCP Ack確認(rèn)報文,由DHCPProxy 代為發(fā)送給 OpenFlow Switch。
步驟S634:DHCP Proxy收到DHCP Ack報文后,將之前本地保存的OpenFlowSwitch設(shè)備信息作為一條記錄保存到該DHCP Proxy本地的MIB數(shù)據(jù)表(在MIB數(shù)據(jù)表添加OpenFlow Switch設(shè)備信息的記錄為可選動作),并用OpenFlow Switch設(shè)備域名在其MIB數(shù)據(jù)表中匹配,將匹配到的OpenFlow ControlIer設(shè)備信息按優(yōu)先級排序作優(yōu)選建議,將排序后的OpenFlow Controller設(shè)備信息列表填充擴(kuò)展選項OptionB,然后DHCP Proxy重組一個攜帶擴(kuò)展選項OptionB的DHCP Ack報文,發(fā)送給OpenFlow Switch。
步驟S636 =OpenFlow Switch收到DHCP服務(wù)器的DHCP Ack報文后,解析其中的擴(kuò)展選項OptionB,從該選項信息獲悉自己所屬管理域的OpenFlow Controller設(shè)備地址。OpenFlow Switch 主動嘗試和 OpenFlow Controller 建鏈。
步驟S638:0penFlow Controller 和 OpenFlow Switch 成功建鏈后,OpenFlowController 管理的 OpenFlow Switch 數(shù)量變化,OpenFlow Controller 通過 DHCP Request報文提前續(xù)租,并攜帶選項OptionA更新DHCP服務(wù)器本地的MIB數(shù)據(jù)表記錄。當(dāng)然也允許使用DHCP Inform報文來攜帶選項OptionA,以達(dá)到同樣的效果。
實(shí)施例5
該實(shí)施例主要描述OpenFlow控制面設(shè)備控制器和配置點(diǎn)分離場景下,OpenFlow轉(zhuǎn)發(fā)面設(shè)備通過DHCP服務(wù)器發(fā)現(xiàn)OpenFlow控制面設(shè)備并正常建鏈的過程。為了便于描述,并僅作為一種示例,本實(shí)施例中采用DHCPv4協(xié)議描述該動態(tài)發(fā)現(xiàn)流程。DHCP設(shè)備為 DHCP Server, OpenFlow 控制面設(shè)備為 OpenFlow Controller 控制器設(shè)備、OpenFlowConfiguration Point 配置設(shè)備,OpenFlow Configuration Point 設(shè)備上配置有 OpenFlowController設(shè)備的信息,OpenFlow轉(zhuǎn)發(fā)面設(shè)備為OpenFlow Switch。該實(shí)施例不再描述OpenFlow設(shè)備釋放地址或離線時DHCP設(shè)備的處理流程,相關(guān)流程可參考實(shí)施例3的相關(guān)描述。
業(yè)務(wù)詳細(xì)流程參見圖7所示:
步驟S702:0penFlow Configuration Point 啟動后,發(fā)送 DHCP Discover 報文給DHCP服務(wù)器(可以攜帶已有地址申請)。在OpenFlow Configuration Point設(shè)備發(fā)送的DHCP Discover報文中,通過擴(kuò)展選項OptionA攜帶設(shè)備角色、域名等字段信息給DHCP服務(wù)器。擴(kuò)展的選項OptionA格式建議詳見圖8, DHCP Discover報文也可以不攜帶擴(kuò)展的選項OptionA,由 DHCP Request 攜帶該選項。
步驟S704:DHCP服務(wù)器創(chuàng)建DHCP用戶會話,解析OpenFlow Configuration Point攜帶上來的擴(kuò)展選項OptionA,將信息暫存在DHCP服務(wù)器上。DHCP服務(wù)器發(fā)送DHCP Offer報文攜帶分配的IP地址和其他配置信息給OpenFlow Configuration Point。
步驟S706: OpenF I ow Configuration Point 選擇合適的地址,并發(fā)送 DHCPRequest至DHCP服務(wù)器進(jìn)行確認(rèn),如果DHCP Discover報文沒有攜帶過選項OptionA, DHCPRequest報文就必須攜帶選項OptionA上報自身設(shè)備信息。建議只在DHCP Request報文中攜帶選項OptionA。
步驟S708 =DHCP服務(wù)器收到DHCP Request后,解析選項OptionA中的信息,同時獲取判斷0ption54字段中的DHCP服務(wù)器地址是否和自己相同,如果不同或者DHCP Request報文超時異常,則刪除步驟S704或本步驟中DHCP服務(wù)器緩存的OpenFlowConfiguration Point的設(shè)備角色、域名等信息記錄。如果相同,DHCP服務(wù)器發(fā)送DHCP Ack報文給OpenFlow Configuration Point,同時將OpenFlow Configuration Point 的設(shè)備信息作為一條記錄寫入DHCP服務(wù)器本地的MIB數(shù)據(jù)表。
步驟S710:匪S查詢DHCP服務(wù)器的MIB數(shù)據(jù)表,獲悉DHCP服務(wù)器學(xué)習(xí)到的OpenFlow Configuration Point信息。該步驟前面的描述動作和前后步驟沒有嚴(yán)格時序關(guān)系。也允許DHCP服務(wù)器通過特定的接口主動上報自己學(xué)習(xí)到的OpenFlow ConfigurationPoint的信息。
步驟S712: OpenF I ow Switch 發(fā)送 DHCP Discover 報文至 DHCP 服務(wù)器申請 IP 地址,也可以攜帶選項OptionA上報自身設(shè)備信息給DHCP服務(wù)器,但是不建議在此報文中攜帶。
步驟S714 =DHCP服務(wù)器發(fā)送含有IP地址和其他配置信息的DHCP Offer報文給OpenFlow Switch 設(shè)備。
步驟S716 =OpenFlow Switch以廣播方式向各DHCP服務(wù)器回應(yīng)DHCP Request報文進(jìn)行確認(rèn),DHCP Request報文中可以攜帶選項OptionA上報自身信息。
步驟S718:DHCP 服務(wù)器收到 OpenFlow Switch 的 DHCP Request 報文后,判斷0ption54字段中的DHCP Server的IP地址是否與自己的相同。如果相同,DHCP服務(wù)器會向OpenFlow Switch發(fā)送包含它所提供的IP地址和其它選項信息的DHCP ACK確認(rèn)報文。同時DHCP服務(wù)器解析DHCP Request報文攜帶的選項OptionA,獲取OpenFlow Switch設(shè)備信息,將其一條記錄保存到該DHCP服務(wù)器本地的MIB數(shù)據(jù)表(在MIB數(shù)據(jù)表添加OpenFlowSwitch設(shè)備信息的記錄為可選動作),并用OpenFlow Switch設(shè)備域名在其MIB數(shù)據(jù)表中匹配,將匹配到的OpenFlow Configuration Point設(shè)備信息按優(yōu)先級排序作優(yōu)選建議,將排序后的OpenFlow Configuration Point設(shè)備信息列表填充擴(kuò)展選項OptionB,由DHCP Ack報文攜帶給OpenFlow Switch。
步驟S720 =OpenFlow Switch收到DHCP服務(wù)器的DHCP ACK報文后,解析其中的擴(kuò)展選項OptionB,從該選項信息獲悉自己所屬管理域的OpenFlow Configuration Point設(shè)備地址。OpenFlow Switch主動嘗試和OpenFlow Configuration Point建鏈,建鏈后OpenFlow Configuration Point 配置 OpenFlow Switch,告知其 OpenFlow Controller 的地址。
步驟S722:OpenF1w Configuration Point 和 OpenFlow Switch 成功建鏈后,OpenFlow Configuration Point 管理的 OpenFlow Switch 數(shù)量變化,OpenFlowConfiguration Point通過DHCP Request報文提前續(xù)租,并攜帶選項OptionA更新DHCP服務(wù)器本地的MIB數(shù)據(jù)表記錄。當(dāng)然也允許使用DHCP Inform報文來攜帶選項OptionA,以達(dá)到同樣的效果。
步驟S724: OpenF I ow Switch 獲知 OpenFlow Controller 的地址后,嘗試和該OpenFlow Controller建鏈。該步驟和步驟S722沒有嚴(yán)格的時序關(guān)系。
步驟S726:0penFlow Controller 和 OpenFlow Switch 建鏈后,根據(jù)需要,可以根據(jù)特定的接口向OpenFlow Configuration Point通告自身的負(fù)荷信息,供OpenFlowConfiguration Point管理多個OpenFlow Controller時,能夠根據(jù)某種策略調(diào)整OpenFlowSwitch選擇建鏈的OpenFlow Controller,實(shí)現(xiàn)SDN基礎(chǔ)網(wǎng)絡(luò)控制流的負(fù)載均衡。該步驟可選操作,不做強(qiáng)制要求。
本實(shí)施例提供了 DHCP設(shè)備回應(yīng)OpenFlow轉(zhuǎn)發(fā)面設(shè)備的DHCP Ack報文中攜帶的擴(kuò)展選項OptionBl來告知其OpenFlow控制面設(shè)備信息列表,選項OptionBl格式建議詳見圖9,如果是DHCPV6協(xié)議,那么本發(fā)明建議在DHCPv6Reply報文中下發(fā)OpenFlow控制面設(shè)備信息列表的擴(kuò)展選項0ptionB2,選項0ptionB2格式建議詳見圖10。
本發(fā)明的上述實(shí)施例,可以通用于SDN轉(zhuǎn)發(fā)面設(shè)備(包括支持OpenFlow等SDN南向接口協(xié)議的所有轉(zhuǎn)發(fā)面設(shè)備,例如AP、交換器、路由器)發(fā)現(xiàn)SDN控制器的場景的應(yīng)用場旦-5^ O
在另外一個實(shí) 施例中,還提供了一種軟件,該軟件用于執(zhí)行上述實(shí)施例及優(yōu)選實(shí)施方式中描述的技術(shù)方案。
在另外一個實(shí)施例中,還提供了一種存儲介質(zhì),該存儲介質(zhì)中存儲有上述軟件,該存儲介質(zhì)包括但不限于:光盤、軟盤、硬盤、可擦寫存儲器等。
顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計算裝置來實(shí)現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實(shí)現(xiàn),從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
以上僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種基于開放流OpenFlow協(xié)議的控制面設(shè)備的發(fā)現(xiàn)處理方法,其特征在于,包括: 接收來自基于OpenFlow協(xié)議的轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息,其中,所述標(biāo)識信息為所述轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息,所述標(biāo)識信息與管理信息數(shù)據(jù)庫中的控制面設(shè)備信息相對應(yīng);根據(jù)所述標(biāo)識信息在所述管理信息數(shù)據(jù)庫中匹配得到所述控制面設(shè)備信息; 向所述轉(zhuǎn)發(fā)面設(shè)備發(fā)送所述控制面設(shè)備信息。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在接收所述標(biāo)識信息之前,包括: 獲取軟件定義網(wǎng)絡(luò)SDN中預(yù)先分域后指定域中的各個所述控制面設(shè)備信息; 將所述指定域中各個所述控制面設(shè)備信息存儲至所述管理信息數(shù)據(jù)庫。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述標(biāo)識信息包括:所述轉(zhuǎn)發(fā)面設(shè)備所屬所述指定域的域名信息。
4.根據(jù)權(quán)利要求1至3任一項所述的方法,其特征在于,所述方法應(yīng)用于SDN中的動態(tài)主機(jī)配置協(xié)議DHCP設(shè)備。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,向所述轉(zhuǎn)發(fā)面設(shè)備發(fā)送所述控制面設(shè)備信息包括: 通過DHCP報文中的指定字段向所述轉(zhuǎn)發(fā)面設(shè)備發(fā)送所述控制面設(shè)備信息。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述指定字段包括:選項Option字段。
7.根據(jù)權(quán)利要求3所述的方法,其特征在于,接收來自基于OpenFlow協(xié)議的轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息時,還包括: 接收所述轉(zhuǎn)發(fā)面設(shè)備的請求消息,其中,該請求消息用于請求所述DHCP設(shè)備為所述轉(zhuǎn)發(fā)面設(shè)備分配地址。
8.根據(jù)權(quán)利要求4所述的方法,其特征在于,還包括: 接收網(wǎng)絡(luò)管理系統(tǒng)匪S的查詢請求消息; 在所述查詢請求消息的觸發(fā)下,通過所述匪S將所述管理信息數(shù)據(jù)庫中的所述控制面設(shè)備信息發(fā)送至所述SDN中除所述DHCP設(shè)備之外的其它DHCP設(shè)備。
9.一種基于開放流OpenFlow協(xié)議的控制面設(shè)備的發(fā)現(xiàn)處理裝置,其特征在于,包括: 接收模塊,用于接收來自基于OpenFlow協(xié)議的轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息,其中,所述標(biāo)識信息為所述轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息,所述標(biāo)識信息與管理信息數(shù)據(jù)庫中的控制面設(shè)備信息相對應(yīng); 匹配模塊,用于根據(jù)所述標(biāo)識信息在所述管理信息數(shù)據(jù)庫中匹配得到所述控制面設(shè)備信息; 發(fā)送模塊,用于向所述轉(zhuǎn)發(fā)面設(shè)備發(fā)送所述控制面設(shè)備信息。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,包括: 獲取模塊,用于獲取軟件定義網(wǎng)絡(luò)SDN中預(yù)先分域后指定域中的各個所述控制面設(shè)備信息; 存儲模塊,用于將所述指定域中各個所述控制面設(shè)備信息存儲至所述管理信息數(shù)據(jù)庫。
全文摘要
本發(fā)明提供了一種基于OpenFlow協(xié)議的控制面設(shè)備的發(fā)現(xiàn)處理方法及裝置,其中,上述方法包括接收來自基于OpenFlow協(xié)議的轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息,其中,該標(biāo)識信息為轉(zhuǎn)發(fā)面設(shè)備的標(biāo)識信息,上述標(biāo)識信息與管理信息數(shù)據(jù)庫中的控制面設(shè)備信息相對應(yīng);根據(jù)上述標(biāo)識信息在管理信息數(shù)據(jù)庫中匹配得到控制面設(shè)備信息;向轉(zhuǎn)發(fā)面設(shè)備發(fā)送上述控制面設(shè)備信息。采用本發(fā)明提供的上述技術(shù)方案,解決了相關(guān)技術(shù)中,尚無有效地讓轉(zhuǎn)發(fā)面設(shè)備自動發(fā)現(xiàn)控制面設(shè)備的技術(shù)問題,從而實(shí)現(xiàn)了轉(zhuǎn)發(fā)面設(shè)備對控制面設(shè)備的自動發(fā)現(xiàn),進(jìn)而可以實(shí)現(xiàn)轉(zhuǎn)發(fā)面設(shè)備可以對控制面設(shè)備的自適應(yīng)調(diào)整。
文檔編號H04L12/70GK103209121SQ201310082998
公開日2013年7月17日 申請日期2013年3月15日 優(yōu)先權(quán)日2013年3月15日
發(fā)明者梁乾燈, 石磊, 易建 申請人:中興通訊股份有限公司