首页 > 新闻 > 专家观点 >

对SIP协议第三方呼叫控制的研究

2004-07-13 00:00:00   作者:   来源:   评论:0  点击:




  第三方呼叫控制(3pcc)指的是由第三方控制者在另外两者之间建立一个会话,由控制者负责会话双方的媒体协商。3pcc是一种非常灵活的控制方式,在PSTN网中,第三方呼叫控制通常用于会议、接线业务(接线员创建一个连接另外双方的呼叫)。同样,使用SIP协议也可以借助3pcc来完成许多业务,例如点击拨号、通话过程中放音等等,而且实现起来非常方便。RFC3264中定义了一种提供/应答模式,使两个实体之间可以使用SDP的提供/应答(offer/answer)模式进行会话协商。
二、第三方呼叫控制方法
  SIP消息可以携带SDP消息体。SDP(会话描述协议)是用来描述与媒体流相关的参数以及与会话相关的信息,其中包括对会话的描述以及媒体类型、数据发送到的端口、传输协议(例如RTP)以及媒体格式(例如RTP载荷格式)的描述。3pcc的实现关键就在于控制者如何在会话双方之间使用SDP消息协商即将建立的会话。根据SIP协议的机制,可以有下面四种方法实现3pcc。
  1.流程Ⅰ
  该流程图中的offer和answer都是SDP消息。下面解释消息流程。
  控制者首先向用户A发送一个没有SDP的INVITE,A的电话振铃,A应答之后,产生的200 OK响应中将包含一个ofrerl,携带用户A所希望建立会话的媒体类型、媒体格式、传输协议以及接收媒体流的端口和IP地址。控制者将来自A的offerl包含在发给B的INVITE中,B振铃应答之后产生对rfferl的应答answerl。最后控制者向用户A发出的ACK中包含answer1作为应答。

图1 3pcc流程Ⅰ

  该流程优点是非常简单,不需要控制者产生SDP,不必考虑控制者自身对媒体类型的要求。

图2 3pcc流程Ⅱ

  流程图中的“黑洞”SDP指的是包含的连接地址是一个无效的连接地址,例如rtp.invalid或者0.0.0.0,也就是想建立一个空的媒体流,因为这个媒体流实际上并没有媒体或者RTCP包从A流出。

图2 3pcc流程Ⅱ

  流程图中的“黑洞”SDP指的是包含的连接地址是一个无效的连接地址,例如rtp.invalid或者0.0.0.0,也就是想建立一个空的媒体流,因为这个媒体流实际上并没有媒体或者RTCP包从A流出。

图4 3pcc流程Ⅳ

  综上所述,流程I是最简单且有效的流程。如果控制者预先知道B是自动应答的能够立即响应,例如B是媒体服务器、会议服务器等等情况下,使用本流程是最好不过了。

图5 用户B播放早期放音媒体

四、总结语

  3pcc在多方通信中(例如会议)的应用也很广泛,SIP协议的3pcc功能应用灵活,使用一个控制者可以将多个用户联系起来进行通信,方便管理。但是目前3pcc实现上还有一些标准无法统一的问题,例如如何创建一个无效连接地址的SDP,亟待解决。目前我国正在积极的开展关于SIP协议对呼叫控制方面标准的制定,第三方呼叫控制作为呼叫控制的一个重要方面,也将成为一个不可或缺的研究重点。

中国通信网(www.c114.net)—摘自 泰尔网

相关阅读:

分享到: 收藏

专题