什么是RUTP协议?RUDP协议在视频会议系统中的应用

本文涉及的产品
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
简介:

RUTP协议是通过UDP数据包来实现数据可靠传输的协议,其协议是建立在无连接的UDP协议基础上的应用层协议,主要通过发送确认包给接受者,然后对数据包进行丢包重发,实现数据的可靠传输。在视频会议系统的开发当中,需要处理实时的音、视频及其他的一些数据,RUTP协议怎样用于我们的视频会议系统的开发呢?首先,我们先要了解RUTP协议的特点,然后我们分析一下在网络视频会议系统中的哪些数据传输可以通过RUTP协议进行,最后我们列举一下几个重要的开源RUTP库。

1、RUTP协议特点

RUTP协议主要是解决TCP协议和UDP协议存在的弊端,TCP协议是面对有连接的传输协议,其传输的数据通过三次握手和滑动窗口协议实现了数据的可靠传输,但TCP协议由于需要三次握手,因此其传输实时性比较差,很难应用于实时的数据传输;UDP协议刚好于TCP协议相反,UDP协议是面向无连接的传输协议,数据只是在不断地进行发送,而没有对数据进行丢包和排序处理,不能进行网络的QOS保证,因此UDP协议不能保持数据的可靠性。而RUTP协议能在TCP协议和UDP协议中寻求了最好的平衡点,它主要是通过滑动窗口、丢包重发、拥塞控制等算法,实现数据的实时可靠传输,因此RUTP既能实现数据的实时传输,又能保证数据的可靠性。由此可见,在我们的视频会议系统的开发过程中,使用RUTP协议进行数据传输,比我们直接单纯用TCP协议或者UDP协议要好。

2、在视频会议系统中的应用

RUTP协议有那么多好处,我们是不是在视频会议系统的开发中,全部的数据都要用RUTP协议进行传输呢?答案是否定的,RUTP协议只是在TCP协议和UTP协议中寻求最好的平衡点,但其可靠性和实时性都处于两者的中间,比如可靠性,RUTP的在正常的网络条件下,数据是可靠的,但如果在极端的网络条件下,其可靠性不如TCP协议的三次握手和滑动窗口协议;而在实时性方面,RUTP协议须要对数据进行带外数据的控制,其实时性比无连接UDP协议要低许多。因此在视频会议系统中,数据如果符合既要保持实时性和可靠性,才需要使用到RUTP协议,这些数据一般是音频、视频及屏幕共享等数据,而一些如控制信令、文本信息等数据,其数据只要求可靠性而不要求实时性,一般建议使用TCP协议来进行传输。

3、开源的RUTP库

在开源的项目当中,有几个非常值得我们关注的RUTP开源库,利用这些RUTP库,可以加快我们的视频会议系统的开发进度,从而迅速实现音、视频的实时可靠的传输。在RUTP开源库中,最着名的是UDT开源库,UDT传输库主要是用RUTP协议来实现数据的实时可靠传输,它的数据传输效率非常高,在网络条件较好的情况下能传输流量非常大的可靠性实时数据,但在网络堵塞非常严重的情况下,UDP还会一直传输数据,会导致网络越来越堵塞、数据可靠性不能保证的情况发送。因此我们需要对网络进行判断,如果出现网络堵塞的情况下,就不再使用UDT库进行数据传输,因此在网络堵塞情况下,还采用它会造成网络的更堵塞的情况。另外一个RUTP开源库是Raknet,Raknet开源库是一个游戏引擎,主要是应用于游戏中的音频数据的实时传输,因此Raknet库也非常适合于视频会议系统的实时数据传输。但Raknet库也存在一些问题,经过在不同的网络条件下的测试,当在网络条件比较差的情况下,其数据传输较慢,一些数据不能实时地达到接送方,而Raknet库的版本较多,不同的版本其传输效率都不一样,因此我们需要对这些库进行实际的测试。综合这两个RUTP开源库,它们在低带宽的情况下,都存在数据越来越堵塞的情况下,因此我们在视频会议系统中利用这些RUTP库,需要了解这些库的优点和缺点,在网络条件较差的情况下,要及时进行数据流量控制,保证数据的实时可靠的传输。

本文转自d1net(转载)

相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
4月前
|
网络协议 物联网 网络性能优化
物联网网络协议-MQTT协议的使用
物联网网络协议-MQTT协议的使用
136 2
|
2天前
|
消息中间件 网络协议 物联网
什么是无线通信协议?
无线通信协议是相对于有线通信协议的,无线通信在现在信息领域是无处不在的,只要是没有插线就能通信的场景都离不开无线通信协议。
15 3
|
6月前
|
网络协议 算法 Go
【协议分析】rpcx网络协议分析之kcp数据传输
【协议分析】rpcx网络协议分析之kcp数据传输
89 0
|
10月前
|
XML SQL 安全
网络安全——应用层安全协议
网络安全——应用层安全协议
198 0
|
10月前
|
安全 算法 数据挖掘
网络安全——传输层安全协议(3)
网络安全——传输层安全协议(3)
92 0
|
10月前
|
安全 网络协议 算法
网络安全——传输层安全协议
网络安全——传输层安全协议
132 0
|
11月前
|
存储 设计模式 网络协议
【网络】协议的理解
下面是百度百科对计算机协议意思的解释:
|
算法 安全 网络安全
网络安全——传输层安全协议(2)
通过之前文章我们对于SSL协议进行了一定了解网络安全——传输层安全协议 本章将会继续讲解SSL握手协议与SSL记录协议。
68 0
网络安全——传输层安全协议(2)
|
存储 缓存 网络协议
网络中常见的各种协议介绍
网络中常见的各种协议
221 0
网络中常见的各种协议介绍
|
存储 网络协议 算法
互联网和传输层协议
互联网是一个非常庞大的结构,从整体来看,互联网是一个立体的、庞大的网状结构。但是如果将它放大、再放大,将镜头拉近,在微观层面,我们会看到一个个网络、一台台设备,还会看到大量的封包在交换、有设备在不断地改变封包的走向、损坏的封包被重发、一个个光电信号被转化和传输。
131 0
互联网和传输层协议

热门文章

最新文章