CN106254202A - 一种基于喷泉码的多路并行传输方法以及装置 - Google Patents
一种基于喷泉码的多路并行传输方法以及装置 Download PDFInfo
- Publication number
- CN106254202A CN106254202A CN201610757584.6A CN201610757584A CN106254202A CN 106254202 A CN106254202 A CN 106254202A CN 201610757584 A CN201610757584 A CN 201610757584A CN 106254202 A CN106254202 A CN 106254202A
- Authority
- CN
- China
- Prior art keywords
- data packet
- coded data
- transmission
- tunnel
- packet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0006—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/56—Queue scheduling implementing delay-aware scheduling
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种基于喷泉码的多路并行传输方法以及装置。其中,所述方法包括:根据接收端地址将待发送的原始数据包分别进行缓存;判断缓存中原始数据包的数目是否达到预设数目或其等待时间是否超过预设值;若是,则将缓存中的原始数据包分别进行喷泉编码,得到编码数据包;获取用于传输编码数据包的多个隧道的整体状况,分为整体性能良好和整体性能不佳两种情况,由此选择相应的传输模式,在相应的传输模式下,根据编码数据包的度值为编码数据包选择相应的隧道,并在编码数据包传输过程中的不同阶段相应地调整其传输方式;在接收端设置反馈模块,使得发送端判断传输过程是否完成,从而实现原始数据包的多路并行传输,提升链路利用率和传输可靠性。
Description
技术领域
本发明涉及虚拟专用网络领域,具体地,涉及一种基于喷泉码的多路并行传输方法以及装置。
背景技术
隧道是实现虚拟专用网络(Virtual Private Network,VPN)的关键技术,基本功能是封装,主要利用隧道协议来实现。隧道协议把一种网络协议的数据帧或数据包封装进另一种网络协议的数据帧中,在两主机间建立虚拟专有连接,封装的数据包就像普通数据包一样进行传输,实现了在公用网络上传输私有数据。VPN隧道基于广泛分布的Internet网络,便于部署、成本低廉、可扩展性好,在企业网中得到广泛应用。然而,由于带宽限制、节点拥塞、防火墙过滤等因素的影响,隧道内会存在丢包,传输性能出现波动。如果隧道基于UDP(User Datagram Protocol,用户数据报协议)建立,丢包会导致网络传输可靠性降低,应用数据不能正确传输,影响用户体验;如果隧道基于TCP(Transmission Control Protocol,传输控制协议)建立,虽然TCP协议可以提高数据传输可靠性,但是丢包会导致网络中产生大量的重传包,严重影响网络吞吐量。
随着网络技术的快速发展,涌现出了大量的多媒体业务,这些业务的数据量大,且对数据传输的实时性和可靠性都有很高的要求,传统的基于单路径TCP的传输模式已很难满足业务需求,当网络发生拥塞或者链路性能波动较大时,网络中会出现大量的ACK(Acknowledgement,确认字符)确认包和重传包,增加了网络负载,加剧了网络拥塞,严重时还会出现网络瘫痪。为了充分利用网络资源,IETF(Internet Engineering Task Force,因特网工程任务组)提出了多路径传输控制协议(MPTCP),可以将MPTCP(MultiPath TCP,多路径传输控制协议)应用到隧道中,来实现隧道间的负载均衡,提高网络的吞吐量。但是,MPTCP只是对传统TCP协议的扩展,相当于建立了多路的TCP连接,但是发送端仍然只选择其中一条路径进行数据传输,这样不能充分利用多路径的优势,还有较大改善的空间。
隧道是基于现有公用网络搭建的,可以在两端节点间建立多条隧道路径来实现并行多路传输。目前,虽然已有一些利用喷泉码来实现多路传输的方案,但这些方案均是通过在应用层或传输层进行喷泉编码来实现的,还鲜有在网络层中使用喷泉码的先例,也没有针对隧道可靠性的相关方案。
发明内容
本发明的目的是提供一种基于喷泉码的多路并行传输方法以及装置。其中,所述方法不仅能够有效提高隧道的传输可靠性,而且还能够采用多隧道并行传输来实现隧道间负载均衡,减少拥堵,提高网络的吞吐量。
为了实现上述目的,本发明提供一种基于喷泉码的多路并行传输方法。所述方法包括:
根据待发送的原始数据包的目的地址得到对应的接收端地址,并根据所述接收端地址将待发送的原始数据包分别缓存在不同的队列中;
对于每个队列,判断队列中原始数据包的数目是否达到预设数目或队列中原始数据包的等待时间是否超过预设时间;
在判断队列中原始数据包的数目达到预设数目或队列中原始数据包的等待时间超过预设时间的情况下,将队列中缓存的原始数据包分别进行喷泉编码,得到编码数据包;
获取用于传输所述编码数据包的多个隧道的整体状况,并根据所述整体状况选择相应的传输模式,及在相应的传输模式下,根据所述编码数据包的度值为所述编码数据包选择相应的隧道,并在所述编码数据包传输过程中的不同阶段相应地调整其传输方式,从而实现所述原始数据包的多路并行传输。
可选地,所述根据待发送的原始数据包的目的地址得到对应的接收端地址之前,所述方法还包括:
根据预设的路由算法计算得到自身与任意一个接收端的多条不相交路径集。
可选地,所述方法还包括:
接收接收端对所述编码数据包解码而反馈的解码信息,在根据所述解码信息得到所述接收端成功解码出原始数据包的情况下,停止传输所述编码数据包,并对下一批原始数据包进行相同处理和传输。
可选地,所述根据所述整体状况选择相应的传输模式,及在相应的传输模式下,根据所述编码数据包的度值为所述编码数据包选择相应的隧道,并在所述编码数据包传输过程中的不同阶段相应地调整其传输方式,包括:
在根据所述整体状况判断所述多个隧道的整体传输性能良好的情况下,
根据每个隧道的时延、带宽、到达率以及隧道之间的相关性对每个隧道的传输质量进行评估分级,得到多个隧道的优先级顺序,
采用优先级高于设定值的隧道传输度值低于预设值的第一编码数据包,优先级低于所述设定值的隧道传输度值高于预设值的第二编码数据包,
在所述第一编码数据包的传输数量达到第一预设数量的情况下,采用优先级高于所述设定值的隧道传输所述第二编码数据包,优先级低于所述设定值的隧道传输所述第一编码数据包;
在根据所述整体状况判断所述多个隧道的整体传输性能不佳的情况下,
在所有隧道上传输所述第一编码数据包,
在所述第一编码数据包的传输数量达到第二预设数量的情况下,在所有隧道上传输所述第二编码数据包。
相应地,本发明还提供一种基于喷泉码的多路并行传输装置。所述装置包括:
第一缓存模块,用于根据待发送的原始数据包的目的地址得到对应的接收端地址,并根据所述接收端地址将待发送的原始数据包分别缓存在不同的队列中;
第一判断模块,用于对于每个队列,判断队列中原始数据包的数目是否达到预设数目或队列中原始数据包的等待时间是否超过预设时间;
喷泉码编码模块,用于在判断队列中原始数据包的数目达到预设数目或队列中原始数据包的等待时间超过预设时间的情况下,将队列中缓存的原始数据包分别进行喷泉编码,得到编码数据包;
分组调度模块,用于获取用于传输所述编码数据包的多个隧道的整体状况,并根据所述整体状况选择相应的传输模式,及在相应的传输模式下,根据所述编码数据包的度值为所述编码数据包选择相应的隧道,并在所述编码数据包传输过程中的不同阶段相应地调整其传输方式,从而实现所述原始数据包的多路并行传输。
可选地,所述装置还包括:
路径管理模块,用于根据预设的路由算法计算得到自身与任意一个接收端的多条不相交路径集。
可选地,所述分组调度模块,还用于:
接收接收端对所述编码数据包解码而反馈的解码信息,在根据所述解码信息得到所述接收端成功解码出原始数据包的情况下,停止传输所述编码数据包,并对下一批原始数据包进行相同处理和传输。
可选地,所述分组调度模块,具体用于:
在根据所述整体状况判断所述多个隧道的整体传输性能良好的情况下,
根据每个隧道的时延、带宽、到达率以及隧道之间的相关性对每个隧道的传输质量进行评估分级,得到多个隧道的优先级顺序,
采用优先级高于设定值的隧道传输度值低于预设值的第一编码数据包,优先级低于所述设定值的隧道传输度值高于预设值的第二编码数据包,
在所述第一编码数据包的传输数量达到第一预设数量的情况下,采用优先级高于所述设定值的隧道传输所述第二编码数据包,优先级低于所述设定值的隧道传输所述第一编码数据包;
在根据所述整体状况判断所述多个隧道的整体传输性能不佳的情况下,
在所有隧道上传输所述第一编码数据包,
在所述第一编码数据包的传输数量达到第二预设数量的情况下,在所有隧道上传输所述第二编码数据包。
相应地,本发明还提供一种基于喷泉码的多路并行传输方法。所述方法包括:
接收多个隧道传输的数据包,并采用隧道协议对所述数据包进行解封装,过滤得到编码数据包;
根据所述编码数据包的源地址将所述编码数据包分别缓存在不同的队列中;
对于每个队列,判断队列中编码数据包的数目是否达到解码要求的数目;
在判断队列中编码数据包的数目达到解码要求的数目的情况下,对队列中缓存的编码数据包分别进行喷泉解码,得到原始数据包,从而实现所述原始数据包的多路并行传输。
可选地,所述方法还包括:
根据解码情况向发送端反馈解码信息,以使得所述发送端根据所述解码信息停止传输所述编码数据包,并对下一批原始数据包进行相同处理和传输。
相应地,本发明还提供一种基于喷泉码的多路并行传输装置。所述装置包括:
接收模块,用于接收多个隧道传输的数据包,并采用隧道协议对所述数据包进行解封装,过滤得到编码数据包;
第二缓存模块,用于根据所述编码数据包的源地址将所述编码数据包分别缓存在不同的队列中;
第二判断模块,用于对于每个队列,判断队列中编码数据包的数目是否达到解码要求的数目;
喷泉码解码模块,用于在判断队列中编码数据包的数目达到解码要求的数目的情况下,对队列中缓存的编码数据包分别进行喷泉解码,得到原始数据包,从而实现所述原始数据包的多路并行传输。
可选地,所述装置还包括:
反馈模块,用于根据解码情况向发送端反馈解码信息,以使得所述发送端根据所述解码信息停止传输所述编码数据包,并对下一批原始数据包进行相同处理和传输。
由上述技术方案可知,将要发送到同一接收端的原始数据包进行缓存,在原始数据包达到预设数目后或原始数据包等待超时后,对原始数据包进行喷泉编码,得到编码数据包。然后,根据隧道的整体状态和编码数据包的度值为编码数据包选择相应的隧道,并将编码数据包并行传输至接收端,接收端采用隧道协议对多个隧道传输的数据包进行解封装,过滤得到编码数据包,并根据编码数据包的源地址将编码数据包分别缓存在不同的队列中,在判断队列中编码数据包的数目达到解码要求的数目的情况下,对队列中缓存的编码数据包分别进行喷泉解码,得到原始数据包,不仅能够有效提高隧道的传输可靠性,而且还能够采用多隧道并行传输来实现隧道间负载均衡,减少拥堵,提高网络的吞吐量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。
图1是本发明一实施例提供的基于喷泉码的多路并行传输方法的流程图;
图2是本发明一实施例提供的基于喷泉码的多路并行传输装置的结构示意图;
图3是本发明一实施例提供的基于喷泉码的多路并行传输方法的流程图;
图4是本发明一实施例提供的基于喷泉码的多路并行传输装置的结构示意图;
图5是本发明一实施例提供的基于喷泉码的多路并行传输方法的工作流程图;
图6是本发明一实施例提供的发送端和接收端整体的结构模型示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
以下对本发明实施例中提及的部分词语进行解释说明。
喷泉码是一种码率可以随着信道传输状况变化而进行实时调整的“***率”编码。发送端不需要预先设定码率,可以由k个原始数据分组生成任意数量的编码分组,然后按照一定的方式把打包好的编码数据包发送出去;接收端只需接收到足够多的包,即可恢复出原始数据分组,无需考虑接收到的是哪几个数据包以及是以何种顺序接收到这些数据包,也无需对收到的数据进行确认。因此,喷泉码适用于对信道条件不了解,受某些不确定性因素影响较大的通信场景。喷泉码的出现为提高网络可靠性和网络传输效率开辟了新思路,目前已在大规模网络信息分发、可靠多播传播、无线协作传输等场景中得到了广泛应用,而且正在被推广到越来越多的应用领域。本发明将喷泉码的优势应用到隧道通信场景中,来提高隧道的传输可靠性,同时,采用多隧道并行传输来实现隧道间负载均衡,减少拥塞,提高网络吞吐量。
图1是本发明一实施例提供的基于喷泉码的多路并行传输方法的流程图。如图1所示,本发明一实施例提供的基于喷泉码的多路并行传输方法包括:
在步骤S101中,根据待发送的原始数据包的目的地址得到对应的接收端地址,并根据所述接收端地址将待发送的原始数据包分别缓存在不同的队列中。
具体地,作为发送端的VPN服务器根据待发送的原始数据包的目的地址能够得到对应的作为接收端的VPN服务器的地址,并将要发送到同一VPN服务器的原始数据报缓存在同一队列中,也就是说,每一个队列对应同一个VPN服务器作为接收端。
更为具体地,在该步骤之前,所述方法还包括:根据预设的路由算法计算得到自身与任意一个接收端的多条不相交路径集。网络中的VPN服务器通过相互认证,分别建立三层隧道连接,构成一个基于隧道的VPN网络。作为发送端的VPN服务器能够通过预设的路由算法计算得到自身与接收端之间的多条不相交路径集。
接着,在步骤S102中,对于每个队列,判断队列中原始数据包的数目是否达到预设数目或队列中原始数据包的等待时间是否超过预设时间。
其中,预设数目为喷泉编码要求的原始数据包的个数。
紧接着,在步骤S103中,在判断队列中原始数据包的数目达到预设数目或队列中原始数据包的等待时间超过预设时间的情况下,将队列中缓存的原始数据包分别进行喷泉编码,得到编码数据包。
具体地,如果在预设时间内队列中原始数据包的个数达到预设数目,便可以对队列中缓存的原始数据包进行喷泉编码,得到编码数据包;如果队列中原始数据包的个数没有达到预设数目,而原始数据包的等待时间超过预设时间,便可以对队列中缓存的原始数据包进行喷泉编码,得到编码数据包。
更为具体地,在判断队列中原始数据包的数目没有达到预设数目或队列中原始数据包的等待时间没有超过预设时间的情况下,继续等待,直到队列中原始数据包的数目达到预设数目或队列中原始数据包的等待时间超过预设时间。
最后,在步骤S104中,获取用于传输所述编码数据包的多个隧道的整体状况,并根据所述整体状况选择相应的传输模式,及在相应的传输模式下,根据所述编码数据包的度值为所述编码数据包选择相应的隧道,并在所述编码数据包传输过程中的不同阶段相应地调整其传输方式,从而实现所述原始数据包的多路并行传输。
具体地,所述根据所述整体状况选择相应的传输模式,及在相应的传输模式下,并在所述编码数据包传输过程中的不同阶段相应地调整其传输方式,根据所述编码数据包的度值为所述编码数据包选择相应的隧道,包括:在根据所述整体状况判断所述多个隧道的整体传输性能良好的情况下,根据每个隧道的时延(latency)、带宽(bandwidth)、到达率(delivery rate)以及隧道之间的相关性(jointness)对每个隧道的传输质量进行评估分级,得到多个隧道的优先级顺序,采用优先级高于设定值的隧道传输度值低于预设值的第一编码数据包,优先级低于所述设定值的隧道传输度值高于预设值的第二编码数据包,在所述第一编码数据包的传输数量达到第一预设数量的情况下,采用优先级高于所述设定值的隧道传输所述第二编码数据包,优先级低于所述设定值的隧道传输所述第一编码数据包;在根据所述整体状况判断所述多个隧道的整体传输性能不佳的情况下,在所有隧道上传输所述第一编码数据包,在所述第一编码数据包的传输数量达到第二预设数量的情况下,在所有隧道上传输所述第二编码数据包。其中,所述第一编码数据包指的是度值低于预设值的编码数据包,所述第二编码数据包指的是度值高于预设值的编码数据包。
数字喷泉编码所采用的度分布是影响编码性能和译码效率的关键因素,低度值的存在可以保证译码过程的启动,高度值的存在可以保证所有源数据(原始数据)均能参与编码,以保证不遗漏原始信息。合理的度分布设计能够让作为接收端的VPN服务器从尽可能少的编码数据包中恢复出所有的原始数据包。此处,本申请考虑结合喷泉码度分布特性和隧道多路径特性进行设计,提升链路利用率和译码成功率。在设计如何利用现存多条路径进行并行编码数据包传输时,考虑到隧道的不同传输性能,设计了以下两种传输模式:
模式一:隧道整体传输性能良好
根据每条路径的时延、带宽、到达率以及路径之间的相关性对每条路径的传输质量进行评估分级,按照质量从好到坏设置相应路径优先级的由高到低。比如,在实际隧道中,一共有10条隧道,可按照质量从好到坏相应地把优先级设定为一级、二级和三级,其中一级隧道有4条,二级隧道有3条,三级隧道有3条。
例如,实际传输编码数据包时,可把每10个原始数据包作为1个分组,在对它们进行喷泉编码后,送入隧道多路传输,直到接收端可以成功译码出原始数据包之后,再对下一个原始数据包分组进行相同处理和传输。具体到编码数据包的传输,分为以下两个阶段:
第一阶段:优先级高于设定值的链路传输度值低于预设值的第一编码数据包,优先级低于设定值的链路传输度值高于预设值的第二编码数据包。
在编码数据包传输的开始阶段,选择优先级高于设定值的路径传输度值低于预设值的第一编码数据包,优先级低于设定值的路径传输其他度值的编码数据包,使译码端收到足够多的度为1和其他低度的编码数据包,一方面保证译码过程的开始,另一方面保证译码器可以在后续译码过程中译码度值更大的编码数据包。在实际隧道中,选用一级和二级隧道传输度值低于预设值的第一编码数据包,三级隧道传输度值高于预设值的第二编码数据包。
第二阶段:优先级高于设定值的链路传输度值高于预设值的第二编码数据包,优先级低于设定值的链路传输度值低于预设值的第一编码数据包。
在译码端可以顺利译出一定数量的编码数据包之后,如果仍优先传输度值低于预设值的第一编码数据包,译码器将会收到很多冗余的编码数据包,就需要作为发送端的VPN服务器产生更多的编码数据包才能译出所有的原始数据包。此时进入传输的第二阶段,改用优先级高于设定值的几条路径传递度值高于预设值的第二编码数据包,优先级低于设定值的路径传输度值低于预设值的第一编码数据包,减少冗余数据包的数量,增加覆盖所有源数据包的概率,从而可以减少编码数据包的传输次数。例如,在实际隧道中,选用一级和二级隧道传输度值高于预设值的第二编码数据包,三级隧道传输度值低于预设值的第一编码数据包。
在设计多路传输喷泉编码数据包时,很重要的一点是如何界定进入第二阶段的编码数据包的数量。如果这个数量设定太小,译码器未能收到足够多的度值低于预设值的第一编码数据包,这样,在译码时,可能没有度为1的编码数据包,译码过程无法持续下去;如果这个数量设定太大,传输过程中的冗余信息可能会大大增加。对于这两种情况,为了让译码器恢复原始信息,编码器都需要发送更多的编码数据包。针对不同的实际路径情况,这个值可以通过在实践中进行测试来合理设置。具体地,在实践过程中,发送端的分组调度模块根据接收端的反馈模块反馈的解码情况调试得到进入模式一的第二阶段的编码数据包的数量,也即是第一预设数量,该第一预设数量不会太大,也不会太小,不仅能够让译码过程持续下去,而且在传输过程中不会大量增加冗余信息。然后,将该第一预设数量赋给程序的相关变量,程序可以执行相应的操作。由于对原始数据包进行了喷泉编码,在发送端可以源源不断产生编码数据包,在接收端只要收到足够成功译码的编码数据包便可以停止发送端发送编码数据包,自适应性与灵活性有所增强。
模式二:隧道整体传输性能不佳
因隧道整体传输性能不佳,这里就不再对隧道进行分级处理。和模式一相同,把每10个原始数据包作为一个分组,在对它们进行喷泉编码后,送入隧道多路传输,直到接收端可以成功译码出原始数据包之后,再对下一个原始数据包分组进行相同处理和传输。具体到数据包的传输,也分为两个阶段:
第一阶段:在所有隧道上传输度值低于预设值的第一编码数据包
隧道整体性能不佳,隧道间的差异性相比模式一不明显,此时在所有隧道上同时传输相同的度值低于预设值的第一编码数据包,使译码端收到足够多的度为1和其他低度的编码数据包,一方面可立即开始译码,降低传输时延;另一方面为后续译码度值更大的编码数据包打好基础,提高传输可靠性。
第二阶段:在所有隧道上传输度值高于预设值的第二编码数据包
在译码端可以顺利译出一定数量的编码数据包之后,如果仍优先传输度值低于预设值的第一编码数据包,译码器将会收到很多冗余的数据包,发送端就需要产生更多的编码数据包才能译出所有的原始数据包。此时进入传输的第二阶段,全部隧道传输度值高于预设值的第二编码数据包,覆盖所有源数据包的概率,保证译码所有数据包。在第二阶段,传输度值高于预设值的第二编码数据包时,可以在不同隧道上传输不同的编码数据包以提高传输效率,也可以在不同隧道上传输相同的数据包,通过获得分集增益来提高传输可靠性。
与模式一相同,在模式二中的第二阶段提到的一定数量的编码数据包,如何来界定这个数量会是实际操作时需要考虑的问题。针对不同的实际路径情况,这个值依旧可以通过在实践中进行测试来合理设置。具体地,在实际操作的过程中,发送端的分组调度模块根据接收端的反馈模块反馈的解码情况调试得到进入模式二的第二阶段的编码数据包的数量,也即是第二预设数量。然后,将该第二预设数量赋给程序的相关变量,程序可以执行相应的操作。
以隧道性能为依据,设计了两种传输模式,模式一体现了在隧道性能良好的情况下对传输有效性的提升;模式二体现了在隧道性能不佳的情况下对传输可靠性的提升,两种模式互相补充,在不同的应用场景下有各自的优势。在每种模式下各自设计了两个传输阶段,充分结合了喷泉码的特点,合理利用编码数据包的度值设计传输方案。
优选地,所述方法还包括:接收接收端对所述编码数据包解码而反馈的解码信息,在根据所述解码信息得到所述接收端成功解码出原始数据包的情况下,停止传输所述编码数据包,并对下一批原始数据包进行相同处理和传输。藉此,能够进一步提升隧道多路传输的可靠性。
本实施例在网络层应用喷泉码,对两个网络之间传输的数据包进行编解码,实现了数据包在两个网络之间的透明传输,相比于在物理层和应用层的部署而言,本实施例部署更加高效,只需在VPN服务器上部署本协议,无需改动终端和其他中间数据转发设备。不同于基于MPTCP协议的多路径传输方式,尽管有多条路径,但最终仍只选择一条路径进行数据传输,本实施例因为在网络层上考虑数据包的并行多路传输,所以可以充分利用存在的所有隧道,充分利用网络容量,提高了隧道利用率。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
图2是本发明一实施例提供的基于喷泉码的多路并行传输装置的结构示意图。如图2所示,本发明一实施例提供的基于喷泉码的多路并行传输装置包括:
第一缓存模块201,用于根据待发送的原始数据包的目的地址得到对应的接收端地址,并根据所述接收端地址将待发送的原始数据包分别缓存在不同的队列中;
第一判断模块202,用于对于每个队列,判断队列中原始数据包的数目是否达到预设数目或队列中原始数据包的等待时间是否超过预设时间;
喷泉码编码模块203,用于在判断队列中原始数据包的数目达到预设数目或队列中原始数据包的等待时间超过预设时间的情况下,将队列中缓存的原始数据包分别进行喷泉编码,得到编码数据包;
分组调度模块204,用于获取用于传输所述编码数据包的多个隧道的整体状况,并根据所述整体状况选择相应的传输模式,及在相应的传输模式下,根据所述编码数据包的度值为所述编码数据包选择相应的隧道,并在所述编码数据包传输过程中的不同阶段相应地调整其传输方式,从而实现所述原始数据包的多路并行传输。
在本发明一可选实施例中,所述装置还包括:
路径管理模块205,用于根据预设的路由算法计算得到自身与任意一个接收端的多条不相交路径集。
在本发明一可选实施例中,所述分组调度模块204,还用于:
接收接收端对所述编码数据包解码而反馈的解码信息,在根据所述解码信息得到所述接收端成功解码出原始数据包的情况下,停止传输所述编码数据包,并对下一批原始数据包进行相同处理和传输。
在本发明一可选实施例中,所述分组调度模块204,具体用于:
在根据所述整体状况判断所述多个隧道的整体传输性能良好的情况下,
根据每个隧道的时延、带宽、到达率以及隧道之间的相关性对每个隧道的传输质量进行评估分级,得到多个隧道的优先级顺序,
采用优先级高于设定值的隧道传输度值低于预设值的第一编码数据包,优先级低于所述设定值的隧道传输度值高于预设值的第二编码数据包,
在所述第一编码数据包的传输数量达到第一预设数量的情况下,采用优先级高于所述设定值的隧道传输所述第二编码数据包,优先级低于所述设定值的隧道传输所述第一编码数据包;
在根据所述整体状况判断所述多个隧道的整体传输性能不佳的情况下,
在所有隧道上传输所述第一编码数据包,
在所述第一编码数据包的传输数量达到第二预设数量的情况下,在所有隧道上传输所述第二编码数据包。
对于本发明一实施例提供的基于喷泉码的多路并行传输装置中还涉及的具体细节已在本发明一实施例提供的基于喷泉码的多路并行传输方法中作了详细的描述,在此不再赘述。对于本发明一实施例提供的基于喷泉码的多路并行传输装置可设置于发送端中。
图3是本发明一实施例提供的基于喷泉码的多路并行传输方法的流程图。如图3所示,本发明一实施例提供的基于喷泉码的多路并行传输方法包括:
在步骤S301中,接收多个隧道传输的数据包,并采用隧道协议对所述数据包进行解封装,过滤得到编码数据包。
具体地,数据包通过多路径达到作为接收端的VPN服务器,隧道协议对数据包进行解封装,在VPN服务器中过滤得到编码数据包。
接着,在步骤S302中,根据所述编码数据包的源地址将所述编码数据包分别缓存在不同的队列中。
具体地,将源地址相同的编码数据包缓存在同一队列中,也就是说,一个队列对应一个作为发送端的VPN服务器。
紧接着,在步骤S303中,对于每个队列,判断队列中编码数据包的数目是否达到解码要求的数目。
最后,在步骤S304中,在判断队列中编码数据包的数目达到解码要求的数目的情况下,对队列中缓存的编码数据包分别进行喷泉解码,得到原始数据包,从而实现所述原始数据包的多路并行传输。
具体地,在判断队列中编码数据包的数目没有达到解码要求的数目的情况下,继续等待,直到队列中缓存的编码数据包达到解码要求的数目。
优选地,所述方法还包括:根据解码情况向发送端反馈解码信息,以使得所述发送端根据所述解码信息停止传输所述编码数据包,并对下一批原始数据包进行相同处理和传输。藉此,能够进一步提升隧道多路传输的可靠性。
本实施例通过将要发送到同一接收端的原始数据包进行缓存,在原始数据包达到预设数目后或原始数据包等待超时后,对原始数据包进行喷泉编码,得到编码数据包,然后,根据隧道的整体状态和编码数据包的度值为编码数据包选择相应的隧道,并将编码数据包并行传输至接收端,接收端采用隧道协议对多个隧道传输的数据包进行解封装,过滤得到编码数据包,并根据编码数据包的源地址将编码数据包分别缓存在不同的队列中,在判断队列中编码数据包的数目达到解码要求的数目的情况下,对队列中缓存的编码数据包分别进行喷泉解码,得到原始数据包,不仅能够有效提高隧道的传输可靠性,而且还能够采用多隧道并行传输来实现隧道间负载均衡,减少拥堵,提高网络的吞吐量。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
图4是本发明一实施例提供的基于喷泉码的多路并行传输装置的结构示意图。如图4所示,本发明一实施例提供的基于喷泉码的多路并行传输装置包括:
接收模块401,用于接收多个隧道传输的数据包,并采用隧道协议对所述数据包进行解封装,过滤得到编码数据包;
第二缓存模块402,用于根据所述编码数据包的源地址将所述编码数据包分别缓存在不同的队列中;
第二判断模块403,用于对于每个队列,判断队列中编码数据包的数目是否达到解码要求的数目;
喷泉码解码模块404,用于在判断队列中编码数据包的数目达到解码要求的数目的情况下,对队列中缓存的编码数据包分别进行喷泉解码,得到原始数据包,从而实现所述原始数据包的多路并行传输。
在本发明一可选实施例中,所述装置还包括:
反馈模块405,用于根据解码情况向发送端反馈解码信息,以调控多条隧道中编码数据包的传输。此外,还用于发送端根据所述解码信息停止传输所述编码数据包,并对下一批原始数据包进行相同处理和传输。
对于本发明一实施例提供的基于喷泉码的多路并行传输装置中还涉及的具体细节已在本发明一实施例提供的基于喷泉码的多路并行传输方法中作了详细的描述,在此不再赘述。对于本发明一实施例提供的基于喷泉码的多路并行传输装置可设置于接收端中。
图5是本发明一实施例提供的基于喷泉码的多路并行传输方法的工作流程图。如图5所示,具体工作流程的步骤如下:
步骤(1),网络中的VPN服务器(以下简称服务器)通过相互认证,分别建立三层隧道连接,构成一个基于隧道的VPN网络;
步骤(2),路径管理模块通过路由算法得到任意两个服务器之间的多条不相交路径集;
步骤(3),在发送方服务器中,根据要发送的IP包的目的地址得到对应的目的VPN服务器地址,根据目的服务器地址将IP包分别缓存在不同的队列中;
步骤(4),对于每个缓存队列,判断队列中的数据包数目是否达到喷泉码的编码要求,或者等待是否超时,如果是,将队列中的数据包进行喷泉编码,并继续进行下一步,如果否,继续步骤(3);
步骤(5),分组调度模块根据隧道状态选择相应的传输模式,在相应模式下为每个编码数据包选择相应的隧道进行发送,隧道(子路径)封装编码数据包并发送数据包。
步骤(6),数据包通过多路径到达接收方服务器,隧道协议对数据包进行解封装,在接收服务器中过滤出编码数据包,并根据编码数据包的源服务器地址分别进行缓存;
步骤(7),同一源地址的编码数据包达到解码要求后被送到解码模块进行解码,并将解码情况反馈到步骤(5)中的分组调度模块,参与数据包的路径分配;
步骤(8),解码后的数据包被交给IP协议处理。
隧道是基于现有的公用网络搭建的,根据一定的路由算法可以得到发送端和接收端之间多条质量情况不同的路径。为了提高隧道通信网络的可靠性,减少丢包对网络性能的影响,提升网络吞吐量,本发明结合多路传输及喷泉码的优势,提出一种基于喷泉码的隧道多路并行可靠传输方法和装置。其基本思想是:首先根据路由算法计算得到发送端到接收端服务器之间的多条路径集,然后在发送端的VPN服务器中,把要发送到同一个目的VPN服务器的IP数据包进行缓存,在数据包达到编码要求的个数后送到编码模块进行编码,最后分组调度模块根据编码包的度值以及反馈模块反馈的信息,为编码包选择相应的隧道发送出去,其中隧道封装时传输层可采用UDP协议,来保证实时性;在接收端的VPN服务器中,通过各子路径传输的数据包到达服务器后隧道协议进行解封装,然后将源地址为同一VPN服务器的数据包进行缓存,当达到解码要求后送去解码模块进行解码,并继续对被恢复的原始数据包进行后续处理。这样,在数据包进隧道前进行喷泉编码,并采用多路并行传输,可以有效提高传输可靠性,充分利用网络资源,提高网络吞吐量。图6是本发明一实施例提供的发送端和接收端整体的结构模型示意图。
应当注意的是,在本发明的***的各个部件中,根据其要实现的功能而对其中的部件进行了逻辑划分,但是,本发明不受限于此,可以根据需要对各个部件进行重新划分或者组合,例如,可以将一些部件组合为单个部件,或者可以将一些部件进一步分解为更多的子部件。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的***中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
以上实施方式仅适于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
Claims (10)
1.一种基于喷泉码的多路并行传输方法,其特征在于,所述方法包括:
根据待发送的原始数据包的目的地址得到对应的接收端地址,并根据所述接收端地址将待发送的原始数据包分别缓存在不同的队列中;
对于每个队列,判断队列中原始数据包的数目是否达到预设数目或队列中原始数据包的等待时间是否超过预设时间;
在判断队列中原始数据包的数目达到预设数目或队列中原始数据包的等待时间超过预设时间的情况下,将队列中缓存的原始数据包分别进行喷泉编码,得到编码数据包;
获取用于传输所述编码数据包的多个隧道的整体状况,并根据所述整体状况选择相应的传输模式,及在相应的传输模式下,根据所述编码数据包的度值为所述编码数据包选择相应的隧道,并在所述编码数据包传输过程中的不同阶段相应地调整其传输方式,从而实现所述原始数据包的多路并行传输。
2.根据权利要求1所述的基于喷泉码的多路并行传输方法,其特征在于,所述根据待发送的原始数据包的目的地址得到对应的接收端地址之前,所述方法还包括:
根据预设的路由算法计算得到自身与任意一个接收端的多条不相交路径集。
3.根据权利要求1所述的基于喷泉码的多路并行传输方法,其特征在于,所述方法还包括:
接收接收端对所述编码数据包解码而反馈的解码信息,在根据所述解码信息得到所述接收端成功解码出原始数据包的情况下,停止传输所述编码数据包,并对下一批原始数据包进行相同处理和传输。
4.根据权利要求1所述的基于喷泉码的多路并行传输方法,其特征在于,所述根据所述整体状况选择相应的传输模式,及在相应的传输模式下,根据所述编码数据包的度值为所述编码数据包选择相应的隧道,并在所述编码数据包传输过程中的不同阶段相应地调整其传输方式,包括:
在根据所述整体状况判断所述多个隧道的整体传输性能良好的情况下,
根据每个隧道的时延、带宽、到达率以及隧道之间的相关性对每个隧道的传输质量进行评估分级,得到多个隧道的优先级顺序,
采用优先级高于设定值的隧道传输度值低于预设值的第一编码数据包,优先级低于所述设定值的隧道传输度值高于预设值的第二编码数据包,
在所述第一编码数据包的传输数量达到第一预设数量的情况下,采用优先级高于所述设定值的隧道传输所述第二编码数据包,优先级低于所述设定值的隧道传输所述第一编码数据包;
在根据所述整体状况判断所述多个隧道的整体传输性能不佳的情况下,
在所有隧道上传输所述第一编码数据包,
在所述第一编码数据包的传输数量达到第二预设数量的情况下,在所有隧道上传输所述第二编码数据包。
5.一种基于喷泉码的多路并行传输装置,其特征在于,所述装置包括:
第一缓存模块,用于根据待发送的原始数据包的目的地址得到对应的接收端地址,并根据所述接收端地址将待发送的原始数据包分别缓存在不同的队列中;
第一判断模块,用于对于每个队列,判断队列中原始数据包的数目是否达到预设数目或队列中原始数据包的等待时间是否超过预设时间;
喷泉码编码模块,用于在判断队列中原始数据包的数目达到预设数目或队列中原始数据包的等待时间超过预设时间的情况下,将队列中缓存的原始数据包分别进行喷泉编码,得到编码数据包;
分组调度模块,用于获取用于传输所述编码数据包的多个隧道的整体状况,并根据所述整体状况选择相应的传输模式,及在相应的传输模式下,根据所述编码数据包的度值为所述编码数据包选择相应的隧道,并在所述编码数据包传输过程中的不同阶段相应地调整其传输方式,从而实现所述原始数据包的多路并行传输。
6.根据权利要求5所述的基于喷泉码的多路并行传输装置,其特征在于,所述装置还包括:
路径管理模块,用于根据预设的路由算法计算得到自身与任意一个接收端的多条不相交路径集。
7.根据权利要求5所述的基于喷泉码的多路并行传输装置,其特征在于,所述分组调度模块,还用于:
接收接收端对所述编码数据包解码而反馈的解码信息,在根据所述解码信息得到所述接收端成功解码出原始数据包的情况下,停止传输所述编码数据包,并对下一批原始数据包进行相同处理和传输。
8.根据权利要求5所述的基于喷泉码的多路并行传输装置,其特征在于,所述分组调度模块,具体用于:
在根据所述整体状况判断所述多个隧道的整体传输性能良好的情况下,
根据每个隧道的时延、带宽、到达率以及隧道之间的相关性对每个隧道的传输质量进行评估分级,得到多个隧道的优先级顺序,
采用优先级高于设定值的隧道传输度值低于预设值的第一编码数据包,优先级低于所述设定值的隧道传输度值高于预设值的第二编码数据包,
在所述第一编码数据包的传输数量达到第一预设数量的情况下,采用优先级高于所述设定值的隧道传输所述第二编码数据包,优先级低于所述设定值的隧道传输所述第一编码数据包;
在根据所述整体状况判断所述多个隧道的整体传输性能不佳的情况下,
在所有隧道上传输所述第一编码数据包,
在所述第一编码数据包的传输数量达到第二预设数量的情况下,在所有隧道上传输所述第二编码数据包。
9.一种基于喷泉码的多路并行传输方法,其特征在于,所述方法包括:
接收多个隧道传输的数据包,并采用隧道协议对所述数据包进行解封装,过滤得到编码数据包;
根据所述编码数据包的源地址将所述编码数据包分别缓存在不同的队列中;
对于每个队列,判断队列中编码数据包的数目是否达到解码要求的数目;
在判断队列中编码数据包的数目达到解码要求的数目的情况下,对队列中缓存的编码数据包分别进行喷泉解码,得到原始数据包,从而实现所述原始数据包的多路并行传输。
10.根据权利要求9所述的基于喷泉码的多路并行传输方法,其特征在于,所述方法还包括:
根据解码情况向发送端反馈解码信息,以使得所述发送端根据所述解码信息停止传输所述编码数据包,并对下一批原始数据包进行相同处理和传输。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610757584.6A CN106254202B (zh) | 2016-08-29 | 2016-08-29 | 一种基于喷泉码的多路并行传输方法以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610757584.6A CN106254202B (zh) | 2016-08-29 | 2016-08-29 | 一种基于喷泉码的多路并行传输方法以及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106254202A true CN106254202A (zh) | 2016-12-21 |
CN106254202B CN106254202B (zh) | 2019-08-02 |
Family
ID=57596684
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610757584.6A Active CN106254202B (zh) | 2016-08-29 | 2016-08-29 | 一种基于喷泉码的多路并行传输方法以及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106254202B (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107666372A (zh) * | 2017-09-15 | 2018-02-06 | 北京邮电大学 | 一种基于无速率编码的多链路协同传输方法及装置 |
WO2018146521A1 (en) * | 2017-02-11 | 2018-08-16 | Pismo Labs Technology Ltd. | Methods and systems for transmitting information packets through tunnel groups at a network node |
WO2018171599A1 (zh) * | 2017-03-24 | 2018-09-27 | 华为技术有限公司 | 用于传输数据的方法和网络侧节点 |
CN108809515A (zh) * | 2018-04-26 | 2018-11-13 | 西安交通大学 | 一种无线缓存网络下基于喷泉码的多播安全传输方法 |
CN109379287A (zh) * | 2018-12-25 | 2019-02-22 | 广东浪潮大数据研究有限公司 | 一种数据包的输入缓冲方法及输入缓冲部件 |
CN109951260A (zh) * | 2018-02-12 | 2019-06-28 | 华为技术有限公司 | 一种数据包发送方法及相关设备 |
CN110191342A (zh) * | 2019-07-02 | 2019-08-30 | 北京字节跳动网络技术有限公司 | 视频编码方法及设备、视频解码方法及设备 |
CN110661860A (zh) * | 2019-09-18 | 2020-01-07 | 华为技术有限公司 | 一种建立通话的方法及通话设备 |
CN111262659A (zh) * | 2020-03-04 | 2020-06-09 | 华南理工大学 | 基于喷泉码的Semi-TCP分组批量确认回复方法 |
CN112436994A (zh) * | 2020-11-17 | 2021-03-02 | 联想(北京)有限公司 | 一种数据传输方法及电子设备 |
CN113377898A (zh) * | 2021-08-16 | 2021-09-10 | 南京东大智能化***有限公司 | 一种基于海量离散数据的分析方法 |
CN113438056A (zh) * | 2021-06-24 | 2021-09-24 | 国汽(北京)智能网联汽车研究院有限公司 | 一种基于喷泉码的车联网数据传输方法、装置及存储介质 |
CN114070780A (zh) * | 2021-11-30 | 2022-02-18 | 中国石油大学(华东) | 一种基于喷泉编码的多路径传输方法及*** |
CN114499752A (zh) * | 2021-12-30 | 2022-05-13 | 西安交通大学 | 一种基于多路互锁的喷泉码安全传输方法 |
CN115756951A (zh) * | 2022-10-12 | 2023-03-07 | 上海慧程工程技术服务有限公司 | 一种工业物联网数据实时上传方法及装置 |
CN116170115A (zh) * | 2023-04-19 | 2023-05-26 | 华南师范大学 | 基于码本的数字喷泉编解码方法、装置以及*** |
WO2023160403A1 (zh) * | 2022-02-25 | 2023-08-31 | 阿里巴巴(中国)有限公司 | 数据处理方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104885397A (zh) * | 2012-12-14 | 2015-09-02 | 华为技术有限公司 | 用于基于ue喷泉中继的网络的***和方法 |
US20160217039A1 (en) * | 2014-02-13 | 2016-07-28 | Quantum Corporation | Combined asynchronous and synchronous fountain code storage in an object store |
-
2016
- 2016-08-29 CN CN201610757584.6A patent/CN106254202B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104885397A (zh) * | 2012-12-14 | 2015-09-02 | 华为技术有限公司 | 用于基于ue喷泉中继的网络的***和方法 |
US20160217039A1 (en) * | 2014-02-13 | 2016-07-28 | Quantum Corporation | Combined asynchronous and synchronous fountain code storage in an object store |
Non-Patent Citations (2)
Title |
---|
朱宏鹏 等: ""喷泉码中LT码的次优度分布"", 《应用科学学报》 * |
赵旦峰 等: ""水声网络中喷泉码的应用研究现状与发展前景"", 《***工程与电子技术》 * |
Cited By (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11799686B2 (en) | 2017-02-11 | 2023-10-24 | Pismo Labs Technology Limited | Methods and systems for transmitting information packets through tunnel groups at a network node |
GB2567026B (en) * | 2017-02-11 | 2022-03-23 | Pismo Labs Technology Ltd | Methods and systems for transmitting information packets through tunnel groups at a network node |
US10833891B2 (en) | 2017-02-11 | 2020-11-10 | Pismo Labs Technology Limited | Methods and systems for transmitting information packets through tunnel groups at a network node |
GB2567026A (en) * | 2017-02-11 | 2019-04-03 | Pismo Labs Technology Ltd | Methods and systems for transmitting information packets through tunnel groups at a network node |
WO2018146521A1 (en) * | 2017-02-11 | 2018-08-16 | Pismo Labs Technology Ltd. | Methods and systems for transmitting information packets through tunnel groups at a network node |
CN108631963A (zh) * | 2017-03-24 | 2018-10-09 | 华为技术有限公司 | 用于传输数据的方法和网络侧节点 |
WO2018171599A1 (zh) * | 2017-03-24 | 2018-09-27 | 华为技术有限公司 | 用于传输数据的方法和网络侧节点 |
CN107666372B (zh) * | 2017-09-15 | 2021-01-08 | 北京邮电大学 | 一种基于无速率编码的多链路协同传输方法及装置 |
CN107666372A (zh) * | 2017-09-15 | 2018-02-06 | 北京邮电大学 | 一种基于无速率编码的多链路协同传输方法及装置 |
US11444867B2 (en) | 2018-02-12 | 2022-09-13 | Huawei Technologies Co., Ltd. | Packet sending method and related device |
CN109951260B (zh) * | 2018-02-12 | 2020-04-03 | 华为技术有限公司 | 一种数据包发送方法及相关设备 |
CN109951260A (zh) * | 2018-02-12 | 2019-06-28 | 华为技术有限公司 | 一种数据包发送方法及相关设备 |
CN108809515A (zh) * | 2018-04-26 | 2018-11-13 | 西安交通大学 | 一种无线缓存网络下基于喷泉码的多播安全传输方法 |
CN108809515B (zh) * | 2018-04-26 | 2020-08-18 | 西安交通大学 | 一种无线缓存网络下基于喷泉码的多播安全传输方法 |
CN109379287A (zh) * | 2018-12-25 | 2019-02-22 | 广东浪潮大数据研究有限公司 | 一种数据包的输入缓冲方法及输入缓冲部件 |
CN109379287B (zh) * | 2018-12-25 | 2022-03-11 | 广东浪潮大数据研究有限公司 | 一种数据包的输入缓冲方法及输入缓冲部件 |
CN110191342A (zh) * | 2019-07-02 | 2019-08-30 | 北京字节跳动网络技术有限公司 | 视频编码方法及设备、视频解码方法及设备 |
CN110661860A (zh) * | 2019-09-18 | 2020-01-07 | 华为技术有限公司 | 一种建立通话的方法及通话设备 |
CN111262659A (zh) * | 2020-03-04 | 2020-06-09 | 华南理工大学 | 基于喷泉码的Semi-TCP分组批量确认回复方法 |
CN112436994A (zh) * | 2020-11-17 | 2021-03-02 | 联想(北京)有限公司 | 一种数据传输方法及电子设备 |
CN112436994B (zh) * | 2020-11-17 | 2022-04-19 | 联想(北京)有限公司 | 一种数据传输方法及电子设备 |
CN113438056A (zh) * | 2021-06-24 | 2021-09-24 | 国汽(北京)智能网联汽车研究院有限公司 | 一种基于喷泉码的车联网数据传输方法、装置及存储介质 |
CN113377898A (zh) * | 2021-08-16 | 2021-09-10 | 南京东大智能化***有限公司 | 一种基于海量离散数据的分析方法 |
CN114070780B (zh) * | 2021-11-30 | 2023-03-21 | 中国石油大学(华东) | 一种基于喷泉编码的多路径传输方法及*** |
CN114070780A (zh) * | 2021-11-30 | 2022-02-18 | 中国石油大学(华东) | 一种基于喷泉编码的多路径传输方法及*** |
CN114499752A (zh) * | 2021-12-30 | 2022-05-13 | 西安交通大学 | 一种基于多路互锁的喷泉码安全传输方法 |
CN114499752B (zh) * | 2021-12-30 | 2023-12-22 | 西安交通大学 | 一种基于多路互锁的喷泉码安全传输方法 |
WO2023160403A1 (zh) * | 2022-02-25 | 2023-08-31 | 阿里巴巴(中国)有限公司 | 数据处理方法及装置 |
CN115756951A (zh) * | 2022-10-12 | 2023-03-07 | 上海慧程工程技术服务有限公司 | 一种工业物联网数据实时上传方法及装置 |
CN115756951B (zh) * | 2022-10-12 | 2024-03-26 | 上海慧程工程技术服务有限公司 | 一种工业物联网数据实时上传方法及装置 |
CN116170115A (zh) * | 2023-04-19 | 2023-05-26 | 华南师范大学 | 基于码本的数字喷泉编解码方法、装置以及*** |
CN116170115B (zh) * | 2023-04-19 | 2023-06-27 | 华南师范大学 | 基于码本的数字喷泉编解码方法、装置以及*** |
Also Published As
Publication number | Publication date |
---|---|
CN106254202B (zh) | 2019-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106254202A (zh) | 一种基于喷泉码的多路并行传输方法以及装置 | |
US9537611B2 (en) | Method and apparatus for improving the performance of TCP and other network protocols in a communications network using proxy servers | |
US7756044B2 (en) | Inverse multiplexing heterogeneous wireless links for high-performance vehicular connectivity | |
CN104205942B (zh) | 多跳错误恢复 | |
CN110912798B (zh) | 用于通过聚合连接传输数据的方法及*** | |
KR101696776B1 (ko) | 향상된 확인응답 및 재송신 메커니즘 | |
CN101878612B (zh) | 用于数据网络中的数据传输的方法和*** | |
CN101207466B (zh) | 用于有损介质的重发方案 | |
Xu et al. | Pipeline network coding-based multipath data transfer in heterogeneous wireless networks | |
KR102173084B1 (ko) | 무선 통신 시스템에서 데이터 패킷 송수신 방법 및 장치 | |
US8843654B2 (en) | Data packet transfer over wide area network in fast and reliable manner | |
US20080137669A1 (en) | Network of nodes | |
CN103490972B (zh) | 多链路隧道报文传输方法及*** | |
WO2006012743A1 (en) | System and method for higher throughput through a transportation network | |
CN113055285B (zh) | 基于mptcp与网络编码的自适应数据传输方法 | |
CN111082898A (zh) | 一种报文处理方法和装置 | |
CN102208962B (zh) | 无线数据传输方法 | |
JP2017092692A (ja) | データ伝送制御システム及び方法、並びに、データ伝送制御プログラム | |
CN102546096A (zh) | 一种基于不等错误保护的实时多播自适应优化方法 | |
JP4636232B2 (ja) | 移動通信システムにおけるパケット転送方法およびその通信システム | |
Ha et al. | TCP Network Coding with Enhanced Retransmission for heavy and bursty loss | |
Bai et al. | Multi-path transmission protocol in VANET | |
JP2009033676A (ja) | 通信システム、通信装置およびパケット伝送方法 | |
WO2023093804A1 (zh) | 一种丢包管理方法及相关装置 | |
佐当百合野 | A Study on Performance Improvement of TCP using Forward Error Correction |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |