李俊鳳
(廣州民航職業(yè)技術(shù)學(xué)院,廣東廣州510403)
基于ENP-2611的GTP防火墻的設(shè)計(jì)與實(shí)現(xiàn)
李俊鳳
(廣州民航職業(yè)技術(shù)學(xué)院,廣東廣州510403)
網(wǎng)絡(luò)防火墻的重要指標(biāo)是處理速度,采用網(wǎng)絡(luò)處理器對(duì)于防火墻做硬件加速是實(shí)現(xiàn)這個(gè)指標(biāo)的重要方法之一。利用Intel公司的IXP2400網(wǎng)絡(luò)處理器,研究了在GPRS移動(dòng)通信環(huán)境中解析GTP協(xié)議,提取關(guān)鍵字段,并按照安全策略進(jìn)行過濾的方法,進(jìn)而給出了網(wǎng)絡(luò)防火墻系統(tǒng)在ENP-2611開發(fā)板上的設(shè)計(jì)和實(shí)現(xiàn)。
GPRS;GTP協(xié)議;ENP-2611;防火墻
隨著移動(dòng)通信技術(shù)的蓬勃發(fā)展,其應(yīng)用重點(diǎn)從傳統(tǒng)的語音業(yè)務(wù),逐步轉(zhuǎn)移到數(shù)據(jù)信息交換業(yè)務(wù)。與此同時(shí),通信的安全問題也越來越突出,拒絕服務(wù),DNS淹沒,過度計(jì)費(fèi)等攻擊,會(huì)使得移動(dòng)通信的授權(quán)和鑒權(quán)、通信的安全性和完整性面臨嚴(yán)重威脅。這就要求我們必須采取有效的安全策略來保護(hù)網(wǎng)絡(luò)基礎(chǔ)設(shè)施和用戶信息。目前的網(wǎng)絡(luò)防火墻產(chǎn)品大多數(shù)是基于TCP/IP協(xié)議的通用防火墻,而移動(dòng)通信系統(tǒng)有其本身的數(shù)據(jù)傳輸協(xié)議,如GTP協(xié)議(GPRS Tunneling Protocol,GPRS隧道協(xié)議)等,對(duì)防火墻的功能有其特殊的要求。同時(shí),通用防火墻對(duì)于無線局域網(wǎng)的保護(hù)也是參照固定網(wǎng)絡(luò)的防火墻做法,并不能很好地適應(yīng)移動(dòng)通信的特殊要求。
傳統(tǒng)上的硬件防火墻設(shè)備,一般采用X86架構(gòu)或者ASIC架構(gòu),前者在通用CPU和操作系統(tǒng)的平臺(tái)上開發(fā),具有成本低,功能靈活,適應(yīng)性強(qiáng)等優(yōu)點(diǎn),但是速度性能和處理能力有較大限制,特別是無法滿足千兆級(jí)骨干網(wǎng)絡(luò)的要求;后者則采用專用硬件,具有相當(dāng)高的處理能力,但同時(shí)又帶來開發(fā)周期長,開發(fā)成本高,可編程性差,缺乏足夠的靈活性和擴(kuò)展能力等一系列問題。
近年來出現(xiàn)的網(wǎng)絡(luò)處理器(Network Processor,NP),在相當(dāng)大程度上解決了這個(gè)問題。網(wǎng)絡(luò)處理器是一種專門用來執(zhí)行包處理和轉(zhuǎn)發(fā)的高速可編程處理器,結(jié)合了RISC處理器的低成本、靈活性,以及專用硬件的速度性能,既具有通用處理器的可編程性,同時(shí)又具有ASIC芯片的高速處理性能。網(wǎng)絡(luò)處理器的并行性,高速數(shù)據(jù)處理,可模塊化設(shè)計(jì)等優(yōu)良特性,使得它在各種網(wǎng)絡(luò)服務(wù)和應(yīng)用方面都有廣泛的用途。網(wǎng)絡(luò)處理器能夠高速執(zhí)行包處理和包轉(zhuǎn)發(fā),適應(yīng)網(wǎng)絡(luò)流量大,對(duì)實(shí)時(shí)性要求非常高的移動(dòng)通信環(huán)境,我們?cè)谄浠A(chǔ)之上,提出一種適用于移動(dòng)通信的新型防火墻的設(shè)計(jì)和實(shí)現(xiàn)方案。
IXP2400是Intel公司的第二代網(wǎng)絡(luò)處理器。由一個(gè)XScale核心處理器和八個(gè)可編程的微引擎組成。XScale處理器是通用RISC結(jié)構(gòu)的32位ARM系列處理器的一種,通常用于系統(tǒng)控制層,運(yùn)行實(shí)時(shí)操作系統(tǒng),能夠進(jìn)行低功耗、高密度的控制平面應(yīng)用的處理;微引擎ME是相互獨(dú)立的32位RISC結(jié)構(gòu)可編程處理器,分為兩組,每組都有獨(dú)立的命令總線和數(shù)據(jù)總線,每個(gè)微引擎均擁有八個(gè)零開銷切換的硬件線程,能夠進(jìn)行高性能的分組處理。IXP2400通過采取多微引擎并行處理結(jié)構(gòu)、多線程交換技術(shù)、分布式緩存結(jié)構(gòu)等技術(shù),增強(qiáng)了并行處理能力,實(shí)現(xiàn)了高速的數(shù)據(jù)包處理操作。
ENP-2611是Radisys公司生產(chǎn)的,基于IXP2400的嵌入式NP開發(fā)板,使用標(biāo)準(zhǔn)的PCI-2.2接口與PC機(jī)相連,ENP-2611開發(fā)板通過PM3386以太網(wǎng)控制器,以及PCI-PCI橋,支持其自帶的3個(gè)千兆光口與外部網(wǎng)絡(luò)連接,實(shí)現(xiàn)數(shù)據(jù)的快速通道;同時(shí)還有一個(gè)10/100 BASE-TX網(wǎng)口和一個(gè)串口供調(diào)試使用。
GPRS是General Packet Radio Service的縮寫,即通用分組無線業(yè)務(wù),它是在第二代數(shù)字移動(dòng)通信系統(tǒng)GSM的基礎(chǔ)上引入新的部件而構(gòu)成的無線數(shù)據(jù)傳輸系統(tǒng),可以為GSM網(wǎng)絡(luò)用戶提供高速的分組數(shù)據(jù)業(yè)務(wù)。在GSM系統(tǒng)上構(gòu)建GPRS系統(tǒng)時(shí),原有系統(tǒng)中的絕大部分部件都不需要作硬件改動(dòng),只需作軟件升級(jí),而需要引入的硬件設(shè)備是SGSN(GPRS服務(wù)支持節(jié)點(diǎn))和GGSN(GPRS網(wǎng)關(guān)支持節(jié)點(diǎn))以及PCU(分組控制單元)。SGSN的工作是對(duì)移動(dòng)終端進(jìn)行定位和跟蹤,并發(fā)送和接收移動(dòng)終端的分組。GGSN將SGSN發(fā)送和接收的GSM分組按照其他分組協(xié)議(如IP)發(fā)送到外部網(wǎng)絡(luò)。GGSN和SGSN可以合稱為GSN。GPRS系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示:
圖1 GPRS系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)圖
GTP協(xié)議承載在UDP或TCP協(xié)議之上,是用于支持多種協(xié)議的數(shù)據(jù)分組在GPRS骨干網(wǎng)內(nèi)GSN之間進(jìn)行傳輸?shù)膮f(xié)議。SNDCP(子網(wǎng)相關(guān)聚類協(xié)議)使得網(wǎng)絡(luò)層協(xié)議的數(shù)據(jù)(例如IP、X.25、CLNP等),可以透明地在移動(dòng)終端與SGSN之間傳遞。網(wǎng)絡(luò)層協(xié)議的變化不致影響GPRS的低層協(xié)議。同時(shí)它還可提供數(shù)據(jù)壓縮及協(xié)議頭部壓縮功能以提高信道利用率。
GTP協(xié)議是由信令平面和數(shù)據(jù)傳輸平面組成的。在信令平面,GTP信令規(guī)定了移動(dòng)臺(tái)MS接入GPRS網(wǎng)絡(luò)的隧道控制和管理功能要求,通過交換PDP上下文信息(PDPContext),信令主要執(zhí)行建立、修改和刪除GSN之間隧道功能以及執(zhí)行移動(dòng)性管理、位置管理、路徑管理等功能。在傳輸平臺(tái),GTP利用GSN之間建立的隧道傳送用戶分組數(shù)據(jù),并給出了以GTP為基礎(chǔ)的IP組網(wǎng)技術(shù),SCSN、GGSN執(zhí)行GTP、UDP或TCP和IP字頭封裝功能,以及包括骨干路由器在內(nèi)的對(duì)用戶分組數(shù)據(jù)的分段處理功能。
2.1總體設(shè)計(jì)
本系統(tǒng)結(jié)構(gòu)框架以ENP2611開發(fā)板構(gòu)建硬件平臺(tái),軟件設(shè)計(jì)采用Intel推薦的因特網(wǎng)交換體系結(jié)構(gòu)可移植性框架(IXA)。在MontaVista Linux嵌入式實(shí)時(shí)操作系統(tǒng)上,運(yùn)行IPV4轉(zhuǎn)發(fā)程序,對(duì)截獲的GTP包進(jìn)行信息長度檢查,信息內(nèi)容過濾等工作,實(shí)現(xiàn)防火墻功能。防火墻的系統(tǒng)部署如圖2所示:
圖2 防火墻的系統(tǒng)部署圖
ENP-2611的3個(gè)千兆光口分別連接內(nèi)部網(wǎng),外部網(wǎng)和緩沖區(qū)(DMZ),防火墻負(fù)責(zé)這三者間的路由功能,對(duì)外通過邊界路由器連接第三方網(wǎng)絡(luò)和公網(wǎng)。防火墻提供各個(gè)方向上基于TCP/IP五元組的高速包過濾。內(nèi)部網(wǎng)(除DMZ外)使用私有IP地址,利用防火墻的端口映射NAT功能訪問外部網(wǎng)絡(luò)。
2.2GPRS環(huán)境的建立
連接ENP-2611的主機(jī)(主機(jī)A),通過調(diào)試網(wǎng)口把編譯好的Monta Vista Linux內(nèi)核鏡像下載到開發(fā)板的SDRAM中,解壓運(yùn)行,使用Red Hat Linux 9.0自帶的minicom工具從串口監(jiān)視其運(yùn)行情況。千兆光口與外部網(wǎng)絡(luò)連接,系統(tǒng)運(yùn)行IPV4程序,為各個(gè)光口配置IP地址,同時(shí)在微引擎層面上啟動(dòng)接收、發(fā)送等模塊,使其可以處理各種網(wǎng)絡(luò)封包,轉(zhuǎn)發(fā)符合規(guī)則的IP V4包。
主機(jī)B和主機(jī)C在Red Hat Linux 9.0操作系統(tǒng)上,安裝OpenGGSN軟件,分別實(shí)現(xiàn)GGSN節(jié)點(diǎn)和SGSN節(jié)點(diǎn)的功能,GGSN節(jié)點(diǎn)等待SGSN節(jié)點(diǎn)發(fā)送的GTP格式的PDP請(qǐng)求、隧道管理、位置管理、路徑管理、移動(dòng)性管理等控制信息或者T-PDU數(shù)據(jù)包,并且作出回應(yīng)。如果信息正確,就利用Linux的虛擬網(wǎng)卡技術(shù)建立隧道,之后就可以在GTP隧道上傳輸和交換數(shù)據(jù)。ENP-2611上運(yùn)行的IPV4轉(zhuǎn)發(fā)程序起到路由的作用,同時(shí)在原有程序的基礎(chǔ)上添加了對(duì)GTP協(xié)議解釋的模塊,可以對(duì)接收到的GTP包進(jìn)行分析、過濾、轉(zhuǎn)發(fā)等處理。
OpenGGSN是依循GNU General Public License(GPL)的開源軟件,實(shí)現(xiàn)GPRS系統(tǒng)中的GGSN節(jié)點(diǎn)功能以及GTPV0和V1兩種協(xié)議格式,同時(shí)提供了SGSN模擬器,可以在Linux虛擬網(wǎng)卡技術(shù)的基礎(chǔ)上,交換控制信息,建立GTP隧道,實(shí)現(xiàn)GPRS系統(tǒng)中的Gn口的功能。
2.3IPV4程序
系統(tǒng)的路由功能以IPV4轉(zhuǎn)發(fā)程序?yàn)榛A(chǔ),其軟件模塊框圖如圖3所示:
圖3 軟件模塊框圖
其中,Packet Rx模塊使用一個(gè)微引擎上的8個(gè)線程來接收和重組來自以太網(wǎng)上的數(shù)據(jù)包;Eth Decap和Classification模塊把第2層包頭去掉,并進(jìn)行分類操作;IPv4轉(zhuǎn)發(fā)模塊先檢查IP頭是否符合規(guī)范,不符合則將其丟棄,如果符合就進(jìn)行路由查找,找到匹配項(xiàng)后向QM模塊發(fā)送Enqueue請(qǐng)求,同時(shí)把數(shù)據(jù)包加入到發(fā)送隊(duì)列;而需要更高層次操作的數(shù)據(jù)包,會(huì)轉(zhuǎn)發(fā)到XScale上的core component作進(jìn)一步的處理;QM模塊利用Q-Array硬件結(jié)構(gòu)對(duì)發(fā)送隊(duì)列執(zhí)行Enqueue和Dequeue操作;Scheduler調(diào)度模塊負(fù)責(zé)將數(shù)據(jù)包調(diào)度到Ethernet網(wǎng)絡(luò)接口,并采取一定的措施緩解擁塞問題;Packet Tx模塊接收來自QM模塊的數(shù)據(jù)包,把它們拆分為多個(gè)數(shù)據(jù)包分片,調(diào)用Eth Encap模塊為各個(gè)分片打上第2層包頭,然后發(fā)送到Ethernet網(wǎng)絡(luò)接口。
2.4安全策略設(shè)計(jì)
為了適應(yīng)在GTP環(huán)境中的應(yīng)用,我們?cè)赑acket Rx模塊后面添加一個(gè)GTP Analysis模塊,用于實(shí)現(xiàn)GTP協(xié)議包截獲、包頭分析、狀態(tài)檢測(cè)等一系列功能。對(duì)于一般的IP封包,會(huì)直接轉(zhuǎn)發(fā)到IPv4 Forwarder模塊進(jìn)行處理,而對(duì)于GTP包,我們會(huì)對(duì)它的各個(gè)包頭字段進(jìn)行解析,并且與寄存器中的狀態(tài)值進(jìn)行比較,以決定對(duì)各種GTP包所采取相應(yīng)的策略,同時(shí)把重要的信息保存到日志文件中。
根據(jù)3GPP協(xié)議的規(guī)定,GTP-C信令信息的注冊(cè)端口號(hào)為2123,GTP-U數(shù)據(jù)信息的注冊(cè)端口號(hào)為2152。我們可以據(jù)此判斷接收到的數(shù)據(jù)包是否為GTP包。但是,作為防火墻的安全策略,這種方法顯得過于簡單,因此我們應(yīng)加上某一時(shí)刻網(wǎng)絡(luò)封包的狀態(tài)值作為進(jìn)一步?jīng)Q策的依據(jù),以此來決定放行或者阻截該數(shù)據(jù)包。設(shè)計(jì)方案和實(shí)現(xiàn)方法。需要完善的工作主要是改善數(shù)據(jù)包處理的速率,設(shè)計(jì)更好的安全策略,進(jìn)一步提高整個(gè)系統(tǒng)的效率。
網(wǎng)絡(luò)處理器為防火墻的設(shè)計(jì)提供了全新的、更高級(jí)的平臺(tái),本文的設(shè)計(jì)在ENP- 2611 開發(fā)板的基礎(chǔ)上,充分發(fā)揮了IXP2400 處理器的高速包處理和轉(zhuǎn)發(fā)能力,提出了一種適用于GTP 環(huán)境的智能防火墻的設(shè)計(jì)方案和實(shí)現(xiàn)方法。需要完善的工作主要是改善數(shù)據(jù)包處理的速率,設(shè)計(jì)更好的安全策略,進(jìn)一步提高整個(gè)系統(tǒng)的效率。
[1]孫宇,羅軍舟.IXP2400網(wǎng)絡(luò)處理器架構(gòu)下防火墻的設(shè)計(jì)[J].計(jì)算機(jī)應(yīng)用與軟件,2006(2):16-17.
[2]蘇金瀧.GPRS網(wǎng)絡(luò)的協(xié)議結(jié)構(gòu)及其通信技術(shù)[J].福建電腦,2006(1):59-60.
[3]文志成等.GPRS網(wǎng)絡(luò)技術(shù)[M].北京:電子工業(yè)出版社,2005.
[4]杜劍峰.基于網(wǎng)絡(luò)處理器的防火墻系統(tǒng)軟件框架設(shè)計(jì)[J].長沙通信職業(yè)技術(shù)學(xué)院學(xué)報(bào),2012(2):29-33.
[5]趙彥尚.網(wǎng)絡(luò)處理器微引擎的設(shè)計(jì)、驗(yàn)證與實(shí)現(xiàn)[D].西安:西安電子科技大學(xué),2013.
[6]許憲成.基于網(wǎng)絡(luò)處理器的入侵檢測(cè)系統(tǒng)設(shè)計(jì)與性能優(yōu)化研究[D].廣州:華南理工大學(xué),2010.
[7]向軍.網(wǎng)絡(luò)處理器并行線速處理關(guān)鍵技術(shù)研究[D].廣州:華南理工大學(xué),2010.
Design and realization of GTP firewallbased on ENP-2611
LI Jun-feng
(Guang zhou CivilAviation College,Guangzhou,Guangdong,China510403)
An important index of network firewall is the speed of its processing.An implementation is speeding up the firewall by network processors.By using IXP2400 network processorof IntelCompany,we discuss themethod to analyze and filter the GTP protocol in GPRSenvironmentaccording to relevantsecurity policies,and bringout the design and realization of the network firewall system on ENP-2611.
GPRS;GTPprotocol;ENP-2611;firewall
10.3969/j.issn.2095-7661.2016.03.012】
TP393.08
A
2095-7661(2016)03-0042-03
2016-04-27
李俊鳳(1981-),女,河北唐山人,廣州民航職業(yè)技術(shù)學(xué)院講師,碩士,研究方向:信息安全、無線通信。
粵港關(guān)鍵領(lǐng)域重點(diǎn)突破項(xiàng)目“3G智能防火墻”(項(xiàng)目編號(hào):No.2005A10307002)。
湖南郵電職業(yè)技術(shù)學(xué)院學(xué)報(bào)2016年3期