一种基于HASH表和SYN计算的TCP会话重组方法(2)

2.SYN计算方法 (1)Sequence Number 本节将分析TCP头中Sequence Number在TCP数据传输过程中的作用。 初始阶段,TCP连接刚建立时,会为后续TCP数据传输设定一个初始Sequence Number,本文用Init_Seq_NUM表示。每传送

    2.SYN计算方法
    (1)Sequence Number
    本节将分析TCP头中Sequence Number在TCP数据传输过程中的作用。
    初始阶段,TCP连接刚建立时,会为后续TCP数据传输设定一个初始Sequence Number,本文用Init_Seq_NUM表示。每传送一个包含有效数据的TCP包,后续紧接着传送的TCP数据包Sequence Number会作相应的修改,如果前一个TCP包的长度为N字节,则这个包的Sequence Number为前一个包的Sequence Number加N字节。表1描述了这一过程。
    表1:TCP Sequence Number在TCP数据包传输过程中的作用。
    可以看出,Sequence Number是为了保证TCP数据包按序传输来设计的,可以有效地实现TCP数据的完整传送,特别是当数据传输出现错误时可以有效进行错误纠正。
    (2)TCP会话文件写指针SYN计算方法
    基于TCP头中的Sequence Number有一种简单而有效的TCP会话重组数据文件写指针的计算方法,在这里我们称之为SYN计算。本节将对此方法进行介绍。
    在将一个TCP包的数据内容写入到重组数据文件的时候,需要两个参数:数据长度Data Length和文件写指针Write Pointer。数据长度可以很方便地从数据包的IP头中提取,难点是如何计算TCP重组数据文件写指针。根据上文介绍的Sequence Number的作用,可利用这个值来计算写指针。
    ①记录初始Sequence Number,该值可以从携带SYN标记的TCP包中获得。
    ②用当前TCP包中的Sequence Number减去初始Sequence Number,再减去1(因为TCP SYN标记需要占用一个Sequence Number),即可以得到TCP重组数据文件的写指针Write Pointer。
    以上就是用来计算TCP重组数据文件写指针的SYN算法。即:
     ①File_Init_Write_Pointer = Init Sequence Number + 1;
    ②File_Write_Pointer = Current Sequence Number – File_Init_Write_Pointer。
    (3)特例问题
    本节分析用上述SYN算法如何实现有效处理IP数据包乱序到达和TCP数据包重传问题。
    ▲处理IP数据包乱序到达问题
    设正确的IP数据包到达顺序应该是:P1、P2、P3,对应的Sequence Number分别是:SYN1、SYN2、SYN3,有效TCP数据的大小为Len1、Len2、Len3。
    则有:SYN2 = SYN1 + LEN1,SYN3 = SYN2 + LEN2,在数据包按序到达的情况下,我们利用SYN算法可将各个TCP数据包内容正确地写入重组数据文件的对应位置。
    P1:写入从SYN1-File_Init_Write_Pointer位置到SYN1-File_Init_Write_Pointer + LEN1。
    P2:写入从SYN2-File_Init_Write_Pointer,即,SYN1 + LEN1 + - File_Init_Write_Pointer到SYN1 + LEN1 - File_Init_Write_Pointer + LEN2。

(责任编辑:adminadmin2008)

顶一下
(0)
0%
踩一下
(2)
100%
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
图片资讯

企业需要全新方式管理安全风险

企业需要全新方式管理安全风险

如今随着企业的信息化水平不断提高,IT系统的规模在不断的扩大,网络结构也日益复杂,...[详细]

如何搞定Fedora 18上的防火墙配置?

如何搞定Fedora 18上的防火墙配置?

经历了几次跳票之后Fedora 18正式版于2013年1月15日面世,凝聚了许多开发者的心血。很...[详细]

揭穿黑客关于Ashx脚本写aspx木马的方法

揭穿黑客关于Ashx脚本写aspx木马的方法汇总

.Net环境,上传处未限制Ashx和Asmx,后者上传无法运行,提示Asmx脚本只能在本地运行,...[详细]

家用路由器巧用防火墙免攻击

家用路由器巧用防火墙免攻击

随着网络信息安全的需求度提高,个人信息与网络安全逐渐被提上了台面。人们越来越意识...[详细]

Windows安全攻略:教你完全修复系统漏洞

Windows安全攻略:教你完全修复系统漏洞

目前互联网上的病毒集团越来越猖狂,对用户的危害也愈演愈烈,大家要懂得保护自己的电...[详细]