米葫芦网

宽带网络流媒体技术和应用

热度:3℃ 发布时间:2024-11-18 03:54:14


;
;;;;背景
流媒体技术是在数据网络上以流的方式传输多媒体信息的技术。近年来,随着宽带网络的发展和用户需求的驱动,流媒体技术和相关的应用得到越来越多的关注,被认为是未来高速宽带网络的主流应用之一。本文从流媒体的概念、流媒体应用类型、流媒体要害技术、流媒体的业务系统和运营模式等方面对流媒体技术和应用进行了全面的介绍。
概念
流媒体(Streaming Media)指在数据网络上按时间先后次序传输和播放的连续音/视频数据流。以前人们在网络上观看电影或收听音乐时,必须先将整个影音文件下载并存储在本地计算机上,然后才可以观看。与传统的播放方式不同,流媒体在播放前并不下载整个文件,只将部分内容缓存,使流媒体数据流边传送边播放,这样就节省了下载等待时间和存储空间。流媒体数据流具有三个特点:连续性(Continuous) 、实时性(Real - time) 、时序性,即其数据流具有严格的前后时序关系。我国的863高科技研究计划“高性能信息示范网络3 Tnet ”中,明确提出要从宽带流媒体等典型业务入手,建立一个能适应Internet TV等媒体流实时传输的高性能、广域(城域)宽带演示验证网络3Tnet 。除了宽带网络外,流媒体技术还可以广泛地应用于其它网络,例如无线流媒体传输是3G网络的主要应用之一。在NGN网络中,流媒体也扮演重要的角色。流媒体应用类型:流媒体应用可以根据传输模式、实时性、交互性粗略地分为多种类型。
根据上述分类,常见的流媒体的应用主要有:视频点播(VOD)、视频广播、视频监视、视频会议、远程教学、交互式游戏等。总之,目前基于流媒体的应用非常多,发展非常快。丰富的流媒体应用对用户有很强的吸引力,在解决了制约流媒体的要害技术问题后,可以预料,流媒体应用必然会成为未来网络的主流应用。
流媒体要害技术问题
为了在数据网络上传输媒体流,流媒体技术需要解决从音/视频源的编码/解码、存储,到网络端的媒体服务、媒体流传输,到用户端的播放一系列问题。一个典型的媒体流传输流程如图1所示。

;;;;
从图1中可以看出原始音/视频流经过编码和压缩后,形成媒体文件存储后(直播的方式不需要文件存储),媒体服务器根据用户的请求把媒体文件(或者直播的媒体流)传递到用户端的媒体播放器。在媒体传输中间还可能需要代理服务器进行媒体内容的分发或转发。
为了实现较好质量的流媒体实时播放,需要考虑媒体流传输的所有环节。其中,影响传输质量的三个最要害的因素是:编码和压缩的性能和效率、媒体服务器的性能、媒体流传输的质量控制。
(1)编码/压缩的性能
影响音/视频流的压缩/编码性能的因素很多,首先是压缩效率。压缩效率要求在保证一定音/视频质量的前提下,媒体流的码流速率尽量低。其次是编码的冗余性和可靠性。与普通的多媒体文件压缩/编码不同的是,流媒体文件需要在网络上实时传输,因此必须考虑传输中数据丢失对解码质量的影响。为了解决这个问题,采用了一些先进的编码技术,例如错误弹性编码(ErrorResilient Encoding):在编码中通过适当的控制使得发生数据丢失后能够最大限度地减少对质量的影响。在Internet环境下,最典型的方法是多描述编码(MDC)。MDC把原始的视频序列压缩成多位流,每个流对应一种描述,都可以提供可接受的视觉质量。多个描述结合起来提供更好的质量。最后,媒体流的压缩/编码还需要考虑速率调节的能力,因为网络的拥塞状况是不断变化的,流媒体的编码必须能够适应网络速率的变化。一种方法是采用可扩展的层次编码,可扩展的压缩/编码生成多个子位流(Substream) ,其中一个位流是基本位流,它可以独立解码,输出粗糙质量的视频序列,其他的子位流则起质量增强的作用,所有的子位流一起还原出最好质量的视频序列。相应的,仅有部分的子位流(必须包含基本子位流)则输出的视频在图像的质量或者图像的分辨率、图像播放的帧速率上较差。当网络速率变化时,可以通过调节流输出的层次来控制码流的速率,从而适应网络速率的变化。


(2)服务器性能
随着流媒体规模的扩大,流媒体服务器的性能成为制约流媒体服务扩展能力的重要因素。流媒体服务器性能的要害指标是流输出能力和能同时支持的并发请求数量。影响流媒体服务器性能的因素很多,包括CPU能力,I/O总线,存储带宽等。通常,单个流媒体服务器的并发数都在几百以内,因此,为了具有更好的性能,目前的高性能流媒体服务器都采用大规模并行处理的结构,例如采用超立方体的结构将各个流媒体服务单元连接起来。还有一种方法是采用简单的PC集群的方式,这种方式下多个PC流媒体服务器用局域网连接,前端采用内容交换/负载均衡器将流媒体服务的请求分布到各个PC媒体服务单元。后一种方式性能较前一种方式低,但是成本低,轻易实现。
(3)媒体流传输的质量控制
这是制约流媒体性能的最重要的因素。由于流媒体传输对网络带宽、延迟、丢失率等都有很高的要求,而基于无连接的包交换IP网络对带宽资源和服务质量的控制能力都比较弱,因此,在IP网络上进行流媒体传输需要采用一些应用层的质量控制机制来解决传输中的问题。这些质量控制机制可以分为几个层次:最常用的方式是采用速率适应机制,基本的方法是通过一定的速率反馈机制,利用媒体流的速率层次编码能力,在媒体服务器端动态地调节流媒体的传输速率,保证客户端在网络可用带宽变化的时候也能够正常地收看流媒体内容。速率适应机制附以差错控制和冗余控制能够有效地保证流媒体的正常收看。目前流媒体的主流产品都具备应用层的速率适应能力。另外一种方法是采用内容分发网络(CDN),采用CDN传输流媒体的优点主要包括三个方面:第一是通过应用层的内容分发降低了主干网络的流媒体流量,并实现了基于应用层的组播仿真(即利用主机构建独立于网络层的逻辑组播树,并采用主机上的应用层软件进行组播转发)。第二是通过分布在网络边缘的流媒体服务器,避免了拥塞链路,提高了流媒体传输的性能和响应时间。最后,通过CDN能够有效地提高整个流媒体系统的扩展性,降低对每个流媒体服务器的性能要求。目前,利用CDN传输流媒体是大规模流媒体应用的发展趋势。
流媒体业务系统
制约流媒体发展除了技术问题外,还有商业运营的问题。因为流媒体应用广泛开展的一个重要前提是:流媒体的应用提供商必须能够赢利。因此,流媒体应用必须以适当的业务模式来开展,这涉及到诸多方面的问题,包括业务的支撑能力、业务的运营模式等。
从业务提供的角度,一个完整的流媒体业务系统应该至少包含三个部分的功能:业务功能提供,通过功能的实现和整合向用户提供完整的业务,例如对于远程教育应用,功能提供是指将流媒体的教学资源组织成有计划、有步骤的教学课程系列提供给用户;业务治理,业务治理包括用户治理、内容治理、认证、授权、记账、计费等;媒体内容传送,在承载网上有效地传送流媒体内容是业务提供的基础。
目前,网络上实际运行的流媒体业务系统一般都是小型的、用户范围比较狭窄的系统。这些系统也能支持上述的基本功能,但是这种小而全的模式有几个缺点:功能不完整、性能和扩展性较差;系统的规模有限,包括网络的规模和用户的规模。对于独立的流媒体应用而言,用户资源是独立的,用户需要单独地去发展。而网络的规模一般局限于小区或者城域范围;开发周期长,业务提供慢;运行和维护的成本高,应用提供商需要独立负责所有的运行和维护;运营模式单一,不能有效地满足市场的变化,缺乏灵活性。
这些因素都制约了宽带流媒体业务的大规模开展。为了解决这些问题,一个可行的方法是把业务治理和流媒体内容传输的功能从业务功能实现中独立出来,构成对宽带流媒体应用的支撑环境。支撑环境可以由独立的运营商运营,这样应用提供商可以专注于业务功能实现。通过支撑环境开展宽带流媒体业务有很多优点。
对应用提供商而言,业务支撑环境的优点是:流媒体应用通过一个独立的支撑环境提供完整、强大的业务治理功能;应用的开发周期短,非凡有利于新应用的开发;应用的运行和维护成本小;支持大规模的应用;共享的用户资源;支持多种运营模式,应用提供商可以根据市场要求和业务的特点选择多种运营模式,和支撑平台达成利润分账的多种模式。
对于用户而言,统一的支撑环境方便了用户的使用,例如用户仅需要一点认证就可以访问全部(授权的)业务,并完成相关的支付等工作。对于运营商而言,支撑环境是一个增值业务支撑平台,它本身也是一种面向应用提供商开展的业务。非凡是对网络提供商而言,可以在提供基本的网络接入服务的同时,提供增值业务,提升在价值链上的位置。图2显示了一个宽带流媒体应用支撑环境的典型结构。

;;;;

总之,独立的宽带流媒体业务支撑环境或者业务支撑平台对于克服现有系统的困难,支持高性能、可扩展的流媒体业务的开展具有很高的价值和重要的意义。目前,中国电信集团北京研究院承接的863课题“高性能信息示范网应用支撑环境开发内容和实施方案研究”正在对宽带流媒体业务支撑环境做相关的研究。
流媒体价值链和运营模式
根据前面的分析,可以归纳出宽带流媒体业务的价值链至少需要包括几个部分:应用提供商、内容开发商、业务支撑系统运营商、网络提供商、用户。其中,用户最终获得宽带流媒体应用业务,并为之付费。应用提供商是宽带流媒体业务的直接提供者,直接面对用户提供业务。内容提供商是流媒体内容资源的拥有者,负责节目的制作,包括流媒体文件的生成、编码、压缩。业务支撑系统运营商提供一个独立的可运营的治理和传输平台,为宽带流媒体应用提供支撑环境。网络提供商提供基本的承载网络。
在整个价值链系统中,不同提供商可以根据自身的特点和市场需求同时扮演多个角色,从而构成不同的运营模式。例如,网络提供商可以同时作为流媒体业务支撑系统的运营商,因为由网络提供商来运营流媒体业务支撑系统有许多优点:首先是网络提供商拥有网络资源,这是构建大规模的应用系统必要的条件;其次,网络提供商拥有用户,非凡是宽带接入的用户,这部分用户自然成为流媒体业务支撑系统的潜在用户;最后,通过构建流媒体业务支撑系统,网络提供商可以提高它在价值链中的地位,从而实现增值业务。内容提供商也可以和应用提供商整合,非凡是目前的多数流媒体应用都是以内容为中心,例如VOD应用、远程教学应用等。因此,内容提供商可以直接融合应用提供商的角色,通过流媒体业务支撑系统的支撑向用户提供业务。
目前,流媒体业务的运营模式还在不断发展中,网络运营商、应用提供商、内容提供商都在不断寻求成熟的运营模式和合作模式。


网友评论
评论
发 布

更多软件教程
  • 软件教程推荐
更多+
Greenfoot设置中文的方法

Greenfoot设置中文的方法

Greenfoot是一款简单易用的Java开发环境,该软件界面清爽简约,既可以作为一个开发框使用,也能够作为集成开发环境使用,操作起来十分简单。这款软件支持多种语言,但是默认的语言是英文,因此将该软件下载到电脑上的时候,会发现软件的界面语言是英文版本的,这对于英语基础较差的朋友来说,使用这款软件就会...

07-05

Egret UI Editor修改快捷键的方法

Egret UI Editor修改快捷键的方法

Egret UI Editor是一款开源的2D游戏开发代码编辑软件,其主要功能是针对Egret项目中的Exml皮肤文件进行可视化编辑,功能十分强大。我们在使用这款软件的过程中,可以将一些常用操作设置快捷键,这样就可以简化编程,从而提高代码编辑的工作效率。但是这款软件在日常生活中使用得不多,并且专业性...

07-05

KittenCode新建项目的方法

KittenCode新建项目的方法

KittenCode是一款十分专业的编程软件,该软件给用户提供了可视化的操作界面,支持Python语言的编程开发以及第三方库管理,并且提供了很多实用的工具,功能十分强大。我们在使用这款软件进行编程开发的过程中,最基本、最常做的操作就是新建项目,因此我们很有必要掌握新建项目的方法。但是这款软件的专业性...

07-05

Thonny设置中文的方法

Thonny设置中文的方法

Thonny是一款十分专业的Python编辑软件,该软件界面清爽简单,给用户提供了丰富的编程工具,具备代码补全、语法错误显示等功能,非常的适合新手使用。该软件还支持多种语言,所以在下载这款软件的时候,有时候下载到电脑中的软件是英文版本的,这对于英语基础较差的小伙伴来说,使用这款软件就会变得十分困难,...

07-05

最新软件下载