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(转载)

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

  1. 硬件?软件?视频会议系统中两者有何区别?

    硬件?软件?视频会议系统中两者有何区别? 应对不同所需,视频会议系统由传统硬件式视频会议发展至软件视频会议和硬件视频会议并存的局面.那么软件视频会议系统与硬件视频会议系统到底有什么区别呢?小编为您普及 ...

  2. 视频会议系统gk服务器,详解华为视频会议系统中信令之间如何实现跨GK呼叫

    跨越华为视频会议系统中GK的终端呼叫流程与在之前的基础上,只是增加了视频会议系统中的2.LRQ与3.LCF两个信令消息交互,其他信令交互与上述交货过程相同,本篇文章不再单独叙述. 2.LRQ:定位请求 ...

  3. uIP tcp/ip协议分析及其在嵌入式系统中的应用

    网络技术的发展使越来越多的工业控制设备将网络接入功能作为其必备的特性之一.同样,嵌入式系统的发展,要求其应用能够支持网络功能,为用户提供一个简易方便的可视化图形界面.当前WEB浏览器已经成为用户的合理 ...

  4. 软件视频会议性能测试要点,IP网络视频会议系统中MCU性能测试方法的研究

    摘要: 随着社会的进步,工业的发展,人们对通信的要求越来越高,尤其随着网络 技术的飞速发展,人们对通信的要求逐渐转向以音视频通信为主的多媒体通信上 来,其中IP网络视频会议系统是多媒体应用的一个主流方 ...

  5. 视频会议系统gk服务器,华为视频会议系统中的终端如何通过GK发起呼叫

    细心同学会问,为什么到现在华为视频会议系统里的终端都还没有向GK注册流程呢?及时发送RRQ这些子信令与GK交互?那是因为在视频会议系统中用这种方式呼叫时,之前就已经在终端上有过注册GK的流程了,换句话 ...

  6. 视频会议系统的主流解决方案与技术趋势

    视频会议系统的主流解决方案与技术趋势 类型:转载 作者: 最后更新:2005-5-2 10:11:39 推荐指数: 12050 视频会议系统传输的是多媒体数据,声音和动态图像的源信号的数据量较大,无法 ...

  7. 视频会议系统属于服务器吗,解析视频会议系统结构

    视频会议系统的网络化迁移 以往,各大厂商视频会议系统的技术开发上还主要侧重在专线的应用.随着视频技术的发展和市场的扩展,视频会议技术日益走进中小企业和平民市场,专线由于价格昂贵已经不太适应市场方向,昂 ...

  8. 视频会议软件中的协同文档技术

    现今的视频会议软件产品不单只是音.视频的传输,还包括协同数据功能.协同数据功能主要包括:电子白板共享.文档协同浏览.共享桌面等功能.现在我们主要讨论的是视频会议软件中的协同文档技术.协同文档浏览主要是 ...

  9. 企业视频会议系统需要服务器吗,企业选择视频会议租用还是自己搭建

    中国作为视频会议增长快的市场之一,吸引了很多国内外的服务提供商,华为.思科.中兴.ZOOM等,国内的视频会议系统功能虽然强大,但普遍存在价格偏高,操作偏复杂,兼容性不好等问题亟待解决. 视频会议在以前 ...

最新文章

  1. 粽子也内卷?2021 互联网大厂端午礼盒大盘点
  2. linux ssh连接交换机_linux SSH 隧道
  3. Expected MultipartHttpServletRequest: is a MultipartResolver configured方案。
  4. 利用Power Designer反向数据库结构
  5. 幼儿园管理系统的设计与实现
  6. Genymotion启动报错:VT-x/AMD-V硬件加速在您的系统中不可用
  7. 希捷7200.11固件门完全DIY修正方法! 不用几块钱, DIYers请进!!!
  8. Python爬取最新反爬虫汽车之家口碑
  9. 第3节:alphapose环境配置
  10. 【原创】技术员 Ghost Win10 1703 x64 纯净版 2017
  11. 单片机编程之8421码
  12. 中文CTEX加下划线无法换行问题
  13. ADXL345实现功能全面的计步器
  14. Linux如何关闭防火墙?
  15. 图文混排模板HTML
  16. matlab三角形单元,平面三角形单元常应变单元matlab程序的编制.doc
  17. oracle自动更新视图,Oracle 视图及视图更新
  18. win11任务栏怎么显示软件图标
  19. 拼多多搜索页面html,仿拼多多搜索页面多列表联动
  20. android平板iso,告诉你android平板比iPad好的10个理由

热门文章

  1. 乘积取中法matlab,迭代取中法、乘同余法及混合同余法产生随机数方法
  2. python 传奇服务端_传奇游戏服务器源码学习
  3. 长春技师学院计算机系,长春技校排名前五十
  4. 安卓手机qq怎么看密友值_qq密友值在哪看
  5. plc维修入门与故障处理实例_13个浮筒液位计维修实例助你快速解决现场故障问题...
  6. mysql5.7.12安装_mysql 5.7.12 winx64手动安装教程
  7. joomla 3.6 mysql 版本_Joomla是否支持MariaDB数据库?
  8. python画图颜色代码_Python-使用matplotlib创建自己的颜色图并绘制颜色比例
  9. bbs.php168,PHP168 下载安装教程
  10. python定义变量类型列子_Python系列课程-变量类型