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

防火墻多出口智能選路方法

文檔序號(hào):7928251閱讀:1432來源:國(guó)知局
專利名稱:防火墻多出口智能選路方法
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)絡(luò)安全技術(shù)領(lǐng)域,尤其涉及一種防火墻多出口智能選路方法。
背景技術(shù)
選路策略是防火墻最基本、最重要、也是最核心的部分。 常見的防火墻選路過程一般采用搜索路由表的方法并決定向哪個(gè)網(wǎng)絡(luò)接口發(fā)送
數(shù)據(jù)包。 一個(gè)防火墻的的路由表可能包含幾十條或者更多條目,但由于路由條目之間存在
某種關(guān)聯(lián)關(guān)系,所以選路必須按照某種規(guī)則進(jìn)行查找,以達(dá)到最精確的結(jié)果。 目前防火墻采用二叉樹加最長(zhǎng)掩碼匹配的路由查找方法,但是在多線路的情況
下,選路可能會(huì)找到好幾條同樣匹配的路由。為了合理的分配帶寬,這時(shí)防火墻就采用負(fù)載
均衡的方法,輪詢的返回其中一條路由作為選路結(jié)果,這樣源IP地址和目的IP地址相同的
數(shù)據(jù)包就可能經(jīng)過不同的路徑進(jìn)行轉(zhuǎn)發(fā)。 在多出口的情況下,實(shí)現(xiàn)負(fù)載均衡就有可能不能正常通信,因?yàn)楫?dāng)數(shù)據(jù)包通過鏈 路上的路由器時(shí),路由器會(huì)記錄下數(shù)據(jù)包的源、目的地址和端口信息,然后再通過防火墻到 達(dá)目的地址,等到該數(shù)據(jù)包的回包再通過防火墻時(shí),由于是多出口 ,防火墻會(huì)做負(fù)載均衡而 使回包不一定會(huì)走來的那條路,等到這個(gè)回包再到達(dá)路由器時(shí),路由器因?yàn)闋顟B(tài)檢測(cè)機(jī)制 會(huì)檢查回包的地址、端口信息,當(dāng)發(fā)現(xiàn)回包信息和與其記錄的信息不一致,就認(rèn)為回包不合 法,于是將丟棄回包,從而可能會(huì)造成通信中斷。 如圖1所示,圖1是一個(gè)多線路的VPN環(huán)境,圖中VPN設(shè)備就是防火墻,在這個(gè)拓 撲中,防火墻實(shí)現(xiàn)VPN功能搭建隧道。120. 0. 0. 0/24子網(wǎng)和180. 0. 0. 0/24子網(wǎng)的通信有兩 條線路 (1)A線路是經(jīng)過路由器C-VPN1-路由器A-路由器B-VPN2,其中指定從VPN1的 ethO到VPN2的ethO 口建立一條動(dòng)態(tài)隧道。 (2)B線路是是經(jīng)過路由器C-VPN3-防火墻_路由器B-VPN2,是NAT方式,其中從 VPN3的ethO到VPN2的eth3 口建立一條動(dòng)態(tài)隧道。 (3)路由器C指定到180.0.0. 0/24子網(wǎng)的有2條默認(rèn)路由,下一跳分別是VPN1和 VPN3。 (4)VPN2指定到120. 0. 0. 0/24子網(wǎng)的報(bào)文有2條隧道進(jìn)行加密,出接口分別為 ethO禾口 ethl。 (5)路由器B指定到120.0.0.0/24子網(wǎng)的策略路由有2條,其中源地址為 40. 0. 0. 0/24子網(wǎng)的下一跳是路由器A,而源地址為50. 0. 0. 0/24子網(wǎng)的下一跳是防火墻。
A線路的保護(hù)子網(wǎng)與B線路的保護(hù)子網(wǎng)是 一 致的, 120. 0. 0. 0/24〈一>180. 0. 0. 0/24,兩條隧道是同時(shí)活躍的。 現(xiàn)有技術(shù)中,當(dāng)120. 0. 0. 0/24子網(wǎng)的主機(jī)主動(dòng)跟180. 0. 0. 0/24子網(wǎng)的主機(jī)通信 時(shí),比如應(yīng)用FTP、TFTP、HTTP或者ICMP時(shí),數(shù)據(jù)包到達(dá)路由器C時(shí),查詢路由表后找到兩條 路由,進(jìn)行負(fù)載均衡,可能選擇從A線路走,也有可能從B線路走,同時(shí)路由器C會(huì)記錄數(shù)據(jù)
3包的地址端口信息,作為狀態(tài)檢測(cè)的記錄。假如數(shù)據(jù)包是從走A線路到達(dá)180. 0. 0. 0/24網(wǎng) 段,而180. 0. 0. 0/24子網(wǎng)回的數(shù)據(jù)包到達(dá)VPN2選路時(shí)也會(huì)找到兩條隧道進(jìn)行加密,分別是 ethO對(duì)應(yīng)的線路A和ethl對(duì)應(yīng)的線路B。此時(shí)也進(jìn)行負(fù)載均衡,回包的路徑就在這兩個(gè)路 徑中輪詢的選擇,假如數(shù)據(jù)包從B線路回到路由器C,路由器C會(huì)發(fā)現(xiàn)回包的信息和以前記 錄的不一致,于是丟棄了回包,這樣通信就中斷了,也就是說,120. 0. 0. 0/24子網(wǎng)的主機(jī)跟 180. 0. 0. 0/24子網(wǎng)的主機(jī)不能通信,它們之間不能互相訪問,任何應(yīng)用都不能進(jìn)行。
所以只有當(dāng)數(shù)據(jù)包實(shí)現(xiàn)源去源回,也就是說,從A線路來的數(shù)據(jù)包再?gòu)腁線路回, 這樣才能根本解決這個(gè)問題。

發(fā)明內(nèi)容
鑒于上述的分析,本發(fā)明目的在于提供一種防火墻多出口智能選路方法,用以解
決現(xiàn)有技術(shù)中防火墻選路過程中,由于負(fù)載均衡可能造成通信中斷的問題。 本發(fā)明的目的主要是通過以下技術(shù)方案實(shí)現(xiàn)的 本發(fā)明提供了一種保存數(shù)據(jù)包入接口,在回包查詢路由表時(shí),以保存的入接口作
為出接口為查詢條件的方法,來實(shí)現(xiàn)源去源回的功能。 本發(fā)明有益效果如下 本發(fā)明的其他特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分的從說明書中變 得顯而易見,或者通過實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過在所寫的說明 書、權(quán)利要求書、以及附圖中所特別指出的結(jié)構(gòu)來實(shí)現(xiàn)和獲得。


圖1為為現(xiàn)有技術(shù)中某一網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)示意圖; 圖2為本發(fā)明所述方法的流程示意圖; 圖3為本發(fā)明所述方法中舉例的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)示意圖。
具體實(shí)施例方式
本發(fā)明的核心思想是,首包經(jīng)過防火墻時(shí)記錄入接口,首包的回包、或者反方向的 數(shù)據(jù)包、或者和父連接反方向的子連接的數(shù)據(jù)包選路時(shí),以首包的入接口作為出接口查詢路由。 下面結(jié)合附圖來具體描述本發(fā)明的優(yōu)先實(shí)施例,其中,附圖構(gòu)成本申請(qǐng)一部分,并 與本發(fā)明的實(shí)施例一起用于闡釋本發(fā)明的原理。 為了實(shí)現(xiàn)智能選路,需要在數(shù)據(jù)包查詢路由表時(shí)用條件限制查找結(jié)果。數(shù)據(jù)包選 路時(shí)一般是用目的IP地址匹配防火墻路由表的目的網(wǎng)段,我們?cè)诨匕x路時(shí)用目的IP地 址和接口同時(shí)匹配路由表,其中的接口為首包的入接口,目的IP地址就是回包的IP地址。
步驟201 :數(shù)據(jù)包查詢防火墻路由表之前,會(huì)先查找對(duì)應(yīng)連接有沒有私有數(shù)據(jù)。如 果有,執(zhí)行步驟203,如果沒有,執(zhí)行步驟202。 步驟202 :沒有私有數(shù)據(jù),防火墻會(huì)記錄數(shù)據(jù)包的源IP地址、目的IP地址、源端 口、目的端口、協(xié)議號(hào)和入接口信息,并把信息保存在對(duì)應(yīng)連接的私有數(shù)據(jù)中(同一連接的 數(shù)據(jù)流的所有數(shù)據(jù)包的源IP地址、目的IP地址、源端口、目的端口、協(xié)議號(hào)相同,但是入接口可能因?yàn)殒溌穫浞莸雀淖?。比如通信過程中,首包到達(dá)防火墻(屬于同一連接的數(shù)據(jù)流 中的第一個(gè)數(shù)據(jù)包),查路由前發(fā)現(xiàn)連接中沒有私有數(shù)據(jù),于是把地址端口信息和入接口存 到對(duì)應(yīng)連接的私有數(shù)據(jù)里。 如果建立子連接,則根據(jù)子連接和父連接的方向存放對(duì)應(yīng)的源IP地址、目的IP地 址、源端口、目的端口、協(xié)議號(hào),并把父連接私有數(shù)據(jù)里的入接口 (也即首包的IP地址)存 到子連接的私有數(shù)據(jù)里。 步驟203 :根據(jù)私有數(shù)據(jù)中存的地址端口信息中的相關(guān)源信息(源IP地址、目的 端口 )和當(dāng)前數(shù)據(jù)包的地址端口信息中的相關(guān)目的信息(目的IP地址、目的端口 )進(jìn)行判 斷,如果私有數(shù)據(jù)中存的相關(guān)源信息是當(dāng)前數(shù)據(jù)包的相關(guān)目的信息,說明當(dāng)前數(shù)據(jù)包是該 連接且相反方向的數(shù)據(jù)包,執(zhí)行步驟204,否則執(zhí)行步驟205 ; 步驟204 :將數(shù)據(jù)包的出接口替換為私有數(shù)據(jù)中存的入接口,以出接口為查詢條 件查找路由。 步驟205 :匹配私有數(shù)據(jù)的地址端口信息和當(dāng)前數(shù)據(jù)包的地址端口信息是否一
致,如果一致,執(zhí)行步驟207,否則執(zhí)行206。 步驟206 :正常選路,即以現(xiàn)有的輪詢方式查找路由。 步驟207 :匹配私有數(shù)據(jù)的入接口和當(dāng)前數(shù)據(jù)包的入接口是否一致,如果一致,則 直接執(zhí)行步驟206 ;如果不一致,更新私有數(shù)據(jù)的入接口信息,將私有數(shù)據(jù)中存的入接口替 換為當(dāng)前數(shù)據(jù)包中的入接口后,再執(zhí)行步驟206 。 比如首包、同方向的數(shù)據(jù)包、和父連接同方向的子連接的數(shù)據(jù)包選路時(shí),私有數(shù)據(jù)
中存的源IP地址、目的IP地址、源端口、目的端口、協(xié)議號(hào)和這些數(shù)據(jù)包中的信息肯定是
相同的;而首包的回包、或者反方向的數(shù)據(jù)包、或者和父連接反方向的子連接的數(shù)據(jù)包選路
時(shí),私有數(shù)據(jù)存的源IP地址、目的IP地址信息肯定和當(dāng)前數(shù)據(jù)包的源IP地址、目的地址是
相反的,這時(shí)就用私有數(shù)據(jù)的入接口作為出接口來選路。 當(dāng)連接清除時(shí),私有數(shù)據(jù)要進(jìn)行釋放,否則就會(huì)內(nèi)存泄漏。 同樣的,如果同時(shí)有多條線路跟防火墻本身通信,比如telnet防火墻等操作,這 種稱作是到本機(jī)(因?yàn)槟康牡刂肥欠阑饓Φ慕涌?IP地址,而不是大部分的轉(zhuǎn)發(fā)報(bào)文)的連 接,我們也會(huì)記錄訪問防火墻的入接口,回包的時(shí)候確保選擇的路由是進(jìn)來的那條路徑,這 樣,到本機(jī)的連接也能實(shí)現(xiàn)智能選路。 比如圖3所示,用戶通過網(wǎng)通、電信兩條鏈路做負(fù)載均衡,防火墻上配了 3條默認(rèn) 路由,下一跳分別是網(wǎng)通服務(wù)器、電信服務(wù)器和內(nèi)網(wǎng)服務(wù)器。如果從內(nèi)網(wǎng)上telnet墻,由于 有3條默認(rèn)路由,可能回包會(huì)發(fā)給網(wǎng)通服務(wù)器或者電信服務(wù)器,這樣telnet就失敗了。但 是源去源回功能就可以保證通信成功,因?yàn)槲覀冇涗浟藞?bào)文的入接口 ethO,回包找到的下 一跳只能是內(nèi)網(wǎng)服務(wù)器。 為了便于理解本發(fā)明,下面還結(jié)合附圖1舉例對(duì)本發(fā)明實(shí)施例所述方法進(jìn)行舉例 說明。 當(dāng)首包查詢防火墻路由表之前,將其首包的源IP地址、目的IP地址、源端口、 目的端口、入接口和協(xié)議號(hào)存到對(duì)應(yīng)連接的私有數(shù)據(jù)里。例如,對(duì)于圖l所述情況, 120. 0. 0. 0/24子網(wǎng)主機(jī)120. 0. 0. 10 ping 180. 0. 0. 0/24子網(wǎng)主機(jī)180. 0. 0. 10時(shí),首包到
達(dá)路由器C選路后的下一跳是VPN1,那么數(shù)據(jù)就走A線路。當(dāng)數(shù)據(jù)包到達(dá)VPN2時(shí),五元組信息為源IP地址是120. 0. 0. 10,目的IP地址是180. 0. 0. IO,源端口是1024,目的端口是 8,協(xié)議類型為0800,入接口為ethO。于是VPN2就在對(duì)應(yīng)連接中記錄五元組信息和入接口 信息。接著,VPN2把數(shù)據(jù)包發(fā)給目的主機(jī)180. 0. 0. 10。 當(dāng)主機(jī)180. 0. 0. 10給主機(jī)120. 0. 0. 10回?cái)?shù)據(jù)包時(shí),當(dāng)回包到達(dá)VPN2,首先查詢對(duì) 應(yīng)連接的私有數(shù)據(jù)信息,由于首包經(jīng)過VPN2時(shí)已經(jīng)保存了五元組和入接口信息所以對(duì)應(yīng) 連接中有私有數(shù)據(jù)信息。接下來就要進(jìn)行數(shù)據(jù)包當(dāng)前方向和首包方向是否一致的判斷,這 個(gè)判斷是通過比較數(shù)據(jù)包報(bào)文首部的源和目的IP地址、端口和對(duì)應(yīng)連接私有數(shù)據(jù)中保存 的五元組信息源和目的信息是否相反,協(xié)議類型是否一致得出的。比如回包的源IP地址是 180. 0. 0. 10,目的IP地址是120. 0. 0. 10,源端口是8,目的端口是1024,協(xié)議類型為0800, 而私有數(shù)據(jù)中的五元組信息的源IP地址是當(dāng)前數(shù)據(jù)包的目的IP地址,目的IP地址是當(dāng)前 數(shù)據(jù)包的源IP地址,協(xié)議類型也是0800,說明該數(shù)據(jù)包和首包的方向是相反的。當(dāng)然,如果 數(shù)據(jù)包的五元組信息和連接私有數(shù)據(jù)的五元組相同的話,就說明是同向的。接下來就該查 路由了 ,這時(shí)確定數(shù)據(jù)包是反方向的同連接的包,就用私有數(shù)據(jù)中記錄的入接口 ethO作為 出接口去查詢路由,從而VPN2找到的是ethO那條隧道進(jìn)行加密,而不是在ethO和ethl之 間做負(fù)載均衡。這樣,在ethO和ethl兩個(gè)出口的情況下,就保證了從A線路來的數(shù)據(jù)包的 回包還是走A線路。 綜上所述,本發(fā)明提供了一種防火墻多出口智能選路方法,通過以首包的入接口 作為出接口查詢路由,可以做到數(shù)據(jù)包的源去源回,保證了多出口環(huán)境下的正常通信,從而 更好的支持負(fù)載均衡。 以上所述,僅為本發(fā)明較佳的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此, 任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換, 都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求書的保護(hù)范 圍為準(zhǔn)。
權(quán)利要求
一種防火墻多出口智能選路方法,其特征在于,所述方法包括步驟A數(shù)據(jù)包查詢防火墻路由前,查找對(duì)應(yīng)連接是否有私有數(shù)據(jù),如果有,執(zhí)行步驟B,如果沒有,將數(shù)據(jù)包的地址端口信息和入接口存到對(duì)應(yīng)連接的私有數(shù)據(jù)里;所述地址端口信息至少包括源IP地址、目的IP地址、源端口、目的端口、協(xié)議號(hào);步驟B根據(jù)私有數(shù)據(jù)中存的地址端口信息和當(dāng)前數(shù)據(jù)包的地址端口信息進(jìn)行判斷,當(dāng)兩者方向不同時(shí),將私有數(shù)據(jù)中存的入接口作為出接口來選路;當(dāng)兩者方向相同時(shí),如果入接口不同,則更新入接口,同時(shí)正常選路。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,當(dāng)建立子連接時(shí),所述步驟A還包括根 據(jù)子連接和父連接的方向存放對(duì)應(yīng)的地址端口信息,并把父連接私有數(shù)據(jù)里的入接口存到 子連接的私有數(shù)據(jù)里。
3. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟B具體包括步驟Bl :判斷私有數(shù)據(jù)里的相關(guān)源信息和當(dāng)前數(shù)據(jù)包的相關(guān)目的信息是否一致,如果不一致,執(zhí)行步驟B2,否則執(zhí)行步驟B3 ;步驟B2 :判斷私有數(shù)據(jù)里的入接口和當(dāng)前數(shù)據(jù)包的入接口是否一致,如果一致,就正 常選路;否則需要再判斷私有數(shù)據(jù)的地址端口信息和當(dāng)前數(shù)據(jù)包的地址端口信息是否一 致,如果一致,則正常選路,否則先更新私有數(shù)據(jù)后再正常選路;步驟B3 :將當(dāng)前數(shù)據(jù)包中的出接口賦值為私有數(shù)據(jù)中存的入接口,以出接口為查詢條 件選路。
4. 根據(jù)權(quán)利要求1到3中任意一項(xiàng)所述的方法,其特征在于,所述方法還包括當(dāng)清除 對(duì)應(yīng)連接時(shí),釋放私有數(shù)據(jù)。
全文摘要
本發(fā)明公開了一種防火墻多出口智能選路方法,包括步驟A數(shù)據(jù)包查詢防火墻路由前,查找對(duì)應(yīng)連接是否有私有數(shù)據(jù),如果有,執(zhí)行步驟B,如果沒有,將數(shù)據(jù)包的地址端口信息和入接口存到對(duì)應(yīng)連接的私有數(shù)據(jù)里;所述地址端口信息至少包括源IP地址、目的IP地址、源端口、目的端口、協(xié)議號(hào);步驟B根據(jù)私有數(shù)據(jù)中存的地址端口信息和當(dāng)前數(shù)據(jù)包的地址端口信息進(jìn)行判斷,當(dāng)兩者方向不同時(shí),將私有數(shù)據(jù)中存的入接口作為出接口來選路;當(dāng)兩者方向相同時(shí),如果入接口不同,則更新入接口,同時(shí)正常選路;本發(fā)明通過以首包的入接口作為出接口查詢路由,可以做到數(shù)據(jù)包的源去源回,保證了多出口環(huán)境下的正常通信,從而更好的支持負(fù)載均衡。
文檔編號(hào)H04L29/06GK101753426SQ200810227968
公開日2010年6月23日 申請(qǐng)日期2008年12月3日 優(yōu)先權(quán)日2008年12月3日
發(fā)明者趙萍 申請(qǐng)人:北京天融信網(wǎng)絡(luò)安全技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
栾川县| 唐山市| 临湘市| 休宁县| 威远县| 定州市| 长沙市| 佛坪县| 肥东县| 南川市| 常山县| 黎城县| 清流县| 新泰市| 高碑店市| 肥乡县| 金沙县| 福州市| 中西区| 阿巴嘎旗| 普洱| 正安县| 宜兰县| 中江县| 丽江市| 偃师市| 茂名市| 方城县| 鄂州市| 中宁县| 乌审旗| 定边县| 深水埗区| 浮山县| 土默特左旗| 开江县| 玉山县| 双桥区| 海林市| 临邑县| 大关县|