【技术实现步骤摘要】
一种文件传输方法、装置、系统及电子设备
本专利技术涉及计算机网络
,特别是涉及一种文件传输方法、装置、系统及电子设备。
技术介绍
FTP(FileTransferProtocol,文件传输协议)为标准的应用层协议,在FTP中规定传输层使用两条TCP(TransmissionControlProtocol,传输控制协议)连接来完成文件传输的任务,其中一条TCP连接用来交互控制指令(比如待传输文件的文件名、文件列表等),另外一条TCP连接用来传输待传输文件的数据报文。TCP作为网络传输层的可靠传输协议,可以保证接收端收到的数据报文是有序到达的,同时可以自动处理丢包重传。发送端每发送一个数据报文,若接收端成功接收到该数据报文,则会回复一个确认报文,如果发送端在预设时间内未接收到确认报文,则认为该数据报文在传输过程中丢失,需重传该数据报文。然而,由于网络环境越来越复杂,TCP传输中判断数据报文是否丢失,依赖于接收端回复的确认报文,在高延迟、高丢包率的网络环境中,接收端在回复确认报文时也有可能发生确认报文的丢失。如果确认报文丢失,即使接收端成功接收到数据报文,发送端仍然会因为未接收到确认报文而认为数据报文丢失,则会重传该数据报文,导致不必要的数据报文重传,浪费网络带宽资源,影响网络传输效率。
技术实现思路
本专利技术实施例的目的在于提供一种文件传输方法、装置、系统及电子设备,以避免网络带宽资源的浪费、提高网络传输效率。具体技术方案如下:第一方面,本专利技术实施例提供了一种文件传
【技术保护点】
1.一种文件传输方法,其特征在于,应用于发送端,所述方法包括:/n采用预设的传输层非可靠传输协议,通过目标接口,发送各待传输数据报文至接收端,所述目标接口为在与所述接收端建立传输控制协议TCP连接时确定的用于传输待传输文件的接口,所述待传输数据报文包括所述待传输文件的分片数据;/n在确定各待传输数据报文发送完毕后,获取所述接收端反馈的所述待传输文件的分片丢失信息;/n根据所述接收端反馈的分片丢失信息,确定所述待传输文件的分片数据中待重传的分片数据;/n采用所述传输层非可靠传输协议,通过所述目标接口,发送包括所述待重传的分片数据的待传输数据报文至所述接收端。/n
【技术特征摘要】
1.一种文件传输方法,其特征在于,应用于发送端,所述方法包括:
采用预设的传输层非可靠传输协议,通过目标接口,发送各待传输数据报文至接收端,所述目标接口为在与所述接收端建立传输控制协议TCP连接时确定的用于传输待传输文件的接口,所述待传输数据报文包括所述待传输文件的分片数据;
在确定各待传输数据报文发送完毕后,获取所述接收端反馈的所述待传输文件的分片丢失信息;
根据所述接收端反馈的分片丢失信息,确定所述待传输文件的分片数据中待重传的分片数据;
采用所述传输层非可靠传输协议,通过所述目标接口,发送包括所述待重传的分片数据的待传输数据报文至所述接收端。
2.根据权利要求1所述的方法,其特征在于,所述采用预设的传输层非可靠传输协议,通过目标接口,发送各待传输数据报文至接收端,包括:
采用预设的传输层非可靠传输协议,按照预设速率,通过目标接口,发送各待传输数据报文至接收端。
3.根据权利要求1所述的方法,其特征在于,所述传输层非可靠传输协议包括用户传输协议UDP;所述目标接口包括UDP套接字;
所述目标接口的确定方式,包括:
在与所述接收端建立TCP连接时,获取所述接收端的第一IP地址及所述接收端分配的第一UDP协议端口号;
获取所述发送端自身的第二IP地址,并分配第二UDP协议端口号;
确定包括所述UDP、所述第一IP地址、所述第一UDP协议端口号、所述第二IP地址及所述第二UDP协议端口号的UDP套接字;
确定所述UDP套接字为目标接口;
所述采用预设的传输层非可靠传输协议,通过目标接口,发送各待传输数据报文至接收端,包括:
通过所述UDP套接字,发送各待传输数据报文至所述接收端。
4.根据权利要求1所述的方法,其特征在于,在所述确定各待传输数据报文发送完毕之前,所述方法还包括:
接收由所述接收端周期性反馈的所述待传输文件的分片丢失信息;
所述在确定各待传输数据报文发送完毕后,获取所述接收端反馈的所述待传输文件的分片丢失信息,包括:
在确定各待传输数据报文发送完毕后,获取已接收到的分片丢失信息中最新接收到的分片丢失信息。
5.根据权利要求1所述的方法,其特征在于,所述分片丢失信息中包括未被所述接收端成功接收的分片数据的第一标识信息;
所述根据所述接收端反馈的分片丢失信息,确定所述待传输文件的分片数据中待重传的分片数据,包括:
根据所述接收端反馈的分片丢失信息中的第一标识信息,确定所述待传输文件的分片数据中未被所述接收端成功接收的分片数据为待重传的分片数据。
6.根据权利要求1所述的方法,其特征在于,在所述采用所述传输层非可靠传输协议,通过所述目标接口,发送包括所述待重传的分片数据的待传输数据报文至所述接收端之后,所述方法还包括:
在确定包括所述待重传的分片数据的待传输数据报文均发送完毕后,获取所述接收端反馈的分片丢失信息;
根据所述接收端反馈的分片丢失信息,判断是否仍然存在待重传的分片数据;
若是,则返回执行所述采用所述传输层非可靠传输协议,通过所述目标接口,发送包括所述待重传的分片数据的待传输数据报文至所述接收端;
否则,确定所述待传输文件的所有分片数据均被所述接收端成功接收。
7.一种文件传输方法,其特征在于,应用于接收端,所述方法包括:
采用预设的传输层非可靠传输协议,通过目标接口,接收发送端发送的各待传输数据报文,所述目标接口为在与所述发送端建立TCP连接时确定的用于传输待传输文件的接口,所述待传输数据报文包括所述待传输文件的分片数据及所述分片数据的附属信息;
根据所述附属信息,将所述分片数据存储至预先分配的所述待传输文件对应的存储位置,并更新所述待传输文件的分片丢失信息中所述分片数据的标识信息为已被所述接收端成功接收的第二标识信息,所述分片丢失信息中还包括未被所述接收端成功接收的分片数据的第一标识信息;
反馈更新后的分片丢失信息至所述发送端。
8.根据权利要求7所述的方法,其特征在于,所述反馈更新后的分片丢失信息至所述发送端,包括:
周期性地反馈更新后的分片丢失信息至所述发送端。
9.根据权利要求7所述的方法,其特征在于,所述传输层非可靠传输协议包括用户传输协议UDP;所述目标接口包括UDP套接字;
所述目标接口的确定方式,包括:
在与所述发送端建立TCP连接时,获取所述接收端自身的第一IP地址,并分配第一UDP协议端口号;
获取所述发送端的第二IP地址,以及所述发送端分配的第二UDP协议端口号;
确定包括所述UDP、所述第一IP地址、所述第一UDP协议端口号、所述第二IP地址及所述第二UDP协议端口号的UDP套接字;
确定所述UDP套接字为目标接口;
所述采用预设的传输层非可靠传输协议,通过目标接口,接收发送端发送的各待传输数据报文,包括:
通过所述UDP套接字,接收所述发送端发送的各待传输数据报文。
10.一种文件传输装置,其特征在于,应用于发送端,所述装置包括:
发送模块,用于采用预设的传输层非可靠传输协议,通过目标接口,发送各待传输数据报文至接收端,所述目标接口为在与所述接收端建立传输控制协议TCP连接时确定的用于传输待传输文件的接口,所述待传输数据报文包括所述待传输文件的分片数据;
获取模块,用于在确定各待传输数据报文发送完毕后,获取所述接收端反馈的所述待传输文件的分片丢失信息;
确定模块,用于根据所述接收端反馈的分片丢失信息,确定所述待传输文件的分片数据中待重传的分片数据;
所述发送模块,还用于采用所述传输层非可靠传输协议,通过所述目标接口,发送包括所述待重传的分片数据的待传输数据报文至所述接收端。
11.根据权利要求10所述的装置,其特征在于,...
【专利技术属性】
技术研发人员:应鸿浩,刘摇平,
申请(专利权)人:杭州海康威视系统技术有限公司,
类型:发明
国别省市:浙江;33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。