用于在网络传输协议中传送确认的设备和方法技术

技术编号:36900071 阅读:57 留言:0更新日期:2023-03-18 09:20
本发明专利技术涉及用于确保通信网络中数据可靠性的协议。为此,本发明专利技术提出了一种第一网络设备,用于:获取参数K,其中,K为正整数;从第二网络设备接收数据包序列;当在序列号为j的数据包之前接收到序列号i的数据包时,确定所述序列号为j的数据包丢失,其中,i和j为正整数,i>j+K;当确定所述序列号为j的数据包丢失时,向所述第二网络设备发送主动状态消息。此外,本发明专利技术还提出了一种第二网络设备,用于:向第一网络设备发送数据包序列;向所述第一网络设备发送第一轮询消息。送第一轮询消息。送第一轮询消息。

【技术实现步骤摘要】
【国外来华专利技术】用于在网络传输协议中传送确认的设备和方法


[0001]本专利技术涉及通信网络,尤其涉及通信网络中数据传输的数据可靠性。本专利技术提出了一种用于请求和传送确认信息的设备和方法,尤其适用于数据的乱序发送。

技术介绍

[0002]在数据网络中,当两台计算机相互通信时,通常需要确保数据可靠性。为此,发送器为每个数据包添加序列号,接收器通知发送器哪些数据包已经接收,哪些数据包丢失。发送器必须重传丢失数据包,直到接收器接收到所有数据包。
[0003]确保数据可靠性的协议可分为三大类:停止等待(Stop

and

Wait)协议、回退N(go

back

N)协议和选择性重复(Selective

Repeat)协议。
[0004]在停止等待协议中,发送器发送数据包并等待数据包的确认(acknowledgement,ACK)。一旦ACK到达发送器,发送器就会传输下一个数据包。如果没有接收到ACK,发送器将再次重传上一个数据包。
[0005]在回退N协议中,接收到所有数据包直至数据包编号N的接收器愿意只接受数据包编号N+1。如果没有接收到数据包N+1,但接收到了序列号较大(例如N+2)的数据包,则接收器丢弃此乱序数据包。当发送器被告知数据包N+1丢失时,发送器知道不仅必须重传此数据包,还必须重传所有后续数据包。停止等待协议实际上是回退N协议的一个特例,其中,N=1。
[0006]在选择性重复协议中,接收器愿意接受乱序接收的数据包。接收器将这些数据包放置在重新排序缓冲区中。然后,接收器只通知发送器丢失数据包,发送器只重传丢失数据包。
[0007]但是,现有的技术方案只适用于点对点的层2网络,在这种网络中,延迟是恒定的,数据包按顺序发送。

技术实现思路

[0008]鉴于上述限制,本专利技术的实施例旨在引入现有协议的扩展版本,以确保数据可靠性,特别是在数据包被乱序接收的情况下。具体地,目的是为网络传输协议提供乱序容许。
[0009]通过所附独立权利要求中提供的实施例实现该目的。实施例的有利实现方式在从属权利要求中进一步定义。
[0010]本专利技术在两个主要方面做出了贡献。具体地,本专利技术的实施例提出了用于发送轮询消息的动态方法。此外,本专利技术的实施例还提出了用于发送状态消息的动态方法。
[0011]本专利技术第一方面提供了一种第一网络设备,用于:获取参数K,其中,K为正整数;从第二网络设备接收数据包序列;当在序列号为j的数据包之前接收到序列号为i的数据包时,确定所述序列号为j的数据包丢失,其中,i和j为正整数,i>j+K;当确定所述序列号为j的数据包丢失时,向所述第二网络设备发送主动状态消息。
[0012]所述第一网络设备(接收器)通过根据参数K决定传输主动状态消息,启用乱序容
许,即接收乱序数据包的容许。具体地,参数K可以表示乱序容许距离(数据包之间)。即,数据包可以乱序接收,例如,在接收到序列号为2的数据包之后,可以接收序列号为1的数据包。为了确定数据包j是否真的丢失,所述第一网络设备将等待直到接收到数据包j+K+1。
[0013]在所述第一方面的一种实现方式中,所述第一网络设备用于:从所述第二网络设备接收第一轮询消息,其中,所述第一轮询消息包括所述参数K和正整数M,M为所述数据包序列中的最大序列号,所述第一轮询消息指示所述第一网络设备上报序列号为M

K的数据包之前的丢失数据包;响应于所述第一轮询消息,向所述第二网络设备发送第一状态消息,其中,所述第一状态消息指示在所述序列号为M

K的数据包之前发送的哪些数据包在所述第一网络设备丢失。
[0014]传统上,所述发送器将所述数据包序列中的最大序列号M添加到轮询消息中,以请求接收器上报序列号M之前的丢失数据包。为了容许乱序距离K,本专利技术的实现方式建议将M的值和所述参数K添加到所述轮询消息中,而不是M的值。响应于所述轮询消息,所述第一网络设备(接收器)可以上报序列号M

K之前的丢失数据包。
[0015]在所述第一方面的一种实现方式中,所述第一网络设备用于:从所述第二网络设备接收第二轮询消息,其中,所述第二轮询消息包括正整数M,M为所述数据包序列中的最大序列号,所述第二轮询消息指示所述第一网络设备上报序列号为M的数据包之前的丢失数据包;响应于所述第二轮询消息,在接收到另外K个数据包之后,向所述第二网络设备发送第二状态消息,其中,所述第二状态消息指示在所述序列号为M的数据包之前发送的哪些数据包在所述第一网络设备丢失。
[0016]可选地,上述考虑乱序距离K的实现方式也可以在所述接收端实现。具体地,所述轮询消息可以以传统的方式发送,即可以在所述轮询消息中指示所述数据包序列中的最大序列号M。所述第一网络设备在接收到所述轮询消息后不立即上报所述丢失数据包。所述第一网络设备可以上报所述丢失数据包,直到接收到另外K个数据包。这样,即使所述数据包序列中的最后一个数据包被乱序接收,但在所述乱序距离K内,它仍然可以在所述状态消息中上报。
[0017]在所述第一方面的一种实现方式中,所述第一轮询消息或所述第二轮询消息包括序列号s,其中,s为正整数,所述第一网络设备还用于:从所述第二网络设备接收第三轮询消息;如果所述第三轮询消息的序列号小于s,则忽略所述第三轮询消息。
[0018]理论上,可以乱序接收两个轮询消息。可选地,如果在序列号较大的轮询消息之后接收到序列号较小的轮询消息,则所述第一网络设备可以忽略后来接收到的轮询消息,例如,可以不响应状态消息。
[0019]在所述第一方面的一种实现方式中,所述参数K是在所述第一网络设备与所述第二网络设备建立连接时协商的。
[0020]可选地,所述参数K可以在连接建立时协商。例如,K可以在所述第一网络设备和所述第二网络设备之间的连接建立过程中协商。或者,所述参数K也可以在所述第一网络设备/所述第二网络设备与网络控制器等另一网络设备建立连接时协商。
[0021]在所述第一方面的一种实现方式中,所述参数K为静态参数,或者为动态参数。
[0022]需要说明的是,所述参数K可以是固定的数字。或者,所述参数K可以是动态更新的数字,该数字可以在变化时通知所述发送器和所述接收器。
[0023]在所述第一方面的一种实现方式中,所述第一网络设备用于获取更新后的参数K,并将所述更新后的参数K指示给所述第二网络设备。
[0024]在所述第一方面的一种实现方式中,所述第一网络设备用于从网络控制器获取所述参数K。
[0025]可选地,所述参数K可以由所述网络控制器传递给所述发送器和所述接收器。
[0026]本专利技术的第二方面提供了一种第二网络设备,用于:获取参数K,其中,K为正整数;向第一网络设备发送数据包序列;向所述第一网络设备发送第一轮询消息,其中,所述第一轮询消息包括参数K和正整数本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种第一网络设备(800),其特征在于,用于:获取参数K(801),其中,K为正整数;从第二网络设备(900)接收数据包序列(802);当在序列号为j的数据包之前接收到序列号为i的数据包时,确定所述序列号为j的数据包丢失,其中,i和j为正整数,i>j+K;当确定所述序列号为j的数据包丢失时,向所述第二网络设备(900)发送主动状态消息(803)。2.根据权利要求1所述的第一网络设备(800),其特征在于,还用于:从所述第二网络设备(900)接收第一轮询消息,其中,所述第一轮询消息包括所述参数K(801)和正整数M,M为所述数据包序列中的最大序列号,所述第一轮询消息指示所述第一网络设备上报序列号为M

K的数据包之前的丢失数据包;响应于所述第一轮询消息,向所述第二网络设备(900)发送第一状态消息,其中,所述第一状态消息指示在所述序列号为M

K的数据包之前发送的哪些数据包在所述第一网络设备(800)丢失。3.根据权利要求1所述的第一网络设备(800),其特征在于,还用于:从所述第二网络设备(900)接收第二轮询消息,其中,所述第二轮询消息包括正整数M,M为所述数据包序列中的最大序列号,所述第二轮询消息指示所述第一网络设备(800)上报序列号为M的数据包之前的丢失数据包;响应于所述第二轮询消息,在接收到另外K个数据包之后,向所述第二网络设备(900)发送第二状态消息,其中,所述第二状态消息指示在所述序列号为M的数据包之前发送的哪些数据包在所述第一网络设备(800)丢失。4.根据权利要求2或3所述的第一网络设备(800),其特征在于,所述第一轮询消息或所述第二轮询消息包括序列号s,其中,s为正整数,所述第一网络设备(800)还用于:从所述第二网络设备(900)接收第三轮询消息;如果所述第三轮询消息的序列号小于s,则忽略所述第三轮询消息。5.根据权利要求1至4中任一项所述的第一网络设备(800),其特征在于,K是在所述第一网络设备(800)和所述第二网络设备(800)之间建立连接时协商的。6.根据权利要求1至5中任一项所述的第一网络设备(800),其特征在于,K为静态参数或为动态参数。7.根据权利要求1至6中任一项所述的第一网络设备(800),其特征在于,还用于:获取更新后的参数K,并将所述更新后的参数K指示给所述第二网络设备(900)。8.根据权利要求1至7中任一项所述的第一网络设备(800),其特征在于,还用于:从网络控制器获取所述参数K(801)。9.一种第二网络设备(900),其特征在于,用于:获取参数K(801),其中,K为正整数;向第一网络设备(800)发送数据包序列(802);向所述第一网络设备(800)发送第一轮询消息(901),其中,所述第一轮询消息(901)包括参数K(801)和正整数M,M是所述数据包序列(802)中的最大序列号,所述第一轮询消息(901)指示所述第一网络设备(800)上报序列号为M

K的数据包之前的丢失数据包;
响应于所述第一轮询消息(901),从所述第一网络设备(800)接收第一状态消息(902),其中,所述第一状态消息(902)指示...

【专利技术属性】
技术研发人员:鲁文
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1