本發(fā)明涉及通信
技術(shù)領(lǐng)域:
,尤其涉及一種sdn設(shè)備自動(dòng)上線的方法、sdn設(shè)備和控制器。
背景技術(shù):
:軟件定義網(wǎng)絡(luò)(softwaredefinednetwork,簡(jiǎn)稱為sdn)是一種新型的網(wǎng)絡(luò)架構(gòu),它的設(shè)計(jì)理念是將網(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ā)功能的各種軟硬件組件;第二層是針對(duì)第一層轉(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)。sdn設(shè)備是運(yùn)用于運(yùn)營(yíng)商的本地移動(dòng)回傳網(wǎng)或承載網(wǎng)中,由路由器設(shè)備演進(jìn)而來的,具有openflow轉(zhuǎn)發(fā)設(shè)備(openflowswitch)所不具備的包括偽線(pseudo-wire,簡(jiǎn)稱pw)、三層虛擬專用網(wǎng)絡(luò)(layer3vpn,簡(jiǎn)稱l3vpn)、操作管理和維護(hù)(operationadministrationandmaintenance,簡(jiǎn)稱oam)、時(shí)鐘等一系列復(fù)雜功能的設(shè)備,也叫sdn白盒設(shè)備。目前,針對(duì)于運(yùn)營(yíng)商的sdn網(wǎng)絡(luò),在實(shí)現(xiàn)sdn設(shè)備自動(dòng)上線(即設(shè)備的自動(dòng)地址分配、自動(dòng)建立管理通道和自動(dòng)拓?fù)浒l(fā)現(xiàn))方面還處于探索階段,沒有一個(gè)完善的通用的方法。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的實(shí)施例提供一種sdn設(shè)備自動(dòng)上線的方法、sdn設(shè)備和控制器,用以實(shí)現(xiàn)sdn設(shè)備自動(dòng)上線,進(jìn)而簡(jiǎn)化sdn網(wǎng)絡(luò)中設(shè)備上線的工作流程,提高設(shè)備上線效率,做到設(shè)備即插即用、即插即管。為達(dá)到上述目的,本發(fā)明的實(shí)施例采用如下技術(shù)方案:第一方面,本發(fā)明實(shí)施例提供了一種軟件定義網(wǎng)絡(luò)sdn設(shè)備自動(dòng)上線的方法,所述方法包括:待上線sdn設(shè)備廣播封裝了虛擬局域網(wǎng)vlan標(biāo)識(shí)的dhcp發(fā)現(xiàn)報(bào)文,所述dhcp發(fā)現(xiàn)報(bào)文攜帶了所述待上線sdn設(shè)備的設(shè)備標(biāo)識(shí);接收第一控制器廣播的第一dhcp響應(yīng)報(bào)文,所述第一dhcp響應(yīng)報(bào)文為所述待上線sdn設(shè)備接收到的第一個(gè)dhcp響應(yīng)報(bào)文,所述第一dhcp響應(yīng)報(bào)文攜帶了所述第一控制器為所述待上線sdn設(shè)備分配的管理ip地址和所述第一控制器的ip地址;將接收所述第一dhcp響應(yīng)報(bào)文的第一端口置于所述vlan標(biāo)識(shí);采用所述第一端口廣播dhcp請(qǐng)求報(bào)文,所述dhcp請(qǐng)求報(bào)文攜帶了所述待上線sdn設(shè)備的設(shè)備標(biāo)識(shí),以及所述第一控制器的ip地址;通過第一端口接收所述第一控制器廣播的dhcp應(yīng)答報(bào)文,所述dhcp應(yīng)答報(bào)文攜帶了第一控制器為所述待上線sdn設(shè)備分配的管理ip地址,以及所述第一控制器的ip地址和tcp端口號(hào);當(dāng)所述待上線sdn設(shè)備與所述第一控制器根據(jù)所述第一控制器的ip地址和tcp端口號(hào)建立了開放流openflow連接之后,接收所述第一控制器發(fā)送的出向報(bào)文,所述出向報(bào)文攜帶了鏈路層發(fā)現(xiàn)協(xié)議lldp消息。第二方面,本發(fā)明實(shí)施例提供了一種軟件定義網(wǎng)絡(luò)sdn設(shè)備的自動(dòng)上線方法,所述方法包括:控制器接收待上線sdn設(shè)備廣播的封裝了虛擬局域網(wǎng)vlan標(biāo)識(shí)的dhcp發(fā)現(xiàn)報(bào)文,所述dhcp發(fā)現(xiàn)報(bào)文攜帶了所述待上線sdn設(shè)備的設(shè)備標(biāo)識(shí);向所述待上線sdn設(shè)備廣播dhcp響應(yīng)報(bào)文,所述dhcp響應(yīng)報(bào)文攜帶了所述控制器為所述待上線sdn設(shè)備分配的管理ip地址和所述控制器的ip地址;接收所述待上線sdn設(shè)備廣播的dhcp請(qǐng)求報(bào)文,所述dhcp請(qǐng)求報(bào)文攜帶了所述待上線sdn設(shè)備的設(shè)備標(biāo)識(shí),以及所述控制器的ip地址;向所述待上線sdn設(shè)備廣播dhcp應(yīng)答報(bào)文,所述dhcp應(yīng)答報(bào)文攜帶了控制器為所述待上線sdn設(shè)備分配管理ip地址,以及所述控制器的ip地址和tcp端口號(hào);在所述待上線sdn設(shè)備與所述控制器根據(jù)所述控制器的ip地址和tcp端口號(hào)建立了openflow連接之后,向所述待上線sdn設(shè)備發(fā)送出向報(bào)文,所述出向報(bào)文攜帶了鏈路層發(fā)現(xiàn)協(xié)議lldp消息。第三方面,本發(fā)明實(shí)施例提供了一種軟件定義網(wǎng)絡(luò)sdn設(shè)備的自動(dòng)上線方法,所述方法包括:已上線sdn設(shè)備接收待上線sdn設(shè)備廣播的封裝了虛擬局域網(wǎng)vlan標(biāo)識(shí)的dhcp發(fā)現(xiàn)報(bào)文,所述dhcp發(fā)現(xiàn)報(bào)文攜帶了所述待上線sdn設(shè)備的設(shè)備標(biāo)識(shí);向控制器發(fā)送入向報(bào)文,所述入向報(bào)文中封裝了所述待上線sdn設(shè)備廣播的dhcp發(fā)現(xiàn)報(bào)文;接收所述控制器發(fā)送的openflow流表報(bào)文,所述openflow流表報(bào)文攜帶了將接收所述dhcp發(fā)現(xiàn)報(bào)文的端口置于所述vlan標(biāo)識(shí)的命令;根據(jù)所述openflow流表報(bào)文,將接收所述dhcp發(fā)現(xiàn)報(bào)文的端口置于所述vlan標(biāo)識(shí),以便于所述已上線sdn設(shè)備轉(zhuǎn)發(fā)所述待上線sdn設(shè)備與所述控制器之間的報(bào)文。第四方面,本發(fā)明實(shí)施例提供了一種軟件定義網(wǎng)絡(luò)sdn設(shè)備,所述sdn設(shè)備處于待上線狀態(tài),該sdn設(shè)備包括:發(fā)送單元,用于廣播封裝了虛擬局域網(wǎng)vlan標(biāo)識(shí)的dhcp發(fā)現(xiàn)報(bào)文,所述dhcp發(fā)現(xiàn)報(bào)文攜帶了該sdn設(shè)備的設(shè)備標(biāo)識(shí);接收單元,用于接收第一控制器廣播的第一dhcp響應(yīng)報(bào)文,所述第一dhcp響應(yīng)報(bào)文為該sdn設(shè)備接收到的第一個(gè)dhcp響應(yīng)報(bào)文,所述第一dhcp響應(yīng)報(bào)文攜帶了所述第一控制器為該sdn設(shè)備分配的管理ip地址和所述第一控制器的ip地址;vlan處理單元,用于將接收所述第一dhcp響應(yīng)報(bào)文的第一端口置于所述vlan標(biāo)識(shí);所述發(fā)送單元,還用于采用所述第一端口廣播dhcp請(qǐng)求報(bào)文,所述dhcp請(qǐng)求報(bào)文攜帶了該sdn設(shè)備的設(shè)備標(biāo)識(shí),以及所述第一控制器的ip地址;所述接收單元,還用于通過第一端口接收所述第一控制器廣播的dhcp應(yīng)答報(bào)文,所述dhcp應(yīng)答報(bào)文攜帶了第一控制器為該sdn設(shè)備分配的管理ip地址,以及所述第一控制器的ip地址和tcp端口號(hào);當(dāng)該sdn設(shè)備與所述第一控制器根據(jù)所述第一控制器的ip地址和tcp端口號(hào)建立了開放流openflow連接之后,接收所述第一控制器發(fā)送的出向報(bào)文,所述出向報(bào)文攜帶了鏈路層發(fā)現(xiàn)協(xié)議lldp消息。第五方面,本發(fā)明實(shí)施例提供了一種控制器,所述控制器包括:接收單元,用于接收待上線sdn設(shè)備廣播的封裝了虛擬局域網(wǎng)vlan標(biāo)識(shí)的dhcp發(fā)現(xiàn)報(bào)文,所述dhcp發(fā)現(xiàn)報(bào)文攜帶了所述待上線sdn設(shè)備的設(shè)備標(biāo)識(shí);發(fā)送單元,用于向所述待上線sdn設(shè)備廣播dhcp響應(yīng)報(bào)文,所述dhcp響應(yīng)報(bào)文攜帶了所述控制器為所述待上線sdn設(shè)備分配的管理ip地址和所述控制器的ip地址;所述接收單元,還用于接收所述待上線sdn設(shè)備廣播的dhcp請(qǐng)求報(bào)文,所述dhcp請(qǐng)求報(bào)文攜帶了所述待上線sdn設(shè)備的設(shè)備標(biāo)識(shí),以及所述控制器的ip地址;所述發(fā)送單元,還用于向所述待上線sdn設(shè)備廣播dhcp應(yīng)答報(bào)文,所述dhcp應(yīng)答報(bào)文攜帶了控制器為所述待上線sdn設(shè)備分配管理ip地址,以及所述控制器的ip地址和tcp端口號(hào);在所述待上線sdn設(shè)備與所述控制器根據(jù)所述控制器的ip地址和tcp端口號(hào)建立了openflow連接之后,向所述待上線sdn設(shè)備發(fā)送出向報(bào)文,所述出向報(bào)文攜帶了鏈路層發(fā)現(xiàn)協(xié)議lldp消息。第六方面,本發(fā)明實(shí)施例提供了一種軟件定義網(wǎng)絡(luò)sdn設(shè)備,所述sdn設(shè)備處于已上線狀態(tài),所述sdn設(shè)備包括:接收單元,用于接收待上線sdn設(shè)備廣播的封裝了虛擬局域網(wǎng)vlan標(biāo)識(shí)的dhcp發(fā)現(xiàn)報(bào)文,所述dhcp發(fā)現(xiàn)報(bào)文攜帶了所述待上線sdn設(shè)備的設(shè)備標(biāo)識(shí);發(fā)送單元,用于向控制器發(fā)送入向報(bào)文,所述入向報(bào)文中封裝了所述待上線sdn設(shè)備廣播的dhcp發(fā)現(xiàn)報(bào)文;所述接收單元,還用于接收所述控制器發(fā)送的openflow流表報(bào)文,所述openflow流表報(bào)文攜帶了將接收所述dhcp發(fā)現(xiàn)報(bào)文的端口置于所述vlan標(biāo)識(shí)的命令;vlan處理單元,用于根據(jù)所述openflow流表報(bào)文,將接收所述dhcp發(fā)現(xiàn)報(bào)文的端口置于所述vlan標(biāo)識(shí),以便于該sdn設(shè)備轉(zhuǎn)發(fā)所述待上線sdn設(shè)備與所述控制器之間的報(bào)文。本發(fā)明實(shí)施例提供了一種sdn設(shè)備自動(dòng)上線的方法、sdn設(shè)備和控制器,通過待上線sdn設(shè)備廣播封裝了虛擬局域網(wǎng)vlan標(biāo)識(shí)的dhcp發(fā)現(xiàn)報(bào)文,dhcp發(fā)現(xiàn)報(bào)文攜帶了待上線sdn設(shè)備的設(shè)備標(biāo)識(shí);接收第一控制器廣播的第一dhcp響應(yīng)報(bào)文,第一dhcp響應(yīng)報(bào)文為待上線sdn設(shè)備接收到的第一個(gè)dhcp響應(yīng)報(bào)文,第一dhcp響應(yīng)報(bào)文攜帶了第一控制器為待上線sdn設(shè)備分配的管理ip地址和第一控制器的ip地址;將接收第一dhcp響應(yīng)報(bào)文的第一端口置于vlan標(biāo)識(shí);采用第一端口廣播dhcp請(qǐng)求報(bào)文,dhcp請(qǐng)求報(bào)文攜帶了待上線sdn設(shè)備的設(shè)備標(biāo)識(shí),以及第一控制器的ip地址;通過第一端口接收第一控制器廣播的dhcp應(yīng)答報(bào)文,dhcp應(yīng)答報(bào)文攜帶了第一控制器為待上線sdn設(shè)備分配的管理ip地址,以及第一控制器的ip地址和tcp端口號(hào);當(dāng)待上線sdn設(shè)備與第一控制器根據(jù)第一控制器的ip地址和tcp端口號(hào)建立了開放流openflow連接之后,接收第一控制器發(fā)送的出向報(bào)文,出向報(bào)文攜帶了鏈路層發(fā)現(xiàn)協(xié)議lldp消息。即通過待上線sdn設(shè)備與控制器之間利用擴(kuò)展的dhcp報(bào)文的交互實(shí)現(xiàn)待上線sdn設(shè)備的自動(dòng)地址分配,以及獲得待上線sdn設(shè)備與控制器建立openflow連接所需的控制器的ip地址和tcp端口號(hào),當(dāng)待上線sdn設(shè)備與控制器建立openflow連接即完成自動(dòng)建立管理通道之后,控制器向待上線sdn設(shè)備發(fā)送攜帶了鏈路層發(fā)現(xiàn)協(xié)議lldp消息的出向報(bào)文,實(shí)現(xiàn)自動(dòng)拓?fù)浒l(fā)現(xiàn),進(jìn)而一步步的實(shí)現(xiàn)了待上線sdn設(shè)備的自動(dòng)上線過程。簡(jiǎn)化了sdn網(wǎng)絡(luò)中設(shè)備上線的工作流程,提高設(shè)備上線效率,做到設(shè)備即插即用、即插即管。附圖說明為了更清楚地說明本發(fā)明實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為現(xiàn)有網(wǎng)絡(luò)中使用的設(shè)備的自動(dòng)地址分配方法流程圖;圖2為現(xiàn)有運(yùn)營(yíng)商網(wǎng)絡(luò)主要采用的dcn自通功能的流程圖;圖3為現(xiàn)有技術(shù)的一種dhcp報(bào)文的格式示意圖;圖4為本發(fā)明實(shí)施例提供的一種option61字段的格式示意圖;圖5為本發(fā)明實(shí)施例提供的一種option60字段的格式示意圖;圖6為本發(fā)明實(shí)施例提供的一種option43字段的格式示意圖;圖7為本發(fā)明實(shí)施例提供的sdn設(shè)備自動(dòng)上線的方法流程圖之一;圖8為本發(fā)明實(shí)施例提供的sdn設(shè)備自動(dòng)上線的方法流程圖之二;圖9為現(xiàn)有技術(shù)的一種網(wǎng)絡(luò)拓?fù)涫疽鈭D;圖10為本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)拓?fù)涫疽鈭D之一;圖11為本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)拓?fù)涫疽鈭D之二;圖12為本發(fā)明實(shí)施例提供的一種sdn設(shè)備的框圖;圖13為本發(fā)明實(shí)施例提供的一種控制器的框圖。具體實(shí)施方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。本發(fā)明實(shí)施例中術(shù)語“和/或”,僅僅是一種描述關(guān)聯(lián)對(duì)象的關(guān)聯(lián)關(guān)系,表示可以存在三種關(guān)系,例如,a和/或b,可以表示:?jiǎn)为?dú)存在a,同時(shí)存在a和b,單獨(dú)存在b這三種情況。另外,本發(fā)明實(shí)施例中字符“/”,一般表示前后關(guān)聯(lián)對(duì)象是一種“或”的關(guān)系。為了便于清楚描述本發(fā)明實(shí)施例的技術(shù)方案,在本發(fā)明的實(shí)施例中,術(shù)語“第一”、“第二”僅用于描述目的,而不能理解為指示或暗示相對(duì)重要性或者隱含指明所指示的技術(shù)特征的數(shù)量。由此,限定有“第一”、“第二”的特征可以明示或者隱含地包括一個(gè)或者更多個(gè)該特征。在本發(fā)明的描述中,除非另有說明,“多個(gè)”的含義是兩個(gè)或兩個(gè)以上?,F(xiàn)有網(wǎng)絡(luò)中使用的設(shè)備的自動(dòng)地址分配方法主要是動(dòng)態(tài)主機(jī)配置協(xié)議(dynamichostconfigurationprotocol,簡(jiǎn)稱dhcp)。參考圖1所示,網(wǎng)絡(luò)設(shè)備或主機(jī)在配置了某個(gè)接口或網(wǎng)卡為dhcp方式獲取地址信息后,會(huì)從這個(gè)接口向外發(fā)送dhcp發(fā)現(xiàn)(discover)廣播報(bào)文,在這個(gè)廣播域內(nèi)的所有dhcp服務(wù)器(server)都會(huì)收到這個(gè)dhcpdiscover報(bào)文,從而對(duì)這個(gè)報(bào)文的mac進(jìn)行地址分配,對(duì)即將分配的地址進(jìn)行地址重復(fù)檢測(cè)之后,會(huì)使用這個(gè)分配的地址對(duì)這個(gè)報(bào)文回復(fù)dhcp響應(yīng)(offer)報(bào)文,并附上自己的ip地址。設(shè)備在收到眾多dhcpoffer報(bào)文后,選取一個(gè)dhcpoffer消息,針對(duì)這一dhcpserver發(fā)送dhcp請(qǐng)求(request),這一報(bào)文為廣播報(bào)文,在廣播域內(nèi)的dhcpserver都將收到,但只有標(biāo)識(shí)了對(duì)應(yīng)ip的dhcpserver才會(huì)對(duì)這一報(bào)文進(jìn)行確認(rèn),通過dhcp應(yīng)答(ack)報(bào)文回復(fù)和確認(rèn)分配給這一設(shè)備的地址。至此,設(shè)備完成了地址的自動(dòng)獲取?,F(xiàn)有運(yùn)營(yíng)商網(wǎng)絡(luò)主要采用的設(shè)備自動(dòng)發(fā)現(xiàn)、分配ip,并實(shí)現(xiàn)網(wǎng)管管理的方法為數(shù)據(jù)通信網(wǎng)絡(luò)(datacommunicationnetwork,簡(jiǎn)稱dcn)自通功能。參考圖2所示,r1、r2、r3為網(wǎng)絡(luò)中正常運(yùn)行的設(shè)備,通過網(wǎng)管專用通道與網(wǎng)管系統(tǒng)交互信令。r4設(shè)備為網(wǎng)絡(luò)中新安裝的設(shè)備,設(shè)備中預(yù)先開啟了設(shè)備的dcn功能,并配置了相應(yīng)的網(wǎng)元id(neid)和網(wǎng)元ip(neip)。這樣r4首先建立協(xié)商點(diǎn)到點(diǎn)協(xié)議(point-to-pointprotocol,簡(jiǎn)稱ppp)通道,與r2、r3分別生成了一條點(diǎn)到點(diǎn)的路由,并建立開放式最短路徑優(yōu)先(openshortestpathfirst,簡(jiǎn)稱ospf)鄰居,這樣各鄰居通過ospf協(xié)議,由不透明的(opaque)鏈路狀態(tài)廣播(link-stateadvertisement,簡(jiǎn)稱lsa)攜帶neid,生成一條neid和neip對(duì)應(yīng)關(guān)系的核心路由,并學(xué)習(xí)到達(dá)r4的neip的32位路由。這樣網(wǎng)管系統(tǒng)訪問r4時(shí),以r2的neip為目的地址,加上r4的neid,通過傳輸控制協(xié)議,(transmissioncontrolprotocol,簡(jiǎn)稱tcp)連接到達(dá)r2;r2將數(shù)據(jù)包送至應(yīng)用層,根據(jù)neid查詢目的neip,并把目的地址修改為r4的neip,重新封裝為用戶數(shù)據(jù)報(bào)協(xié)議(userdataprotocol,簡(jiǎn)稱udp)報(bào)文,并查詢本地路由表轉(zhuǎn)發(fā)給r4;r4收到該報(bào)文后查詢到數(shù)據(jù)包的目的地為本設(shè)備,上送至應(yīng)用層來進(jìn)行處理。至此,完成了設(shè)備的即插即用,自動(dòng)上線,自動(dòng)發(fā)現(xiàn)網(wǎng)元并實(shí)現(xiàn)遠(yuǎn)程管理,從而進(jìn)行設(shè)備調(diào)測(cè)。dhcp方法雖然能夠使設(shè)備自動(dòng)獲取到地址,但無法打通控制器與設(shè)備之間的邏輯通路,無法實(shí)現(xiàn)設(shè)備的即插即用、即插即管;而dcn自通方法對(duì)設(shè)備和網(wǎng)絡(luò)限制較多,首先,鏈路需要是ppp鏈路,這樣才能形成點(diǎn)到點(diǎn)的32位主機(jī)路由,以便使ospf域內(nèi)的鄰居都能獲悉這條路由,其次,設(shè)備必須能夠支持ospf的10類lsa,這對(duì)設(shè)備提出了較高的要求。因此,上述兩種方法都不適用于本發(fā)明實(shí)施例涉及的針對(duì)于運(yùn)營(yíng)商的sdn設(shè)備自動(dòng)上線的問題。需要說明的是:在本發(fā)明實(shí)施例中,采用并詳細(xì)定義了三個(gè)新的報(bào)文格式,如圖4、圖5、圖6和表1、表2所示(其中表1是對(duì)圖3各個(gè)字段的解釋,表2是對(duì)圖6各個(gè)字段的解釋),均是在符合rfc2131所規(guī)定的如圖3所示的dhcp報(bào)文的基礎(chǔ)上,對(duì)部分option61、option60和option43字段進(jìn)行詳細(xì)定義,當(dāng)然也可以是對(duì)其他字段進(jìn)行詳細(xì)定義,在此不予限制。表1字段名位寬(byte)說明op1信息類型代碼htype1物理地址類型hlen1物理地址長(zhǎng)度hops1跳數(shù)xid4事務(wù)idsecs2客戶端開始dhcp過程的時(shí)間flags2標(biāo)記位ciaddr4客戶端ip地址yiaddr4客戶端ip地址siaddrdhcp4服務(wù)器ip地址giaddr4中繼ip地址chaddr16客戶端物理地址sname64服務(wù)器名字file128啟動(dòng)文件名options可變的可選參數(shù)域表2需要說明的是:表2中na表示長(zhǎng)度不固定,例如,sub-option2含的ip數(shù)量可能不同,其所占bytes數(shù)目不固定。實(shí)施例一本發(fā)明實(shí)施例提供了一種軟件定義網(wǎng)絡(luò)sdn設(shè)備自動(dòng)上線的方法,在本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)架構(gòu)中至少包括控制器(controller)和待上線sdn設(shè)備,在控制器和待上線sdn設(shè)備之間還可能包括已上線sdn設(shè)備,而在已上線sdn設(shè)備和控制器之間還可能包括傳統(tǒng)路由器。參考圖7所示,該方法具體包括:需要說明的是:為了便于描述,在以下實(shí)施例中,步驟s101~s109中ra在進(jìn)行自動(dòng)上線,表示待上線sdn設(shè)備,步驟s109以后,ra完成自動(dòng)上線,表示已上線sdn設(shè)備,rb表示另一待上線設(shè)備,controller1表示第一控制器,controller2表示第二控制器。s101、ra廣播封裝了虛擬局域網(wǎng)vlan標(biāo)識(shí)的dhcp發(fā)現(xiàn)報(bào)文,dhcp發(fā)現(xiàn)報(bào)文攜帶了ra的設(shè)備標(biāo)識(shí)。其中,vlan標(biāo)識(shí)就是vlan號(hào),在本發(fā)明實(shí)施例中vlan標(biāo)識(shí)是vlan4094,當(dāng)然也可以是其他的vlan號(hào),具體參考現(xiàn)有技術(shù)。在啟動(dòng)之初,即設(shè)備一上電,ra將其所有端口置于假vlan4094,具體的,ra通過預(yù)先設(shè)置,設(shè)備啟動(dòng)之初在各端口上發(fā)送的dhcp報(bào)文外面都封裝一層vlan4094的標(biāo)簽(tag)。ra的設(shè)備標(biāo)識(shí)包括客戶端id(clientid)和廠商標(biāo)識(shí),還可能包括其他的設(shè)備標(biāo)識(shí),在此不再贅述。具體的,本發(fā)明實(shí)施例在dhcpdiscover報(bào)文基礎(chǔ)上做出了修改。(1)參考圖4所示,采用并詳細(xì)定義了option61字段的客戶端(client)id,格式為sdn-hhhhhhhhhhhh-if0,其中,sdn代表了是sdn設(shè)備,hhhhhhhhhhhh為設(shè)備mac地址字符,mac地址字符占8個(gè)字節(jié)。包括mac地址字符在內(nèi),所有字符均采用ascii碼形式進(jìn)行編碼。如:mac地址為000e-5e7a-aa97的設(shè)備在發(fā)送dhcpdiscover報(bào)文時(shí),clientid為3d150053646e2d3030306535653761306139372d494630。(2)參考圖5所示,采用并詳細(xì)定義了option60字段的供廠商標(biāo)識(shí)id(vendorclassidentifier),廠商標(biāo)識(shí)id所占字節(jié)數(shù)不限定,根據(jù)具體情況而定。格式為廠商標(biāo)識(shí)id4094。如:廠商標(biāo)識(shí)id為中國(guó)聯(lián)通(chinaunicom),則vendorclassidentifier為3c0f6348696e61756e69636f6d34303934。同時(shí)option60和option61字段表明ra正在采用4094這一vlan,進(jìn)行設(shè)備自動(dòng)上線。s102、控制器向ra廣播dhcp響應(yīng)報(bào)文,dhcp響應(yīng)報(bào)文攜帶了控制器為ra分配的管理ip地址和控制器的ip地址。需要說明的是:本步驟中的控制器包括同一廣播域內(nèi)(在本發(fā)明實(shí)施例中是指vlan4094)的,且收到ra發(fā)送的dhcpdiscover報(bào)文的任一控制器,即包括下面的controller1和controller2。具體的,控制器接收ra廣播的封裝了虛擬局域網(wǎng)vlan標(biāo)識(shí)(vlan4094)的dhcpdiscover報(bào)文,dhcpdiscover報(bào)文攜帶了ra的設(shè)備標(biāo)識(shí)??刂破魍ㄟ^dhcp報(bào)文處理器,獲取帶有特殊字段option61和option60的設(shè)備信息,并保存至控制器的設(shè)備管理信息數(shù)據(jù)庫(kù)中,同時(shí)從地址池中選取一個(gè)地址分配給設(shè)備,一并寫入設(shè)備管理信息數(shù)據(jù)庫(kù)中進(jìn)行維護(hù)。示例的,controller在數(shù)據(jù)庫(kù)中記錄設(shè)備的clientid,并為其分配管理ip地址,如:20.0.0.85;控制器在進(jìn)行地址重復(fù)性檢測(cè)后,廣播dhcpoffer報(bào)文對(duì)dhcpdiscover報(bào)文進(jìn)行回復(fù),報(bào)文包括了控制器要對(duì)ra進(jìn)行分配的地址。同時(shí),控制器在檢測(cè)到option60字段后,準(zhǔn)備開啟設(shè)備上線流程。s103、ra將接收第一dhcpoffer報(bào)文的第一端口置于vlan標(biāo)識(shí)。具體的,ra接收controller1廣播的第一dhcpoffer報(bào)文,第一dhcpoffer報(bào)文為ra接收到的第一個(gè)dhcpoffer報(bào)文,第一dhcpoffer報(bào)文攜帶了controller1為ra分配的管理ip地址和controller1的ip地址。ra將接收第一dhcpoffer報(bào)文的第一端口置于vlan標(biāo)識(shí)。示例的,ra將接收第一dhcpoffer報(bào)文的第一端口置于vlan4094。ra還接收controller2廣播的第二dhcpoffer報(bào)文,第二dhcpoffer報(bào)文為ra接收到的除第一dhcpoffer報(bào)文以外的dhcpoffer報(bào)文,第二dhcpoffer報(bào)文攜帶了controller2為ra分配的管理ip地址和controller2的ip地址,丟棄第二dhcpoffer。需要說明的是:ra接收到第二dhcpoffer報(bào)文和第一dhcpoffer報(bào)文的端口可以是同一個(gè)端口,也可以不是同一個(gè)端口。s104、ra采用第一端口廣播dhcp請(qǐng)求報(bào)文,dhcp請(qǐng)求報(bào)文攜帶了ra的設(shè)備標(biāo)識(shí),以及controller1的ip地址。具體的,ra廣播發(fā)送dhcprequest,指定controller1來分配地址。s105、controller1向ra廣播dhcp應(yīng)答報(bào)文,dhcp應(yīng)答報(bào)文攜帶了控制器為ra分配管理ip地址,以及controller1的ip地址和tcp端口號(hào)。具體的,controller1接收ra廣播的dhcprequest報(bào)文,dhcprequest報(bào)文攜帶了ra的設(shè)備標(biāo)識(shí),以及controller1的ip地址。controller1回復(fù)ra設(shè)備dhcpack報(bào)文,該報(bào)文不僅攜帶了為ra分配的管理ip地址、租約等信息,同時(shí)還攜帶了如圖6所示的option43字段,帶有controller1的ip和tcp端口號(hào)。即controller1通過dhcp功能與openflow關(guān)聯(lián)器的作用,將建立openflow連接的相關(guān)信息通過dhcp的option43發(fā)送給設(shè)備,并等待設(shè)備主動(dòng)建立tcp連接和openflow連接。ra通過第一端口接收controller1廣播的dhcpack報(bào)文。dhcpack報(bào)文攜帶了controller1為ra分配的管理ip地址,以及controller1的ip地址和tcp端口號(hào)。其中controller1的ip地址和tcp端口號(hào)用以實(shí)現(xiàn)ra與controller1建立openflow連接,從而實(shí)現(xiàn)ra自動(dòng)上線。ra將controller1的ip地址、用以建立openflow連接的tcp端口號(hào)信息等記錄下來,保存在數(shù)據(jù)緩沖區(qū)(buffer)中,等待調(diào)用。至此,ra完成自動(dòng)上線過程中的自動(dòng)地址分配。s106(可選的)、ra對(duì)controller1的ip地址進(jìn)行地址解析協(xié)議(addressresolutionprotocol,簡(jiǎn)稱arp)解析。具體的,ra在收到包含controller1的ip地址的dhcpack報(bào)文后,對(duì)controller1的ip地址進(jìn)行arp解析,已獲得controller1的mac地址,為后續(xù)ra與controller1建立連接做準(zhǔn)備。ra向controller1發(fā)送arprequest報(bào)文,controller1向ra回復(fù)arpreply報(bào)文。具體的參考現(xiàn)有技術(shù),在此不再贅述。s107(可選的)、ra與controller1使用controller1的tcp端口號(hào)進(jìn)行tcp三次握手。一個(gè)正常的tcp連接需要三次握手,在本發(fā)明實(shí)施例中,首先ra發(fā)送一個(gè)包含syn(synchronous的簡(jiǎn)稱,是tcp/ip建立連接時(shí)使用的握手信號(hào))標(biāo)志的數(shù)據(jù)包,其后controller1返回一個(gè)syn/ack的應(yīng)答包,表示ra的請(qǐng)求被接受,最后ra再返回一個(gè)確認(rèn)包ack,完成tcp連接。ra向controller1發(fā)送tcpsyn報(bào)文,controller1向ra回復(fù)tcpsynack報(bào)文,ra向controller1回復(fù)報(bào)文tcpack報(bào)文。具體的參考現(xiàn)有技術(shù),在此不再贅述。ra與controller1建立的tcp連接是一個(gè)實(shí)際連接,為后續(xù)建立openflow連接進(jìn)行通信提供了一個(gè)可靠的通道。s108(可選的)、ra與controller1建立openflow連接。并完成包括獲取特征(feature)、端口(port)等信息的openflow報(bào)文交互。controller1向ra發(fā)送openflowhello報(bào)文,ra向controller1回復(fù)openflowhello報(bào)文,以及ra與controller1之間發(fā)送一系列的openflow報(bào)文。具體的參考現(xiàn)有技術(shù),在此不再贅述。至此,ra完成自動(dòng)上線過程中的自動(dòng)建立管理通道。s109、當(dāng)ra與controller1根據(jù)controller1的ip地址和tcp端口號(hào)建立了開放流openflow連接之后,controller1向ra發(fā)送出向報(bào)文,出向報(bào)文攜帶了鏈路層發(fā)現(xiàn)協(xié)議lldp消息。controller1向ra發(fā)送出向(packet_out)報(bào)文,該報(bào)文攜帶了鏈路層發(fā)現(xiàn)協(xié)議(linklayerdiscoveryprotocol,簡(jiǎn)稱lldp)消息。ra接收第一控制器發(fā)送的出向報(bào)文,出向報(bào)文攜帶了鏈路層發(fā)現(xiàn)協(xié)議lldp消息。至此,ra完成自動(dòng)上線過程中的自動(dòng)拓?fù)浒l(fā)現(xiàn),進(jìn)而ra完成設(shè)備自動(dòng)上線,成為已上線設(shè)備。在上述步驟s109完成之前,即ra是待上線sdn設(shè)備,未完成自動(dòng)上線過程之前,若ra收到來自另一待上線sdn設(shè)備rb廣播的dhcpdiscover報(bào)文,則丟棄該報(bào)文。在上述步驟s109完成之后,ra是已上線sdn設(shè)備,若ra收到來自另一待上線sdn設(shè)備rb廣播的dhcpdiscover報(bào)文,則參考圖8所示,該方法包括:s201、ra接收rb廣播的封裝了虛擬局域網(wǎng)vlan標(biāo)識(shí)的dhcp發(fā)現(xiàn)報(bào)文,dhcp發(fā)現(xiàn)報(bào)文攜帶了rb的設(shè)備標(biāo)識(shí)。此處的vlan標(biāo)識(shí)與步驟s101-s109中的vlan標(biāo)識(shí)相同,在本發(fā)明實(shí)施例中為vlan4094。rb的設(shè)備標(biāo)識(shí)包括rb的clientid和廠商標(biāo)識(shí)。dhcpdiscover報(bào)文的格式與步驟s101中的相同。具體的參考步驟s101。s202、ra向controller1發(fā)送入向報(bào)文,入向報(bào)文中封裝了rb廣播的dhcp發(fā)現(xiàn)報(bào)文。具體的,ra發(fā)現(xiàn)rb發(fā)送的dhcpdiscover報(bào)文封裝了vlan4094的標(biāo)簽,ra將rb發(fā)送的dhcpdiscover報(bào)文封裝在入向(packet_in)報(bào)文中,將其發(fā)送給controller1,并標(biāo)記接收rb發(fā)送的dhcpdiscover報(bào)文的端口。s203、controller1向ra發(fā)送openflow流表報(bào)文,openflow流表報(bào)文攜帶了將ra接收dhcp發(fā)現(xiàn)報(bào)文的端口置于vlan標(biāo)識(shí)的命令,以便于ra轉(zhuǎn)發(fā)rb與控制器之間的報(bào)文。具體的,controller1接收ra發(fā)送的第一packet_in報(bào)文,第一packet_in報(bào)文中封裝了rb廣播的dhcpdiscover報(bào)文,第一packet_in報(bào)文為controller1接收到的第一個(gè)packet_in報(bào)文。controller1還接收第二已上線sdn設(shè)備發(fā)送的第二packet_in報(bào)文,第二入向報(bào)文中封裝了rb廣播的dhcp發(fā)現(xiàn)報(bào)文,第二packet_in報(bào)文為controller1接收到的除第一packet_in報(bào)文以外的packet_in報(bào)文;丟棄第二packet_in報(bào)文。controller1從第一packet_in報(bào)文中封裝的dhcpdiscover報(bào)文中獲知rb的設(shè)備信息,以及rb正在進(jìn)行自動(dòng)上線請(qǐng)求。controller1向ra發(fā)送openflow流表(flow_mod)報(bào)文,flow_mod報(bào)文攜帶了將ra接收dhcpdiscover報(bào)文的端口置于vlan標(biāo)識(shí)(vlan4094)的命令,以便于ra轉(zhuǎn)發(fā)rb與控制器之間的報(bào)文。s204、ra根據(jù)openflow流表報(bào)文,將接收dhcp發(fā)現(xiàn)報(bào)文的端口置于vlan標(biāo)識(shí),以便于ra轉(zhuǎn)發(fā)rb與controller1之間的報(bào)文。具體的,ra接收controller1發(fā)送的flow_mod報(bào)文,flow_mod報(bào)文攜帶了將接收dhcpdiscover報(bào)文的端口置于vlan4094的命令。ra根據(jù)該flow_mod報(bào)文將步驟s202中標(biāo)記的端口置于管理vlan4094中。從而ra可以對(duì)rb與controller1之間封裝了vlan4094標(biāo)簽的報(bào)文進(jìn)行透?jìng)?。這里的透?jìng)魇侵竢a可以直接轉(zhuǎn)發(fā)rb與controller1之間封裝了vlan4094標(biāo)簽的報(bào)文,不需做任何處理,具體的參考下面步驟。s205、rb廣播封裝了vlan標(biāo)識(shí)的dhcp發(fā)現(xiàn)報(bào)文,dhcp發(fā)現(xiàn)報(bào)文攜帶了rb的設(shè)備標(biāo)識(shí)。s206、ra將rb廣播的封裝了vlan標(biāo)識(shí)的dhcp發(fā)現(xiàn)報(bào)文轉(zhuǎn)發(fā)給controller1。s207、controller1廣播dhcp響應(yīng)報(bào)文,dhcp響應(yīng)報(bào)文攜帶了controller1為rb分配的管理ip地址和控制器的ip地址。s208、ra將controller1廣播的dhcp響應(yīng)報(bào)文轉(zhuǎn)發(fā)給rb。s209、rb將接收dhcp響應(yīng)報(bào)文的端口置于vlan標(biāo)識(shí)。s210、rb采用置于vlan標(biāo)識(shí)的端口廣播dhcp請(qǐng)求報(bào)文,dhcp請(qǐng)求報(bào)文攜帶了rb的設(shè)備標(biāo)識(shí),以及controller1的ip地址。s211、ra將rb廣播的dhcp請(qǐng)求報(bào)文轉(zhuǎn)發(fā)給controller1。s212、controller1廣播dhcp應(yīng)答報(bào)文,dhcp應(yīng)答報(bào)文攜帶了控制器為rb分配管理ip地址,以及controller1的ip地址和tcp端口號(hào)。s213、ra將controller1廣播的dhcp應(yīng)答報(bào)文轉(zhuǎn)發(fā)給rb。至此,rb完成自動(dòng)上線過程中的自動(dòng)地址分配。s214、rb對(duì)controller1的ip地址進(jìn)行arp解析。s215、rb與controller1使用controller1的tcp端口號(hào)進(jìn)行tcp三次握手。s216、rb與controller1建立openflow連接。至此,rb完成自動(dòng)上線過程中的自動(dòng)建立管理通道。s217、當(dāng)rb與controller1根據(jù)controller1的ip地址和tcp端口號(hào)建立了開放流openflow連接之后,controller1向rb發(fā)送出向報(bào)文,出向報(bào)文攜帶了鏈路層發(fā)現(xiàn)協(xié)議lldp消息。s218、ra轉(zhuǎn)發(fā)controller1向rb發(fā)送的出向報(bào)文。至此,rb完成自動(dòng)上線過程中的自動(dòng)拓?fù)浒l(fā)現(xiàn),進(jìn)而rb完成設(shè)備自動(dòng)上線,成為已上線設(shè)備。上述步驟s205-s218的具體過程參考步驟s101-s109,不再贅述。為了便于對(duì)本發(fā)明實(shí)施例的進(jìn)一步理解,下面舉例說明本發(fā)明實(shí)施例的具體實(shí)現(xiàn)方式。1、參考圖9所示,當(dāng)區(qū)域a內(nèi)路由器均為傳統(tǒng)路由器時(shí),需要在r6和r8間、r7和r8間建立兩條l2vpn。這樣區(qū)域b中的sdn設(shè)備在上線時(shí),可以將報(bào)文封裝成mpls報(bào)文,經(jīng)過之前建立的l2vpn到達(dá)controller,具體參考現(xiàn)有技術(shù),在此不再贅述。r2/r4/r10/r11首先進(jìn)行自動(dòng)地址分配、自動(dòng)建立管理通道(openflow連接)和自動(dòng)拓?fù)浒l(fā)現(xiàn),實(shí)現(xiàn)自動(dòng)上線。然后r2/r4/r10/r11將接收到的下游設(shè)備發(fā)送的dhcpdiscover消息裝入openflowpacket_in報(bào)文傳送給controller,對(duì)于同一下游設(shè)備的mac,controller回復(fù)先到達(dá)的openflowpacket_in,接收到controller發(fā)送的flow_mod消息的sdn設(shè)備將下游端口劃入vlan4094。sdn設(shè)備在未完成自動(dòng)上線之前,在收到來自其他設(shè)備的dhcpdiscover報(bào)文時(shí),不處理直接丟棄。這樣,經(jīng)過sdn設(shè)備自動(dòng)上線操作后,會(huì)形成一個(gè)無環(huán)的網(wǎng)絡(luò)的管理通道,如圖10所示。避免了區(qū)域b內(nèi)的sdn設(shè)備間形成環(huán)路,造成廣播風(fēng)暴。2、參考圖9所示,當(dāng)區(qū)域a內(nèi)路由器均為sdn設(shè)備時(shí),依據(jù)r8->r6/r9->r2/r7/r10->r1/r5/r4/r11/r12->r3的上線順序,實(shí)現(xiàn)以r8為根節(jié)點(diǎn)的一根無環(huán)的自通管理通道樹,具體過程與1類似。最終形成的管理通道示意圖,如圖11所示。需要說明的是:根據(jù)本發(fā)明實(shí)施里提供的方法,圖10和圖11僅是上述兩種情況下獲得的示例的拓?fù)浣Y(jié)構(gòu),而不是唯一的拓?fù)浣Y(jié)構(gòu)。本發(fā)明實(shí)施例提供了一種sdn設(shè)備自動(dòng)上線的方法,通過待上線sdn設(shè)備與控制器之間利用擴(kuò)展的dhcp報(bào)文的交互實(shí)現(xiàn)待上線sdn設(shè)備的自動(dòng)地址分配,以及獲得待上線sdn設(shè)備與控制器建立openflow連接所需的控制器的ip地址和tcp端口號(hào),當(dāng)待上線sdn設(shè)備與控制器建立openflow連接即完成自動(dòng)建立管理通道之后,控制器向待上線sdn設(shè)備發(fā)送攜帶了鏈路層發(fā)現(xiàn)協(xié)議lldp消息的出向報(bào)文,實(shí)現(xiàn)自動(dòng)拓?fù)浒l(fā)現(xiàn),進(jìn)而一步步的實(shí)現(xiàn)了待上線sdn設(shè)備的自動(dòng)上線過程。簡(jiǎn)化了sdn網(wǎng)絡(luò)中設(shè)備上線的工作流程,提高設(shè)備上線效率,做到設(shè)備即插即用、即插即管。實(shí)施例二本發(fā)明實(shí)施例提供了一種sdn設(shè)備,該sdn設(shè)備包括:發(fā)送單元11、接收單元12和vlan處理單元13。若該sdn設(shè)備處于待上線狀態(tài),則發(fā)送單元11,用于廣播封裝了虛擬局域網(wǎng)vlan標(biāo)識(shí)的dhcp發(fā)現(xiàn)報(bào)文,所述dhcp發(fā)現(xiàn)報(bào)文攜帶了該sdn設(shè)備的設(shè)備標(biāo)識(shí);接收單元13,用于接收第一控制器廣播的第一dhcp響應(yīng)報(bào)文,所述第一dhcp響應(yīng)報(bào)文為該sdn設(shè)備接收到的第一個(gè)dhcp響應(yīng)報(bào)文,所述第一dhcp響應(yīng)報(bào)文攜帶了所述第一控制器為該sdn設(shè)備分配的管理ip地址和所述第一控制器的ip地址;vlan處理單元13,用于將接收所述第一dhcp響應(yīng)報(bào)文的第一端口置于所述vlan標(biāo)識(shí);所述發(fā)送單元11,還用于采用所述第一端口廣播dhcp請(qǐng)求報(bào)文,所述dhcp請(qǐng)求報(bào)文攜帶了該sdn設(shè)備的設(shè)備標(biāo)識(shí),以及所述第一控制器的ip地址;所述接收單元12,還用于通過第一端口接收所述第一控制器廣播的dhcp應(yīng)答報(bào)文,所述dhcp應(yīng)答報(bào)文攜帶了第一控制器為該sdn設(shè)備分配的管理ip地址,以及所述第一控制器的ip地址和tcp端口號(hào);當(dāng)該sdn設(shè)備與所述第一控制器根據(jù)所述第一控制器的ip地址和tcp端口號(hào)建立了開放流openflow連接之后,接收所述第一控制器發(fā)送的出向報(bào)文,所述出向報(bào)文攜帶了鏈路層發(fā)現(xiàn)協(xié)議lldp消息??蛇x的,所述接收單元12,還用于接收第二控制器廣播的第二dhcp響應(yīng)報(bào)文,所述第二dhcp響應(yīng)報(bào)文為該sdn設(shè)備接收到的除所述第一dhcp響應(yīng)報(bào)文以外的dhcp響應(yīng)報(bào)文,所述第二dhcp響應(yīng)報(bào)文攜帶了所述第二控制器為該sdn設(shè)備分配的管理ip地址和所述第二控制器的ip地址;丟棄所述第二dhcp響應(yīng)報(bào)文??蛇x的,所述接收單元12,還用于若接收到來自另一待上線sdn設(shè)備廣播的dhcp發(fā)現(xiàn)報(bào)文,則丟棄該報(bào)文。若該sdn設(shè)備處于已上線狀態(tài),則接收單元12,用于接收待上線sdn設(shè)備廣播的封裝了虛擬局域網(wǎng)vlan標(biāo)識(shí)的dhcp發(fā)現(xiàn)報(bào)文,所述dhcp發(fā)現(xiàn)報(bào)文攜帶了所述待上線sdn設(shè)備的設(shè)備標(biāo)識(shí);發(fā)送單元11,用于向控制器發(fā)送入向報(bào)文,所述入向報(bào)文中封裝了所述待上線sdn設(shè)備廣播的dhcp發(fā)現(xiàn)報(bào)文;所述接收單元12,還用于接收所述控制器發(fā)送的openflow流表報(bào)文,所述openflow流表報(bào)文攜帶了將接收所述dhcp發(fā)現(xiàn)報(bào)文的端口置于所述vlan標(biāo)識(shí)的命令;vlan處理單元13,用于根據(jù)所述openflow流表報(bào)文,將接收所述dhcp發(fā)現(xiàn)報(bào)文的端口置于所述vlan標(biāo)識(shí),以便于所述該sdn設(shè)備轉(zhuǎn)發(fā)所述待上線sdn設(shè)備與所述控制器之間的報(bào)文。需要說明的是:本實(shí)施例中的發(fā)送單元11可以為sdn設(shè)備上具備發(fā)送功能的接口電路,如發(fā)送機(jī)或信息發(fā)送接口;接收單元12可以為sdn設(shè)備上具備接收功能或的接口電路,如接收機(jī)或信息接收接口;其他單元可以為單獨(dú)設(shè)立的處理器,也可以集成在sdn設(shè)備的某一個(gè)處理器中實(shí)現(xiàn),此外,也可以以程序代碼的形式存儲(chǔ)于sdn設(shè)備的存儲(chǔ)器中,由sdn設(shè)備的某一個(gè)處理器調(diào)用并執(zhí)行以上各個(gè)單元的功能。這里所述的處理器可以是一個(gè)中央處理器(英文全稱:centralprocessingunit,英文簡(jiǎn)稱:cpu),或者是特定集成電路(英文全稱:applicationspecificintegratedcircuit,英文簡(jiǎn)稱:asic),或者是被配置成實(shí)施本發(fā)明實(shí)施例的一個(gè)或多個(gè)集成電路。本發(fā)明實(shí)施例提供了一種sdn設(shè)備,通過sdn設(shè)備與控制器之間利用擴(kuò)展的dhcp報(bào)文的交互實(shí)現(xiàn)sdn設(shè)備的自動(dòng)地址分配,以及獲得sdn設(shè)備與控制器建立openflow連接所需的控制器的ip地址和tcp端口號(hào),當(dāng)sdn設(shè)備與控制器建立openflow連接即完成自動(dòng)建立管理通道之后,控制器向sdn設(shè)備發(fā)送攜帶了鏈路層發(fā)現(xiàn)協(xié)議lldp消息的出向報(bào)文,實(shí)現(xiàn)自動(dòng)拓?fù)浒l(fā)現(xiàn),進(jìn)而一步步的實(shí)現(xiàn)了sdn設(shè)備的自動(dòng)上線過程。簡(jiǎn)化了sdn網(wǎng)絡(luò)中設(shè)備上線的工作流程,提高設(shè)備上線效率,做到設(shè)備即插即用、即插即管。實(shí)施例三本發(fā)明實(shí)施例提供了一種控制器,所述控制器包括:接收單元21,用于接收待上線sdn設(shè)備廣播的封裝了虛擬局域網(wǎng)vlan標(biāo)識(shí)的dhcp發(fā)現(xiàn)報(bào)文,所述dhcp發(fā)現(xiàn)報(bào)文攜帶了所述待上線sdn設(shè)備的設(shè)備標(biāo)識(shí);發(fā)送單元22,用于向所述待上線sdn設(shè)備廣播dhcp響應(yīng)報(bào)文,所述dhcp響應(yīng)報(bào)文攜帶了所述控制器為所述待上線sdn設(shè)備分配的管理ip地址和所述控制器的ip地址;所述接收單元21,還用于接收所述待上線sdn設(shè)備廣播的dhcp請(qǐng)求報(bào)文,所述dhcp請(qǐng)求報(bào)文攜帶了所述待上線sdn設(shè)備的設(shè)備標(biāo)識(shí),以及所述控制器的ip地址;所述發(fā)送單元22,還用于向所述待上線sdn設(shè)備廣播dhcp應(yīng)答報(bào)文,所述dhcp應(yīng)答報(bào)文攜帶了控制器為所述待上線sdn設(shè)備分配管理ip地址,以及所述控制器的ip地址和tcp端口號(hào);在所述待上線sdn設(shè)備與所述控制器根據(jù)所述控制器的ip地址和tcp端口號(hào)建立了openflow連接之后,向所述待上線sdn設(shè)備發(fā)送出向報(bào)文,所述出向報(bào)文攜帶了鏈路層發(fā)現(xiàn)協(xié)議lldp消息??蛇x的,所述接收單元21,還用于接收第一已上線sdn設(shè)備發(fā)送的第一入向報(bào)文,所述第一入向報(bào)文中封裝了所述待上線sdn設(shè)備廣播的dhcp發(fā)現(xiàn)報(bào)文,所述第一入向報(bào)文為所述控制器接收到的第一個(gè)入向報(bào)文;所述發(fā)送單元22,還用于向所述第一已上線sdn設(shè)備發(fā)送openflow流表報(bào)文,所述openflow流表報(bào)文攜帶了將所述第一已上線sdn設(shè)備接收所述dhcp發(fā)現(xiàn)報(bào)文的端口置于所述vlan標(biāo)識(shí)的命令,以便于所述第一已上線sdn設(shè)備轉(zhuǎn)發(fā)所述待上線sdn設(shè)備與所述控制器之間的報(bào)文。可選的,所述接收單元21,還用于接收第二已上線sdn設(shè)備發(fā)送的第二入向報(bào)文,所述第二入向報(bào)文中封裝了所述待上線sdn設(shè)備廣播的dhcp發(fā)現(xiàn)報(bào)文,所述第二入向報(bào)文為所述控制器接收到的除所述第一入向報(bào)文以外的入向報(bào)文;丟棄所述第二入向報(bào)文。需要說明的是:本實(shí)施例中的接收單元21可以為控制器上具備接收功能或的接口電路,如接收機(jī)或信息接收接口;發(fā)送單元22可以為控制器上具備發(fā)送功能的接口電路,如發(fā)送機(jī)或信息發(fā)送接口;其他單元可以為單獨(dú)設(shè)立的處理器,也可以集成在控制器的某一個(gè)處理器中實(shí)現(xiàn),此外,也可以以程序代碼的形式存儲(chǔ)于控制器的存儲(chǔ)器中,由控制器的某一個(gè)處理器調(diào)用并執(zhí)行以上各個(gè)單元的功能。這里所述的處理器與實(shí)施例二相同。本發(fā)明實(shí)施例提供了一種控制器,通過待上線sdn設(shè)備與控制器之間利用擴(kuò)展的dhcp報(bào)文的交互實(shí)現(xiàn)待上線sdn設(shè)備的自動(dòng)地址分配,以及獲得待上線sdn設(shè)備與控制器建立openflow連接所需的控制器的ip地址和tcp端口號(hào),當(dāng)待上線sdn設(shè)備與控制器建立openflow連接即完成自動(dòng)建立管理通道之后,控制器向待上線sdn設(shè)備發(fā)送攜帶了鏈路層發(fā)現(xiàn)協(xié)議lldp消息的出向報(bào)文,實(shí)現(xiàn)自動(dòng)拓?fù)浒l(fā)現(xiàn),進(jìn)而一步步的實(shí)現(xiàn)了待上線sdn設(shè)備的自動(dòng)上線過程。簡(jiǎn)化了sdn網(wǎng)絡(luò)中設(shè)備上線的工作流程,提高設(shè)備上線效率,做到設(shè)備即插即用、即插即管。在本申請(qǐng)所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng),裝置和方法,可以通過其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理包括,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用硬件加軟件功能單元的形式實(shí)現(xiàn)。上述以軟件功能單元的形式實(shí)現(xiàn)的集成的單元,可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。上述軟件功能單元存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的部分步驟。而前述的存儲(chǔ)介質(zhì)包括:u盤、移動(dòng)硬盤、只讀存儲(chǔ)器(read-onlymemory,簡(jiǎn)稱rom)、隨機(jī)存取存儲(chǔ)器(randomaccessmemory,簡(jiǎn)稱ram)、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。最后應(yīng)說明的是:以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。當(dāng)前第1頁(yè)12