转载网络上的,由于http://blog.csdn.net/liaoxinmeng/article/details/6949351 无图不方便,找齐图片版的(但仍然感谢)。还有 http://blog.sina.com.cn/s/blog_6b10255301012kqs.html 感谢以上博客,还有其他相关博客。在此借花献佛了。 SDP(Session Description Protocol)的offer/answer模型是通信协议中的一个重要概念,主要应用于多媒体通信,如VoIP、视频会议等。该模型是基于SIP(Session Initiation Protocol)进行会话建立和管理的核心机制。在SIP中,SDP用于描述会话的媒体类型、编码格式、传输地址和端口等信息。 1. offer/answer模型的基本原理: - offer是发起方(UAC,User Agent Client)提出的一个会话描述,包含了它愿意接受的媒体类型和参数。 - answer则是响应方(UAS,User Agent Server)对offer的回应,确认或修改发起方的提议,最终确定双方都能接受的会话参数。 2. 六种offer/answer交换模式: - 模式1(INVITE含offer,200 OK含answer)是最常见的,UAC在INVITE请求中包含offer,UAS在200响应中给出answer。 - 模式2(INVITE不含offer,ACK含answer),UAC初始请求不带offer,UAS在200响应中提供offer,UAC通过ACK返回answer,适用于3PCC(Third Party Call Control)场景。 - 模式3至5(100rel支持下的模式)在支持可靠100rel响应的实体间使用,通过1xx临时响应携带offer/answer提前建立会话或更新参数。 - 模式6(UPDATE请求用于会话更新),允许在会话进行中通过UPDATE请求进行参数调整,需要确保之前的offer/answer过程已完成。 3. 100rel的引入: - 100rel(Reliable Provisional Responses)扩展使得1xx临时响应变得可靠,允许在呼叫完成前建立早期媒体会话,提高了用户交互体验。 - 模式3和4利用1xx-rel响应建立会话,模式5和6则用于已建立会话的参数更新。 4. 对话(Dialog)在offer/answer中的作用: - 对话是SIP中连接两个用户代理的概念,将offer/answer交换绑定到特定的会话,确保会话描述的更新只影响到相应的会话。 5. 会话更新: - 通过UPDATE请求可以对已建立的会话进行参数更新,如改变媒体编码、调整带宽等,模式6是专门为此设计的。 总结来说,SDP的offer/answer模型在SIP中起到了关键的作用,通过不同模式的offer/answer交换,实现了多媒体会话的创建、管理和更新。100rel的引入增强了实时性,使会话能在呼叫确认前开始,而UPDATE请求则提供了会话动态调整的能力。理解并掌握这些模式对于实现高效且灵活的多媒体通信系统至关重要。
- 粉丝: 2
- 资源: 10
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助