30
1 组组组组组组 VIC 组组 组组组组组组组组组组组组组组 组组 组组 组组组 2004-12-26

组播视频工具 VIC 研究

  • Upload
    willem

  • View
    118

  • Download
    0

Embed Size (px)

DESCRIPTION

组播视频工具 VIC 研究. 清华大学信息网络工程研究中心 陈旸 张轩 李崇荣 2004-12-26. 目录. VIC 的历史 VIC 的体系结构 VIC 的适用性研究 VIC 的扩展性研究 应用及前景. VIC 的历史 VIC 的体系结构 VIC 的适用性研究 VIC 的扩展性研究 应用及前景. VIC 简介. VIC (Videoconferencing Tool) 是一个组播视频工具,主要用于组播视频会议系统。 VIC 的主要特点: 支持组播( multicast ) 支持多种标准视频编码方式 支持多种平台 支持多种网络结构 - PowerPoint PPT Presentation

Citation preview

Page 1: 组播视频工具 VIC 研究

1

组播视频工具 VIC研究

清华大学信息网络工程研究中心陈旸 张轩 李崇荣

2004-12-26

Page 2: 组播视频工具 VIC 研究

2

目录 VIC 的历史 VIC 的体系结构 VIC 的适用性研究 VIC 的扩展性研究 应用及前景

Page 3: 组播视频工具 VIC 研究

3

VIC 的历史VIC 的体系结构

VIC 的适用性研究VIC 的扩展性研究

应用及前景

Page 4: 组播视频工具 VIC 研究

4

VIC简介 VIC (Videoconferencing Tool) 是一个组播视频工具,主

要用于组播视频会议系统。 VIC 的主要特点:

– 支持组播( multicast )– 支持多种标准视频编码方式– 支持多种平台– 支持多种网络结构– 提供视频流加密和用户身份认证– 有良好的交互界面– 提供会议同步协调总线机制– 可以和音频软件同步

Page 5: 组播视频工具 VIC 研究

5

VIC的历史 作者

– UCB-LBNL , Lawrence Berkeley National Laboratory at University of California, Berkeley

– UCL , University College London 组织

– AG , AccessGrid– OpenMash

版本– Berkeley Version– UCL Version– OpenMash Version

Page 6: 组播视频工具 VIC 研究

6

发展里程碑 1992 Multicast Backbone (MBone)

1993,1994 MBone Tools– Xerox PARC Network Video tool, nv – INRIA Video-conferencing System, ivs.

1995 UCB/LBNL, UCL– Vic,vat,wb– Sdr

1997 UCL– Vic,rat– GCCP– 清华大学与 UCB 实现基于 MBone 的视频会议

2001 清华大学、复旦大学、东南大学和华南理工大学– 实现基于 VIC 的多点实时授课系统

2003 CERNET– 建成中国第一个大规模基于网络的视频组播技术服务系统

Page 7: 组播视频工具 VIC 研究

7

VIC 的历史VIC 的体系结构

VIC 的适用性研究VIC 的扩展性研究

应用及前景

Page 8: 组播视频工具 VIC 研究

8

VIC系统组成框图

编码 / 加密

视频采集

RTP 打包网络传输

其他用户信息

渲染

解码本用户

解包

Session会话

外部协同进程

视频显示

Mbus/Confbus( 消息总线 )

Page 9: 组播视频工具 VIC 研究

9

设计思想 轻量会话模型 (Lightweight Session Model)

– 体系结构原理 应用层分帧原则 (Application Level Framing ALF)

– 工程实现原理 综合层处理原则 (Integrated Layer Processing ILP)

– 会话 (Session): Multicast address + port

Page 10: 组播视频工具 VIC 研究

10

提出 LSM 的考虑:– 兼顾分层原则与效率– 关键点:数据处理没有任何的延迟

LSM 具体实现:– RTP packet 成为操作的单元结构– 减小延时,减小数据的重复拷贝– 管道线处理

Page 11: 组播视频工具 VIC 研究

11

VIC 的历史VIC 的体系结构

VIC 的适用性研究VIC 的扩展性研究

应用及前景

Page 12: 组播视频工具 VIC 研究

12

平台适用性 VIC 采用了平台无关的实现方法

– Windows

– Linux

– Solaris

– HP-UX

– MAC

Tcl/Tk 与 C 混合编程– C++ 实现类定义和实现– Tcl/Tk 控制程序流程– VIC 采用 Tcl/Tk 脚本编写界面,通过 C++ 程序调用 Tcl/Tk 的

解释器来运行 Tcl/Tk 脚本,从会话 Session 对象中获得相应的资源列表,调用系统资源实现

Page 13: 组播视频工具 VIC 研究

13

网络传输适用性 ALF 实现高速海量连续数据流的传输,协调数

据传输所经过的应用组件和网络 在 ALF 的设计思想基础上形成了 RTP 协议 RTP 协议采用了 ALF 模型,完全独立于下层

的网络,适用于异质异构的网络结构 采用宏块( Macro Block )级别发送

– 压缩编码到宏块后,用 RTP 打包发送,而不是一般方法采用的将一帧数据都压缩好以后发送

Page 14: 组播视频工具 VIC 研究

14

网络环境适用性 对现有 IP 网络和 ATM 网络有很好的适用性 可以用于 IPv4 和 IPv6 网络,采用了协议栈无

关性的实现方法,有很好的灵活性 初步实验证明可以适用于下一代互联网

Page 15: 组播视频工具 VIC 研究

15

编解码适用性 多种编解码方式

– 现有 H.261 , H.263 , H.263+ , JPEG , nv , phv, MPEG1 , MPEG2等

编解码部分完全模块化– 可实现:

MPEG4 适用于低带宽的情况– 正在研究中:

加入 DV格式,用于高质量视频 加入 H.264 标准 高压缩率,大码流的的 MPEG2

Page 16: 组播视频工具 VIC 研究

16

VIC 的历史VIC 的体系结构

VIC 的适用性研究VIC 的扩展性研究

应用及前景

Page 17: 组播视频工具 VIC 研究

17

可扩展性需求 下一代互联网的高带宽、高性能决定了视频会

议具有大规模、强交互的特点 VIC 是否能够成为大规模、强交互组播视频会

议的核心工具,是一个值得研究的问题

Page 18: 组播视频工具 VIC 研究

18

可扩展性分析 VIC 的总线设计具有内部总线和会议总线,支

持内部组件之间的协同,也支持进程之间的协同通信,并且提供了外部的接口,可以实现会议的管理

Mbus ( Local Message Bus )为 VIC内部组件通信总线,也是整体的会议通信总线 , Confbus 为不同本地进程间通信总线

Page 19: 组播视频工具 VIC 研究

19

Mbus 消息总线( Local Message Bus ),简称Mbus ,是一种面向消息的构

件,用于组通信中的通信对等实体之间协调和相互定位 Mbus 主要是构建在 UDP之上的,主要有三种传送方式:单播,组播和广播

Mbus 的消息格式+++++++++++++++++++++++++++++++++++++++++++++++++++++| mbus version | message sequence number | timestamp | reliable | source addr | d

estination addr |Ack List+++++++++++++++++++++++++++++++++++++++++++++++++++++| Mbus Command |+++++++++++++++++++++++++++++++++++++++++++++++++++++| command args |+++++++++++++++++++++++++++++++++++++++++++++++++++++

Page 20: 组播视频工具 VIC 研究

20

Mbus的通信 Mbus 采用了实体间通晓的机制

– 在一定间隔时间内,实体之间用单播形式发送消息,以表示实体的存在

– 当收到别的实体发送的确认消息 Mbus.hello 时,对照已有的实体列表进行增减,然后发送回应消息。这个机制一直持续到整个 Mbus 通信结束

– 实体间还可以发送要求确认信息,收到此信息就会被动发送Mbus.hello 消息,并且不要求回应。当收不到某个实体的回应消息时,如果时间超过 5 个时间间隔,就可以认定这个实体已经离开Mbus ,在列表中去除这一实体

– 如果实体主动退出 Mbus ,则发送 Mbus.bye 表示退出 实体间通信和协同的地址由各自的主机地址和 id号组

成。最初获得 Mbus 成员列表是在建立 Session 的过程中,由各节点从信息包中得到

Page 21: 组播视频工具 VIC 研究

21

Confbus Confbus 主要由 Tcl 编程实现,采用 IPC ( Inte

rprocess Communication )的方式来提供一种外部进程接口,可以实现外部进程和 VIC 的通信和协同,例如实现音视频同步。相对于 Mbus来说, Confbus 实现比较简单

Page 22: 组播视频工具 VIC 研究

22

Confbus和Mbus的区别

Confbus Mbus

功能 本地不同进程间通信总线 内部通信总线和会议全局的通信总线

网络基础 UDP UDP/TCP

传递方式 组播 单播,组播,广播

地址结构 组播地址(本地回送) 主机地址 +id号

安全机制 无安全机制 认证和加密

Page 23: 组播视频工具 VIC 研究

23

VIC 支持内部组件之间的协同,也支持进程之间的协同通信,并且提供了外部的接口,可以实现会议的管理,从而可以有效地支持大规模的视频会议模式,具有下一代互联网的大规模强交互的视频会议特点

Page 24: 组播视频工具 VIC 研究

24

VIC 的历史VIC 的体系结构

VIC 的适用性研究VIC 的扩展性研究

应用及前景

Page 25: 组播视频工具 VIC 研究

25

现状 AG 的视频会议系统采用了 VIC ,目前在全球

大范围内推行 在国外有基于 VIC 的商业化产品推出 VIC 可以和 H.323 系统互联互通并已实验成功 CERNET 组播视频会议系统视频部分是在 VIC

的基础上开发完成的

Page 26: 组播视频工具 VIC 研究

26

Page 27: 组播视频工具 VIC 研究

27

CERNET组播视频会议

Page 28: 组播视频工具 VIC 研究

28

AG关于 VIC的目标 AG 的终极目标就是建立一个体系使使用者之间完全无隔阂和距离感的交流,一种完全的沟通。为此需要推广 VIC 的使用范围和应用的全面性以满足不用的需求

Page 29: 组播视频工具 VIC 研究

29

前景 VIC 的体系结构

– LSM 的思想从现在的角度来看,还是适用的– 基于 LSM 的 VIC 体系结构设计是合理的

总线思想– 对于复杂系统的构成和协调运行起了关键作用– 其组件的设计思想使各个组件模块化、并可替换

VIC 可以成为下一代互联网组播视频会议系统的重要视频工具

Page 30: 组播视频工具 VIC 研究

30

谢谢大家!