我的编程空间,编程开发者的网络收藏夹
学习永远不晚

搭建直播系统,常见的网络传送协议有哪些?

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

搭建直播系统,常见的网络传送协议有哪些?

直播将我们的沟通方式从传统的二维空间直接进化到了现在的三维模式,最主要的原因就是因为直播具有很强的实时性和互动性功能。在计算机网络中,信息的交换必须按照预先共同约定好的过程进行,才能实现实体间的交互,这就是网络中的传送协议。如果没有传送协议,传信双方的信息交换就会出现问题。所以今天拓幻科技聊一下在直播系统搭建过程中,可以使用到的一些网络传输协议有哪些?

RTMP协议:

RTMP是Real Time Messaging Protocol英文的缩写,即实时消息传输协议。RTMP是一种设计用来进行实时数据通信的网络协议,是Adobe Systems公司为Flash播放器和服务器之间音频、视频和数据传输开发的开放协议。由于其一般传输的音视频格式是flv、f4v。web上通过flash播放器播放,pc端大多数浏览器基本支持,但是移动端几乎都不支持,一般主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据通信。

它具有多种变种:

1)RTMP工作在TCP之上,默认使用端口1935;

2)RTMPE在RTMP的基础上增加了加密功能;

3)RTMPT封装在HTTP请求之上,可穿透防火墙;

4)RTMPS类似RTMPT,增加了TLS/SSL的安全功能;

RTSP协议:

RTSP(Real Time Streaming Protocol),即实时流传输协议。RTSP定义了一对多应用程序如何有效地通过IP网络传送多媒体数据,提供了一个可扩展框架,数据源可以包括实时数据与已有的存储的数据。该协议用于控制声音或影像多个数据的连接,服务器端可以自行选择使用TCP或UDP来传送串流内容。由于RTSP不特别强调时间同步,所以可能会网络延迟,但是RTSP具有重新导向功能,可以根据实际负载情况来切换提供服务的服务器,因此可在一定程度上可避免服务器承载过大而造成的延迟。

RTP协议:

RTP(Real-time Transport Protocol),即实时传输协议。为数据提供了具有实时特征的端对端传送服务,如在组播或单播网络服务下的交互式视频音频或模拟数据。RTP协议默认是基于UDP协议传输数据的, 延迟低可以做到毫秒级别。虽然RTP 协议不会防止无序传送,也不确定底层网络的可靠性,只管发送,不管传输是否丢包,也不管接收方是否有收到包,但是RTP 实行有序传送,RTP中的序列号允许接收方重组发送方的包序列,同时序列号也能用于决定适当的包位置,如在视频解码中,就不需要顺序解码。基于RTP协议的这些特性,RTP广泛应用于流媒体相关的通讯和娱乐,包括电话、视频会议、电视和基于网络的一键通业务(类似对讲机的通话)

RTCP协议:

RTCP 即RTP 控制协议 (RTCP:RTP Control Protocol),RTCP主要功能是为RTP所提供的服务质量提供反馈,收集相关媒体连接的统计信息。例如传输字节数,传输分组数,丢失分组数,单向和双向网络延迟等等。网络应用程序可以利用RTCP所提供的信息来提高服务质量,比如限制流量或改用压缩比小的编解码器。所以说RTCP是RTP的配套协议,是和RTP一起协作将多媒体数据包打包和发送,定期在多媒体流会话参与者之间传输控制数据。

HTTP-FLV协议

HTTP是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。 flv是一种音视频视频封装格式,全称是Flash Video,是一种流媒体格式,可以通过flash播放器播放。FLV协议由Adobe公司主推,格式极其简单,只是在大块的视频帧和音视频头部加入一些标记头信息,在延迟表现和大规模并发方面都很成熟。但是在手机浏览器上的支持非常有限,但是用作手机端APP直播协议却异常合适。

HLS协议

全称HTTP Live Streaming,HLS协议是苹果提出的流媒体播放协议。是将视频分成5-10秒的视频小分片,然后用m3u8索引表进行管理,由于客户端下载到的视频都是5-10秒的完整数据,故视频的流畅性很好,但也同样引入了很大的延迟(HLS的一般延迟在10-30s左右)。相比于FLV,HLS在iPhone和大部分android手机浏览器上的支持非常给力。HLS协议客户端支持简单, 只需要支持 HTTP 请求即可, HTTP 协议无状态, 只需要按顺序下载媒体片段即可,而且网络兼容性好, HTTP 数据包也可以方便地通过防火墙或者代理服务器。但是相比RTMP 这类长连接协议, 用到互动直播场景延时较高。

  以上就是我们常见的网络传输协议。一般直播系统搭建中使用较多的是RTMP协议及HLS协议,基于这些协议直播系统得以流畅运行。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

搭建直播系统,常见的网络传送协议有哪些?

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

搭建直播系统,常见的网络传送协议有哪些?

直播将我们的沟通方式从传统的二维空间直接进化到了现在的三维模式,最主要的原因就是因为直播具有很强的实时性和互动性功能。在计算机网络中,信息的交换必须按照预先共同约定好的过程进行,才能实现实体间的交互,这就是网络中的传送协议。如果没有传送协议
2023-06-05

网络协议是什么?常见的网络协议有哪些?

  网络协议即网络中(包括互联网)传递、管理信息的一些规范。如同人与人之间相互交流是需要遵循一定的规矩一样,计算机之间的相互通信需要共同遵守一定的规则,这些规则就称为网络协议。  一个网络协议至少包括三要素:  语法:用来规定信息格式;数据及控制信息的格式、编码及信号电平等。  语义:用来说明通信双方应当怎么做;用于协
网络协议是什么?常见的网络协议有哪些?
2024-04-18

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录