完成SIP/SDP媒体协商简介-SIP/WebRTC总结_yobo体育app下载官网,yb体育app官网下载

Home >> 媒体 >> 完成SIP/SDP媒体协商简介-SIP/WebRTC总结_yobo体育app下载官网,yb体育app官网下载

本文摘要:会话描述协议(简称SDP)是会话出现协议的全称,用于建立协商机制。

yobo体育app下载官网,yb体育app官网下载

会话描述协议(简称SDP)是会话出现协议的全称,用于建立协商机制。该协商机制是由呼叫控制协议建立的两个呼叫用户之间的会话。协商机制支持的四种协商模式主要包括:效率协商、性能协商、语音和视频协商的安静设置、多媒体组装中的数据协商。为了解释SDP的详细讨论,我们首先需要澄清呼叫控制协议的观点。

现在,在大多数部门的呼叫控制协议中,我们主要使用SIP和WebRTC来实现呼叫控制。由于空间有限和实际考虑,我们只先接受SIP协议和WebRTC协议。

SIP协议已经存在多年,并且已经广泛应用于网络电话的大多数部门。WebRTC是近年来流行的实时通信协议,已经逐渐进入应用场景。在本章中,我们将从呼叫控制协议的介绍开始,首先介绍SIP协议的基本内容和WebRTC协议的基本知识。

图片来源于互联网资源。注意:如果部分读者已经具备了SIP协议和WebRTC协议的基本基础,可以跳过本章的基本前提。如果读者想了解更完整的SIP协议和WebRTC必备文档,可以查阅我国人民号的历史文献进行进一步研究。

这里,只是为了给SDP协议做一个简单的SIP和WebRTC备份。1呼叫控制协议我们知道,一个简单的电话呼叫涉及许多其他的辅助功能,其目的是保证呼叫的正常功能和在操作层面上的正常业务监控。

呼叫控制协议是电话网络中不可缺少的一环,其主要功能包括呼叫数据流路由控制、增值业务计费支持、终端间邻接、可靠传输机制、信令控制和媒体通信。在传统或现在的基础网络中,很多控制协议仍然是重点协议,如Q.931、H323等详细协议。这种观点将涉及太多的协议和底层细节的历史前提,例如PRI和R2,SS7和其他相关协议。由于文章篇幅和主题的原因,我们就不再讨论了。

感兴趣的读者可以参考一些常用的文章来补充这方面的知识。通过以上简单的前提,我们知道如果实现了简单的呼叫,即使是最简单的呼叫也需要呼叫控制协议的存在,否则没有措施去倡导呼叫,也没有措施去断开和挂断呼叫。

在熟悉的VoIP情况下,SIP是一种非常常见的呼叫控制协议,基本上是主流的呼叫控制协议。另外,WebRTC也是我们正在逐渐使用的一种呼叫控制协议。在本文的后续部分,我们将重点回顾这两个协议,为今后进一步深入讨论SDP做准备。

2SIP的全称是会话发起协议。它是一种关键的呼叫信令控制协议,用于建立、修改和断开基于网络通信的会话。会话由语音视频和多方视频数据组成,由RFC3261实现。SDP作为消息体,在SIP交互中争取双方的媒体协商,支持能力的协商。

此外,SIP使用实时传输协议/RTCP传输参数来支持语音、视频和数据参数。因此,SDP和RTP/RTCP是建立SIP媒体会话最基本的要求。图片来源于互联网资源。

任何协议都有其标准的语法结构,SIP协议也是如此。它的基本语法结构类似于HTTP的HTML语法。它的信令消息包括两个部分:消息头和消息体。

通过设置各种语法参数来支持SIP协议中的支持能力、协商和应用层通信。SIP头消息的主要目的是管理SIP消息从主叫方到被叫方的路由。信令消息包括一个请求行,它由请求类型、目的地或下一跳的SIP网址和SIP版本组成。根据邮件正文类型,邮件正文是一个选项。

SIP消息中的消息头和消息体由空行区分。消息体构造要讨论的话题太多了。如果读者感兴趣,请参考RFC 3261-13.2.1。

如果在SIP请求中建立的会话包括会话形态的详细消息内容,并且双方的媒体类型和代码都包括在会话形态中,则消息体将被用作SDP以包括这些会话形态的消息内容。由于SDP消息包含很多参数设置,涉及到太多SIP消息的头和消息体设置,我们需要在这里多花一点时间来进一步预览SIP消息的内容,以帮助读者熟悉后续章节中的SDP内容讨论。

RFC3261定义了SIP协议的消息模式。根据官方外观描述,虽然其语法类似于HTTP/1.1(客户端-服务器协议架构),但SIP协议是一种请求-响应机制的惩罚方式,信令的协商是通过双方的请求消息和对方的响应消息来实现的。

因此,它的消息组成包括一个起始行、一个或多个标题消息、一个空行(表示标题消息的完成)以及最后一个可选的消息体。generic-message=start-line * message-header crlf[message-body]start-line=request-line/status-line有关SIP消息语法结构的详细信息,读者可以参考RFC3261-7。

提醒读者,根据RFC3261,无论是否有可选的消息体,都必须保留空行。在SIP消息底部的起始行部分,读者可以看到它可以支持请求行或状态行。

如果请求是从客户机发送到服务器的,那么起始行就是请求行,它包括请求方法名、请求网址、协议版本和CRLF,它们之间用一个单行距离(SP字符)隔开。没有多余的空格或其他字符。SIP消息中Request-Line的使用模式是:Request-Line=method sp Request-uri sp SIP-Version CRLF在以上语法中,SIP支持了以下Methods:REGISTER:用户注册MethodINVITE,ACK,和CANCEL:用来呼叫和建立会话BYE:竣事会话OPTIONS:查询服务器端支持能力MESSAGE:即时谈天REFER:呼叫转移SUBSCRIBE和NOTIFY :SIP会话相关的事件治理PUBLISH:公布SIP指定事件状态UPDATE :更新会话参数INFO:支持mid-session 信息转发PRACK:类似请求确认除了我们提到的请求和以上的Request-Line中的method以外,服务器端回复响应消息来表现对请求的处置惩罚状态。

响应中的Status code是一个重要的标识。详细的状态码如下:在日常的排查运动中,系统技术人员需要以上状态码来判断系统所处状态。固然,在六大状态分类中,另有其子分类,子分类中包罗了越发详细的说明。

用户可参考RFC 3261-13.2.2(处置惩罚INVITE响应)和21章节来学习,这里不再讨论。固然,除了请求methods和响应状态码以外,因为消息体可能需要通过SIP署理/转发服务器和注册服务器的处置惩罚节点,因此消息体具有很强的灵活性,它可以被读取,被修改,被移除或者重新处置惩罚,为了满足多种场景的响应,消息体也可能增加一些须要的拓展,包罗SIP可选tags标签,修改SIP标签,同时可能增加支持Content type的头域,以下这些头域都可能添加到消息体中:Allow, Allow-Events, Content-Disposition, Content-Encoding, Content-Language, Content-Length和Content-Type。

以上这些头域值得先容在RFC3261-20,此章节先容了详细的界说。另外,在SIP消息中,读者需要相识基本的消息花样,其中请求消息花样和响应消息告诉都有差别的语法结构。两者的消息内容有显着的区别:请求消息花样包罗三个主要部门:Request-Line,Header和Message-Body。

响应消息花样包罗三个主要部门:Status-Line,Header和 Message-Body。请求消息花样和响应消息花样对好比下:请求消息花样规范响应消息花样规范关于消息体更多的划定,读者可以参考RFC3261-7章节。接下来,我们讨论一下关于SIP在网络拓扑中和其他相关协议的关联性。SIP是一种应用层的协议规范,和其他的前面所提到的协议同属应用层的协议。

yobo体育app下载官网,yb体育app官网下载

它的目的是用来实现网络媒体的建立服务,电话呼叫,电话集会,视频集会,媒体共享等应用。在这些应用服务中,终端需要支持差别的数据形式,语音编码,数据文件,视频编码等。在这些数据交流的历程中,用户之间的通信可能通过UDP传输/TCP传输方式来传输RTP,也需要RTCP来对媒体流传输控制举行处置惩罚。

因此,SIP协议协议配合其他的协议完成整个通信服务的处置惩罚,其相关协议如下示例图所示:SIP和其他相关协议的关系通过以上图例读者可以看到,事实上,在一个普通的应用情况中,一个情况可能涉及了许多终端和服务器端以及种种应用法式的协商支持,通过确保双方功效协商和性能能力的协商,确保双方具有一系列配合确认的参数才气举行通信(例如,传输方式是否相同,端口是否一致,编码是否支持)。因此,双方都认可的,尺度的,配合支持的协商机制是必不行少的。SDP就是SIP协议中举行协商的尺度机制。

通过以上对SIP以及基本语法的先容,我们或许相识了SIP的消息和一些须要的请求响应消息体组成。接下来,笔者从宏观的角度先容一下SIP网络技术情况中一些焦点的实体构件,包罗支持SIP场景的客户端和服务器端的功效,以及SIP/SDP整体协商流程。

如果我们从最基本的SIP网络组成中讨论的话,基本的SIP网络组成包罗以下几个焦点的模块:种种UA,注册服务器,转发服务器,定位服务器和署理服务器,另有应用服务器等。如果实现完整的SIP媒体通信的话,SIP需要支持至少五种功效:定位服务:决议通信使用的最终终端系统。

用户有效性:决议被呼叫方是否有意愿加入到通信情况中。用户媒体支持能力:决议双方通信所需要的媒体和媒体参数会话建立:建立会话,启动ring振铃等。会话治理:转接,修改会话参数,提倡其他服务,竣事会话等。

通过以上五种功效的支持,SIP网络中的焦点构件才气乐成事情。这些焦点模块卖力以上五种能力的支持。固然,随着当前SIP网络的应用场景不停变化和用户业务需求的变化,SIP网络中有可能种种服务器的部署不是牢固的,因此此图例纷歧定完全表现所有的应用场景。

关于SIP服务器端的讨论,用户可以参考笔者历史文章做进一步的学习。种种SIP UA和服务器端组成在以上图例中,我们看到一些焦点的模块包罗了SIP UA(User Agent),UA又可分为UAS和UAC,另外,UA是以客户端-服务器端模式的模式事情的用户,这表现一个UA实体,为了满足SIP的逻辑实体的要求,它既可能是UAC,又可能是UAS,也是我们通常所的背靠背署理方式。如下示例说明晰一个应用场景中两个SIP终端通过两个署理的呼叫流程:两个UA通过差别署理举行呼叫整体协商流程两个UA首先注册到各自的服务器端,然后通过服务器呼叫另外一个终端。

读者需要注意,这里假设,Alice在F5 INVITE(标识部门)已经携带了本端SDP的媒体支持能力,而且,Bob收到服务器端通过F8 INVITE发送到请求,也回复了可接受的媒体支持能力。双方都协商一致,然后开始语音媒体流发送(F19)。

UA又凭据详细呼叫控制角色差别,可能划分为差别的UA使用角色,电话集会就是一个例子。RFC4579中界说了电话集会中的在SIP 构件中UA界说:Conference-unaware UA:最简朴的UA,到场电话集会,忽略了所有SIP相关消息。此UA可通过拨号加入集会或者被邀请加入集会。

它仅支持RFC 3261规范。Conference-aware UA-此UA可以支持呼叫控制,另外可以支持SIP转发处置惩罚,也可以订阅消息等。Focus-控制提倡集会,卖力集会呼叫控制,包罗一个Conference-aware UA。

我们前面已经讨论,SIP服务器类型支持了多种处置惩罚方式,而且都具有差别的处置惩罚流程。有时,这些服务器的功效定位可能相互交织,因此一些读者可能比力疑惑。如果读者单纯从界说上了明白的话,可能有引起许多误解,读者可以查阅笔者的历史文档来明白这些观点:IPPBX的事情模式SBC/B2BUA的处置惩罚方式深入明白SIP服务器的注册和定位服务流程3关于WebRTC基本先容前面,我们简朴概述了SIP协议作为呼叫控制协议的基本内容,使用消息体中的SDP参数举行呼叫媒体协商。

WebRTC以上一种呼叫控制协议,只是WebRTC使用的是浏览器的方式。这里,笔者不计划花费时间再先容一次WebRTC,笔者以前公布过一篇关于WebRTC的提要,读者通过此文章基本上可以明白WebRTC的基本要点:完整WebRTC技术及应用提要4总结一个最基本的呼叫场景都至少需要两个部门来完成。首先是呼叫控制协议的建立,然后才气实现SDP 媒体协商的流程。因此,在本章节中,我们先容了呼叫控制协议的基本观点,接下来,笔者先容了呼叫控制协议中的SIP协议和WebRTC协议。

在SIP协议的提要先容中,我们先容了SIP消息的基本结构和焦点模块。通过这些基本的先容,为我们后续关于SDP的深入讨论打下一个基础。在后续章节中,我们将逐步先容SDP和其相关规范。

再次说明,在本章节中,笔者针对SIP和WebRTC的先容仅是为了在后续章节中为SDP讨论做一个铺垫作用,可能有一些内容不是读者所希望相识的,望见谅。参考资料:https://www.ccexpert.us/network-design/call-control-and-transport-protocols.htmlhttps://ribboncommunications.com/company/get-help/glossary/call-controlhttps://tools.ietf.org/html/rfc5589https://en.wikipedia.org/wiki/Skinny_Call_Control_Protocolhttps://www.itu.int/rec/T-REC-Q.1912.5-200403-S/enhttps://tools.ietf.org/html/rfc3261关注微信民众号:asterisk-cn,获得有价值的Asterisk行业分享Asterisk freepbx FreeSBC技术文档: www.freepbx.org.cn融合通信/IPPBX商业解决方案:www.hiastar.com如何使用FreeSBC,qq技术分享群:334023047。

本文关键词:yobo体育app下载官网,yb体育app官网下载

本文来源:yobo体育app下载官网,yb体育app官网下载-www.swfdj.cn

×
网站地图xml地图