CN104168613B - 一种移动云计算环境中发生切换时的传输方法及装置 - Google Patents
一种移动云计算环境中发生切换时的传输方法及装置 Download PDFInfo
- Publication number
- CN104168613B CN104168613B CN201410422487.2A CN201410422487A CN104168613B CN 104168613 B CN104168613 B CN 104168613B CN 201410422487 A CN201410422487 A CN 201410422487A CN 104168613 B CN104168613 B CN 104168613B
- Authority
- CN
- China
- Prior art keywords
- rtp packets
- sent
- rtp
- sub
- new
- 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.)
- Active
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 168
- 238000000034 method Methods 0.000 title claims abstract description 22
- 230000005611 electricity Effects 0.000 claims abstract description 8
- 101000741965 Homo sapiens Inactive tyrosine-protein kinase PRAG1 Proteins 0.000 claims description 15
- 102100038659 Inactive tyrosine-protein kinase PRAG1 Human genes 0.000 claims description 15
- 238000004364 calculation method Methods 0.000 claims description 9
- 230000003362 replicative effect Effects 0.000 claims description 8
- 238000005194 fractionation Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000006317 isomerization reaction Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000000576 coating method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 210000000697 sensory organ Anatomy 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Landscapes
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种移动云计算环境中发生切换时的传输方法及装置;方法包括:当移动终端发生接入网切换时,云端设备计算与移动终端之间的新、旧传输路径的平均丢包率;如果新、旧传输路径的平均丢包率均小于预设门限,且所述移动终端电量大于低电量阈值,则云端设备根据新、旧传输路径的平均丢包率将待发送的实时传输协议RTP包拆分为两个子RTP包,分别从新、旧传输路径发送给所述移动终端;否则云端设备复制待发送的RTP包,将待发送的RTP包和复制的RTP包分别从新、旧传输路径发送给所述移动终端。本发明能够在移动云计算环境中根据切换时的具体情况自适应选择合适的传输方式。
Description
技术领域
本发明涉及通信领域,尤其涉及一种移动云计算环境中发生切换时的传输方法及装置。
背景技术
云计算以虚拟化技术为基础,以网络为载体,整合大规模可扩展的计算、存储、数据以及应用等分布式资源,实现了对系统多层次的虚拟化与抽象。移动计算在上世纪90年代早期随移动设备、无线通信技术以及分布计算技术的发展而产生,其目标是在无线网络环境下实现数据传输和资源共享,使用户在任何时间、任何地点可以便捷地访问获取所需要的信息和服务。移动终端具有随时在线、随身携带、感官众多以及存储能力有限等特点,而云计算可实现在任何时间、任何地点、通过任何接入方式,提供无限的计算、存储能力。移动云计算是移动计算与云计算相结合而产生的一种新型计算模式,用户可以随时随地通过无线网络按需访问云计算系统提供的服务。移动云计算将应用的计算任务从终端转移到云计算系统,弱化了应用对移动终端设备的处理需求,移动终端则主要承担与用户进行交互的功能。
移动云计算利用叠加的异构接入网络,如GPRS、WLAN和WCDMA等,实现了多媒体业务的数据传输。当接入网切换时(比如用户在接入网之间漫游、或从一个接入技术更换为另一个接入技术),用户与云计算环境之间的通信质量对用户的业务体验有着重要影响;目前切换时通常采用冗余传输的方式,即:网络侧将待传输的数据包复制后分别从新、旧路径发送给终端。
由于异构接入网络的差异和复杂的多层信令交互,每次切换时的网络状态、终端性能可能各不相同,如果切换时都统一采用相同的冗余传输方式,则有可能并不适合切换时的实际情况。
发明内容
本发明要解决的技术问题是如何在移动云计算环境中根据切换时的具体情况自适应选择合适的传输方式。
为了解决上述问题,本发明提供了一种移动云计算环境中发生切换时的传输方法,包括:
101、当移动终端发生接入网切换时,云端设备分别计算与移动终端之间的新、旧传输路径的平均丢包率;
102、判断是否新、旧传输路径的平均丢包率均小于预设门限,且所述移动终端电量大于低电量阈值,如果是则进行步骤103;如果不是则进行步骤104;
103、云端设备根据新、旧传输路径的平均丢包率将待发送的实时传输协议RTP包拆分为两个子RTP包,分别从新、旧传输路径发送给所述移动终端;
104、云端设备复制待发送的RTP包,将待发送的RTP包和复制的RTP包分别从新、旧传输路径发送给所述移动终端。
可选地,云端设备根据新、旧传输路径的平均丢包率将待发送的RTP包拆分为两个子RTP包的步骤包括:
云端设备根据新、旧传输路径的状态数据计算RTP包拆分比例:
其中,B1和B2分别为新、旧两条传输路径的带宽,PS为RTP包的大小,APLR1和APLR2分别为新、旧两条传输路径的平均丢包率;为丢包率的计算次数;
云端设备复制待发送的RTP包的前div1个字节的负荷作为第一子RTP包;复制待发送的RTP包中剩余的负荷作为第二子RTP包。
可选地,云端设备分别计算与移动终端之间的新、旧传输路径的平均丢包率的步骤包括:
云端设备分别解析所述移动终端在所述新、旧传输路径上通过RTP控制协议返回的消息体接收报告中的丢包率字段,获得新、旧传输路径上各RTCP发送周期T内的丢包率;
云端设备对于新、旧传输路径,分别计算最近m个RTP控制协议发送周期的平均丢包率;m为大于1的正整数。
可选地,步骤103还包括:
将第一子RTP包的RTP协议头中的X位设为1,N位设为0,D位设为0;将第二子RTP包的RTP协议头中的X位设为1,N位设为1,D位设为0;第一、第二子RTP包的序列号与待发送的RTP包相同;
步骤104还包括:将待发送的RTP包和复制得到的RTP包的RTP协议头中的X位均设为1,D位均设为1;N位任意设置;复制得到的RTP包的序列号与待发送的RTP包相同。
可选地,所述的方法还包括:
105、移动终端接收所述云端设备发送的RTP包,如果收到两个序列号相同、X位为1,D位为1的RTP包,则丢弃其中一个,另一个发送给相应的RTP应用程序;如果收到两个序列号相同、X位为1,D位为0的子RTP包,则合并后发送给相应的RTP应用程序,合并后的RTP包中,N位为0的子RTP包的负荷在前,N位为1的子RTP包的负荷在后;如果从取某一个序列号的子RTP包的时刻开始,到超过往返延时的时刻仍未取到该序列号的子RTP包,则返回NACK消息给云端设备,其中携带该序列号及未收到的子RTP包的N位的值;
106、云端设备根据所述NACK消息从发送缓存中取出相应的子RTP包重传。
本发明还提供了一种移动云计算环境中发生切换时的传输装置,包括:
计算模块、判断模块、第一传输模块、第二传输模块;
所述计算模块用于当移动终端发生接入网切换时,分别计算与移动终端之间的新、旧传输路径的平均丢包率;
所述判断模块用于判断是否新、旧传输路径的平均丢包率均小于预设门限,且所述移动终端电量大于低电量阈值,如果是则启动所述第一传输模块;如果不是则启动所述第二传输模块;
所述第一传输模块用于在被启动后根据新、旧传输路径的平均丢包率将待发送的实时传输协议RTP包拆分为两个子RTP包,分别从新、旧传输路径发送给所述移动终端;
所述第二传输模块用于在被启动后复制待发送的RTP包,将待发送的RTP包和复制的RTP包分别从新、旧传输路径发送给所述移动终端。
可选地,所述第一传输模块根据新、旧传输路径的平均丢包率将待发送的RTP包拆分为两个子RTP包是指:
所述第一传输模块根据新、旧传输路径的状态数据计算RTP包拆分比例:
其中,B1和B2分别为新、旧两条传输路径的带宽,PS为RTP包的大小,APLR1和APLR2分别为新、旧两条传输路径的平均丢包率;为丢包率的计算次数;
复制待发送的RTP包的前div1个字节的负荷作为第一子RTP包;复制待发送的RTP包中剩余的负荷作为第二子RTP包。
可选地,所述计算模块分别计算与移动终端之间的新、旧传输路径的平均丢包率是指:
所述计算模块分别解析所述移动终端在所述新、旧传输路径上通过RTP控制协议返回的消息体接收报告中的丢包率字段,获得新、旧传输路径上各RTCP发送周期T内的丢包率;对于新、旧传输路径,分别计算最近m个RTP控制协议发送周期的平均丢包率;m为大于1的正整数。
可选地,所述第一传输模块还用于将第一子RTP包的RTP协议头中的X位设为1,N位设为0,D位设为0;将第二子RTP包的RTP协议头中的X位设为1,N位设为1,D位设为0;第一、第二子RTP包的序列号与待发送的RTP包相同;
所述第二传输模块还用于将待发送的RTP包和复制得到的RTP包的RTP协议头中的X位均设为1,D位均设为1;N位任意设置;复制得到的RTP包的序列号与待发送的RTP包相同。
可选地,所述的装置还包括:
接收模块,用于接收RTP包,如果收到两个序列号相同、X位为1,D位为1的RTP包,则丢弃其中一个,另一个发送给相应的RTP应用程序;如果收到两个序列号相同、X位为1,D位为0的子RTP包,则合并后发送给相应的RTP应用程序,合并后的RTP包中,N位为0的子RTP包的负荷在前,N位为1的子RTP包的负荷在后;如果从取某一个序列号的子RTP包的时刻开始,到超过往返延时的时刻仍未取到该序列号的子RTP包,则返回NACK消息给云端设备,其中携带该序列号及未收到的子RTP包的N位的值;
重传模块,用于根据所述NACK消息从发送缓存中取出相应的子RTP包重传。
本发明在移动终端切换接入网时能够根据网络状态和终端电量选择合适的传输方式,采用备份路径的冗余模式或分割路径的高效模式,从而可以在切换时更高效进行传输,并保证服务质量。
附图说明
图1为实施例一的传输方法的流程示意图;
图2a为实施例一中云端的RTP协议栈和扩展协议栈的示意图;
图2b为实施例一中移动终端的RTP协议栈和扩展协议栈的示意图;
图3为实施例一的原理示意图。
具体实施方式
下面将结合附图及实施例对本发明的技术方案进行更详细的说明。
需要说明的是,如果不冲突,本发明实施例以及实施例中的各个特征可以相互结合,均在本发明的保护范围之内。另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
实施例一、一种移动云计算环境中发生切换时的传输方法,如图1所示,包括:
101、当移动终端发生接入网切换时,云端设备分别计算与移动终端之间的新、旧传输路径的平均丢包率;
102、判断是否新、旧传输路径的平均丢包率均小于预设门限,且所述移动终端电量大于低电量阈值,如果是则进行步骤103;如果不是则进行步骤104;
103、云端设备根据新、旧传输路径的平均丢包率将待发送的RTP(实时传输协议)包拆分为两个子RTP包,分别从新、旧传输路径发送给所述移动终端;
104、云端设备复制待发送的RTP包,将待发送的RTP包和复制的RTP包分别从新、旧传输路径发送给所述移动终端。
本实施例中,步骤102中云端设备对切换时传输方式的选择基于新、旧接入网的传输路径的丢包率预测值以及移动终端的剩余电量;步骤103为高效模式下的传输方式,步骤104为冗余模式下的传输方式。当然,还可以在进行自适应选择前先供用户自主选择传输方式;比如当移动终端移动到两个接入网的重叠区域时,多媒体应用可以为用户提供一个单选框,并包含对两种传输方式优缺点的简要介绍,询问用户采用哪个传输方式。例如,冗余模式可以提供平滑切换,但网络流量消耗较大,高效模式可以提供节约流量的平滑切换过程,但终端电量消耗较大。如果不提供此项功能,或用户选择使用网络侧选择的传输方式,则可以直接按本实施例进行自适应切换过程。其中,云端设备可以通过询问消息(如SIPINFO消息)获得移动终端电量;实际应用时可以根据移动终端的操作系统自行定制获取电量的方式。
本实施例中,步骤103中拆分出的两个RTP子包哪个从新路径发送、哪个从旧路径发送可以自行设置;步骤104中待发送的和复制的RTP包哪个从新路径发送、哪个从旧路径发送可以自行设置。
本实施例中,云计算业务平台和移动终端都需要扩展支持多媒体通信的相关功能。一部分扩展的相关功能作为SaaS(Software-as-a-Service,软件即服务)部署在云计算环境中,为业务开发者实现多媒体业务提供可调用的能力。另一部则安装在移动终端的客户端中。假设云计算业务为发送端,移动终端为接收端。本实施例中的RTP协议栈和扩展协议栈如图2a和图2b所示。其中,如图2a所示,cloud(云端)的Link status analyzer(链路状态分析器)从RTCP接收的状态报告中收集网络性能参数,并计算每条链路的丢包率;Handoff mode decider(切换模式判决)功能负责根据丢包率选择切换时的传输方式,即冗余模式或高效模式;RTP packet duplicator-splitter(RTP包复制/拆分功能)负责发送端的RTP包处理,在冗余模式下复制RTP包,在高效模式下按照两条路径的性能拆分RTP包。如图2b所示,Mobile device(移动终端)的RTP packet filter-combiner(RTP包过滤/合并功能)在冗余模式下选择新、旧传输路径发送RTP包中的一个提交给应用解析,而在高效模式下将从新、旧传输路径收到的拆分后的两部分RTP包合并。RTP retransmission processor(RTP重传器)判决丢失的RTP包是否可以重传。
本实施例提供的自适应传输机制使用并行的RTP包传输多媒体云计算业务的数据,基本思想如图3所示。假设切换过程中需要传输n个RTP包,冗余模式下,发送端将n个RTP复制,并通过新、旧两条传输路径分别发送,通过冗余发送,以消耗更多流量的代价来保证服务质量,保证服务的连续性。高效模式下,发送端将n个RTP包均分为两个子RTP包,由a和b表示,分别通过旧传输路径和新传输路径同时发送,可以节省流量且传输效率高,适用于网络性能较好的情况下。
本实施例的一种实施方式中,所述云端设备根据新、旧传输路径的平均丢包率将待发送的RTP包拆分为两个子RTP包的步骤具体可以包括:
云端设备根据新、旧传输路径的状态数据计算RTP包拆分比例:
其中,B1和B2分别为新、旧两条传输路径的带宽,PS为RTP包的大小,APLR1和APLR2分别为新、旧两条传输路径的平均丢包率;为丢包率的计算次数,系统初始时该值为0;
云端设备复制待发送的RTP包的前div1个字节的负荷作为第一子RTP包;复制待发送的RTP包中剩余的负荷作为第二子RTP包。
本实施例的一种实施方式中,云端设备分别计算与移动终端之间的新、旧传输路径的平均丢包率的步骤具体可以包括:
云端设备分别解析所述移动终端在所述新、旧传输路径上通过RTCP(RTP控制协议)返回的消息体RR(Receive Report,接收报告)中的FL(fraction lost,丢包率)字段,获得新、旧传输路径上各RTCP发送周期T内的丢包率;
云端设备对于新、旧传输路径,分别计算最近m个RTCP发送周期的平均丢包率;m为大于1的正整数,可根据实验或仿真结果确定。
本实施方式中,可采用下式计算所述平均丢包率:
这里i取不同值时表示不同的传输路径,比如i=1时是新传输路径,i=2时是旧传输路径;FLi(k)表示路径i在第k个RTCP发送周期内的丢包率。
本实施方式可以防止会话切换前用户在网络边界区域处徘徊导致的网能性能抖动;上述m个RTCP发送周期的平均丢包率也将作为高效模式时RTP包拆分所依据的链路状态参数;每次发送端收到接收端发送的RR消息,链路状态分析器记录丢包率,m个周期后,根据式(2)计算平均丢包率。其后,根据平均丢包率按照式(1)重新计算RTP包拆分比例;也就是说,RTP包拆分比例将会根据新、旧传输路径的性能不断进行调整,以适应网络情况的变化。
本实施例的一种实施方式中,为了RTP包的拆分和合并,扩展RTP协议头。当RTP的扩展位‘X’设为1时,‘D’位和‘N’位有以下含义:
D位(Dummy data)设为1时,RTP包的负荷是另一条路径传输数据的备份;D位设为0时,RTP包的负荷是拆分后的数据。
N位(Divided part number)设为0时,说明接收到的RTP包是拆分后的子RTP包,且其携带的负荷是原始RTP包负荷的前半部分;N位设为1时,子RTP包携带的负荷是原始RTP包负荷的后半部分。
可以看出,仅当D位是0时,才需要考虑N位的含义。
步骤103还可以包括:将第一子RTP包的RTP协议头中的X位设为1,N位设为0,D位设为0;将第二子RTP包的RTP协议头中的X位设为1,N位设为1,D位设为0;第一、第二子RTP包的序列号与待发送的RTP包相同;
步骤104还可以包括:将待发送的RTP包和复制得到的RTP包的RTP协议头中的X位均设为1,D位均设为1;N位可任意设置;复制得到的RTP包的序列号与待发送的RTP包相同。
本实施例的一种实施方式中,所述方法还可以包括:
105、移动终端接收所述云端设备发送的RTP包,如果收到两个序列号相同、X位为1,D位为1的RTP包,则丢弃其中一个,另一个发送给相应的RTP应用程序;如果收到两个序列号相同、X位为1,D位为0的子RTP包,则合并后发送给相应的RTP应用程序,合并后的RTP包中,N位为0的子RTP包的负荷在前,N位为1的子RTP包的负荷在后;如果从取某一个序列号的子RTP包的时刻开始,到超过往返延时的时刻仍未取到该序列号的子RTP包,则返回NACK消息给云端设备,其中携带该序列号及未收到的子RTP包的N位的值;云端设备根据所述NACK消息从发送缓存中取出相应的子RTP包重传。(比如读取到一个N位为0的子RTP包,但未读取到序列号相同的、N位为1的子RTP包,则所发送的N位的值为1;如果两个子RTP都未读取到,则所发送的N位的值为0和1);
106、云端设备根据所述NACK消息从发送缓存中取出相应的子RTP包重传。
本实施方式中,在冗余模式下,当接收端收到RTP包后,将其放入缓存,当接收端再次收到相同序列号的RTP包时,则将其丢弃。在高效模式下,接收端分别从两条路径收到子RTP包并将其重新合并。一般情况,拆分的数据包不能同时到达UE,到达时间差可能在几百秒以内,先到达的子RTP包被缓存在一个MAP中,并以原RTP包序列号作为主键。当另一部分子RTP包到达后,将两者重构为原RTP包。可以根据两条路径的RTT(往返延时)设置定时器RTT-timer。如果另一部分子RTP数据包在RTT-timer超时前未到达,则触发RTP包重传机制。
下面用一个具体的例子说明移动终端的接收过程,包括步骤S1~S10;该例子中,sn_l、sn_p和sn_m分别为最近提交到应用的RTP包、当前播放的RTP包以及丢失的RTP包的序列号;RTTλ为预设的时间阈值。
步骤S1:接收RTP包,并将其放入接收缓存中。
步骤S2:从接收缓存中取序列号为sn_l+1的RTP包;如果该RTP包的X位为1,D位为0,说明传输方式为高效模式,进行步骤S3;如果该RTP包的X位为1,D位为1,说明传输方式为冗余模式,进行步骤S6。
步骤S3:判断是否取到两个序列号为sn_l+1的RTP包,如果是则将其合并,设置X位为0,将合并后的RTP包提交到RTP应用程序;如果不是,则进行步骤S4。
步骤S4:为未收到的子RTP包启动往返延时计时器RTT-timer,进行步骤S5;当有多个序列号存在未收到的子RTP包时,为每个序列号各启动一个RTT-timer。
步骤S5:如果接收缓存非空,转移到步骤S2。
步骤S6:当某一个RTT-timer超时,从接收缓存中取该RRT-timer对应的序列号的子RTP包;如果取到两个子RTP包,则进行步骤S8;当(sn_m-sn_p)≥RTTλ时,则进行步骤S8。
步骤S7:将两个子RTP包合并,设置X位为0;将合并后的RTP包提交到RTP应用程序;进行步骤S5。
步骤S8:发送NACK消息请求重传未取到的子RTP包;启动重传计时器retransmit-timer;当有多个序列号的子RTP包请求重传时,为每个序列号各启动一个retransmit-timer。
步骤S9:当某一个retransmit-timer超时,根据retransmit-timer对应的序列号从接收缓存中取子RTP包;如果该序列号的两个子RTP包都已取到,则进行步骤S7;如果该序列号只取到一个子RTP包,则进行步骤S10。
步骤S10:将取到的子RTP包的X位设置0,提交到RTP应用程序;进行步骤S5。
本例子的上述步骤中,将X位设置为0时,还可以删除扩展位D和N。
在接入网边界的重叠区域,两个无线接入网的FER(平均误帧率)比正常情形大。为了进一步降低丢包率,本例子中采用RTP包选择性重传机制。文献RFC4588(J.Rey,D.Leon,A.Miyazaki,et al,RTP Retransmission Payload Format,IETF,2006.7)为时延不敏感的应用提出RTP重传方法,即所有丢失的RTP包均申请重传,而无时延限制。本例子与此不同,位于移动终端上的客户端中的RTP包重传器将计算丢失的RTP包是否可以在应用程序解析该包之前完成重传。若可以重传,云端设备根据移动终端发送的反馈消息NACK,重新发送丢失的RTP包。此外,根据新、旧两条传输路径的RTT设置定时器retransmit-timer,如果在retransmit-timer超时,重传的子RTP包仍然未到达,则重传失败。此时,移动终端将收到的一部分子RTP包发送至RTP应用层解析。
实施例二、一种移动云计算环境中发生切换时的传输装置,包括:
计算模块、判断模块、第一传输模块、第二传输模块;
所述计算模块用于当移动终端发生接入网切换时,分别计算与移动终端之间的新、旧传输路径的平均丢包率;
所述判断模块用于判断是否新、旧传输路径的平均丢包率均小于预设门限,且所述移动终端电量大于低电量阈值,如果是则启动所述第一传输模块;如果不是则启动所述第二传输模块;
所述第一传输模块用于在被启动后根据新、旧传输路径的平均丢包率将待发送的实时传输协议RTP包拆分为两个子RTP包,分别从新、旧传输路径发送给所述移动终端;
所述第二传输模块用于在被启动后复制待发送的RTP包,将待发送的RTP包和复制的RTP包分别从新、旧传输路径发送给所述移动终端。
本实施例中,所述计算模块、判断模块、第一传输模块、第二传输模块可以位于云端设备中。
本实施例的一种实施方式中,所述第一传输模块根据新、旧传输路径的平均丢包率将待发送的RTP包拆分为两个子RTP包具体可以是指:
所述第一传输模块根据新、旧传输路径的状态数据计算RTP包拆分比例:
其中,B1和B2分别为新、旧两条传输路径的带宽,PS为RTP包的大小,APLR1和APLR2分别为新、旧两条传输路径的平均丢包率;为丢包率的计算次数;
复制待发送的RTP包的前div1个字节的负荷作为第一子RTP包;复制待发送的RTP包中剩余的负荷作为第二子RTP包。
本实施例的一种实施方式中,所述计算模块分别计算与移动终端之间的新、旧传输路径的平均丢包率具体可以是指:
所述计算模块分别解析所述移动终端在所述新、旧传输路径上通过RTP控制协议返回的消息体接收报告中的丢包率字段,获得新、旧传输路径上各RTCP发送周期T内的丢包率;对于新、旧传输路径,分别计算最近m个RTP控制协议发送周期的平均丢包率;m为大于1的正整数。
本实施例的一种实施方式中,所述第一传输模块还可以用于将第一子RTP包的RTP协议头中的X位设为1,N位设为0,D位设为0;将第二子RTP包的RTP协议头中的X位设为1,N位设为1,D位设为0;第一、第二子RTP包的序列号与待发送的RTP包相同;
所述第二传输模块还可以用于将待发送的RTP包和复制得到的RTP包的RTP协议头中的X位均设为1,D位均设为1;N位任意设置;复制得到的RTP包的序列号与待发送的RTP包相同。
本实施方式的一种备选方案中,所述装置还可以包括:
接收模块,用于接收RTP包,如果收到两个序列号相同、X位为1,D位为1的RTP包,则丢弃其中一个,另一个发送给相应的RTP应用程序;如果收到两个序列号相同、X位为1,D位为0的子RTP包,则合并后发送给相应的RTP应用程序,合并后的RTP包中,N位为0的子RTP包的负荷在前,N位为1的子RTP包的负荷在后;如果从取某一个序列号的子RTP包的时刻开始,到超过往返延时的时刻仍未取到该序列号的子RTP包,则返回NACK消息给云端设备,其中携带该序列号及未收到的子RTP包的N位的值;
重传模块,用于根据所述NACK消息从发送缓存中取出相应的子RTP包重传。
其中,所述接收模块可以位于所述移动终端上;所述重传模块可以位于所述云端设备上。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明的权利要求的保护范围。
Claims (10)
1.一种移动云计算环境中发生切换时的传输方法,包括:
101、当移动终端发生接入网切换时,云端设备分别计算与移动终端之间的新、旧传输路径的平均丢包率;
102、判断是否新、旧传输路径的平均丢包率均小于预设门限,且所述移动终端电量大于低电量阈值,如果是则进行步骤103;如果不是则进行步骤104;
103、云端设备根据新、旧传输路径的平均丢包率将待发送的实时传输协议RTP包拆分为两个子RTP包,分别从新、旧传输路径发送给所述移动终端;
104、云端设备复制待发送的RTP包,将待发送的RTP包和复制的RTP包分别从新、旧传输路径发送给所述移动终端;
步骤103为高效模式下的传输方式,步骤104为冗余模式下的传输方式;在进行自适应选择传输方式前先提供用户自主选择传输方式。
2.如权利要求1所述的方法,其特征在于,所述云端设备根据新、旧传输路径的平均丢包率将待发送的RTP包拆分为两个子RTP包的步骤包括:
云端设备根据新、旧传输路径的状态数据计算RTP包拆分比例:
其中,B1和B2分别为新、旧两条传输路径的带宽,PS为RTP包的大小,APLR1和APLR2分别为新、旧两条传输路径的平均丢包率;为丢包率的计算次数;
云端设备复制待发送的RTP包的前div1个字节的负荷作为第一子RTP包;复制待发送的RTP包中剩余的负荷作为第二子RTP包。
3.如权利要求1所述的方法,其特征在于,所述云端设备分别计算与移动终端之间的新、旧传输路径的平均丢包率的步骤包括:
云端设备分别解析所述移动终端在所述新、旧传输路径上通过RTP控制协议返回的消息体接收报告中的丢包率字段,获得新、旧传输路径上各RTCP发送周期T内的丢包率;
云端设备对于新、旧传输路径,分别计算最近m个RTP控制协议发送周期的平均丢包率;m为大于1的正整数。
4.如权利要求1到3中任一项所述的方法,其特征在于,所述步骤103还包括:
将第一子RTP包的RTP协议头中的X位设为1,N位设为0,D位设为0;将第二子RTP包的RTP协议头中的X位设为1,N位设为1,D位设为0;第一、第二子RTP包的序列号与待发送的RTP包相同;
步骤104还包括:将待发送的RTP包和复制得到的RTP包的RTP协议头中的X位均设为1,D位均设为1;N位任意设置;复制得到的RTP包的序列号与待发送的RTP包相同。
5.如权利要求4所述的方法,其特征在于,还包括:
105、移动终端接收所述云端设备发送的RTP包,如果收到两个序列号相同、X位为1,D位为1的RTP包,则丢弃其中一个,另一个发送给相应的RTP应用程序;如果收到两个序列号相同、X位为1,D位为0的子RTP包,则合并后发送给相应的RTP应用程序,合并后的RTP包中,N位为0的子RTP包的负荷在前,N位为1的子RTP包的负荷在后;如果从取某一个序列号的子RTP包的时刻开始,到超过往返延时的时刻仍未取到该序列号的子RTP包,则返回NACK消息给云端设备,其中携带该序列号及未收到的子RTP包的N位的值;
106、云端设备根据所述NACK消息从发送缓存中取出相应的子RTP包重传。
6.一种移动云计算环境中发生切换时的传输装置,其特征在于,包括:
计算模块、判断模块、第一传输模块、第二传输模块;
所述计算模块用于当移动终端发生接入网切换时,分别计算与移动终端之间的新、旧传输路径的平均丢包率;
所述判断模块用于判断是否新、旧传输路径的平均丢包率均小于预设门限,且所述移动终端电量大于低电量阈值,如果是则启动所述第一传输模块;如果不是则启动所述第二传输模块;
所述第一传输模块用于在被启动后根据新、旧传输路径的平均丢包率将待发送的实时传输协议RTP包拆分为两个子RTP包,分别从新、旧传输路径发送给所述移动终端;为高效模式下的传输方式;
所述第二传输模块用于在被启动后复制待发送的RTP包,将待发送的RTP包和复制的RTP包分别从新、旧传输路径发送给所述移动终端;为冗余模式下的传输方式;
在进行自适应选择传输方式前先提供用户自主选择传输方式。
7.如权利要求6所述的装置,其特征在于,所述第一传输模块根据新、旧传输路径的平均丢包率将待发送的RTP包拆分为两个子RTP包是指:
所述第一传输模块根据新、旧传输路径的状态数据计算RTP包拆分比例:
其中,B1和B2分别为新、旧两条传输路径的带宽,PS为RTP包的大小,APLR1和APLR2分别为新、旧两条传输路径的平均丢包率;为丢包率的计算次数;
复制待发送的RTP包的前div1个字节的负荷作为第一子RTP包;复制待发送的RTP包中剩余的负荷作为第二子RTP包。
8.如权利要求6所述的装置,其特征在于,所述计算模块分别计算与移动终端之间的新、旧传输路径的平均丢包率是指:
所述计算模块分别解析所述移动终端在所述新、旧传输路径上通过RTP控制协议返回的消息体接收报告中的丢包率字段,获得新、旧传输路径上各RTCP发送周期T内的丢包率;对于新、旧传输路径,分别计算最近m个RTP控制协议发送周期的平均丢包率;m为大于1的正整数。
9.如权利要求6到8中任一项所述的装置,其特征在于:
所述第一传输模块还用于将第一子RTP包的RTP协议头中的X位设为1,N位设为0,D位设为0;将第二子RTP包的RTP协议头中的X位设为1,N位设为1,D位设为0;第一、第二子RTP包的序列号与待发送的RTP包相同;
所述第二传输模块还用于将待发送的RTP包和复制得到的RTP包的RTP协议头中的X位均设为1,D位均设为1;N位任意设置;复制得到的RTP包的序列号与待发送的RTP包相同。
10.如权利要求9所述的装置,其特征在于,还包括:
接收模块,用于接收RTP包,如果收到两个序列号相同、X位为1,D位为1的RTP包,则丢弃其中一个,另一个发送给相应的RTP应用程序;如果收到两个序列号相同、X位为1,D位为0的子RTP包,则合并后发送给相应的RTP应用程序,合并后的RTP包中,N位为0的子RTP包的负荷在前,N位为1的子RTP包的负荷在后;如果从取某一个序列号的子RTP包的时刻开始,到超过往返延时的时刻仍未取到该序列号的子RTP包,则返回NACK消息给云端设备,其中携带该序列号及未收到的子RTP包的N位的值;
重传模块,用于根据所述NACK消息从发送缓存中取出相应的子RTP包重传。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410422487.2A CN104168613B (zh) | 2014-08-25 | 2014-08-25 | 一种移动云计算环境中发生切换时的传输方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410422487.2A CN104168613B (zh) | 2014-08-25 | 2014-08-25 | 一种移动云计算环境中发生切换时的传输方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104168613A CN104168613A (zh) | 2014-11-26 |
CN104168613B true CN104168613B (zh) | 2018-11-02 |
Family
ID=51912202
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410422487.2A Active CN104168613B (zh) | 2014-08-25 | 2014-08-25 | 一种移动云计算环境中发生切换时的传输方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104168613B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106162768B (zh) * | 2015-05-21 | 2020-10-13 | 北京小米移动软件有限公司 | 无线接入点切换方法及装置 |
GB201515496D0 (en) | 2015-09-01 | 2015-10-14 | Microsoft Technology Licensing Llc | Packet transmissions |
CN107222895A (zh) * | 2016-03-22 | 2017-09-29 | 中兴通讯股份有限公司 | 一种终端在网络间切换的方法、装置及终端 |
CN107666375A (zh) * | 2016-07-28 | 2018-02-06 | 北京数码视讯科技股份有限公司 | 一种数据传输方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546418A (zh) * | 2012-01-16 | 2012-07-04 | 东北大学 | 基于重叠网络多径传输的ims客户端及媒体交换方法 |
CN102665142A (zh) * | 2012-04-05 | 2012-09-12 | 浙江大学 | 一种终端均衡速率的无线音视频并行传输方法 |
-
2014
- 2014-08-25 CN CN201410422487.2A patent/CN104168613B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546418A (zh) * | 2012-01-16 | 2012-07-04 | 东北大学 | 基于重叠网络多径传输的ims客户端及媒体交换方法 |
CN102665142A (zh) * | 2012-04-05 | 2012-09-12 | 浙江大学 | 一种终端均衡速率的无线音视频并行传输方法 |
Non-Patent Citations (1)
Title |
---|
《Soft Handover Mechanism Based on RTP Parallel Transmission for Mobile IPTV Services》;QIQI;《IEEE Transactionson Consumer Electronics》;20110110;第56卷(第4期);第2276-2281页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104168613A (zh) | 2014-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Nguyen et al. | Towards understanding TCP performance on LTE/EPC mobile networks | |
CN107347021B (zh) | 一种基于sdn网络可靠传输方法 | |
Xu et al. | CMT-NC: improving the concurrent multipath transfer performance using network coding in wireless networks | |
CN104168613B (zh) | 一种移动云计算环境中发生切换时的传输方法及装置 | |
CN102301784A (zh) | 移动通信系统中计算和发送资源请求并避免死锁情形的方法和系统 | |
JP2022516695A (ja) | データフロー処理方法、機器および記憶媒体 | |
CN111669418A (zh) | 数据通信方法、数据同步方法、系统、装置、网关设备、服务器及基站设备 | |
Abdelsalam et al. | TCP Wave resilience to link changes-A new transport layer approach towards dynamic communication environments | |
EP2817927A1 (en) | Method and apparatus for content delivery in radio access networks | |
Xing et al. | An online learning assisted packet scheduler for MPTCP in mobile networks | |
Rao et al. | Can realistic bittorrent experiments be performed on clusters? | |
CN106302213A (zh) | 一种数据传输的方法及装置 | |
Liu et al. | Cross-layer design for UAV-based streaming media transmission | |
EP2692105B1 (en) | Adaptive rate transmission over a radio interface | |
KR102510823B1 (ko) | 이동통신 시스템에서 핸드오버 방법 및 장치 | |
KR101252947B1 (ko) | 비디오 청크 분포에 적응적인 푸쉬-풀 혼성 스트리밍 방법 및 장치 | |
Shi et al. | Multipath deadline-aware transport proxy for space network | |
CN112398589B (zh) | 中继网络中数据传输的方法和设备 | |
Liao et al. | A multi-path mechanism for reliable VoIP transmission over wireless networks | |
Shamieh et al. | Dynamic cross-layer signaling exchange for real-time and on-demand multimedia streams | |
CN103138873A (zh) | 层二数据包时延的获取方法及设备 | |
Qi et al. | Soft handover mechanism based on RTP parallel transmission for mobile IPTV services | |
Liao et al. | A dual mode self-adaption handoff for multimedia services in mobile cloud computing environment | |
AT&T | ||
Nikitinskiy et al. | A stateless transport protocol in software defined networks |
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 |