当前位置:   article > 正文

网络直播流媒体基础知识(借鉴总结)_流量特征的视频直播业务识别

流量特征的视频直播业务识别

一、流媒体特征简介:

流媒体经典传输框架图

 

1、“流”形式在Internet上传输的媒体格式(支持“流”式传输和播放);

2、用户不需要将全部视频资源一次下载便可以观看;

3、服务器端推流(连续实时的向指定网络用户发送数据包);

4、数据(音频-视频-媒体文件)有经特殊压缩,客户端接收后需要解压;

备注:Internet音视频传输方式有 下载和“流”式传输。

二、几种网络流媒体传输协议简介:

一个协议的实现,跨越iOS中的某些层。

1、rtsp(real-time transport streaming protocol 实时流传输协议)

作用:控制音视频数据的实时传输,如暂停、播放等,其本身不传输数据;

特点:在不同的阶段具有不同的工作状态,在保持连接的情况下进行状态的切换;

状态:OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY,  REDIRECT,PAUSE, GET_PARAMETER,SET_PARAMETER,

ANNOUNCE,SCALE(为找到给方法的具体描述)

                     OPTIONS:客户端发出,请求 服务器方法信息(服务器可以提供哪些能力和方法)

                     DESCRIBE:客户端发出,请求 与服务之间的会话描述信息

                     SETUP:客户端发出,请求 进行通信并确认会话模式

                     TEARDOW:客户端发出,关闭请求

                     PLAY:客户端发出,播放请求

                     PAUSE:客户端发出,临时暂停请求

                     REDIRECT:服务端发出, 通知客户端连接到另一服务器地址

                     GET_PARAMETER:双向指令,请求检查URL指定的演示与媒体的参数值

                     SET_PARAMETER:双向指令,请求设置演示或URL指定流的参数值

                     ANNOUNCE:双向指令,请求URL识别的演示或媒体对象描述发送给服务器,更新连接描述

2、rtp

     由rtp和rtcp两部分组成,前者提供Internet上端到端的实时传输提供时间信息和流同步,后者提供服务质量。

     一对UDP端口,RTP使用偶数端口号收发数据,RTCP使用相邻的下一位奇数端口号,其使用UDP端口1024 - 65535。

     适用于单播或多播网络中传送实时数据(RTP允许数据通过IP组播的方式传送到多个目的地)。

    传输过程:1)目的地址(一个网络地址和一对UDP端口)。2)发送,发送到对应UDP端口。3)接收,由上层接收数据码流,再封装成rtp数据包,rtcp同理由上层接收之后再组装成rtcp控制包。

 2.1、rtp(real-time transport protocol 实时传输协议)

 作用:负责多媒体数据传输;

 特点:无可靠传输保证、有序传输、具有实时性;

 2.2、rtcp(real-time  transport control protocol 实时传输控制协议)

 作用:负责rtp传输中的控制信息的传输;

 特点:保证质量,数据同步及数据统计,在数据传输过程中,周期的被发送;

3、webrtc(web real-time communication 网页即时通讯-做一个基础了解)

背景:为了web开发者可以基于浏览器开始出实时多媒体应用。

webrtc框架接口图(百度百科)

作用:用于服务器与其它端的数据传输;

4、rtmp(real-time message protocol)

5、hls(http live streaming 基于http的动态码率自适应技术)

作用:将直播数据分片为MPEG-TS格式的媒体文件;

特点:数据分片,连续的,渐进的,客户端接收需要具有一定顺序,非完整数据流,客户端具有带宽自适应能力,有一定延迟。

缺点:服务器数据切片处理,增加了服务器的工作量;

http扩解

特点:

无连接,即用即断,服务器完成该次请求之后便不做处理;

媒体独立,只有对接的client和service知道怎么处理传递的数据;

无状态,http本身对前后事务的处理与当前是独立的,不想tcp存在三次握手等行为;

过程:

请求,请求行(request line)、请求头部(header)、空行和请求数据四个部分组成

回应,状态行、消息报头、空行和响应正文四部分组成

八种消息类型:

OPTIONS--返回服务器针对特定资源所支持的HTTP请求方法。也可以利用向Web服务器发送'*'的请求来测试服务器的功能性。
HEAD--向服务器索要与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以在不必传输整个响应内容的情况下,就可以获取包含在响应消息头中的元信息。
GET--向特定的资源发出请求。
POST--向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的创建和/或已有资源的修改。
PUT--向指定资源位置上传其最新内容。
DELETE--请求服务器删除 Request-URI 所标识的资源。
TRACE--回显服务器收到的请求,主要用于测试或诊断。
CONNECT--HTTP/1.1 协议中预留给能够将连接改为管道方式的代理服务器。

但是我们在实际应用中常用的也就是 get 和 post,其他请求方式也都可以通过这两种方式间接的来实现。

常见状态码类型:

1**  --  服务器收到信息,继续执行操作;

2**  --  成功,正常接收并被成功处理,eg:200--请求 成功;

3**  --  重定向,需要继续后续操作以完成请求你,eg:301--资源被永久转移到其他URL;

4**  --  客户端错误,eg:404--地址不存在;

5**  -- 服务器错误;eg:500--n内部服务器错误;

参考文章:

1.webrtc百度百科:https://baike.baidu.com/item/WebRTC/5522744?fr=aladdin

2.几种直播流媒体简介:https://www.cnblogs.com/poissonnotes/p/7728916.html

3.rtp协议分析:https://blog.csdn.net/u011006622/article/details/80675054

4.为神马不使用webrtc做直播:https://baijiahao.baidu.com/s?id=1612209576437907188&wfr=spider&for=pc

5.webrtc实时通信协议详解:https://blog.csdn.net/jieqiang3/article/details/89604025

6.webrtc百度讲解:https://baike.baidu.com/item/WebRTC/5522744?fr=aladdin

7.webrtc中的信令系统:https://blog.csdn.net/CNHK1225/article/details/81509622

 

 

 

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/195261
推荐阅读
  

闽ICP备14008679号