首页 理论教育 实时虚拟直播课堂数据传输协议

实时虚拟直播课堂数据传输协议

时间:2022-03-03 理论教育 版权反馈
【摘要】:RTP/RTCP是专门用于支持网络实时传输服务、提供数据实时传输的标准。在RTP会话期间,各参与者周期性地传送RTCP报文,传递实时数据传输质量的反馈信息及各参与者的相关信息。因此,在实时虚拟课堂教学系统中,通常采用RTP/RTCP协议作为课堂音视频数据传输协议以及相关控制信息传输协议。因此,在实时虚拟课堂直播系统中,在网络传送部分利用组播机制,实现多媒体数据的“一对多”模式的传输。

5.2.2 实时虚拟直播课堂数据传输协议

1.RTP/RTCP封包

RTP/RTCP是专门用于支持网络实时传输服务、提供数据实时传输的标准。在协议层次中,RTP/RTCP虽然位于应用层,但多数应用还要在RTP/RTCP之上建立更符合应用要求的协议。该协议不提供可靠性保障,作为应用的一部分,该协议并不是操作系统的内容。RFC3550中定义RTP/RTCP协议族由两个相关的协议构成:实时传输协议RTP,用于传输具有实时特点的数据;实时传输控制协议RTCP,用于统计、管理和控制RTP传输。

由多媒体应用程序生成的数据块被封装在RTP信息包中,每个RTP信息包被封装在UDP消息段中,然后再封装在IP数据包中,经过传输网络完成数据包的发送。RTP协议数据包的包头部分含有数据包的载荷类型(payload type)、序列号(sequence number)、时间戳(timestamp)和同步标志符(synchronization source identifier)等。因此,它可以为实时数据传输提供时序重组、帧丢失检测、多路复用等服务。

RTCP是与RTP协议协同工作的传输控制协议。在RTP会话期间,各参与者周期性地传送RTCP报文,传递实时数据传输质量的反馈信息及各参与者的相关信息。RTCP控制包中封装了已发送数据包数量、丢失数据包数量、时延抖动等统计资料,这样发送端可以根据这些信息估计出往返时延,并且可以根据数据包丢失概率和时延抖动情况动态地调整发送速率,甚至有效载荷类型,以改善网络拥塞状况,或者根据网络状况平滑地调整应用程序的服务质量;接收端则可以判断数据包丢失等问题出在哪个网络段。

因此,在实时虚拟课堂教学系统中,通常采用RTP/RTCP协议作为课堂音视频数据传输协议以及相关控制信息传输协议。如图5-4所示,教师端子系统的课堂音视频数据按照RTP协议进行封装,接着在传输层按照UDP协议进行封装,然后在网络层按照IP协议进行封装,最后IP数据包封装成MAC帧在Ethernet中传输;在学生端子系统,课堂音视频数据执行相反的解封装操作,从MAC帧数据包中提取出多媒体数据,然后进行解码与回放。

img73

图5-4 虚拟课堂音视频数据的封装

2.实时虚拟直播课堂数据组播传输

IP组播是一种允许一台或多台主机(组播源)发送单一数据包到多台主机的TCP/IP网络技术。相对于单播而言,不管有多少接收者,在网络链路上,组播的数据包仅被传输一次,只是在到达不同接收者的分叉处,数据包被复制。而采用传统的单播技术,有多少接收者,数据源就得发送多少个数据包。因此,组播是一种更合理的数据传输技术,适用于一对多、多对多的应用环境。组播的实施需要网络上的组播路由器支持,主机与组播路由器之间运行组管理协议(IGMP),来管理组播组成员的加入与离开。在域内路由器之间运行组播路由协议,以创建组播树,完成对组播数据包的转发。组播组使用一个IP组播地址标志。任何用户主机或其他接收设备,一旦加入一个组播组,即成为该组成员,可以识别并接收以该IP组播地址为目的地址的IP报文。

因此,在实时虚拟课堂直播系统中,在网络传送部分利用组播机制,实现多媒体数据的“一对多”模式的传输。该机制在有多个学生端接收组播数据的情况下,直播服务器系统只需发送一次原始数据,依靠网络中的组播路由器实现相同数据的拷贝和分发,可大大节省有限的网络资源。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈