專利名稱:通用路由封裝隧道報(bào)文轉(zhuǎn)發(fā)方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種通用路由封裝隧道報(bào)文轉(zhuǎn)發(fā)方法及系統(tǒng)。
背景技術(shù):
通用路由封裝(Generic Routing Encapsulation, GRE)隧道為虛擬專用網(wǎng)絡(luò)(Virtual Private Network, VPN)的一種,其作用主要是用來(lái)隱藏私網(wǎng)IP,使私網(wǎng)報(bào)文可以在公網(wǎng)上進(jìn)行轉(zhuǎn)發(fā),其結(jié)構(gòu)如下:I外網(wǎng)ip頭Igre頭I私網(wǎng)ip頭I數(shù)據(jù)其中每個(gè)IP頭中包含以下信息:IP頭的版本號(hào)(區(qū)分IPv4報(bào)文還是IPv6報(bào)文)、IP頭的長(zhǎng)度,服務(wù)類型、IP包的長(zhǎng)度、IP包標(biāo)識(shí)、IP數(shù)據(jù)分割標(biāo)志、IP數(shù)據(jù)分割偏移、生存時(shí)間、協(xié)議類型(TCP/UDP/GRE/ESP/AH等)、頭部檢驗(yàn)和、源地址、目的地址、可選項(xiàng)、填充?,F(xiàn)有技術(shù)中,在網(wǎng)絡(luò)對(duì)報(bào)文進(jìn)行轉(zhuǎn)發(fā)時(shí),對(duì)小報(bào)文的轉(zhuǎn)發(fā)效率要低于對(duì)大報(bào)文的轉(zhuǎn)發(fā)效率,例如都轉(zhuǎn)發(fā)20兆的報(bào)文,總量相同的數(shù)據(jù)使用小報(bào)文發(fā)送個(gè)數(shù)一定多于大報(bào)文個(gè)數(shù)。那么在中間設(shè)備對(duì)報(bào)文進(jìn)行轉(zhuǎn)發(fā)處理時(shí),由于相同的總量轉(zhuǎn)發(fā)時(shí)處理的小報(bào)文個(gè)數(shù)要多,所以轉(zhuǎn)發(fā)總體速度自然就慢了,因此需要找到一種提高小報(bào)文轉(zhuǎn)發(fā)速度的方法。
發(fā)明內(nèi)容
(一)要解決的技術(shù)問(wèn)題本發(fā)明要解決的技術(shù)問(wèn)題是:提供一種用路由封裝隧道報(bào)文轉(zhuǎn)發(fā)方法及系統(tǒng),以提高小報(bào)文的轉(zhuǎn)發(fā)速度。(二)技術(shù)方案為解決上述問(wèn)題,一方面,本發(fā)明提供了一種通用路由封裝GRE隧道報(bào)文轉(zhuǎn)發(fā)方法,包括:第一內(nèi)網(wǎng)的設(shè)備向第二內(nèi)網(wǎng)的設(shè)備發(fā)送多個(gè)小報(bào)文,其中,所述小報(bào)文的大小小于網(wǎng)絡(luò)最大傳輸單元的大??;第一防火墻設(shè)備接收到所述第一內(nèi)網(wǎng)的設(shè)備發(fā)送的多個(gè)小報(bào)文,根據(jù)所述小報(bào)文的大小將多個(gè)小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文,所述GRE封裝報(bào)文的大小不大于網(wǎng)絡(luò)最大傳輸單元的大??;第一防火墻設(shè)備將所述GRE封裝報(bào)文通過(guò)穿越公網(wǎng)的GRE隧道向第二防火墻設(shè)備發(fā)送;第二防火墻設(shè)備接收所述GRE封裝報(bào)文后,將所述GRE封裝報(bào)文進(jìn)行分割獲得封裝前的多個(gè)小報(bào)文;第二防火墻設(shè)備對(duì)所述獲得的多個(gè)小報(bào)文進(jìn)行單獨(dú)處理后轉(zhuǎn)發(fā)給對(duì)應(yīng)的第二內(nèi)網(wǎng)的設(shè)備。優(yōu)選地,所述GRE封裝報(bào)文的格式為:
I外網(wǎng)IP頭IGRE頭I內(nèi)網(wǎng)IP頭1|數(shù)據(jù)11內(nèi)網(wǎng)IP頭2 |數(shù)據(jù)2 |...|內(nèi)網(wǎng)IP頭η I數(shù)據(jù)η I…I內(nèi)網(wǎng)IP頭N |數(shù)據(jù)N |,
其中,N為GRE封裝報(bào)文中封裝的小報(bào)文的個(gè)數(shù),η為不大于N的自然數(shù);內(nèi)網(wǎng)IP頭η為GRE封裝中的第η個(gè)小報(bào)文對(duì)應(yīng)的第一內(nèi)網(wǎng)設(shè)備內(nèi)網(wǎng)ΙΡ,數(shù)據(jù)η為所述第η個(gè)小報(bào)文對(duì)應(yīng)的數(shù)據(jù)。優(yōu)選地,所述外網(wǎng)IP頭包括IP包的長(zhǎng)度信息,所述IP包的長(zhǎng)度信息包括所述GRE封裝報(bào)文的GRE頭的長(zhǎng)度以及GRE封裝報(bào)文中所有小報(bào)文的IP數(shù)據(jù)總長(zhǎng)度。優(yōu)選地,所述第二防火墻設(shè)備對(duì)所述GRE封裝報(bào)文進(jìn)行分割前,通過(guò)所述GRE封裝報(bào)文中外網(wǎng)IP頭獲取GRE封裝報(bào)文中所有小報(bào)文的IP數(shù)據(jù)總長(zhǎng)度,再根據(jù)所述小報(bào)文的IP數(shù)據(jù)總長(zhǎng)度以及每個(gè)內(nèi)網(wǎng)IP頭中記錄的對(duì)應(yīng)小報(bào)文的數(shù)據(jù)長(zhǎng)度信息對(duì)所述GRE封裝報(bào)文進(jìn)行分割。優(yōu)選地,所述第一防火墻設(shè)備根據(jù)所述小報(bào)文的大小將多個(gè)小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文的步驟包括:第一防火墻設(shè)備接收小報(bào)文后判斷當(dāng)前已經(jīng)接收還未發(fā)送的所有小報(bào)文的總大小是否大于所述網(wǎng)絡(luò)最大傳輸單元的大小:如果不大于,則繼續(xù)接收下一個(gè)小報(bào)文后回到判斷當(dāng)前已經(jīng)接收還未發(fā)送的所有小報(bào)文總的大小是否大于所述網(wǎng)絡(luò)最大傳輸單元的大小的步驟;如果大于,則將在當(dāng)前接收的小報(bào)文之前已經(jīng)接收還未發(fā)送的所有小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文。。優(yōu)選地,所述第一防火墻設(shè)備根據(jù)所述小報(bào)文的大小將多個(gè)小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文的步驟進(jìn)一步包括:第一防火墻設(shè)備接收到小報(bào)文之后,若超過(guò)設(shè)定時(shí)間還未接收到下一個(gè)報(bào)文,則將已經(jīng)接收還未發(fā)送的所有小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文。另一方面,本發(fā)明還提供了一種通用路由封裝GRE隧道報(bào)文轉(zhuǎn)發(fā)系統(tǒng),包括:第一內(nèi)網(wǎng)的設(shè)備,用于向第二內(nèi)網(wǎng)的設(shè)備發(fā)送多個(gè)小報(bào)文,其中,所述小報(bào)文的大小小于網(wǎng)絡(luò)最大傳輸單元的大??;第一防火墻設(shè)備,用于接收到所述第一內(nèi)網(wǎng)的設(shè)備發(fā)送的多個(gè)小報(bào)文,根據(jù)所述小報(bào)文的大小將多個(gè)小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文,然后將所述GRE封裝報(bào)文向第二防火墻設(shè)備發(fā)送;所述GRE封裝報(bào)文的大小不大于網(wǎng)絡(luò)最大傳輸單元的大??;第二防火墻設(shè)備,與所述第一防火墻設(shè)備之間建立有穿越公網(wǎng)的GRE隧道,用于接收所述GRE封裝報(bào)文后,將所述GRE封裝報(bào)文進(jìn)行分割獲得封裝前的多個(gè)小報(bào)文,然后對(duì)所述獲得的多個(gè)小報(bào)文進(jìn)行單獨(dú)處理后轉(zhuǎn)發(fā)給對(duì)應(yīng)的第二內(nèi)網(wǎng)的設(shè)備;第二內(nèi)網(wǎng)的設(shè)備,用于接收所述第二防火墻設(shè)備轉(zhuǎn)發(fā)的處理后的小報(bào)文。(三)有益效果本發(fā)明通過(guò)將多個(gè)小報(bào)文整合封裝成一個(gè)較大的GRE封裝報(bào)文后再進(jìn)行轉(zhuǎn)發(fā),提高了在有大量小報(bào)文需要轉(zhuǎn)發(fā)時(shí)GRE隧道的轉(zhuǎn)發(fā)速度,同時(shí)由于公網(wǎng)中需要轉(zhuǎn)發(fā)的報(bào)文數(shù)量減少了,減小了網(wǎng)絡(luò)的壓力。
圖1為根據(jù)本發(fā)明實(shí)施例一種通用路由封裝GRE隧道報(bào)文轉(zhuǎn)發(fā)方法流程圖;圖2為根據(jù)本發(fā)明實(shí)施例兩個(gè)內(nèi)網(wǎng)的設(shè)備通過(guò)各自的防火墻設(shè)備進(jìn)行通信的示意圖;圖3為根據(jù)本發(fā)明實(shí)施例一種通用路由封裝GRE隧道報(bào)文轉(zhuǎn)發(fā)系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面結(jié)合附圖及實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)說(shuō)明如下。實(shí)施例一:圖1所示為本實(shí)施例記載的一種通用路由封裝GRE隧道報(bào)文轉(zhuǎn)發(fā)方法流程圖,所述方法包括:SllO:第一內(nèi)網(wǎng)的設(shè)備向第二內(nèi)網(wǎng)的設(shè)備發(fā)送多個(gè)小報(bào)文,其中,所述小報(bào)文的大小小于網(wǎng)絡(luò)最大傳輸單元的大??;S120:第一防火墻設(shè)備接收到所述第一內(nèi)網(wǎng)的設(shè)備發(fā)送的多個(gè)小報(bào)文,根據(jù)所述小報(bào)文的大小將多個(gè)小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文,所述GRE封裝報(bào)文的大小不大于網(wǎng)絡(luò)最大傳輸單元的大??;S130:第一防火墻設(shè)備將所述GRE封裝報(bào)文通過(guò)穿越公網(wǎng)的GRE隧道向第二防火墻設(shè)備發(fā)送;S140:第二防火墻設(shè)備接收所述GRE封裝報(bào)文后,將所述GRE封裝報(bào)文進(jìn)行分割獲得封裝前的多個(gè)小報(bào)文;S150:第二防火墻設(shè)備對(duì)所述獲得的多個(gè)小報(bào)文進(jìn)行單獨(dú)處理后轉(zhuǎn)發(fā)給對(duì)應(yīng)的第二內(nèi)網(wǎng)的設(shè)備。在本實(shí)施例中,通過(guò)將多個(gè)小報(bào)文整合封裝成一個(gè)較大的GRE封裝報(bào)文后再進(jìn)行轉(zhuǎn)發(fā),提高了在有大量小報(bào)文需要轉(zhuǎn)發(fā)時(shí)GRE隧道的轉(zhuǎn)發(fā)速度,同時(shí)減小了網(wǎng)絡(luò)的壓力。實(shí)施例二:圖2所示為本實(shí)施例記載的兩個(gè)內(nèi)網(wǎng)的設(shè)備通過(guò)各自的防火墻設(shè)備進(jìn)行通信的示意圖。其中第一內(nèi)網(wǎng)PC a的設(shè)備(內(nèi)網(wǎng)IP為1.1.1.1)對(duì)應(yīng)的第一防火墻FW a設(shè)備(公網(wǎng)IP為201.1.1.1)與第二內(nèi)網(wǎng)PC b的設(shè)備(公網(wǎng)IP為202.1.1.2)對(duì)應(yīng)的第二防火墻FWb設(shè)備(內(nèi)網(wǎng)IP為2.2.2.2)之間配置有穿越公網(wǎng)的GRE隧道,公網(wǎng)之間配置的轉(zhuǎn)發(fā)最大傳輸單元(Maximum Transmission Unit, MTU)為512k,使小于512字節(jié)的報(bào)文無(wú)需分片就可進(jìn)行轉(zhuǎn)發(fā)。第一內(nèi)網(wǎng)PC a的設(shè)備和第二內(nèi)網(wǎng)PC b的設(shè)備通過(guò)所述GRE隧道對(duì)報(bào)文進(jìn)行轉(zhuǎn)發(fā)。本實(shí)施例記載的GRE隧道報(bào)文轉(zhuǎn)發(fā)方法,包括:S210:第一內(nèi)網(wǎng)PC a的設(shè)備向第二內(nèi)網(wǎng)PC b的設(shè)備發(fā)送大量的小報(bào)文,本實(shí)施例中,設(shè)每個(gè)小報(bào)文的大小為64k,在本發(fā)明的其它實(shí)施例中,所述各小報(bào)文的大小可以不同;S220:第一防火墻FW a設(shè)備接收到所述第一內(nèi)網(wǎng)PC a的設(shè)備發(fā)送的小報(bào)文,根據(jù)所述小報(bào)文的大小選擇多個(gè)小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文,在本實(shí)施例中,將8個(gè)小報(bào)文整合封裝成一個(gè)512k的GRE封裝報(bào)文,使得GRE封裝報(bào)文的大小正好為MTU的大?。黄渲?,所述GRE封裝報(bào)文的格式為:I外網(wǎng)IP頭Igre頭I內(nèi)網(wǎng)ip頭ι|數(shù)據(jù)11內(nèi)網(wǎng)ip頭2|數(shù)據(jù)2卜.I內(nèi)網(wǎng)ip頭η I數(shù)據(jù)η I…I內(nèi)網(wǎng)IP頭N |數(shù)據(jù)N其中,N為GRE封裝報(bào)文中封裝的小報(bào)文的個(gè)數(shù),本實(shí)施例中N為8,η為不大于N的自然數(shù);內(nèi)網(wǎng)IP頭η為GRE封裝中的第η個(gè)小報(bào)文對(duì)應(yīng)的第一內(nèi)網(wǎng)PC a設(shè)備的內(nèi)網(wǎng)IP,數(shù)據(jù)η為所述第η個(gè)小報(bào)文對(duì)應(yīng)的數(shù)據(jù);這里第一內(nèi)網(wǎng)PC a可能有多個(gè)設(shè)備同時(shí)訪問(wèn)第二內(nèi)網(wǎng)PC b的設(shè)備,所以上述GRE封裝報(bào)文的格式中的各內(nèi)網(wǎng)IP頭可能不同。所述外網(wǎng)IP頭包括IP包的長(zhǎng)度信息,所述IP包的長(zhǎng)度信息包括所述GRE封裝報(bào)文的GRE頭的長(zhǎng)度以及GRE封裝報(bào)文中所有小報(bào)文的IP數(shù)據(jù)總長(zhǎng)度;每個(gè)內(nèi)網(wǎng)IP頭中記錄有對(duì)應(yīng)小報(bào)文的數(shù)據(jù)長(zhǎng)度信息;S230:第一防火墻FW a設(shè)備將所述GRE封裝報(bào)文通過(guò)穿越公網(wǎng)的GRE隧道向第二防火墻FW b設(shè)備發(fā)送;S240:第二防火墻FW b設(shè)備接收所述GRE封裝報(bào)文后,通過(guò)所述GRE封裝報(bào)文中外網(wǎng)IP頭獲取GRE封裝報(bào)文中所有小報(bào)文的IP數(shù)據(jù)總長(zhǎng)度,再根據(jù)所述小報(bào)文的IP數(shù)據(jù)總長(zhǎng)度以及每個(gè)內(nèi)網(wǎng)IP頭中記錄的對(duì)應(yīng)小報(bào)文的數(shù)據(jù)長(zhǎng)度信息,再根據(jù)所述小報(bào)文的數(shù)據(jù)總長(zhǎng)度對(duì)所述GRE封裝報(bào)文進(jìn)行分割,獲得封裝前的8個(gè)小報(bào)文;S250:第二防火墻FW b設(shè)備對(duì)所述獲得的多個(gè)小報(bào)文進(jìn)行單獨(dú)處理后轉(zhuǎn)發(fā)給對(duì)應(yīng)的第二內(nèi)網(wǎng)PC b的設(shè)備。本實(shí)施例中把多個(gè)小報(bào)文封裝在一個(gè)GRE封裝報(bào)文中來(lái)進(jìn)行轉(zhuǎn)發(fā),使網(wǎng)絡(luò)處理效果提聞。實(shí)施例三:本實(shí)施例包括了實(shí)施例一或?qū)嵤├膬?nèi)容,但是更為具體的,在本實(shí)施例中,所述第一防火墻設(shè)備根據(jù)所述小報(bào)文的大小將多個(gè)小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文的步驟包括:第一防火墻設(shè)備接收小報(bào)文后判斷當(dāng)前已經(jīng)接收還未發(fā)送的所有小報(bào)文的總大小是否大于所述網(wǎng)絡(luò)最大傳輸單元的大小:如果不大于,則繼續(xù)接收下一個(gè)小報(bào)文后回到判斷當(dāng)前已經(jīng)接收還未發(fā)送的所有小報(bào)文總的大小是否大于所述網(wǎng)絡(luò)最大傳輸單元的大小的步驟;如果大于,則將在當(dāng)前接收的小報(bào)文之前已經(jīng)接收還未發(fā)送的所有小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文。這樣,一旦當(dāng)前接收的小報(bào)文與之前已經(jīng)接收但是還未發(fā)送的所有小報(bào)文的和超過(guò)了網(wǎng)絡(luò)最大傳輸單元的大小,則將之前已經(jīng)接收但是還未發(fā)送的所有小報(bào)文進(jìn)行整合后轉(zhuǎn)發(fā)。 此外,在本實(shí)施例中,為了避免接收的小報(bào)文是最后一個(gè)報(bào)文而浪費(fèi)時(shí)間,第一防火墻設(shè)備接收到小報(bào)文之后,若超過(guò)設(shè)定時(shí)間還未接收到下一個(gè)報(bào)文,則將已經(jīng)接收還未發(fā)送的所有小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文。例如預(yù)設(shè)設(shè)定時(shí)間為0.01秒,如果在接收到當(dāng)前小報(bào)文后,過(guò)了 0.01秒之后還未接收到下一個(gè)小報(bào)文,則直接將已經(jīng)接收的小報(bào)文封裝成GRE封裝報(bào)文,無(wú)需再等待小報(bào)文的總大小不大于MTU,以免此小報(bào)文為最后一個(gè)報(bào)文而浪費(fèi)時(shí)間本實(shí)施例通過(guò)GRE隧道的特點(diǎn),在大量小報(bào)文需要進(jìn)行GRE隧道轉(zhuǎn)發(fā)時(shí),將多個(gè)小報(bào)文進(jìn)行整合成一個(gè)大報(bào)文,使GRE封裝報(bào)文的體積正好適合網(wǎng)絡(luò)轉(zhuǎn)發(fā)。實(shí)施例四:圖3所示為本實(shí)施例記載的一種通用路由封裝GRE隧道報(bào)文轉(zhuǎn)發(fā)系統(tǒng)的結(jié)構(gòu)示意圖,用于實(shí)現(xiàn)上述實(shí)施例一、實(shí)施例二或?qū)嵤├姆椒ǎ?第一內(nèi)網(wǎng)的設(shè)備310,用于向第二內(nèi)網(wǎng)的設(shè)備340發(fā)送多個(gè)小報(bào)文,其中,所述小報(bào)文的大小小于網(wǎng)絡(luò)最大傳輸單元大?。坏谝环阑饓υO(shè)備320,用于接收到所述第一內(nèi)網(wǎng)的設(shè)備310發(fā)送的多個(gè)小報(bào)文,根據(jù)所述小報(bào)文的大小將多個(gè)小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文,然后將所述GRE封裝報(bào)文向第二防火墻設(shè)備330發(fā)送;所述GRE封裝報(bào)文的大小不大于網(wǎng)絡(luò)最大傳輸單元的大??;第二防火墻設(shè)備330,與所述第一防火墻設(shè)備320之間建立有穿越公網(wǎng)的GRE隧道,用于接收所述GRE封裝報(bào)文后,將所述GRE封裝報(bào)文進(jìn)行分割獲得封裝前的多個(gè)小報(bào)文,然后對(duì)所述獲得的多個(gè)小報(bào)文進(jìn)行單獨(dú)處理后轉(zhuǎn)發(fā)給對(duì)應(yīng)的第二內(nèi)網(wǎng)的設(shè)備340 ;第二內(nèi)網(wǎng)的設(shè)備340,用于接收所述第二防火墻設(shè)備330轉(zhuǎn)發(fā)的處理后的小報(bào)文。通過(guò)本實(shí)施例的系統(tǒng),可以將多個(gè)小報(bào)文整合封裝成一個(gè)較大的GRE封裝報(bào)文后再進(jìn)行轉(zhuǎn)發(fā),提高了在有大量小報(bào)文需要轉(zhuǎn)發(fā)時(shí)GRE隧道的轉(zhuǎn)發(fā)速度。以上實(shí)施方式僅用于說(shuō)明本發(fā)明,而并非對(duì)本發(fā)明的限制,有關(guān)技術(shù)領(lǐng)域的普通技術(shù)人員,在不脫離本發(fā)明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有等同的技術(shù)方案也屬于本發(fā)明的范疇,本發(fā)明的專利保護(hù)范圍應(yīng)由權(quán)利要求限定。
權(quán)利要求
1.一種通用路由封裝GRE隧道報(bào)文轉(zhuǎn)發(fā)方法,其特征在于,包括: 第一內(nèi)網(wǎng)的設(shè)備向第二內(nèi)網(wǎng)的設(shè)備發(fā)送多個(gè)小報(bào)文,其中,所述小報(bào)文的大小小于網(wǎng)絡(luò)最大傳輸單元的大??; 第一防火墻設(shè)備接收到所述第一內(nèi)網(wǎng)的設(shè)備發(fā)送的多個(gè)小報(bào)文,根據(jù)所述小報(bào)文的大小將多個(gè)小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文,所述GRE封裝報(bào)文的大小不大于網(wǎng)絡(luò)最大傳輸單元的大??; 第一防火墻設(shè)備將所述GRE封裝報(bào)文通過(guò)穿越公網(wǎng)的GRE隧道向第二防火墻設(shè)備發(fā)送; 第二防火墻設(shè)備接收所述GRE封裝報(bào)文后,將所述GRE封裝報(bào)文進(jìn)行分割獲得封裝前的多個(gè)小報(bào)文; 第二防火墻設(shè)備對(duì)所述獲得的多個(gè)小報(bào)文進(jìn)行單獨(dú)處理后轉(zhuǎn)發(fā)給對(duì)應(yīng)的第二內(nèi)網(wǎng)的設(shè)備。
2.如權(quán)利要求1所述的方法,其特征在于,所述GRE封裝報(bào)文的格式為: 外網(wǎng)ip頭Igre頭I內(nèi)網(wǎng)ip頭ι|數(shù)據(jù)ι|內(nèi)網(wǎng)ip頭2|數(shù)據(jù)2|…I內(nèi)網(wǎng)ip頭n|數(shù)據(jù)n|…I內(nèi)網(wǎng)IP頭Ni數(shù) 據(jù)N 其中,N為GRE封裝報(bào)文中封裝的小報(bào)文的個(gè)數(shù),η為不大于N的自然數(shù);內(nèi)網(wǎng)IP頭η為GRE封裝中的第η個(gè)小報(bào)文對(duì)應(yīng)的第一內(nèi)網(wǎng)設(shè)備的內(nèi)網(wǎng)ΙΡ,數(shù)據(jù)η為所述第η個(gè)小報(bào)文對(duì)應(yīng)的數(shù)據(jù)。
3.如權(quán)利要求2所述的方法,其特征在于,所述外網(wǎng)IP頭包括IP包的長(zhǎng)度信息,所述IP包的長(zhǎng)度信息包括所述GRE封裝報(bào)文的GRE頭的長(zhǎng)度以及GRE封裝報(bào)文中所有小報(bào)文的IP數(shù)據(jù)總長(zhǎng)度。
4.如權(quán)利要求3所述的方法,其特征在于,所述第二防火墻設(shè)備對(duì)所述GRE封裝報(bào)文進(jìn)行分割前,通過(guò)所述GRE封裝報(bào)文中外網(wǎng)IP頭獲取GRE封裝報(bào)文中所有小報(bào)文的IP數(shù)據(jù)總長(zhǎng)度,再根據(jù)所述小報(bào)文的IP數(shù)據(jù)總長(zhǎng)度以及每個(gè)內(nèi)網(wǎng)IP頭中記錄的對(duì)應(yīng)小報(bào)文的數(shù)據(jù)長(zhǎng)度信息對(duì)所述GRE封裝報(bào)文進(jìn)行分割。
5.如權(quán)利要求1所述的方法,其特征在于,所述第一防火墻設(shè)備根據(jù)所述小報(bào)文的大小將多個(gè)小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文的步驟包括: 第一防火墻設(shè)備接收小報(bào)文后判斷當(dāng)前已經(jīng)接收還未發(fā)送的所有小報(bào)文的總大小是否大于所述網(wǎng)絡(luò)最大傳輸單元的大小: 如果不大于,則繼續(xù)接收下一個(gè)小報(bào)文后回到判斷當(dāng)前已經(jīng)接收還未發(fā)送的所有小報(bào)文總的大小是否大于所述網(wǎng)絡(luò)最大傳輸單元的大小的步驟; 如果大于,則將在當(dāng)前接收的小報(bào)文之前已經(jīng)接收還未發(fā)送的所有小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文。
6.如權(quán)利要求5所述的方法,其特征在于,所述第一防火墻設(shè)備根據(jù)所述小報(bào)文的大小將多個(gè)小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文的步驟進(jìn)一步包括:第一防火墻設(shè)備接收到小報(bào)文之后,若超過(guò)設(shè)定時(shí)間還未接收到下一個(gè)報(bào)文,則將已經(jīng)接收還未發(fā)送的所有小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文。
7.一種通用路由封裝GRE隧道報(bào)文轉(zhuǎn)發(fā)系統(tǒng),其特征在于,包括: 第一內(nèi)網(wǎng)的設(shè)備,用于向第二內(nèi)網(wǎng)的設(shè)備發(fā)送多個(gè)小報(bào)文,其中,所述小報(bào)文的大小小于網(wǎng)絡(luò)最大傳輸單元大?。? 第一防火墻設(shè)備,用于接收到所述第一內(nèi)網(wǎng)的設(shè)備發(fā)送的多個(gè)小報(bào)文,根據(jù)所述小報(bào)文的大小將多個(gè)小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文,然后將所述GRE封裝報(bào)文向第二防火墻設(shè)備發(fā)送;所述GRE封裝報(bào)文的大小不大于網(wǎng)絡(luò)最大傳輸單元的大??; 第二防火墻設(shè)備,與所述第一防火墻設(shè)備之間建立有穿越公網(wǎng)的GRE隧道,用于接收所述GRE封裝報(bào)文后,將所述GRE封裝報(bào)文進(jìn)行分割獲得封裝前的多個(gè)小報(bào)文,然后對(duì)所述獲得的多個(gè)小報(bào)文進(jìn)行單獨(dú)處理后轉(zhuǎn)發(fā)給對(duì)應(yīng)的第二內(nèi)網(wǎng)的設(shè)備; 第二內(nèi)網(wǎng)的設(shè)備,用 于接收所述第二防火墻設(shè)備轉(zhuǎn)發(fā)的處理后的小報(bào)文。
全文摘要
本發(fā)明公開(kāi)了一種通用路由封裝GRE隧道報(bào)文轉(zhuǎn)發(fā)方法及系統(tǒng),所述方法包括第一內(nèi)網(wǎng)的設(shè)備向第二內(nèi)網(wǎng)的設(shè)備發(fā)送多個(gè)小報(bào)文;第一防火墻設(shè)備接收到所述第一內(nèi)網(wǎng)的設(shè)備發(fā)送的多個(gè)小報(bào)文,根據(jù)所述小報(bào)文的大小將多個(gè)小報(bào)文進(jìn)行整合并封裝成一個(gè)GRE封裝報(bào)文;第一防火墻設(shè)備將所述GRE封裝報(bào)文通過(guò)穿越公網(wǎng)的GRE隧道向第二防火墻設(shè)備發(fā)送;第二防火墻設(shè)備接收所述GRE封裝報(bào)文后,將所述GRE封裝報(bào)文進(jìn)行分割獲得封裝前的多個(gè)小報(bào)文;第二防火墻設(shè)備對(duì)所述獲得的多個(gè)小報(bào)文進(jìn)行單獨(dú)處理后轉(zhuǎn)發(fā)給對(duì)應(yīng)的第二內(nèi)網(wǎng)的設(shè)備。本發(fā)明提高了在有大量小報(bào)文需要轉(zhuǎn)發(fā)時(shí)GRE隧道的轉(zhuǎn)發(fā)速度,并減小了網(wǎng)絡(luò)的壓力。
文檔編號(hào)H04L29/06GK103152254SQ20131004165
公開(kāi)日2013年6月12日 申請(qǐng)日期2013年2月1日 優(yōu)先權(quán)日2013年2月1日
發(fā)明者陳海濱 申請(qǐng)人:漢柏科技有限公司