CN112702411B - 一种解决cantp多帧丢包重传的方法 - Google Patents
一种解决cantp多帧丢包重传的方法 Download PDFInfo
- Publication number
- CN112702411B CN112702411B CN202011516007.0A CN202011516007A CN112702411B CN 112702411 B CN112702411 B CN 112702411B CN 202011516007 A CN202011516007 A CN 202011516007A CN 112702411 B CN112702411 B CN 112702411B
- Authority
- CN
- China
- Prior art keywords
- frame
- data
- continuous
- lost
- retransmission
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
Abstract
本发明公开了一种解决CANTP多帧丢包重传的方法,主要设计思路为:数据接收方利用流控帧空余的字节中存储丢失帧的数据,并将携带丢失帧数据的流控帧发送给数据发送方;数据发送针对列出的丢失数据向数据接收方重新补发数据。实现了在不增加现有CANTP报文类型的情况下,实现了丢包信息的反馈。
Description
技术领域:
本发明属于车辆联网数据传输技术领域,特别涉及一种解决CANTP多帧丢包重传的方法。
背景技术:
普通CAN通信的单个数据包最大只能只能传输8个字节的数据,当需要传输较大的数据包时,需要依据ISO15765-2(以下简称CANTP协议)中的规定将数据进行分包发送,在接收端将分包进行重组,然后将重组后的包上送到应用层处理。大致的流程如图1所示:
(1)发送方传输首帧报文FF,在首帧报文中会携带整个待传输数据块的长度,方便接收方开辟足够的接收缓存;
(2)接收方收到首帧报文后返回流控帧FC,流控帧携带了后续传输的参数信息,用于控制发送方的发送行为。主要信息包括:后面可以继续发送的连续帧CF的数量BS、每个连续帧间的发送间隔STmin;
(3)发送方按照流控帧FC的信息发送后续连续帧;
(4)重复步骤(2)和(3),直到整个数据包传输完毕。
在以上传输过程中,如果连续帧CF发生了丢帧,CANTP协议中并未给出解决方案,因为流控帧FC主要是针对后续传输行为的,并未对之前的传输行为进行确认。具体详细下面对流控帧FC的说明。
图2为流控帧FC的帧结构,各字段的主要功能如下:
Byte#1(Bits3 ~ 0):FlowStatus(FS),表明发送方是否可以继续处理数据传输;
Byte#2:BlockSize(BS),允许发送方继续发送连续帧(CF)的数量;
Byte#3:SeparationTime minimum(STmin), 连续帧(CF)的传输间隔。
Byte#4 ~ 8:N/A,保留未用。
如果发生了连续帧CF丢帧,CANTP协议中的处理行为是放弃本次数据包传输,本数据包之前的传输的数据也将丢弃。如果丢帧发生在数据包传输的后期,对带宽的浪费将是很大的。而CANTP协议中并未提供相应的机制,使收发收发双方可以对丢帧数据进行重传,从而提升数据传输效率。本发明即针对原有标准中的该缺陷提出相应的解决方案。
公开于该背景技术部分的信息仅仅旨在增加对本发明的总体背景的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域一般技术人员所公知的现有技术。
发明内容:
本发明的目的在于提供一种解决CANTP多帧丢包重传的方法,从而克服上述现有技术中的缺陷。
为实现上述目的,本发明提供了一种解决CANTP多帧丢包重传的方法,数据接收方利用流控帧空余的字节中存储丢失帧的数据,并将携带丢失帧数据的流控帧发送给数据发送方;数据发送针对列出的丢失数据向数据接收方重新补发数据。
优选地,上述技术方案中,控制方法具体为:
S1,如果未收到当前连续帧CF传输周期的所有连续帧CF,且发生N_Cr超时事件,接收方发送流控帧FC,并携带丢失连续帧CF的数据信息;
S2,丢帧数据重传若再次发生丢帧,即接收方未收到所有丢失连续帧CF,且发生了N_Cr超时事件,接收方将终止整个数据包的接收;
S3,若单个连续帧CF传输周期,接收方检测到丢失连续帧CF超过5个,接收方终止整个数据包的接收;
S4,重传丢失连续帧CF的编号字段所有字段为0,表示无丢包,发送方可启动新的连续帧CF传输周期;丢失连续帧CF的编号字段使用0-255的数字表示,其中0表示无丢帧。
优选地,上述技术方案中,流控帧的长度为8个字节,其中CANTP协议使用了前3个字节,使用剩余的5个字节,对前一个传输周期的连续帧CF进行应答,以通知发送方接收方的接收结果。
优选地,上述技术方案中,丢失连续帧CF的编号字段和CANTP协议连续帧CF中的SN字段并不是同一个值,这里的编号是对上个连续帧CF传输周期中每个连续帧CF的排序,第一个连续帧CF编号为1,第二个为2,依次类推。为确保重传数据能够填补到合适的位置,接收方需要记录表1中的编号与连续帧CF中的SN的对应关系。因为流控帧FC的BS字段为一个字节,所以这里使用一个字节对连续帧CF进行编号是没有问题的。
优选地,上述技术方案中,丢失连续帧CF的编号字段是对上个连续帧CF传输周期中每个连续帧CF的排序,为确保重传数据能够填补到合适的位置,接收方需要记录编号与连续帧CF中的SN的对应关系。
优选地,上述技术方案中,也可以对流控帧FC的剩余字段采用其他定义方式,具体为:每个bit位标识一个连续帧CF是否接收成功、每4个bit对应一个连续帧CF的SN字段、所有5个字节保留字段标识某个丢失连续帧CF编号。
优选地,上述技术方案中,步骤S2中,重传次数可为一次或一次以上。
优选地,上述技术方案中,也可以定义新的CANTP报文类型,向数据发送方通告丢帧信息。
与现有技术相比,本发明具有如下有益效果:
1.在不增加现有CANTP报文类型的情况下,实现了丢包信息的反馈;
2.通过信息反馈实现了丢失数据重传流程的实现;
3.对流控帧FC保留字段的利用。
附图说明:
图1为CAN传输大包数据的流程示例;
图2 为流控帧FC帧结构。
具体实施方式:
下面对本发明的具体实施方式进行详细描述,但应当理解本发明的保护范围并不受具体实施方式的限制。
除非另有其它明确表示,否则在整个说明书和权利要求书中,术语“包括”或其变换如“包含”或“包括有”等等将被理解为包括所陈述的元件或组成部分,而并未排除其它元件或其它组成部分。
本发明专利旨在解决CANTP协议对丢帧问题未做处理的缺陷,在丢帧场景下有效提升数据的传输效率。
由图1可知在每个连续帧CF的传输周期结束后,接收方都会应答一个流控帧FC以限定下个连续帧CF传输周期的行为,这个特性可以从图2流控帧FC的结构获知。因为流控帧的长度可以为8个字节,而CANTP协议目前只使用了前3个字节,剩余的5个字节保留未用。
本专利即使用这5个未使用的字节,对前一个传输周期的连续帧CF进行应答,以通知发送方接收方的接收结果。具体定义如下:
表1流控帧(FC)重传编号字段定义
字节序号 | 功能 | 参数范围 |
4 | 第一个丢失的连续帧CF编号 | 0~255,0表示无丢帧 |
5 | 第二个丢失的连续帧CF编号 | 0~255,0表示无丢帧 |
6 | 第三个丢失的连续帧CF编号 | 0~255,0表示无丢帧 |
7 | 第四个丢失的连续帧CF编号 | 0~255,0表示无丢帧 |
8 | 第五个丢失的连续帧CF编号 | 0~255,0表示无丢帧 |
这里需要说明的是:表中的连续帧CF编号和CANTP协议连续帧CF中的SN字段并不是同一个值,这里的编号是对上个连续帧CF传输周期中每个连续帧CF的排序,第一个连续帧CF编号为1,第二个为2,依次类推。为确保重传数据能够填补到合适的位置,接收方需要记录表1中的编号与连续帧CF中的SN的对应关系。因为流控帧FC的BS字段为一个字节,所以这里使用一个字节对连续帧CF进行编号是没有问题的。
下面对流控帧FC重传编号字段的使用做详细说明:
(1)如果未收到当前连续帧CF传输周期的所有连续帧CF,且发生N_Cr超时事件,接收方发送流控帧FC,并携带丢帧数据信息;
(2)丢帧数据重传若再次发生丢帧,即接收方未收到所有丢帧数据,且发生了N_Cr超时事件,接收方将终止整个数据包的接收;
(3)若单个连续帧CF传输周期,接收方检测到丢帧超过5个,接收方终止整个数据包的接收;
(4)重传编号字段所有字段为0,表示无丢包,发送方可启动新的连续帧CF传输周期;
前述对本发明的具体示例性实施方案的描述是为了说明和例证的目的。这些描述并非想将本发明限定为所公开的精确形式,并且很显然,根据上述教导,可以进行很多改变和变化。对示例性实施例进行选择和描述的目的在于解释本发明的特定原理及其实际应用,从而使得本领域的技术人员能够实现并利用本发明的各种不同的示例性实施方案以及各种不同的选择和改变。本发明的范围意在由权利要求书及其等同形式所限定。
Claims (7)
1.一种解决CANTP多帧丢包重传的方法,其特征在于:数据接收方利用流控帧空余的字节中存储丢失帧的数据,并将携带丢失帧数据的流控帧发送给数据发送方;数据发送针对列出的丢失数据向数据接收方重新补发数据;丢失连续帧CF的编号字段是对上个连续帧CF传输周期中每个连续帧CF的排序,为确保重传数据能够填补到合适的位置,接收方需要记录编号与连续帧CF中的SN的对应关系。
2.根据权利要求1所述的解决CANTP多帧丢包重传的方法,其特征在于:控制方法具体为:
S1,如果未收到当前连续帧CF传输周期的所有连续帧CF,且发生N_Cr超时事件,接收方发送流控帧FC,并携带丢失连续帧CF的数据信息;
S2,丢帧数据重传若再次发生丢帧,即接收方未收到所有丢失连续帧CF,且发生了N_Cr超时事件,接收方将终止整个数据包的接收;
S3,若单个连续帧CF传输周期,接收方检测到丢失连续帧CF超过5个,接收方终止整个数据包的接收;
S4,重传丢失连续帧CF的编号字段所有字段为0,表示无丢包,发送方可启动新的连续帧CF传输周期;丢失连续帧CF的编号字段使用0-255的数字表示,其中0表示无丢帧。
3.根据权利要求2所述的解决CANTP多帧丢包重传的方法,其特征在于:流控帧的长度为8个字节,其中CANTP协议使用了前3个字节,使用剩余的5个字节,对前一个传输周期的连续帧CF进行应答,以通知发送方接收方的接收结果。
4.根据权利要求2所述的解决CANTP多帧丢包重传的方法,其特征在于:丢失连续帧CF的编号字段是对上个连续帧CF传输周期中每个连续帧CF的排序,为确保重传数据能够填补到合适的位置,接收方需要记录编号与连续帧CF中的SN的对应关系。
5.根据权利要求2所述的解决CANTP多帧丢包重传的方法,其特征在于:也可以对流控帧FC的剩余字段采用定义方式具体为:每个bit位标识一个连续帧CF是否接收成功、每4个bit对应一个连续帧CF的SN字段、所有5个字节保留字段标识某个丢失连续帧CF编号。
6.根据权利要求2所述的解决CANTP多帧丢包重传的方法,其特征在于:步骤S2中,重传次数可为一次或一次以上。
7.根据权利要求1所述的解决CANTP多帧丢包重传的方法,其特征在于:也可以定义新的CANTP报文类型,向数据发送方通告丢帧信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011516007.0A CN112702411B (zh) | 2020-12-21 | 2020-12-21 | 一种解决cantp多帧丢包重传的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011516007.0A CN112702411B (zh) | 2020-12-21 | 2020-12-21 | 一种解决cantp多帧丢包重传的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112702411A CN112702411A (zh) | 2021-04-23 |
CN112702411B true CN112702411B (zh) | 2023-01-17 |
Family
ID=75507709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011516007.0A Active CN112702411B (zh) | 2020-12-21 | 2020-12-21 | 一种解决cantp多帧丢包重传的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112702411B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114338466B (zh) * | 2021-12-21 | 2023-10-31 | 卡斯柯信号有限公司 | 一种自适应的丢包检测方法 |
CN114827242B (zh) * | 2022-04-24 | 2023-10-20 | 深圳市元征科技股份有限公司 | 流控帧修正方法、装置、设备及介质 |
CN115021865A (zh) * | 2022-05-09 | 2022-09-06 | 深圳市正浩创新科技股份有限公司 | 数据读取方法、数据推送方法、电子设备及可读存储介质 |
CN115102803B (zh) * | 2022-06-22 | 2023-06-06 | 重庆长安新能源汽车科技有限公司 | 一种can通讯多帧传输方法、ecu |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1874215A (zh) * | 2006-02-17 | 2006-12-06 | 华为技术有限公司 | 一种数据传输的方法 |
CN102201938A (zh) * | 2011-06-14 | 2011-09-28 | 浙江大学 | 基于通道的CanTp层通信管理方法 |
CN106452692A (zh) * | 2016-11-30 | 2017-02-22 | 网宿科技股份有限公司 | 一种数据传输方法和系统 |
CN106452667A (zh) * | 2016-08-30 | 2017-02-22 | 中国第汽车股份有限公司 | 一种商用车can通信传输方法 |
CN106792262A (zh) * | 2016-12-05 | 2017-05-31 | 乐视控股(北京)有限公司 | 视频数据传输方法及装置 |
CN106911699A (zh) * | 2017-03-03 | 2017-06-30 | 天津天地伟业信息系统集成有限公司 | 一种基于rtp协议实现i帧重传的方法 |
CN111294163A (zh) * | 2020-05-12 | 2020-06-16 | 翱捷科技(上海)有限公司 | 一种DigRF重传失败的处理方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140132063A (ko) * | 2013-05-07 | 2014-11-17 | 한국전자통신연구원 | 캔 통신 장치 및 방법 |
CN105487403A (zh) * | 2015-10-30 | 2016-04-13 | 武汉华茂工业自动化有限公司 | 一种基于can的运动控制系统建立及其仿真建模方法 |
-
2020
- 2020-12-21 CN CN202011516007.0A patent/CN112702411B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1874215A (zh) * | 2006-02-17 | 2006-12-06 | 华为技术有限公司 | 一种数据传输的方法 |
CN102201938A (zh) * | 2011-06-14 | 2011-09-28 | 浙江大学 | 基于通道的CanTp层通信管理方法 |
CN106452667A (zh) * | 2016-08-30 | 2017-02-22 | 中国第汽车股份有限公司 | 一种商用车can通信传输方法 |
CN106452692A (zh) * | 2016-11-30 | 2017-02-22 | 网宿科技股份有限公司 | 一种数据传输方法和系统 |
CN106792262A (zh) * | 2016-12-05 | 2017-05-31 | 乐视控股(北京)有限公司 | 视频数据传输方法及装置 |
CN106911699A (zh) * | 2017-03-03 | 2017-06-30 | 天津天地伟业信息系统集成有限公司 | 一种基于rtp协议实现i帧重传的方法 |
CN111294163A (zh) * | 2020-05-12 | 2020-06-16 | 翱捷科技(上海)有限公司 | 一种DigRF重传失败的处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112702411A (zh) | 2021-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112702411B (zh) | 一种解决cantp多帧丢包重传的方法 | |
EP2266224B1 (en) | Method of transmitting rlc data | |
US8488523B2 (en) | Method of transmitting and processing data block of specific protocol layer in wireless communication system | |
DE60109689T2 (de) | Verfahren und Protokoll zur Anpassung jeder einzelnen Verbindung in einem Mehrknoten-Netzwerk zu einer maximalen Datenrate | |
US9565699B2 (en) | Method of performing polling procedure in a wireless communication system | |
CA2368770C (en) | Packet discard notification for semi reliable retransmission protocol | |
CN100359839C (zh) | 在自动重复请求协议中使反馈响应最小的方法 | |
US8526416B2 (en) | Method of performing polling procedure in a wireless communication system | |
CN106330414A (zh) | 一种报文传输方法及装置 | |
CN107592185B (zh) | 一种适用于网络编码传输控制协议的前向重传方法 | |
WO2022095863A1 (zh) | 一种用于输变电设备物联网的微功率无线接入方法与装置 | |
JP2006211632A (ja) | Crc検査範囲外エラーを検出する方法 | |
EP2779713A1 (en) | Method and system for data record packet processing | |
CN103973414B (zh) | 一种数据传输方法及装置 | |
JP2004535136A (ja) | データパケットを送信する方法 | |
EP1419607B1 (de) | Verfahren und funkstation zur übertragung von datenpaketen in einem funk-kommunikationssystem | |
EP1580916B1 (en) | System and method for transmitting units of messages in a mobile communication system | |
CN112566180B (zh) | 一种提升tetra系统分组数据传输速率的方法 | |
CN113541874A (zh) | 一种数据传输方法及网络设备 | |
DE102009050767B4 (de) | Verfahren und Vorrichtung zur Datenübertragung | |
WO2022094974A1 (zh) | 数据传输方法、装置、计算机设备及存储介质 | |
EP1281253B1 (de) | Übertragung von kodierten datenpaketen, bei der der empfänger durch explizite signalisierung die kodierung der datenpakete entscheidet | |
Yuk et al. | Parity-based reliable multicast method for wireless LAN environments | |
CN108270523B (zh) | 带内密钥协商传输方法及传输系统 | |
KR100918735B1 (ko) | 이동통신 시스템에서 패킷 송수신 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230525 Address after: No. 86, Huiji Road, Huishan District, Wuxi City, Jiangsu Province, 214000 Patentee after: WUXI SHENLIAN SPECIAL PURPOSE VEHICLE CO.,LTD. Address before: No. 2500, Yangpu District military road, Shanghai, Shanghai Patentee before: SAIC MAXUS AUTOMOBILE Co.,Ltd. |