一种含噪TCP会话流初始序列号估计方法及相关设备

文档序号:39618282发布日期:2024-10-11 13:33阅读:8来源:国知局
一种含噪TCP会话流初始序列号估计方法及相关设备

本发明涉及tcp/ip网络协议和纠错,尤其涉及一种含噪tcp会话流初始序列号估计方法及相关设备。


背景技术:

1、在深空通信、战场通信中,高误码严重影响通信性能。传统的前向纠错(fec)、自动请求重传(arq)存在局限。这是因为,误码率较高时,fec的纠错能力急剧下降。常见的信道码在信道误比特率低于10-3时可以正常工作,但是信道误比特率高于此,信道码几乎无纠错能力。arq技术则需要通信场景中存在反馈信道,这限制了该类方法的应用。

2、香农信息论指出,利用冗余信息可以对数据纠错,提高传输可靠性。已有文献(如文献1“upadhyaya p,jiang a a.representation-oblivious error correction bynatural redundancy[c]//icc 2019-2019ieee international conference oncommunications(icc).ieee,2019”;文献2“upadhyaya p,jiang a.machine learning forerror correction with natural redundancy[j].2019.doi:10.48550/arxiv.1910.07420”)系统地提出“自然冗余”的概念。“自然冗余”是与“人工冗余”相对的。人工冗余是指,为了提高传输可靠性而在数据中加入的冗余。典型的人工冗余是信道编码。例如,(1296,1080)系统ldpc码中,每1080位信息比特增加216比特校验位,构成长度为1296的信道码;接收端可利用校验位对信息位纠错,从而提高数据的可靠性。“自然冗余”是指并非为提高传输可靠性而出现在数据中冗余。上述文献中,针对文件存储的场合,指出压缩数据中存在冗余。这主要由两个原因造成,一是完美的压缩算法计算复杂度过高,实际中倾向于使用复杂度低、但是压缩效果低于理想情况的算法;二是语音图像等数据,其数据模型本身十分复杂,难以设计最优压缩算法。因此,已有文献研究利用信源数据中残留的冗余对噪声污染的数据纠错。

3、以tcp/ip为代表的网络协议是网络化传输中主流的协议标准。它采用分层的设计方法,即,让两个通信实体的“对等层”之间可以通信。在分层设计下,报文控制字段中存在冗余。如:同一会话流、同一方向上所有分组具有相同的源和目的ip;传输层协议号字段,占据一个字节,但是实际上大概率取6和17(分别表示该报文传输层采用tcp协议和udp协议)。研究如何挖掘和利用网络协议的冗余,对报头关键字段进行纠错,是很有价值的。这是由于,相对于数据字段,报头对还原、重建用户数据更为关键。报头字段出错可能导致会话无法还原。而数据字段出错、甚至丢失,对很多场合并不是致命的。例如,音频和视频数据中,部分错误对文件没有显著影响。

4、tcp协议中,用户数据被封装为若干个报文,以发送序列号标记报文的先后次序,接收端根据序列号从小到大的顺序对报文排序,从而还原用户数据。序列号字段,对重组会话流、还原用户数据有着至关重要的作用,序列号字段出错时,即使该报文大部分都是正确的,这个报文也会被丢弃。图1给出了不同信道误比特率下,“发邮件”的会话流中,序列号字段出错时的会话重组和报文还原结果。注意,为了突出显示“序列号”字段错误对还原用户数据的重要作用,这里仅假设序列号字段出错、报文的其他部分不出错。图1中,(a)是误比特率为0时还原的邮件,(b)是误比特率为1e-3时还原的邮件,此时,序列号错误导致部分报文被丢弃,还原出来的邮件体残损;(c)是误比特率为1e-2时的情形,报文错误过多,无法还原邮件。

5、研究高误比特率条件下会话流重组,关键是对含错报文序列号的纠错。文献(陈越新,郑辉,赵艳秋,等.基于序列号的一种数据包容错排序算法[j].武汉理工大学学报,2009(24):4.doi:cnki:sun:whgy.0.2009-24-030.)研究了该问题。建立了容错排序模型,推导了“顺序统计量”,设计了容错的排序算法。该文献中通过实验(本发明不再赘述)给出了该算法和不做容错处理时的正确率。从实验结果看到,在误比特率处于1e-5到1e-3范围内,会话流包含100个报文时,该算法的错误率为0;会话流包含10个报文时,该算法的错误率为0。但是,当误比特率再增加,取5e-2时,会话流包含100个报文时错误率是0.118。会话流包含10个报文的性能也没有测试。更高的误比特率也没有测试结果。事实上,该文献的方法未能充分挖掘利用会话流中发送序列号和报文长度的关系,在高误比特率条件下性能比较差,还不足以支撑会话流重建。


技术实现思路

1、为了在高误比特率条件下也能够实现会话流的重建,本发明提供一种含噪tcp会话流初始序列号估计方法及相关设备。

2、第一方面,本发明提供一种含噪tcp会话流初始序列号估计方法,包括:

3、步骤1:接收目标会话流的n个报文的含噪序列号y={y1,y2,…,yn},yi表示第i个报文的含噪序列号,i=1,…,n;

4、步骤2:利用yi(1),i=1,…,n,计算初始序列号第一位的最大似然估计,yi(1)表示yi的第1位的取值;

5、步骤3:利用yi(k),i=1,…,n,k=2,…seqlen,计算初始序列号第2位至第seqlen位的最大似然估计;其中,seqlen是初始序列号的二进制表示的总比特数,yi(k)表示yi的第k位的取值。

6、进一步地,步骤2具体包括:

7、获取yi(1),i=1,…,n;

8、令o1(1)=y1(1),按照下式确定o2(1),…,on(1),i=2,…,n;

9、

10、其中,表示对yi(1)取反,即,若yi(1)=1,则若yi(1)=0,则li表示n个报文构成的报文序列中,第i个报文之前的报文长度之和,即其中,lj是当前报文序列中第j个报文的长度;根据tcp协议规范,存在si=s1+li,i=2,…n;其中si表示第i个报文的序列号,表示li的第k位;

11、以表示待估计的初始序列号的第1位的取值;

12、若满足则判决为否则,

13、进一步地,步骤2还包括:

14、令表示在计算si=s1+li时,从第k-1位向第k位的进位的取值;

15、第1位向第2位进位的取值的计算公式为

16、

17、进一步地,步骤3中,按照预设过程计算得到初始序列号第k位的最大似然估计,k=2,…,seqlen,所述预设过程具体包括:

18、获取yi(k),i=1,…,n;

19、令o1(k)=y1(k),按照下式确定o2(k),…,on(k),i=2,…,n;

20、

21、若满足则判决为否则,其中,si(k)的估计;

22、并按照下式确定从第k位向第k+1位的进位的取值

23、

24、第二方面,本发明提供一种含噪tcp会话流初始序列号估计装置,包括:

25、接收模块,用于接收目标会话流的n个报文的含噪序列号y={y1,y2,…,yn};yi表示第i个报文的含噪序列号,i=1,…,n;

26、第一估计模块,用于利用yi(1),i=1,…,n,计算初始序列号第一位的最大似然估计;yi(1)表示yi的第1位的取值;

27、第二估计模块,用于利用yi(k),i=1,…,n,k=2,…seqlen,计算初始序列号第2位至第seqlen位的最大似然估计;其中,seqlen是初始序列号字段的二进制表示的总比特数,yi(k)表示yi的第k位的取值。

28、第三方面,本发明提供一种电子设备,包括存储器和处理器,所述存储器存储可被处理器执行的程序代码,所述处理器执行所述程序代码时实现如第一方面所述的一种含噪tcp会话流初始序列号估计方法。

29、第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的一种含噪tcp会话流初始序列号估计方法。

30、本发明的有益效果:

31、本发明提供的一种含噪tcp会话流初始序列号估计方法及相关设备,通过利用tcp协议中同一会话流的报文发送序列号与报文长度的约束关系,把n个报文中含噪的序列号字段si,i=1,2,…,n,作为初始序列号s1的n次独立观测,逐比特地对初始序列号进行迭代估计。相比于已有方法,该方法可以工作在误比特率为1e-1、5e-2、1e-2等高误比特率环境下,大大提升初始序列号估计正确率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1