漫漫漫游路(四):GSM的辉煌发展

图片来源@视觉中国

文 | 宁宇

在绝大多数人的印象中,移动通信的演进主要是无线技术的不断发展。

其实这是错觉,至少是不完整的概念。

移动通信从1G演进到5G,每一次的升级都是核心网的大变革,只不过这种升级改造是内部的、封闭的,不像直接与用户有关的终端和无线产业,所以核心网的变革往往被忽略。

但是对于电信运营商来说,网络的变迁和运营的调整,主要缘于核心网。核心网的一次次全面升级,从结构上大幅降低了通信业务的实现成本,不仅让移动通信走进了千家万户,还能让运营商有利可图。

要穷举核心网创造的价值是件非常困难的事情。这个系列里,我仅谈一个移动电话的业务——漫游,借助这个业务的诞生、成长和演进,揭示移动通信网络的演进轨迹。

第一篇回忆了第一代移动通信的人工漫游,第二篇回忆了第一代移动通信的发展历程以及联网漫游工程,第三篇回忆了第一代移动电话漫游的计费结算历史,从第四篇开始回顾GSM的辉煌发展。

技术上GSM彻底解决漫游问题

相对于第一代模拟移动电话,第二代移动电话在很多方面进行了改进和优化。我们用这样一个GSM简单的示意图来说明下:

左半边是手机和基站部分,这是无线的地盘。GSM的改进点至少包括这么几项:

一是手机实现了机卡分离,SIM卡记录着个人信息,可以让用户不换号码就轻松换新机;

二是空中接口从FDMA(频分多址)升级为TDMA(时分多址),同样的资源下可以容纳更多的通信量;

三是对空中通信进行加密处理,由手机和基站进行加密和解密;

四是把BSC(基站控制器)从交换机里分离出来,并且将BSC和MSC之间的接口标准化(A接口),不同厂商设备之间可以互联,提升了网络开放性和可替换程度。

从1G升级到2G,在无线侧发生了这么多变化,无线这边确实是巨变了。但是对于核心网来说变化更大:

因为第一代移动电话是固定电话的延伸和补充,只能以市话端局的方式存在于通信网络之中。而第二代移动电话GSM,从一开始就是按照移动电话独立组网的方式进行设计的,这是划时代的改变。

也就是说,从2G开始,有了移动通信的核心网。

GSM的核心网是这样设计的:

一是从MSC中分离出独立的HLR,用来存放和管理用户的数据;HLR与AUC合设,完成用户的鉴权;而MSC和VLR融合在一起;

二是MSC互联,移动电话之间的通话不必通过PSTN进行接续,可以直接完成;

三是信令链路和话音链路分开,甚至建设专用的信令网,用于话音接续之前的信息交互。

这样设计和建设起来的核心网,非常好地解决了移动电话用户漫游的问题。无论是漫游地是在注册地还是非注册地,鉴权、通信的流程都是一样的,也可以说,在GSM网内大家都是漫游用户。

这种网络拓扑结构的设计可以大大节省网络资源,因此让技术人员非常兴奋:一个北京的移动用户漫游到上海,被一个上海的用户呼叫,以前这个呼叫需要从上海先接到北京,然后再从北京发起到上海的呼叫,一个电话占用了两条长途线路。而在GSM里,上海先查询用户的位置信息,看到这个被叫用户在上海,就在本地直接接续,不再走长途了。

请记住,这个场景叫做"同城特例",很重要。

对于移动电话的设计者来说,第一代模拟移动电话实现了移动通信的基本功能,发展到第二代的GSM时,体系化地解决了漫游问题,在技术上全面满足了移动电话的话音业务所需要的所有功能。

通信技术之外的漫游问题

理想很丰满,现实很骨感。在实际运营中,技术人员心目中完美支撑漫游的GSM网络,对有些问题还真解决不好。

比如,前面提到的同城特例,实际上这个场景只有两个139的GSM用户之间进行通话时才可能发生,其他的组合下,还是要走两个长途。

如果主叫用户是联通的GSM用户,那么联通的网络无法查询139用户的位置信息,只能将呼叫送到被叫用户的归属地,由被叫用户的移动交换机再进行路由判断和接续。

如果主叫用户是固定电话用户,那么首先电话会送到主叫所在的长途局,同样的,长途局也无法识别用户的位置信息,还是要把呼叫转到北京去。

这样看起来,只有很少的情况下才能体现出GSM的先进性,这就尴尬了,所以技术人员就想办法进一步优化。那个时候,移动和电信还是一家,于是制定了"就近入网"的技术方案,也就是:如果固定电话用户呼叫一个移动用户,就把呼叫转接到当地的移动网,由移动网来判断被叫的情况。这样,即便是固定电话呼叫移动用户,也能实现"最佳路由"了。

可是没过多久,中国移动独立上市了,变成和中国电信一样的独立公司,甚至两家之间还有竞争关系。

既然是独立的公司,自然希望自己的利益最大化,尽量走自己的长途路由。一个上海固定电话用户呼叫北京移动的用户,先要走中国电信的长途到北京,再接到移动网内。这样一来,GSM节约路由的优势又没了。

不仅如此,更意想不到的是:GSM路由组织的技术先进性,并没有体现在用户的资费上。

长期以来,电信的资费是"成本定价",是基于通信对资源的消耗来确定计费原则和资费标准。比如打长途电话就是对长途电路资源的消耗,那时候根据距离,资费标准为每分钟0.60、0.80、1.00元不等。

当讨论GSM资费的时候,很多人认为,既然GSM在技术上节约了长途电路资源,就应该把这个利益体现到资费里。所以在发布的第一版GSM资费(电经资【1995】956号)中,同城特例的计费规则被正式发布,如果两个移动用户漫游或处在同一个地方,相互之间的通话不收长途费。

可实际上,这个计费规则并不能完全实现。

其一,主叫话单可以记录被叫的位置信息,但是被叫话单无法得知主叫的位置信息。在被叫话单中,只能看到主叫号码,但是主叫号码能等同于主叫的位置信息么?

如果主叫是固定电话,可以。

如果主叫是移动电话,可能这个用户漫游走了,所以不能确定啊。

其二,如果主叫是固定电话,那么他的计费点是在长途局,即便是把呼叫送到移动网内,最终没有占用长途电路,长途局照样会按照长途电话的标准向用户计费的。

同样的道理,如果主叫是联通的用户,在话单里也看不到被叫的位置信息,只能按收长途费来计算。

对于搞计费的人来说,同城特例是一个危险的BUG:它无法实现,但又是正式发布的规则,如果遇到较真的用户,这错误一抓一个准。在执行侧的一再要求下,后来又针对同城特例情况发布了一版新的规则(电经资【1998】228号),对同城特例的规则进行了修订,这才把这个坑填上。