一种用于流量分配的动态多代理前向差错控制方法

文档序号:7598792阅读:187来源:国知局
专利名称:一种用于流量分配的动态多代理前向差错控制方法
技术领域
本发明属于信息传播技术领域,特别涉及子网内部的流量分配方法。
背景技术
当对一个巨大的网络进行流媒体服务的时候,数据传输和服务调度存在着相当大的冗余,将一个巨大网络分割成一个个的子网有利于调度和数据传输。当一个子网的规模比较大的时候,传统的反馈方式,不但无法进行有效的差错控制,而且也无法提供一个有效的流量分配方法,造成带宽的浪费,而且还会因后向反馈使子网系统陷于重传请求处理而无法正常运行。

发明内容
本发明的目的是为克服已有技术的不足之处,提出一种用于流量分配的动态多代理前向差错控制方法。该方法通过子网中参与组播的多播客户端节点的互相协作和互相补充的方式进行流数据的传输,不但解决子网内部的流量分配问题,同时也提供有效的前向差错控制。
本发明提出的一种用于流量分配的动态多代理前向差错控制方法,包括组网方法和调度方法,其中所述的组网方法包括以下步骤1)流媒体数据源位于子网外部,为子网提供流媒体数据;2)位于子网内部的客户端节点接收来自流媒体数据源或其他客户端节点的媒体流,并缓存媒体流,在该客户端节点播放媒体流数据;3)步骤2)中的客户端节点,若向子网内其他客户端节点组播流媒体数据的客户端节点称为多播客户端节点;4)步骤2)中的客户端节点,若只接收来自同一子网内其他多播客户端节点的媒体流的客户端节点称为多播接收客户端节点;所述的调度方法,包括以下步骤5)当多播客户端节点接收到来自流媒体数据源发出的RTP数据包,并放入本地数据缓存等待流媒体播放的同时,判断该RTP数据包是否存在于已发送的RTP数据包列表中,如果是,则等待下一个RTP数据包;否则,将RTP数据包放入已发送的RTP数据包列表中,同时将此RTP数据包对子网内部的其他所有的客户端节点(除自己以外的多播客户端节点和所有多播接收客户端节点)进行组播;6)当多播客户端节点接收到来自其他多播客户端节点发出的RTP数据包时,判断该RTP包是否存在于已发送的RTP数据包列表中,如果是,则将RTP数据包放入已发送的RTP数据包列表中;否则,将RTP数据包放入本地数据缓存等待流媒体播放。
本发明的特点及技术效果本发明方法通过子网中参与组播的多播客户端节点的互相协作和互相补充的方式进行流数据的传输,引入了动态多代理流媒体数据源以及在数据发送前的前向差错控制方法,不但有效解决子网内部的流量分配问题,同时也在流媒体数据源的发送端进行有效的差错控制,效果明显优于客户端收到流媒体数据后的反馈控制。


图1是本发明方法的实施例流程图。
具体实施例方式
本发明的用于流量分配的动态多代理前向差错控制方法实施例,包括组网方法和调度方法,其中组网方法包括以下步骤(1)流媒体数据源位于子网外部,为子网提供流媒体数据;(2)位于子网内部的客户端节点接收来自流媒体数据源或其他客户端节点的媒体流,并缓存媒体流,在该客户端节点播放媒体流数据;(3)步骤(2)中的客户端节点,若向子网内其他客户端节点组播流媒体数据的客户端节点称为多播客户端节点;(4)步骤(2)中的客户端节点,若只接收来自同一子网内其他多播客户端节点的媒体流的客户端节点称为多播接收客户端节点;所述调度方法如图1所示,包括如下步骤(5)客户端节点从网络中接收到RTP数据包;(6)判断RTP数据包是否来自流媒体数据源,如果是,执行步骤(7)-(10),否则执行步骤(11)-(14);(7)将RTP数据包放入本地缓存,等待流媒体播放;(8)判断RTP包序列号是否在已发送RTP数据包列表中,如果是,返回步骤(5),否则执行步骤(9)-(10);(9)将RTP包序列号放入已发送RTP数据包列表中;(10)将RTP包对子网内部的所有客户端节点(除自己以外的多播客户端节点和所有多播接收客户端节点)进行组播RTP数据包,返回步骤(5);(11)判断RTP数据包是否来自同一子网内部的其他多播客户端节点,如果是,执行步骤(12)-(14),否则返回步骤(5);(12)判断RTP数据包是否在本地缓存中,如果是,执行步骤(13),否则执行步骤(14);(13)将RTP包序列号放入已发送RTP数据包列表中,返回步骤(5);(14)将RTP数据包放入本地缓存,等待流媒体播放,返回步骤(5)。
本发明方法中的动态多代理,体现在子网内部的多个多播客户端节点向子网内部的其他客户端节点组播流媒体数据。多个多播客户端节点同时未接收到某一个RTP数据包的概率远远小于一个多播客户端节点未收到该RTP数据包的概率,因此引入动态多代理可以有效地解决一个多播客户端节点未收到某个RTP数据包而导致整个子网无法收到该RTP数据包的问题。通过动态多代理的方法,也有效地对可预测的差错进行了控制,即前向差错控制。
权利要求
1.一种用于流量分配的动态多代理前向差错控制方法,包括组网方法和调度方法,其中所述的组网方法包括以下步骤1)流媒体数据源位于子网外部,为子网提供流媒体数据;2)位于子网内部的客户端节点接收来自流媒体数据源或其他客户端节点的媒体流,并缓存媒体流,在该客户端节点播放媒体流数据;3)步骤2)中的客户端节点,若向子网内其他客户端节点组播流媒体数据的客户端节点称为多播客户端节点;4)步骤2)中的客户端节点,若只接收来自同一子网内其他多播客户端节点的媒体流的客户端节点称为多播接收客户端节点;所述的调度方法,包括以下步骤5)当多播客户端节点接收到来自流媒体数据源发出的RTP数据包,并放入本地数据缓存等待流媒体播放的同时,判断该RTP数据包是否存在于已发送的RTP数据包列表中,如果是,则等待下一个RTP数据包;否则,将RTP数据包放入已发送的RTP数据包列表中,同时将此RTP数据包对子网内部的其他所有的客户端节点进行组播;6)当多播客户端节点接收到来自其他多播客户端节点发出的RTP数据包时,判断该RTP包是否存在于已发送的RTP数据包列表中,如果是,则将RTP数据包放入已发送的RTP数据包列表中;否则,将RTP数据包放入本地数据缓存等待流媒体播放。
全文摘要
本发明涉及一种用于流量分配的动态多代理前向差错控制方法,属于信息传播技术领域。本发明方法通过子网中参与组播的多播客户端节点的互相协作和互相补充的方式进行流数据的传输。本发明方法引入动态多代理机制,多个多播客户端节点同时向子网内部的其他客户端节点组播流媒体数据,有效地降低了因多播客户端节点自身数据丢包给子网带来的影响。本发明方法不但有效解决子网内部的流媒体数据流量分配的问题,同时也在流媒体数据源的发送端进行有效的前向差错控制,效果明显优于客户端收到流媒体数据后的反馈控制。
文档编号H04L12/56GK1604571SQ20041008671
公开日2005年4月6日 申请日期2004年10月29日 优先权日2004年10月29日
发明者赵黎, 张萌, 杨士强 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1