历史经验之协议学习笔记

整理日期: 2004年10月14日

基本术语
名词 解释 备注

ISO 国际标准化组织
IEC 国际电子委员会
JVT 视频联合组
ITU-T 国际电信联盟标准化部门
IETF
RAS Registration, Admission and Status 登记、接纳和状态协议
VOIP Voice over IP 语音信息通过IP协议传输
QoS 服务质量
RSVP 资源预留协议
Intserv/diffserv 集成服务模型/差异服务模型
MGCP Media Gateway Control Protocol 媒体网关控制协议
MCU 多点控制单元
MC 多点控制器
MP 多点处理器
OPAL Open Phone Abstraction Library
RTP Real-time transport protocol 实时音视频传送协议
SCM Selected Communication Mode 可选通信模式
SCN Switched Circuit Network 电路交换网
MTU 最大传输单元
MPEG-4 Moving Pictures Experts Group-4 运动图像专家组
店铺地址:https://shop66907778.taobao.com/

概念收集

1、什么是视频会议系统?
  视频会议系统是通过网络通信技术来实现的虚拟会议,使在地理上分散的用户可以共聚一处,通过图形、声音等多种方式交流信息,支持人们远距离进行实时信息交流与共享、开展协同工作的应用系统。视频会议极大地方便了协作成员之间真实、直观的交流,对于远程教学和会议有着举足轻重的作用。
2、当前视频会议领域分哪几类?
  ①基于硬件的视频会议系统:现在最常用的实现手段。特点是使用专用的设备来实现视频会议,系统造价较高,使用简单,维护方便,视频的质量非常好,对网络要求高,需要专线来保证。
  ②基于软件的视频会议系统:完全使用软件来完成硬件的功能,主要借助于高性能的计算机来实现硬件解码功能。特点是充分利用已有的计算机设备,总体造价较低。
  ③网络视频会议系统:完全基于互联网而实现的。特点是可以实现非常强大的数据共享和协同办公,对网络要求极低,完全基于电信公共网络的运营,客户使用非常方便,不需要购买软件和硬件设备,只需交费即可,视频效果一般。

H.320

1990年提出并通过,是第一套国际标准协议。H.320获得通过,使其成为广泛接受的关于ISDN会议电视的标准。用于ISDN上的群视会议。

H.323

从整体上来说,H.323是一个框架性建设,它涉及到终端设备、视频、音频和数据传输、通信控制、网络接口方面的内容,还包括了组成多点会议的多点控制单元(MCU)、多点控制器(MC)、多点处理器(MP)、网关以及关守等设备。它的基本组成单元是"域",在H.323系统中,所谓域是指一个由关守管理的网关、多点控制单元(MCU)、多点控制器(MC)、多点处理器(MP)和所有终端组成的集合。一个域最少包含一个终端,而且必须有且只有一个关守。H.323系统中各个逻辑组成部份称为H.323的实体,其种类有:终端、网关、多点控制单元(MCU)、多点控制器(MC)、多点处理器(MP)。其中终端、网关、多点控制单元(MCU)是H.323中的终端设备,是网络中的逻辑单元。终端设备是可呼叫的和被呼叫的,而有些实体是不通被呼叫的,如关守。H.323包括了H.323终端与其它终端之间的、通过不同网络的、端到端的连接。实现于IP网络的视频会议。其体系结构如下图所示。
在这里插入图片描述

H.323为基于网络的通信系统定义了四个主要的组件:(Terminal)、网关(Gageway)、关守(Gagekeeper)、多点控制单元(MCU)。终端是分组网络中能提供实时、双向通信的节点设备,也是一种终端用户设备,可以和网关、多点接入控制单元通信。所有终端都必须支持语音通信,视频和数据通信可选。H.323规定了不同的音频、视频或数据终端协同工作所需的操作模式。它将是下一代因特网电话、音频会议终端和视频会议技术的主要标准。以下是H.323终端的组成框图:
在这里插入图片描述
H.323标准协议簇 H.323是国际电信联盟(ITU)的一个标准协议栈,该协议栈是一个有机的整体,根据功能可以将其分为四类协议,也就是说该协议从系统的总体框架(H.323)、视频编解码(H.263)、音频编解码(H.723.1)、系统控制(H.245)、数据流的复用(H.225)等各方面作了比较祥细的规定。为网络电话和可视电话会议系统的进一步发展和系统的兼容性提供了良好的条件。其中系统控制协议包括H.323、H.245、和H.225.0,Q.931和RTP/RTCP是H.225.0的主要组成部份。系统控制是H.323终端的核心。整个系统控制由H.245控制信道、H.225.0呼叫信令信道和RAS(注册、许可、状态)信道提供,音频编解码协议包括G.711协议(必选)、G.722、G.723.1、G.728、G.729等协议。编码器使用的音频标准必须由H.245协议协商确定。H.323终端应由对本身所具有的音频编解码能力进行非对称操作。如以G.711发送,以G.729接收。视频编解码协议主要包括H.261协议(必选)和H.263协议。H.323系统中视频功能是可选的。数据会议功能也是可选的,其标准是多媒体会议数据协议T.120。H.323协议栈其结构如下图所示。
在这里插入图片描述

H.261/H.263

视频编解码(H.263/ H.261):完成对视频码流的冗余压缩编码。
H.261建议是1990年提出的运动图象编码算法,具有开创性的意义。它的编码效率高,图象质量好且实时性好,已被广泛运用于会议系统的运动图象的编码方式之中。
H.261建议的编码算法具有如下特点:
•采用通用的中间格式(CIF);
•图象按视频的整数倍速率抽取,与数字网络时钟同步;
•视频编码器提供一组独立的数字比特流;
•采用混合编码算法,帧间预测用来降低图象信号的时间冗余度,而变换编码用于降低空间域的多余度;
•视频的编码速率从40kb/s ~ 2Mb/s;
•传输比特流包含BCH(511,493)前向纠错码。
H.261建议在编码方面主要采用了三种技术来实现压缩:
•预测编码
•变换域编码
•游程熵编码
H.263建议是为了满足低码率运动图象编码而制订的。同H.261一样,H.263采用了运动补偿和DCT编码方法,但它参照MPEG标准引入以I帧、P帧、PB帧(选项)三种帧模式和INTER(帧间编码)、INTRA(帧内编码)两种编码模式。
为提高压缩比,H.263又采取以一些新的措施:取消了H.261中可选的环路滤波器,将运动补偿的精度提高到半象素;改进了运动估值算法,充分利用以运动矢量的相关性来提高预测质量,减轻块效应;精减了部分附加信息的编码,提高了编码效率;采用三维哈夫曼编码、算术编码来进一步提高压缩比。
为了改进性能还包含了四个可选的编码选项:
•无限制运动矢量模式
•算术编码
•先进预测模式
•PB帧模式

G.723.1/G.729/ G.728/G.711

音频编解码(G.723.1等):完成语音信号的编解码,并在接收端可选择地加入缓冲延迟以保证语音的连续性。所采用的标准为ITU-T的G.723.1,它提供5.3kbit/s和6.3kbit/s两种码率,采用线性预测综合分析编码方法,分别使用代数码本激励线性预测和多脉冲最大似然量化,从而各自获得编码复杂度和质量的优化。
G.723.1是一个双速率的语音编码器,它的两个编码速率分别为6.3k和5.3k。高速率(6.3k)采用多脉冲激励最大似然量化(MP_MLQ)算法,低速率(5.3k)采用代数码本激励线性预测(ACELP)算法。这两种算法具有相同的理论基础,都是基于线性预测(LPC),都采用非周期性分量的激励源。不同之处在于对MP_MLQ采用多脉冲最大似然量化激励,而对ACELP采用的是代数码本激励。
G.723.1具有较好的语音质量。其5.3k速率编码,语音质量优于VCELP(8kb/s);其6.3k速率编码,语音质量等价于32kb/s的G.726建议相应指标。两者基本上均能达到长途电话质量的要求。G.723.1的缺点是固有时延较大。
G.729是一个8kb/s的语音编码标准,它采用的算法是共轭结构代数码本激励线性预测编码(CS_ACELP),能达到32kb/sADPCM语音质量。研究发现,CS_ACELP算法很有特点:作不太大的改动后,向下可达6.4kb/s,向上可达13kb/s,且可传送更好的语音质量。
G.711协议(64kb/s),以及更低速率的数字话音协议,如G.728协议(16kb/s),G.723协议(5.3kb/s或6.4kb/s)以及G.729协议(8kb/s)。
语声质量与压缩速率成反比。

H.245

控制单元(H.245):提供端到端信令,以保证H.323终端的正常通信。所采用的协议为H.245(多媒体通信控制协议),它定义了请求、应答、信令和指示四种信息,通过各种终端间进行通信能力协商,打开/关闭逻辑信道,发送命令或指示等操作,完成对通信的控制。
所有的H.323终端也必须支持H.245标准,H.245标准用于控制信道使用情况和信道性能。

H.225

H.225协议全称为"基于多媒体通信系统的媒体封装与呼叫信令协议"。
H.225层:将视频、音频、控制等数据格式化并发送,同时从网络接收数据。另外,还负责处理一些诸如逻辑分帧、加序列号、错误检测等功能。H.225.0适用于不同类型的网络,其中包括以太网、令牌环网等。H.225.0被定义在诸如TCP/IP,SPX/IPX传输层。H.225.0通信的范围是在H.323网关之间,并且是在同一个网上,使用同一种传输协议。H.225.0建立了一个呼叫模型,在这个模型中,呼叫建立和性能协商没有使用RTP传输地址,呼叫建立之后才建立若干个RTP/RTCP连接。

T.120

多媒体会议数据协议T.120

RTP/RTCP

H.323协议规定,音频和视频分组必须被封装在实时协议RTP中,并通过发送端和接收端的一个UDP的Socket对来进行承载。而实时控制协议RTCP用来评估会话和连接质量,以及在通信方之间提供反馈信息。相应的数据及其支持性的分组可以通过TCP或UDP进行操作。
RTP为交互式音频、视频等具有实时特征的数据提供端到端的传送服务。如果底层网络支持多播,RTP还可使用多播向多个目的端点发送数据。RTP协议包含两个密切相关的部分,即负责传送具有实时特征的多媒体数据的RTP和负责反馈控制、监测QoS和传递相关信息的RTCP。在RTP数据包的头部中包含了一些重要的字段:净荷数据类型的标志(PT)以说明多媒体信息所采用的编码方式;定时标志(TIMESTAMP)使接收端能够恢复收到的数据包发送时的定时关系,从而降低了网络引起的时延和时延抖动;序号(SN)可用来在接收端对收到的数据包进行正确的排序以及统计包丢失率。RTCP是RTP的控制协议,它周期性地与所有会话的参与者进行通信,并采用和传送数据包相同的机制来发送控制包。
  值得注意的是,RTP协议本身并不提供任何QoS保证机制,QoS必须由下层网络来保证。但是通过RTCP控制包可以为应用程序动态提供网络的当前信息,据此可对RTP的数据收发作相应调整使之最大限度地利用网络资源。
利用RTP可提供大量的实时业务,特别是语声业务和视频业务。RTP主要应用于在Internet上传输对时延敏感的业务,使得这些业务的传输更具规律性和可预测性。
RTP可提供的功能包括:
   (1)打时戳。在诸如Internet的分组网中,从发送端到接收端不同的时延通常导致达到目的地的分组"成堆",也就是说,大量的分组几乎一起到达,其间一会儿丢失分组,一会儿到达大量的分组,造成的结果就是时延抖动,从而达不到专用电路的传输质量。在专用电路中,数据以固定的时延到达。RTP通过一个32比特域来解决此问题:此域用于标识数据的时戳值,并用一随机标识符产生第一个分组的时戳值。对后续的分组,按照已过去的"时钟滴嗒"数以线性方式增加时戳值。尽管此法并不能保证数据按时到达,但是当此方案与接收端时延抖动缓冲区结合使用时,收到的数据至少能以发送端一样的相对分组时延馈入接收应用程序。接收端的时延缓冲区根据分组的时戳值(由RTP发)对来得太快的分组加上一些附加时延,从而平滑数据发送。
   (2)编序列号,大多数分组交换网允许同一数据流的分组在网中沿不同路径传输,这样很可能会出现到达接收端的分组顺序与发送时的分组顺序不一致。为解决此问题,RTP给第一个分组分配一个随机序号,后续分组的序号按序递增。
   这样就允许接收端:
   (1)对收到的分组排序。
   (2)检测丢失的分组。尽管RTP并没有为丢失的分组提供重传机制(事实上,实时或近实时的数据传送不免许重发),但是接收端至少知道语音流有间断期。
   (3)发送监控:RTP可通过与它关系密切的RTCP向语音流的发送端提供有用的反馈信息。RTCP定义了发送端记录(SR)和接收端记录(RR)分组,这些记录分组所记录的情况包括:到达时延间隔的抖动、丢失分组数、传输的分组和字节总数,以及其它对诊断、监控和纠正网络错误等有用的数据。比如,当端到端时延增加或抖动加剧,以至影响到声音的保真度时,自适应编码器可能产生更短更低质的分组。
   (4)负载标识:不仅对通过RTP传送的语音数据用正确的顺序接收是必须的,而且按编码方法对其进行解码也是必须的,因此,RTP给每一个分组指配负载类型标识符以标识该分组所负载的类型。RFC1890定义了语音和视频信息的负载类型(用于语音或视频的具体编解码方式),其它的负载类型可由IETF定义或动态地由软件定义。
   ITU-T的RTP实现方案是将RTP和它所支持的应用层高度集成,而不是将其作为单独的协议层。因此,RTP更像支持应用程序所要求的功能的"协议帧"。协议帧头不支持的功能可由开发商自行增加,但这将引起多个供应商的互操作牲问题。RTP和RTCP分组都不包括复用信息,因此设法区分不同的数据流,但接收端可能同时收到来自不同地方的多个语音数据分组,它必须要将其区别开,所以RTP分组被封装在UDP中,UDP本身封装在IP中。
   UDP是不可靠传输层协议,它提供了端口号标识,但没有纠正错误的能力。H.323协议与SIP之间的竞争日趋激烈。H.323协议应用得较早,而SIP得到了许多强有力的IP团体的支持。然而限制VoIP发展的因素,既不是H.323协议,也不是SIP,而是VoIP的服务质量。

SIP

会话初始化协议(SIP)是由IETF推出的一种基于文本的协议,采用SIP规则资源定位语言描述。它不像H.323那样提供所有的通信协议,而是提供和呼叫建立控制功能相关的协议。它应用于IP电话,与H.323建议相比,具有简单、灵活的特点。
   SIP借鉴了超文本传输协议(HTTP)的设计思想和体系结构(HTTP是万维网所使用的信息交换协议)。SIP是基于客户机/服务器的协议,客户机发出信息,被呼的服务器回答。SIP使用了许多HTTP的消息类型和报头域,用实体头(内容类型的描述)标识信息流的内容,并且考虑了认证授权,所使用的认证授权方法类似于Web中所使用的认证授权方法。
   SIP定义了IMITE和ACK消息,它们类似于H.225协议中定义的建立和连接消息。之所以类似,是因为H.225协议和SIP都定义了建立一条可传输呼叫控制信息的可靠信道。SIP和H.225协议不同的是,SIP定义的这条信道,并不依赖于TCP达到它的可靠性,而是通过处理自己的握手确认信号来取得可靠性。
   SIP的支持者认为,将可靠性集成到应用层,可以使定时值(用于重传和确认)与应用紧密相连,这将有利于VoIP业务的传输。使VoIP业务的传输不受制于TCP的"通用目的"。
   最后,SIP依赖于会话描述协议(SDP)。SDP是另一种IETF标准。它用于传输类似于H.245协议中容量交换机制的协商信息。例如在呼叫中,SDP可被用于传输交换过程中的编解码标识。SDP也被用来传输定义于SIP中的许多信息的通用格式,以及用于实时信令协议(RTSP)的消息。
   究竟是H.323协议/H.225协议,还是SIP更适合用于IP电话传输,目前在学术界还处于争论之中。事实上,两种方法各有利弊,就市场的占有额而言。H.323协议比较有利(因为H.323协议先于SIP发展)。而SIP则得益于IETF的势头,IETF是发展得最快的标准化组织。在研究VoIP问题的解决方案时,一种较好的方式是将H.323协议模型和SIP模型一起考虑。
在各种的IP网络多媒体通讯协议中,当前在市场上占据主流位置的应当算是ITU的H.323和IETF的SIP两个协议
由于SIP具有简单、通用、易于扩展等特性,逐渐发展成为主流协议,目前已被3GPP作为唯一的呼叫协议而被采用,并且各大IP电话厂商,如思科、朗讯、阿尔卡特等均已推出基于SIP协议的软硬件终端产品,微软著名的聊天工具MSN以及Net Meeting均采用SIP作为其通信协议。

MGCP

MGCP (Media Gateway Control Protocol) 是由IETF制定的媒体网关控制协议,用于媒体网关控制器和媒体网关之间的通信。
目前在单纯的话音市场,MGCP协议由于有大规模的用户扩容能力应用也正呈现上升的趋势
H.248/Megaco
H.248/Megaco是由ITU-T制定的媒体网关控制协议,用于媒体网关控制器和媒体网关之间的通信。H.248/Megaco协议是网关分离概念的产物。网关分离的核心是业务和控制分离,控制和承载分离。这样使业务、控制和承载可独立发展,运营商在充分利用新技术的同时,还可提供丰富多彩的业务,通过不断创新的业务提升网络价值。它提供控制媒体的建立、修改和释放机制,同时也可携带某些随路呼叫信令,支持传统网络终端的呼叫。该协议在构建开放和多网融合的NGN中,发挥着重要作用。
RFC2543/RFC3261

RSVP

资源预留是指根据业务数据的QoS要求和带宽资源管理策略进行带宽资源分配,在IP网上提供一条完整的路径。IETF的RFC2205资源预留协议(RSVP)就是提供这种管理机制的协议。
  RSVP是网络中预留所需资源的传送通道建立和控制的信令协议。通过预留网络资源建立一条从发送端到接收端的路径,使得IP网络能提供接近于电路交换质量的业务,即在面向无连接的网络上,增加了面向连接的特性;它既利用了面向无连接网络的多种业务承载能力,又提供了接近面向连接网络的质量保证。但是RSVP没有提供多媒体数据的传输能力,它必须配合其它实时传输协议来完成多媒体通信服务。
H.264/H.239
H.264是由ITU 2003年七月最新确立的,也叫做MPEG-4,不同的名字实际上标准是一样的(众所周知ITU与MPEG为不同标准组织)。最近,视频联合组(JVT)正在研究标准问题,JVT的目标非常简单,即要节省50%的资源。与MPEG-4相比,H.264能够节省5%的资源,比如通常使用的标准需要380K,用H.264标准只需要192K,H.239是一种附加媒体通道, 又叫双媒体流,H.239的主要内容是关于在视频会议系统中使用多条视频通道,定义了使用角色标识来实现控制、指示和能力交换机制。它结合了H.323协议中的H.263协议和MPEG-4协议。

H.264采用的编码结构实际上和MPEG-2相似。
要点一:有关运动补偿的问题,即需要一个非常灵活自由的动态补偿体系,比如MPEG-4和MPEG-2的精度能达到1/4。
要点二:多层参考图像。MPEG-2和MPEG-4制作的图像只能针对第二个解码,H.264需要从三个解码中选择一个,最好作为这一桢的预测,这种桢预测也有利于恢复丢包。
要点三:循环滤波,去除块效应。
要点四:进行针内预测,即每一个图都可以进行预测,这是非常新的功能。
H.264标准和其他标准相比,对带宽的要求比较高。34dB的Y-PSNR需要50码率,如果是MPEG-2就需要100码率,因此H.264更有效。从普通电视到高清晰度电视,H.264都具有高灵活性,使用H.264可实现更多功能。
具有H.264能力的系统是向后兼容的,因此它们支持H.261和H.263的终端设备。

H.264使用的协议环境

店铺地址:https://shop66907778.taobao.com/

对话应用和流媒体应用使用同一协议组,下面进行讨论。
  网络层协议:使用IP(网际协议)。每个IP分组单独从发方出发,经过一系列的路由器到达收方。IP将大于MTU尺寸的分组进行数据分割、重组。每个分组的传输时间都有所不同。IP头20个字节由校验码来保证,但数据没有保护。IP分组最大值为64千字节,但由于MTU尺寸的限制,一般没有这么大。
  传输层协议:主要有两个协议,TCP和UDP。TCP提供面向字节的可靠传输服务,以重传和超时等机制作为差错控制的基础。由于对时延的不可预测,并不适用于实时通信传输。UDP提供不可靠的数据报传输业务。UDP头包含的校验数(8字节)可以发现和去掉含有比特错误的分组。UDP允许分组传输过程中出现丢失、复制、改序等。使用UDP协议时,高层必须使用错误恢复协议。
  应用层传输协议:使用RTP(实时传输协议)。该协议和IP/UDP结合使用,是面向会话的协议。每个RTP分组包含RTP头标,载荷头标(可选)和载荷本身。RTP头标的内容见图1,基本选项占用12字节,标记位标记有同一时间戳的一组分组的结束。RTP协议使发送方将数据分为大小合理的分组,并将解码方观察到的网络特征反馈给发送方,使发送方可以动态调整比特率和抗误码机制。RTP分组和RTP载荷规范在第四部分讨论。
  应用层控制协议:有H.245协议、SIP和SDP,或RTSP。这些协议可以实现流媒体的控制,收发方的协商和控制动态会话层。

猜你喜欢

转载自blog.csdn.net/weixin_41486034/article/details/106259208
今日推荐