PLMN概念和应用设置
PLMN概念和应用设置
1 PLMN概念
PLMN:
PLMN(Public Land Mobile Network,公共陆地移动网络)
该网路必须与公众交换电话网(PSTN)互连,形成整个地区或国家规模的通信网。
PLMN = MCC + MNC:
中国移动的PLMN为46000,46002,46007
中国联通的PLMN为46001,46006
中国电信的PLMN 46003,46005
PLMN的分类 :
对于一个特定的终端来说,通常需要维护几种不同类型的PLMN列表,每个列表中会有多个PLMN。
RPLMN(Registered PLMN 已登记PLMN):
已登记PLMN。是终端在上次关机或脱网前登记上的PLMN。
在3GPP 2003年第TSG TP-21次会议上决定,将该参数从USIM卡上删掉,而将其保存在终端的内存中。
EPLMN(Equivalent PLMN 等效PLMN):
为与终端当前所选择的PLMN处于同等地位的PLMN,其优先级相同。
EHPLMN(EquivalentHome PLMN等效本地PLMN):
为与终端当前所选择的PLMN处于同等地位的本地PLMN。
其实:EHPLMN和EPLMN就好比是中移动的新建的158网络,
而EPLMN就好比是原来的135~139网络。
HPLMN(Home PLMN 归属PLMN):
为终端用户归属的PLMN。也就是说,终端USIM卡上的IMSI号中包含的MCC和MNC与HPLMN上的MCC和MNC是一致的,
对于某一用户来说,其归属的PLMN只有一个。
VPLMN(Visited PLMN 访问PLMN):
为终端用户访问的PLMN。其PLMN和存在SIM卡中的IMSI的MCC,MNC是不完全相同的。当移动终端丢失覆盖后,一个VPLMN将被选择。
UPLMN(User Controlled PLMN 用户控制PLMN):
是储存在USIM卡上的一个与PLMN选择有关的参数。
OPLMN(Operator Controlled PLMN 运营商控制PLMN):
是储存在USIM 卡上的一个与PLMN选择有关的参数。
FPLMN(Forbidden PLMN禁用PLMN):
为被禁止访问的PLMN,通常终端在尝试接入某个PLMN被拒绝以后,会将其加到本列表中。
APLMN(Approve PLMN 可捕获PLMN):
为终端能在其上找到至少一个小区,并能读出其PLMN标识信息的PLMN。
PLMN的选择优先级:
不同类型的PLMN其优先级别不同,终端在进行PLMN选择时将按照以下顺序依次进行:
RPLMN
EPLMN
HPLMN
EHPLMN
UPLMN
OPLMN
其他的PLMN
2 3GPP 23122协议规定的小区重选PLMN选择顺序
3GPP 23122协议规定的小区重选PLMN选择顺序
At switch on or recovery from lack of coverarge,用户首先尝试选择的是RPLMN(registered PLMN),选择失败后按照如下顺序选择:
1) HPLMN(如果EHPLMN列表不存在或为空)或最高优先级的EHPLMN(如果EHPLMN列表存在);
2) 在SIM卡数据中按照UPLMN优先级顺序选择;(User Controlled PLMN Selector with Access Technology)
3) 在SIM卡数据中按照OPLMN优先级顺序选择;(Operator Controlled PLMN Selector with Access Technology)
4) 随机选择RSCP值大于-84dBm(足够强度信号质量)形成的PLMN接入技术组合;
5) 当信号强度不够时,根据接收信号强度递减排序选择其他所有PLMN。
3 手机PLMN相关处理
因为有多个PLMN,USIM卡中存储的的EHPLMN List用支持多个HPLMN lists;
对于2G SIM卡中是不存在EHPLMN List存储区域。
手机支持从UICC卡文件系统中读取EHPLMN List,只有在UICC文件系统支持EHPLMN List的情况下。
而EHPLMN List就是决定手机支持的PLMN;对SIM卡没有EHPLMN List,而只有HPLMN即IMSI一个;会将HPLMN作为终端的PLMN.
当SIM卡的PLMN事46002,而手机注册的基站网络PLMN是46000;将会是一种漫游状态;而实际上不是。
鉴于这个问题,手机方案厂商采取一些措施解决:
高通将EHPLMN List可存储在手机内存上;2G卡将从手机内存中读取EHPLMN List,USIM或从卡中读取;
需要设置NV:
NV65602:Location – /nv/item_files/modem/nas/ehplmn
Default value – 0x03 0x64 0xf0 0x00 0x64 0xf0 0x20 0x64 0xf0 0x70 (46000, 46002, 46007)
NV70189:Location – /nv/item_files/modem/nas/ tdscdma_op_plmn_list
Default value – 0x03 0x64 0xf0 0x00 0x64 0xf0 0x20 0x64 0xf0 0x70 (46000, 46002, 46007)
Modem代码中处理与PLMN相关的函数:
reg_sim.c :reg_sim_read_ehplmn_list
PLMN概念和应用设置的更多相关文章
- JVM概念以及常用设置
DAY 1 Jvm- java虚拟机 类加载子系统 加载class文件到方法区 方法区 存放类信息 常量信息 常量池信息 辅助堆栈的永久区,解决堆栈信息的产生,是先决条件 3. Java堆(重要) ...
- 《Unity預計算即時GI》笔记:一、基本概念与一些设置
说明 这篇文章是对<Unity預計算即時GI>这个系列文章的笔记. 基本概念 在Unity裡,可以用兩種不同的技術來計算全域光照GI或光源反射,就是烘焙全域光照(Baked GI)和預計算 ...
- php会话(session)生命周期概念介绍及设置更改和回收
http://www.169it.com/article/8429580816135935852.html https://my.oschina.net/jiec/blog/227252 sessi ...
- IOSView显示特性设置
一.主要用途 弹出模态ViewController是IOS变成中很有用的一个技术,UIKit提供的一些专门用于模态显示的ViewController,如UIImagePickerController等 ...
- mysql中TIMESTAMP设置默认时间为当前时间
在我们保存数据进入到数据库中时多半会使用像php之类的脚本来获取一个时间保存到mysql中,其实在mysql可以直接使用TIMESTAMP 数据类型来实现默认类型了,下面一起来看看. 很多时候,为 ...
- OpenGL中的常用绘图的命令与效果(经验设置)
1. 剔除多边形表面 在三维空间中,一个多边形虽然有两个面,但我们无法看见背面的那些多边形,而一些多边形虽然是正面的,但被其他多边形所遮挡.如果将无法看见的多边形和可见的多边形同等对待,无疑会降低我们 ...
- mycat基本概念及读写分离一
mycat基本概念及读写分离一 目录(?)[+] 安装与启动 mycat目录介绍 mycat三个最重要配置文件 验证读写分离 安装与启动 linux下可以下载Mycat-server-xxxxx.li ...
- Entity Framework 6 Recipes 2nd Edition(12-7)译 -> 设定默认值
12-7. 设定默认值 问题 在把一个实体保存到数据库之前,设置该实体属性的默认值 解决方案 假设你有一个如Figure 12-9所示的表, 它保存采购订单(purchase order). 主键Pu ...
- 缓冲区溢出利用——捕获eip的傻瓜式指南
[译文] 摘要:为一个简单的有漏洞程序写一个简单的缓冲区溢出EXP,聚焦于遇到的问题和关键性的教训,提供详细而彻底的描述 内容表:1. I pity the fool, who can't smash ...
随机推荐
- linux内核入门(1)——基本简介和编译
获取linux内核源码,自己选择版本(我下载的是linux-3.1.10.tar.gz ,我是直接下载到/usr/src文件夹的) 下载地址传送门 https://www.kernel.org/pub ...
- MySQL--派生表临时结果集中的AutoKey
在某些场景中,需要对派生表生成临时结果集进行materialized,如果该临时结果集中包含索引键,那么查询有可能通过该索引键来进行优化. 如对下面查询: SELECT T2.purpose_code ...
- MySQL Replication--跳过复制错误
在MySQL中,有两种跳过复制错误的方法:1.对于未使用GTID的复制,可以使用sql_slave_skip_counter来跳过错误2.对于使用GTID的复制,可以使用GTID_NEXT模拟空事务来 ...
- debezium mongodb 集成测试
debezium 是一个方便的cdc connector 可以帮助我们解决好多数据实时变更处理.数据分析.微服务的数据通信 从上次跑简单demo到现在,这个工具是有好多的变更,添加了好多方便的功能,支 ...
- nakadi-ui nakadi event broker 的可视化UI工具
nakadi 是一款很不错的基于fafka 开发的event broker ,我们只需要使用http 请求就可以调用kafka 方便的发布订阅功能 环境准备 docker-compose 文件 ver ...
- [转]Java NIO通俗易懂简明教程
Java NIO(New IO)是从Java 1.4版本开始引入的一个新的IO API,可以替代标准的Java IO API.本系列教程将有助于你学习和理解Java NIO. Java NIO提供了与 ...
- oauth2 java 代码示例
@RequestMapping("/oauth") @Controller public class OauthController { String clientId = &qu ...
- thinkphp5 查询的数据是对象时,获取原始数据方法
获取原始数据 如果你定义了获取器的情况下,希望获取数据表中的原始数据,可以使用: $user = User::get(1); // 通过获取器获取字段 echo $user->status; / ...
- Jenkins进阶-邮件通知(9)
公司内部每天大概会发布N多版本,也不能派员工一直去盯着版本发布,所以希望发布完成后通知相关人员,Jenkins最早采用通知机制就是短信和邮件,由于短信成本很高,所以我们一般在发布结束后会采用邮件.现在 ...
- CentOS6.4 添加php-fpm系统服务
简介: php-fpm安装完成后默认不会注册为系统服务,所以需要手工添加系统服务脚本.在/etc/init.d目录下新建php-fpm文件,并更改权限其即可. 1.检测/usr/local/php/v ...