專利名稱::一種gre隧道的動(dòng)態(tài)建立方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及網(wǎng)絡(luò)
技術(shù)領(lǐng)域:
,特別涉及一種GRE隧道的動(dòng)態(tài)建立方法和設(shè)備。
背景技術(shù):
:GRE(GenericRoutingEncapsulation,通用3各由封裝協(xié)議)協(xié)議是對(duì)某些網(wǎng)絡(luò)層協(xié)議如IP/IPX等的數(shù)據(jù)報(bào)文進(jìn)行封裝,使這些被封裝的數(shù)據(jù)報(bào)文能夠在另一個(gè)網(wǎng)絡(luò)層協(xié)議如IP中傳輸。GRE協(xié)議實(shí)質(zhì)上一種封裝協(xié)議,它提供了將一種協(xié)議的報(bào)文封裝在另一種協(xié)議報(bào)文中的機(jī)制,使報(bào)文能夠在異種網(wǎng)絡(luò)中傳輸。異種"R文傳輸?shù)耐ǖ婪Q為Tunnel(隧道)。Tunnel是一個(gè)虛擬的點(diǎn)對(duì)點(diǎn)的連接,提供了一條通路使封裝的數(shù)據(jù)報(bào)文能夠在這個(gè)通路上傳輸,并且在一個(gè)Tunnel的兩端分別對(duì)數(shù)據(jù)報(bào)進(jìn)行封裝及解封裝。GRE采用了Tunnel技術(shù),是VPN的第三層隧道協(xié)議。GRE隧道不能配置二層信息,但可以配置IP;也址。GRE利用為隧道指定的實(shí)際物理接口完成轉(zhuǎn)發(fā),下面以圖l所示的網(wǎng)絡(luò)場景為例。Netl中所有發(fā)送到Net2的原始報(bào)文,首先被發(fā)送到隧道源端,隧道源端根據(jù)報(bào)文頭中的目的地址域來確定如何路由此包;報(bào)文的目的地址為Net2網(wǎng)段地址,要經(jīng)過Tunnel接口,則設(shè)備將此報(bào)文發(fā)給相應(yīng)的Tunnel接口。原始報(bào)文在隧道源端進(jìn)行GRE封裝,填寫隧道建立時(shí)確定的隧道源地址和目的地址,然后再通過公共IP網(wǎng)絡(luò)轉(zhuǎn)發(fā)到遠(yuǎn)端VPN網(wǎng)絡(luò)?,F(xiàn)有技術(shù)中建立GRE建立隧道時(shí)必須知道對(duì)端設(shè)備的IP地址。這樣GRE隧道連接建立依賴于固定的IP地址,一旦隧道兩端有一端設(shè)備IP地址更換就必須手動(dòng)更改隧道另一端的GRETunnel配置。另外,傳統(tǒng)的GRE隧道建立必須知道對(duì)方的IP地址,這樣就使得使用動(dòng)態(tài)IP地址的設(shè)備無法正常建立GRE隧道。
發(fā)明內(nèi)容本發(fā)明提供一種GRE隧道的動(dòng)態(tài)建立方法和設(shè)備,用于在GRE隧道兩端IP地址動(dòng)態(tài)變化的情況下,在GRE兩端的設(shè)備之間動(dòng)態(tài)建立GRE隧道。為達(dá)到上述目的,本發(fā)明提供一種GRE隧道的動(dòng)態(tài)建立方法,包括需要建立GRE隧道的端設(shè)備將自身用于建立GRE隧道的GRE隧道信息傳遞出去,所述GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址;所述端設(shè)備根據(jù)收到的其他端設(shè)備發(fā)送的報(bào)文中GRE隧道信息所包括的關(guān)鍵字Key,判斷所述GRE隧道信息是否屬于自己需要建立的隧道,如果是,則根據(jù)所述GRE隧道信息包括的對(duì)端設(shè)備隧道接口IP地址和隧道源IP地址,并結(jié)合自身的隧道信息與所述對(duì)端設(shè)備建立GRE隧道。其中,所述需要建立GRE隧道的端設(shè)備將自身用于建立GRE隧道的GRE隧道信息傳遞出去包括需要建立GRE隧道的端設(shè)備向預(yù)先設(shè)置的組播組地址發(fā)送發(fā)現(xiàn)報(bào)文,所述發(fā)現(xiàn)報(bào)文中攜帶自身用于建立GRE隧道的GRE隧道信息,所述GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址;加入到所述組播組的其他設(shè)備接收到所述發(fā)現(xiàn)報(bào)文。其中,所述端設(shè)備根據(jù)收到的其他端設(shè)備發(fā)送的報(bào)文中GRE隧道信息所包括的關(guān)鍵字Key,判斷所述隧道信息是否屬于自己需要建立的隧道,如果是,則根據(jù)所述GRE隧道信息包括的對(duì)端設(shè)備隧道接口IP地址和隧道源IP地址,并結(jié)合自身的隧道信息與所述對(duì)端設(shè)備建立GRE隧道包括所述端設(shè)備接收對(duì)端設(shè)備通過組播方式發(fā)送的發(fā)現(xiàn)報(bào)文;所述端設(shè)備獲取所述發(fā)現(xiàn)報(bào)文中攜帶的所述對(duì)端設(shè)備的GRE隧道信息所包括的關(guān)鍵字Key;當(dāng)所述對(duì)端設(shè)備的隧道關(guān)鍵字Key與所述端設(shè)備上預(yù)先配置的隧道關(guān)鍵字Key相同、且所述對(duì)端設(shè)備的隧道接口IP地址與所述端設(shè)備的隧道接口IP地址處于同一網(wǎng)段時(shí),所述端設(shè)備將所述對(duì)端設(shè)備的隧道源IP地址作為所述ii對(duì)端設(shè)備建立GRE隧道所使用的IP地址,與所述對(duì)端設(shè)備建立GRE隧道;所述端設(shè)備向所述對(duì)端設(shè)備發(fā)送所述端設(shè)備的隧道源IP地址。其中,所述與所述對(duì)端設(shè)備建立GRE隧道后,還包括所述端設(shè)備接收所述對(duì)端設(shè)備發(fā)送的更新4艮文;所述端設(shè)備獲取所述更新報(bào)文中GRE隧道信息所包括的所述對(duì)端設(shè)備的隧道關(guān)鍵字Key、隧道接口IP地址和變化后的隧道源IP地址;所述端設(shè)備才艮據(jù)所述對(duì)端設(shè)備的變化后的隧道源IP地址,更新與所述對(duì)端設(shè)備建立的所述GRE隧道,并向所述對(duì)端設(shè)備發(fā)送響應(yīng)。其中,所述與所述對(duì)端設(shè)備建立GRE隧道后,還包括所述端設(shè)備建立GRE隧道所使用的隧道源IP地址發(fā)生變化時(shí),向所述GRE隧道的對(duì)端設(shè)備發(fā)送更新報(bào)文,所述更新報(bào)文中的GRE隧道信息包括所述端設(shè)備的隧道關(guān)鍵字Key、隧道接口IP地址和變化后的隧道源IP地址;所述對(duì)端設(shè)備根據(jù)所述更新報(bào)文,更新與所述端設(shè)備建立的所述GRE隧道。其中,還包括所述端設(shè)備向預(yù)先設(shè)置的組播組地址發(fā)送發(fā)現(xiàn)報(bào)文后,在預(yù)先設(shè)置的時(shí)間內(nèi)未接收到響應(yīng)時(shí),重新發(fā)送所述發(fā)現(xiàn)報(bào)文;重新發(fā)送所述發(fā)現(xiàn)報(bào)文的次數(shù)超過預(yù)設(shè)的門限時(shí),所述端設(shè)備進(jìn)入休眠,直至配置發(fā)生變化或接收到對(duì)端設(shè)備發(fā)送的發(fā)現(xiàn)報(bào)文;休眠期間內(nèi)所述端設(shè)備不發(fā)送報(bào)文;和/或所述端設(shè)備向所述GRE隧道的對(duì)端設(shè)備發(fā)送更新報(bào)文后,在預(yù)先設(shè)置的時(shí)間內(nèi)未接收到響應(yīng)時(shí),重新發(fā)送所述更新報(bào)文;重新發(fā)送所述更新報(bào)文的次數(shù)超過預(yù)設(shè)的門限時(shí),所述端設(shè)備進(jìn)入休眠,直至配置發(fā)生變化或接收到所述對(duì)端設(shè)備發(fā)送的發(fā)現(xiàn)報(bào)文;休眠期間內(nèi)所述端設(shè)備不發(fā)送報(bào)文。其中,所述需要建立GRE隧道的端設(shè)備將自身用于建立GRE隧道的GRE隧道信息傳遞出去包括需要建立GRE隧道的端設(shè)備向網(wǎng)絡(luò)中的GRE服務(wù)器發(fā)送注冊(cè)報(bào)文,所述注冊(cè)報(bào)文的GRE隧道信息中包括隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址。其中,所述需要建立GRE隧道的端設(shè)備向網(wǎng)絡(luò)中的GRE服務(wù)器發(fā)送注冊(cè)報(bào)文后還包括所述GRE服務(wù)器根據(jù)所述注冊(cè)報(bào)文存儲(chǔ)關(guān)于所述端設(shè)備的GRE隧道信息的表項(xiàng);所述GRE服務(wù)器查詢本地已存儲(chǔ)的其他設(shè)備的GRE隧道信息的表項(xiàng)中,是否存在與所述端設(shè)備具有相同隧道關(guān)鍵字Key的表項(xiàng);所述GRE服務(wù)器將具有相同隧道關(guān)鍵字Key的表項(xiàng)中的GRE隧道信息添加在通告報(bào)文中并發(fā)送給所述端設(shè)備。其中,所述GRE服務(wù)器將具有相同隧道關(guān)鍵字Key的表項(xiàng)中的GRE隧道信息添加在通告4艮文中并發(fā)送給所述端設(shè)備后,還包括所述GRE服務(wù)器將所述端設(shè)備的GRE隧道信息添加在通告報(bào)文中,向與所述端設(shè)備具有相同隧道關(guān)鍵字Key的表項(xiàng)所對(duì)應(yīng)的設(shè)備發(fā)送。其中,所述端設(shè)備根據(jù)收到的其他端設(shè)備發(fā)送的報(bào)文中GRE隧道信息所包括的關(guān)鍵字Key,判斷所述隧道信息是否屬于自己需要建立的隧道,如果是,則根據(jù)所述GRE隧道信息包括的對(duì)端設(shè)備隧道接口IP地址和隧道源IP地址,并結(jié)合自身的隧道信息與所述對(duì)端設(shè)備建立GRE隧道包括所述端設(shè)備接收網(wǎng)絡(luò)中GRE服務(wù)器發(fā)送的通告報(bào)文;所述端設(shè)備獲取所述通告報(bào)文中攜帶的對(duì)端設(shè)備的GRE隧道信息所包括的關(guān)鍵字Key;當(dāng)所述對(duì)端設(shè)備的隧道關(guān)鍵字Key與所述端設(shè)備上預(yù)先配置的隧道關(guān)鍵字Key相同、且所述對(duì)端設(shè)備的隧道接口IP地址與所述端設(shè)備的隧道接口IP地址處于同一網(wǎng)段時(shí),所述端設(shè)備將所述對(duì)端設(shè)備的隧道源IP地址作為所述對(duì)端設(shè)備建立GRE隧道所使用的IP地址,與所述對(duì)端設(shè)備建立GRE隧道。其中,所述與所述對(duì)端設(shè)備建立GRE隧道后,還包括所述端設(shè)備在隧道源IP地址發(fā)生變化時(shí),向所述GRE服務(wù)器發(fā)送通告報(bào)文,所述通告才艮文中攜帶隧道關(guān)鍵字Key、隧道接口IP地址以及變化后的隧道源IP;也址;13其中,所述與所述對(duì)端設(shè)備建立GRE隧道后,還包括所述端設(shè)備接收所述GRE服務(wù)器發(fā)送的通告才艮文,所述通告才艮文中攜帶所述對(duì)端設(shè)備的隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址;所述端設(shè)備檢測(cè)到所述對(duì)端設(shè)備建立GRE隧道的隧道源IP地址發(fā)生變化時(shí),更新與所述對(duì)端i殳備建立的所述GRE隧道。其中,所述端設(shè)備接收所述GRE服務(wù)器發(fā)送的通告報(bào)文包括所述端設(shè)備接收所述GRE服務(wù)器在檢測(cè)到所述對(duì)端設(shè)備建立GRE隧道所使用的隧道源IP地址發(fā)生變化時(shí)發(fā)送的通告報(bào)文;或所述端設(shè)備接收所述GRE服務(wù)器通過組播方式向本端設(shè)備發(fā)送的通告報(bào)文,所述通告報(bào)文中攜帶所述GRE服務(wù)器中已存儲(chǔ)的所有表項(xiàng)。本發(fā)明還提供一種網(wǎng)絡(luò)設(shè)備,用于GRE隧道的動(dòng)態(tài)建立,包括隧道信息發(fā)送單元,用于將自身用于建立GRE隧道的GRE隧道信息傳遞出去,所述GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址;隧道建立單元,用于根據(jù)收到的其他端設(shè)備發(fā)送的報(bào)文中GRE隧道信息所包括的關(guān)鍵字Key,判斷所述GRE隧道信息是否屬于自己需要建立的隧道,如果是,則根據(jù)所述GRE隧道信息包括的對(duì)端設(shè)備隧道接口IP地址和隧道源IP地址,并結(jié)合自身的隧道信息與所述對(duì)端設(shè)備建立GRE隧道。其中,所述隧道信息發(fā)送單元包括第一隧道信息發(fā)送子單元,用于向預(yù)先設(shè)置的組播組地址發(fā)送發(fā)現(xiàn)報(bào)文,所述發(fā)現(xiàn)報(bào)文中攜帶自身用于建立GRE隧道的GRE隧道信息,所述GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址,使得加入到所述組播組的其他設(shè)備接收到所述發(fā)現(xiàn)報(bào)文。其中,所述隧道建立單元包括第一隧道信息獲取子單元,用于接收所述對(duì)端設(shè)備通過組播方式發(fā)送的發(fā)現(xiàn)報(bào)文時(shí),獲取所述發(fā)現(xiàn)報(bào)文中攜帶的所述對(duì)端設(shè)備的GRE隧道信息所包括的關(guān)鍵字Key;第一隧道建立子單元,用于當(dāng)所述第一隧道信息獲取子單元獲取的對(duì)端設(shè)備的隧道關(guān)鍵字Key與所述端設(shè)備上預(yù)先配置的隧道關(guān)鍵字Key相同、且所述對(duì)端設(shè)備的隧道接口IP地址與所述端設(shè)備的隧道接口IP地址處于同一網(wǎng)段時(shí),將所述對(duì)端設(shè)備的隧道源IP地址作為所述對(duì)端設(shè)備建立GRE隧道所使用的IP地址,與所述對(duì)端設(shè)備建立GRE隧道;隧道信息通知子單元,用于向所述對(duì)端設(shè)備發(fā)送所述端設(shè)備的隧道源IP地址。其中,還包括第一隧道更新單元,用于接收所述對(duì)端設(shè)備發(fā)送的更新報(bào)文時(shí),獲取所述更新報(bào)文中GRE隧道信息所包括的所述對(duì)端設(shè)備的隧道關(guān)鍵字Key、隧道接口IP地址和變化后的隧道源IP地址;根據(jù)所述第一隧道更新信息獲取子單元獲取的對(duì)端i殳備的變化后的隧道源IP地址,更新與所述對(duì)端設(shè)備建立的所述GRE隧道,并向所述對(duì)端設(shè)備發(fā)送響應(yīng);第一隧道更新信息發(fā)送單元,用于在建立GRE隧道所使用的隧道源IP地址發(fā)生變化時(shí),向所述GRE隧道的對(duì)端設(shè)備發(fā)送更新報(bào)文,所述更新報(bào)文中的GRE隧道信息包括所述端設(shè)備的隧道關(guān)鍵字Key、隧道接口IP地址和變化后的隧道源IP地址,觸發(fā)所述對(duì)端設(shè)備更新已建立的GRE隧道;休眠控制單元,用于所述隧道信息發(fā)送單元向預(yù)先設(shè)置的組播組地址發(fā)送發(fā)現(xiàn)報(bào)文后,在預(yù)先設(shè)置的時(shí)間內(nèi)未接收到響應(yīng)時(shí),重新發(fā)送所述發(fā)現(xiàn)報(bào)文;重新發(fā)送所述發(fā)現(xiàn)報(bào)文的次數(shù)超過預(yù)設(shè)的門限時(shí),控制自身設(shè)備進(jìn)入休眠,直至配置發(fā)生變化或接收到所述對(duì)端設(shè)備發(fā)送的發(fā)現(xiàn)報(bào)文;休眠期間內(nèi)自身設(shè)備不發(fā)送報(bào)文;和/或所述第一隧道更新信息發(fā)送單元向.所述GRE隧道的對(duì)端設(shè)備發(fā)送更新報(bào)文后,在預(yù)先設(shè)置的時(shí)間內(nèi)未接收到響應(yīng)時(shí),重新發(fā)送所述更新報(bào)文;重新發(fā)送所述更新報(bào)文的次數(shù)超過預(yù)設(shè)的門限時(shí),控制自身設(shè)備進(jìn)入休眠,直至配置發(fā)生變化或接收到所述對(duì)端設(shè)備發(fā)送的發(fā)現(xiàn)報(bào)文;休眠期間內(nèi)自身設(shè)備不發(fā)送報(bào)文。其中,所述隧道信息發(fā)送單元包括第二隧道信息發(fā)送子單元,用于向網(wǎng)絡(luò)中的GRE服務(wù)器發(fā)送注冊(cè)報(bào)文,所述注冊(cè)報(bào)文的GRE隧道信息中包括隧道關(guān)4建字Key、隧道4妄口IP地址和隧道源IP地址。其中,所述隧道建立單元包括第二隧道信息獲取子單元,用于接收到網(wǎng)絡(luò)中GRE服務(wù)器發(fā)送的通告報(bào)文時(shí),獲取所述通告報(bào)文中攜帶的對(duì)端設(shè)備的GRE隧道信息所包括的關(guān)鍵字Key;第二隧道建立子單元,用于當(dāng)所述第二隧道信息獲取子單元獲取的對(duì)端設(shè)備的隧道關(guān)鍵字Key與所述端設(shè)備上預(yù)先配置的隧道關(guān)鍵字Key相同、且所述對(duì)端設(shè)備的隧道接口IP地址與所述端設(shè)備的隧道接口IP地址處于同一網(wǎng)段時(shí),所述端設(shè)備將所述對(duì)端設(shè)備的隧道源IP地址作為所述對(duì)端設(shè)備建立GRE隧道所使用的IP地址,與所述對(duì)端設(shè)備建立GRE隧道。其中,還包括第二隧道更新信息發(fā)送單元,用于在自身設(shè)備的隧道源IP地址發(fā)生變化時(shí),向所述GRE服務(wù)器發(fā)送通告報(bào)文,所述通告報(bào)文的GRE隧道信息中攜帶隧道關(guān)鍵字Key、隧道接口IP地址以及變化后的隧道源IP地址;第二隧道更新單元,用于接收所述GRE服務(wù)器發(fā)送的通告報(bào)文,所述通告報(bào)文的GRE隧道信息中攜帶所述對(duì)端設(shè)備的隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址;當(dāng)4企測(cè)到所述對(duì)端設(shè)備建立GRE隧道的隧道源IP地址發(fā)生變化時(shí),更新與所述對(duì)端設(shè)備建立的所述GRE隧道。本發(fā)明還提供一種GRE服務(wù)器,包括通告報(bào)文生成單元,用于生成通告報(bào)文,所述通告報(bào)文中攜帶GRE隧道目的端設(shè)備的GRE隧道信息,所述GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址以及變化后的隧道源IP地址;通告報(bào)文發(fā)送單元,用于將所述通告報(bào)文向所述GRE隧道的源端設(shè)備發(fā)送。其中,還包括注冊(cè)報(bào)文接收單元,用于接收網(wǎng)絡(luò)設(shè)備發(fā)送的注冊(cè)報(bào)文,所述注冊(cè)報(bào)文中攜帶網(wǎng)絡(luò)設(shè)備的GRE隧道信息,所述GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址以及變化后的隧道源IP地址;表項(xiàng)存儲(chǔ)單元,用于根據(jù)所述注冊(cè)報(bào)文存儲(chǔ)關(guān)于所述網(wǎng)絡(luò)設(shè)備的GRE隧道信息的表項(xiàng);表項(xiàng)更新單元,用于在接收到關(guān)于GRE隧道一端的網(wǎng)絡(luò)設(shè)備在建立GRE隧道所使用的隧道源IP地址發(fā)生變化的通告報(bào)文時(shí),根據(jù)所述通告報(bào)文更新已存儲(chǔ)的所述網(wǎng)絡(luò)設(shè)備的GRE隧道信息的表項(xiàng)。其中,所述通告4艮文生成單元包括表項(xiàng)查詢子單元,用于查詢本地已存儲(chǔ)的網(wǎng)絡(luò)設(shè)備的GRE隧道信息的表項(xiàng)中,是否存在與GRE隧道的源端設(shè)備具有相同隧道關(guān)鍵字Key的表項(xiàng);通告報(bào)文生成子單元,用于根據(jù)所述表項(xiàng)查詢子單元查詢到的表項(xiàng),將查找到的具有相同隧道關(guān)4建字Key的表項(xiàng)中的GRE隧道信息添加在通告報(bào)文中,并通過所述通告報(bào)文發(fā)送單元向所述GRE隧道的源端設(shè)備發(fā)送;還用于將所述源端設(shè)備的GRE隧道信息添加在通告報(bào)文中,并通過所述通告報(bào)文發(fā)送單元向與所述源端設(shè)備所述具有相同隧道關(guān)鍵字Key的表項(xiàng)所對(duì)應(yīng)的設(shè)備發(fā)送。其中,所述通告報(bào)文發(fā)送單元包括第一通告報(bào)文發(fā)送子單元,用于在檢測(cè)到GRE隧道一端的設(shè)備建立GRE隧道所使用的IP地址發(fā)生變化時(shí),向所述GRE另隧道一端的設(shè)備發(fā)送通告才艮文;或第二通告報(bào)文發(fā)送子單元,用于定期向GRE隧道兩端的設(shè)備發(fā)送通告報(bào)文;或第三通告報(bào)文發(fā)送子單元,用于通過組播方式向GRE隧道兩端的設(shè)備發(fā)送通告報(bào)文,所述通告報(bào)文中攜帶所述表項(xiàng)存儲(chǔ)單元中已存儲(chǔ)的所有表項(xiàng)。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點(diǎn)通過使用本發(fā)明,通過報(bào)文中攜帶的GRE隧道信息,在GRE隧道兩端IP地址動(dòng)態(tài)變化的情況下,在GRE兩端的設(shè)備之間建立GRE隧道,使得GRE隧道的建立和更新更加靈活,可以實(shí)時(shí)4全測(cè)調(diào)整GRE隧道狀態(tài),提高GRE隧道數(shù)據(jù)傳輸有效性和網(wǎng)絡(luò)帶寬的有效利用率。另外,實(shí)現(xiàn)了通過組播方式和在網(wǎng)絡(luò)中部署GRE服務(wù)器的方法,在網(wǎng)絡(luò)中建立GRE隧道的設(shè)備間傳遞17GRE隧道信息。為了更清楚地說明本發(fā)明實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1是現(xiàn)有技術(shù)中部署了GRE隧道的網(wǎng)絡(luò)示意圖;圖2是本發(fā)明GRE隧道的動(dòng)態(tài)建立方法流程圖;圖3是本發(fā)明中一應(yīng)用場景的網(wǎng)絡(luò)結(jié)構(gòu)示意圖;圖4是本發(fā)明中GRE隧道的發(fā)現(xiàn)階段的流程圖;圖5是本發(fā)明中GRE隧道的更新階段的流程圖;圖6是本發(fā)明中另一應(yīng)用場景的網(wǎng)絡(luò)結(jié)構(gòu)示意圖;圖7是本發(fā)明中GRE隧道的動(dòng)態(tài)建立方法流程圖;圖8是本發(fā)明中網(wǎng)絡(luò)設(shè)備的結(jié)構(gòu)示意圖;圖9是本發(fā)明中網(wǎng)絡(luò)設(shè)備的另一結(jié)構(gòu)示意圖;圖IO是本發(fā)明中網(wǎng)絡(luò)設(shè)備的再一結(jié)構(gòu)示意圖;圖ll是本發(fā)明中GRE服務(wù)器的結(jié)構(gòu)示意圖。具體實(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ā)明提供一種GRE隧道的動(dòng)態(tài)建立方法,如圖2所示,包括步驟s201、需要建立GRE隧道的端設(shè)備將自身用于建立GRE隧道的GRE隧道信息傳遞出去,所述GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP;l也址。18步驟s202、端設(shè)備根據(jù)收到的其他端設(shè)備發(fā)送的報(bào)文中GRE隧道信息所包括的關(guān)鍵字Key,判斷GRE隧道信息是否屬于自己需要建立的隧道,如果是,則根據(jù)GRE隧道信息包括的對(duì)端設(shè)備隧道接口IP地址和隧道源IP地址,并結(jié)合自身的隧道信息與對(duì)端設(shè)備建立GRE隧道。本發(fā)明中通過報(bào)文中攜帶的GRE隧道信息,可以在GRE隧道兩端IP地址動(dòng)態(tài)變化的情況下,在GRE兩端的設(shè)備之間建立GRE隧道,使得GRE隧道的建立和更新更加靈活。具體的,本發(fā)明采用兩種方式實(shí)現(xiàn)動(dòng)態(tài)GRE隧道的建立和維護(hù)。一是采用組播方式傳遞GRE隧道信息;另一種方式采用GREServer收集并傳遞GRE隧道信息,從而維護(hù)及時(shí)更新GRE隧道兩端動(dòng)態(tài)IP地址的方式實(shí)現(xiàn)動(dòng)態(tài)GRE隧道。以下分別對(duì)這兩種GRE隧道的建立方式進(jìn)行描述。(一)采用組^"方式實(shí)現(xiàn)GRE隧道的動(dòng)態(tài)建立和維護(hù)采用組播方式實(shí)現(xiàn)動(dòng)態(tài)GRE隧道時(shí),需要在GRE隧道兩端的路由器上配置能唯一標(biāo)識(shí)此GRE隧道的關(guān)鍵字Key,使用關(guān)鍵字Key以及組播方式實(shí)現(xiàn)GRE隧道建立和維護(hù)的流程主要分為三個(gè)階段發(fā)現(xiàn)階段、更新階段、休眠階段。發(fā)現(xiàn)階段主要是GRE隧道源端發(fā)現(xiàn)GRE隧道目的端并建立GRE隧道的過程;更新階段為GRE隧道建立后,GRE隧道兩端IP地址變化時(shí)對(duì)GRE隧道的IP進(jìn)行更新的過程;休眠階段是指由于網(wǎng)絡(luò)故障或配置錯(cuò)誤等原因?qū)е翯RE隧道建立失敗時(shí),GRE隧道源端和目的端進(jìn)入休眠階段。以下以圖3所示的應(yīng)用場景為例,描述本發(fā)明中采用組播方式實(shí)現(xiàn)GRE隧道動(dòng)態(tài)建立的方法。圖3中所示的路由器A、路由器B和路由器C位于同一網(wǎng)段。以需要在路由器A和路由器B之間建立GRE隧道TunnelO、路由器A和路由器C之間建立GRE隧道Tunnell為例,則預(yù)先在路由器A、路由器B和路由器C上分別配置GRE隧道的關(guān)鍵字Key,假設(shè)路由器A上配置的關(guān)鍵字Key為{0001,0002},路由器B上配置的關(guān)鍵字Key為(0001),路由器C上配置的關(guān)鍵字Key為(0002〉。則GRE隧道的發(fā)現(xiàn)階段如圖4所示,包括以下流程步驟s401、路由器A獲取到建立TunnelO所需的源IP地址后,以特定的組播19地址向網(wǎng)絡(luò)發(fā)送發(fā)現(xiàn)(Discovery)報(bào)文,傳遞自身的GRE隧道信息,GRE隧道信息包括路由器A的隧道關(guān)鍵字Key、隧道接口IP地址以及所獲取的GRE隧道源IP地址,對(duì)于路由器A,假設(shè)Tunnel0對(duì)應(yīng)的關(guān)鍵字Key為0001,隧道接口IP地址為1.1丄1,GRE隧道源IP地址為lO.l丄l,則發(fā)現(xiàn)報(bào)文中傳遞的GRE隧道信息包括(0001,l丄l.l,10.1.1.1)。網(wǎng)絡(luò)中需要建立GRE隧道的各路由器加入到該組播組,可以接收到路由器A通過組播方式發(fā)送的發(fā)現(xiàn)報(bào)文。步驟s402、加入到該組播組的路由器B收到發(fā)現(xiàn)報(bào)文后,判斷發(fā)現(xiàn)報(bào)文中的關(guān)鍵字Key與本設(shè)備上配置的關(guān)鍵字Key相同,且根據(jù)發(fā)現(xiàn)報(bào)文中攜帶的隧道接口IP地址判斷與路由器A位于同一網(wǎng)段,則將該發(fā)現(xiàn)報(bào)文中攜帶的GRE隧道源IP地址寫入本設(shè)備隧道目的IP地址。若路由器C也收到了路由器A發(fā)送的發(fā)現(xiàn)報(bào)文,由于發(fā)現(xiàn)報(bào)文中的關(guān)鍵字Key與本設(shè)備上配置的關(guān)鍵字Key不同,因此路由器C不會(huì)對(duì)該發(fā)現(xiàn)報(bào)文進(jìn)行任何響應(yīng)。步驟s403、路由器B以單播方式向路由器A回應(yīng)本設(shè)備建立GRE隧道所使用的隧道源IP地址信息,路由器A獲得路由器B的隧道源IP地址信息后,路由器B與路由器A之間建立GRE隧道。同理可知,如需要在路由器A和路由器C之間建立GRE隧道,則路由器A獲取到Tunnell的源IP地址后(假設(shè)為20.1丄1),以特定的組播地址向網(wǎng)絡(luò)發(fā)送發(fā)現(xiàn)報(bào)文,發(fā)現(xiàn)報(bào)文中傳遞的GRE隧道信息包括(0002,1.1.2.1,20.1.1.1),則路由器C收到該發(fā)現(xiàn)報(bào)文后所進(jìn)行的處理與上述步驟s401~s403中路由器B所執(zhí)行的流程相似,最終將在路由器C與路由器A之間建立GRE隧道,對(duì)此流程在此不進(jìn)行重復(fù)描述?;谙嗨频牧鞒?,路由器B和路由器C也通過特定的組播地址向網(wǎng)絡(luò)發(fā)送發(fā)現(xiàn)(Discovery)報(bào)文,傳遞自身的GRE隧道信息。路由器A獲取到路由器B和路由器C的GRE隧道信息后,會(huì)通過單播方式分別向路由器B和路由器C回應(yīng)本設(shè)備建立GRE隧道所使用的隧道源IP地址,從而在路由器B與路由器A之間、路由器C與路由器A之間分別建立GRE隧道。該過程與上述步驟s401~s403中所描述的流程相似,對(duì)此流程在此不進(jìn)行重復(fù)描述。另外,如果路由器A在一定時(shí)間內(nèi)沒有收到任何響應(yīng),則認(rèn)為網(wǎng)絡(luò)出現(xiàn)了異常情況導(dǎo)致發(fā)現(xiàn)報(bào)文被丟棄或GRE隧道目的端配置失敗,則重新發(fā)送發(fā)現(xiàn)報(bào)文。連續(xù)發(fā)送多個(gè)周期沒有收到響應(yīng),則認(rèn)為GRE隧道建立失敗,路由器A進(jìn)入休眠階段,直至路由器A上的配置發(fā)生變化或接收到對(duì)端設(shè)備發(fā)送的發(fā)現(xiàn)報(bào)文;休眠期間內(nèi)路由器A不發(fā)送報(bào)文。以路由器A建立隧道TunnelO所使用的IP地址發(fā)生變化為例,GRE隧道的更新階段如圖5所示,包括以下流程步驟s501、路由器A通過單播方式向作為GRE隧道目的端的路由器B發(fā)送更新(Update)4艮文,更新報(bào)文中傳遞的GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址以及所獲取的GRE隧道源IP地址。假設(shè)路由器A建立隧道TunnelO所使用的GRE隧道源IP地址變?yōu)?0.1.1.2,則更新4艮文中傳遞的GRE隧道信息包括(OOOl,1.1.1.1,10.1.1.2)步驟s502、路由器B收到此更新報(bào)文,則更新對(duì)應(yīng)GRE隧道的目的IP地址信息,并回應(yīng)確認(rèn)消息給路由器A。基于相似的流程,路由器B在建立隧道所使用的源IP地址發(fā)生變化時(shí),同樣可以通過單播方式向路由器A發(fā)送更新報(bào)文,使得路由器A根據(jù)該更新報(bào)文更新GRE隧道的IP地址,,人而實(shí)現(xiàn)GRE隧道的更新。該流程與上述圖5所示的流程相似,在此不進(jìn)行重復(fù)描述。另夕卜,一種特殊情況是GRE隧道兩端IP同時(shí)變化,則由于GRE隧道目的端路由器B的IP地址變化,路由器A發(fā)出的更新報(bào)文不能到達(dá)路由器B?;蛘哂捎诰W(wǎng)絡(luò)原因?qū)е侣酚善鰾沒有收到更新報(bào)文,路由器A在一定時(shí)間內(nèi)沒有收到確認(rèn)消息時(shí),重新發(fā)送更新報(bào)文。如連續(xù)發(fā)送三到四個(gè)周期后仍然沒有收到回應(yīng)報(bào)文,則路由器A判斷GRE隧道的更新失敗,進(jìn)入發(fā)現(xiàn)階段。建立GRE隧道的設(shè)備在休眠階段中對(duì)各種異常情況進(jìn)行處理。建立GRE隧道的設(shè)備處于休眠階段時(shí),標(biāo)識(shí)GRE隧道處于故障狀態(tài),此時(shí)GRE隧道兩端不轉(zhuǎn)發(fā)GRE報(bào)文,以免造成網(wǎng)絡(luò)帶寬的浪費(fèi)。此時(shí),如出現(xiàn)GRE隧道配置更改,或收到GRE隧道另一端發(fā)送的發(fā)現(xiàn)報(bào)文,GRE隧道兩端的設(shè)備自動(dòng)進(jìn)入發(fā)現(xiàn)階段發(fā)現(xiàn)并建立GRE隧道。否則,GRE隧道兩端的設(shè)備定期發(fā)送發(fā)現(xiàn)報(bào)文監(jiān)測(cè)GRE隧道狀態(tài)。上述實(shí)施例的描述中均主要以路由器A為例說明GRE隧道建立和維護(hù)的發(fā)現(xiàn)階段、更新階段和休眠階段,可以理解的是該應(yīng)用于路由器A上的流程同樣可以應(yīng)用于路由器B、路由器C以及網(wǎng)絡(luò)中的其他路由器上,例如將路由器B和路由器A的角色對(duì)調(diào),通過向網(wǎng)絡(luò)通過組播方式發(fā)送發(fā)現(xiàn)報(bào)文、向已建立GRE隧道的對(duì)端設(shè)備發(fā)送更新報(bào)文、接收對(duì)端設(shè)備對(duì)發(fā)現(xiàn)報(bào)文的響應(yīng)報(bào)文以及對(duì)端設(shè)備在建立GRE隧道的地址發(fā)生變化時(shí)的更新I艮文的方式,實(shí)現(xiàn)基于組播方式的GRE隧道的動(dòng)態(tài)建立和維護(hù)。(二)采用GREServer方式實(shí)現(xiàn)GRE隧道的動(dòng)態(tài)建立和維護(hù)傳遞建立和更新隧道所需的信息,同時(shí),也可以將信息集中傳遞給第三方設(shè)備如GREServer的方式實(shí)現(xiàn)GRE隧道的動(dòng)態(tài)建立,在這種情況下,隧道兩端均將攜帶建立隧道所需信息的報(bào)文傳遞給GREServer,同時(shí),在GRE隧道兩端配置指定GREServer的IP地址,以及能唯一標(biāo)識(shí)一條GRE隧道的關(guān)4建字Key,同一隧道兩端配置相同的關(guān)鍵字Key。GREServer用于GRE隧道的管理,為網(wǎng)絡(luò)中GRE隧道兩端均可達(dá)的設(shè)備,可以由網(wǎng)絡(luò)中已有的路由器充當(dāng)GREServer,也可由接入網(wǎng)絡(luò)的其他設(shè)備如PC充當(dāng)。GRE隧道源端和目的端均需要在GREServer設(shè)備上進(jìn)行注冊(cè),注冊(cè)成功后由GREServer監(jiān)控GRE隧道兩端動(dòng)態(tài)IP變化情況,從而維持GRE隧道。GREServer與GRE隧道兩端處于一種弱管理關(guān)系,二者之間的交互簡單,從而不會(huì)對(duì)網(wǎng)絡(luò)負(fù)載造成較大負(fù)擔(dān)。GREServer中通過建立和維護(hù)更新GRE表項(xiàng),實(shí)現(xiàn)對(duì)GRE隧道兩端的管理。本發(fā)明中,GREServeri殳備維護(hù)的GRE隧道表項(xiàng)中包括GRE隧道信息,其結(jié)構(gòu)可以如下表l所示表lGRE隧道表項(xiàng)結(jié)構(gòu)<table>tableseeoriginaldocumentpage22</column></row><table>以下以圖6所示的應(yīng)用場景為例,描述本發(fā)明中GRE隧道的動(dòng)態(tài)建立方法。圖3中所述的路由器A、路由器B和路由器C位于同一網(wǎng)段。以需要在路由器A和路由器B之間建立GRE隧道TunnelO、路由器A和路由器C之間建立GRE隧道Tunnell為例,則預(yù)先在路由器A、路由器B和路由器C上分別配置GRE隧道的關(guān)鍵字Key,假設(shè)路由器A上配置的關(guān)鍵字Key為{0001,0002},路由器B上配置的關(guān)鍵字Key為(0001),路由器C上配置的關(guān)鍵字Key為{0002}。另夕卜,網(wǎng)絡(luò)中還存在GREServer,路由器A、路由器B和路由器C上均配置有GREServer的地址。GREServer也可以位于路由器A、路由器B或路由器C上。該應(yīng)用場景中,以GREServer對(duì)路由器A發(fā)送的報(bào)文的處理為例,則GRE隧道的動(dòng)態(tài)建立方法如圖7所示,包括步驟s701、網(wǎng)絡(luò)中需要建立GRE隧道的路由器A以單播方式向GREServer發(fā)送注冊(cè)報(bào)文,在GREServer上進(jìn)行注冊(cè)。注冊(cè)報(bào)文中攜帶的GRE隧道信息包括路由器A的隧道關(guān)鍵字Key、隧道接口IP地址和所獲取的GRE隧道源IP地址。步驟s702、GREServer收到路由器A發(fā)送的注冊(cè)報(bào)文后,根據(jù)注冊(cè)報(bào)文中攜帶的關(guān)鍵字Key,查詢本地是否存在包括此關(guān)鍵字Key的GRE隧道表項(xiàng),不存在時(shí)則進(jìn)行步驟s703,存在時(shí)則進(jìn)行步驟s704。步驟s703、GREServer新建GRE隧道表項(xiàng),記錄注冊(cè)報(bào)文中攜帶的關(guān)鍵字GREServer向路由器A返回響應(yīng)報(bào)文。此時(shí)響應(yīng)報(bào)文中攜帶的GRE隧道目的IPi也址可以為0.0.0.0。步驟s704、GREServerl斤建GRE隧道表項(xiàng),記錄注冊(cè)報(bào)文中攜帶的關(guān)鍵字Key、路由器A上隧道接口的IP地址和路由器A獲取的GRE隧道源IP地址。之后GREServer向路由器A返回響應(yīng)報(bào)文。此時(shí)響應(yīng)報(bào)文中攜帶的GRE隧道信息,為GREServer上已經(jīng)保存的與路由器A要建立的GRE隧道相符的GRE隧道信息。例如,GREServer曾經(jīng)收到路由器B發(fā)送的注冊(cè)報(bào)文,則GREServer的本地表項(xiàng)中已存在路由器B的隧道關(guān)鍵字Key、隧道接口I的P地址和路由器B獲取的GRE隧道源IP地址。此時(shí)GREServer收到路由器A發(fā)送的注冊(cè)報(bào)文后,同樣新建GRE表項(xiàng),記錄注冊(cè)報(bào)文中攜帶的關(guān)鍵字Key、路由器A上隧道接口的IP23地址和路由器A獲取的GRE隧道源IP地址。之后由于關(guān)于路由器B的表項(xiàng)和關(guān)于路由器A的表項(xiàng)具有相同的Key,則GREServer根據(jù)本地已經(jīng)建立的關(guān)于路由器B的表項(xiàng),向路由器A端發(fā)送回應(yīng)報(bào)文,回應(yīng)報(bào)文中攜帶路由器B的GRE隧道信息,即表項(xiàng)中已存在的I路由器B的關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址。同時(shí)GREServer會(huì)向路由器B發(fā)送GRE通告報(bào)文,將路由器A的GRE隧道信息通告路由器B,路由器B收到發(fā)現(xiàn)報(bào)文后,判斷發(fā)現(xiàn)報(bào)文中的關(guān)鍵字Key與本設(shè)備上配置的關(guān)鍵字Key相同,且根據(jù)發(fā)現(xiàn)報(bào)文中攜帶的隧道接口IP地址判斷與路由器A位于同一網(wǎng)段,則將該報(bào)文中攜帶的隧道源IP地址作為待建立GRE隧道的目的IP地址。這樣隧道兩端均知道GRE隧道的源端IP和目的端IP,GRE隧道建立。以GREServer向路由器B發(fā)送攜帶路由器A的GRE隧道信息的GRE通告報(bào)文為例,該才艮文在傳輸過程中可能經(jīng)過待建立GRE隧道的路由器C,則路由器C在轉(zhuǎn)發(fā)該GRE通告報(bào)文時(shí),發(fā)現(xiàn)其中攜帶的GRE隧道信息中的關(guān)鍵字Key與自身配置的Key不同,則不會(huì)處理該4艮文,只會(huì)將該GRE通告報(bào)文向目的地址即路由器B進(jìn)行轉(zhuǎn)發(fā)。基于相似的流程,路由器A和路由器C之間也可以通過與GREServer的交互獲取到對(duì)方的隧道接口IP地址和源IP地址,從而在路由器A和路由器C之間建立GRE隧道,該過程與上述路由器A與路由器B之間建立GRE隧道的過程相似,在此不進(jìn)行重復(fù)描述。使用上述流程建立GRE隧道后,當(dāng)GRE隧道任一端的隧道源IP地址發(fā)生改變時(shí),IP地址發(fā)生變化的設(shè)備向GREServer主動(dòng)發(fā)送隧道源IP地址變化的通告(Update)報(bào)文。GREServer收到此通告報(bào)文后根據(jù)報(bào)文攜帶的Tunnel接口IP地址檢索到相應(yīng)表項(xiàng)后更新設(shè)備表項(xiàng)中該設(shè)備的GRE隧道信息,并向同一網(wǎng)段的其他設(shè)備通告這一變化,觸發(fā)其他設(shè)備根據(jù)更新后的隧道源IP地址進(jìn)行GRE隧道的更新。例如,對(duì)于路由器A與路由器B之間建立的GRE隧道,當(dāng)路由器A建立隧道使用的隧道源IP地址發(fā)生變化時(shí),主動(dòng)向GREServer發(fā)送通告報(bào)文,報(bào)文中攜帶路由器A的GRE隧道信息,GREServer根據(jù)該通告報(bào)文更新本地存儲(chǔ)的關(guān)于路由器A的GRE隧道信息的表項(xiàng),并將更新后的路由器A的GRE隧道信息發(fā)送給路由器B,觸發(fā)路由器B根據(jù)路由器A中變化后的隧道源IP地址更新已建立的GRE隧道。GRE隧道任一端如配置取消隧道,主動(dòng)以單播方式向GREServer發(fā)送隧道撤消報(bào)文。GREServer收到報(bào)文后即清空此GRE表項(xiàng),并向GRE隧道另一端發(fā)送隧道撤銷報(bào)文。另外,上述GRE隧道的建立和更新流程均由GRE隧道兩端主動(dòng)發(fā)起。為避免由于網(wǎng)絡(luò)問題導(dǎo)致GRE隧道兩端GRE配置失效或GREServer端GRE表項(xiàng)過時(shí),GREServer還可以定期向GRE隧道兩端發(fā)送IP通告報(bào)文。GRE隧道Client端收到此報(bào)文后與自身配置進(jìn)行比較,如發(fā)現(xiàn)不同則更新GRE隧道目的IP地址,并發(fā)送確認(rèn)消息給GREServer。GREServer如連續(xù)三個(gè)或多個(gè)周期均沒有收到相應(yīng)的確認(rèn)消息,則在設(shè)備上清空此GRE表項(xiàng)。另夕卜,如果網(wǎng)絡(luò)規(guī)模較小且GRE隧道配置相對(duì)穩(wěn)定時(shí),GREServer也可采GRE隧道源端或目的端根據(jù)表項(xiàng)中的關(guān)鍵字和Tunnel接口檢索更新GRE隧道的目的IP地址,而且不需發(fā)送確認(rèn)消息給GREServer。上述實(shí)施例的描述中均主要以路由器A為例說明GRE隧道建立和維護(hù)的發(fā)現(xiàn)階段、更新階段和休眠階段,可以理解的是該應(yīng)用于路由器A上的流程同樣可以應(yīng)用于路由器B以及網(wǎng)絡(luò)中的其他路由器上,例如將路由器B和路由器A的角色對(duì)調(diào),通過以單播方式向GREServer發(fā)送注冊(cè)才艮文、在建立隧道的IP地址發(fā)生變化時(shí)向GREServer主動(dòng)發(fā)送通告纟艮文、接收GREServer根據(jù)注冊(cè)才艮文返回的響應(yīng)報(bào)文以及接收GREServer在對(duì)端建立隧道的IP地址發(fā)生變化時(shí)發(fā)送的通告纟艮文的方式,實(shí)現(xiàn)基于GREServer方式的GRE隧道的動(dòng)態(tài)建立和維護(hù)。通過使用本發(fā)明提供的方法,在GRE隧道兩端IP地址動(dòng)態(tài)變化的情況下,在GRE兩端的i殳備之間動(dòng)態(tài)建立和維護(hù)GRE隧道,使得GRE隧道的建立和更新更加靈活,可以實(shí)時(shí)檢測(cè)調(diào)整GRE隧道狀態(tài),提高GRE隧道數(shù)據(jù)傳輸有效性和網(wǎng)絡(luò)帶寬的有效利用率。另夕卜,實(shí)現(xiàn)了通過組播方式和在網(wǎng)絡(luò)中部署GRE服務(wù)器的方法,在網(wǎng)絡(luò)中建立GRE隧道的設(shè)備間傳遞GRE隧道信息。本發(fā)明中還提供一種網(wǎng)絡(luò)設(shè)備,用于GRE隧道的動(dòng)態(tài)建立,如圖8所示,25包括隧道信息發(fā)送單元10,用于將自身用于建立GRE隧道的GRE隧道信息傳遞出去,GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址;隧道建立單元20,用于根據(jù)收到的其他端設(shè)備發(fā)送的報(bào)文中GRE隧道信息所包括的關(guān)鍵字Key,判斷GRE隧道信息是否屬于自己需要建立的隧道,如果是,則根據(jù)GRE隧道信息包括的對(duì)端設(shè)備隧道接口IP地址和隧道源IP地址,并結(jié)合自身的隧道信息與對(duì)端設(shè)備建立GRE隧道。本發(fā)明提供的上述網(wǎng)絡(luò)設(shè)備中,可以通過組播方式實(shí)現(xiàn)GRE隧道信息的傳遞。使用該方式時(shí),網(wǎng)絡(luò)設(shè)備的結(jié)構(gòu)如圖9所示具體的,隧道信息發(fā)送單元IO可以包括第一隧道信息發(fā)送子單元11,用于向預(yù)先設(shè)置的組播組地址發(fā)送發(fā)現(xiàn)報(bào)文,發(fā)現(xiàn)報(bào)文中攜帶自身用于建立GRE隧道的GRE隧道信息,GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址,使得加入到組播組的其他設(shè)備接收到發(fā)現(xiàn)報(bào)文。隧道建立單元20可以進(jìn)一步包括第一隧道信息獲取子單元21,用于接收對(duì)端設(shè)備通過組播方式發(fā)送的發(fā)現(xiàn)報(bào)文時(shí),獲取發(fā)現(xiàn)報(bào)文中攜帶的對(duì)端設(shè)備的GRE隧道信息所包括的關(guān)鍵字Key;第一隧道建立子單元22,用于當(dāng)?shù)谝凰淼佬畔@取子單元21獲取的對(duì)端設(shè)備的隧道關(guān)鍵字Key與端設(shè)備上預(yù)先配置的隧道關(guān)鍵字Key相同、且對(duì)端設(shè)備的隧道接口IP地址與端設(shè)備的隧道接口IP地址處于同一網(wǎng)段時(shí),將對(duì)端設(shè)備的隧道源IP地址作為對(duì)端設(shè)備建立GRE隧道所使用的IP地址,與對(duì)端設(shè)備建立GRE隧道;隧道信息通知子單元23,用于向?qū)Χ嗽O(shè)備發(fā)送端i殳備的隧道源IP地址。另外,該網(wǎng)絡(luò)設(shè)備還可以包括第一隧道更新單元30,用于接收對(duì)端設(shè)備發(fā)送的更新報(bào)文時(shí),獲取更新報(bào)文中GRE隧道信息所包括的對(duì)端設(shè)備的隧道關(guān)鍵字Key、隧道接口IP地址26和變化后的隧道源IP地址;根據(jù)第一隧道更新信息獲取子單元獲取的對(duì)端設(shè)備的變化后的隧道源IP地址,更新與對(duì)端設(shè)備建立的GRE隧道,并向?qū)Χ嗽O(shè)備發(fā)送響應(yīng)。第一隧道更新信息發(fā)送單元40,用于在建立GRE隧道所使用的隧道源IP地址發(fā)生變化時(shí),向GRE隧道的對(duì)端設(shè)備發(fā)送更新報(bào)文,更新報(bào)文中的GRE隧道信息包括端設(shè)備的隧道關(guān)4建字Key、隧道接口IP地址和變化后的隧道源IP地址,觸發(fā)對(duì)端設(shè)備更新已建立的GRE隧道。休眠控制單元50,用于隧道信息發(fā)送單元10向預(yù)先設(shè)置的組播組地址發(fā)送發(fā)現(xiàn)報(bào)文后,在預(yù)先設(shè)置的時(shí)間內(nèi)未接收到響應(yīng)時(shí),重新發(fā)送發(fā)現(xiàn)報(bào)文;重新發(fā)送發(fā)現(xiàn)報(bào)文的次數(shù)超過預(yù)設(shè)的門限時(shí),控制自身設(shè)備進(jìn)入休眠,直至配置發(fā)生變化或接收到對(duì)端設(shè)備發(fā)送的發(fā)現(xiàn)報(bào)文;休眠期間內(nèi)自身設(shè)備不發(fā)送報(bào)文;和/或第一隧道更新信息發(fā)送單元40向GRE隧道的對(duì)端設(shè)備發(fā)送更新報(bào)文后,在預(yù)先設(shè)置的時(shí)間內(nèi)未接收到響應(yīng)時(shí),重新發(fā)送更新報(bào)文;重新發(fā)送更新報(bào)文的次數(shù)超過預(yù)設(shè)的門限時(shí),控制自身設(shè)備進(jìn)入休眠,直至配置發(fā)生變化或接收到對(duì)端設(shè)備發(fā)送的發(fā)現(xiàn)報(bào)文;休眠期間內(nèi)自身設(shè)備不發(fā)送報(bào)文。本發(fā)明提供的上述網(wǎng)絡(luò)設(shè)備中,還可以通過在網(wǎng)絡(luò)中部署GRE服務(wù)器的方式實(shí)現(xiàn)GRE隧道信息的傳遞。使用該方式時(shí),網(wǎng)絡(luò)設(shè)備的結(jié)構(gòu)如圖10所示二具體的,隧道信息發(fā)送單元IO可以包括第二隧道信息發(fā)送子單元12,用于向網(wǎng)絡(luò)中的GRE服務(wù)器發(fā)送注冊(cè)報(bào)文,注冊(cè)報(bào)文的GRE隧道信息中包括隧道關(guān)4建字Key、隧道接口IP地址和隧道源IP地址。隧道建立單元20可以進(jìn)一步包括第二隧道信息獲取子單元25,用于接收到網(wǎng)絡(luò)中GRE服務(wù)器發(fā)送的通告報(bào)文時(shí),獲取通告報(bào)文中攜帶的對(duì)端設(shè)備的GRE隧道信息所包括的關(guān)鍵字Key;第二隧道建立子單元26,用于當(dāng)?shù)诙淼佬畔@取子單元21獲取的對(duì)端設(shè)備的隧道關(guān)鍵字Key與端設(shè)備上預(yù)先配置的隧道關(guān)鍵字Key相同、且對(duì)端設(shè)備的隧道接口IP地址與端設(shè)備的隧道接口IP地址處于同一網(wǎng)段時(shí),端設(shè)備將對(duì)端設(shè)備的隧道源IP地址作為對(duì)端設(shè)備建立GRE隧道所使用的IP地址,與對(duì)端設(shè)備建立GRE隧道。另外,該網(wǎng)絡(luò)i殳備還可以包括第二隧道更新信息發(fā)送單元60,用于在自身設(shè)備的隧道源IP地址發(fā)生變化時(shí),向GRE服務(wù)器發(fā)送通告報(bào)文,通告報(bào)文的GRE隧道信息中攜帶隧道關(guān)鍵字Key、隧道接口IP地址以及變化后的隧道源IP地址。第二隧道更新單元70,用于接收GRE服務(wù)器發(fā)送的通告報(bào)文,通告報(bào)文的GRE隧道信息中攜帶對(duì)端設(shè)備的隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址;當(dāng)4企測(cè)到對(duì)端設(shè)備建立GRE隧道的隧道源IP地址發(fā)生變化時(shí),更新與對(duì)端設(shè)備建立的GRE隧道。本發(fā)明中還提供一種GRE服務(wù)器,用于在網(wǎng)絡(luò)中通過部署GRE服務(wù)器的方式實(shí)現(xiàn)GRE隧道信息的傳遞,如圖ll所示,該GRE服務(wù)器包括通告報(bào)文生成單元91,用于生成通告報(bào)文,通告才艮文中攜帶GRE隧道目的端設(shè)備的GRE隧道信息,GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址以及變化后的隧道源IP地址;通告報(bào)文發(fā)送單元92,用于將通告報(bào)文生成單元91生成的通告報(bào)文向GRE隧道的源端設(shè)備發(fā)送。另外,該GRE服務(wù)器中還可以包括注冊(cè)報(bào)文接收單元93,用于接收網(wǎng)絡(luò)設(shè)備發(fā)送的注冊(cè)報(bào)文,注冊(cè)報(bào)文中攜帶網(wǎng)絡(luò)設(shè)備的GRE隧道信息,GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址以及變化后的隧道源IP地址;表項(xiàng)存儲(chǔ)單元94,用于根據(jù)注冊(cè)報(bào)文接收單元93接收的注冊(cè)報(bào)文存儲(chǔ)關(guān)于網(wǎng)絡(luò)設(shè)備的GRE隧道信息的表項(xiàng)。表項(xiàng)更新單元95,用于在接收到關(guān)于GRE隧道一端的網(wǎng)絡(luò)設(shè)備在建立GRE隧道所使用的隧道源IP地址發(fā)生變化的通告報(bào)文時(shí),根據(jù)通告報(bào)文更新已存儲(chǔ)的網(wǎng)絡(luò)設(shè)備的GRE隧道信息的表項(xiàng)。28具體的,通告^JL生成單元91可以包括表項(xiàng)查詢子單元911,用于查詢本地已存儲(chǔ)的網(wǎng)絡(luò)設(shè)備的GRE隧道信息的表項(xiàng)中,是否存在與GRE隧道的源端設(shè)備具有相同隧道關(guān)鍵字Key的表項(xiàng);通告報(bào)文生成子單元912,用于根據(jù)表項(xiàng)查詢子單元911查詢到的表項(xiàng),將查找到的具有相同隧道關(guān)鍵字Key的表項(xiàng)中的GRE隧道信息添加在通告才艮文中,并通過通告報(bào)文發(fā)送單元92向GRE隧道的源端設(shè)備發(fā)送;另外,還可以用于,將源端設(shè)備的GRE隧道信息添加在通告報(bào)文中,并通過通告報(bào)文發(fā)送單元92向與源端設(shè)備具有相同隧道關(guān)鍵字Key的表項(xiàng)所對(duì)應(yīng)的設(shè)備發(fā)送。具體的,通告報(bào)文發(fā)送單元92可以包括第一通告報(bào)文發(fā)送子單元921,用于在4全測(cè)到GRE隧道一端的設(shè)備建立GRE隧道所〗吏用的IP地址發(fā)生變化時(shí),向GRE另隧道一端的設(shè)備發(fā)送的通告報(bào)文;或第二通告報(bào)文發(fā)送子單元922,用于向GRE隧道兩端的設(shè)備發(fā)送的通告報(bào)文;或第三通告報(bào)文發(fā)送子單元923,用于通過組播方式向GRE隧道兩端的設(shè)備發(fā)送通告報(bào)文,通告報(bào)文中攜帶表項(xiàng)存儲(chǔ)單元中已存儲(chǔ)的所有表項(xiàng)。通過使用本發(fā)明提供的設(shè)備,可以在GRE隧道兩端IP地址動(dòng)態(tài)變化的情況下,在GRE兩端的設(shè)備之間動(dòng)態(tài)建立和維護(hù)GRE隧道,使得GRE隧道的建立和更新更加靈活,可以實(shí)時(shí)檢測(cè)調(diào)整GRE隧道狀態(tài),提高GRE隧道數(shù)據(jù)傳輸有效性和網(wǎng)絡(luò)帶寬的有效利用率。另外,實(shí)現(xiàn)了通過組播方式和在網(wǎng)絡(luò)中部署GRE服務(wù)器的方法,在網(wǎng)絡(luò)中建立GRE隧道的設(shè)備間傳遞GRE隧道信息。上述模塊可以分布于一個(gè)裝置,也可以分布于多個(gè)裝置。上述模塊可以合并為一個(gè)模塊,也可以進(jìn)一步拆分成多個(gè)子模塊。通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可以通過硬件實(shí)現(xiàn),也可以借助軟件加必要的通用硬件平臺(tái)的方式來實(shí)現(xiàn)?;谶@樣的理解,本發(fā)明的技術(shù)方案可以以軟件產(chǎn)品的形式體現(xiàn)出來,該軟29件產(chǎn)品可以存儲(chǔ)在一個(gè)非易失性存儲(chǔ)介質(zhì)(可以是CD-ROM,U盤,移動(dòng)硬盤等)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。本領(lǐng)域技術(shù)人員可以理解附圖只是一個(gè)優(yōu)選實(shí)施例的示意圖,附圖中的模塊或流程并不一定是實(shí)施本發(fā)明所必須的。本領(lǐng)域技術(shù)人員可以理解實(shí)施例中的裝置中的模塊可以按照實(shí)施例描述進(jìn)行分布于實(shí)施例的裝置中,也可以進(jìn)行相應(yīng)變化位于不同于本實(shí)施例的一個(gè)或多個(gè)裝置中。上述實(shí)施例的模塊可以合并為一個(gè)模塊,也可以進(jìn)一步拆分成多個(gè)子模塊。上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。以上公開的僅為本發(fā)明的幾個(gè)具體實(shí)施例,但是,本發(fā)明并非局限于此,任何本領(lǐng)域的技術(shù)人員能思之的變化都應(yīng)落入本發(fā)明的保護(hù)范圍。權(quán)利要求1、一種GRE隧道的動(dòng)態(tài)建立方法,其特征在于,包括需要建立GRE隧道的端設(shè)備將自身用于建立GRE隧道的GRE隧道信息傳遞出去,所述GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址;所述端設(shè)備根據(jù)收到的其他端設(shè)備發(fā)送的報(bào)文中GRE隧道信息所包括的關(guān)鍵字Key,判斷所述GRE隧道信息是否屬于自己需要建立的隧道,如果是,則根據(jù)所述GRE隧道信息包括的對(duì)端設(shè)備隧道接口IP地址和隧道源IP地址,并結(jié)合自身的隧道信息與所述對(duì)端設(shè)備建立GRE隧道。2、如權(quán)利要求1所述的方法,其特征在于,所述需要建立GRE隧道的端設(shè)備將自身用于建立GRE隧道的GRE隧道信息傳遞出去包括需要建立GRE隧道的端設(shè)備向預(yù)先設(shè)置的組播組地址發(fā)送發(fā)現(xiàn)報(bào)文,所述發(fā)現(xiàn)報(bào)文中攜帶自身用于建立GRE隧道的GRE隧道信息,所述GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址;加入到所述組播組的其他設(shè)備接收到所述發(fā)現(xiàn)報(bào)文。3、如權(quán)利要求2所迷的方法,其特征在于,所述端設(shè)備根據(jù)收到的其他端設(shè)備發(fā)送的報(bào)文中GRE隧道信息所包括的關(guān)鍵字Key,判斷所述隧道信息是否屬于自己需要建立的隧道,如果是,則根據(jù)所述GRE隧道信息包括的對(duì)端設(shè)備隧道接口IP地址和隧道源IP地址,并結(jié)合自身的隧道信息與所述對(duì)端設(shè)備建立GRE隧道包括所述端設(shè)備接收對(duì)端設(shè)備通過組播方式發(fā)送的發(fā)現(xiàn)報(bào)文;所述端設(shè)備獲取所述發(fā)現(xiàn)報(bào)文中攜帶的所述對(duì)端設(shè)備的GRE隧道信息所包括的關(guān)鍵字Key;當(dāng)所述對(duì)端設(shè)備的隧道關(guān)鍵字Key與所述端設(shè)備上預(yù)先配置的隧道關(guān)鍵字Key相同、且所述對(duì)端設(shè)備的隧道接口IP地址與所述端設(shè)備的隧道接口IP地址處于同一網(wǎng)段時(shí),所述端設(shè)備將所述對(duì)端設(shè)備的隧道源IP地址作為所述對(duì)端設(shè)備建立GRE隧道所使用的IP地址,與所述對(duì)端設(shè)備建立GRE隧道;所述端設(shè)備向所述對(duì)端設(shè)備發(fā)送所述端設(shè)備的隧道源IP地址。4、如權(quán)利要求2所述的方法,其特征在于,所述與所述對(duì)端設(shè)備建立GRE隧道后,還包括所述端設(shè)備接收所述對(duì)端設(shè)備發(fā)送的更新報(bào)文;所述端設(shè)備獲取所述更新報(bào)文中GRE隧道信息所包括的所述對(duì)端設(shè)備的隧道關(guān)4建字Key、隧道4妄口IP地址和變化后的隧道源IP;也址;所述端設(shè)備根據(jù)所述對(duì)端設(shè)備的變化后的隧道源IP地址,更新與所述對(duì)端設(shè)備建立的所述GRE隧道,并向所述對(duì)端設(shè)備發(fā)送響應(yīng)。5、如權(quán)利要求2所述的方法,其特征在于,所述與所述對(duì)端設(shè)備建立GRE隧道后,還包括所述端設(shè)備建立GRE隧道所使用的隧道源IP地址發(fā)生變化時(shí),向所述GRE隧道的對(duì)端設(shè)備發(fā)送更新報(bào)文,所述更新報(bào)文中的GRE隧道信息包括所述端設(shè)備的隧道關(guān)4建字Key、隧道接口IP地址和變化后的隧道源IP地址;所述對(duì)端設(shè)備根據(jù)所述更新報(bào)文,更新與所述端設(shè)備建立的所述GRE隧道。6、如權(quán)利要求2或5所述的方法,其特征在于,還包括所述端設(shè)備向預(yù)先設(shè)置的組播組地址發(fā)送發(fā)現(xiàn)報(bào)文后,在預(yù)先設(shè)置的時(shí)間內(nèi)未接收到響應(yīng)時(shí),重新發(fā)送所述發(fā)現(xiàn)報(bào)文;重新發(fā)送所述發(fā)現(xiàn)報(bào)文的次數(shù)超過預(yù)設(shè)的門限時(shí),所述端設(shè)備進(jìn)入休眠,直至配置發(fā)生變化或接收到對(duì)端設(shè)備發(fā)送的發(fā)現(xiàn)報(bào)文;休眠期間內(nèi)所述端設(shè)備不發(fā)送報(bào)文;和/或所述端設(shè)備向所述GRE隧道的對(duì)端設(shè)備發(fā)送更新報(bào)文后,在預(yù)先設(shè)置的時(shí)間內(nèi)未接收到響應(yīng)時(shí),重新發(fā)送所述更新報(bào)文;重新發(fā)送所述更新報(bào)文的次數(shù)超過預(yù)設(shè)的門限時(shí),所述端設(shè)備進(jìn)入休眠,直至配置發(fā)生變化或接收到所述對(duì)端設(shè)備發(fā)送的發(fā)現(xiàn)報(bào)文;休眠期間內(nèi)所述端設(shè)備不發(fā)送報(bào)文。7、如權(quán)利要求1所述的方法,其特征在于,所述需要建立GRE隧道的端設(shè)備將自身用于建立GRE隧道的GRE隧道信息傳遞出去包括需要建立GRE隧道的端設(shè)備向網(wǎng)絡(luò)中的GRE服務(wù)器發(fā)送注冊(cè)報(bào)文,所述注冊(cè)報(bào)文的GRE隧道信息中包括隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址。8、如權(quán)利要求7所述的方法,其特征在于,所述需要建立GRE隧道的端設(shè)備向網(wǎng)絡(luò)中的GRE服務(wù)器發(fā)送注冊(cè)報(bào)文后還包括所述GRE服務(wù)器根據(jù)所述注冊(cè)報(bào)文存儲(chǔ)關(guān)于所述端設(shè)備的GRE隧道信息的表項(xiàng);所述GRE服務(wù)器查詢本地已存儲(chǔ)的其他設(shè)備的GRE隧道信息的表項(xiàng)中,是否存在與所述端設(shè)備具有相同隧道關(guān)鍵字Key的表項(xiàng);所述GRE服務(wù)器將具有相同隧道關(guān)鍵字Key的表項(xiàng)中的GRE隧道信息添加在通告報(bào)文中并發(fā)送給所述端設(shè)備。9、如權(quán)利要求8所述的方法,其特征在于,所述GRE服務(wù)器將具有相同隧道關(guān)鍵字Key的表項(xiàng)中的GRE隧道信息添加在通告報(bào)文中并發(fā)送給所述端設(shè)備后,還包括所述GRE服務(wù)器將所述端設(shè)備的GRE隧道信息添加在通告報(bào)文中,向與所述端設(shè)備具有相同隧道關(guān)鍵字Key的表項(xiàng)所對(duì)應(yīng)的設(shè)備發(fā)送。10、如權(quán)利要求7或8或9所述的方法,其特征在于,所述端設(shè)備根據(jù)收到的其他端設(shè)備發(fā)送的報(bào)文中GRE隧道信息所包括的關(guān)鍵字Key,判斷所述隧道信息是否屬于自己需要建立的隧道,如果是,則根據(jù)所述GRE隧道信息包括的對(duì)端設(shè)備隧道4妄口IP地址和隧道源IP地址,并結(jié)合自身的隧道信息與所述對(duì)端設(shè)備建立GRE隧道包括所述端設(shè)備接收網(wǎng)絡(luò)中GRE服務(wù)器發(fā)送的通告報(bào)文;所述端設(shè)備獲取所述通告報(bào)文中攜帶的對(duì)端設(shè)備的GRE隧道信息所包括的關(guān)鍵字Key;當(dāng)所述對(duì)端設(shè)備的隧道關(guān)鍵字Key與所述端設(shè)備上預(yù)先配置的隧道關(guān)鍵字Key相同、且所述對(duì)端設(shè)備的隧道接口IP地址與所述端設(shè)備的隧道接口IP地址處于同一網(wǎng)段時(shí),所述端設(shè)備將所述對(duì)端設(shè)備的隧道源IP地址作為所述對(duì)端設(shè)備建立GRE隧道所使用的IP地址,與所述對(duì)端設(shè)備建立GRE隧道。11、如權(quán)利要求IO所述的方法,其特征在于,所述與所述對(duì)端設(shè)備建立GRE隧道后,還包括所述端設(shè)備在隧道源IP地址發(fā)生變化時(shí),向所述GRE服務(wù)器發(fā)送通告報(bào)文,所述通告報(bào)文中攜帶隧道關(guān)鍵字Key、隧道接口IP地址以及變化后的隧道源IP地址;12、如權(quán)利要求IO所述的方法,其特征在于,所述與所述對(duì)端設(shè)備建立GRE隧道后,還包括所述端設(shè)備接收所述GRE服務(wù)器發(fā)送的通告報(bào)文,所述通告報(bào)文中攜帶所述對(duì)端設(shè)備的隧道關(guān)4建字Key、隧道接口IP地址和隧道源IP地址;所述端設(shè)備4企測(cè)到所述對(duì)端設(shè)備建立GRE隧道的隧道源IP地址發(fā)生變化時(shí),更新與所述對(duì)端設(shè)備建立的所述GRE隧道。13、如權(quán)利要求11所述的方法,其特征在于,所述端設(shè)備接收所述GRE服務(wù)器發(fā)送的通告報(bào)文包括所述端設(shè)備接收所述GRE服務(wù)器在檢測(cè)到所述對(duì)端設(shè)備建立GRE隧道所使用的隧道源IP地址發(fā)生變化時(shí)發(fā)送的通告報(bào)文;或所述端設(shè)備接收所述GRE服務(wù)器定期向本端設(shè)備發(fā)送的通告報(bào)文;或所述端設(shè)備接收所述GRE服務(wù)器通過組播方式向本端設(shè)備發(fā)送的通告報(bào)文,所述通告報(bào)文中攜帶所述GRE服務(wù)器中已存儲(chǔ)的所有表項(xiàng)。14、一種網(wǎng)絡(luò)設(shè)備,用于GRE隧道的動(dòng)態(tài)建立,其特征在于,包括隧道信息發(fā)送單元,用于將自身用于建立GRE隧道的GRE隧道信息傳遞出去,所述GRE隧道信息包括隧道關(guān)4定字Key、隧道4妻口IP地址和隧道源IP地址;隧道建立單元,用于根據(jù)收到的其他端設(shè)備發(fā)送的報(bào)文中GRE隧道信息所包括的關(guān)鍵字Key,判斷所述GRE隧道信息是否屬于自己需要建立的隧道,如果是,則根據(jù)所述GRE隧道信息包括的對(duì)端設(shè)備隧道接口IP地址和隧道源IP地址,并結(jié)合自身的隧道信息與所述對(duì)端設(shè)備建立GRE隧道。15、如權(quán)利要求14所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述隧道信息發(fā)送單元包括第一隧道信息發(fā)送子單元,用于向預(yù)先設(shè)置的組播組地址發(fā)送發(fā)現(xiàn)報(bào)文,所述發(fā)現(xiàn)報(bào)文中攜帶自身用于建立GRE隧道的GRE隧道信息,所述GRE隧道信息包括隧道關(guān)4建字Key、隧道接口IP地址和隧道源IP地址,使得加入到所述組播組的其他設(shè)備接收到所述發(fā)現(xiàn)報(bào)文。16、如權(quán)利要求15所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述隧道建立單元包括第一隧道信息獲取子單元,用于接收所述對(duì)端設(shè)備通過組播方式發(fā)送的發(fā)現(xiàn)報(bào)文時(shí),獲取所述發(fā)現(xiàn)報(bào)文中攜帶的所述對(duì)端設(shè)備的GRE隧道信息所包括的關(guān)鍵字Key;第一隧道建立子單元,用于當(dāng)所述第一隧道信息獲取子單元獲取的對(duì)端設(shè)備的隧道關(guān)鍵字Key與所述端設(shè)備上預(yù)先配置的隧道關(guān)鍵字Key相同、且所述對(duì)端設(shè)備的隧道接口IP地址與所述端設(shè)備的隧道4妄口IP地址處于同一網(wǎng)段時(shí),將所述對(duì)端設(shè)備的隧道源IP地址作為所述對(duì)端設(shè)備建立GRE隧道所使用的IP地址,與所述對(duì)端設(shè)備建立GRE隧道;隧道信息通知子單元,用于向所述對(duì)端設(shè)備發(fā)送所述端設(shè)備的隧道源IP地址。17、如權(quán)利要求15所述的網(wǎng)絡(luò)設(shè)備,其特征在于,還包括第一隧道更新單元,用于接收所述對(duì)端設(shè)備發(fā)送的更新報(bào)文時(shí),獲取所述更新報(bào)文中GRE隧道信息所包括的所述對(duì)端設(shè)備的隧道關(guān)鍵字Key、隧道接口IP地址和變化后的隧道源IP地址;根據(jù)所述第一隧道更新信息獲取子單元獲取的對(duì)端設(shè)備的變化后的隧道源IP地址,更新與所述對(duì)端設(shè)備建立的所述GRE隧道,并向所述對(duì)端設(shè)備發(fā)送響應(yīng);第一隧道更新信息發(fā)送單元,用于在建立GRE隧道所使用的隧道源IP地址發(fā)生變化時(shí),向所述GRE隧道的對(duì)端設(shè)備發(fā)送更新^艮文,所述更新報(bào)文中的GRE隧道信息包括所述端設(shè)備的隧道關(guān)鍵字Key、隧道接口IP地址和變化后的隧道源IP地址,觸發(fā)所述對(duì)端設(shè)備更新已建立的GRE隧道;休眠控制單元,用于所述隧道信息發(fā)送單元向預(yù)先設(shè)置的組播組地址發(fā)送發(fā)現(xiàn)報(bào)文后,在預(yù)先設(shè)置的時(shí)間內(nèi)未接收到響應(yīng)時(shí),重新發(fā)送所述發(fā)現(xiàn)報(bào)文;重新發(fā)送所述發(fā)現(xiàn)報(bào)文的次數(shù)超過預(yù)設(shè)的門限時(shí),控制自身設(shè)備進(jìn)入休眠,直至配置發(fā)生變化或接收到所述對(duì)端設(shè)備發(fā)送的發(fā)現(xiàn)報(bào)文;休眠期間內(nèi)自身設(shè)備不發(fā)送報(bào)文;和/或所述第一隧道更新信息發(fā)送單元向所述GRE隧道的對(duì)端設(shè)備發(fā)送更新報(bào)文后,在預(yù)先設(shè)置的時(shí)間內(nèi)未接收到響應(yīng)時(shí),重新發(fā)送所述更新報(bào)文;重新發(fā)送所述更新報(bào)文的次數(shù)超過預(yù)設(shè)的門限時(shí),控制自身設(shè)備進(jìn)入休眠,直至配置發(fā)生變化或接收到所述對(duì)端設(shè)備發(fā)送的發(fā)現(xiàn)報(bào)文;休眠期間內(nèi)自身設(shè)備不發(fā)送報(bào)文。18、如權(quán)利要求14所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述隧道信息發(fā)送單元包括第二隧道信息發(fā)送子單元,用于向網(wǎng)絡(luò)中的GRE服務(wù)器發(fā)送注冊(cè)報(bào)文,所述注冊(cè)才艮文的GRE隧道信息中包括隧道關(guān)4建字Key、隧道接口IP地址和隧道源IP;也址。19、如權(quán)利要求18所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述隧道建立單元包括第二隧道信息獲取子單元,用于接收到網(wǎng)絡(luò)中GRE服務(wù)器發(fā)送的通告報(bào)文時(shí),獲取所述通告報(bào)文中攜帶的對(duì)端設(shè)備的GRE隧道信息所包括的關(guān)鍵字Key;第二隧道建立子單元,用于當(dāng)所述第二隧道信息獲取子單元獲取的對(duì)端設(shè)備的隧道關(guān)鍵字Key與所述端設(shè)備上預(yù)先配置的隧道關(guān)鍵字Key相同、且所述對(duì)端設(shè)備的隧道4妄口IP地址與所述端設(shè)備的隧道4妄口IP地址處于同一網(wǎng)段時(shí),所述端設(shè)備將所述對(duì)端設(shè)備的隧道源IP地址作為所述對(duì)端設(shè)備建立GRE隧道所使用的IP地址,與所述對(duì)端設(shè)備建立GRE隧道。20、如權(quán)利要求18或19所述的網(wǎng)絡(luò)設(shè)備,其特征在于,還包括第二隧道更新信息發(fā)送單元,用于在自身設(shè)備的隧道源IP地址發(fā)生變化時(shí),向所述GRE服務(wù)器發(fā)送通告報(bào)文,所述通告報(bào)文的GRE隧道信息中攜帶隧道關(guān)4建字Key、隧道接口IP地址以及變化后的隧道源IP地址;第二隧道更新單元,用于接收所述GRE服務(wù)器發(fā)送的通告報(bào)文,所述通告報(bào)文的GRE隧道信息中攜帶所述對(duì)端設(shè)備的隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址;當(dāng)檢測(cè)到所述對(duì)端設(shè)備建立GRE隧道的隧道源IP地址發(fā)生變化時(shí),更新與所述對(duì)端設(shè)備建立的所述GRE隧道。21、一種GRE服務(wù)器,其特征在于,包括通告報(bào)文生成單元,用于生成通告報(bào)文,所述通告報(bào)文中攜帶GRE隧道目的端設(shè)備的GRE隧道信息,所述GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址以及變化后的隧道源IP地址;通告才艮文發(fā)送單元,用于將所述通告報(bào)文向所述GRE隧道的源端設(shè)備發(fā)送。22、如權(quán)利要求21所述的GRE服務(wù)器,其特征在于,還包括注冊(cè)報(bào)文接收單元,用于接收網(wǎng)絡(luò)設(shè)備發(fā)送的注冊(cè)報(bào)文,所述注冊(cè)報(bào)文中攜帶網(wǎng)絡(luò)設(shè)備的GRE隧道信息,所述GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址以及變化后的隧道源IP地址;表項(xiàng)存儲(chǔ)單元,用于根據(jù)所述注冊(cè)報(bào)文存儲(chǔ)關(guān)于所述網(wǎng)絡(luò)設(shè)備的GRE隧道信息的表項(xiàng)。表項(xiàng)更新單元,用于在接收到關(guān)于GRE隧道一端的網(wǎng)絡(luò)設(shè)備在建立GRE隧道所使用的隧道源IP地址發(fā)生變化的通告報(bào)文時(shí),根據(jù)所述通告報(bào)文更新已存儲(chǔ)的所述網(wǎng)絡(luò)設(shè)備的GRE隧道信息的表項(xiàng)。23、如權(quán)利要求22所述的GRE服務(wù)器,其特征在于,所述通告報(bào)文生成單元包括表項(xiàng)查詢子單元,用于查詢本地已存儲(chǔ)的網(wǎng)絡(luò)設(shè)備的GRE隧道信息的表項(xiàng)中,是否存在與GRE隧道的源端設(shè)備具有相同隧道關(guān)鍵字Key的表項(xiàng);通告報(bào)文生成子單元,用于根據(jù)所述表項(xiàng)查詢子單元查詢到的表項(xiàng),將查找到的具有相同隧道關(guān)鍵字Key的表項(xiàng)中的GRE隧道信息添加在通告報(bào)文中,并通過所述通告報(bào)文發(fā)送單元向所述GRE隧道的源端設(shè)備發(fā)送;還用于將所述源端設(shè)備的GRE隧道信息添加在通告報(bào)文中,并通過所述通告報(bào)文發(fā)送單元向與所述源端設(shè)備所述具有相同隧道關(guān)鍵字Key的表項(xiàng)所對(duì)應(yīng)的設(shè)備發(fā)送。24、如權(quán)利要求21所述的GRE服務(wù)器,其特征在于,所述通告報(bào)文發(fā)送單元包括第一通告報(bào)文發(fā)送子單元,用于在檢測(cè)到GRE隧道一端的設(shè)備建立GRE隧道所使用的IP地址發(fā)生變化時(shí),向所述GRE另隧道一端的設(shè)備發(fā)送通告報(bào)文;或第二通告報(bào)文發(fā)送子單元,用于定期向GRE隧道兩端的設(shè)備發(fā)送通告報(bào)文;或第三通告報(bào)文發(fā)送子單元,用于通過組播方式向GRE隧道兩端的設(shè)備發(fā)送通告報(bào)文,所述通告報(bào)文中攜帶所述表項(xiàng)存儲(chǔ)單元中已存儲(chǔ)的所有表項(xiàng)。全文摘要本發(fā)明公開了一種GRE隧道的動(dòng)態(tài)建立方法和設(shè)備。該方法包括需要建立GRE隧道的端設(shè)備將自身用于建立GRE隧道的GRE隧道信息傳遞出去,所述GRE隧道信息包括隧道關(guān)鍵字Key、隧道接口IP地址和隧道源IP地址;所述端設(shè)備根據(jù)收到的其他端設(shè)備發(fā)送的報(bào)文中GRE隧道信息所包括的關(guān)鍵字Key,判斷所述GRE隧道信息是否屬于自己需要建立的隧道,如果是,則根據(jù)所述GRE隧道信息包括的對(duì)端設(shè)備隧道接口IP地址和隧道源IP地址,并結(jié)合自身的隧道信息與所述對(duì)端設(shè)備建立GRE隧道。通過使用本發(fā)明,可以在GRE隧道兩端IP地址動(dòng)態(tài)變化的情況下,在GRE兩端的設(shè)備之間動(dòng)態(tài)建立和維護(hù)GRE隧道并實(shí)時(shí)檢測(cè)調(diào)整GRE隧道狀態(tài),使得GRE隧道的建立和維護(hù)更加靈活。文檔編號(hào)H04L12/46GK101488902SQ20091000946公開日2009年7月22日申請(qǐng)日期2009年2月25日優(yōu)先權(quán)日2009年2月25日發(fā)明者迪周,蔣益群申請(qǐng)人:杭州華三通信技術(shù)有限公司