开源RTP协议实现:Java.net.rtp说明(1)

原作者:Waqar Ali Columbia University New York, NY 10027 USAEmail: [email protected]

                Akhil Nigam (Columbia University New York, NY 10027 USA) Email: [email protected]

摘要:

        RTP正在成为一个广泛使用的传输实时数据的互联网标准协议。它提供了一种让参与者用RTCP协议对服务进行反馈的机制。这篇文档提出一个在Java中实现的独立的RTP平台。这个实现,能够以一个java.net.RTP包的形式,很容易的和一个应用程序链接一体,从而可以访问RTPRTCP提供的所有传输层特性。这个包也提供了带外的初始化类,它们实现了一个最近初始化协议。这些类可以用来实现一个最近初始化服务端,具有同步最近加入客户端的能力。 [1]

介绍

这份报告描述了RTP协议的Java实现。主要涉及了以下主题:

1)  相关的工作

2)  背景

3)  体系结构

3.1)对象模型

3.2)事件模型

3.3)最近初始化客户端/服务端

4)程序文档

5Java RTP API文档

6)参考文献

7)下载:http://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/java_rtp/java_net_RTP.tar.gz

1)相关工作

RTP

C++库提供了独立实现RTP协议的应用。这个库只能用于DEC OSF/1 v3.2Solaris 2.3平台。

JMFjava多媒体框架)

JMF API规定了一个简单的、统一的架构在java应用程序和applets中来同步和显示实时数据,例如音频和视频。JMF 1.0 API是由SunSGIIntel开发的。

Elemedia H.232 stack

Elemedia PX3230S H. 323协议栈软件模型是ITU-T H. 323标准的软件实现。RTP/RTCP模块支持报头有效性检测、统计记录、发送者报告、接收者报告和一个系统的时间到媒体的时间应用。

Webcanal

Webcanal包含了一系列主要用来基于IP多播的信息分发的网络连接包和应用程序。Webcanal的网络连接包括一个RTPLRMPSAP/SDP和其他的网络协议的java实现。


2)背景

    这个项目源于对一个独立的、具有多播能力的
RTP实现平台的需要,可以应用于类似电子白板这种协同应用。电子白板应用程序需要满足特殊的初始需求:所有协同的白板实例需要现实相同的内容,例如,他们需要有一个公共的状态。这就给后加入者造成了一个难题,他们必须要保持同步,并像其他实例一样引入一个公共的状态。因此,必须存在一个专用的服务器或者类似的节点,能够为前述那些的客户端服务并负责为后加入者提供历史数据。一个那样的应用需要一个用来构建那样的客户端与服务端的可用通用函数。这个包是基于模块化的一个通用的实现了最近初始化协议的最近初始化客户端/服务端类设计与开发的。



[1] Out of band:带外,相对于带内(in band)来说。简单说,分组自己携带的就可以称作带内,通过额外协议实现的是带外。

 

你可能感兴趣的:(网络应用)