对于固定通信而言,它知道自己的用户在哪里,因为用户的位置是固定的;而对于移动通信而言,则完全不是这么回事。手机始终处于移动状态,由于基站的覆盖范围有限,因此必然出现手机从一个基站的覆盖范围移动到另一个基站覆盖范围的情况。

尽管如此,移动网必须想办法找到手机,要不然就无法实现和该手机的联系,那它怎样才能找到手机呢?

一个简单的办法是通过所有的基站下发“寻人启事”,寻找该手机,这样的办法很有效,只要手机还在移动通信网的覆盖范围内,那么就一定可以找到,如下图所示。

办法虽然简单快捷,但是弊端也是显而易见的,要找一部手机居然要进行全程全网的寻找,太没效率了,我们得想想办法。想当年没有移动网的时候,我们到一个地方游玩总是用固定电话给家里打一个电话报平安:“老妈,我在长沙开福区玩哦”,“老妈,我在北京丰台区玩哦”。打个不恰当的比方,万一不幸走丢了,家里人也只需要在走丢的区域打“寻人启事”的广告,不用在整个长沙市或者北京市打广告,这样就可以大大节省一笔广告费。

现代的移动通信系统在处理如何寻找手机这个问题上和以上方式有惊人的类似。它先是将一个城市的无线网络划成若干个位置区(类似城市的片区划分,如长沙市的开福区、岳麓区等),并分位置区广播自己的位置区消息。手机通过侦听广播信息得知自己所在的位置区,如果发现自己的位置区发生了变化,则主动联系无线网络,上报自己所在的位置(类似于到了新的地方后向家里报平安,告知自己所在的位置),如下图所示。

无线网络收到手机发来的位置变更消息后,就把它记载在数据库里,这个数据库称为位置寄存器。等以后无线网络收到对该手机的被叫请求后,就首先查找位置寄存器,确定手机当前所处的位置区,再将被叫请求发送到该位置区的所有基站,由这些基站对手机进行寻呼。

位置变更消息还有一个时效性的问题。有时候你手机所处的位置区并没有变更,但网络也无法找到你,比如你的手机电池没电了,或是 SIM 卡被拔出来了。还有一种可能是你的手机位置发生了变化,但是网络无法得知,比如说你进入了无网络覆盖的区域。在这种情况下,继续对你寻呼无疑是浪费了网络资源。为了避免造成浪费,我们通常设定一个周期性的时间,要求手机每隔一定时间,不管位置区有没有变化,都要向网络汇报一下自己当前所在的位置区。对于逾时未报的,就把它当作“网络不可及”好了,直到收到它的下一次位置更新再改变状态。

位置区的划分需要寻找一个平衡。划得太大了浪费寻呼资源,划得太小了手机走不多远就要上报位置区变更,同样浪费系统资源。

--摘自《大话移动通信》

来源: 《大话移动通信》

内容资源由项目单位提供