流媒体


多媒体

多媒体信息特点

内容:图像、声音

  1. 信息量往往很大,传送多媒体信息采用各种信息压缩技术
  2. 时延时延抖动均有较高的要求。

解决非等时问题方法:在接收端设置适当大小的缓存。到达缓存的非等时的分组,经过缓存后再以恒定速率读出,就变成了等时的分组,这就在很大程度上消除了时延的抖动代价是增加了时延

实时数据特点

  1. 运输层采用UDP
  2. 丢失容忍:宁可丢失少量分组,也不等待太晚到达的分组

音频/视频服务分类

  1. 流式:存储音频/视频

    特点:边下载边播放;

  2. 流式实况音频/视频:一对多(而不是一对一)的通信

    特点是:音频/视频节目边录制边发送,在接收时也是要求能够连续播放;

  3. 交互式音频/视频:用户使用因特网和其他人进行实时交互式通信

流媒体

媒体播放器主要功能:管理用户界面、解压缩、消除时延抖动和处理传输带来的差错

传统下载方法最大的缺点:历时太长

具有元文件万维网服务器

使用元文件下载媒体的步骤

  1. 浏览器用户媒体文件的超链,使用HTTP的GET报文接入到万维网服务器超链是指向一个元文件。这个元文件有实际的音频/视频文件的统一资源定位符URL
  2. 万维网服务器把该元文件装入HTTP响应报文的主体,发回给浏览器响应报文中还有指明该音频/视频文件类型的首部
  3. 客户机浏览器收到万维网服务器的响应,分析其内容类型首部行,调用相关的媒体播放器,把提取出的元文件传送给媒体播放器
  4. 媒体播放器使用元文件中的URL直接和万维网服务器建立TCP连接,并向万维网服务器发送HTTP请求报文,要求下载浏览器想要的音频/视频文件
  5. 万维网服务器发送HTTP响应报文,把该音频/视频文件发送给媒体播放器
  6. 媒体播放器在存储了若干秒的音频/视频文件后,就以音频/视频流的形式边下载、边解压缩、边播放。

媒体服务器

  • 又称流式服务器

  • 媒体服务器&万维网服务器:媒体服务器支持流式音频和视频的传送

  • 媒体播放器与媒体服务器的关系是客户与服务器的关系

  • 媒体服务器和媒体播放器之间采用另外的协议进行交互

使用媒体服务器下载媒体的步骤

  1. 浏览器用户媒体文件的超链,使用HTTP的GET报文接入到万维网服务器超链是指向一个元文件。这个元文件有实际的音频/视频文件的统一资源定位符URL
  2. 万维网服务器把该元文件装入HTTP响应报文的主体,发回给浏览器响应报文中还有指明该音频/视频文件类型的首部
  3. 客户机浏览器收到万维网服务器的响应,分析其内容类型首部行,调用相关的媒体播放器,把提取出的元文件传送给媒体播放器
  4. 媒体播放器使用元文件中的URL接入到媒体服务器,请求下载浏览器所请求的音频/视频文件。下载可以借助于使用UDP的任何协议也可以在TCP连接上传送
  5. 媒体服务器给出响应,把该音频/视频文件发送给媒体播放器。
  6. 媒体播放器在迟延了若干秒后,以流的形式边下载、边解压缩、边播放。

采用 UDP 缺点:

  • 网络情况多变,接收端的播放器很难始终按规定的速率播放
  • 很多单位的防火墙往往阻拦外部 UDP 分组的进入,因而使用 UDP 传送多媒体文件时会被防火墙阻拦掉。
  • 使用 UDP 传送流式多媒体文件时,如果在用户端希望能够控制媒体的播放,如进行暂停、快进等操作,那么还需要使用另外的协议 RTPRTSP,增加了成本和复杂性。

使用 TCP 传送流式视频主要步骤

  1. 用户使用 HTTP 获取存储在万维网服务器中的视频文件,然后把视频数据传送到 TCP 发送缓存中。若发送缓存已填满,就暂时停止传送。
  2. 从 TCP 发送缓存通过互联网向客户机中的 TCP 接收缓存传送视频数据,直到接收缓存被填满。
  3. 从 TCP 接收缓存把视频数据再传送到应用程序缓存(即媒体播放器的缓存)。当这个缓存中的视频数据存储到一定程度时,就开始播放。这个过程一般不超过 1 分钟。
  4. 在播放时,媒体播放器等时地(即周期性地)把视频数据按帧读出,经解压缩后,把视频节目显示在用户的屏幕上。

实时流式协议RTSP

一个多媒体播放控制协议,本身并不传送数据

功能:使用户在播放从互联网下载的实时数据时能够进行控制

配套:媒体播放器、媒体服务器

工作方式:C/S

RTSP 特点

  • 有状态的协议。它记录客户机所处于的状态初始化状态、播放状态、暂停状态
  • RTSP 控制分组既可在 TCP 上传送,也可在 UDP 上传送
  • 未定义音频/视频的压缩方案,也没有规定音频/视频如何封装
  • 没有流在媒体播放器中如何缓存

使用 RTSP 的媒体服务器的工作过程

  1. 浏览器向万维网服务器请求音频/视频文件。
  2. 万维网服务器从浏览器发送携带有元文件的响应。
  3. 浏览器把收到的元文件传送给媒体播放器。
  4. RTSP 客户与媒体服务器的 RTSP 服务器建立连接。
  5. RTSP 服务器发送响应 RESPONSE 报文。
  6. RTSP 客户发送 PLAY 报文,开始下载音频/视频文件。
  7. RTSP 服务器发送响应 RESPONSE 报文。
  8. RTSP 客户发送 TEARDOWN 报文断开连接。
  9. RTSP 服务器发送响应 RESPONSE 报文。

交互式媒体

IP电话

狭义:在 IP 网络上打电话

广义:在IP网络上进行交互式多媒体实时通信(包括话音、视像等)

IP电话网关

IP 电话网关的作用

  1. 在电话呼叫阶段和呼叫释放阶段进行电话信令的转换
  2. 在通话期间进行话音编码的转换

IP 电话网关的几种连接方法

![IP 电话网关链接方法](C:/Users/Jarrycow/Documents/图片/IP 电话网关的几种连接方法.png)

IP 电话的通话质量

IP 电话的通话质量决定因素,但这两个因素是不确定的,取决于当时网络上的通信量

  • 一个是通话双方端到端的时延和时延抖动
  • 另一个是话音分组的丢失率

端到端的时延不应超过 250 ms

播放时延最佳值

IP 电话所需要的几种应用协议

  1. 信令协议:,使能够在互联网上找到被叫用户
  2. 话音分组的传送协议:使用来进行电话通信的话音数据能够以时延敏感属性在互联网中传送

流媒体应用层协议

实时运输协议RTP

RTP工作原理

  • 为实时应用提供端到端的运输,但不提供服务质量保证
  • 多媒体数据块经压缩编码处理后,先送给 RTP 封装成为 RTP 分组,再装入运输层的 UDP 用户数据报,然后再交给 IP 层
  • RTP 是协议框架,只包含了实时应用的一些共同的功能
  • RTP 自己并不对多媒体数据块做任何处理,而只是向应用层提供一些附加的信息,让应用层知道应当如何进行处理。

RTP 的层次:

应用开发者角度层次:应用层

也可视作UDP之上的传输层子层

RTP 分组的首部格式

RTP分组首部格式

实时运输控制协议RTCP

RTCP 协议的主要功能

  • 服务质量的监视与反馈;
  • 媒体间的同步;
  • 播组中成员的标识。

RTCP 使用的五种分组类型

类型 缩写表示 意义
200 SR 发送端周期性地向所有接收端用多播方式进行报告
201 RR 使接收端周期性地向所有的点用多播方式进行报告
202 SDES 给出会话中参加者的描述
203 BYE 关闭一个数据流
2014 APP 使应用程序能够定义新的分组类型

H.323

端系统之间实时声音和视频会议的一组协议

H.323 标准指明的四种构件

  1. H.323 终端
  2. 网关:连接到两种不同的网络,使 H.323 网络可以和非 H.323 网络进行通信。
  3. 网闸:所有的呼叫都要通过网闸,提供地址转换、授权、带宽管理和计费功能
  4. 多点控制单元 MCU: 支持多个H.323终端音频视频会议

会话发起协议SIP

H.323 过于复杂,不便于发展基于 IP 的新业务。

SIP较为简单且实用,目前已成为互联网的建议标准

SIP 系统的构件

工作方式:文本方式的客户服务器协议

构件:用户代理、网络服务器

  • 用户代理包括用户代理客户用户代理服务器,前者用来发起呼叫,而后者用来接受呼叫。

  • 网络服务器分为代理服务器重定向服务器

    • 代理服务器接受来自主叫用户的呼叫请求,并将其转发给下一跳代理服务器,最后将呼叫请求转发给被叫用户。
    • 重定向服务器不接受呼叫,它通过响应告诉客户下一跳代理服务器的地址,由客户按此地址向下一跳代理服务器重新发送呼叫请求。
  • 配套协议:会话描述协议SDP——指明媒体编码、协议端口号、多播地址

SIP会话过程

SIP 的会话共有三个阶段:建立会话、通信和终止会话

SIP会话

改进“尽最大努力交付”服务

为了实现多媒体传输互联网演进$\star$

  1. 对TCP/IP协议族不进行较大改动,主要增加网络链路带宽,并使用多播技术
  2. 对TCP/IP协议族进行较大改动,让应用程序向网络提出预留的传输带宽
  3. 尽量不对TCP/IP进行大的改动,在网络边沿对数据进行简单的分类和管制,以便区分网络所提供的服务。这样在路由器中,就根据数据报不同服务类别,提供不同等级的服务

调度管制机制

调度机制

“调度”就是指排队的规则

  1. 先进先出FIFO不能区分时间敏感分组和一般数据分组,并且也不公平
  2. 简单地按优先级排队在高优先级队列中总是有分组时,低优先级队列中的分组就长期得不到服务。这就不太公平
  3. 公平排队 FQ 长分组得到的服务时间长,而短分组就比较吃亏,并且公平排队并没有区分分组的优先级
  4. 加权公平排队 WFQ

管制机制

管制指标:

  1. 平均速率:网络需要控制一个数据流的平均速率
  2. 峰值速率:峰值速率限制数据流在非常短的时间间隔内的流量
  3. 突发长度:限制非常短的时间间隔内连续注入网络中的分组数

漏桶管制器

漏桶管制器

漏桶机制与加权公平排队相结合

$d_{\max}=\dfrac{b_i\sum w_j}{R\times w_i}$

综合服务IntServ & 资源预留协议RSVP

综合服务IntServ

IntServ特点

  1. 资源预留
  2. 呼叫建立

IntServ 内容

定义了两类服务

  • 有保证的服务:可保证一个分组在通过路由器时的排队时延有一个严格的上限。

  • 受控负载的服务:可以使应用程序得到比通常的“尽最大努力”更加可靠的服务。

IntServ 组成部分

  1. 资源预留协议 RSVP:是 IntServ 的信令协议。
  2. 接纳控制:用来决定是否同意对某一资源的请求。
  3. 分类器:用来将进入路由器的分组进行分类,并根据分类的结果将不同类别的分组放入特定的队列。
  4. 调度器:根据服务质量要求决定分组发送的前后顺序。

IntServ 存在问题

  1. 状态信息的数量与流数目成帧比
  2. 体系结构复杂
  3. 定义服务质量等级数目太少,不够灵活

资源预留协议RSVP

资源预留协议 RSVP 在进行资源预留时采用了多播树的方式

RSVP 协议的工作原理

RSVP工作原理

区分服务DiffSen

综合服务 IntServ 和资源预留协议 RSVP 都较复杂,很难在大规模的网络中实现,因此 IETF 提出了新的策略,即区分服务 DiffServ

区分服务 DiffServ 的要点

  1. 力图不改变网络的基础结构,但在路由器中增加区分服务的功能
  2. 网络被划分为许多个 DS 域
  3. 边界路由器中的功能功能较多,可分为分类器通信量调节器
  4. 提供了聚合功能

每跳行为 PHB

  • 迅速转发PHB:构造通过DS域的一个低丢失率、低时延、低时延抖动、确保带宽的端到端服务不排队少排队
  • 确保转发PHB:发生拥塞时,对每个等级的AF,路由器首先丢弃优先级较高的分组

文章作者: Jarrycow
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Jarrycow !
评论
  目录