数据传输方法及装置制造方法及图纸

技术编号:15695060 阅读:255 留言:0更新日期:2017-06-24 10:26
本发明专利技术涉及一种数据传输方法及装置。上述方法包括:接收对端发送的数据包;对所述数据包进行校验,检测所述数据包是否为误码包;若所述数据包为误码包,则存储所述误码包,并重新接收所述对端发送的数据包;当重新接收所述对端发送的数据包的次数大于预设阈值时,根据存储的多个误码包拼凑得到正确的数据包。上述数据传输方法及装置,能在被准周期性的信号干扰时成功得到正确的数据包,保证通讯正常,提高通讯效果。

Data transmission method and device

The invention relates to a data transmission method and device. The method includes: receiving the data packet transmitted by the data packet; to check whether the data packet detection error packet; if the packet error packet is stored, the error packet, and to receive the packets sent to the end; when receiving the number of re the data packet transmitted by more than a preset threshold, according to a plurality of storage bags together to get the correct error packet. The data transmission method and the device can successfully obtain the correct data packets when the quasi periodic signals interfere, and ensure the normal communication and improve the communication effect.

【技术实现步骤摘要】
数据传输方法及装置
本专利技术涉及通信
,特别是涉及一种数据传输方法及装置。
技术介绍
MODEM(调制解调器)通讯是一种在有线电话网络上进行数据传输的通讯,有线电话网络容易遭受外界环境中各种电磁信号的干扰,例如毛刺干扰等,毛刺干扰指的是一种振幅如刺状的、单次持续时间极短的信号干扰。干扰会导致信号损伤,引起误码,从而造成数据传输瞬时或持续性出错。在传统的方式中,一般采用硬件滤除MODEM通讯中的干扰,但是硬件也无法把通讯过程中的所有干扰均滤除掉。而对于干扰所引发的误码,则采用校验失败后重传的方法进行解决,本端若接收到有误码的数据包,则该数据包无法校验通过,本端丢弃该校验不通过的数据包,并继续接收由对端重新发送的数据包,直至本端对接收的数据包校验通过则接收成功。然而,当MODEM通讯遇上准周期性的信号干扰时,干扰以近似周期的方式出现,每个数据包均可能被干扰而引起误码,若是采用传统方式中的校验失败后重传的方法,将可能出现接收的数据包一直无法校验通过的情况,最终将会因接收数据超时而导致整个通讯过程中止,严重影响通讯效果。
技术实现思路
基于此,有必要提供一种数据传输方法,能在被准周期性的信号干扰时成功得到正确的数据包,保证通讯正常,提高通讯效果。此外,还有必要提供一种数据传输装置,能在被准周期性的信号干扰时成功得到正确的数据包,保证通讯正常,提高通讯效果。一种数据传输方法,包括:接收对端发送的数据包;对所述数据包进行校验,检测所述数据包是否为误码包;若所述数据包为误码包,则存储所述误码包,并重新接收所述对端发送的数据包;当重新接收所述对端发送的数据包的次数大于预设阈值时,根据存储的多个误码包拼凑得到正确的数据包。在其中一个实施例中,在所述接收对端发送的数据包的步骤之前,还包括:获取通讯协议中约定的重发最大次数及数据包最大长度;根据所述重发最大次数及数据包最大长度分配缓存空间。在其中一个实施例中,所述当重新接收所述数据包的次数大于预设阈值时,根据存储的多个误码包拼凑得到正确的数据包,包括:获取存储的多个误码包的长度;若长度相等的误码包的个数大于预设个数,则提取所述长度相等的误码包;逐字节对提取的各个误码包进行比较,判断同一字节下所述提取的各个误码包的值是否相同;若同一字节下所述提取的各个误码包的值相同,则选取具有相同值的字节下所述提取的各个误码包中相同的值;若同一字节下所述提取的各个误码包的值不同,则选取具有不同值的字节下所述提取的各个误码包中出现次数大于预设次数的值;根据各个字节下选取的值拼凑得到数据包。在其中一个实施例中,在所述若同一字节下所述提取的各个误码包的值不同,则选取具有不同值的字节下所述提取的各个误码包中出现次数大于预设次数的值的步骤之后,还包括:若所述具有不同值的字节下所述提取的各个误码包中出现次数大于预设次数的值为多个,则根据所述提取的各个误码包的存储顺序从出现次数大于预设次数的多个值中选取最先出现的值。在其中一个实施例中,在所述根据各个字节下选取的值拼凑得到数据包的步骤之后,还包括:提取拼凑得到的数据包中的校验码对所述拼凑得到的数据包进行校验;若校验通过,则所述拼凑得到的数据包为正确的数据包;若校验失败,则重新接收所述对端发送的数据包;当重新接收所述对端发送的数据包的次数达到预设限定值时,则发送重试超限指令。一种数据传输装置,包括:接收模块,用于接收对端发送的数据包;校验模块,用于对所述数据包进行校验,检测所述数据包是否为误码包;存储模块,用于若所述数据包为误码包,则存储所述误码包,并通过所述接收模块重新接收所述对端发送的数据包;拼包模块,用于当重新接收所述对端发送的数据包的次数大于预设阈值时,根据存储的多个误码包拼凑得到正确的数据包。在其中一个实施例中,所述装置还包括:获取模块,用于获取通讯协议中约定的重发最大次数及数据包最大长度;分配模块,用于根据所述重发最大次数及数据包最大长度分配缓存空间。在其中一个实施例中,所述拼包模块,包括:长度获取单元,用于获取存储的多个误码包的长度;提取单元,用于若长度相等的误码包的个数大于预设个数,则提取所述长度相等的误码包;比较单元,用于逐字节对提取的各个误码包进行比较,判断同一字节下所述提取的各个误码包的值是否相同;选取单元,用于若同一字节下所述提取的各个误码包的值相同,则选取具有相同值的字节下所述提取的各个误码包中相同的值;所述选取单元,还用于若同一字节下所述提取的各个误码包的值不同,则选取具有不同值的字节下所述提取的各个误码包中出现次数大于预设次数的值;拼凑单元,用于根据各个字节下选取的值拼凑得到数据包。在其中一个实施例中,所述选取单元,还用于若所述具有不同值的字节下所述提取的各个误码包中出现次数大于预设次数的值为多个,则根据所述提取的各个误码包的存储顺序从出现次数大于预设次数的多个值中选取最先出现的值。在其中一个实施例中,所述拼包模块,还包括:校验单元,用于提取拼凑得到的数据包中的校验码对所述拼凑得到的数据包进行校验,若校验通过,则所述拼凑得到的数据包为正确的数据包,若校验失败,则通过所述接收模块重新接收所述对端发送的数据包;发送单元,用于当重新接收所述对端发送的数据包的次数达到预设限定值时,则发送重试超限指令。上述数据传输方法及装置,接收对端发送的数据包,对数据包进行校验,若数据包被检测为误码包,则存储该误码包,并重新接收对端发送的数据包,当重新接收对端发送的数据包的次数大于预设阈值时,根据存储的多个误码包拼凑得到正确的数据包,即使因准周期性的信号干扰而导致接收的每个数据包发生误码一直无法校验通过,也依然可以得到正确的数据包,能够保证通讯正常,提高通讯效果。附图说明图1为一个实施例中终端的内部结构示意图;图2为一个实施例中数据传输方法的应用场景图;图3为一个实施例中数据传输方法的流程示意图;图4为一个实施例中分配缓存空间的流程示意图;图5为一个实施例中根据存储的多个误码包拼凑得到正确的数据包的流程示意图;图6为另一个实施例中根据存储的多个误码包拼凑得到正确的数据包的流程示意图;图7为一个实施例中数据传输装置的结构示意图;图8为另一个实施例中数据传输装置的结构示意图;图9为一个实施例中拼包模块的内部结构示意图;图10为另一个实施例中拼包模块的内部结构示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。图1为一个实施例中终端的内部结构示意图。如图1所示,该终端包括通过系统总线连接的处理器、非易失性存储介质、内存储器、网络接口和输入装置。其中,终端的非易失性存储介质存储有操作系统,还包括一种数据传输装置,该数据传输装置用于实现一种数据传输方法。该处理器用于提供计算和控制能力,支撑整个终端的运行。终端中的内存储器为非易失性存储介质中的数据传输装置的运行提供环境,该内存储器中可储存有计算机可读指令,该计算机可读指令被所述处理器执行时,可使得所述处理器执行一种数据传输方法。网络接口用于与其它终端进行网络通信,如接收计算机的数据传输请求、向其它MODEM传输数据等。终端的输入装置可以是显示屏上覆盖的触摸层,也可以本文档来自技高网...
数据传输方法及装置

【技术保护点】
一种数据传输方法,包括:接收对端发送的数据包;对所述数据包进行校验,检测所述数据包是否为误码包;若所述数据包为误码包,则存储所述误码包,并重新接收所述对端发送的数据包;当重新接收所述对端发送的数据包的次数大于预设阈值时,根据存储的多个误码包拼凑得到正确的数据包。

【技术特征摘要】
1.一种数据传输方法,包括:接收对端发送的数据包;对所述数据包进行校验,检测所述数据包是否为误码包;若所述数据包为误码包,则存储所述误码包,并重新接收所述对端发送的数据包;当重新接收所述对端发送的数据包的次数大于预设阈值时,根据存储的多个误码包拼凑得到正确的数据包。2.根据权利要求1所述的数据传输方法,其特征在于,在所述接收对端发送的数据包的步骤之前,还包括:获取通讯协议中约定的重发最大次数及数据包最大长度;根据所述重发最大次数及数据包最大长度分配缓存空间。3.根据权利要求1所述的数据传输方法,其特征在于,所述当重新接收所述数据包的次数大于预设阈值时,根据存储的多个误码包拼凑得到正确的数据包,包括:获取存储的多个误码包的长度;若长度相等的误码包的个数大于预设个数,则提取所述长度相等的误码包;逐字节对提取的各个误码包进行比较,判断同一字节下所述提取的各个误码包的值是否相同;若同一字节下所述提取的各个误码包的值相同,则选取具有相同值的字节下所述提取的各个误码包中相同的值;若同一字节下所述提取的各个误码包的值不同,则选取具有不同值的字节下所述提取的各个误码包中出现次数大于预设次数的值;根据各个字节下选取的值拼凑得到数据包。4.根据权利要求3所述的数据传输方法,其特征在于,在所述若同一字节下所述提取的各个误码包的值不同,则选取具有不同值的字节下所述提取的各个误码包中出现次数大于预设次数的值的步骤之后,还包括:若所述具有不同值的字节下所述提取的各个误码包中出现次数大于预设次数的值为多个,则根据所述提取的各个误码包的存储顺序从出现次数大于预设次数的多个值中选取最先出现的值。5.根据权利要求3或4所述的数据传输方法,其特征在于,在所述根据各个字节下选取的值拼凑得到数据包的步骤之后,还包括:提取拼凑得到的数据包中的校验码对所述拼凑得到的数据包进行校验;若校验通过,则所述拼凑得到的数据包为正确的数据包;若校验失败,则重新接收所述对端发送的数据包;当重新接收所述对端发送的数据包的次数达到预设限定值时,则发送重试超限...

【专利技术属性】
技术研发人员:董时舫董德强
申请(专利权)人:百富计算机技术深圳有限公司
类型:发明
国别省市:广东,44

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

1