适宜移动流媒体应用的自动重传请求机制的制作方法

文档序号:7969442阅读:247来源:国知局
专利名称:适宜移动流媒体应用的自动重传请求机制的制作方法
技术领域
本发明涉及一种自动重传请求(ARQ: Automatic R印eat Request)机制,特别涉及一种 应用在移动流媒体中的自动重传请求机制。
背景技术
随着移动通信的迅速发展,人们不再满足于获取单独的文本、声音或图像信息,而是希 望得到同时包含文本、声音、图像和视频的流媒体信息。而第三代移动通信网络(3G)不仅 继承了时分多址接入(TDMA)技术,还发展了一系列全新的码分多址接入(CDMA)技术,使 得3G移动网络具备了高速数据传送能力,可以满足人们对流媒体信息日益增长的需求。据国 际电信联盟(ITU)定义,3G网络应具备至少144kbit/s的数据传送能力,目前具体运用的 传输技术可以实现从384kbit/s 2Mbit/s的速率甚至更高速率的数据传送。随着3G网络的 不断延伸及最新无线通信协议的发展和先进3G通信设备的研制成功,无线网络运营商可以随 时随地为移动用户提供宽带数据发送及接收应用业务,而其中的流媒体业务则是不同于2G和 2.5G的占据重要地位的新业务。移动流媒体技术则是移动通信中流媒体系统的核心技术,但 无线传输信道具有误码率高、传输时延大、传输速率不稳定等特点。
通过分组交换网发送实时流媒体数据包的显著特征就是有严格的时间要求和丢包率控制 要求。因为网络延迟和视频流的实时性对终端播放质量有很大的影响,在播放所能容忍的时 间延迟之前视频流就必须被播放。通常,为了节约带宽,视频数据是被压縮后再在分组网络 上传输的,而压縮后的视频数据很少能容忍数据的丢包,因为这样解码器得到的数据中将减 少大量的原始数据的信息。所以,除非采用同步码,否则大量的丢包将导致接收端无法正确 解码。因为这些错误数据包对播放质量影响很大,所以实时视频流传输的差错控制策略面临 的主要问题就是努力恢复丢失的数据包,从而降低对视频播放质量的影响,而传统的解决办 法是采用ARQ机制。
ARQ (Automatic R印eat Request)机制又叫自动重传请求机制,其基本原理是发送端对 每个要发送的数据包都进行顺序编号,接收端每接收到一个数据包,就向发送端发送ACK确 认信息进行应答确认。如果发送端在规定的时间内没有接收到接收者的ACK确认信息,就认 为该数据包传输过程中出现差错,就把该数据包重传一次,直到收到接收者ACK确认信息,
确定该数据包己被接收端正确接收,才继续发送下一个数据包。但是这种传统的ARQ机制对 数据包的确认延迟太长,并不符合移动流媒体对实时性的要求,而且无线信道本身由于误码 率很高,如果该ACK应答包本身丢失了,传统的ARQ机制并没有采取一个很好的机制来应付
这种情况,再者,传统的ARQ机制没有控制客户端的缓冲区中数据包容量,无法协调丢失包 恢复可能性和传输速率的关系,不能维持较高的丢失包恢复可能性。

发明内容
为克服上述缺陷,本发明的目的在于提供一种时延小的适宜移动流媒体应用的自动重传 请求机制。
为达到上述发明目的,本发明采用如下技术方案该适宜移动流媒体应用的自动重传请 求机制包括以下步骤
(1 )发送端按播放顺序在每一个数据包中添加序列号并将数据包发送到接收端;
(2)接收端根据其收到数据包的序列号之间的间隔控制重传。 其中,所述的步骤(2)具体为
(21) 接收端检测到其接收到的数据包的序列号有间隔时,请求发送端的重传缓沖区重 传该间隔序列号的数据包;
(22) 发送端接收到重传请求后,将所述间隔序列号的数据包打上重传标记,通过重传
缓冲区向接收端发送该间隔序列号的数据包。
其中,当接收端向发送端发送的重传请求本身丢失时,接收端采用树形数据结构控制方 法控制再次发送重传请求,所述的树形数据结构控制方法具体为-
(1) 接收端在请求发送端重传该间隔序列号的数据包后,将该间隔序列号的数据包节点
信息插入树形数据结构的叶节点;
(2) 接收端每接收一个数据包就遍历一次该树形数据结构,并将该树形数据结构每个节 点的计数器值减l,当计数器值为0时,接收端对该计数器值为0的间隔序列号的数据包再 次向发送端发送重传请求;
(3) 当接收端接收到重传数据包时,将接收到的重传该数据包在树形数据结构中对应的 叶节点删除;当重传数据包超过网络往返时延时,将该超过网络往返时延的重传数据包在树 形数据结构中对应的叶节点删除。
其中,所述间隔序列号的数据包节点信息包括计数器、序列号、左指针和右指针
其中,接收端将接收缓冲区中的数据容量实时反馈给发送端,发送端根据该数据容量调 整数据发送速率。
其中,当间隔序列号的数据包到达接收端之前,接收端已播放到该间隔序列号的数据包 时,接收端将刚收到的数据包插入到该间隔中并播放。
从以上分析可以看出,该机制模型的特点就是检测丢包的时候采用一种基于间隔的方法 来检测,当丢包发生时候,这种方法能很快的通知发送方重传,因此重传延迟非常小。而且 客户端能实时的将缓冲区中的数据包容量反馈给发送端,从而使发送端根据接收端缓冲区屮 的数据包容量调整发送速率,使接收端的缓冲区中数据包容量维持在一个合适的水平不至于 溢出,这样就增加了对丢失包恢复的可能性。另外,该机制采用树型的数据结构来控制重传, 这种控制方法对可以省去嵌入式系统中稀缺定时器资源,用于重传请求本身丢失后再次发送 重传请求,适合移动终端这种资源有限的嵌入式设备。并且当重传包在到达接收缓冲区之前,
接收端的播放已经到达重传包的序列时,如图3中,在重传数据包在到达接收缓冲区之前, 接收端已经播放到了播放序列号为3的数据包,本发明采用的弥补方式就是把刚刚收到的数 据包直接插入到该间隔,这种方法虽然可能对一瞬间的视频质量产生可以察觉到的影响,但 是连续视频流能帮助提高差错恢复效率,从而提高视频流的传输质量,保证视频流的连续性。


图1为本发明适宜移动流媒体应用的自动重传请求机制的示意图2为本发明适宜移动流媒体应用的自动重传请求机制的树型数据结构示意图3为本发明适宜移动流媒体应用的自动重传请求机制的树型数据结构节点示意图4为本发明适宜移动流媒体应用的自动重传请求机制的移动流媒体的QoS控制框图。
具体实施例方式
对于该端到端的QoS控制策略,我们将发送端到接收端整个过程分为三个阶段来讨论。 首先是媒体源数据的编码过程,在编码器端采用改进的PFGS (渐进精细可伸縮性)编码算法 来适应无线信道带宽的波动情况,以最大限度的利用带宽,从而提高媒体流的传输质量。其 次是服务器端,负责将媒体流数据通过混合IP网络发送给客户端。为了使媒体流数据增强抗 误码能力,我们对编码后的媒体数据重要部分做FEC (前向纠错编码)重点保护,然后将编 码后的媒体数据进行RTP (实时传输协议)打包,传给发送缓冲区,同时结合RTCP (RTP控 制协议)实时将网络的变化情况反馈给QoS控制模块,QoS控制模块将收到的数据进行整理
分析后发送给速率控制模块,通过给模块来调整输出的码流速率。最后在接收端,终端用户 一边从接收缓冲区中取数据,解包,播放, 一边从混合IP网上将数据包暂存于接收缓冲区中, 并同时将接收情况反馈给发送端,如果数据包发生丢失,我们采用改进的ARQ机制来重传该 包。
由于移动流媒体对实时性要求高,视频流对延迟很敏感,如果数据包在传输过程中丢失 了,那接收端将反馈给发送端,从而通过重传缓冲区重传该数据包,本发明适宜移动流媒体 应用的自动重传请求机制采用一种基于间隔的方法来检测数据包的丢失,以减少重传延迟。 发送端发送的每个数据包包头都包含一个序列号以标明该数据包的播放序列,所以当到达的 数据包的序列和希望得到的序列之间有间隔,那我们就立刻做出判断认为有数据包丢失了。 当收到的两个连续的数据包的序列号之间有间隔时,接收端通知重传缓冲区重传该数据包, 发送方接收到重传请求后,就把需要重传的数据包打上重传标记,并在网络RTD (round trip delay:往返时延)允许范围内,通过重传缓冲区向接收端发送数据包,直到接收端收到为止。 比如,如图1所示,在接收端,当我们已经收到序列号为2的数据包后,我们希望得到序列 号为3的数据包,但实际收到的却是序列号为4的数据包,那就认序列号为3的数据包丢失 了,那我们就立刻向重传缓冲区发送序列号3的数据包的重传请求(NAK3),通知发送方序列 号为3的数据包己经丢失并请求重传,发送方收到NAK3后就把序列号为3的数据包打上重传 标记,加到重传缓冲区中,然后向接收端发送该数据包,接收端接收到该重传包后就向发送 端发送确认信息,发送端接收到该重传包确认信息后就把重传序列号为3的数据包从重传缓 冲区中删除掉。如果整个过程超过了网络的RTD允许范围,那么该数据包也将丢失。由于采 用基于间隔的检测数据包丢失的方法中检测过程简单,只需要检测序列号是否有间隔,实现 快速检测数据包丢失,可以减小延迟,使得延迟时间能满足移动流媒体的要求,能够满足移 动流媒体技术对时延的要求。
如果重传请求本身再丢失了,那这个时候一般需要设置定时器来检测,确定重新发送的
时间,在重传请求发出后一定时间内没有收到确认信息就再次发出重传请求。但定时器是系
统资源,在嵌入式系统中,这是稀缺资源,它不可能设置在接收端,所以我们提出一种树形
数据结构来有效代替定时器,从而实现发送多次重传发送请求。树形数据结构多重传发送请
求如图2所示。在图2的树形结构的中,如果客户端检测到有数据包丢失了,就往该结构中
插入一个叶节点,从而将需要重传的节点就构成一颗二叉树。如图3所示,在这颗二叉树上
的每个节点都包括如下几项,计数器(counter)、序列号、左指针、右指针,其中计数器是 表示对该丢失的重传数据包重新发出重传请求的时间,序列号表示该数据包的播放序列号, 左指针上指向二叉树的左孩子,右指针指向二叉树的右孩子。当每接收一个新数据包就遍历 一次这个二叉树一次,每个节点的counter值就减1,当counter值为0的时,就对该丢失
数据包再次发出重传请求。二叉树中节点的couter值选择要合理,不同的网络性能该值不同, 但有个原则,该值从初值变为0的时间,必须要小于网络的RTD值,这样就可以防止在还没 有进行二次重传时,就因为超过了网络的RTD而被删除。当接收端接收到重传请求包的时候 就把该包在二叉树中的节点删除,或者当该包超过了网络的RTD值,那么该包在二叉树中的 节点也将删除掉。这种控制多次重传发送请求的方法实现了丢重传数据包丢失后的再次重传, 并且不需要用定时器,可以节约系统的定时器资源。
如果当重传数据包在到达接收端缓冲区之前,接收端的播放已经到达重传包的序列时, 采取措施来填补该间隔,就是把刚刚收到的数据包直接插入到该间隔,如图4中,在重传数 据包在到达接收缓冲区之前,接收端已经播放到了播放序列号为3的数据包,这时就把序列 号为4的数据包填补到序列号3的位置,这种方法能进一步帮助提高差错恢复效率,从而提 高视频流的传输质量,保证视频流的连续性。
已有的研究表明,当在进行丢包检测时,如果客户端缓存里数据包在保证数据包不溢出 的情况下,容量越高,那么对丢失包的恢复可能性能就越大。在图1中,接收缓冲区中数据 包的容量将可能由于数据包的丢失、延迟等而发生变化,并当接收端的接收速率b大于播放 速率c的时候,接收缓冲区中数据包的容量也将增加,为了保证接收缓冲区数据包得容量较 高且不会溢出,本发明将接收端的缓冲区中数据包容量实时反馈给发送方,发送方根据该接 收端的缓冲区中数据包容量调整发送方的发送速率,从而保证接收方的接收缓冲区中数据包 的容量维持在一定水平且不至于溢出且维持较高的丢失包恢复可能性。
本发明适宜移动流媒体应用的自动重传请求机制是作为移动流媒体QoS控制策略的一部 分来实现的。在实际运用中,移动IP网络流媒体的端到端QoS控制系统架构如图4所示,在 视频发送端包括视频编码器、UDP/RTP打包、QoS监控、FEC (前向纠错编码)和速率控制、 发送缓冲区、重传缓冲区等几个模块。其中,QoS监控包括从RTCP反馈报告中检测出RTT (往 返传输时间)和包丢失率等参数。速率控制模块根据RTT和丢失率等参数,估算可用带宽, 用于调整编码器的输出码率。接收端的UDP (用户数据协议)/RTP解包模块同时生成接收端 反馈信息,传回发送端。视频解码器具有一定的误码恢复能力,包括对时延抖动和丢包的缓 冲处理,以及时间和空间域上的错误掩盖等。
权利要求
1、一种适宜移动流媒体应用的自动重传请求机制,其特征在于包括以下步骤(1)发送端按播放顺序在每一个数据包中添加序列号并将数据包发送到接收端;(2)接收端根据其收到数据包的序列号之间的间隔控制重传。
2、 按照权利要求l所述的适宜移动流媒体应用的自动重传请求机制,其特征在于所述 的步骤(2)具体为(21) 接收端检测到其接收到的数据包的序列号有间隔时,请求发送端的重传缓冲区重 传该间隔序列号的数据包;(22) 发送端接收到重传请求后,将所述间隔序列号的数据包打上重传标记,通过重传 缓冲区向接收端发送该间隔序列号的数据包。
3、 按照权利要求2所述的适宜移动流媒体应用的自动重传请求机制,其特征在于当接收端向发送端发送的重传请求本身丢失时,接收端采用树形数据结构控制方法控制再次发送 重传请求,所述的树形数据结构控制方法具体为-u)接收端在请求发送端重传该间隔序列号的数据包后,将该间隔序列号的数据包节点 信息插入树形数据结构的叶节点;(2) 接收端每接收--个数据包就遍历一次该树形数据结构,并将该树形数据结构每个节 点的计数器值减l,当计数器值为0时,接收端对该计数器值为0的间隔序列号的数据包再 次向发送端发送重传请求;(3) 当接收端接收到重传数据包时,将接收到的重传该数据包在树形数据结构中对应的 叶节点删除;当重传数据包超过网络往返时延时,将该超过网络往返时延的重传数据包在树 形数据结构中对应的叶节点删除。
4、 按照权利要求3所述的适宜移动流媒体应用的自动重传请求机制,其特征在于所述 间隔序列号的数据包节点信息包括计数器、序列号、左指针和右指针。
5、 按照权利要求l所述的适宜移动流媒体应用的自动重传请求机制,其特征在于接收 端将接收缓冲区中的数据容量实时反馈给发送端,发送端根据该数据容量调整数据发送速率。
6、 按照权利要求2或3所述的适宜移动流媒体应用的自动重传请求机制,其特征在于当间隔序列号的数据包到达接收端之前,接收端已播放到该间隔序列号的数据包时,接收端 将刚收到的数据包插入到该间隔中并播放。
全文摘要
本发明公开了一种适宜移动流媒体应用的自动重传请求机制,为解决现有的自动重传请求机制时延较大而不适宜运用到移动流媒体中的问题而发明的。该适宜移动流媒体应用的自动重传请求机制包括(1)发送端按播放顺序在每一个数据包中添加序列号并将数据包发送到接收端;(2)接收端根据其收到数据包的序列号之间的间隔控制重传。其中重传控制为接收端检测到其接收到的数据包的序列号有间隔时,请求发送端的重传缓冲区重传该间隔序列号的数据包。这种检测数据包丢失的方法由于只需要检测序列号之间是否有间隔,实现了快速检测数据包丢失,使得重传时延减小了,本发明适宜移动流媒体应用的自动重传请求机制主要运用到移动流媒体的视频流播放中。
文档编号H04L1/16GK101179362SQ200610138330
公开日2008年5月14日 申请日期2006年11月7日 优先权日2006年11月7日
发明者余同军, 刘继兴, 云 叶 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1