当我们讨论SIP或者SDP的一些技术话题时,SDP的协商是一个绕不过的话题。具体的协商机制涉及了多个方面的内容。在我们的讨论中,笔者将会针对两个比较重要的话题进行讨论,一个是SDP offer/answer 模式,另外一个是在NAT场景中的SDP offer/answer交互模式拓展ICE。在本章节中,我们将首先讨论SDP offer/answer交互模式,具体内容包括:offer/answer的背景介绍,基本操作,如何实现初始化的offer,重点讨论offer中的单播媒体操作,offer中关于指示方向的处理策略,编码协商优先级设置。
背景介绍和基本操作
首先,我们介绍一下我们讨论的基本背景环境。到目前为止,我们讨论的核心话题涉及了SDP和准备要讨论的offer/anser交互模式。基本上我们都是围绕两个核心的规范来讨论,其中,RFC4566(SDP)为基本蓝图,然后配合RFC3264关于offer/answer交互模式。关于SDP的内容,我们在前面的章节已经有完整的介绍(SDP基础),那个章节涵盖了SDP的核心定义/专有名词,语法,特征属性,使用场景等相关细节,读者可以查阅上一个章节的内容,这里不再赘述。根据上一个章节的内容,我们在本章节进一步讨论SDP协商时使用的交互模式offer/answer模式。在本章节,我们将重点以RFC3264为蓝本,介绍offer/anwer交互模式。
笔者主要以offer和answer两个部分为核心主线,分别按照两个部分中的单播媒体和多播媒体的处理方式的不同来展开讨论。这里提醒读者,为了更好地支持IPv4,在RFC3264的基础上,RFC6157对媒体描述管理进行了更新。因此ÿ