CN103647625A - 一种基于链路的数据可靠传输方法 - Google Patents

一种基于链路的数据可靠传输方法 Download PDF

Info

Publication number
CN103647625A
CN103647625A CN201310584995.6A CN201310584995A CN103647625A CN 103647625 A CN103647625 A CN 103647625A CN 201310584995 A CN201310584995 A CN 201310584995A CN 103647625 A CN103647625 A CN 103647625A
Authority
CN
China
Prior art keywords
recipient
transmit leg
packet
information
acknowledge message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201310584995.6A
Other languages
English (en)
Other versions
CN103647625B (zh
Inventor
江国龙
胡农达
付斌章
陈明宇
张立新
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHANGHAI ZUOANXINHUI ELECTRONIC TECHNOLOGY CO LTD
Original Assignee
Institute of Computing Technology of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN201310584995.6A priority Critical patent/CN103647625B/zh
Publication of CN103647625A publication Critical patent/CN103647625A/zh
Application granted granted Critical
Publication of CN103647625B publication Critical patent/CN103647625B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Detection And Prevention Of Errors In Transmission (AREA)
  • Communication Control (AREA)

Abstract

一种基于链路的数据可靠传输方法,包括如下步骤:主动请求和应答,发送方发送请求消息并接受接收方的初始确认消息,该初始确认消息包括初始的数据包信息和接收方的初始信誉信息;数据正确传输与确认,当接收方收到所述发送方继续发送的请求消息时,回复确认消息,所述确认消息中包括数据接收的确认信息和此时所述接收方的信誉信息,发送方根据收到的该确认消息释放已确认的数据包缓存,并对应更新该发送方的信誉信息;数据错误传输下的重传,当接收方发现所述数据传输错误或丢包时,回复重传确认消息,所述重传确认消息包括重传标志位置位信息,发送方收到该重传确认消息后,从该重传标志位置位开始重传数据包。

Description

一种基于链路的数据可靠传输方法
技术领域
本发明涉及网络交换机数据传输领域,特别是一种用于网络交换机的基于链路的数据可靠传输方法。
背景技术
当前网络环境中,大多数的应用间通信,都需要保证数据的可靠传输,即需要保证数据传输的可靠性。目前数据的可靠传输主要基于端到端来实现,比如TCP协议中实现的源和目的之间的端到端可靠传输方法。但是,在这种端到端的方法中,为了恢复出错数据,需要从源端重传数据。这一方面增加了网络流量,增大了源和目的节点间的传输延迟,另一方面,也会导致数据包乱序,从而严重影响应用性能。为了解决上述的端到端可靠传输存在的问题,可以将这种可靠传输的保证实现在每条链路上。与端到端的方法不同,基于链路的可靠传输方法,通过保证每跳链路的可靠传输来实现整体的可靠。在该方法中,数据出错时,仅通过单跳链路重传即可恢复。它的开销小,并且可以避免端到端方法中存在的问题。关于在链路上数据的可靠传输,现有技术主要有两方面的实现方法。第一就是采用流控技术,主要包括基于credit-base流控,on/off流控以及ack/nack的流控,通过这些流控技术,可以保证数据包在链路的接收方不会因为缓存满而溢出。另一种方法就是差错控制技术,主要有Automatic repeat request(ARQ)和Forward error correction(FEC),通过差错控制技术,可以解决数据包在传输过程中产生的丢包和坏包问题。
但是链路数据的传输本身又是不可靠的,这主要有以下两方面的原因:
(1)数据接收方的缓存大小有限,接收方缓存会发生溢出,产生丢包;
(2)数据包在链路的传输过程中可能会出错,产生坏包或引起丢包;
现有的链路协议仅可以解决以上原因中的某一个方面,比如:采用流控技术可以防止因接收区缓存溢出而产生丢包;自动重传请求(ARQ)可以恢复传输中出错的数据。但是没有单个协议可以同时解决这两个问题。即现有的流控技术能够防止因接收方缓存溢出而产生的丢包,但是不能纠正数据的传输错误。而差错控制技术中,ARQ技术能够通过重传来恢复出错的数据,FEC能够直接纠正部分错误数据,但是它们都不能防止因缓存区溢出而丢包。
例如,申请号为“201110036866.4”,名称为“解决小包线速的credit调度方法、调度装置及旁路器”的中国发明专利公开了一种解决小包线速的credit调度方法,该方法包括:接收队列号和进入所述队列号对应队列的数据包的包长值;将该包长值增加到该队列号对应的队列的长度值上,获得更新后的队列长度值;判断所述队列更新后的队列长度值与所述队列当前的令牌credit的差值是否大于零,如是,申请调度,否则不申请调度;当不申请调度时为所述队列分配不超过所述更新后的队列长度值的credit;使所述更新后的队列长度值和所述当前的credit均减去已为所述队列分配的credit。本发明避免了调度器为具有剩余credit的队列给予不必要的调度而造成的调度器空转的情形,有利于在小包场景中使出口达到线速;并节省credit调度器的带宽资源,使得调度更加合理和高效。但该方法仍然无法解决现有技术中存在的上述问题。
发明内容
本发明所要解决的技术问题是提供一种基于链路的数据可靠传输方法,可以同时解决现有技术的上述问题,从而保证数据的可靠传输。
为了实现上述目的,本发明提供了一种基于链路的数据可靠传输方法,其中,包括如下步骤:
S100、主动请求和应答,发送方发送请求消息并接受接收方的初始确认消息,该初始确认消息包括初始的数据包信息和接收方的初始信誉信息;
S200、数据正确传输与确认,当接收方收到所述发送方继续发送的请求消息时,回复确认消息,所述确认消息中包括数据接收的确认信息和此时所述接收方的信誉信息,发送方根据收到的该确认消息释放已确认的数据包缓存,并对应更新该发送方的信誉信息;
S300、数据错误传输下的重传,当接收方发现所述数据传输错误或丢包时,回复重传确认消息,所述重传确认消息包括重传标志位置位信息,发送方收到该重传确认消息后,从该重传标志位置位开始重传数据包。
上述的数据可靠传输方法,其中,还包括:
S400、接收方缓存变化时的确认,进一步包括:
S401、接收方每有M个数据包离开缓存,向发送方发送缓存变化确认消息,该缓存变化确认消息中的信誉信息为该接收方对应该缓存变化后的信誉信息;
S402、发送方接收到该缓存变化确认消息后,释放已确认的数据包缓存,并将该发送方的信誉信息对应更新为该缓存变化确认消息中的信誉信息。
上述的数据可靠传输方法,其中,还包括:
S500、确认超时情况下的主动请求,当发送方发出的数据包在指定时间内得不到确认,或信誉信息在不满的情况下在指定时间内得不到更新,则发送方重新发送数据。
上述的数据可靠传输方法,其中,所述步骤S500进一步包括:
S501、发送方发送请求消息;
S502、接收方收到该请求消息后,应答包含数据接收的确认信息和此时所述接收方的信誉信息的确认消息;
S503、发送方收到该确认消息后,比较本地数据包的顺序号和收到的数据包的顺序号来确定是否重传数据,并对应该接收方的信誉信息更新自身的信誉信息。
上述的数据可靠传输方法,其中,所述步骤S100进一步包括:
S101、发送方请求初始的数据包信息和信誉信息,该初始的数据包信息为初始的数据包顺序号;
S102、接收方应答初始确认信息,该初始确认信息包含该初始的数据包顺序号和初始信誉信息;
S103、发送方根据收到的该初始确认消息更新自己所维护的数据包信息和信誉信息。
上述的数据可靠传输方法,其中,所述步骤S200进一步包括:
S201、发送方根据所维护的信誉信息,发送不超过该信誉信息数目的数据包;
S202、接收方每收到N个数据包后,回复该确认消息,同时更新该接收方的信誉信息;
S203、发送方收到该确认消息后,释放已确认的数据包缓存,并对应更新该发送方的信誉信息。
上述的数据可靠传输方法,其中,
所述请求消息的格式为:
Figure BDA0000417656340000041
所述确认消息的格式为:
Figure BDA0000417656340000042
其中,type为消息类型,0为请求消息,1为确认消息;flag为重传标记位,0为确认seq之前的数据,1为从seq开始重传数据;seq为下一个期待接收数据包顺序号;credit为接收方可用缓存数量。
上述的数据可靠传输方法,其中,所述发送方维护的信息包括下一个待发送数据包的顺序号和可向接收方发送的数据包数目,所述接收方维护的信息包括下一个期望收到的数据包的顺序号和接收方缓冲当前剩余空间。
上述的数据可靠传输方法,其中,所述发送方维护的信息包括下一个待发送数据包的顺序号、可向接收方发送的数据包数目和确认超时的计时数,所述接收方维护的信息包括下一个期望收到的数据包的顺序号和接收方缓冲当前剩余空间。
本发明的技术效果在于:
本发明提出了基于链路的数据可靠传输方法。该方法在数据出错时,仅在错误发生位置重传数据。它克服了传统的端到端方法在数据出错时需要从源节点重传数据,以及由此引起的数据传输冗余多、数据恢复延迟大和数据包乱序等问题。由此,本发明能有效地提高网络数据的传输效率。此外,相比现有的联合多个协议实现链路可靠传输的方法,本发明通过单协议实现链路数据可靠传输,总体协议开销小,效率高。
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
附图说明
图1为本发明一实施例的方法流程图;
图2为本发明一实施例的接收方回复确认信息流程图;
图3为本发明一实施例的发送方处理确认信息流程图。
其中,附图标记
S100-S300   步骤
具体实施方式
下面结合附图对本发明的结构原理和工作原理作具体的描述:
参见图1,图1为本发明一实施例的方法流程图。本发明的基于链路的数据可靠传输方法,包括如下步骤:
步骤S100、主动请求和应答,发送方发送请求消息并接受接收方的初始确认消息,该初始确认消息包括初始的数据包信息和接收方的初始信誉信息。
其中,所述步骤S100可进一步具体包括:
步骤S101、发送方请求初始的数据包信息和信誉信息,该初始的数据包信息为初始的数据包顺序号;
步骤S102、接收方应答初始确认信息,该初始确认信息包含该初始的数据包顺序号和初始信誉信息;
步骤S103、发送方根据收到的该初始确认消息更新自己所维护的数据包信息和信誉信息。
步骤S200、数据正确传输与确认,当接收方收到所述发送方继续发送的请求消息时,回复确认消息,所述确认消息中包括数据接收的确认信息和此时所述接收方的信誉信息,发送方根据收到的该确认消息释放已确认的数据包缓存,并对应更新该发送方的信誉信息。
其中,所述步骤S200可进一步具体包括:
步骤S201、发送方根据所维护的信誉信息,发送不超过该信誉信息数目的数据包;
步骤S202、接收方每收到N个数据包后,回复该确认消息,同时更新该接收方的信誉信息;
步骤S203、发送方收到该确认消息后,释放已确认的数据包缓存,并对应更新该发送方的信誉信息。
步骤S300、数据错误传输下的重传,当接收方发现所述数据传输错误或丢包时,回复重传确认消息,所述重传确认消息包括重传标志位置位信息,发送方收到该重传确认消息后,从该重传标志位置位开始重传数据包。
在本发明另一实施例中,还可包括:
步骤S400、接收方缓存变化时的确认,该步骤S400可进一步具体包括:
步骤S401、接收方每有M个数据包离开缓存,向发送方发送缓存变化确认消息,该缓存变化确认消息中的信誉信息为该接收方对应该缓存变化后的信誉信息;
步骤S402、发送方接收到该缓存变化确认消息后,释放已确认的数据包缓存,并将该发送方的信誉信息对应更新为该缓存变化确认消息中的信誉信息。
在本发明又一实施例中,还可包括:
步骤S500、确认超时情况下的主动请求,当发送方发出的数据包在指定时间内得不到确认,或信誉信息在不满的情况下在指定时间内得不到更新,则发送方重新发送数据。
其中,所述步骤S500还可进一步具体包括:
步骤S501、发送方发送请求消息;
步骤S502、接收方收到该请求消息后,应答包含数据接收的确认信息和此时所述接收方的信誉信息的确认消息;
步骤S503、发送方收到该确认消息后,比较本地数据包的顺序号和收到的数据包的顺序号来确定是否重传数据,并对应该接收方的信誉信息更新自身的信誉信息。
在上述各实施例中,其中,优选请求消息和确认消息的格式如下:
所述请求消息的格式为:
Figure BDA0000417656340000061
所述确认消息的格式:
Figure BDA0000417656340000062
其中,type为消息类型,其中,数据0为请求消息,1为确认消息;flag为重传标记位,数据0为确认seq之前的数据,1为从seq开始重传数据;seq为下一个期待接收数据包顺序号;credit为接收方可用缓存数量。
其中,所述发送方和接收方维护的信息如下表所示:
Figure BDA0000417656340000063
即发送方维护的信息包括下一个待发送数据包的顺序号和可向接收方发送的数据包数目,所述接收方维护的信息包括下一个期望收到的数据包的顺序号和接收方缓冲当前剩余空间。或者,所述发送方维护的信息包括下一个待发送数据包的顺序号、可向接收方发送的数据包数目和确认超时的计时数,所述接收方维护的信息包括下一个期望收到的数据包的顺序号和接收方缓冲当前剩余空间。
本发明的基于正确接收的数据包数和缓存信息的“捎带信誉”的确认方法;这种“捎带信誉”的确认方法可以减少网络中确认消息的数量。即本发明中的“捎带信息”确认机制主要指当接收方收到发送方发送的数据时,回复确认消息,这个确认消息中不仅携带数据的正确接收确认信息,还包括此时接收方的信誉信息。接收方的信誉信息作为一种“捎带的信息”,由数据接收的确认信息捎带传给发送方。而现有的链路协议分别独立的解决这两个问题,比如通过ARQ保证数据的正确接收,信誉流控保证接收方缓存不会溢出。但是这两种方式各自有着自己的协议格式,也就是说ARQ的数据包确认仅包括其确认消息;接收方的信誉信息,通过信誉流控协议发送通知信誉信息的专用数据包。而本发明将这种表示接收方信誉的专用数据包和表示数据正确接收的确认包整合在了一起,这样就减少了网络中传递消息的数量,其主要体现在这种整合在一起的“捎带确认”的机制。
而且本发明的“捎带信誉”的ACK消息,该消息不仅携带数据包的正确性信息,而且携带接收方的信誉信息。参见图2,图2为本发明一实施例的接收方回复确认信息流程图。其中,在图2及图3中,假设当前状态为:
发送方:顺序号ns;信誉cs;
收到的确认包中:顺序号na;信誉ca;
接收方:顺序号nr;信誉cr。
即发送方发送的单个消息同时传递数据包正确性信息和接收方缓存信息,提高了信息传递效率。即该“捎带信誉”ACK消息的具体形式主要是指消息格式,通过消息中的下一个待接收数据包编号以及信誉值(credit)这两个变量,来实现通过此消息不仅携带数据包的正确性信息,同时携带接收方的信誉信息。通过这种整合的ACK消息,实现了单个消息同时传递了接收到的数据正确性信息以及接收方可用缓存信息。
另外,本发明的根据接收到的ACK消息中顺序号和信誉值信息更新发送方信誉值的方法;技术效果是考虑接收方信誉以及飞行中的报文,保证接收方缓存不会溢出。参见图3,图3为本发明一实施例的发送方处理确认信息流程图。在发送方处理ACK机制的流程图里,定义如下变量,发送方维护的顺序号为ns,信誉值为cs,接收到的确认包中顺序号(seq)为na,信誉值为ca。假设ns=10,cs=8,na=8,ca=12,也就是发送方所知道的接收方的可用信誉为8,接下来要发送序号为10的数据包,序号为8、9的数据包已从发送方发出,而没有到达接收方(飞行中的报文)。当发送方收到na=8,ca=12的确认报文时,它便知道接收方下一个想要的数据包是8,接收方可用的缓存数量12,而他自己显示序号为8、9的数据包已经发送出去了,所以他在计算更新cs时,将除去这两个信誉。也就是cs=ca-(ns-na)=10。
本发明主要是将自动重传和信誉流控相融合,单协议实现链路数据的可靠传输。其特点为:
1)发送方向接收方发送数据时,数据量不超过接收方的信誉;
2)接收方收到数据时,反馈确认消息,确认消息中不仅携带数据正确性的确认信息,也包括接收方缓存的信誉信息;
3)发送方根据确认消息判断数据是否正确传输,当数据不正确传输时,发送方对数据进行重传,同时,发送方也根据确认消息更新信誉信息;
4)接收方缓存变化时,也向发送方发送确认消息,为发送方提供信誉信息;
5)发送方也可以主动询问接收方的信誉信息。
下面以一具体实施例详细说明本发明的实现过程,假设发送方有8个待发送数据包,编号为1-8,接收方缓存大小为8:
步骤S100、主动请求和应答
步骤S101、发送方发送request消息,请求初始的seq和credit信息;
步骤S102、接收方收到request消息后,应答ACK消息(包含初始的seq和credit信息);
步骤S103、发送方收到ACK消息后,更新自己所维护的seq和credit信息。
具体说,即发送方首先发送request消息,接收方收到之后回复含有待接收序列号为1和信誉为8的确认ACK。发送方收到确认ACK之后,更新自己的信息,令seq=1,credit=8。
步骤S200、数据正确传输与确认
步骤S201、发送方根据所维护的credit信息,发送不超过该数目的数据包;
步骤S202、接收方每收到N个数据包后,回复ACK消息,同时更新credit信息;
步骤S203、发送方收到ACK消息后,释放已确认的数据包缓存,并更新credit信息。
具体为,发送方根据credit和seq信息,发送不超过credit个数据包(比如序号为1、2的2个数据包),同时更新自身维护信息,接收方收到2个数据包之后,更新维护信息,并且发送seq=3,credit=6的ACK消息,发送方收到ACK消息之后,将已发送的1、2号数据包在缓冲区中丢弃。
步骤S300、数据错误传输下的重传
步骤S301、接收方发现数据传输错误或丢包(顺序号不连续),回复重传标志位置位的ACK消息,该ACK消息包括重传标志位置位信息。
步骤S302、发送方收到重传标志位置位的ACK消息后,从指定seq号开始重传数据包。
例如,发送方发送序号为3的数据包,同时更新自身的seq=4,credit=5。数据包在接收方检测到错误,并被丢弃。接收方回复seq=3,credit=6以及重传位置位的ACK消息,发送方收到ACK后重传3号数据包。重复S200,正确传输3号数据包。
步骤S400、接收方缓存变化时的确认
步骤S401、接收方每有M个数据包离开缓存,向发送方发送ACK消息,并更新credit信息;
步骤S402、发送方接收到ACK消息后,释放已确认的数据包缓存,并更新credit信息。
假如1—4号数据包已经被接收方正确接收,此时发送方和接收方维护信息为seq=5,credit=4。当接收方1、2两个数据包离开时,接收方更新自身的credit=6,同时回复seq=5,credit=6的确认ACK。发送方收到ACK后,更新自身的credit=6。
步骤S500、确认超时情况下的主动请求
步骤S501、当发送方发出的数据包在指定时间内得不到确认,或信誉在不满的情况下在指定时间内得不到更新,发送request消息,重新发起主动请求;
步骤S502、接收方收到request消息后,应答ACK消息(包含seq和credit信息);
步骤S503、发送方收到ACK消息后,比较本地seq和收到的seq来确定是否重传数据,并更新credit信息。
假设发送方发送完最后一个数据包8后,其自身信息变成了seq=9,credit=0,那么它将不能再发送。此时接收方缓存内的数据包不断的离开缓存,但是接收方回复的所有确认ACK均丢失。这就造成了接收方有足够的缓存可以接收新的数据包到来,而发送方却认为接收方没有信誉信息而一直等待。当发送方在一定时间之后没有收到确认信息后,会主动重复步骤S501,发起发送请求。
综上,本发明与现有技术的主要区别如下:
1)与TCP可靠传输方法的区别
(1)TCP是一种端到端协议,作用对象是传输路径两端的源节点和目的节点。本发明是一种单链路协议,作用对象是单链路两端的网络设备;
(2)TCP工作在传输层,使用复杂消息结构和拥塞控制方法实现可靠性,由于复杂度大,通常由软件实现。本发明的协议工作在链路层,且只作用于单条链路两端,整合了流控和重传的单链路层协议实现可靠性,消息结构和实现方法复杂度低,易于直接硬件实现。
2)与PCIe协议的区别
PCIe协议采用分离的流控和差错控制协议实现可靠传输。流控协议采用信誉流控,接收方定时向发送方发送信誉包。差错控制协议采用一种改进的Go-Back-N协议。
本发明的单协议实现可靠传输,确认包信息、确认发送方法和信誉更新方式均不相同。
3)与差错控制协议的区别
差错控制(比如基于滑动窗口的ARQ协议)的确认消息中,只有对数据包的确认信息,没有接收方的信誉信息。因此只能保证数据正确传输,不提供流控功能。
4)与信誉流控协议的区别
信誉流控协议中,接收方只通过向发送方发送信誉包实现流控功能(保证接收缓冲区不溢出),但接收方不对收到的数据进行正确性的确认(即不保障数据的正确传输)。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (10)

1.一种基于链路的数据可靠传输方法,其特征在于,包括如下步骤:
S100、主动请求和应答,发送方发送请求消息并接受接收方的初始确认消息,该初始确认消息包括初始的数据包信息和接收方的初始信誉信息;
S200、数据正确传输与确认,当接收方收到所述发送方继续发送的请求消息时,回复确认消息,所述确认消息中包括数据接收的确认信息和此时所述接收方的信誉信息,发送方根据收到的该确认消息释放已确认的数据包缓存,并对应更新该发送方的信誉信息;
S300、数据错误传输下的重传,当接收方发现所述数据传输错误或丢包时,回复重传确认消息,所述重传确认消息包括重传标志位置位信息,发送方收到该重传确认消息后,从该重传标志位置位开始重传数据包。
2.如权利要求1所述的数据可靠传输方法,其特征在于,还包括:
S400、接收方缓存变化时的确认,进一步包括:
S401、接收方每有M个数据包离开缓存,向发送方发送缓存变化确认消息,该缓存变化确认消息中的信誉信息为该接收方对应该缓存变化后的信誉信息;
S402、发送方接收到该缓存变化确认消息后,释放已确认的数据包缓存,并将该发送方的信誉信息对应更新为该缓存变化确认消息中的信誉信息。
3.如权利要求1或2所述的数据可靠传输方法,其特征在于,还包括:
S500、确认超时情况下的主动请求,当发送方发出的数据包在指定时间内得不到确认,或信誉信息在不满的情况下在指定时间内得不到更新,则发送方重新发送数据。
4.如权利要求3所述的数据可靠传输方法,其特征在于,所述步骤S500进一步包括:
S501、发送方发送请求消息;
S502、接收方收到该请求消息后,应答包含数据接收的确认信息和此时所述接收方的信誉信息的确认消息;
S503、发送方收到该确认消息后,比较本地数据包的顺序号和收到的数据包的顺序号来确定是否重传数据,并对应该接收方的信誉信息更新自身的信誉信息。
5.如权利要求1、2或4所述的数据可靠传输方法,其特征在于,所述步骤S100进一步包括:
S101、发送方请求初始的数据包信息和信誉信息,该初始的数据包信息为初始的数据包顺序号;
S102、接收方应答初始确认信息,该初始确认信息包含该初始的数据包顺序号和初始信誉信息;
S103、发送方根据收到的该初始确认消息更新自己所维护的数据包信息和信誉信息。
6.如权利要求1、2或4所述的数据可靠传输方法,其特征在于,所述步骤S200进一步包括:
S201、发送方根据所维护的信誉信息,发送不超过该信誉信息数目的数据包;
S202、接收方每收到N个数据包后,回复该确认消息,同时更新该接收方的信誉信息;
S203、发送方收到该确认消息后,释放已确认的数据包缓存,并对应更新该发送方的信誉信息。
7.如权利要求1、2或4所述的数据可靠传输方法,其特征在于,
所述请求消息的格式为:
Figure FDA0000417656330000021
所述确认消息的格式为:
Figure FDA0000417656330000022
其中,type为消息类型,0为请求消息,1为确认消息;flag为重传标记位,0为确认seq之前的数据,1为从seq开始重传数据;seq为下一个期待接收数据包顺序号;credit为接收方可用缓存数量。
8.如权利要求1、2或4所述的数据可靠传输方法,其特征在于,所述发送方维护的信息包括下一个待发送数据包的顺序号和可向接收方发送的数据包数目,所述接收方维护的信息包括下一个期望收到的数据包的顺序号和接收方缓冲当前剩余空间。
9.如权利要求3所述的数据可靠传输方法,其特征在于,所述发送方维护的信息包括下一个待发送数据包的顺序号、可向接收方发送的数据包数目和确认超时的计时数,所述接收方维护的信息包括下一个期望收到的数据包的顺序号和接收方缓冲当前剩余空间。
10.如权利要求3所述的数据可靠传输方法,其特征在于,所述步骤S200进一步包括:
S201、发送方根据所维护的信誉信息,发送不超过该信誉信息数目的数据包;
S202、接收方每收到N个数据包后,回复该确认消息,同时更新该接收方的信誉信息;
S203、发送方收到该确认消息后,释放已确认的数据包缓存,并对应更新该发送方的信誉信息。
CN201310584995.6A 2013-11-19 2013-11-19 一种基于链路的数据可靠传输方法 Active CN103647625B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310584995.6A CN103647625B (zh) 2013-11-19 2013-11-19 一种基于链路的数据可靠传输方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310584995.6A CN103647625B (zh) 2013-11-19 2013-11-19 一种基于链路的数据可靠传输方法

Publications (2)

Publication Number Publication Date
CN103647625A true CN103647625A (zh) 2014-03-19
CN103647625B CN103647625B (zh) 2017-01-25

Family

ID=50252789

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310584995.6A Active CN103647625B (zh) 2013-11-19 2013-11-19 一种基于链路的数据可靠传输方法

Country Status (1)

Country Link
CN (1) CN103647625B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105245470A (zh) * 2015-11-05 2016-01-13 深圳市网心科技有限公司 一种数据传输方法和装置
CN105471722A (zh) * 2015-12-31 2016-04-06 深圳前海微众银行股份有限公司 消息处理方法和装置
CN105577560A (zh) * 2016-02-04 2016-05-11 豪威科技(上海)有限公司 数据包、数据传输系统及方法
CN106797281A (zh) * 2014-12-24 2017-05-31 柏思科技有限公司 用于通过聚合连接传输数据的方法和系统
CN112532539A (zh) * 2019-09-18 2021-03-19 无锡江南计算技术研究所 面向大规模并发通信的优化方法
US11005685B2 (en) 2009-12-23 2021-05-11 Pismo Labs Technology Limited Methods and systems for transmitting packets through aggregated end-to-end connection
CN113572582A (zh) * 2021-07-15 2021-10-29 中国科学院计算技术研究所 数据发送、重传控制方法及系统、存储介质及电子设备
US11201699B2 (en) 2009-12-23 2021-12-14 Pismo Labs Technology Limited Methods and systems for transmitting error correction packets
CN114465697A (zh) * 2022-04-11 2022-05-10 湖南戎腾网络科技有限公司 一种基于以太网的可靠通信方法、装置及设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1238090A (zh) * 1996-09-30 1999-12-08 艾利森电话股份有限公司 有选择地将消息数据的分组传输给远程通信台的方法及装置
WO2007033613A1 (fr) * 2005-09-26 2007-03-29 Huawei Technologies Co., Ltd. Procede destine a realiser un controle d'erreur et systeme et appareil associes
CN101262321A (zh) * 2008-02-03 2008-09-10 杭州华三通信技术有限公司 媒体数据处理方法、编码设备及媒体平台
EP2285029A1 (en) * 2008-12-30 2011-02-16 State Grid Corporation of China Data transmission method, transmission system and data transmitter
CN103297211A (zh) * 2012-02-29 2013-09-11 华为技术有限公司 单独的上行高速专用物理控制信道的建立方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1238090A (zh) * 1996-09-30 1999-12-08 艾利森电话股份有限公司 有选择地将消息数据的分组传输给远程通信台的方法及装置
WO2007033613A1 (fr) * 2005-09-26 2007-03-29 Huawei Technologies Co., Ltd. Procede destine a realiser un controle d'erreur et systeme et appareil associes
CN101262321A (zh) * 2008-02-03 2008-09-10 杭州华三通信技术有限公司 媒体数据处理方法、编码设备及媒体平台
EP2285029A1 (en) * 2008-12-30 2011-02-16 State Grid Corporation of China Data transmission method, transmission system and data transmitter
CN103297211A (zh) * 2012-02-29 2013-09-11 华为技术有限公司 单独的上行高速专用物理控制信道的建立方法及装置

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11201699B2 (en) 2009-12-23 2021-12-14 Pismo Labs Technology Limited Methods and systems for transmitting error correction packets
US11943060B2 (en) 2009-12-23 2024-03-26 Pismo Labs Technology Limited Methods and systems for transmitting packets
US11677510B2 (en) 2009-12-23 2023-06-13 Pismo Labs Technology Limited Methods and systems for transmitting error correction packets
US11005685B2 (en) 2009-12-23 2021-05-11 Pismo Labs Technology Limited Methods and systems for transmitting packets through aggregated end-to-end connection
CN106797281A (zh) * 2014-12-24 2017-05-31 柏思科技有限公司 用于通过聚合连接传输数据的方法和系统
CN105245470A (zh) * 2015-11-05 2016-01-13 深圳市网心科技有限公司 一种数据传输方法和装置
CN105245470B (zh) * 2015-11-05 2019-05-17 深圳市网心科技有限公司 一种数据传输方法和装置
CN105471722A (zh) * 2015-12-31 2016-04-06 深圳前海微众银行股份有限公司 消息处理方法和装置
CN105471722B (zh) * 2015-12-31 2018-11-30 深圳前海微众银行股份有限公司 消息处理方法和装置
CN105577560B (zh) * 2016-02-04 2018-06-26 豪威科技(上海)有限公司 数据传输系统及方法
CN105577560A (zh) * 2016-02-04 2016-05-11 豪威科技(上海)有限公司 数据包、数据传输系统及方法
CN112532539B (zh) * 2019-09-18 2023-03-28 无锡江南计算技术研究所 面向大规模并发通信的优化方法
CN112532539A (zh) * 2019-09-18 2021-03-19 无锡江南计算技术研究所 面向大规模并发通信的优化方法
CN113572582A (zh) * 2021-07-15 2021-10-29 中国科学院计算技术研究所 数据发送、重传控制方法及系统、存储介质及电子设备
CN113572582B (zh) * 2021-07-15 2022-11-22 中国科学院计算技术研究所 数据发送、重传控制方法及系统、存储介质及电子设备
CN114465697A (zh) * 2022-04-11 2022-05-10 湖南戎腾网络科技有限公司 一种基于以太网的可靠通信方法、装置及设备

Also Published As

Publication number Publication date
CN103647625B (zh) 2017-01-25

Similar Documents

Publication Publication Date Title
CN103647625A (zh) 一种基于链路的数据可靠传输方法
EP1161810B1 (en) Data discard mechanism for selective repeat protocol
CN103036904B (zh) 一种在通信网络中使用udp协议进行数据可靠传输的方法
US20050152350A1 (en) System and method for transmitting/receiving automatic repeat request
EP2119085B1 (en) Enhanced error control communication systems and methods
US9178665B2 (en) Communication apparatus, communication system, absent packet detecting method and absent packet detecting program
US8200838B2 (en) Data flow control with duplicate acknowledgement
JP4495085B2 (ja) 通信システム、通信装置、およびデータの再送制御方法
US20120170445A1 (en) Efficient application-layer automatic repeat request retransmission method for reliable real-time data streaming in networks
US9118478B2 (en) Fault-tolerant data transmission system for networks with non-full-duplex or asymmetric transport
CN105934907A (zh) 无线资源调度方法及装置
CN107135051B (zh) 一种上行数据重传的方法、设备和系统
JP2007053588A (ja) パケット再送方式、パケット再送システム、パケット再送プログラム及びプログラム記録媒体
CN100574274C (zh) 无线链路协议的传输系统及方法
JP2005244897A (ja) 信頼性のある通信方法及びその装置
US9510242B2 (en) Reducing superfluous traffic in a network
US8769137B2 (en) Systems and methods for negotiated accelerated block option for trivial file transfer protocol (TFTP)
JP2006191368A (ja) ネットワーク伝送装置
KR100612654B1 (ko) 자동 재송신 요청을 위한 프레임 생성 장치 및 방법
JP2001036586A (ja) ゲートウェイ装置
CN111405609B (zh) 一种数据传输方法、装置、系统、介质和设备
US20060209904A1 (en) Reverse acknowledgement method for quickly identifying whether or not the retransmission frame was lost
EP0993139B1 (en) Go-back-N automatic-repeat-request protocol on virtual circuits
CN102624506B (zh) 基于双重传策略的深空文件传输方法
JP2006237968A (ja) 通信システムおよび通信方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20190104

Address after: Room 313, Building 3, 2222 Huancheng Road, Jiading District, Shanghai, 201800

Patentee after: SHANGHAI ZUOANXINHUI ELECTRONIC TECHNOLOGY Co.,Ltd.

Address before: 100190 South Road, Zhongguancun Science Academy, Haidian District, Beijing 6

Patentee before: Institute of Computing Technology, Chinese Academy of Sciences

PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Link-based data reliable transmission method

Effective date of registration: 20200423

Granted publication date: 20170125

Pledgee: Anxin Agricultural Insurance Co., Ltd. Shanghai Minhang Branch Co.

Pledgor: SHANGHAI ZUOANXINHUI ELECTRONIC TECHNOLOGY Co.,Ltd.

Registration number: Y2020310000013

PC01 Cancellation of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20210531

Granted publication date: 20170125

Pledgee: Anxin Agricultural Insurance Co., Ltd. Shanghai Minhang Branch Co.

Pledgor: SHANGHAI ZUOANXINHUI ELECTRONIC TECHNOLOGY Co.,Ltd.

Registration number: Y2020310000013

EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20140319

Assignee: SHANGHAI CONTRON INFORMATION TECHNOLOGY Co.,Ltd.

Assignor: SHANGHAI ZUOANXINHUI ELECTRONIC TECHNOLOGY Co.,Ltd.

Contract record no.: X2021310000032

Denomination of invention: A reliable data transmission method based on link

Granted publication date: 20170125

License type: Common License

Record date: 20210827

PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A link based method for reliable data transmission

Granted publication date: 20170125

Pledgee: China Construction Bank Corporation Shanghai Jiading Branch

Pledgor: SHANGHAI ZUOANXINHUI ELECTRONIC TECHNOLOGY Co.,Ltd.

Registration number: Y2024980032761