这种情况也非常普遍。很多用户的习惯是白天开机,晚上关机。早上再开机。这样,至少在这个用户起床到出门到到达上班地点之前,都是没有离开这个RA的。RA的范围其实很大,甚至你可能到了上班地点,也还是和家里在同一个RA。如果以后SGSN POOL的应用更多的话,那可能整个城市都在同一个SGSN的服务覆盖区。这是后话了。 我们这里需要探讨的就是这样一个流程。 当一个MS开机附着成功后,然后晚上关机睡觉了。白天再开机进行附着的流程。 由于之前这个用户附着成功,所以网络侧一定已经给它分配了一个P-TMSI,用于在这个RA内唯一标识它。同时,由于它晚上关机了(假设是正常的关机)。那一定给网络侧发了去附着的请求,这时SGSN会把用户的状态切换到idle。但实际上除非SGSN主动去删这个用户的签约数据和鉴权参数,这个用户的签约数据和鉴权参数将会一直保存在SGSN的缓存中(大多数厂家的做法)。这样做的目的可以减少Gr接口的信令交互,另外用户体验也更好。 根据这个已知条件,我们得出用户的附着流程如下,信令流程图也如下所示: 图例 MS附着成功后关机,在当前RA重新开机附着流程 1 MS发送附着请求给SGSN。身份标识为P-TMSI。实际上由于用户未移动,这个P-TMSI也就是当前这个SGSN分配的。 2 SGSN收到请求后,由于这个P-TMSI是自己分配的,所以能够识别。另外,由于缓存中用户的IMSI信息,还有鉴权参数信息,另外签约数据也都有。所以SGSN在这一步可以直接向手机发起鉴权请求。 3 MS回送鉴权应答。 4 SGSN检查两边算出来的鉴权结果是否一致,一致则鉴权成功。否则将reject附着。 5 SGSN发送attach accept消息给MS。标识网络侧认可附着已经成功。并且分配新的P-TMSI给用户。 6 MS回送attach compelete消息并将SGSN下发的信息存储起来,完成整个附着流程。 |