试析p2p流量识别技术的研究与实现

试析p2p流量识别技术的研究与实现

ID:35125578

大小:4.67 MB

页数:58页

时间:2019-03-19

试析p2p流量识别技术的研究与实现_第1页
试析p2p流量识别技术的研究与实现_第2页
试析p2p流量识别技术的研究与实现_第3页
试析p2p流量识别技术的研究与实现_第4页
试析p2p流量识别技术的研究与实现_第5页
资源描述:

《试析p2p流量识别技术的研究与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、重庆邮电大学硕士学位论文P2P流量识别技术的研究与实现姓名:易鹤声申请学位级别:硕士专业:计算机应用技术指导教师:杜江20100529重庆邮电大学硕士学位论文第五章基于NetFilter的P2P流量识别模型的设计与实现主要有以下策略:基于主机的流量控制,当发现某台主机正在进行P2P传输数据时,可以及时对它做出阻断。基于应用协议的流量控制,当发现网络流量是某种P2P协议时,可以阻断此种协议的通行。流量控制模块主要是利用到了iptables的规则,对数据包做出相应动作,一般都是配置规则,在内核空间丢弃需要阻断的数据包。5.3

2、系统的实现本节主要描述主要模块的实现,包括包处理模块,节点跟踪模块,连接管理模块,日志记录模块,协议特征匹配模块,它们的功能分别集中在P2pQueue,P2pNodeManager,P2pConntrack,P2pClassify,DataBaseOpcration类中。另外流量控制采用iptables规则进行加载。5.3.1各子模块的实现(1)包对列处理模块的实现下图为P2pQueue类的定义,如表5.2:P2pQueue类中主要有一个核心函数handJacket,以及两个核心对象p2p_eormection_trac

3、k,node_manager。hand_packet主要是用来处理数据包,此函数会在截获到数据包后,由处理数据包的回调函数调用。p2p_conne圮tion_track是在数据包识别的过程中对P2P连接的管理,node_manager是在数据包识别过程中重庆邮电大学硕士学位论文第五章基于NetFilter的P2P流量识别模型的设计与实现对已识别节点的管理。(2)节点跟踪模块的实现节点管理模块的实现使用了ACE反应器的事件处理机制,它们多是ACEEventHandler的子类,利用触发钩子函数和常用函数,结合Reactor

4、的应用事件处理器来处理事务。作者在反应器上注册了一个定时器事件,当定时的时间到达时,就会触发这个定时器事件,然后事件处理函数进行事件处理。具体的类结构如表5.3:表5.3P2pNodeManager类定义类定义里面有一个核心函数handletimeout,它是继承自ACEEnentHandler的一个虚方法,主要功能是定时删除节点哈希映射表中的节点项,以及核心成员node,它是节点哈希映射表,用来存储已识别的节点,以便后续节点的匹配。(_3m)连ap接管理模块的实现连接管理模块的类定义,如表5.4:·表5.4P2pCon

5、ntraek类定义private:IHash_Mapudp_session_;/*UDP连接哈希映射表./IlHash_Maptep_session__;/*UDP连接哈希映射表吖Imetnfct_eonntraek·ct;lIstructnfct.handle*cth;严连接跟踪句柄吖lI能ACuE_T№hre删ad_M咖utexx枷mu伦te出x_u%dp_;IACE№ad』咖x枷tex:ccp;lDataBa

6、seOperation·data_base_operation_;/*El志操作类指针吖I重庆邮电大学硕士学位论文第五章基于NetFilter的P2P流量识别模型的设计与实现类定义里包含有两个哈希映射表,分别是UDP连接哈希映射表udpsession,和TCP连接哈希映射表tep;连接管理的核心函数为一个全局函数,在.sessions这个全局函数里实现了对连接增加与删除,以及对日志的记录。(4)日志记录模块的实现日志记录模块类的定义,如表5.5:.表5.5日志记录模块类在日志操作模块中,作者开发了一个跨平台的接口动态库,

7、实现数据库的灵活操作,my_datasource数据库源指针,用来提供产生ISDB—Connection的方法,my数据库连接指针,从得到的对象指针,用来表示_connectionISDBDataSourcc一个数据库连接。(5)协议特征匹配模块协议特征匹配模块,里面定义了协议特征容器,以及协议匹配函数,函数的实现以Linux下提供的正则表达式为基础实现的。在这里作者使用的是linux自带的正则表达式库函数实现,具体过程如下:·使用函数regcomp编译正则表达式,把编译的结果保存到一个regex_t数据结构中。·使用函

8、数regexee匹配正则表达,使用完毕后释放正则表达式。重庆邮电大学硕士学位论文第五章基于NetFilter的P2P流量识别模型的设计与实现被匹配,如果已匹配,返回,如果没有匹配,转(4)。(4)检查连接的已匹配包数是否等于l,如果是,检查连接的两个端点是否有任意一个存在于节点跟踪表中。如果存在于节点跟踪表,则为连接

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。