(计算机科学与技术专业论文)基于正则表达式的高速协议识别研究与实现.pdf_第1页
(计算机科学与技术专业论文)基于正则表达式的高速协议识别研究与实现.pdf_第2页
(计算机科学与技术专业论文)基于正则表达式的高速协议识别研究与实现.pdf_第3页
(计算机科学与技术专业论文)基于正则表达式的高速协议识别研究与实现.pdf_第4页
(计算机科学与技术专业论文)基于正则表达式的高速协议识别研究与实现.pdf_第5页
已阅读5页,还剩61页未读 继续免费阅读

(计算机科学与技术专业论文)基于正则表达式的高速协议识别研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

国防科学技术大学研究生院硕士学位论文 摘要 应用层协议识别是研究区分服务、q o s 、入侵检测、流量监控、计费管理以及 用户行为分析的前提和基础。由于新应用的不断出现和网络带宽的飞速发展,传 统的协议识别方法已经不能满足应用要求。论文以高速骨干链路网络协议识别为 目标,在研究了现有协议识别相关技术的基础上,对基于正则表达式的高速协议 识别展开研究,提出一种硬件的解决方案。主要工作如下: 1 以t h o m p s o n 算法及其优化算法为基础,提出一种适用于协议识别的正则 表达式到n f a 的映射方法,利用该方法构造的n f a 中不含空转移,而且 很接近于d f a 。 2 提出了一种基于译码表的字符预处理方法,利用f p g a 的内部存储器构造 译码表,对送往匹配引擎的有效载荷进行预处理,大幅度降低硬件资源占 用。与传统的字符译码器相比增强了译码的灵活性,并且使f p g a 资源分 配更为合理。 3 根据协议模式本身的特点,提出一种结合预译码技术的匹配引擎构造方 法,并对并行化的匹配引擎进行研究,使得匹配引擎在一个时钟周期可以 处理多个输入字符,从而成倍的提升处理速度。 4 以现有开源软件l 7 f i l t e r 的协议库中协议模式为依据,构造单倍速的匹配 引擎实现所有协议模式的匹配,并将使用率较高的典型协议匹配引擎并行 化,大幅度提高协议识别的处理速度,以满足高速骨干链路的性能要求。 5 提出一种基于正则表达式进行高速骨干链路协议识别的硬件实现系统结 构,并考虑将其融入网络安全设备,应用于下一代网络安全体系。 主题词:模式匹配协议识别预译码正则表达式f p g an f a 第i 页 国防科学技术大学研究生院硕士学位论文 a b s t r a c t a p p l i c a t i o n - l a y e rp r o t o c o li d e n t i f i c a t i o ni st h eb a s i so fd i f f e r e n t i a t es e r v i c e ,q o s , i n t r u s i o nd e t e c t i o ns y s t e m ,t r a f f i ca n a l y s i sa n dc o n t r o l ,c h a r g em a n a g e m e n ta n d b e h a v i o ra n a l y s i so fu s e r s b e c a u s en e wp r o t o c o l sa p p e a rc e a s e l e s s l ya n db a n d w i d t h o fn e t w o r kd e v e l o p sf a s t ,t h et r a d i t i o n a lm e t h o d so f p r o t o c o li d e n t i f i c a t i o nf a l ls h o r to f a p p l i c a t i o ny e t s o ,t h i st h e s i sf o c u s e so nt h ep r o t o c o li d e n t i f i c a t i o no ft h ei s p b a c k b o n ew i t hh i 曲s p e e dt r a f f i c ,b a s e do nt h er e s e a r c ho fm a n yp r o t o c o li d e n t i f i c a t i o n m e t h o d s ,t h i st h e s i ss t u d i e so nt h em e t h o do fh i g hs p e e dp r o t o c o li d e n t i f i c a t i o nb a s e d o nr e g u l a re x p r e s s i o n , a n dan e wm e t h o db a s e do nh a r d w a r eh a sb e e np r o p o s e d t h e m a i nc o n t r i b u t i o n so ft h et h e s i sa r ea sf o l l o w s 1 b a s e do nt h o m p s o na l g o r i t h ma n ds o m ei m p r o v e da l g o r i t h m ,an e wm e t h o d w h i c hc a nr e a l i z et h em a p p i n gf r o mr e g u l a re x p r e s s i o nt on f ah a sb e e n p r o p o s e d ,t h en f a b u i l tb yt h i sm e t h o dw i t h o u te p s i l o nt r a n s f e ra n dv e r y c l o s et od f a 2 am e t h o do fb e f o r e h a n dm a n a g ec h a r a c t e rb a s e do nd e c o d et a b l eh a sb e e n p r o p o s e d t h i sm e t h o db u i l d sd e c o d et a b l ew i t hm e m o r yb l o c kt h a ti n s i d eo f f p g a ,t ob e f o r e h a n dm a n a g et h ep a y l o a d st h a ti n p u tt h em a t c h i n ge n g i n e , f r o mw h i c ht or e d u c eh a r d w a r er e s o u r c em a r k e d l y c o m p a r e dt ot h e t r a d i t i o n a lc h a r a c t e re n c o d e r ,t h i sm e t h o dc a nd e c o d ec h a r a c t e rn e a t l y ,a n dc a n d i s t r i b u t eh a r d w a r er e s o u r c eo ff p g ai nr e a s o n 3 a c c o r d i n gt ot h ec h a r a c t e r i s t i co fp r o t o c o l s p a r e m ,am e t h o do fb u i l d m a t c h i n ge n g i n ew h i c hc o m b i n et ot h ep r e - d e c o d e t e c h n o l o g yh a sb e e n p r o p o s e d t h e nas i d e b y s i d em a t c h i n ge n g i n ei sb e e nr e s e a r c h e d ,w h i c hc a n m a n a g em u l t i - c h a r a c t e ri no n ec l o c k ,t h e r e b yc a ni m p r o v et h es p e e do fm a t c h m u l t i p l e 4 a c c o r d i n gt ot h ep r o t o c o lp a a e mo fl 7 - f i l t e r ,b u i l ds i g n a lm a t c h i n ge n g i n ef o r a l lp r o t o c o l s ,a n ds i d e - b y s i d em a t c h i n ge n g i n ef o rs o m et y p i c a lp r o t o c o l s ,t o m e e tt h er e q u i r e m e n to ft h ei s pb a c k b o n ew i t hh i g hs p e e dt r a f f i c 5 ah i g hs p e e dn e t w o r kp r o t o c o li d e n t i f i c a t i o nf r a m e w o r kb a s e do nr e g u l a r e x p r e s s i o nh a sb e e np r o p o s e d a n dc o n s i d e rc o m b i n i n gi ti n t on e t w o r ks a f e t y , a p p l yi nn e x tg e n e r a ln e t w o r ks e c u r i t ys y s t e m k e yw o r d s :p a t t e r nm a t c h i n g ,p r o t o c o li d e n t i f i c a t i o n ,p r e d e c o d e ,r e g u l a r e x p r e s s i o n ,f p g a ,n f a 第i i 页 国防科学技术大学研究生院硕士学位论文 表目录 表1 1 网络应用使用率和用户规模2 表2 1 公认端口与常用协议的对应关系示例1 1 表3 1 正则表达式部分语法规则2 0 表3 2 常用协议的模式及其文字数3 0 表3 3 典型协议逻辑单元占用统计3 8 表4 1b t 协议模式的简化及测试结果5 0 表4 2t r a c e 中各协议报文数统计5 3 第1 i i 页 国防科学技术大学研究生院硕士学位论文 图目录 图1 1 中国网民人数增长情况。1 图1 22 0 0 8 年1 7 月我国网站被篡改情况统计3 图1 3 近几年新增病毒、木马数量对比3 图1 4 下一代网络安全技术体系5 图2 1 报文结构1 0 图3 1t h o m p s o n 构造算法。2 1 图3 2 根据t h o m p s o n 算法构造a * b ( c l d ) e f 的n f a 一2 1 图3 3t h o m p s o n 算法构造n ( a o 】一a n - 1 】 b o 】一b n 1 】 ) 的n f a 2 2 图3 4g x i n g 的n f a 构造方法2 2 图3 5e e n f a 的构造方法2 3 图3 6 根据e e n f a 方法构造a * b ( c l d ) e f 的n f a 。2 3 图3 7f s m 与m p f s m 的关系2 4 图3 8 合成m p f s m 时状态数变化2 4 图3 9n f a 片段到逻辑电路的映射2 5 图3 1 0t e l n e t 协议模式的分布比较器式匹配引擎2 6 图3 1 lt e l n e t 协议模式的共享译码器式匹配引擎2 7 图3 1 2 对t e l n e t 协议文字预处理的译码表。2 8 图3 1 3 为三种协议的输入译码的译码表2 9 图3 1 4 预译码处理后简化的匹配单元3 2 图3 1 5 单报文匹配过程。3 2 图3 1 6 多报文叠加匹配。3 3 图3 1 7 多报文一次性匹配3 4 图3 1 8 四路并行的t e l n e t 匹配引擎。3 6 图3 1 9 表达式a b c d e f 的并行匹配引擎。3 6 图3 2 0 “a b c d e * f g h j k ”的并行匹配引擎3 7 图4 1 协议识别系统框架4 0 图4 2 协议识别工作流程图4 1 图4 3 输入控制模块结构4 2 图4 4 流管理模块结构4 3 图4 5h a s h 表和流表结构4 4 图4 6 协议识别模块结构4 6 图4 7q q 协议匹配引擎的构造4 8 第1 v 页 国防科学技术大学研究生院硕士学位论文 图4 8q q 协议并行匹配引擎结构4 9 图4 9 十种常见协议识别模块资源占用统计5 1 图4 1 0q u a r t u s l i 的时钟分析结果。5 1 图4 1 1 对包含模式的文本验证结果5 2 图4 1 2 对某t r a c e 的验证结果5 2 第v 页 独创性声明 本人声明所呈交的学位论文是我本人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已 经发表和撰写过的研究成果,也不包含为获得国防科学技术大学或其它教育机构的学 位或证书而使用过的材料与我一同工作的同志对本研究所做的任何贡献均已在论文 中作了明确的说明并表示谢意。 学位论文题目:蕉王垂型盎姿塞煎直鎏圭垒这迟型叠塞量塞趣 学位论文作者签名: 盔【盔聋毡 日期:沙孑年f 月, 学位论文版权使用授权书 本人完全了解国防科学技术大学有关保留、使用学位论文的规定本人授权国 防科学技术大学可以保留并向国家有关部门或机构送交论文的复印件和电子文档,允 许论文被查阅和借阅;可以将学位论文的全部或部分内容编入有关数据库进行检索, 可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密学位论文在解密后适用本授权书) 学位论文题目:基王亚则塞姿式煎直逮垃这望剔盈窒皇塞理 学位论文作者签名: 作者指导教师签名: 国防科学技术大学研究生院硕士学位论文 第一章绪论弟一早三百y 匕 随着信息技术的发展,网络逐渐普及到社会生活的各个领域,成为人们生活 离不开的重要工具,给世界经济发展和社会进步带来了前所未有的机遇,经济、 军事以及科教文卫等社会活动都强烈地依赖于网络。但是,由于网络环境的复杂 多变以及信息系统的开放性和脆弱性,人们在享受网络应用方便快捷的同时也面 临着日益严峻的网络与信息安全威胁。为了扬长避短,让网络更好的为社会进步 服务,安全是必须解决的首要问题。 1 1 1 中国网络应用现状 1 1 课题背景 根据c n n i c ( 中国互联网络信息中心) 2 0 0 8 年7 月发布的第2 2 次中国互联 网络发展状况统计报告显示,截至2 0 0 8 年6 月底,中国网民数量达到2 5 3 亿,并 继续呈现快速发展的趋势,网民数量、宽带网民数、国家域名注册量均跃居世界 第一,网络规模获得突破性进展,标志着我国已经步入互联网大国的行列。我国 网民增长情况如图1 1 所示【1 1 。 2 0 0 5 0 6 2 0 0 5 1 22 0 0 6 0 62 0 0 6 1 22 0 0 7 0 6 2 0 0 7 1 22 0 0 8 0 6 w w w c n n i c c n ,2 0 0 8 0 6 ( 抟埔( 图1 1 中国网民人数增长情况 应用方面排名前十位的分别是:网络音乐、网络新闻、即时通信、网络视频、 搜索引擎、电子邮件、网络游戏、博客个人空间、论坛b b s 和网络购物,已 涉及到生活中的方方面面,充分显示了社会生活对网络的高度依赖性。网络应用 情况统计如表1 1 【1 】所示。 第l 页 0 5 0 5 0 5 0 3 2 2 1 1 0 0 国防科学技术大学研究生院硕士学位论文 表1 1 网络应用使用率和用户规模 网络应用比例 用户规模( 万人) 互联网 搜索引擎 6 9 2 1 7 ,5 0 8 电子邮件 6 2 6 1 5 ,8 3 8 基础应用 即时通信 7 7 2 1 9 5 3 6 网络新闻 8 1 5 2 0 。6 2 0 网络媒体拥有博客个人空间 4 2 3 1 0 ,7 0 6 更新博客个人空间 2 8 0 7 ,0 9 2 网络游戏 5 8 3 1 4 ,7 4 6 数字娱乐网络音乐 8 4 5 2 1 3 6 6 网络视频 7 1 0 1 7 ,9 6 3 网络购物 2 5 o 6 。3 2 9 电子商务 网上支付 2 2 5 5 ,6 9 7 论坛b b s 访问 3 8 8 9 ,8 2 2 网络社区 论坛b b s 发帖 2 3 4 5 9 3 1 网上银行 2 3 4 5 9 3 1 网上炒股基金 1 6 9 4 ,2 8 8 其他 网络求职 1 4 9 3 ,7 7 5 网络教育 1 8 5 4 ,6 6 9 1 1 2 网络与信息安全的威胁 网络就像一把双刃剑,在给人们带来方便快捷的同时,也带来了日渐突出的 安全威胁。近年来,木马等计算机恶意程序和病毒趋利性不断增强,“黑客 也 由最初的好奇逐渐演变为受利益的驱使,这些威胁给互联网带来严峻考验。 c n c e r t c c ( 国家计算机网络应急技术处理协调中心) 发布的2 0 0 8 年7 月的我 国网站被篡改情况月度报告显示,2 0 0 8 年7 月,我国大陆地区被篡改网站的数 量为5 5 5 1 个,我国香港被篡改网站数量为4 0 ,我国台湾被篡改网站数量为5 6 个。 2 0 0 8 年1 月到7 月我国网站被篡改情况统计如图1 2 所利2 。 随着网络应用的扩大化,网络安全问题也日益严峻,已经威胁到网络上的每 一个人。金山毒霸反病毒监测中心等联合发布的( ( 2 0 0 8 年上半年中国电脑病毒疫 情及互联网安全报告指出:2 0 0 8 年上半年,电脑病毒、木马的数量依然保持着 高速增长,新老病毒、木马等威胁与安全软件之间的对抗也日益加剧。监测数据 显示,截至6 月3 0 日,2 0 0 8 年上半年,全国共有2 2 3 6 7 9 9 4 台计算机感染病毒, 与0 7 年同期相比增长了1 9 4 。金山毒霸共截获新增病毒、木马1 2 4 2 2 4 4 个,超 过近5 年病毒数量总和,较0 7 年全年病毒、木马数量增长了3 3 8 。近几年新增 第2 页 国防科学技术大学研究生院珂ji j 学值论文 的安全性与可靠性问题的研究已经刻不容缓。 、】1 i 口 - _卜i _ _ 一 r | _ih :i :二:二二 2 l j3 ,4 - 3j j6 1 8 j9 l1 0 圈l22 0 0 8 年i 一7 月我国网站被篡改情况统计 运几点社嚣病毒数鬣弼眈磊怠堇 蓁二譬。备萱_ i_ 00_ _ :。,:b _ 2 一譬譬o 幽13 近几年新增病毒、木马数量对比 网络应用已经融入到人类社会的方方面面,网络的攻防对抗也将会越来越激 烈。面对网络与信息安全的挑战,我们只能不断发展更新更有敛的安全保障技术 从网络的各个层次束对抗这一威胁,使网络更好的成为人类的工具,为社会进步 和经济发展服务。因此,除了每个网络用户对安全问题足够重视以外,还要从安 全基础理论、安全机制、安全技术、安全策略、安全产品等各个方面进行深入细 致的研究1 4 j 。 113 现有安全措施的不足及解决方法 由于网络技术的快速发展,信息安全的内涵也在不断延伸,从最初的信息保密 性发展到信息的完整性、可用性、可控制性和不可否认性,进而义发慢为“攻( 攻 击) 、防( 防范) 、测( 检测) 、控( 控制) 、管( 管理) 、评( 评估) ”等多方面l 的基础理论和 第3 页 l黧m|l;|。 国防科学技术大学研究生院硕十学位论文 实施技术【5 】。经典的网络安全技术的基本特点是从网络安全威胁出发,有针对性地 解决网络安全问题。目前,国际上广泛应用的网络安全技术主流趋势主要有以下 几个方面1 6 1 : 1 防火墙技术:用于内网和外网的隔离; 2 防病毒网关:用来防止来自网络上的病毒; 3 p p p o e d h c p 网关:用于内部网络的管理和安全; 4 v p n :加密通信和虚拟专用网; 5 i d s :入侵检测和主动防御; 6 审计服务器:用于审计和审计数据挖掘; 7 丸蚣:网络的鉴别、授权和管理。 对于网络上海量信息的检测、评估、管理与控制,信息过滤是一个应用广泛 而又有效的监控手段。在个人电脑和企业内容过滤方面,现有的防火墙、v p n 和 i d s 等技术有效地发挥了重大作用,但是,这些技术也只能是保一方平安,从整个 互联网安全角度考虑,必须在主干网上布置一套综合多项安全技术的监控系统, 对流经主干节点的所有数据进行实时监测和分析【7 1 。 但是,相对集中的安全部署策略面临的主要挑战是主干链路的带宽过高,且 相对于c p u 和内存的发展来说,带宽的发展十分迅速。据不完全统计,各种基于 i p 的业务每年呈5 0 - 3 0 0 的速率增长,目前国际上i p 主干网带宽要求每6 - - 一9 个月翻一番,是m o o r e 定律的2 3 倍,目前,4 0 g 网络传输系统正在部署,相信 不久以后中国的主要i s p ( i n t e m e ts e r v i c ep r o v i d e r ,i n t e m e t 服务提供商) 主干链 路将普遍采用4 0 g 设备。可见网络带宽的增长速度远远高于c p u 、内存处理性能 的增长速度。因此,依靠纯软件的处理方式已经难以满足高速网络安全管理的需 求。为了解决网络链路带宽与计算机系统处理性能之间的矛盾,国内外展开了深 入的研究,国外侧重硬件研究,研发了网络处理器、专用c p u 板卡、a s i c 网络 处理硬件等,国内则偏重于研究软件优化技术,通过改善算法提高处理性能。硬 件解决方案虽然投入大、核心技术含量高,但是可以不依赖于计算机系统的处理 性能,能够从根本上解决问题。 1 2 1 下一代网络 1 2 下一代网络安全体系 下一代网络( n e x tg e n e r a t i o nn e t w o r k 简称n g n ) 是一种以软交换、i p v 6 等 为核心,能够同时提供话音、数据、多媒体等多种业务的综合性的、全开放的网 络平台体系。其主要支撑技术有i p v 6 、光纤高速传输技术、光交换与智能光网、 第4 页 国防科学技术大学研究生院硕十学位论文 宽带接入、城域例、软交换、3 g 和超3 g 、i p 终端、网络安全技术等1 8 j 。下一代网 络是未来国家信息基础设施的网络主体,其要素为:安全、可信任,可以保证消 费者的权益,确保国家安全和社会稳定;可持续、良性发展,有良好的可扩展性; 与现有的主流技术可互通、共存、平滑演进;是人人可以参与创新的网络平台。 由于其高度的开放性,在安全方面无疑提出了更高的要求,除了常用的防火墙、 代理服务器、安全过滤、用户证书、授权、访问控制、数据加密、安全审计和故 障恢复等安全技术外,我们还要采取更多的措施来加强网络的安全,实时全面观 察了解整个互联网的情况,加大对传送信息的监管力度。 1 - 2 - 2 下一代网络安全体系 随着网络环境的变化和技术的发展,网络安全威胁形式和手段还在不断变化。 经典网络安全技术以威胁为出发点设计,对于威胁的多样性和不断变化的特性有 明显的局限性。从网络系统业务出发、以管理和监控作为核心手段、经典网络安 全技术为重要补充的网络安全技术和方案成为了最近五六年网络安全技术发展的 主要内容。从网络系统的业务和结构特点出发,以综合增强网络系统的安全性能 为目的是下一代网络安全技术解决网络安全问题的基本思想。下一代网络安全技 术体系包括如图1 4 所示的4 类代表网络下一代安全技术不同思路的基本方法1 9 j 。 图1 4 下一代网络安全技术体系 网络安全设备技术是从网络系统不同环节以专用安全设备和安全系统的形式 解决网络安全问题,泛指以专用设备或专用安全系统形式、提供专门网络安全服 务的网络安全技术;安全网络设备技术则立足在原有的网络技术的基础上,通过 增加提供安全功能的软件和硬件组件,提高网络系统的安全特性、抵御可能的网 络攻击的方法,增强网络设备自身的安全能力;针对性网络安全防范技术则是针 对少数流行且较难防范的安全威胁的专用技术。这三者是经典网络安全技术的直 接延伸,也是下一代网络安全技术的基础。网络安全管理技术将管理的理念直接 应用于网络安全,通过对业务、网络设备、安全设备、威胁、异常现象、缺陷等 与网络安全相关因素的管理,使得网络系统运行在安全、可控的状态中,是下一 代网络安全技术的核心【9 j 。 第5 页 国防科学技术大学研究生院硕十学位论文 1 3 应用层协议识别 应用层协议识别简称协议识别,是一种标识网络上每个流所使用应用层协议 的实用技术,是基于使用类型的流分类的延伸和精化。协议识别对网络管理员、 研究人员以及服务提供商和用户都具有重要的意义,是研究区分服务、q o s 、入侵 检测、流量监控、计费管理以及用户行为分析的前提和基础【lo 】,其主要应用场合 如下【l l j 1 2 1 1 3 】【1 4 】 1 5 】: 1 ) 带宽和计费管理。随着p 2 p ( p e e r - t o p e e r ,对等网络) 业务和应用迅速发展, p 2 p 已经成为i n t e m e t 的主要流量源,有关调查表明,p 2 p 业务已经占据 了互联网业务总量的6 0 - 8 0 。由于p 2 p 应用存在流量大、分布不均 衡、无规律性等特点,在广大用户受益的同时,造成网络带宽的巨大消耗, 使网络极易出现拥塞,降低了其他业务的性能,损害了运营商的利益,因 此,对此类应用进行监测并合理限制网络带宽甚至在有些场合或时间段进 行阻断,或者对不同的业务采用不同的计费方式等成为必然的趋势,这种 应用场合必然要以正确区分应用层协议为前提。 2 ) q o s 。随着网络流量的日益激增,网络q o s 问题愈发重要,不同的业务对 网络q o s 的要求不同,如f t p 应用对带宽要求较大,对时延和抖动不关 心,而像i p 电话等语音数据则对带宽要求不高,而对延迟、抖动、丢包 率等都有较高的要求,这就要求网络设备能够根据业务类型进行不同的 q o s 处理。 3 ) i d s i p s 。i d s i p s ( i n t r u s i o nd e t e c t i o ns y s t e m i n t r u s i o np r e v e n t i o ns y s t e m ) 通常依赖于特定的协议分析程序分析可能存在的攻击行为,例如采用白定 义的规则语言的s n o r t 工具就是根据不同的应用定义不同入侵模式规则, 识别出报文所属的应用层协议以后再选择相应的分析程序来判断是否存 在可能的入侵。 4 ) 防火墙及其他访问控制系统。访问控制系统通常只允许某些应用或授权用 户通过设备,阻塞其他应用或未经授权的用户。在执行过滤之前,需要对 应用进行区分,协议识别是高级访问控制系统的关键功能。 5 ) 用户行为分析。用户行为分析用于对特定用户或特定应用进行监控并根据 内容分析其行为,该类应用通常需要恢复用户数据,然后在应用的基础上 执行内容检测。如即时通讯系统在给广大用户带来方便的同时,也方便了 不良言论和反动内容的传播,在企业内部的广泛适用也带来了生产效率降 低以及技术泄密等问题,为了对内容进行监控和审计,应用识别是必不可 少的前提。 第6 页 国防科学技术大学研究生院硕士学位论文 1 4 课题研究内容 本文工作结合国家科技支撑计划2 0 0 7 x x x x 某网络安全设备的研发需求,在 协议识别应用方面开展研究。本课题研究内容属于网络安全内涵中测、控、管、 评、防以及审计等多方面的范畴,是下一代网络安全技术体系中网络安全设备技 术的基本方法,该设备部署在主干网上,需要解决链路速率过高带来的挑战。本 文通过分析传统协议识别技术及其流程,借鉴其流管理策略和协议识别算法,结 合正则表达式的模式匹配应用,提出基于正则表达式的协议识别硬件实现,提高 处理速度,解决传统识别方法与网络链路速率之间的矛盾。 数据流中的报文首先分离其首部与有效载荷,提取首部中的五元组进行流管 理与区分,待识别的流报文有效载荷送译码模块进行协议识别的预处理以降低资 源占用率,译码结果送匹配引擎进行模式识别处理,为进一步提高效率,可以将 匹配引擎并行处理,匹配引擎返回给流管理区分模块一个匹配标识,从而完成数 据流的应用层协议识别工作。课题的主要工作及创新点如下: 1 ) 以t h o m p s o n 算法及其优化算法为基础,提出一种适用于协议识别的正则 表达式到n f a 的映射方法,利用该方法构造的n f a 中不含空转移,而且 很接近于d f a 。 2 ) 提出了一种基于译码表的字符预处理方法,利用f p g a 的内部存储器构造 译码表,对送往匹配引擎的有效载荷进行预处理,大幅度降低硬件资源占 用。与传统的字符译码器相比增强了译码的灵活性,并且使f p g a 资源分 配更为合理。 3 ) 根据协议模式本身的特点,提出一种结合预译码技术的匹配引擎构造方 法,并对并行化的匹配引擎进行了研究,使得匹配引擎在一个时钟周期可 以处理多个输入字符,从而成倍的提升处理速度。 4 ) 以现有开源软件l 7 f i l t e r 1 6 】的协议库中协议模式为依据,构造n f a 并将 其映射为逻辑电路,构造单倍速的匹配引擎实现所有协议模式的匹配,并 将使用率较高的典型协议匹配引擎并行化,从而大幅度提高协议识别的处 理速度,以满足高速骨干链路的性能要求。 匐。提出一种基于正则表达式进行高速骨干链路应用层协议识别的硬件实现 系统结构,并考虑将其融入网络安全设备,应用于下一代网络安全体系。 本文主要利用尽可能少的硬件资源实现协议识别,在确保识别准确性的前提 下进行加速,使其在高速骨干链路中的线速识别成为可能。 第7 页 国防科学技术大学研究生院硕士学位论文 1 5 论文结构 本文共五章,各章节内容安排如下: 第一章 绪论。重点描述课题的研究背景与意义、协议识别的作用与应用 场合以及论文的主要研究工作、创新点和论文结构。 第二章协议识别相关研究。从报文结构出发,分别从报头和报文体的角 度介绍几种典型的协议识别技术,给出协议识别的评价标准和研 究工作的思路,为提出协议识别系统结构做准备。 第三章协议识别关键技术。从研究工作的思路出发,对实现协议识别系 统的一些关键技术问题作了详细分析,并提出解决方法,主要包 括n f a 的构造方法、n f a 到逻辑电路的映射、字符预译码的作 用和实现方式以及匹配引擎的构造等。 第四章基于正则表达式的协议识别系统实现。首先提出用来验证关键技 术的原型系统,并分别就系统中各关键模块的结构和功能作了详 细描述,主要包括流管理和协议识别模块等;然后以几种典型协 议为例提出协议模式的选取与优化原则并就匹配引擎的构造作 了进一步的说明;最后对协议识别的正确性进行模拟验证,并与 软件方法的结果作分析比较。 第五章总结与展望。对本文工作进行总结以及对一些尚需完善的地方做 一些改进方法的展望。 第8 页 国防科学技术大学研究生院硕士学位论文 第二章协议识别相关研究 协议识别对网络管理员、研究人员以及服务提供商和用户具有重要的意义, 是研究区分服务、q o s 、入侵检测、流量监控、计费管理以及用户行为分析的前提 和基础。然而,随着网络技术和应用的飞速发展,当前的应用层协议识别面临着 两个最严峻的挑战:网络带宽飞速增长和新型应用的不断发展壮大。本章先给出 协议识别技术的评价标准,然后对目前普遍使用的应用层协议识别技术进行研究, 根据评价标准对各种技术进行比较,并据此确定研究方向。 2 1 协议识别评价标准 为了便于比较各种协议识别算法并确定研究方向,本文结合文献 1 7 , - - - 2 0 q b 的 系统评价方法,采用以下评价标准: 1 ) 协议识别系统支持的协议种类:即系统能够识别的应用层协议数量,特别 是传统方法不能胜任的新协议。 2 ) 协议识别的性能:即协议识别系统所能处理的线路带宽。协议识别系统既 可采用在线式处理,也可采用离线式处理。在线式系统的性能评价为在不 丢包情况下所能处理的最大带宽,而离线式处理则根据报文存储空间除以 处理时间得到处理性能。 3 ) 协议识别的正确性:即系统对某应用宣告匹配的协议是否与该应用实际采 用的协议相符,包括漏报( 假阴性) 和误报( 假阳性) 两个方面。若协议 a 的流量没有被识别为协议a 的流量,则引入了假阴性;若非协议a 的 流量被错误识别为协议a 的流量,则引入了假阳性。 4 ) 时空复杂度:即系统在匹配过程中所需要的时间和空间资源。对于软件方 法主要指c p u 和内存占用率,硬件方法则主要指编译及配置时间和硬件 资源占用率。 5 ) 系统更新性能:即系统对协议规则改变的适应能力。它包括两个方面:当 协议规则变化时系统应该能够在尽可能少的修改和重新配置的前提下继 续匹配该协议;当新协议出现或者某协议不再使用时系统应该能够比较方 便的增加或删除规则。 2 2 报文结构 网络出现以后,t c p i p 逐渐成为i n t e r n e t 通信的协议标准。基于t c p i p 协议 的数据是以分组形式在网络上传输的,这个分组就是i p 报文,i p 报文由首部和数 第9 页 国防科学技术大学研究生院硕士学位论文 据区组成,其中首部包含了路由必须的重要信息,而数据区则包含了上层协议的 重要信息和应用层的用户数据,i p 报文结构如图2 1 ( a ) 所示t 2 1 j 。除去i p 报头以后 如果上层数据是基于t c p 或者u d p 协议的,则接下来的数据就是t c p 或者u d p 报文,t c p 以及u d p 报文结构如图2 1 ( b ) 、2 1 ( c ) 所示,通常情况下报头是标准长 度,因此这里没有考虑报头中的选项域,要判断一个数据流属于哪一种应用层协 议,就要从报文的结构入手。i p 首部中的源i p 、目的i p 以及协议类型和t c p 或 者u d p 首部中的源端口、目的端口共同组成了五元组,用来区分不同的流;有些 情况下根据报头中一些相关数据就可以用来识别不同的应用层协议;而基于内容 的应用层协议识别则要通过分析报文体来实现。 ( a ) 版本头标长服务类型总长 标识标志片一扁移 生存时间 协议类型头部校验和 源i p 地址 目的l p 地址 数据 ( c ) 源端口目的端口 序号 确认号 头标长 保留码位窗口 校验和紧急指针 报文体 图2 1 报文结构 2 3 基于报头的应用层协议识别技术 由于报头中包含了报文的重要信息,在有些情况下,仅仅根据报头提供的信 息就可以判断出当前流所属的应用层协议,而且只分析报头实现起来比较简单, 占用资源很少,识别速度也比较快,所以基于报头中相关信息进行协议识别的方 法曾经发挥过很大的作用。 2 3 1 基于端口的协议识别 网络中的主机拥有了合法的i p 地址就可以和网络上别的主机进行通讯,但是 一台主机可以提供很多种服务,比如w e b 浏览、f t p 传输、s m t p 等,这样i p 与应用的关系是一对多的,而这些应用使用不同的端口号进行传输,因此主机可 以通过i p 地址和端口号共同区分不同的服务。为了使网络中的主机实现互联通讯, 必须具有一定的端1 2 i 规范来对特定的服务进行约束,因此,i a n a l 2 2 1 规定了紧密绑 定于一些服务的o 到1 0 2 3 号公认端口( w e l lk n o w np o r t s ) 和松散绑定于一些服务 第1 0 页 国防科学技术大学研究生院硕士学位论文 的1 0 2 4 到4 9 1 5 l 号注册端口( r e g i s t e r e dp o i r t s ) ,它们属于一些特定的服务,通 常这些端口的通信就代表某种服务的协议。例如:2 1 端口属于f t p 服务,2 3 端口 属于t e l n e t 服务等,这样通过检测数据流使用的通信端口就可以判断该流所属的 应用层协议。一些常用协议与端口的对应关系如表2 1 所示。 表2 1 公认端口与常用协议的对应关系示例 端口号协议名 协议说明 2 1 f t p 文件传输协议( f t p ) 端口;有时被文件服务协议( f s p ) 使用 2 2s s h 安全s h e l l ( s s h ) 服务 2 3 t e l n e t t e l n e t ( 远程登录) 服务 2 5s m t p 简单邮件传输协议 5 3 d n s 动态域名解析服务 8 0h t t p 网页浏览服务 有很多软件都是利用端口号来区分协议的,例如由g e r a l dc o m b s 开发的 e t h e r e a l 工具【2 3 1 ,已经支持五百多种协议解析,在协议识别方面大多采用端口识别, 只有少量协议采用内容识别。属于n a i 公司的s n i f f e r 2 4 j ,同样也是采用端口进行 协议识别。基于端口的应用层协议识别只需要分析报头中的端口号一维信息,根 据各个应用层协议在i a n a 中注册的端口号来标识协议,这种算法实现起来非常 简单,所需信息少,时空复杂度和资源占用率也是所有算法中最小的,而且由于 这种算法是基于单个报文的,所以对于能识别的流中每一个报文都可以找到其对 应的协议,可以说是目前发展最成熟的算法。 但是,除了公认端口和注册端口以外,还有一些动态或私有端口( d y n a m i co r p r i v a t ep o r t s ) ,从4 9 1 5 2 到6 5 5 3 5 号,理论上不应为服务分配这些端口。而实际上, 主机通常从1 0 2 4 起分配动态端口,而且网络上常见的服务不是很多,实际上常用 的固定端口才几十个,但计算机端口数有6 5 5 3 6 个,未定的端口占相当大的比例, 很多应用不采用公认端口和注册端口进行通信,一些新应用采用动态分配的端口, 还有一些应用为了躲避封锁或出于其他目的进行端口欺骗,利用不属于它的端口 进行通讯,这样端口和协议之间的关系就不是一一对应的关系,基于端口的算法 就无法进行协议识别了。 2 3 2 基于统计和约束的协议识别 当端口识别越来越无法满足协议识别的需求时,特别是采用动态端口的p 2 p 应用大量涌现,研究工作开始寻求更有效的识别算法。基于统计的协议识别无需 分析报文体,而是通过采集大量数据,采用离线统计的方式,找出各种可能p 2 p 第11 页 国防科学技术大学研究生院硕士学位论文 应用的常用端u ,然后以统计结果作为应用分类的依据对未知流进行识别。比如 韩国的j a m e sw o n - k ih o n g 等人【2 5 】提出的基于传输层特性的p 2 p 流量检测方法。 基于约束( 模型) 的方法根据报文头( 包括i p 头和传输层头) 中的域值,以及报 文大小、报文间隙、t c p 窗口大小、同一i p 结点的端口数量等来统计分析报文所 属的应用。比如杨岳湘【2 6 1 等人提出的基于支持向量机方法以及王锐等人1 2 7 1 在此基 础上进行的优化等。 基于统计和约束的协议识别方法对协议变化适应性强,不需要检测报文内容 而避免了密集计算,并且协议识别准确性受协议加密的影响不大,但是该方法有 以下缺点: 1 ) 只适合于将流量分成较粗的类型,如p 2 p 流量与非p 2 p 流量,不能按照 应用层协议详细区分; 2 ) 统计分析通常需要捕获双向的流量,而同一流上的来回报文并不一定经过 同一链路,从而影响分类结果; 3 ) 由于当前i p v 4 的地址紧张,大量局域网使用内网口互联,并通过共享公 有地址的方式接入互联网,因此,流经这类公有地址的流十分庞大,具有 典型的p 2 p 流量特点,统计分析可能错误地判断该i p 地址是p 2 p 流量的 参与者,会引入大量的假阳性; 4 ) 基于统计与模型的协议识别方法通常需要积累一定的报文,才能开展分 析,而且需要一定的时间来分析和统计流量特点,因此这类方法通常用于 离线分析处理。 2 4 基于内容的应用层协议识别技术 为了弥补前面两种方法的不足,提高识别

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论