[发明专利]一种基于tcp重组的imap邮件还原方法有效
申请号: | 202011386770.6 | 申请日: | 2020-12-02 |
公开(公告)号: | CN112468389B | 公开(公告)日: | 2022-04-15 |
发明(设计)人: | 刘琛琛;王东锋;贾伟涛;幸娟;范雪媛;余婷婷 | 申请(专利权)人: | 天津光电通信技术有限公司 |
主分类号: | H04L51/42 | 分类号: | H04L51/42;H04L69/16;H04L69/22 |
代理公司: | 天津中环专利商标代理有限公司 12105 | 代理人: | 王凤英 |
地址: | 300221*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 tcp 重组 imap 邮件 还原 方法 | ||
本发明公开了一种基于tcp重组的imap邮件还原方法,该方法结合imap邮件协议中的特点及tcp重组的枚举情况进行了方案设计,采用开发平台为操作系统centos7.4的linux平台进行imap邮件还原处理,成功实现分邮件最大还原邮件素材,该方法通过枚举tcp通信的可能情况,实现了数据帧数据可能情况的全覆盖,该方法支持实时发送邮件过程中的邮件还原和读取存储数据包进行邮件素材还原两种方式,可以实现对邮件的分邮件存储还原,同时tcp重组还原模块可以应用到其他tcp/ip通信的邮件通信还原中。
技术领域
本发明涉及数据处理领域,特别涉及一种tcp重组的imap邮件还原方法。
背景技术
imap邮件协议解析传输层采用tcp方式进行数据传输,tcp传输过程中涉及到tcp分包和tcp重组,在传输过程中存在丢包,报文到达顺序不一致的问题,因此在邮件内容数据包传输过程中,数据包顺序不一致会导致编码数据不连续导致解析错误,同时丢包重传数据包的到达顺序会出现晚于邮件结束帧的情况,需要在分邮件解析中进行识别。imap邮件支持多个命令同时进行,同时支持同一命令传送多封邮件,通过分邮件标识符来进行划分。
imap协议通信过程中的主要特点为支持多个命令同时进行,在通信过程中需要识别不同的命令,服务器端根据不同的命令进行相应的响应。多义命令指的是有歧义的,不只存在一个返回结果的命令。在多命令可同时进行的条件下,客户端会在一个命令响应还未接收完毕时就发送另一个命令,因为命令之间并不是完全独立的,一个命令的执行会对其他命令的执行结果产生影响。这时候如果命令是一个多义的命令,则在其响应未到达客户端前,客户端发送其他命令会导致执行结果存在异常。所以要求客户端必须在一个多义命令的结果成功到达之后,才可以继续发送下一个命令。例如发送UID命令获取内容,在该UID内容获取完毕之前不可再发送其他的UID命令,否则无法区分响应是对应哪个UID的命令。
发明内容
鉴于现有技术的现状和存在的问题,本发明提出一种tcp重组的imap邮件还原方法,本方法通过研究imap邮件协议的细节,结合数据测试结果和tcp重组的原理,对新到来的数据帧对应的sequence和next sequence序号可能存在的情况进行枚举,成功实现对可能情况的全覆盖,同时结合tcp重组过程中数据帧到达顺序不一致的特点,更改停止邮件存储的条件,将解析的数据包成功对应到对应邮件的存储,实现邮件内容的最大还原,通过测试验证,结果和wireshark跟踪tcp数据流的结果基本一致。
本发明采取的技术方案是:一种基于tcp重组的imap邮件还原方法,其特征在于,所述方法采用开发平台为操作系统centos7.4的linux平台进行imap邮件还原处理,还原处理流程执行以下操作:
步骤一、首先判断通信端口是否为143端口,若通信端口为143端口,则进行步骤二;若通信端口不为143端口,程序结束。
步骤二、进行指令识别,设置指令标志位。
步骤三、判断是否包括邮件标识符及命令标识符,若包括邮件标识符及命令标识符,则进行步骤四;若不包括邮件标识符及命令标识符,则进行步骤十一。
步骤四、判断邮件头标志位是否为0,若邮件头标志位为0,则进行步骤五;若邮件头标志位不为0,则进行步骤八。
步骤五、判断当前文件描述符是否不为空,若判断不为空成立,即执行步骤六后再执行步骤七,否则直接执行步骤七。
步骤六、关闭当前邮件存储文件,更新下一个打开文件名称。
步骤七、打开邮件,进行邮件相关内容的存储,然后进行步骤八。
步骤八、更新标识符标签及结束标识符,之后进行步骤九。
步骤九、判断是否包括邮件头标识符,若包括邮件头标识符,则进行步骤十;若不包括邮件头标识符,则程序直接结束。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津光电通信技术有限公司,未经天津光电通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011386770.6/2.html,转载请声明来源钻瓜专利网。