数据传输方法、装置及存储介质制造方法及图纸

技术编号:20978843 阅读:39 留言:0更新日期:2019-04-29 18:44
本发明专利技术提出一种数据传输方法及装置,其中方法包括:获取待传输的数据包,以及数据包对应的目的数据节点的虚拟地址信息和真实地址信息;将携带数据包以及虚拟地址信息的数据报文发送至网络设备,以使网络设备根据虚拟地址信息查询端口列表,获取虚拟地址信息对应的各个端口,并对数据报文进行多份复制,分别通过各个端口发送出去,直至到达目的数据节点;在获取到所有目的数据节点返回的携带真实地址信息的确认报文时,确定数据包传输完成,获取下一个待传输的数据包进行传输,从而能够通过对待传输的数据包的一次传输,实现各个目的数据节点都能接收到数据包,且各个目的数据节点并行进行确认,确认时间短,提高了数据写入效率。

Data transmission method, device and storage medium

The invention provides a data transmission method and device, which includes: acquiring the data packet to be transmitted, virtual address information and real address information of the destination data node corresponding to the data packet; sending the data message carrying the data packet and virtual address information to the network device, so that the network device can query the port list according to the virtual address information and obtain the virtual place. Each port corresponding to address information is copied, and the data message is sent out through each port until it reaches the destination data node. When the confirmation message with real address information returned by all destination data nodes is obtained, the data packet transmission is completed, and the next data packet to be transmitted is obtained for transmission, so that it can be transmitted through the treatment of transmission. The data package can be received by each destination data node in one transmission, and each destination data node can confirm in parallel, so the confirmation time is short and the efficiency of data writing is improved.

【技术实现步骤摘要】
数据传输方法、装置及存储介质
本专利技术涉及数据处理
,尤其涉及一种数据传输方法、装置及存储介质。
技术介绍
目前,分布式文件系统,常用的有HDFS(HadoopDistributedFileSystem,Hadoop分布式文件系统),Swift,Ceph等。在HDFS中,对文件的数据写入过程为,客户端调用分布式文件系统创建文件,并获取分布式文件系统返回的文件输出节点;采用文件输出节点获取客户端写入的数据,生成多个数据包,并将多个数据包依次发送给文件对应的各个数据节点进行存储。然而,上述方案中,需要依次将数据包发送给各个数据节点,流量占用大,且数据包的写入和确认时间被拉长,导致数据写入时间长,写入效率差。
技术实现思路
本专利技术旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本专利技术的第一个目的在于提出一种数据传输方法,用于解决现有技术中数据写入时间长,写入效率差的问题。本专利技术的第二个目的在于提出一种数据传输装置。本专利技术的第三个目的在于提出另一种数据传输装置。本专利技术的第四个目的在于提出一种非临时性计算机可读存储介质。本专利技术的第五个目的在于提出一种计算机程序产品。为达上述目的,本专利技术第一方面实施例提出了一种数据传输方法,包括:获取待传输的数据包,以及所述数据包对应的目的数据节点的虚拟地址信息和真实地址信息;将携带所述数据包以及所述虚拟地址信息的数据报文发送至网络设备,以使所述网络设备根据所述虚拟地址信息查询端口列表,获取所述虚拟地址信息对应的各个端口,并对所述数据报文进行多份复制,分别通过所述各个端口发送出去,直至到达所述目的数据节点;判断是否获取到所有所述目的数据节点返回的携带真实地址信息的确认报文;若获取到所有所述目的数据节点返回的确认报文,则确定所述数据包传输完成,获取下一个待传输的数据包进行传输。进一步的,所述获取待传输的数据包,包括:获取待写入的数据,以及对应的待写入文件节点;对所述数据进行拆分,生成至少一个待传输的数据包;获取所述待写入文件节点对应的数据节点,将所述待写入文件节点对应的数据节点确定为所述目的数据节点;获取所述目的数据节点的虚拟地址信息和真实地址信息。进一步的,所述获取待传输的数据包之前,还包括:获取数据写入请求;根据所述数据写入请求,创建文件节点以及对应的数据节点;为所述文件节点对应的数据节点分配相同的虚拟地址信息,以使所述数据节点通过网络设备返回应答报文,以使所述网络设备在接收到所述应答报文时,将所述应答报文发送出去,并获取接收所述应答报文时的端口,根据所述虚拟地址信息和所述端口生成端口列表;向所述数据节点发送携带所述虚拟地址信息的请求连接报文;在获取到所述文件节点对应的各个数据节点返回的携带真实地址信息的确认报文时,确定连接建立成功,启动数据传输操作。进一步的,所述的方法还包括:若未获取到所有目的数据节点返回的确认报文,则重新发送所述数据报文,并计算重发次数;若获取到所有目的数据节点返回的确认报文,且所述重发次数满足预设次数阈值,则停止重发,获取下一个待传输的数据包进行传输。进一步的,所述的方法还包括:若所述重发次数不满足预设次数阈值,则获取未返回确认报文的第一目的数据节点;向所述第一目的数据节点发送通知报文,以使所述第一目的数据节点根据所述通知报文发起断开连接动作,以断开连接,并返回回收报文,以使所述网络设备根据所述回收报文删除所述端口列表中的相应端口;根据所述回收报文,确定与所述第一目的数据节点之间的连接关系已断开。进一步的,所述根据所述回收报文,确定与所述第一目的数据节点之间的连接关系已断开之后,还包括:创建新数据节点;为所述新数据节点分配所述虚拟地址信息,以使所述新数据节点通过网络设备返回应答报文,以使所述网络设备根据所述应答报文,更新端口列表;向所述新数据节点发送携带所述虚拟地址信息的请求连接报文;在获取到所述新数据节点返回的携带真实地址信息的确认报文时,确定连接建立成功。进一步的,所述根据所述回收报文,确定与所述第一目的数据节点之间的连接关系已断开之后,还包括:在获取到待传输的数据包时,将携带所述数据包以及所述第一目的数据节点的真实地址信息的数据报文发送至网络设备,以通过所述网络设备发送至所述第一目的数据节点。进一步的,所述的方法还包括:判断所述数据是否已写完,以及所述待写入文件节点是否发生变更;若所述数据已写完,或者所述待写入文件节点发生变更,则向所有目的数据节点发送通知报文,以使所有目的数据节点根据所述通知报文发起断开连接动作,以断开连接,并返回回收报文,以使所述网络设备根据所述回收报文删除所述端口列表中与所述虚拟地址信息对应的所有端口;在接收到所有目的数据节点的回收报文后,确定与所有目的数据节点之间的连接关系已断开。本专利技术实施例的数据传输方法,通过获取待传输的数据包,以及数据包对应的目的数据节点的虚拟地址信息和真实地址信息;将携带数据包以及虚拟地址信息的数据报文发送至网络设备,以使网络设备根据虚拟地址信息查询端口列表,获取虚拟地址信息对应的各个端口,并对数据报文进行多份复制,分别通过各个端口发送出去,直至到达目的数据节点;在获取到所有目的数据节点返回的携带真实地址信息的确认报文时,确定数据包传输完成,获取下一个待传输的数据包进行传输,从而能够通过对待传输的数据包的一次传输,实现各个目的数据节点都能接收到数据包,流量占用小,且各个目的数据节点并行进行确认,使得数据写入和确认时间很短,提高了数据写入效率。为达上述目的,本专利技术第二方面实施例提出了一种数据传输装置,包括:获取模块,用于获取待传输的数据包,以及所述数据包对应的目的数据节点的虚拟地址信息和真实地址信息;发送模块,用于将携带所述数据包以及所述虚拟地址信息的数据报文发送至网络设备,以使所述网络设备根据所述虚拟地址信息查询端口列表,获取所述虚拟地址信息对应的各个端口,并对所述数据报文进行多份复制,分别通过所述各个端口发送出去,直至到达所述目的数据节点;判断模块,用于判断是否获取到所有所述目的数据节点返回的携带真实地址信息的确认报文;确定模块,用于在获取到所有所述目的数据节点返回的确认报文时,确定所述数据包传输完成,获取下一个待传输的数据包进行传输。进一步的,所述获取模块具体用于,获取待写入的数据,以及对应的待写入文件节点;对所述数据进行拆分,生成至少一个待传输的数据包;获取所述待写入文件节点对应的数据节点,将所述待写入文件节点对应的数据节点确定为所述目的数据节点;获取所述目的数据节点的虚拟地址信息和真实地址信息。进一步的,所述的装置还包括:第一创建模块和第一分配模块;所述获取模块,还用于获取数据写入请求;所述第一创建模块,用于根据所述数据写入请求,创建文件节点以及对应的数据节点;所述第一分配模块,用于为所述文件节点对应的数据节点分配相同的虚拟地址信息,以使所述数据节点通过网络设备返回应答报文,以使所述网络设备在接收到所述应答报文时,将所述应答报文发送出去,并获取接收所述应答报文时的端口,根据所述虚拟地址信息和所述端口生成端口列表;所述发送模块,还用于向所述数据节点发送携带所述虚拟地址信息的请求连接报文;所述确定模块,还用于在获取到所述文件节点对应的各个数据节点返回的携带真实地址信息的确认报本文档来自技高网...

【技术保护点】
1.一种数据传输方法,其特征在于,包括:获取待传输的数据包,以及所述数据包对应的目的数据节点的虚拟地址信息和真实地址信息;将携带所述数据包以及所述虚拟地址信息的数据报文发送至网络设备,以使所述网络设备根据所述虚拟地址信息查询端口列表,获取所述虚拟地址信息对应的各个端口,并对所述数据报文进行多份复制,分别通过所述各个端口发送出去,直至到达所述目的数据节点;判断是否获取到所有所述目的数据节点返回的携带真实地址信息的确认报文;若获取到所有所述目的数据节点返回的确认报文,则确定所述数据包传输完成,获取下一个待传输的数据包进行传输。

【技术特征摘要】
1.一种数据传输方法,其特征在于,包括:获取待传输的数据包,以及所述数据包对应的目的数据节点的虚拟地址信息和真实地址信息;将携带所述数据包以及所述虚拟地址信息的数据报文发送至网络设备,以使所述网络设备根据所述虚拟地址信息查询端口列表,获取所述虚拟地址信息对应的各个端口,并对所述数据报文进行多份复制,分别通过所述各个端口发送出去,直至到达所述目的数据节点;判断是否获取到所有所述目的数据节点返回的携带真实地址信息的确认报文;若获取到所有所述目的数据节点返回的确认报文,则确定所述数据包传输完成,获取下一个待传输的数据包进行传输。2.根据权利要求1所述的方法,其特征在于,所述获取待传输的数据包,包括:获取待写入的数据,以及对应的待写入文件节点;对所述数据进行拆分,生成至少一个待传输的数据包;获取所述待写入文件节点对应的数据节点,将所述待写入文件节点对应的数据节点确定为所述目的数据节点;获取所述目的数据节点的虚拟地址信息和真实地址信息。3.根据权利要求1所述的方法,其特征在于,所述获取待传输的数据包之前,还包括:获取数据写入请求;根据所述数据写入请求,创建文件节点以及对应的数据节点;为所述文件节点对应的数据节点分配相同的虚拟地址信息,以使所述数据节点通过网络设备返回应答报文,以使所述网络设备在接收到所述应答报文时,将所述应答报文发送出去,并获取接收所述应答报文时的端口,根据所述虚拟地址信息和所述端口生成端口列表;向所述数据节点发送携带所述虚拟地址信息的请求连接报文;在获取到所述文件节点对应的各个数据节点返回的携带真实地址信息的确认报文时,确定连接建立成功,启动数据传输操作。4.根据权利要求1所述的方法,其特征在于,还包括:若未获取到所有目的数据节点返回的确认报文,则重新发送所述数据报文,并计算重发次数;若获取到所有目的数据节点返回的确认报文,且所述重发次数满足预设次数阈值,则停止重发,获取下一个待传输的数据包进行传输。5.根据权利要求4所述的方法,其特征在于,还包括:若所述重发次数不满足预设次数阈值,则获取未返回确认报文的第一目的数据节点;向所述第一目的数据节点发送通知报文,以使所述第一目的数据节点根据所述通知报文发起断开连接动作,以断开连接,并返回回收报文,以使所述网络设备根据所述回收报文删除所述端口...

【专利技术属性】
技术研发人员:林鹏程
申请(专利权)人:杭州数梦工场科技有限公司
类型:发明
国别省市:浙江,33

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

1