51学通信技术论坛
标题: Gr接口中,SGSN进行GT寻址HLR的实例 [打印本页]
作者: 爱卫生 时间: 2011-5-24 21:35:29 标题: Gr接口中,SGSN进行GT寻址HLR的实例
本帖最后由 爱卫生 于 2012-10-15 20:10 编辑
在很多信令流程中,都会用到Gr接口。例如附着过程,SGSN要通过HLR去获取用户的签约数据。那SGSN是如何寻址HLR的呢?如果了解了SS7网络,SS7协议栈。但不了解SGSN中的寻址的话,就可以看下面的图例。
因为SGSN寻址HLR好要涉及到国际漫游的场景,所以SGSN有可能需要寻址国外的HLR。例如美国用户到北京来,就是北京的Visted SGSN去寻址美国的Home HLR(不过HLR肯定都是Home,再加一个Home强调)。这时候就需要用到GT寻址。因为中国的信令点码采用的是24位编码,按照行政区划来划分,但美国可能是14位信令点码,因此地址编码长度都不一样,无法进行通信。就像IPV4地址无法直接和IPV6地址通信一样。需要一个转接。这就是SCCP层的GT寻址功能。
GT全名为Global Title,既然用于全球寻址,那这个GT码就必须要全球唯一。因此GT码中一定要有国家和运营商的标识。理论上来说,只要是全球唯一的都能用作GT码,例如手机号码MSISDN,MS的IMSI都可以。而在GPRS中用到的GT码叫做MGT(Mobile GT)。是由MSISDN和IMSI根据一定规则计算出来的。通俗点就是MSISDN和IMSI一起生出来的下一代。这个MGT会放在SCCP层的called party address字段中做为目的地址进行寻址。
具体实例可以看下面的图例。
[attach]405[/attach]
图例:Gr接口GT寻址实例
作者: hendouse 时间: 2011-6-19 08:52:51
本帖最后由 hendouse 于 2011-6-19 08:53 编辑
“GPRS中用到的GT码叫做MGT(Mobile GT)。是由MSISDN和IMSI根据一定规则计算出来的。通俗点就是MSISDN和IMSI一起生出来的下一代。这个MGT会放在SCCP层的called party address字段中做为目的地址进行寻址。”
赞一个,受教了~
作者: weishengzi 时间: 2011-8-4 14:16:29
浅显易懂啊,多谢
作者: 爱卫生 时间: 2011-8-13 18:18:17
回复 uranus1225 的帖子
是这样的。如果是基于GT寻址的话,那SGSN是在自己节点内部完成GT转换,也就是说你在端口上抓包是抓不到的。这个是属于内部流程。不会发出来的。发出来的包已经完成GT寻址,变成DPC+SSN了。否则这个包就发不出来,因为无法完成MTP-3层的封装了。
作者: oliverchang 时间: 2011-10-27 22:11:03
回复 爱卫生 的帖子
爱总,文中提到的SRP是不是经常说的信令转接点哈??
作者: 爱卫生 时间: 2011-10-29 16:37:03
回复 oliverchang 的帖子
哦,不好意思。没提这个缩写。SRP的R代表Relay,也就是具有GT翻译寻址功能的STP,用来区分不做GT寻址的STP。
作者: arrowbroken 时间: 2011-11-1 12:53:08
回复 爱卫生 的帖子
爱总,有些疑问:
1. RI=0 应该是Rout on GT. 例: .0.. .... = Routing Indicator: Route on GT (0x00)
RI=1 :Route on SSN. 例: .1.. .... = Routing Indicator: Route on SSN (0x01)
2. 在第二小节GT寻址里,"SSN=0",我觉得这个SSN应该还是6,这个SSN带不带是由另外一个Flag(SubSystem Number Indicator)定义的。而且,在SS7的传输过程中,SCCP层的地址,STP基本是不修改的,只是修改PC。
作者: 爱卫生 时间: 2011-11-1 15:22:50
arrowbroken 发表于 2011-11-1 12:53
回复 爱卫生 的帖子
爱总,有些疑问:
非常感谢。又帮我纠正一个错误。特此更正如下。
1)RI=0为Route on GT, RI=1为Route on SSN。
2)SGSN发出去的第一个给HLR的MAP消息里,SSN肯定是6。
结合另一篇帖子的图具体说明一下,帖子是:X移动运营商GT寻址方式原则介绍及实例。
假设图中的SPA是SGSN,SPB是HLR。那么通常来说的SGSN上的数据配置(或者说抓包看到的发给HLR的第一个包里的SCCP或MTL-3消息里的值)是:
1 DPC=LSTPA的信令点码
2 SSN=6(而不能为0)原因是如果在LSTPB(即B省离HLR最近的STP)上如果没有做SSN的转换的话,LSTPB会收到这个SSN=0的包,并将其丢弃。而中间的LSTPA、中间两个HSTP因为采用的会是Route on GT的方法,也就是不看SSN,因此SGSN无论送出来的SSN是多少,对于LSTPA、中间两个HSTP都是透明的,根本不看。只有LSTPB才会是Route on SSN会看SSN和DPC进行寻址。
作者: rubik 时间: 2012-2-1 12:26:26
在update location message中 一定使用E.214而不会使用E.164么?
作者: strong1982 时间: 2012-3-14 17:41:36
爱总,麻烦帮忙看下下面这个问题。我看到一个文档,讲到:
在准直连的情况下,STP不会改变信令消息中的OPC和DPC。当两个信令点间采用DPC寻址方式传送MAP、CAP消息且没有直达链路时,信令点间就要采用准直连方式。
爱总可否大致讲一下准直连的连接方式,谢谢。
作者: 爱卫生 时间: 2012-3-14 21:53:20
回复 strong1982 的帖子
现在网络基本上都是准直连。需要经过STP转接。本帖提到的例子都是准直连的例子。具体可参考8楼的例子。只不过8楼是用的GT寻址。因为Gr接口需要全球寻址,所以只采用MTP-3的寻址是不够的,不能支持国际漫游的情况。如果不采用GT漫游的情况下,SGSN将DPC就设置成HLR的信令点码,交给STP处理。STP查找MTP-3路由表,一跳一跳转交给HLR。传递过程中DPC不变。
作者: 爱卫生 时间: 2012-3-14 22:08:38
rubik 发表于 2012-2-1 12:26
在update location message中 一定使用E.214而不会使用E.164么?
SGSN只有在发给HLR的第一个包里,才会使用E.214的MGT做为GT码,后续发给HLR的消息,因为已经从HLR发过来的消息里的SCCP层得到了HLR的E.164地址,因此后续给HLR的消息都会使用这个HLR的E.164地址作为GT码。第一个包用MGT,是因为SGSN不知道HLR的E.164地址。
作者: oliverchang 时间: 2012-4-8 23:12:42
好帖,呵呵,谢谢!
作者: oliverchang 时间: 2012-4-8 23:13:52
好帖,呵呵,谢谢!
作者: oliverchang 时间: 2012-4-8 23:23:18
好帖,呵呵,谢谢!
作者: oliverchang 时间: 2012-4-8 23:24:23
好帖,呵呵,谢谢!
作者: zyzai605 时间: 2012-4-11 14:36:56
不错,呵呵,搞了那么多SGSN,其实这块还是没有搞的很清楚
作者: Darcy2011 时间: 2012-5-7 15:31:17
学习学习!
作者: GPRSTV 时间: 2012-12-17 17:19:29
学习学习这个
作者: fans15989 时间: 2014-5-22 11:23:54
给力!!好好学习了
作者: Toni 时间: 2014-11-27 22:57:48
好帖,呵呵,谢谢!
欢迎光临 51学通信技术论坛 (http://51xuetongxin.com/bbs/) |
Powered by Discuz! X2 |