一种电子设备大数据传输方法及系统
技术领域
本发明涉及计算机技术领域,特别指一种电子设备大数据传输方法及系统。
背景技术
随着科技的进步以及电子化办公的盛行,出现了越来越多的电子设备,出于数据备份、固件升级等原因,时常需要往电子设备里存储数据文件。针对电子设备的数据文件存储,传统上采用U盘等介质进行拷贝或者网络传输,U盘拷贝操作繁琐,效率低下,且有些电子设备无USB接口,无法通过U盘进行拷贝;通过网络传输,当数据文件过大时容易导致传输失败或者传输速度过慢。
因此,如何提供一种电子设备大数据传输方法及系统,实现提升大数据文件的传输效率以及便捷性,成为一个亟待解决的问题。
发明内容
本发明要解决的技术问题,在于提供一种电子设备大数据传输方法及系统,实现提升大数据文件的传输效率以及便捷性。
第一方面,本发明提供了一种电子设备大数据传输方法,包括如下步骤:
步骤S10、上位机通过TCP协议与电子设备建立连接;
步骤S20、上位机通过FTP协议从服务器获取大数据文件;
步骤S30、上位机将所述大数据文件分包为若干个小数据文件,并将各所述小数据文件发送给电子设备;
步骤S40、电子设备接收并保存各所述小数据文件,对各所述小数据文件进行第一校验后,将各所述小数据文件组合成大数据文件,并对组合成的所述大数据文件进行第二校验,完成大数据文件的传输。
进一步地,所述步骤S10具体为:
上位机基于TCP协议,通过组播的方式向同网段内的各电子设备持续发送连接命令,并实时监测各电子设备的应答,当接收到电子设备返回的允许连接应答时,与对应的电子设备建立连接,并获取电子设备单次允许接收文件的容量上限。
进一步地,所述步骤S20具体为:
上位机通过FTP协议向服务器发送大数据文件获取请求,服务器基于所述大数据文件获取请求里携带的文件名以及文件地址检索大数据文件,并将检索的所述大数据文件通过FTP协议发送给上位机。
进一步地,所述步骤S30具体为:
上位机记录所述大数据文件的总文件大小,基于所述容量上限将大数据文件拆分为n个子文件,分别对各子文件进行CRC校验生成第一校验码,按序创建n个数据存储地址,n为正整数;
上位机分别将各所述子文件、对应的第一校验码、总文件大小以及总个数n重新打包为XML格式的小数据文件,并基于各所述小数据文件的文件序号对小数据文件进行重命名后,依次存储至各所述数据存储地址对应的存储空间内;
上位机依次从各所述数据存储地址中读取对应的小数据文件发送给电子设备。
进一步地,所述步骤S40具体包括:
步骤S41、电子设备接收并保存各所述小数据文件,基于XML协议对各所述小数据文件进行解析,获取所述子文件、第一校验码、总文件大小以及总个数n;
步骤S42、电子设备对各所述子文件进行CRC校验生成第二校验码,判断所述第一校验码与第二校验码是否相等,若是,则第一校验通过,并进入步骤S43;若否,则第一校验不通过,向上位机重新获取对应文件序号的所述小数据文件;
步骤S43、电子设备基于所述总个数n判断是否已经接收完所有的小数据文件,并都通过第一校验,若是,则进入步骤S44;若否,则进入步骤S42;
步骤S44、电子设备基于各所述小数据文件的文件名,依序对各所述子文件进行组合得到大数据文件;
步骤S45、电子设备基于所述总文件大小,对组合成的大数据文件的文件大小进行第二校验,判断二者是否相等,若是,则第二校验通过,大数据文件传输成功;若否,则第二校验失败,大数据文件传输失败。
第二方面,本发明提供了一种电子设备大数据传输系统,包括如下模块:
电子设备连接模块,用于上位机通过TCP协议与电子设备建立连接;
大数据文件获取模块,用于上位机通过FTP协议从服务器获取大数据文件;
大数据文件分包模块,用于上位机将所述大数据文件分包为若干个小数据文件,并将各所述小数据文件发送给电子设备;
大数据文件组合模块,用于电子设备接收并保存各所述小数据文件,对各所述小数据文件进行第一校验后,将各所述小数据文件组合成大数据文件,并对组合成的所述大数据文件进行第二校验,完成大数据文件的传输。
进一步地,所述电子设备连接模块具体为:
上位机基于TCP协议,通过组播的方式向同网段内的各电子设备持续发送连接命令,并实时监测各电子设备的应答,当接收到电子设备返回的允许连接应答时,与对应的电子设备建立连接,并获取电子设备单次允许接收文件的容量上限。
进一步地,所述大数据文件获取模块具体为:
上位机通过FTP协议向服务器发送大数据文件获取请求,服务器基于所述大数据文件获取请求里携带的文件名以及文件地址检索大数据文件,并将检索的所述大数据文件通过FTP协议发送给上位机。
进一步地,所述大数据文件分包模块具体为:
上位机记录所述大数据文件的总文件大小,基于所述容量上限将大数据文件拆分为n个子文件,分别对各子文件进行CRC校验生成第一校验码,按序创建n个数据存储地址,n为正整数;
上位机分别将各所述子文件、对应的第一校验码、总文件大小以及总个数n重新打包为XML格式的小数据文件,并基于各所述小数据文件的文件序号对小数据文件进行重命名后,依次存储至各所述数据存储地址对应的存储空间内;
上位机依次从各所述数据存储地址中读取对应的小数据文件发送给电子设备。
进一步地,所述大数据文件组合模块具体包括:
小数据文件解析单元,用于电子设备接收并保存各所述小数据文件,基于XML协议对各所述小数据文件进行解析,获取所述子文件、第一校验码、总文件大小以及总个数n;
第一校验单元,用于电子设备对各所述子文件进行CRC校验生成第二校验码,判断所述第一校验码与第二校验码是否相等,若是,则第一校验通过,并进入校验个数验证单元;若否,则第一校验不通过,向上位机重新获取对应文件序号的所述小数据文件;
校验个数验证单元,用于电子设备基于所述总个数n判断是否已经接收完所有的小数据文件,并都通过第一校验,若是,则进入小数据文件组合单元;若否,则进入第一校验单元;
小数据文件组合单元,用于电子设备基于各所述小数据文件的文件名,依序对各所述子文件进行组合得到大数据文件;
第二校验单元,用于电子设备基于所述总文件大小,对组合成的大数据文件的文件大小进行第二校验,判断二者是否相等,若是,则第二校验通过,大数据文件传输成功;若否,则第二校验失败,大数据文件传输失败。
本发明的优点在于:
1、通过将大数据文件基于电子设备单次允许接收文件的容量上限分包为若干个小数据文件,避免因大数据文件过大而导致传输失败,单独传输大小更小的小数据文件能提升传输速度,且其中某个小数据文件传输失败时,只请求重发对应的小数据文件即可,不必重发整个大数据文件,且不必像传统上接插U盘,最终极大的提升了大数据文件的传输效率以及便捷性。
2、通过将子文件、第一校验码、总文件大小以及总个数n重新打包为小数据文件,并基于文件序号对小数据文件进行重命名,电子设备接收到小文件后,可通过第一校验码判断子文件是否存在数据丢失,若存在数据丢失则重新请求发送对应的小数据文件,通过总文件大小判断组合成的大数据文件的大小是否产生变化,通过总个数n判断是否已经接收完成所有的小数据文件,通过文件序号对子文件进行排序组合,避免产生错乱,最终极大的提升了大数据文件传输的安全性以及质量。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1是本发明一种电子设备大数据传输方法的流程图。
图2是本发明一种电子设备大数据传输系统的结构示意图。
图3是本发明的硬件架构图。
具体实施方式
本申请实施例中的技术方案,总体思路如下:通过将大数据文件基于电子设备单次允许接收文件的容量上限分包为若干个小数据文件进行传输,避免因文件过大而导致传输失败,单独传输更小的文件以提升传输速度,且其中某个小数据文件传输失败时,只请求重发对应的小数据文件即可,不必重发整个大数据文件,以提升大数据文件的传输效率以及便捷性。
请参照图1至图3所示,本发明一种电子设备大数据传输方法的较佳实施例,包括如下步骤:
步骤S10、上位机通过TCP协议与电子设备建立连接;
步骤S20、上位机通过FTP协议从服务器获取大数据文件;
步骤S30、上位机将所述大数据文件分包为若干个小数据文件,并将各所述小数据文件发送给电子设备;
步骤S40、电子设备接收并保存各所述小数据文件,对各所述小数据文件进行第一校验后,将各所述小数据文件组合成大数据文件,并对组合成的所述大数据文件进行第二校验,完成大数据文件的传输。
所述步骤S10具体为:
上位机基于TCP协议,通过组播的方式向同网段内的各电子设备持续发送连接命令,并实时监测各电子设备的应答,当接收到电子设备返回的允许连接应答时,与对应的电子设备建立连接,并获取电子设备单次允许接收文件的容量上限;所述容量上限取决于电子设备的硬件与可用内容空间。
所述步骤S20具体为:
上位机通过FTP协议向服务器发送大数据文件获取请求,服务器基于所述大数据文件获取请求里携带的文件名以及文件地址检索大数据文件,并将检索的所述大数据文件通过FTP协议发送给上位机。
所述步骤S30具体为:
上位机记录所述大数据文件的总文件大小,基于所述容量上限将大数据文件拆分为n个子文件,分别对各子文件进行CRC校验(循环冗余校验)生成第一校验码,按序创建n个数据存储地址,n为正整数;循环冗余校验码是一种具有检错、纠错能力的校验码;
例如大数据文件的总文件大小为100Mb,容量上限为20Mb时,则均分为大小为20Mb的5个子文件;大数据文件的总文件大小为90Mb,容量上限为20Mb时,可拆分4个20Mb的子文件,1个10Mb的子文件,或者拆分为5个90/5Mb的子文件;
上位机分别将各所述子文件、对应的第一校验码、总文件大小以及总个数n重新打包为XML格式的小数据文件,并基于各所述小数据文件的文件序号对小数据文件进行重命名后,依次存储至各所述数据存储地址对应的存储空间内,便于所述小数据文件传输失败时的重新发送;
上位机依次从各所述数据存储地址中读取对应的小数据文件,并通过TCP协议发送给电子设备。
所述步骤S40具体包括:
步骤S41、电子设备接收并保存各所述小数据文件,基于XML协议对各所述小数据文件进行解析,获取所述子文件、第一校验码、总文件大小以及总个数n;
步骤S42、电子设备对各所述子文件进行CRC校验生成第二校验码,判断所述第一校验码与第二校验码是否相等,若是,则第一校验通过,并进入步骤S43;若否,则第一校验不通过,向上位机重新获取对应文件序号的所述小数据文件,当重新获取3次均第一校验不通过,则提示大数据文件传输失败;
步骤S43、电子设备基于所述总个数n判断是否已经接收完所有的小数据文件,并都通过第一校验,若是,则进入步骤S44;若否,则进入步骤S42;
步骤S44、电子设备基于各所述小数据文件的文件名,依序对各所述子文件进行组合得到大数据文件;
步骤S45、电子设备基于所述总文件大小,对组合成的大数据文件的文件大小进行第二校验,判断二者是否相等,若是,则第二校验通过,大数据文件传输成功;若否,则第二校验失败,大数据文件传输失败。
一种电子设备大数据传输系统的较佳实施例,包括如下模块:
电子设备连接模块,用于上位机通过TCP协议与电子设备建立连接;
大数据文件获取模块,用于上位机通过FTP协议从服务器获取大数据文件;
大数据文件分包模块,用于上位机将所述大数据文件分包为若干个小数据文件,并将各所述小数据文件发送给电子设备;
大数据文件组合模块,用于电子设备接收并保存各所述小数据文件,对各所述小数据文件进行第一校验后,将各所述小数据文件组合成大数据文件,并对组合成的所述大数据文件进行第二校验,完成大数据文件的传输。
所述电子设备连接模块具体为:
上位机基于TCP协议,通过组播的方式向同网段内的各电子设备持续发送连接命令,并实时监测各电子设备的应答,当接收到电子设备返回的允许连接应答时,与对应的电子设备建立连接,并获取电子设备单次允许接收文件的容量上限;所述容量上限取决于电子设备的硬件与可用内容空间。
所述大数据文件获取模块具体为:
上位机通过FTP协议向服务器发送大数据文件获取请求,服务器基于所述大数据文件获取请求里携带的文件名以及文件地址检索大数据文件,并将检索的所述大数据文件通过FTP协议发送给上位机。
所述大数据文件分包模块具体为:
上位机记录所述大数据文件的总文件大小,基于所述容量上限将大数据文件拆分为n个子文件,分别对各子文件进行CRC校验(循环冗余校验)生成第一校验码,按序创建n个数据存储地址,n为正整数;循环冗余校验码是一种具有检错、纠错能力的校验码;
例如大数据文件的总文件大小为100Mb,容量上限为20Mb时,则均分为大小为20Mb的5个子文件;大数据文件的总文件大小为90Mb,容量上限为20Mb时,可拆分4个20Mb的子文件,1个10Mb的子文件,或者拆分为5个90/5Mb的子文件;
上位机分别将各所述子文件、对应的第一校验码、总文件大小以及总个数n重新打包为XML格式的小数据文件,并基于各所述小数据文件的文件序号对小数据文件进行重命名后,依次存储至各所述数据存储地址对应的存储空间内,便于所述小数据文件传输失败时的重新发送;
上位机依次从各所述数据存储地址中读取对应的小数据文件,并通过TCP协议发送给电子设备。
所述大数据文件组合模块具体包括:
小数据文件解析单元,用于电子设备接收并保存各所述小数据文件,基于XML协议对各所述小数据文件进行解析,获取所述子文件、第一校验码、总文件大小以及总个数n;
第一校验单元,用于电子设备对各所述子文件进行CRC校验生成第二校验码,判断所述第一校验码与第二校验码是否相等,若是,则第一校验通过,并进入校验个数验证单元;若否,则第一校验不通过,向上位机重新获取对应文件序号的所述小数据文件,当重新获取3次均第一校验不通过,则提示大数据文件传输失败;
校验个数验证单元,用于电子设备基于所述总个数n判断是否已经接收完所有的小数据文件,并都通过第一校验,若是,则进入小数据文件组合单元;若否,则进入第一校验单元;
小数据文件组合单元,用于电子设备基于各所述小数据文件的文件名,依序对各所述子文件进行组合得到大数据文件;
第二校验单元,用于电子设备基于所述总文件大小,对组合成的大数据文件的文件大小进行第二校验,判断二者是否相等,若是,则第二校验通过,大数据文件传输成功;若否,则第二校验失败,大数据文件传输失败。
综上所述,本发明的优点在于:
1、通过将大数据文件基于电子设备单次允许接收文件的容量上限分包为若干个小数据文件,避免因大数据文件过大而导致传输失败,单独传输大小更小的小数据文件能提升传输速度,且其中某个小数据文件传输失败时,只请求重发对应的小数据文件即可,不必重发整个大数据文件,且不必像传统上接插U盘,最终极大的提升了大数据文件的传输效率以及便捷性。
2、通过将子文件、第一校验码、总文件大小以及总个数n重新打包为小数据文件,并基于文件序号对小数据文件进行重命名,电子设备接收到小文件后,可通过第一校验码判断子文件是否存在数据丢失,若存在数据丢失则重新请求发送对应的小数据文件,通过总文件大小判断组合成的大数据文件的大小是否产生变化,通过总个数n判断是否已经接收完成所有的小数据文件,通过文件序号对子文件进行排序组合,避免产生错乱,最终极大的提升了大数据文件传输的安全性以及质量。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。