SBC的含义
Session(会话):指任何实时的、交互式的语音、视频或者多媒体通信业务,这些业务使用基于Layer 5(会话层)的IP会话信令协议(比如SIP、H.323、MGCP、Megaco/H.248等)来传送;
Border(边界):指任何IP-IP网的边界,如业务提供商网络与用户网络之间或者是两个提供商网络之间的边缘网络;
Control(控制):包含一系列功能的提供,如业务提供商和用户设备的安全性保证,SLA(Service Level Agreement,服务等级约定)的业务性能保障以及最大化收益和最小化成本等。
SBC的功能
SBC作为终端的代理。用户的所有呼叫、注册、媒体流量都经过SBC中转。这部分功能描述与TURN服务器类似。但SBC不要求终端支持STUN\TURN协议。
SBC是SIP UA(由于会转发信令给终端,也具有B2BUA功能)+ALG。
SBC一般在核心网边缘,SBC管理域内的所有终端都向SBC注册,并定时发送keep alive消息维持信令通道和NAT Binding的存在。当终端通过SBC发起呼叫时,SBC通过分析协议将其中的信令地址和媒体地址替换为在本机临时分配的地址,然后才转发出去,因此在外界看来,呼叫似乎是由SBC发起而不是隐藏在SBC之后的终端。由于SBC位于公网上且终端定期向SBC注册,所以SBC与终端中间不存在NAT穿透的问题,而SBC由于成为终端位于公网上的完全代理可以顺利解决一侧的NAT穿透问题。
SBC可以提供三大功能:
1,
解决IP地址问题:网络地址转换及其穿越
SIP ALG+NAT穿越
SIP ALG:完成SIP/SDP层的IP地址/端口转换。
NA(P)T:完成IP层/传输层的IP地址/端口转换。
NAT穿越:允许NAT后面的SIP终端经过SBC接入 呼叫服务器 。
SBC会把终端IP换成自己的IP。
用户终端的SIP包、RTP包的目的地址是SBC的公网地址,所以终端所处网络的边界路由器会把SIP包、RTP包发给SBC。而数据业务则不会被发给SBC。
2,网络安全问题
3,QoS问题
在IMS架构中,SBC分为A-SBC和I-SBC。
A-SBC主要运用于接入网和IMS CN之间,主要提供NAT穿越、NAPT、门控、DiffServ标记和重标记、媒体流量监管等方面的功能。
I-SBC运用于IMS CN与其它IP多媒体网络之间,主要提供NAPT、网络拓扑隐藏、门控、DiffServ标记和重标记、IWF等方面的功能。
SBC可以分成两种(视VOIP网络规模大小而部署):
1,集成式SBC:信令、媒体都通过同一个服务器中继。
2,分布式SBC:一个或多个服务器负责信令路径控制,另一个或多个服务器负责媒体路径控制。前者作为SIP包的中继,后者作为RTP包的中继。
MIDCOMM
在STUN解决方案中,私网终端通过STUN协议被动从STUN服务器中得到公网地址,而MIDCOM提供一种相对主动的方式,即通过与NAT设备通讯主动要求NAT设备为自己建立NAT映射需要的绑定并获得该绑定对应的公网地址。这是通过引入MIDCOM Middle Box和MIDCOM Agent来实现的。MIDCOM中间盒嵌入于NAT设备MIDCOM代理在终端实现。终端通过MIDCOM代理不仅可以要求NAT设备为自己建立绑定还可以指定绑定的存在时间、方向等参数,因此绑定不仅对从私网出去的网络包有效,对从公网进来包同样有效,这使得建立的绑定具有更大的灵活性,不像一般NAT设备动态建立的绑定对从公网进入私网的包有着诸多限制。
3GPP中的ALG
3GPP提到的P-CSCF内置IMS-ALG功能,可以在SBC实现。
3GPP TS 23.228
IP Multimedia Subsystem (IMS);
Stage 2
G.2.1
IMS-ALG and IMS Access Gateway model
Figure G.1 presents the general reference model for IMS access when both the signalling and media traverses NAT devices. Figure G.2 presents the general reference model when IP address translation is needed between the IP CAN and the IMS domain. The IMS network architecture is the same for both cases. The NAT integrated with the IMS Access Gateway is under operator control in this reference model.
ALG方式的网络参考模型,ALG功能位于P-CSCF之中,NAT设备也可以内置于IMS Access Gateway(A-SBC,TISPAN架构中的C-BGF)之中,也可以在其之前。
考虑到现网NAT已经普遍存在,不可能将其普遍改造为IMS Access Gateway,因此多数的应用场景是接入网关和NAT分离的情况。
P-CSCF应通过SPDF间接控制C-BGF完成相应流程。当使用Gq’接口时P-CSCF可以通过AAR/AAA消息与SPDF/C-BGF之间传递NAT端口绑定信息。
上图中,主被叫画在一个STUN之下,实际上也可以分开。
1)P-CSCF收到一个INVITE请求,通过Via头部与实际收到的报文地址不一致(或注册信息)判断存在NAT。
2)P-CSCF提取INVITE请求中SDP媒体地址对,向IMS Access Gateway请求分配外口绑定地址。
3)Access GW建立主叫内外口地址的绑定关系并返回分配的媒体面外口地址,P-CSCF据此修改INVITE请求中的SDP地址并将消息转发。
4)被叫P-CSCF将消息转发给被叫,被叫回送SDP Answer.
5) 被叫P-CSCF收到呼叫后根据记录的注册信息知晓被叫存在NAT,向IMS Access Gateway请求分配外口地址。
6)Access GW返回外口绑定地址,被叫P-CSCF据此修改SDP内容并将消息转发给主叫,主被叫之间建立媒体连接