B2BUA(Back-to-Back User Agent,背靠背用户代理)是通讯网路中,使用SIP(Session Initiation Protocol,会话发起协定)实现会话的一种逻辑实体。B2BUA作为SIP呼叫两端的用户代理,负责处理呼叫两端的所有SIP信令,从呼叫确立到终止全程跟蹤每个呼叫。
基本介绍
- 中文名:背靠背用户代理
- 外文名:Back-to-Back User Agent
- 功能:使用SIP实现会话的逻辑实体
简介
B2BUA(Back-to-Back User Agent,背靠背用户代理)是通讯网路中,使用SIP(Session Initiation Protocol,会话发起协定)实现会话的一种逻辑实体。B2BUA作为SIP呼叫两端的用户代理,负责处理呼叫两端的所有SIP信令,从呼叫确立到终止全程跟蹤每个呼叫。允许 B2BUA 的操作者来提供值附加特徵到这个呼叫。对 SIP 用户,B2BUA 在一边担当用户代理伺服器(UAS),在另一边(背靠背)担当用户代理客户机(UAC)。
B2BUA就像用户代理伺服器(UAS)一样接收和处理请求。为了决定该如何应答一个请求,B2BUA就像UAC一样工作,并且发出请求。由于它是直接的UAC和UAS的串连,所以,不需要对他有额外的定义。
B2BUA的定义可参见RFC 3261。
与Proxy的区别
另一种使用SIP协定实现会话的逻辑实体是代理伺服器(Proxy)。B2BUA和Proxy在信令、流程管理方面有明显区别。
- Proxy的功能是传送信息,起到路由(牵线搭桥)的作用,因此在创建会话的寻路过程中忠实于信息传递的準确性和完整性。也正因为Proxy主要是路由功能,会话中的后续讯息可以对其旁路,以减少网路资源的耗费。
- B2BUA追求的是所连线的两端之间高效、可靠的分工与合作,其特徵主要包含以下几方面:
合作:两侧需要充分的合作,否则用户之间将无法实现会话。 - 分工:分工来源于实现各种业务的实际需求。比如一个用户发起会议、转接等会话流程,就需要在业务伺服器的两侧具有不同的会话模型,两侧的信令、流程往往也有很大差别。
- 高效:通讯网路为用户提供的业务日益丰富,不同的业务往往需要在网元间传输不同的信息。但这些业务信息往往只需要与此业务相关的网元知晓,无需将这些信息从头到尾进行传输,从而可以充分地实现传输信息的精简。反之,如果不进行精简,在所有网元之间传输所有业务相关的信息,不仅会大幅增加讯息长度,而且会带来流程、信息的管理和利用混乱,业务之间的冲突关係也会增多。为业务的拓展带来极大困扰。
- 可靠:B2BUA对两侧之间所有讯息进行管理、适配和转换。B2BUA在整个会话中从始至终的存在,不能被旁路。
由此可知,B2BUA有效地实现了两侧的相互协调与配合;实现了两侧的业务、信令、流程的相对独立性,极大地提高了通讯网路的业务提供能力和部署灵活性。
套用
B2BUA逻辑简单,但功能强大,如:通过会话流程中多个B2BUA的简单叠加,可以实现所有用户各自不同的业务与业务组合。因此,B2BUA在使用SIP协定实现会话的场景中被广泛的使用。
在了解B2BUA以上特徵的基础上,我们就很容易根据网元在会话中的作用来确定是否使用了B2BUA。