SLS字段在七号信令中的运用
2019-11-06刘畅,谭勇
刘 畅,谭 勇
(中国铁路广州局集团有限公司广州通信段,广州 510080)
七号信令系统(Signaling System No.7)是国际电信联盟(I T U-T)于1988 年在Q.700中推荐的一种公共信道信令(Common Channel Signaling),经过多年发展,已经被广泛接受并运用在公共交换电话网、蜂窝移动通信网中。作为公共信道信令的代表,七号信令在许多地方也被称为CCS7。
七号信令系统是一种局间信令系统,专注于处理局间信令。例如移动交换中心之间(M S CMSC)、移动交换中心和其他电信设备之间(MSCPSTN)的信令。它负责协调各种电信设备,使各种电信设备能够准确地建立语音链路,为用户提供服务。
如图1 所示,在国内G S M-R 网络中,设置A、B 两个局作为信令转发节点,路局之间的信令消息都需要经过信令转发节点转发,因此,合理的选择转发节点,正确的使用信令链路,不仅关系到端局之间通信的服务质量,还关系到A 局和B 局两个信令转接局的信令负荷。
图1 C局MSC信令连接示意图Fig.1 Schematic diagram of signaling connection of MSC-C
1 信令链路集之间的负载均衡
如图2 所示,C 局MSC (42-255-25)目前在NAT0 网中共有7 个目的信令点,分别是C 局铁通 (186-2-22),A 局MSC/STP (24-255-21),B局MSC/STP (24-255-22)、F 局MSC (24-255-23)、E 局MSC (24-255-26)、G 局MSC (24-255-27)、D 局MSC (24-255-35)。
图2 C局MSC目的信令点Fig.2 Signaling point of MSC-C
在七号信令的信令网中,信令消息在信令点间传送,信令点之间由信令链路集相连。相邻的两个信令点之间只能配置1 个信令链路集,但是去往一个目的信令点(DPC)可以至多有8 个信令链路集,这些信令链路集构成了信令路由(Signaling Route)。
如图3 所示,C 局MSC 去往A 局MSC/STP、B 局MSC/STP、C 局铁通这3 个相邻的目的信令点都只有一条路,就是直连的信令链路集,分别为“LSASTP、LSBSTP、LSGZTT”;而去往F 局MSC、E 局MSC、G 局MSC、D 局MSC 这4 个目的信令点,每个都有两条路可以选:即通过A 局转发或是通过B 局转发。
当且仅当两条信令链路集指向同一DPC,且优先级(Priority)相同,优先级模式(Priority Mode)为Equal 时(默认Priority Mode=Equal),负载均衡才能生效,且最多只能对两条信令链路集配置负载均衡。从图3 中可以看出,去往F 局、E 局、G 局、D 局的信令路由都配置了经由A 局和B 局转发的负载均衡。
配置了两条信令链路集的负载均衡后,一个信令消息包通过两条信令链路集的哪一条传递给DPC是由配置DPC 时选择的Loadsharing Key 参数(LSK)和消息包中的SLS 字段共同决定的:LSK决定是否开启负载均衡,开启均衡时看SLS 字段中被选中4 个比特的哪一位;而SLS 字段中被LSK 选中的那一个比特唯一的决定该信令消息包走哪条信令链路集。若该比特为0,消息包走第一条信令链路集;若该比特为1,消息包走第二条信令链路集。如表1所示。
将查询C 局MSC 信令路由的结果(如图3 所示)和查询C 局MSC 目的信令点的结果(如图2 所示)结合到一起来看,不难看出,虽然在配置信令路由时(如图3 所示),对去往F 局MSC、E 局MSC、G 局MSC、D 局MSC都设置了两条优先级相同的路由,但在配置目的信令点时(如图2 所示),F 局MSC 和G 局MSC 的LSK 都设成了“none 0”,这样一来,根据表1 的规则,无论发往这两个MSC 的信令消息包MSU 中SLS 字段的4 个比特是什么,都会选中第一条信令链路集,也就是通过A 局MSC/STP 进行转发,去往这两个MSC 的信令没有负载均衡。
图3 C局MSC信令路由表Fig.3 Signaling route table of MSC-C
表1 信令链路集之间的负载均衡Tab.1 Load-balance between signaling link sets
2 信令链路之间的负载均衡
在1 条信令链路集里,可以包含多达16 条信令链路(Signaling Link),这16 条信令链路之间也可以配置负载均衡。在SR9 版本之前,信令消息包MSU 平均分配给信令链路集中所有的信令链路。这种负载分担是写在MSC 硬件上的,不能被用户更改;SR10 版本及以后的版本中,用户可以在创建信令链路集时自定义Load Share Algorithm 参数,取值范围是0 ~15。
将SLS 字段和LSA 相对的比特做“与”运算,得出的结果转化为十进制数字就是被选中的信令链路编号。如表2 ~4 所示,通过合理的调整LSA 的取值, 可以做到2 条(LSA=1/2/4/8)、4 条(LSA=3/5/6/9/10/12)、8条(LSA=7/11/13/14)、16 条(LSA=15)信令链路负载分担。
如图4 所示,C 局MSC 的3 个信令链路集的Load Share Algorithm 参数都设置成15,这就是说信令消息在该信令链路集里的所有信令链路上实行负载均衡。
3 优化方案
为了实现负载均衡,更好地利信令资源,可使用Workbench 修改MSC 配置数据,将DPC 配置中F 局MSC 和G 局MSC 的LSK 改为“SLS4”,以实现去往这两个MSC 的信令通过A 局MSC/STP 和B 局MSC/STP 进行转发的负载均衡,如图5、6 所示,具体命令如下。
表2 信令链路之间的负载均衡(LSA=3,4条信令链路负载均衡)Tab.2 Load-balance between signaling links (LSA=3, four signaling links)
表3 信令链路之间的负载均衡(LSA=7,8条信令链路负载均衡)Tab.3 Load-balance between signaling links (LSA=7, eight signaling links)
MODSIGDP:Net name=NAT0, DPC=24-255-23,Loadsharing key=sls4。
MODSIGDP:Net name=NAT0, DPC=24-255-27,Loadsharing key=sls4。
4 总结
优化前,虽然技术人员在设置信令路由时为每个DPC 都设置了两条优先级相同的信令路由以期望达到负载均衡的效果,但由于对SLS 字段与LSA字段的相互作用机制理解不深,导致LSK 错误设置,造成信令链路集之间没有形成负载均衡,只做到信令链路之间的负载均衡。通过修改DPC 配置中的LSK,真正实现信令链路集之间、信令链路之间的双重负载均衡,更好的利用信令资源。
表4 信令链路之间的负载均衡(LSA=15,16条信令链路负载均衡)Tab.4 Load-balance between signaling links (LSA=15, sixteen signaling links)
图4 C局MSC信令链路集Fig.4 Signaling link set of MSC-C
图5 修改C局目的信令点配置中关于F局的配置Fig.5 Modification for configuration MSC-F of Signaling DP of MSC-C
图6 修改C局目的信令点配置中关于G局的配置Fig.6 Modification for configuration of MSC-G of Signaling DP of MSC-C