硬核科普!携号转网的技术原理分析!
11月11日,工信部发布《携号转网服务管理规定》,标志着国内三大运营商的“携号转网”业务正式进入试运行阶段。
根据规划,从12月1日开始,“携号转网”业务将在全国范围内正式推出。
作者 | 小枣君
本文经授权转载自鲜枣课堂(ID:xzclasscom)
这几天,关于“携号转网”的新闻反复刷屏,相信大家都看到了。
作者今天也来凑个热闹,和大家聊聊“携号转网”。
不过,我要说的不是“携号转网”的业务办理,而是更深层次的内容——“携号转网”的技术原理。
我想通过这篇文章,帮助大家了解这项特殊业务背后的具体实现方式。更重要的是,趁机介绍一下关于移动通信用户号码和呼叫流程方面的知识。
好啦,废话不多说,我们赶紧开始!
首先,我先解释一下,到底什么是“携号转网”。
“携号转网”,顾名思义,就是带着号码换网络。
举个例子:你现在是139开头的中国移动号码,办理“携号转网”之后,号码保持不变,但运营商归属关系变了——变成了电信或联通的了。你使用的网络和套餐,也变成电信或联通的。这种电信业务,就是“携号转网”。
行业术语里,“携号转网”的真正名字应该叫做“号码携带”,或者“号码可携带”。
这个业务从表面上看并不复杂,就是换个运营商,然后号码带着走。
但是实际上,对于移动通信系统来说,实现起来并不容易。
我们的手机号,实际上有两个,分别是IMSI和MDN。
IMSI的全名是International Mobile Subscriber Identity,国际移动用户识别码。它是一种“永久用户标识”,每一个手机SIM卡,对应一个IMSI号码。
IMSI号码由三部分组成,分别是:
MCC (Mobile Country Code) 移动国家码
MNC (Mobile Network Code) 移动网络码
MSIN (Mobile Subscriber Identity) 移动用户识别码
MCC是3位数字(中国是460),MNC是2-3位数字,MSIN是10-11位数字。加起来的IMSI,一般不超过15位,通常就是15位(例如我们国家)。
大家在手机拨号界面,输入 *#*#4636#*#* ,就可以看到自己的IMSI号码。
大家注意,除了IMSI号码之外,还有一个IMEI号码,两者不要搞混了。
IMEI是International Mobile Equipment Identity,国际移动设备识别码(大约15-17位数字)。也就是常说的手机序列号(手机串号),是每个手机硬件的“身份证”(2个卡槽就有2个IMEI号码)。
那我们平时使用的139、153、189开头的号码,又是什么呢?
这些号码,真正的学名叫MDN,Mobile Directory Number(移动用户号码簿号码)。
MDN由国家码(CC)、移动接入号(MAC)、HLR识别码、移动用户号共同组成。
介绍了这个码那个码,大家没有晕掉吧?
没晕的话,我们继续!
说到这里,大家其实应该也明白了。所谓“号码携带”,不变的是MDN号码,变化的是IMSI号码。而IMSI,才是你的“真正”号码。
说完了号码,我们再来说说网络侧这边的处理。
目前我们使用的移动通信业务,其实主要就是通话、短信、上网。
大家都知道,上网是单个用户的事情。某用户手机发起数据业务请求,获得IP等资源,然后连入运营商网络,访问互联网。
只要你的IMSI合法,业务正常开通,没有欠费,就可以上网。
但是通话和短信就不一样了,这是两个用户之间的业务,存在“主叫”和“被叫”。
主叫用户没什么大问题,反正自己的号码就是一个编号而已。但是被叫那边,麻烦就来了——号码就像门牌,别人通过门牌找你,你搬家把门牌都带走了,这咋整?
我们先看看,以前没有号码携带业务的时候,一次正常通话的过程是怎样的:
(注:为了便于理解,呼叫流程描述有所简略。)
假设主叫用户A是中国移动139开头的号码。
当他拨打被叫号码的时候,它所在的本地局核心网设备(MSC,移动交换中心),会根据设计好的规则,对被叫号码进行“号码分析”。
号码分析是电话接续的重要依据,不同的分析结果,意味着不同的处理流程:
按照之前的设计,如果拨打的是138开头的号码,那MSC就会分析为中国移动的号码,按运营商内部呼叫的流程处理。(具体来说,MSC会去中国移动自己的HLR,问被叫的位置,然后一路找过去。HLR是归属位置寄存器,存储着中国移动用户的数据和信息。)
如果被叫是“自家人”
如果拨打的是185开头的联通号码,本地局设备则会分析为“它网号码”,会路由到运营商之间的关口局,然后送到联通那边,查找被叫,一路最终完成电话接续。
如果被叫是“别人家的”
现在,要搞号码携带了,麻烦来了。
还是举例,139开头的A,拨打138开头的B。B是办理了号码携带的用户,号码虽然是138开头,但不能按中国移动内部呼叫的流程处理,否则就会送错了目的地。
中国移动的MSC,必须把B号码当作特例,单独处理。
如果只有一个特例,那还好说,问题是,这个业务面向全国用户开放,会有成千上万个特例。这样的话,号码分析就会变得非常庞大,对系统容量造成负担。
所以,在我们国家现在的网络里,采取的方案是这样的:
如果某个被叫号码办理了号码携带业务(例如,从移动跳到了联通)。
那么,移动的HLR会对已携出的号码加一个特殊前缀数字,返回给主叫MSC,告诉它这个号码已经不是我们的了。
主叫这边的中国移动MSC会对前缀号码进行特殊处理,直接按其它运营商号码处理。
如果是这个号码是联通跳到移动的:
运营商会先新增一个NP-HLR,也就是号码携带HLR,把所有携入号码都放在这个HLR里。主叫MSC会针对“所有其它运营商号段的被叫号码”,都先查一遍NP-HLR。
如果是携入号码,则按自己的号码处理,去查自家的HLR。
如果是非携入号码(也就是别人正常的号码),则再去查一遍别人家的HLR。
总而言之,相当于查两遍HLR。
上面的解决方案,虽然流程复杂了一些,但是速度很快,用户感知不受任何影响。
这就是我们国家现在使用的号码携带实施方案。大家看懂了没?
哈哈,能坚持看下来的,都是猛士,小枣君免费推荐核心网工程师offer!
最后再做个总结。
携号转网业务,对于普通用户来说,毫无疑问是件好事,毕竟增加了议价权,也增加了自主选择权。
但是,站在通信工程师的角度来说,这个业务增加了一些小困难和小麻烦——我们在处理故障时,无法再像之前一样,通过号段来迅速判断投诉者的用户属性。而不同的用户属性,意味着完全不同的故障处理流程和思路。
也就是说,号码携带业务的普及,将会“略微”增加通信工程师处理故障的难度,以及故障恢复的时间。
好啦,以上主要内容就是对携号转网业务的技术分析,欢迎大家在留言区拍砖讨论。
【End】
Python学习方法,Python入门须知!(内附python教程分享)
https://edu.csdn.net/topic/python115?utm_source=csdn_bw
热 文 推 荐
☞CSDN创始人蒋涛:开发者是泛终端生态的第一推动力
☞中国工程院院士评选结果公布,阿里王坚当选
☞程序员需要了解的硬核知识之操作系统和应用
☞小米 9 年,雷军开启 AIoT 与 5G 超级互联网时代!
☞程序员正在消失?
☞5G套餐到底该不该换?看完你就明白啦!
☞他的公司1年令比特币暴跌数次,上榜福布斯捐10亿美元的跨界传奇
点击阅读原文,参加中国开发者现状调查!
你点的每个“在看”,我都认真当成了喜欢
硬核科普!携号转网的技术原理分析!相关推荐
- python n个list如何组成矩阵_硬核科普系列:用python帮你建立自己的投资组合
听说金融量化很火,当一众金融大佬还在敲打excel的时候,编程技能树早就点满了的程序员是不是开始疯狂抖腿,跃跃欲试.所以小码想开一个硬核科普系列,和大家一起探索如何用python做投资分析. 今天的话 ...
- 【硬核科普】PCB工艺系列—第07期—外层图形电镀
[硬核科普]PCB工艺系列-第07期-外层图形电镀 这里是PCB印刷电路板制造工艺系列视频,会分多期视频,带您全面了解PCB印刷电路板的整个制造过程.并且会针对每一个单一环节做深度的讲解,其中包括钻孔 ...
- 【硬核科普】PCB工艺系列—第01期—基板覆铜板
[硬核科普]PCB工艺系列-第01期-基板覆铜板. 这里是PCB印刷电路板制造工艺系列节目,我会分多期视频,带您全面了解PCB印刷电路板的整个制造过程.我会针对每一个单一环节做深度的讲解,其中包括钻孔 ...
- 赵英时遥感原理分析和应用课件_细数5种停车场防砸车技术原理分析与应用
原标题:细数5种停车场防砸车技术原理分析与应用 一.压力波防砸装置 也叫遇阻防砸,主要是安装遇阻返回装置,当道闸杆下落过程中接触到车辆或者行人(接触力度是可以调节的),装置道闸杆底下的橡胶条受到阻力, ...
- 射频识别技术原理分析
射频识别技术原理分析 射频识别(RFID)技术相对于传统的磁卡及IC卡技术具有非接触.阅读速度快.无磨损等特点,在最近几年里得到快速发展.为加强中国工程师对该技术的理解,本文详细介绍了RFID技术的工 ...
- 硬核科普!关于5G辐射,你了解多少!
手机辐射一直是众人讨论的话题,而搜狐公司董事局主席兼首席执行官张朝阳近日在5G峰会上的一则言论"5G电磁波对人体的危害很大",使5G辐射问题又成为新的热点. 物联卡中心(www.i ...
- 下拉 html 实现原理,百度搜索下拉框实现技术原理分析
问:百度搜索下拉框关键词是怎么来的,下拉框实现技术原理分析一下. 来自百度站长平台的站长回答: 对于词的研究,想必每个seoer都知道,而除了比较热门的百度相关搜索词之外,百度下拉框关键词应该也是不少 ...
- 64位和32位有什么区别?到底哪个更快?——硬核科普
原文链接:联想商用服务----64位和32位有什么区别?到底哪个更快?--硬核科普 32位和64位到底指什么? 下载 Windows 操作系统,会区分 X 64 和 X 86 版本(一般 X 86 是 ...
- 百度js 检测输入法_不明恶意攻击致lt;搜狗搜索gt;lt;搜索结果gt;跳转lt;百度搜索gt;技术原理分析...
不明恶意攻击致<搜狗搜索><搜索结果>跳转<百度搜索>技术原理分析 原创 2017-09-29 玄魂工作室 EE 玄魂工作室 不明恶意攻击致<搜狗搜索> ...
最新文章
- 自动化运维工具Saltstack(一)
- 机器学习之 weka学习(三)
- 企业级应用框架(五)IOC容器在框架中的应用
- [2017-08-31]如何使用ruby同步markdown博文到博客园
- memcpy与memmove的区别
- java的输入输出流
- 天才小毒妃 第943章 小东西很努力
- Reducer类——hadoop
- 【机器学习】机器学习公共数据集整理
- java抽象类的继承_Java,如何从抽象类继承方法
- 使用Trinamic TMC2300步进驱动器做一个迪斯科灯项目
- DesignWare 加密文件 综合成GTECH 以便FPGA使用
- 机器人的雅克比矩阵、海森矩阵、可操作度雅克比矩阵
- 数组,下标越界及小结
- 清华脑机接口需要学计算机专业的吗,清华大学
- Notification 完整版整合
- 数学算术中无穷小量的不完备性
- python 类中的变量、方法
- 浅谈vue项目上线问题
- python常见加密方式总结踩坑小贴士
热门文章
- TextBlock 格式化内容
- 02 - 用wxStreamToTextRedirector和wxTextCtrl输出std::cout
- AspNetPager 万能分页存储过程(转来的)
- spark rdd读取文件
- Pytorch transforms.Resize()的简单用法
- 弹出菜单快捷键的使用方法
- SQL实战之找出所有员工当前薪水salary情况
- Tensorflow Estimator之DNNClassifier
- Dart基础-变量与类型
- V 神呼吁宽大处理,以太坊开发者 Virgil Griffith 被判入狱 63 个月