[发明专利]基于Tilera多核板卡网络数据包的邮件还原方法在审
申请号: | 201710475114.5 | 申请日: | 2017-06-21 |
公开(公告)号: | CN107204916A | 公开(公告)日: | 2017-09-26 |
发明(设计)人: | 幸娟;张晓峰;高海源;陈伟峰;李斌;王尧;贾朋朋;孙静;刘佳 | 申请(专利权)人: | 天津光电通信技术有限公司 |
主分类号: | H04L12/58 | 分类号: | H04L12/58 |
代理公司: | 天津滨海科纬知识产权代理有限公司12211 | 代理人: | 李成运 |
地址: | 300211*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 tilera 多核 板卡 网络 数据包 邮件 还原 方法 | ||
技术领域
本发明属于电子邮件通讯领域,尤其是涉及一种基于Tilera多核板卡网络数据包的邮件还原方法。
背景技术
目前,对网络数据包进行邮件还原的技术实现上,有通过pfring或libpcap等开源收包库进行网络数据包获取,该两种方式在获取包的效率上由于存在数据到达硬件层面后经过内存多次拷贝造成CPU资源开销负担;也有通过多核处理器来进行收包,但多核的核数较少有达到Tilera产品中100核的指标,设备板卡形态也较少达到Tilera一样可通过PCI-E插槽小巧轻便安装。而邮件还原算法有借助开源库libnids接口也有自己设计实现的。
发明内容
有鉴于此,本发明旨在提出一种基于Tilera多核板卡网络数据包的邮件还原方法,以解决现有的网络数据包邮件还原技术中网络数据包截获性能不足,还原算法运行平台较少达到多核并行的情况。
为达到上述目的,本发明的技术方案是这样实现的:
基于Tilera多核板卡网络数据包的邮件还原方法,包括以下步骤:
S1、邮件还原前需要对开发环境进行部署,包括Tilera多核板卡与机箱硬件的连接,以及软件系统的安装;
S2、开发环境部署后,进行邮件还原,首先基于Tilera多核板卡进行初始化配置,启动使用的硬件资源并调用收包接口进行收包;
S3、将收到的数据包进行TCP流重组模块;
S4、最后根据端口分类进入到不同的邮件还原模块进行邮件还原操作。
进一步的,所述步骤S1中开发环境部署,具体方法如下:
S101、将Tilera多核板卡插入便携式一体机的机箱PCIE插槽上,固定好多核板卡后,将多核板卡的一个或不多于四个光口通过光模块和光纤进行连接,网络数据流通过光纤进入多核板卡的光口形成数据通路;
S102、在电脑上安装centos6.5的liunx操作系统,并且安装Tilera开发环境版本MDE4.3.3;
S103、通过Tilera的登录命令tile-monitor来登录到Tilera板卡内部的liunx系统,在该环境下开发部署邮件还原程序代码。
进一步的,所述步骤S1中,所述开发环境部署后,对串口进行调试时,将多核板卡的串口调试口通过调试线连接到电脑的usb口上,通过tile-console命令登录到串口调试输出端。
进一步的,所述步骤S2中,所述Tilera多核板卡初始化和收包接口的方法,具体如下:
S201、通过接收用户设置参数进行相应配置和初始化硬件资源,给多核板卡进行内存分配;
S202、对TCP流重组模块进行初始化和回调函数注册;
S203、调用mPIPE高速收包接口,peek方式收包进行网络数据包的接入。
进一步的,所述TCP流重组模块的执行方法,具体如下:
S301、nids_next_special_mpipe函数处理收包数据;
S302、注册回调函数指针链表循环调用;
S303、Process_tcp进行TCP重组;
S304、TCP重组完成后进入回调函数进行邮件协议的分类判断,根据端口走入不同的邮件还原模块中。
进一步的,所述步骤S4中邮件还原模块包括pop3邮件还原模块、stmp邮件还原模块、imap邮件还原模块、http邮件还原模块。
进一步的,所述pop3邮件还原模块,具体执行方法如下:
S401、符合pop3邮件协议的特征,进入pop3邮件还原函数入口;
S402、判断是否是客户端数据,如果是则邮件内容获取标志位为1;如果不是则判断协议命令是否为TOP或者RETR,如果协议命令符合则邮件内容获取标志位置为1;
S403、如果内容获取标志位为1,则判断邮件内容结束符;
403、判断邮件内容结束符,如果有则内容存入eml文件,如果没有则缓存邮件内容供下一次接收使用。
进一步的,所述stmp邮件还原模块,具体执行方法如下:
S501、符合stmp邮件协议特征,进入stmp邮件还原函数入口;
S502、判断是否为服务器端数据,如果是则进一步判断邮件内容获取标志位是否为1;如果标志位不为1则判断协议命令是否为data,如果是data命令,则邮件内容获取标志位置为1;
S503、邮件内容获取标志位置为1的邮件,则进一步判断邮件内容结束符;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津光电通信技术有限公司,未经天津光电通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710475114.5/2.html,转载请声明来源钻瓜专利网。