SIP协议对话(dialog)

对话表示两个用户代理间持续一段时间的端到端的SIP关系。
对话在每个UA通过dialog ID鉴别,dialog ID由callid,本地tag和远端tag组成。
消息的dialog ID取决于SIP要素是UAC还是UAS。对UAC,dialog的id是callid,remote tag是to tag,local tag是from tag。UAS的remote tag和to tag正好相反。
对话包含一些后续消息传送需要的状态(state)。状态由dialog ID、local sequence number (用来指挥UA到对端的请求)、remote sequence number (用来指挥对端到UA的请求)、local URI、remote URI、remote target、一个叫 "secure"的布尔值还有一个路由集(请求要到对端,经过服务器的列表)。

创建对话

对话在特定方法请求的非失败响应生成后创建。按此说明,只有请求是INVITE,响应是2**或101-199的响应且带to tag会建立会话。在没收到最终响应的对话在“早期”状态。

对话内请求

当两个用户代理间建立对话后,任意一方需要的话可以初始化一个新事务。UAS收到请求后,如果to的消息头中有tag,计算dialogID,如果与现有对话一致,就属于mid-dialog请求。就和对话外请求一样,按section 8.2中处理。如果dialogID匹配不一致,UAS可能崩溃并重启,如果认为是错误的路由,那么UAS也可以选择接受并转发路由或拒绝请求。

关闭会话

对于“早期”状态的对话,如果最终响应非2**,请求就被终结了。在本说明中,BYE方法终结一个会话及关联的对话。详见section 15。

Reference

[1].RFC 3261 SIP: Session Initiation Protocol

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值