51学通信技术论坛

 找回密码
 立即注册
搜索
查看: 6140|回复: 19

Gb接口(IP承载)的自动配置流程实例   [复制链接]

Rank: 9Rank: 9

懒

发表于 2012-7-5 15:20:45 |显示全部楼层
一键分享 一键分享

Gb接口当采用IP的承载时是自动配置的。主要是通过NS层子网业务部分所提供的Config流程来实现的。

Config流程用于在Gb接口两个NSE之间交换配置信息,达到自动配置的目的。SNS-CONFIG PDU包含了以下信息元素:
- NSEI:NSE标识
- End Flag:指示是否是BSS NSE发送的最后一个SNS-CONFIG PDU
- IPV4端点列表:一个或多个IPV4端点
- IPV6端点列表:一个或多个IPV6端点。

具体信令流程和实例如下图所示:

步骤如下:

下图给出了具体步骤:

1)#1号报文BSC发起SNS-SIZE流程,向SGSN发送SNS-SIZE PDU,该PDU的内容包括:
- PDU Type=0x12,代表该NS PDU是一个SNS-SIZE PDU
- NSEI=101,代表BSC侧的NSEI标识为101
- Reset flag=1,代表BSC侧请求SGSN在进行后续的Config流程之前对现有配置进行清除
- 最大NSVC数量=64,代表BSC侧所支持的NSVC最大数量为64条
- IPV4端点数量=2,代表BSC侧所支持的IPV4最大端点数量为2个

2)根据规范的要求,SGSN收到BSS侧的SNS-SIZE PDU后,将检查是否支持BSC上报的能力参数,如果能够支持,则SGSN返回正常的SNS-SIZE-ACK PDU消息。并且SGSN还需要检查Reset Flag,本例中Reset Flag的值为1,因此SGSN将据此清除Gb接口相关配置信息并等待后续的Config流程。至此,SIZE流程结束,两端NSE完成了能力参数的协商。

3)#3号报文是BSC发送SNS-Config PDU给SGSN启动Config流程,该PDU中包含的内容有:
- PDU Type=0x0f,代表该NS PDU是一个SNS-CONFIG PDU
- NSEI=101,代表BSC侧的NSEI标识为101
- End flag=1,代表这是BSC发送给SGSN侧的第一个也是最后一个SNS-CONFIG PDU
- List of IPV4 Elements包含了一个IP端点,其IP地址是172.16.17.200,使用UDP端口2157做为Gb Over IP的端口号,并且为该IP端点分别分配了信令和数据流程的权重值都是42

4)SGSN将对BSC侧报告的IP端点及相关参数进行检查,包括查看权重值是否为0以及IPV4端点列表中的IP端点数量是否超过SIZE流程中BSC侧报告的支持的IP端点最大数量,如果没有异常,则SGSN将响应一个正常的SNS-CONFIG ACK PDU。

5)SGSN接下来在#5号报文中发送SNS-CONFIG PDU给BSC,将SGSN侧的IP端点相关信息告知BSC。该PDU包含的内容与#3号报文BSC侧上报的SNS-CONFIG PDU内容一致,唯一的区别是SGSN侧配置了12个IP端点。

6)BSC侧也需要对SGSN报告的IP端点及相关参数进行检查,如果没有异常,则BSC将响应一个正常的SNS-CONFIG ACK PDU。

至此,Gb接口的初始化及接口自动配置全部完成。BSC和SGSN均获知了对方的IP端点以及权重值。

附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

Rank: 8

VIP 论坛核心会员 特殊贡献奖

发表于 2012-7-9 13:16:51 |显示全部楼层
有几个小问题请教:
1.为啥BSC说有2个end point,但是实际上只带了一个?
2. NSVC的建立能不能在抓包里看到?
3. 各个NSVC下的数据包会打上这个NSVC的tag么?

先谢啦,之前没搞过自动配置的GBIP

使用道具 举报

Rank: 9Rank: 9

懒

发表于 2012-7-9 13:52:15 |显示全部楼层
hycl5410 发表于 2012-7-9 13:16
有几个小问题请教:
1.为啥BSC说有2个end point,但是实际上只带了一个?
2. NSVC的建立能不能在抓包里看 ...

1 2个说的是最大两个,SNS-CONFIG流程可以先调用1个进行自动配置,如果还要加新的再调用SNS-ADD流程添加新的IP端点。

2 应该看不到。NSVC没有一个标识符来标识,这个是设备本地来生成和映射的,不需要在网络中传播。

3 什么flag?应该没有。

www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

Rank: 8

VIP 论坛核心会员 特殊贡献奖

发表于 2012-7-9 15:14:18 |显示全部楼层
本帖最后由 hycl5410 于 2012-7-9 15:16 编辑

多谢多谢!
我这里有一个# gsh get_nse 4113
NSEI                           : 4113
Local IP-end-points            :
10.159.10.125:34532, SW=1, DW=0
10.159.10.125:2158, SW=0, DW=1
Remote IP-end-points           :
10.243.146.42:50000, SW=1, DW=1, status=ok

不知道是真的只有一个对端地址还是只显示了一个,而且CPI也写了GBIP是不显示NSVCI的。有点迷糊了。。。

使用道具 举报

Rank: 9Rank: 9

发表于 2012-7-9 18:44:30 |显示全部楼层
是只有一个,这条命令的输出都是由BSS发送的SNS-CONFIG PDU中的内容解码得到的。就像本例中的#3号报文。

使用道具 举报

Rank: 4Rank: 4Rank: 4Rank: 4

发表于 2012-7-9 20:16:46 |显示全部楼层
谢谢爱总{:soso_e100:}

这个例子很少机会见到,能否上传个pcap上来供大家学习呢?

使用道具 举报

Rank: 9Rank: 9

懒

发表于 2012-7-9 21:14:03 |显示全部楼层
可以啊。
象征性收取5金钱。防止未注册恶意用户。
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

使用道具 举报

Rank: 8

义 超级之星 勤 论坛核心会员

发表于 2012-7-10 08:27:04 |显示全部楼层
爱卫生 发表于 2012-7-9 21:14
可以啊。
象征性收取5金钱。防止未注册恶意用户。

爱总,问个比较严重的问题啊

作为SERVER端的端口号应该是多少呢?
我看文中提到2157
但爱立信SGSN上get_nse看到的local endpoint为什么都是2158呢?

谢谢

欢迎多多交流

PS CORE & SS7 & SIGTRAN & IP

有相关的专业技术网站/Q群也多谢推荐

使用道具 举报

Rank: 8

VIP 论坛核心会员 特殊贡献奖

发表于 2012-7-10 09:01:16 |显示全部楼层
admin 发表于 2012-7-9 18:44
是只有一个,这条命令的输出都是由BSS发送的SNS-CONFIG PDU中的内容解码得到的。就像本例中的#3号报文。

那么如果SNS-CONFIG中带的BSS侧地址很多,显示就会很多呗?
如果SGSN侧地址跟BSS侧某些地址之间网络不通(比如没配路由),显示会是什么样呢?

使用道具 举报

Rank: 9Rank: 9

懒

发表于 2012-7-10 09:29:16 |显示全部楼层
yonka 发表于 2012-7-10 08:27
爱总,问个比较严重的问题啊

作为SERVER端的端口号应该是多少呢?

不太清楚哦,规范里没有提到一定要用2157、2158。
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

Rank: 9Rank: 9

懒

发表于 2012-7-10 09:32:53 |显示全部楼层
hycl5410 发表于 2012-7-10 09:01
那么如果SNS-CONFIG中带的BSS侧地址很多,显示就会很多呗?
如果SGSN侧地址跟BSS侧某些地址之间网络不通 ...

1 理论上应该会显示很多,但BSS侧一般也不会配很多,就两个吧。

2 如果不通的话,是有NS-ALIVE PDU去周期性探测的,如果发现网络不通,对段NSE实体会发送NS-STATUS PDU给本端,并携带原因代码“ "IP test failed”(TS48.016 7.4b.1.1 Abnormal Conditions for signalling endpoints)。本端收到后,应该会把get_nse里的显示输出进行更新。(个人理解,未证实)。

www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

Rank: 8

VIP 论坛核心会员 特殊贡献奖

发表于 2012-7-10 10:08:09 |显示全部楼层
多谢爱老大指点~~

使用道具 举报

Rank: 8

义 超级之星 勤 论坛核心会员

发表于 2012-7-10 17:14:18 |显示全部楼层
爱卫生 发表于 2012-7-10 09:32
1 理论上应该会显示很多,但BSS侧一般也不会配很多,就两个吧。 2 如果不通的话,是有NS-ALIVE PDU去周期 ...

爱立信的BSC似乎很多,六七个吧。
华为的好像只有一个。

这个在机制上的区别是?


点评

爱卫生  主要是冗余保护吧。不清楚华为为什么只有一个,是不是多个板卡共用1个IP呢?这样也可以实现冗余。  发表于 2012-7-10 19:42:31
欢迎多多交流

PS CORE & SS7 & SIGTRAN & IP

有相关的专业技术网站/Q群也多谢推荐

使用道具 举报

Rank: 3Rank: 3Rank: 3

发表于 2012-7-16 09:28:19 |显示全部楼层
爱立信SGSN 2010年初的时候一般配置很多个业务地址,不同的业务地址通过设置信令和数据的权重进行业务的处理;但是后来新版本的SGSN后期做了改造,每个SGSN只配置一个业务地址,通过不同的udp 端口号进行信令和媒体的区分,一般2157为信令面,媒体面的端口号普遍大于30000.

使用道具 举报

Rank: 9Rank: 9

懒

发表于 2012-7-16 22:58:46 |显示全部楼层
小丙张嘎 发表于 2012-7-16 09:28
爱立信SGSN 2010年初的时候一般配置很多个业务地址,不同的业务地址通过设置信令和数据的权重进行业务的处理 ...

非常感谢补充。
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

Rank: 2Rank: 2

发表于 2012-10-17 11:56:44 |显示全部楼层
GPRS-NS这个协议,在网上根本找不到标准,有没有这样的规范呀,希望可以提供一份以供参考!

使用道具 举报

Rank: 3Rank: 3Rank: 3

发表于 2012-11-29 17:14:32 |显示全部楼层
爱卫生 发表于 2012-7-10 09:29
不太清楚哦,规范里没有提到一定要用2157、2158。

bsc第一次向sgsn(爱立信)发起连接的时候都是2157 ,但是建立连接后alive 消息一般是另外高位端口,用户数据的是2158.
华为的sgsn都是在一个端口上,这个端口可以协商(一般为高位端口)。

点评

admin  谢谢补充!:)  发表于 2012-11-29 21:31:31

使用道具 举报

Rank: 2Rank: 2

发表于 2012-12-31 10:30:45 |显示全部楼层
最近准备正开发gb口,学习了。谢谢

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

站长邮箱|Archiver|51学通信 ( 粤ICP备11025688 )

GMT+8, 2018-12-14 09:21 , Processed in 0.174758 second(s), 15 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部