一种多媒体流传输系统中网络拥塞自适应装置及方法

文档序号:10572598阅读:361来源:国知局
一种多媒体流传输系统中网络拥塞自适应装置及方法
【专利摘要】本发明公开了一种多媒体流传输系统中网络拥塞自适应装置,包括管理服务模块、多媒体源模块、多媒体发布模块、传输模块、客户端模块和网络拥塞状态监测模块。本发明还公开了一种多媒体流传输系统中网络拥塞自适应方法,通过管理服务模块、多媒体源模块、多媒体发布模块、传输模块、客户端模块和网络拥塞状态监测模块之间相互配合,避免网络拥塞对多媒体数据流传输的影响,又能够降低对流媒体服务器的要求,减轻流媒体服务器的压力。
【专利说明】
一种多媒体流传输系统中网络拥塞自适应装置及方法
技术领域
[0001]本发明涉及计算机网络视频传输技术领域中的实时传输领域,具体涉及一种多媒体流传输系统中网络拥塞自适应装置,还涉及一种多媒体流传输系统中网络拥塞自适应方法。用于提高不同网络网络拥塞环境下的视频传输的流畅性。
【背景技术】
[0002]随着互联网、信息技术的不断发展,媒体服务的数字化及互动程度日益提高。技术的日益成熟使得用户能够轻而易举地访问内容,因此大家开始期望能够通过有线与移动设备随时随地体验超高质量的视频与其他的丰富的媒体类型。此外,内容拥有者也在寻求更加有效的新途径,以便更广泛地传播其内容并且以尽可能多的方式从中获利。
[0003]但网络资源是动态改变、不可预测的,当前的网络一般只能提供尽力而为(best-effort)的服务,无法提供任何环境和场景下都能安全访问的保证。在进行流媒体数据传输时,用户对流媒体传输中实时性要求远大于可靠性,随机的突发的丢包和过大的时延,不可避免的带来拥塞,甚至整个网络的崩溃。因此系统在充分利用网络带宽的情况下,要保证流媒体传输的最佳服务质量,就必须使用自适应拥塞控制技术,采用自适应网络带宽的方式来保证流媒体数据的实时传输。

【发明内容】

[0004]本发明的目的是针对现有技术存在的上述问题,提供一种多媒体流传输系统中网络拥塞自适应装置,还提供了一种多媒体流传输系统中网络拥塞自适应方法,能够较好的适应网络拥塞情况,又能够降低对流媒体服务器的要求,减轻流媒体服务器的压力,具有良好的应用价值。
[0005]本发明的上述目的通过以下技术方案实现:
一种多媒体流传输系统中网络拥塞自适应装置,包括:
管理服务模块,用于接收到来自客户端模块的多媒体数据流请求,在已经注册的多媒体数据流中查找被请求多媒体数据流;将被请求的多媒体数据流的码流的分辨率、各个码流对应的码率以及客户端模块要求的起始码率通知多媒体发布模块;
多媒体源模块,用于准备待发布的各个多媒体数据流,每个多媒体数据流包括同一内容、相同分辨率、不同码率的码流,将各个待发布的多媒体数据流注册到管理服务模块;
多媒体发布模块,用于为被请求的多媒体数据流的各个码率的码流分别建立发布通道,用于在首次发布被请求的多媒体数据流时,依据起始码率和每个发布通道对应的码流的码率,选择发布通道中对应码流的码率与起始码率最接近的发布通道,作为当前选择的发布通道,
还用于通过当前选择的发布通道将多媒体源模块中的对应的码流发布到传输模块; 还用于接收网络拥塞状态监测模块发送的网络状态,
还用于依据客户端模块选择的初始码率、当前选择发布通道对应码流的码率,以及网络拥塞状态监测模块通告的网络状态,选择降低、提高、还是维持待发布的多媒体数据流的码率;
传输模块,用于将码流传输到客户端模块;
客户端模块,用于依据用户的要求,向管理服务模块发出多媒体数据流请求,请求传送某个已经发布的多媒体数据流,及初始码率,
还用于接收到码流,回放/回显给用户;并统计接收码流的收包统计信息,收包统计信息包括平均传输延时、丢包率;将收包统计信息反馈给服务器端的网络拥塞状态监测模块;网络拥塞状态监测模块,用于接收来自客户端模块的收包统计信息,判断网络状态为稳定状态或非稳定状态,并将网络状态通告给媒体发布模块。
[0006]如上所述的网络拥塞状态监测模块通过以下方式判断网络状态:
如果平均传输延时小于或等于预设的延时阈值,且丢包率小于或等于预设的丢包阈值,则判断网络状态为稳定状态;否则,判断网络状态为非稳定状态。
[0007]如上所述的多媒体发布模块依据选择降低、提高、还是维持待发布的多媒体数据流的码率依据以下方式:
如果网络状态为稳定状态,且当前选择的发布通道对应码流的码率低于用户请求的初始码率,则选择码流的码率高于当前选择的发布通道中的码流的码率,且低于或等于用户请求的初始码率的发布通道中码率最低的发布通道作为新选择的发布通道;
如果网络状态为稳定状态,且当前选择的发布通道对应码流的码率与用户请求的初始码率相等或高于初始码率,则保持当前发布通道的选择;
如果网络状态为非稳定状态,且当前选择的发布通道对应码流的码率已经是所有发布通道中码率最低的,则保持当前发布通道的选择;
如果网络状态为非稳定状态,且当前选择的发布通道对应码流的码率不是所有发布通道中码率最低的,则选择码流的码率低于当前选择的发布通道中的码流的码率,且高于或等于最低码率的发布通道中码率最高的发布通道作为新选择的发布通道。
[0008]一种多媒体流传输系统中网络拥塞自适应方法,包括以下步骤:
步骤1、多媒体源模块准备待发布的各个多媒体数据流,每个多媒体数据流包括同一内容、相同分辨率、不同码率的码流,多媒体源模块将各个待发布的多媒体数据流注册到管理服务t吴块;
步骤2、客户端模块依据用户的要求,向管理服务模块发出多媒体数据流请求,请求传送某个已经发布的多媒体数据流,及初始码率;
步骤3、管理服务模块接收到来自客户端模块的多媒体数据流请求,在已经注册的多媒体数据流中查找被请求多媒体数据流;管理服务模块将被请求的多媒体数据流的码流的分辨率、各个码流对应的码率以及客户端模块要求的起始码率通知多媒体发布模块,多媒体发布模块为被请求的多媒体数据流的各个码率的码流分别建立发布通道;
步骤4、多媒体发布模块依据起始码率和每个发布通道对应的码流的码率,选择发布通道中对应码流的码率与起始码率最接近的发布通道,作为当前选择的发布通道;
步骤5、当前选择的发布通道将多媒体源模块中的对应的码流发布到传输模块;
步骤6、传输模块将码流传输到客户端模块;
步骤7、客户端模块接收到码流,回放/回显给用户;并统计接收码流的收包统计信息,收包统计信息包括报文的平均传输延时、丢包率;将收包统计信息反馈给服务器端的网络拥塞状态监测模块,
步骤8、网络拥塞状态监测模块接收来自客户端模块的收包统计信息,判断网络状态为稳定状态或非稳定状态,并将网络状态通告给多媒体发布模块;
步骤9、多媒体发布模块依据客户端模块选择的初始码率、当前选择发布通道对应码流的码率,以及网络拥塞状态监测模块通告的网络状态,选择降低、提高、还是维持待发布的多媒体数据流的码率。
[0009]如上所述的网络状态通过以下方式判断:
如果平均传输延时小于或等于预设的延时阈值,且丢包率小于或等于预设的丢包阈值,则判断网络状态为稳定状态;否则,判断网络状态为非稳定状态。
[0010]如上所述的步骤9包括以下步骤:
步骤9.1、如果网络状态为稳定状态,且当前选择的发布通道(如果是第一次达到此步,那么此处的当前选择的发布通道是在步骤4选择的;如果已经是多次到达该步骤,那么此处的当前选择的发布通道,是在上一次到达步骤10时选择的)对应码流的码率低于用户请求的初始码率,则选择码流的码率高于当前选择的发布通道中的码流的码率,且低于或等于用户请求的初始码率的发布通道中码率最低的发布通道作为新选择的发布通道,返回步骤5;
步骤9.2、如果网络状态为稳定状态,且当前选择的发布通道对应码流的码率与用户请求的初始码率相等或高于初始码率,则保持当前发布通道的选择;返回步骤6;
步骤9.3、如果网络状态为非稳定状态,且当前选择的发布通道对应码流的码率已经是所有发布通道中码率最低的,则保持当前发布通道的选择;返回步骤6;
步骤9.4、如果网络状态为非稳定状态,且当前选择的发布通道对应码流的码率不是所有发布通道中码率最低的,则选择码流的码率低于当前选择的发布通道中的码流的码率,且高于或等于最低码率的发布通道中码率最高的发布通道作为新选择的发布通道,返回步骤5。
[0011]本发明相对于现有技术具有以下有益效果:
I)传统多媒体服务器在支持流媒体变码率传输时,通常采用的方法是实时将多媒体信息编码成期望码率的码流。这就要求多媒体服务器有较强的计算能力,以满足实时编码、转码的要求。本发明提出的方法,则是以存储空间换取编码、转码的时间,在多媒体发布之前,就准备好各种目标码率的码流,用以降低对多媒体服务器计算能力的要求。相对于提高服务器的计算能力,增加服务器的存储空间,其成本是小很多。
[0012]2)本发明中,为同一个多媒体流准备的不同码率的码流,其分辨率是完全一致的,这就保证了客户在回放的时候,窗口的大小是保持不变的。相对于传统方式,改变码率后,客户端回放窗口的大小也会随着变化,有着良好的用户体验。
【附图说明】
[0013]图1为一种多媒体流传输系统中网络拥塞自适应装置的硬件连接示意图;
图2为一种多媒体流传输系统中网络拥塞自适应方法的流程示意图。
【具体实施方式】
[0014]以下结合附图对本发明的技术方案进一步详细说明:
一种多媒体流传输系统中网络拥塞自适应装置,包括:
管理服务模块;
多媒体源模块;
网络拥塞状态监测模块;
多媒体发布模块;
传输模块;
客户端模块;
管理服务模块,用于接收到来自客户端模块的多媒体数据流请求,在已经注册的多媒体数据流中查找被请求多媒体数据流;将被请求的多媒体数据流的码流的分辨率、各个码流对应的码率以及客户端模块要求的起始码率通知多媒体发布模块。
[0015]多媒体源模块,用于准备待发布的各个多媒体数据流,每个多媒体数据流包括同一内容、相同分辨率、不同码率的码流,将各个待发布的多媒体数据流注册到管理服务模块;
对于实时采集视频对应的多媒体数据流,应该是同一个摄像头的源码,经过不同的编码参数得到的相同分辨率、不同码率的多个码流;
而对于视频点播对应的多媒体数据流,则应该是同一个内容、相同分辨率、不同码率的多个码流。
[0016]多媒体发布模块,用于为被请求的多媒体数据流的各个码率的码流分别建立发布通道,用于在首次发布被请求的多媒体数据流时,依据起始码率和每个发布通道对应的码流的码率,选择发布通道中对应码流的码率与起始码率最接近的发布通道,作为当前选择的发布通道;
还用于通过当前选择的发布通道将多媒体源模块中的对应的码流发布到传输模块; 还用于接收网络拥塞状态监测模块发送的网络状态;
还用于依据客户端模块选择的初始码率、当前选择发布通道对应码流的码率,以及网络拥塞状态监测模块通告的网络状态,选择降低、提高、还是维持待发布的多媒体数据流的码率;其选择规则如下:
如果网络状态为稳定状态,且当前选择的发布通道对应码流的码率低于用户请求的初始码率,则选择码流的码率高于当前选择的发布通道中的码流的码率,且低于或等于用户请求的初始码率的发布通道中码率最低的发布通道作为新选择的发布通道;
如果网络状态为稳定状态,且当前选择的发布通道对应码流的码率与用户请求的初始码率相等或高于初始码率,则保持当前发布通道的选择;
如果网络状态为非稳定状态,且当前选择的发布通道对应码流的码率已经是所有发布通道中码率最低的,则保持当前发布通道的选择;
如果网络状态为非稳定状态,且当前选择的发布通道对应码流的码率不是所有发布通道中码率最低的,则选择码流的码率低于当前选择的发布通道中的码流的码率,且高于或等于最低码率的发布通道中码率最高的发布通道作为新选择的发布通道。
[0017]传输模块,用于将码流传输到客户端模块。
[0018]客户端模块,用于依据用户的要求,向管理服务模块发出多媒体数据流请求,请求传送某个已经发布的多媒体数据流,及初始码率;
还用于接收到码流,回放/回显给用户;并统计接收码流的收包统计信息,收包统计信息包括平均传输延时、丢包率;将收包统计信息反馈给服务器端的网络拥塞状态监测模块。
[0019]网络拥塞状态监测模块,用于接收来自客户端模块的收包统计信息,判断网络状态为稳定状态或非稳定状态,并将网络状态通告给媒体发布模块;
网络状态的判断规则如下:
如果平均传输延时小于预设的延时阈值,且丢包率小于预设的丢包阈值,则判断网络状态为稳定状态;否则,判断网络状态为非稳定状态。
[0020]—种多媒体流传输系统中网络拥塞自适应方法,其具体实施步骤如下:
步骤1、多媒体源模块准备待发布的各个多媒体数据流,每个多媒体数据流包括同一内容、相同分辨率、不同码率的码流,多媒体源模块将各个待发布的多媒体数据流注册到管理服务t吴块;
对于实时采集视频对应的多媒体数据流,应该是同一个摄像头的源码,经过不同的编码参数得到的相同分辨率、不同码率的多个码流;
而对于视频点播对应的多媒体数据流,则应该是同一个内容、相同分辨率、不同码率的多个码流;
步骤2、客户端模块依据用户的要求,向管理服务模块发出多媒体数据流请求,请求传送某个已经发布的多媒体数据流,及初始码率;
步骤3、管理服务模块接收到来自客户端模块的多媒体数据流请求,在已经注册的多媒体数据流中查找被请求多媒体数据流;管理服务模块将被请求的多媒体数据流的码流的分辨率、各个码流对应的码率以及客户端模块要求的起始码率通知多媒体发布模块,多媒体发布模块为被请求的多媒体数据流的各个码率的码流分别建立发布通道;
步骤4、多媒体发布模块依据起始码率和每个发布通道对应的码流的码率,选择发布通道中对应码流的码率与起始码率最接近的发布通道,作为当前选择的发布通道;
步骤5、当前选择的发布通道将多媒体源模块中的对应的码流发布到传输模块;
步骤6、传输模块将码流传输到客户端模块;
步骤7、客户端模块接收到码流,回放/回显给用户;并统计接收码流的收包统计信息,收包统计信息包括报文的平均传输延时、丢包率;将收包统计信息反馈给服务器端的网络拥塞状态监测模块。
[0021]步骤8、网络拥塞状态监测模块接收来自客户端模块的收包统计信息,判断网络状态为稳定状态或非稳定状态,并将网络状态通告给多媒体发布模块;
网络状态的判断规则如下:
步骤8.1、如果平均传输延时小于或等于预设的延时阈值,且丢包率小于或等于预设的丢包阈值,则判断网络状态为稳定状态;否则,判断网络状态为非稳定状态;
步骤9、多媒体发布模块依据客户端模块选择的初始码率、当前选择发布通道对应码流的码率,以及网络拥塞状态监测模块通告的网络状态,选择降低、提高、还是维持待发布的多媒体数据流的码率; 其选择规则如下:
步骤9.1、如果网络状态为稳定状态,且当前选择的发布通道(如果是第一次达到此步,那么此处的当前选择的发布通道是在步骤4选择的;如果已经是多次到达该步骤,那么此处的当前选择的发布通道,是在上一次到达步骤10时选择的)对应码流的码率低于用户请求的初始码率,则选择码流的码率高于当前选择的发布通道中的码流的码率,且低于或等于用户请求的初始码率的发布通道中码率最低的发布通道作为新选择的发布通道,返回步骤5;
步骤9.2、如果网络状态为稳定状态,且当前选择的发布通道对应码流的码率与用户请求的初始码率相等或高于初始码率,则保持当前发布通道的选择;返回步骤6;
步骤9.3、如果网络状态为非稳定状态,且当前选择的发布通道对应码流的码率已经是所有发布通道中码率最低的,则保持当前发布通道的选择;返回步骤6;
步骤9.4、如果网络状态为非稳定状态,且当前选择的发布通道对应码流的码率不是所有发布通道中码率最低的,则选择码流的码率低于当前选择的发布通道中的码流的码率,且高于或等于最低码率的发布通道中码率最高的发布通道作为新选择的发布通道,返回步骤5。
[0022]本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
【主权项】
1.一种多媒体流传输系统中网络拥塞自适应装置,其特征在于,包括: 管理服务模块,用于接收到来自客户端模块的多媒体数据流请求,在已经注册的多媒体数据流中查找被请求多媒体数据流;将被请求的多媒体数据流的码流的分辨率、各个码流对应的码率以及客户端模块要求的起始码率通知多媒体发布模块; 多媒体源模块,用于准备待发布的各个多媒体数据流,每个多媒体数据流包括同一内容、相同分辨率、不同码率的码流,将各个待发布的多媒体数据流注册到管理服务模块; 多媒体发布模块,用于为被请求的多媒体数据流的各个码率的码流分别建立发布通道,用于在首次发布被请求的多媒体数据流时,依据起始码率和每个发布通道对应的码流的码率,选择发布通道中对应码流的码率与起始码率最接近的发布通道,作为当前选择的发布通道, 还用于通过当前选择的发布通道将多媒体源模块中的对应的码流发布到传输模块; 还用于接收网络拥塞状态监测模块发送的网络状态, 还用于依据客户端模块选择的初始码率、当前选择发布通道对应码流的码率,以及网络拥塞状态监测模块通告的网络状态,选择降低、提高、还是维持待发布的多媒体数据流的码率; 传输模块,用于将码流传输到客户端模块; 客户端模块,用于依据用户的要求,向管理服务模块发出多媒体数据流请求,请求传送某个已经发布的多媒体数据流,及初始码率, 还用于接收到码流,回放/回显给用户;并统计接收码流的收包统计信息,收包统计信息包括平均传输延时、丢包率;将收包统计信息反馈给服务器端的网络拥塞状态监测模块;网络拥塞状态监测模块,用于接收来自客户端模块的收包统计信息,判断网络状态为稳定状态或非稳定状态,并将网络状态通告给媒体发布模块。2.根据权利要求1所述的一种多媒体流传输系统中网络拥塞自适应装置,其特征在于,所述的网络拥塞状态监测模块通过以下方式判断网络状态: 如果平均传输延时小于或等于预设的延时阈值,且丢包率小于或等于预设的丢包阈值,则判断网络状态为稳定状态;否则,判断网络状态为非稳定状态。3.根据权利要求1所述的一种多媒体流传输系统中网络拥塞自适应装置,其特征在于,所述的多媒体发布模块依据选择降低、提高、还是维持待发布的多媒体数据流的码率依据以下方式: 如果网络状态为稳定状态,且当前选择的发布通道对应码流的码率低于用户请求的初始码率,则选择码流的码率高于当前选择的发布通道中的码流的码率,且低于或等于用户请求的初始码率的发布通道中码率最低的发布通道作为新选择的发布通道; 如果网络状态为稳定状态,且当前选择的发布通道对应码流的码率与用户请求的初始码率相等或高于初始码率,则保持当前发布通道的选择; 如果网络状态为非稳定状态,且当前选择的发布通道对应码流的码率已经是所有发布通道中码率最低的,则保持当前发布通道的选择; 如果网络状态为非稳定状态,且当前选择的发布通道对应码流的码率不是所有发布通道中码率最低的,则选择码流的码率低于当前选择的发布通道中的码流的码率,且高于或等于最低码率的发布通道中码率最高的发布通道作为新选择的发布通道。4.一种多媒体流传输系统中网络拥塞自适应方法,其特征在于,包括以下步骤: 步骤1、多媒体源模块准备待发布的各个多媒体数据流,每个多媒体数据流包括同一内容、相同分辨率、不同码率的码流,多媒体源模块将各个待发布的多媒体数据流注册到管理服务t吴块; 步骤2、客户端模块依据用户的要求,向管理服务模块发出多媒体数据流请求,请求传送某个已经发布的多媒体数据流,及初始码率; 步骤3、管理服务模块接收到来自客户端模块的多媒体数据流请求,在已经注册的多媒体数据流中查找被请求多媒体数据流;管理服务模块将被请求的多媒体数据流的码流的分辨率、各个码流对应的码率以及客户端模块要求的起始码率通知多媒体发布模块,多媒体发布模块为被请求的多媒体数据流的各个码率的码流分别建立发布通道; 步骤4、多媒体发布模块依据起始码率和每个发布通道对应的码流的码率,选择发布通道中对应码流的码率与起始码率最接近的发布通道,作为当前选择的发布通道; 步骤5、当前选择的发布通道将多媒体源模块中的对应的码流发布到传输模块; 步骤6、传输模块将码流传输到客户端模块; 步骤7、客户端模块接收到码流,回放/回显给用户;并统计接收码流的收包统计信息,收包统计信息包括报文的平均传输延时、丢包率;将收包统计信息反馈给服务器端的网络拥塞状态监测模块, 步骤8、网络拥塞状态监测模块接收来自客户端模块的收包统计信息,判断网络状态为稳定状态或非稳定状态,并将网络状态通告给多媒体发布模块; 步骤9、多媒体发布模块依据客户端模块选择的初始码率、当前选择发布通道对应码流的码率,以及网络拥塞状态监测模块通告的网络状态,选择降低、提高、还是维持待发布的多媒体数据流的码率。5.根据权利要求4所述的一种多媒体流传输系统中网络拥塞自适应方法,其特征在于,所述的网络状态通过以下方式判断: 如果平均传输延时小于或等于预设的延时阈值,且丢包率小于或等于预设的丢包阈值,则判断网络状态为稳定状态;否则,判断网络状态为非稳定状态。6.根据权利要求4所述的一种多媒体流传输系统中网络拥塞自适应方法,其特征在于,所述的步骤9包括以下步骤: 步骤9.1、如果网络状态为稳定状态,且当前选择的发布通道(如果是第一次达到此步,那么此处的当前选择的发布通道是在步骤4选择的;如果已经是多次到达该步骤,那么此处的当前选择的发布通道,是在上一次到达步骤10时选择的)对应码流的码率低于用户请求的初始码率,则选择码流的码率高于当前选择的发布通道中的码流的码率,且低于或等于用户请求的初始码率的发布通道中码率最低的发布通道作为新选择的发布通道,返回步骤5; 步骤9.2、如果网络状态为稳定状态,且当前选择的发布通道对应码流的码率与用户请求的初始码率相等或高于初始码率,则保持当前发布通道的选择;返回步骤6; 步骤9.3、如果网络状态为非稳定状态,且当前选择的发布通道对应码流的码率已经是所有发布通道中码率最低的,则保持当前发布通道的选择;返回步骤6; 步骤9.4、如果网络状态为非稳定状态,且当前选择的发布通道对应码流的码率不是所有发布通道中码率最低的,则选择码流的码率低于当前选择的发布通道中的码流的码率,且高于或等于最低码率的发布通道中码率最高的发布通道作为新选择的发布通道,返回步骤5。
【文档编号】H04L29/06GK105933241SQ201610244553
【公开日】2016年9月7日
【申请日】2016年4月19日
【发明人】王凌斐, 金卫民
【申请人】武汉顶翔智控科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1