專利名稱:防止網(wǎng)絡(luò)攻擊的報文轉(zhuǎn)發(fā)方法和網(wǎng)關(guān)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)攻擊,尤其涉及一種防止網(wǎng)絡(luò)攻擊的報文轉(zhuǎn)發(fā)方法和網(wǎng)關(guān)。
背景技術(shù):
Over Billing(過度計費)是一種常見的網(wǎng)絡(luò)攻擊方式,其原理是,Internet上的 服務(wù)器,利用其探測到的客戶端的IP地址,通過與客戶端已經(jīng)建立的連接來穿透防火墻, 向客戶端發(fā)送大量的報文,導(dǎo)致客戶端被錯誤的計費。這時,客戶端會被多計費,導(dǎo)致用戶 的投訴。為了解決這一問題,可以使用QoS保證技術(shù),在網(wǎng)關(guān)側(cè)按照客戶端的QoS簽約進行 下行的限流,這樣服務(wù)器端發(fā)出的超出QoS的報文將被丟棄,然而,如果簽約的QoS較大,那 么服務(wù)器端還是能夠發(fā)送很多的下行報文,計費還是有很大的誤差。因此,目前一般是采用 網(wǎng)關(guān)與防火墻連動的方式,這種方式下,網(wǎng)關(guān)將用戶的在線情況通過信令通知到防火墻,防 火墻對已經(jīng)下網(wǎng)的用戶的IP地址涉及的流進行清理,完全阻斷,當(dāng)用戶再次使用這個IP地 址的時候,服務(wù)器發(fā)起的連接就失效了,報文無法下行,從而保護了用戶。但是這種方式仍 然存在以下缺陷1、對于在線的用戶,沒有好的辦法阻斷惡意下行流量;2、需要網(wǎng)關(guān)設(shè)備 和防火墻的定制接口的開發(fā)工作,并且難以在不同廠家的設(shè)備之間使用。
發(fā)明內(nèi)容
本發(fā)明實施例提供了一種防止網(wǎng)絡(luò)攻擊的報文轉(zhuǎn)發(fā)方法和網(wǎng)關(guān),以避免網(wǎng)絡(luò)側(cè)發(fā) 起的Over Billing的攻擊導(dǎo)致的惡意計費,同時改善終端用戶的體驗。本發(fā)明實施例的上述目的是通過如下技術(shù)方案實現(xiàn)的一種防止網(wǎng)絡(luò)攻擊的報文轉(zhuǎn)發(fā)方法,所述方法包括當(dāng)接收到客戶端發(fā)送的上行報文時,判斷所述上行報文是否是ICMP不可達(dá)報文;如果所述上行報文不是ICMP不可達(dá)報文,則將下行報文令牌計數(shù)器置滿;判斷上行報文令牌計數(shù)器是否為零;如果上行報文令牌計數(shù)器為零,則丟棄所述上行報文;如果上行報文令牌計數(shù)器不為零,則將所述上行報文令牌計數(shù)器減一,并將所述 上行報文轉(zhuǎn)發(fā)到服務(wù)器端。一種網(wǎng)關(guān),所述網(wǎng)關(guān)包括接收單元,用于接收客戶端發(fā)送的上行報文,或者服務(wù)器端發(fā)送的下行報文;邏輯單元,用于在所述接收單元接收到客戶端發(fā)送的上行報文時,判斷所述上行 報文是否為ICMP不可達(dá)報文;并用于在所述上行報文不是ICMP不可達(dá)報文時,判斷上行報 文令牌計數(shù)器是否為零;處理單元,用于在所述邏輯單元的判斷結(jié)果為所述上行報文不是ICMP不可達(dá)報 文時,將下行報文令牌計數(shù)器置滿;并在所述邏輯單元的判斷結(jié)果為上行報文令牌計數(shù)器 為零時,丟棄所述上行報文,或者在所述邏輯單元的判斷結(jié)果為上行報文令牌計數(shù)器不為
4零時,將所述上行報文令牌計數(shù)器減一;發(fā)送單元,用于在所述邏輯單元的判斷結(jié)果為上行報文令牌計數(shù)器不為零時,將 所述上行報文轉(zhuǎn)發(fā)到服務(wù)器端。一種防止網(wǎng)絡(luò)攻擊的報文轉(zhuǎn)發(fā)方法,所述方法包括當(dāng)接收到服務(wù)器端發(fā)送的下行報文時,將上行報文令牌計數(shù)器置滿;判斷下行報文令牌計數(shù)器是否為零;如果下行報文令牌計數(shù)器為零,則丟棄所述下行報文;如果下行報文令牌計數(shù)器不為零,則將所述下行報文令牌計數(shù)器減一,并將所述 下行報文轉(zhuǎn)發(fā)到客戶端。本發(fā)明實施例提供的方法和網(wǎng)關(guān),通過一種令牌機制,監(jiān)控了基于 流的上下行報文的轉(zhuǎn)發(fā)流程,防止了任何單向過度發(fā)包的情況。
此處所說明的附圖用來提供對本發(fā)明的進一步理解,構(gòu)成本申請的一部分,并不 構(gòu)成對本發(fā)明的限定。在附圖中圖1為本發(fā)明實施例的方法應(yīng)用于網(wǎng)關(guān)的網(wǎng)絡(luò)架構(gòu)示意圖;圖2為本發(fā)明一個實施例的方法流程圖;圖3為本發(fā)明另一實施例的方法流程圖;圖4為本發(fā)明實施例的網(wǎng)關(guān)的組成框圖。
具體實施例方式為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚明白,下面結(jié)合實施例和附 圖,對本發(fā)明實施例做進一步詳細(xì)說明。在此,本發(fā)明的示意性實施例及其說明用于解釋本 發(fā)明,但并不作為對本發(fā)明的限定。圖1為本實施例的防止網(wǎng)絡(luò)攻擊的報文轉(zhuǎn)發(fā)方法應(yīng)用于網(wǎng)關(guān)的網(wǎng)絡(luò)架構(gòu)示意 圖,請參照圖1,該網(wǎng)絡(luò)架構(gòu)中除了包括網(wǎng)關(guān)GGSN以外,還包括客戶端UE以及服務(wù)器端 Server。在網(wǎng)關(guān)GGSN中,可以預(yù)先設(shè)置每個上行報文允許Server端下行報文的個數(shù),也 即預(yù)先設(shè)置下行報文令牌計數(shù)器的個數(shù);也可以在收到上行報文后,利用深度報文解析 (DPI)能力獲知業(yè)務(wù)類型,并參考業(yè)務(wù)類型定義每個上行報文允許Server端下行報文的個 數(shù),也即據(jù)此設(shè)置下行報文令牌計數(shù)器的個數(shù),例如HTTP的鏈接可以設(shè)置允許下行報文的 個數(shù)為5,又例如RTSP的鏈接,則設(shè)置允許下行報文的個數(shù)為50 ;還可以在預(yù)先設(shè)置了下行 報文令牌計數(shù)器的個數(shù)后,如果收到上行報文,則利用DPI能力獲知業(yè)務(wù)類型,并參考該業(yè) 務(wù)類型對上述下行報文令牌計數(shù)器的個數(shù)進行調(diào)整。如果超出上述定義值,就在網(wǎng)關(guān)GGSN 丟棄,如此可以阻斷Server端不顧客戶端響應(yīng)能力的情況下,過度發(fā)送報文。同樣的,在該 網(wǎng)關(guān)GGSN中,也可以預(yù)先設(shè)置每個下行報文允許客戶端上行報文的個數(shù),也即預(yù)先設(shè)置上 行報文令牌計數(shù)器的個數(shù);也可以利用深度報文解析(DPI)能力獲知業(yè)務(wù)類型,并參考業(yè) 務(wù)類型定義每個下行報文允許客戶端上行報文的個數(shù),也即據(jù)此設(shè)置上行報文令牌計數(shù)器 的個數(shù),例如HTTP的鏈接可以設(shè)置允許上行報文的個數(shù)為5,又例如RTSP的鏈接,則設(shè)置允 許上行報文的個數(shù)為10 ;還可以在預(yù)先設(shè)置了上行報文令牌計數(shù)器的個數(shù)后,如果收到下 行報文,則利用DPI能力獲知業(yè)務(wù)類型,并參考該業(yè)務(wù)類型對上述上行報文令牌計數(shù)器的
5個數(shù)進行調(diào)整。如果超出這個定義值,也在網(wǎng)關(guān)GGSN丟棄,如此可以防止客戶端向服務(wù)器 端發(fā)送過多的報文。圖2和圖3為本發(fā)明實施例提供的防止網(wǎng)絡(luò)攻擊的報文轉(zhuǎn)發(fā)方法的流程圖, 該方法應(yīng)用于網(wǎng)關(guān),由網(wǎng)關(guān)通過監(jiān)控客戶端在使用業(yè)務(wù)的過程中建立的流信息,例如 TCP (Transmission Control Protocol,傳輸控制協(xié)、議)禾口 UDP(User Datagram Protocol, 用戶數(shù)據(jù)包協(xié)議),檢測上下行的報文的個數(shù),使用上/下行報文作為令牌,來控制報文的 轉(zhuǎn)發(fā)。其中圖2為本發(fā)明實施例提供的防止網(wǎng)絡(luò)攻擊的報文轉(zhuǎn)發(fā)方法中,當(dāng)網(wǎng)關(guān)接收到客戶 端發(fā)送的上行報文時的流程圖,請參照圖2,該方法包括步驟201 判斷所述上行報文是否是ICMP不可達(dá)報文;其中,如果下行出現(xiàn)惡意報文,例如服務(wù)器端不顧客戶端的響應(yīng)能力,頻繁向客戶 端發(fā)送報文,則該報文很有可能為惡意報文,如此則有可能導(dǎo)致上行出現(xiàn)ICMP不可達(dá)報 文。再例如,從Server端來的下行報文發(fā)送給了客戶端,客戶端沒有監(jiān)聽這個端口,認(rèn)為是 非法報文,則向Server端回一個ICMP不可達(dá)報文。步驟202 如果所述上行報文不是ICMP不可達(dá)報文,則判斷上行報文令牌計數(shù)器 是否為零;其中,如前所述,本實施例可以根據(jù)前述三種方法設(shè)置上行報文令牌計數(shù)器的個 數(shù),以對報文轉(zhuǎn)發(fā)情況進行計數(shù),如果該上行報文令牌計數(shù)器的個數(shù)為零,則說明發(fā)送了過 多的上行報文,應(yīng)該停止上行。步驟203 如果上行報文令牌計數(shù)器為零,則丟棄所述上行報文,然后將下行報文 令牌計數(shù)器置滿;其中,由于上行報文令牌計數(shù)器為零,需要停止上行,則可以將該上行報文丟棄。 而由于有上行的報文,則還要將下行報文令牌計數(shù)器置滿,表示可以允許下行報文的順暢 通過,其中,將下行報文令牌計數(shù)器置滿的處理也可以放在步驟202中,本實施例并不以此 作為限制。其中,如前所述,本實施例可以根據(jù)前述三種方法設(shè)置下行報文令牌計數(shù)器的個 數(shù),以對報文轉(zhuǎn)發(fā)情況進行計數(shù)。步驟204 如果上行報文令牌計數(shù)器不為零,則將所述上行報文令牌計數(shù)器減一, 然后將下行報文令牌計數(shù)器置滿,并將所述上行報文轉(zhuǎn)發(fā)到服務(wù)器端。其中,由于上行報文令牌計數(shù)器不為零,則說明還可以繼續(xù)發(fā)送上行報文,則此時 將該上行報文轉(zhuǎn)發(fā)到服務(wù)器端,同時將上行報文令牌計數(shù)器減一,表示可以發(fā)送的上行報 文減少了一個。同樣的,由于有上行的報文,則還要將下行報文令牌計數(shù)器置滿,表示可以 允許下行報文的順暢通過,其中,將下行報文令牌計數(shù)器置滿的處理也可以放在步驟202 中,本實施例并不以此作為限制。在本實施例中,根據(jù)步驟201的判斷結(jié)果,如果上行報文是ICMP不可達(dá)報文,如前 所述,則說明下行可能出現(xiàn)了惡意報文,此時將下行報文令牌計數(shù)器清零,也即禁止轉(zhuǎn)發(fā)下 行報文。本實施例的方法不僅適用于TCP流,也同樣適用于UDP流,在此不再贅述。當(dāng)前狀態(tài)下,網(wǎng)關(guān)作為轉(zhuǎn)發(fā)設(shè)備,對報文流的健康狀態(tài)是不關(guān)注的,這就導(dǎo)致了客
6戶端不可避免地收到惡意報文,在客戶端只能被動響應(yīng)丟包,而本實施例提供的方法使得 網(wǎng)關(guān)可以判斷報文流是否正常,在網(wǎng)關(guān)計費之前丟包,減少了計費誤差。圖3為本發(fā)明實施例提供的防止網(wǎng)絡(luò)攻擊的報文轉(zhuǎn)發(fā)方法中,當(dāng)網(wǎng)關(guān)接收到服務(wù) 器端發(fā)送的下行報文時的流程圖,需要說明的是,本實施例的方法可以單獨進行,也可以結(jié) 合圖2所示實施例的方法進行,本實施例并不以此作為限制,且在結(jié)合圖2所示實施例的方 法進行時,并不限制其先后順序。請參照圖3,該方法包括步驟301 判斷下行報文令牌計數(shù)器是否為零;其中,如前所述,本實施例可以根據(jù)前述三種方法設(shè)置下行報文令牌計數(shù)器的個 數(shù),以對報文轉(zhuǎn)發(fā)情況進行計數(shù),如果該下行報文令牌計數(shù)器的個數(shù)為零,則說明發(fā)送了過 多的下行報文,應(yīng)該停止下行。步驟302 如果下行報文令牌計數(shù)器為零,則丟棄所述下行報文,然后將上行報文 令牌計數(shù)器置滿;其中,由于下行報文令牌計數(shù)器為零,需要停止下行,則可以將該下行報文丟棄。 而由于有下行的報文,則還要將上行報文令牌計數(shù)器置滿,表示可以允許上行報文的順暢 通過,其中,將上行報文令牌計數(shù)器置滿的處理也可以在網(wǎng)關(guān)接收到服務(wù)器端發(fā)送的下行 報文時執(zhí)行,本實施例并不以此作為限制。其中,如前所述,本實施例可以根據(jù)前述三種方法設(shè)置上行報文令牌計數(shù)器的個 數(shù),以對報文轉(zhuǎn)發(fā)情況進行計數(shù)。步驟303 如果下行報文令牌計數(shù)器不為零,則將所述下行報文令牌計數(shù)器減一, 然后將上行報文令牌計數(shù)器置滿,并將所述下行報文轉(zhuǎn)發(fā)到客戶端。其中,由于下行報文令牌計數(shù)器不為零,則說明還可以繼續(xù)發(fā)送下行報文,則此時 將該下行報文轉(zhuǎn)發(fā)到客戶端端,同時將下行報文令牌計數(shù)器減一,表示可以發(fā)送的下行報 文減少了一個。同樣的,由于有下行的報文,則還要將上行報文令牌計數(shù)器置滿,表示可以 允許上行報文的順暢通過,其中,將上行報文令牌計數(shù)器置滿的處理也可以在網(wǎng)關(guān)接收到 服務(wù)器端發(fā)送的下行報文時執(zhí)行,本實施例并不以此作為限制。本實施例的方法不僅適用于TCP流,也同樣適用于UDP流,在此不再贅述。當(dāng)前狀態(tài)下,網(wǎng)關(guān)作為轉(zhuǎn)發(fā)設(shè)備,對報文流的健康狀態(tài)是不關(guān)注的,這就導(dǎo)致了客 戶端不可避免地收到惡意報文,在客戶端只能被動響應(yīng)丟包,而本實施例提供的方法使得 網(wǎng)關(guān)可以判斷報文流是否正常,在網(wǎng)關(guān)計費之前丟包,減少了計費誤差。本發(fā)明實施例提供的方法,通過一種令牌機制,監(jiān)控了基于流的上下行報文的轉(zhuǎn) 發(fā)流程,通過對上行和下行報文流程的處理,解決了單向過多地進行上行和下行的問題,防 止了任何單向過度發(fā)包的情況。由于這個機制是逐流實現(xiàn)的,所以不會影響用戶的正常的 業(yè)務(wù)傳遞。又由于只要進行一個簡單的計數(shù)和判斷即可實施本方案,因此實現(xiàn)簡單。圖4為本發(fā)明實施例提供的網(wǎng)關(guān)的組成框圖,請參照圖4,該網(wǎng)關(guān)包括接收單元41,用于接收客戶端發(fā)送的上行報文,或者服務(wù)器端發(fā)送的下行報文;其中,接收單元41接收到的客戶端發(fā)送的上行報文或者服務(wù)器端發(fā)送的下行報 文為傳輸控制協(xié)議報文或者用戶數(shù)據(jù)包協(xié)議報文。邏輯單元42,用于在接收單元41接收到客戶端發(fā)送的上行報文時,判斷所述上行 報文是否為ICMP不可達(dá)報文;并用于在所述上行報文不是ICMP不可達(dá)報文時,判斷上行報文令牌計數(shù)器是否為零;處理單元43,用于在邏輯單元42的判斷結(jié)果為所述上行報文不是ICMP不可達(dá) 報文時,將下行報文令牌計數(shù)器置滿;并在邏輯單元42的判斷結(jié)果為上行報文令牌計數(shù)器 為零時,丟棄所述上行報文,或者在邏輯單元42的判斷結(jié)果為上行報文令牌計數(shù)器不為零 時,將所述上行報文令牌計數(shù)器減一;發(fā)送單元44,用于在邏輯單元42的判斷結(jié)果為上行報文令牌計數(shù)器不為零時,將 所述上行報文轉(zhuǎn)發(fā)到服務(wù)器端。在一個實施例中,處理單元43還用于在邏輯單元42的判斷結(jié)果為,所述上行報文 是ICMP不可達(dá)報文時,將下行報文令牌計數(shù)器清零。在一個實施例中邏輯單元42還用于在接收單元41接收到服務(wù)器端發(fā)送的下行報文時,判斷下行 報文令牌計數(shù)器是否為零;處理單元43還用于在接收單元41接收到服務(wù)器端發(fā)送的下行報文時,將上行報 文令牌計數(shù)器置滿;并在邏輯單元42的判斷結(jié)果為下行報文令牌計數(shù)器為零時,丟棄所述 下行報文,或者在邏輯單元42的判斷結(jié)果為下行報文令牌計數(shù)器不為零時,將所述下行報 文令牌計數(shù)器減一;發(fā)送單元44還用于將所述下行報文轉(zhuǎn)發(fā)到客戶端。在一個實施例中,該網(wǎng)關(guān)還包括設(shè)置單元45,用于預(yù)先設(shè)置上行報文令牌計數(shù)器的個數(shù)以及下行報文令牌計數(shù)器 的個數(shù);或者,在接收單元41接收到客戶端發(fā)送的上行報文或者服務(wù)器端發(fā)送的下行報文 后,利用深度報文解析能力獲知業(yè)務(wù)類型,參考業(yè)務(wù)類型設(shè)置上行報文令牌計數(shù)器的個數(shù) 或者下行報文令牌計數(shù)器的個數(shù);或者,預(yù)先設(shè)置上行報文令牌計數(shù)器的個數(shù)以及下行報 文令牌計數(shù)器的個數(shù),在接收到客戶端發(fā)送的上行報文或者服務(wù)器端發(fā)送的下行報文后, 利用深度報文解析能力獲知業(yè)務(wù)類型,根據(jù)業(yè)務(wù)類型調(diào)整所述上行報文令牌計數(shù)器的個數(shù) 或者所述下行報文令牌計數(shù)器的個數(shù),以提供給邏輯單元42進行報文數(shù)量的判斷,以及提 供給處理單元43進行數(shù)值的重置。本實施例的網(wǎng)關(guān)的各組成部分分別用于實現(xiàn)前述方法的各步驟,由于在方法實施 例中,已經(jīng)對各步驟進行了詳細(xì)說明,在此不再贅述。本發(fā)明實施例提供的網(wǎng)關(guān),通過一種令牌機制,監(jiān)控了基于流的上下行報文的轉(zhuǎn) 發(fā)流程,通過對上行和下行報文流程的處理,解決了單向過多地進行上行和下行的問題,防 止了任何單向過度發(fā)包的情況。由于這個機制是逐流實現(xiàn)的,所以不會影響用戶的正常的 業(yè)務(wù)傳遞。又由于只要進行一個簡單的計數(shù)和判斷即可實施本方案,因此實現(xiàn)簡單。以上所述的具體實施例,對本發(fā)明的目的、技術(shù)方案和有益效果進行了進一步詳 細(xì)說明,所應(yīng)理解的是,以上所述僅為本發(fā)明的具體實施例而已,并不用于限定本發(fā)明的保 護范圍,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應(yīng)包含在本 發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
一種防止網(wǎng)絡(luò)攻擊的報文轉(zhuǎn)發(fā)方法,其特征在于,所述方法包括當(dāng)接收到客戶端發(fā)送的上行報文時,判斷所述上行報文是否是ICMP不可達(dá)報文;如果所述上行報文不是ICMP不可達(dá)報文,則將下行報文令牌計數(shù)器置滿;判斷上行報文令牌計數(shù)器是否為零;如果上行報文令牌計數(shù)器為零,則丟棄所述上行報文;如果上行報文令牌計數(shù)器不為零,則將所述上行報文令牌計數(shù)器減一,并將所述上行報文轉(zhuǎn)發(fā)到服務(wù)器端。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于如果所述上行報文是ICMP不可達(dá)報文,則將下行報文令牌計數(shù)器清零。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括 當(dāng)接收到服務(wù)器端發(fā)送的下行報文時,將上行報文令牌計數(shù)器置滿; 判斷下行報文令牌計數(shù)器是否為零;如果下行報文令牌計數(shù)器為零,則丟棄所述下行報文;如果下行報文令牌計數(shù)器不為零,則將所述下行報文令牌計數(shù)器減一,并將所述下行 報文轉(zhuǎn)發(fā)到客戶端。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述上行報文或者所述下行報文為傳輸 控制協(xié)議報文或者用戶數(shù)據(jù)包協(xié)議報文。
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述方法還包括預(yù)先設(shè)置上行報文令牌計數(shù)器的個數(shù)以及下行報文令牌計數(shù)器的個數(shù);或者 在接收到客戶端發(fā)送的上行報文或者服務(wù)器端發(fā)送的下行報文后,利用深度報文解析 能力獲知業(yè)務(wù)類型,根據(jù)業(yè)務(wù)類型設(shè)置上行報文令牌計數(shù)器的個數(shù)或者下行報文令牌計數(shù) 器的個數(shù);或者預(yù)先設(shè)置上行報文令牌計數(shù)器的個數(shù)以及下行報文令牌計數(shù)器的個數(shù),在接收到客 戶端發(fā)送的上行報文或者服務(wù)器端發(fā)送的下行報文后,利用深度報文解析能力獲知業(yè)務(wù)類 型,根據(jù)業(yè)務(wù)類型調(diào)整所述上行報文令牌計數(shù)器的個數(shù)或者所述下行報文令牌計數(shù)器的個數(shù)。
6.一種防止網(wǎng)絡(luò)攻擊的報文轉(zhuǎn)發(fā)方法,其特征在于,所述方法包括 當(dāng)接收到服務(wù)器端發(fā)送的下行報文時,將上行報文令牌計數(shù)器置滿; 判斷下行報文令牌計數(shù)器是否為零;如果下行報文令牌計數(shù)器為零,則丟棄所述下行報文;如果下行報文令牌計數(shù)器不為零,則將所述下行報文令牌計數(shù)器減一,并將所述下行 報文轉(zhuǎn)發(fā)到客戶端。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述下行報文為傳輸控制協(xié)議報文或者 用戶數(shù)據(jù)包協(xié)議報文。
8.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述方法還包括預(yù)先設(shè)置上行報文令牌計數(shù)器的個數(shù)以及下行報文令牌計數(shù)器的個數(shù);或者 在接收到客戶端發(fā)送的上行報文或者服務(wù)器端發(fā)送的下行報文后,利用深度報文解析 能力獲知業(yè)務(wù)類型,根據(jù)業(yè)務(wù)類型設(shè)置上行報文令牌計數(shù)器的個數(shù)或者下行報文令牌計數(shù) 器的個數(shù);或者預(yù)先設(shè)置上行報文令牌計數(shù)器的個數(shù)以及下行報文令牌計數(shù)器的個數(shù),在接收到客 戶端發(fā)送的上行報文或者服務(wù)器端發(fā)送的下行報文后,利用深度報文解析能力獲知業(yè)務(wù)類 型,根據(jù)業(yè)務(wù)類型調(diào)整所述上行報文令牌計數(shù)器的個數(shù)或者所述下行報文令牌計數(shù)器的個數(shù)。
9.一種網(wǎng)關(guān),其特征在于,所述網(wǎng)關(guān)包括接收單元,用于接收客戶端發(fā)送的上行報文,或者服務(wù)器端發(fā)送的下行報文;邏輯單元,用于在所述接收單元接收到客戶端發(fā)送的上行報文時,判斷所述上行報文 是否為ICMP不可達(dá)報文;并用于在所述上行報文不是ICMP不可達(dá)報文時,判斷上行報文令 牌計數(shù)器是否為零;處理單元,用于在所述邏輯單元的判斷結(jié)果為所述上行報文不是ICMP不可達(dá)報文時, 將下行報文令牌計數(shù)器置滿;并在所述邏輯單元的判斷結(jié)果為上行報文令牌計數(shù)器為零 時,丟棄所述上行報文,或者在所述邏輯單元的判斷結(jié)果為上行報文令牌計數(shù)器不為零時, 將所述上行報文令牌計數(shù)器減一;發(fā)送單元,用于在所述邏輯單元的判斷結(jié)果為上行報文令牌計數(shù)器不為零時,將所述 上行報文轉(zhuǎn)發(fā)到服務(wù)器端。
10.根據(jù)權(quán)利要求9所述的網(wǎng)關(guān),其特征在于所述處理單元還用于在所述邏輯單元的判斷結(jié)果為,所述上行報文是ICMP不可達(dá)報 文時,將下行報文令牌計數(shù)器清零。
11.根據(jù)權(quán)利要求9所述的網(wǎng)關(guān),其特征在于所述邏輯單元還用于在所述接收單元接收到服務(wù)器端發(fā)送的下行報文時,判斷下行報 文令牌計數(shù)器是否為零;所述處理單元還用于在所述接收單元接收到服務(wù)器端發(fā)送的下行報文時,將上行報文 令牌計數(shù)器置滿;并在所述邏輯單元的判斷結(jié)果為下行報文令牌計數(shù)器為零時,丟棄所述 下行報文,或者在所述邏輯單元的判斷結(jié)果為下行報文令牌計數(shù)器不為零時,將所述下行 報文令牌計數(shù)器減一;所述發(fā)送單元還用于將所述下行報文轉(zhuǎn)發(fā)到客戶端。
12.根據(jù)權(quán)利要求11所述的網(wǎng)關(guān),其特征在于,所述接收單元接收到的客戶端發(fā)送的 上行報文或者服務(wù)器端發(fā)送的下行報文為傳輸控制協(xié)議報文或者用戶數(shù)據(jù)包協(xié)議報文。
13.根據(jù)權(quán)利要求9所述的網(wǎng)關(guān),其特征在于,所述網(wǎng)關(guān)還包括設(shè)置單元,用于預(yù)先設(shè)置上行報文令牌計數(shù)器的個數(shù)以及下行報文令牌計數(shù)器的個 數(shù);或者,在所述接收單元接收到客戶端發(fā)送的上行報文或者服務(wù)器端發(fā)送的下行報文后, 利用深度報文解析能力獲知業(yè)務(wù)類型,根據(jù)業(yè)務(wù)類型設(shè)置上行報文令牌計數(shù)器的個數(shù)或者 下行報文令牌計數(shù)器的個數(shù);或者,預(yù)先設(shè)置上行報文令牌計數(shù)器的個數(shù)以及下行報文令 牌計數(shù)器的個數(shù),在接收到客戶端發(fā)送的上行報文或者服務(wù)器端發(fā)送的下行報文后,利用 深度報文解析能力獲知業(yè)務(wù)類型,根據(jù)業(yè)務(wù)類型調(diào)整所述上行報文令牌計數(shù)器的個數(shù)或者 所述下行報文令牌計數(shù)器的個數(shù)。
全文摘要
本發(fā)明實施例提供一種防止網(wǎng)絡(luò)攻擊的報文轉(zhuǎn)發(fā)方法和網(wǎng)關(guān),所述方法包括當(dāng)接收到客戶端發(fā)送的上行報文時,判斷所述上行報文是否是ICMP不可達(dá)報文;如果所述上行報文不是ICMP不可達(dá)報文,則將下行報文令牌計數(shù)器置滿;判斷上行報文令牌計數(shù)器是否為零;如果上行報文令牌計數(shù)器為零,則丟棄所述上行報文;如果上行報文令牌計數(shù)器不為零,則將所述上行報文令牌計數(shù)器減一,并將所述上行報文轉(zhuǎn)發(fā)到服務(wù)器端。本發(fā)明實施例提供的方法和網(wǎng)關(guān),通過一種令牌機制,監(jiān)控了基于流的上下行報文的轉(zhuǎn)發(fā)流程,防止了任何單向過度發(fā)包的情況。
文檔編號H04L12/66GK101917450SQ20101027087
公開日2010年12月15日 申請日期2010年8月31日 優(yōu)先權(quán)日2010年8月31日
發(fā)明者秦欣, 胡玉勝 申請人:華為技術(shù)有限公司