核心网一些基本知识

EPC的基本结构

EPC内部接口及协议栈一览

EPC附着流程

EPC-GUTI

一、APN的作用

APN(Access Point Name)是UE请求的用于连接到外部的PDN网络(其实就是选择PGW的)。

UE可以在PDN Connect Req(一般是Attach过程中) 中带上APN给核心网,如果没有携带,则CN侧MME会通过ESM information request来跟UE查询APN,UE会通过ESM information response来告诉网络侧手机的APN配置消息。

MME还有一种获取APN的方式。当MME完成鉴权加密流程后,可以向HSS发起位置更新请求,而HSS的位置更新应答中可以携带UE签约的APN列表,以及默认APN、QoS等信息。 ???---- 一般不走这个流程,不知道是否由于现在的终端默认都在Attach Req中携带APN的原因,需要用手机测试一下。???

MME根据当前用户的TAI,构建TAIFQDN(Fully Qualified Domain Name 全称域名),查询DNS得到SGW的IP地址;通过APN构建 APN FQDN,查询DNS得到PGW的IP地址。MME根据本地策略,选择最优的SGW与PGW组合,完成SAE gateway(System Architecture Evolution,就是SGW + PGW)的选择过程。

  • TAI = MCC + MNC + TAC
  • APN = APN-NI + APN-OI
    • APN-NI 由运营算定义,比如移动的cmnet, cmwap;电信的 ctnet, ctwap;
    • APN-OI : MNC.MCC.3gppnetwork.org
    • 一个完整的APN例子: cmnet.MNC000.MCC460.3gppnetwork.org

接着,MME就可以向选择的SGW gateway 发送create session request消息,请求建立缺省承载,消息包含APN ,MME侧S11接口控制平面地址及TEID,缺省承载QOS,PGW等信息。

SGW根据MME所提供的PGW的地址,向PGW发送create session request消息请求建立缺省承载,消息包含APN,SGW侧的控制和用户平面地址,及TEID,请求的缺省承载QOS等信息。

PGW向PCRF发送CCR initial消息申请建立EPS缺省承载的管控规则,以及进过确认的EPS承载QOS等参数。

PCRF可以根据本地的策略数据库以及外部的辅助数据库,制定相应的建立EPS缺省承载的策略规则,向PGW返回CCA initial消息,消息中包含建立EPS缺省承载的管控规则,经过确认的EPS 承载QOS等参数。

PGW为UE创建EPS缺省承载,向SGW返回create session response消息,包含分配的PGW侧的控制级用户平面地址,分配给UE的IP地址,以及经过PCI所确认的缺省承载的QOS等参数。

SGW向MME返回create session response消息,包含SGW侧的控制及用户平面地址(TEID),分配给UE的IP地址,以及建立缺省承载QOS,至此,EPS核心网部分建立完毕。

接下来建立S1以及空口侧的承载。

MME向UE发送attach accept消息,包含T3412周期性TA更新计时器,TA列表,分配给用户的身份标识GUTI(Globally Unique Temporary UE Identity,全球唯一临时UE标识),以及PGW分配的UEIP等信息,新分配的GUTI可作为该用户的零时身份标识,用于在后续的NAS信令流程中UE与网络侧的通信。Attach accept消息,被封装到initial contacts set up request消息中,发送给EnodB,并请求EnodB分配无线资源,建立Erab承载,在消息中包含了需要建立的承载列表,建立erab所需要的QOS等参数,以及SGW侧s1-U接口的TEID和ip地址等关键信息。

可以看出,CN需要在给eNodeB下发“上下文建立请求(ATTACH ACCEPT)”之前获取到APN,然后进过APN解析(本质就是DNS解析)得到PGW地址,用于发起PADN连接。需要解析的原因,是CN有多种类型的PGW,需要根据UE的请求(或签约信息)得到归属SAEGW。这里其实还涉及本地、拜访、漫游等情景,不再展开。

PDN多连接

也可以看出,UE在每个APN下都发起PDN 连接的话,就会每个APN都有一个IP地址(建立一个默认承载);如果算上IPV6(双栈),那么每个APN下可以有两个地址,***??两个承载??***

目前大部分的手机都预设了所支持运营算的APN信息,不再需要2G时代的用户手工设置。

二、APN类型

常见的APN类型有:

  1. default
    默认网络连接,当激活时所有数据传输都使用该连接,不能与其他default网络连接同时使用。
    适用场合:绝大部分正常上网时可以使用。

  2. mms
    彩信专用连接,此连接与default类似,用于与载体的多媒体信息服务器对话的应用程序,此连接能与default连接同时使用。
    适用场合:使用彩信服务时,必须有mms类型的接入点,不必选中,应用程序会自动使用此接入点。

  3. supl
    是Secure User Plane Location“安全用户面定位”的简写,此连接与default类似,用于帮助定位设备与载体的安全用户面定位服务器对话的应用程序,此连接能与default连接同时使用。
    适用场合:需要自动切换wap与net接入点的、需要把手机当临时AP的 ---- 对这个描述存疑?
    对SUPL技术感兴趣的朋友,不妨看下以下文章
    SUPL技术(一)http://blog.sina.com.cn/s/blog_537f4a11010008tw.html
    SUPL技术(二)http://blog.sina.com.cn/s/blog_537f4a11010008uf.html
    SUPL技术(三)http://blog.sina.com.cn/s/blog_537f4a11010008ws.html
    SUPL技术(四)http://blog.sina.com.cn/s/blog_537f4a11010008yf.html

  4. dun
    Dial Up Networking拨号网络的简称,此连接与default连接类似,用于执行一个拨号网络网桥,使载体能知道拨号网络流量的应用程序,此连接能与default连接同时使用。
    适用场合:需要使用运营商无线热点的,CMCC、ChinaNet等

  5. hipri
    高优先级网络,与default类似,但路由设置不同。
    只有当进程访问移动DNS服务器,并明确要求使用requestRouteToHost(int, int)才会使用此连接。

三、ue内部地址如何访问外部网络?

简单来说,是通过NAT方式。

一般在PGW出外部网络的路由器上,或者到达路由器前的内部防火墙上,部署NAT服务。该NAT服务维护NAT配对表项(可以是动态的,可以是静态,不过貌似目前用静态的比较少)。
对上行数据,NAT负责将UE的内部地址转换为外部地址(公网地址);对下行数据,NAT负责将外部地址替换为UE的内部地址。

NAT可以采用多种策略,比如每个ue对应一个外部ip,或者多个ue对应一个外部ip(每个ue的一个传输对应这个ip的一个端口)。具体取决于NAT服务本身配置。

再具体的,可看参考资料6参考资料7.

参考资料:
1、https://wenku.baidu.com/view/222a4cc5a300a6c30d229f1e.html EPC初始附着流程
2、https://wenku.baidu.com/view/6fd1882703d8ce2f0066237b.html LTE核心网信令流程
3、https://harde.org/blog/2011/09/default、mms、supl、dun、hipri接入点类型的区别.html APN(default、mms、supl、dun、hipri接入点类型的区别)
4、https://tamingthedroid.com/apn-type APN TYPE
5、https://wenku.baidu.com/view/df23f114a0116c175e0e4897.html?re=view LTE-EPC基本原理
6、http://www.cnblogs.com/derrick/p/4052401.html?utm_source=tuicool&utm_medium=referral#undefined NAT基本原理及应用
7、http://winda.blog.51cto.com/55153/241596/ NAT类型及转换原理深入剖析

猜你喜欢

转载自blog.csdn.net/u013597671/article/details/74199364