当前位置: 首页 > 专利查询>浙江大学专利>正文

一种文件上传的系统、方法及装置制造方法及图纸

技术编号:11328453 阅读:130 留言:0更新日期:2015-04-22 18:57
本发明专利技术实施例公开了一种文件上传的系统,包括:用户终端对待上传文件进行完整性校验,得到第一校验值;将该文件分为多个数据包,将多个数据包划分为多个分组;向服务器发送文件上传请求;发送分组中的数据包;当服务器接收到分组的全部数据包时发送分组上传完成提示;若用户终端未接收到分组上传完成提示则发送请求报文;服务器根据请求报文回传未收到数据包的分包号;用户终端根据该分包号向服务器重新上传对应数据包;当文件上传成功后,服务器对文件进行完整性校验,得到第二校验值;第一校验值与第二校验值相同时,确定该文件全部上传成功。本发明专利技术实施例能够提高文件的上传的成功率,实时将未收到数据包重新上传,保证文件传输的完整性。

【技术实现步骤摘要】

本专利技术实施例涉及通信领域,尤其涉及一种文件上传的系统、方法及装置
技术介绍
在现代通信
中,数据的采集、信息的共享和文件的传输都显得至关重要。然而由于通信网络的信号和通信信道等因素的不确定性,使得通信系统在可靠性方面存在着一定的隐患,比如数据包丢失、数据包损坏或数据包欺骗等。由于数据包的长度有限制,当要传输大数据时,如大型文件,则需要将其进行分包来传输。现有技术中针对文件的传输主要有几种方案:1、发送方将文件拆分成固定大小的数据包,并对每个数据包添加数据包号,每隔一定的时间根据数据包号由小到大的顺序传输数据包到接收方,接收方在收到最大数据包号或在规定时间到了之后向发送方发送确认报文。2、借鉴用户数据报协议(UDP,User Datagram Protocol)报文传输时的分包、组包与丢包重传机制,接收方每收到一个数据包就回确认报文,直到所有数据包发送完毕。3、在文件传输过程中采用哈希算法对文件内容进行校验,再利用哈希算法对该计算的哈希值进行二次校验。上述两种现有技术中,虽然第一种方案的数据包开销小,但发送方无法实时了解数据包传输的状态。而第二种方案虽然可以实时了解数据包传输的状态,但是对数据包的数量要求很大。两种方案都没有对整个文件的完整性进行校验,无法判断文件在传输过程中内容是否遭到了破坏,第三种方案能够大大提升文件传输的可靠性,但相对来说略显复杂,增加了计算哈希值的开销。
技术实现思路
本专利技术实施例提供了一种文件上传的系统、方法及装置,该文件上传的系统可用于进行完整性校验、划分数据包处理、分组发送数据包、实时丢包重传及响应,能够有效地加强数据传输的可靠性,而且实现简单,链路开销小。有鉴于此,本专利技术第一方面提供一种文件上传的系统,包括:用户终端与服务器;所述用户终端用于发送文件;所述服务器用于接收所述文件;所述文件上传的系统用于进行完整性校验、划分数据包处理、分组发送数据包、实时丢包重传及响应;所述用户终端对待上传文件进行所述完整性校验,得到第一校验值;所述用户终端将所述待上传文件分为多个数据包,并将所述多个数据包划分为多个分组,每个分组包括至少一个数据包,每个数据包中包含各自的分包号,所述分包号用于所述服务器确定是否存在丢失的数据包;所述用户终端向所述服务器发送文件上传请求,所述文件上传请求中携带所述待上传文件划分得到的数据包总个数以及分组个数;当所述服务器接收所述用户终端发送的所述文件上传请求后,向所述用户终端发送上传提示;所述用户终端接收到所述服务器发送的上传提示后,向所述服务器发送分组中的数据包;当所述服务器接收到所述分组的全部数据包时,向所述用户终端发送分组上传完成提示;若所述用户终端未接收到分组上传完成提示,则所述用户终端向所述服务器发送请求报文;所述服务器根据所述用户终端发送的请求报文回传分组中未收到数据包的分包号;所述用户终端根据所述分组中未收到数据包的分包号向所述服务器重新上传所述分包号对应的数据包;当确定所述待上传文件全部上传成功后,所述服务器对已经全部上传成功的文件进行完整性校验,得到第二校验值;当所述第一校验值与所述第二校验值相同时,用户终端确定所述待上传文件全部上传成功。结合本专利技术实施例的第一方面,在第一种可能的实现方式中,所述当所述服务器接收所述用户终端发送的所述文件上传请求后,向所述用户终端发送上传提示之前,所述系统还包括:若所述用户终端未接收到所述服务器发送的上传提示,则继续发送文件上传请求;用户终端判断所述文件上传请求次数是否超过预置发送次数;若未超过,则所述用户终端重新向服务器发送文件上传请求;若超过,则所述用户终端终止所述待上传文件的上传。结合本专利技术实施例的第一方面,在第二种可能的实现方式中,所述当所述服务器接收到所述每个分组的全部数据包时,向所述用户发送分组上传完成提示之后,所述系统还包括:当所述用户终端接收到所述分组上传完成提示时,判断剩余数据包个数是否大于每组中数据包的总数;若剩余数据包个数大于每组中数据包的总数,则所述用户终端根据分包号向所述服务器发送数据包;若剩余数据包个数小于等于每组中数据包的总数,则所述用户终端发送所有剩余的数据包。本专利技术第二方面提供一种文件上传的方法,包括:对待上传文件进行完整性校验,得到第一校验值;将所述待上传文件划分为多个数据包;向服务器发送文件上传请求,所述文件上传请求中携带所述待上传文件划分得到的数据包总个数;接收到所述服务器发送的上传提示后,向所述服务器发送所述多个数据包,每个数据包中包含各自的分包号,所述分包号用于所述服务器根据所述数据包的总个数确定所述待上传文件是否全部上传成功;当所述待上传文件中所有的数据包上传成功后,接收所述服务器发送的第二校验值,所述第二校验值为所述服务器确定所述待上传文件全部上传完成后,对所述待上传文件进行完整性校验得到的;当所述第一校验值与所述第二校验值相同时,确定所述待上传文件全部上传成功。结合本专利技术实施例的第二方面,在第一种可能的实现方式中,所述将待上传文件划分为多个数据包之后,还包括:将所述多个数据包划分为多个分组,每个分组包括至少一个数据包;所述接收到所述服务器发送的上传提示后,向所述服务器发送所述多个数据包,每个数据包中包含各自的分包号,所述分包号用于所述服务器根据所述数据包的总个数确定所述待上传文件是否全部上传成功包括:接收到所述服务器发送的分组上传提示后,判断所述待上传文件中所有的数据包个数是否大于分组要求的分包个数;若所述待上传文件中所有的数据包个数大于分组要求的分包个数时,则根据分包号由小至大向服务器依次发送分组中所有的数据包;所述分组中所有的数据包发送完成后,依次发送下一组中所有的数据包;若所述待上传文件中所有的数据包个数小于等于分组要求的分包个数时,则向所述服务器一次性发送所述所有的数据包。结合本专利技术实施例的第二方面,在第二种可能的实现方式中,所述向服务器发送文件上传请求,所述文件上传请求中携带所述待上传文件划分得到的数据包总个数包括:向所述服务器发送文件上传请求;等待所述服务器发送的上传提示;若未收到上传提示,则根据预置的最大发送文件上传请求次数,向所述服务器发送文件上传请求;当超过预置的最大发送文件上传请求次数时,则中断文件上传。结合本专利技术实施例的第二方面的第一种可能的实现方式,在第三种可能的实现方式中,所述若所述待上传文件中所有的数据包个数大于分组要求的分包个数时,则根据分包号由小至大向服务器依次发送分组中所有的数据包之后,还包括:若未接收到所述服务器发送分组上传完成提示,则重新向所述服务器发送文件上传请求;接收所述服务器发送未收到的数据包的分包号;根据所述未收到的数据包的分包号发送所述分包号对应的数据包。本专利技术第三方面提供一种文件上传的方法,包括:接收所述用户终端发送的所述文件上传请求;根据所述文件上传请求,向所述用户终端发送所述文件分组上传提示;接收所述用户终端发送的所述多个数据包;根据每个数据包中包含的各自的分包号与所述文件上传请求中携带的所述待上传文件划分得到的数据包总个数,确定所述待上传文件是否全部上传成功;当确定所述待上传文件全部上传成功后,对已经全部上传成功的文件进行完整性校验,得到第二校验值;向所述用户终端发送所述第本文档来自技高网...

【技术保护点】
一种文件上传的系统,其特征在于,包括:用户终端与服务器;所述用户终端用于发送文件;所述服务器用于接收所述文件;所述文件上传的系统用于进行完整性校验、划分数据包处理、分组发送数据包、实时丢包重传及响应;所述用户终端对待上传文件进行所述完整性校验,得到第一校验值;所述用户终端将所述待上传文件分为多个数据包,并将所述多个数据包划分为多个分组,每个分组包括至少一个数据包,每个数据包中包含各自的分包号,所述分包号用于所述服务器确定是否存在丢失的数据包;所述用户终端向所述服务器发送文件上传请求,所述文件上传请求中携带所述待上传文件划分得到的数据包总个数以及分组个数;当所述服务器接收所述用户终端发送的所述文件上传请求后,向所述用户终端发送上传提示;所述用户终端接收到所述服务器发送的上传提示后,向所述服务器发送分组中的数据包;当所述服务器接收到所述分组的全部数据包时,向所述用户终端发送分组上传完成提示;若所述用户终端未接收到分组上传完成提示,则所述用户终端向所述服务器发送请求报文;所述服务器根据所述用户终端发送的请求报文回传分组中未收到数据包的分包号;所述用户终端根据所述分组中未收到数据包的分包号向所述服务器重新上传所述分包号对应的数据包;当确定所述待上传文件全部上传成功后,所述服务器对已经全部上传成功的文件进行完整性校验,得到第二校验值;当所述第一校验值与所述第二校验值相同时,用户终端确定所述待上传文件全部上传成功。...

【技术特征摘要】

【专利技术属性】
技术研发人员:冯冬芹黄家辉
申请(专利权)人:浙江大学
类型:发明
国别省市:浙江;33

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

1