参考文档:
https://blog.csdn.net/qq_38240926/article/details/105177163
http://blog.sina.com.cn/s/blog_577843ee0101ayug.html
https://wenku.baidu.com/view/c18f039aaa00b52acfc7ca9b.html
https://wenku.baidu.com/view/e2ef7760f61fb7360b4c65b8.html
http://www.wodefanwen.com/lhd_3l2t90iymt23x6i11q6f_6.html
https://blog.csdn.net/qq_43631743/article/details/106421399
https://wenku.baidu.com/view/94a758434b35eefdc8d333d8.html
https://wenku.baidu.com/view/698328bbb84ae45c3a358c6c.html
https://wenku.baidu.com/view/c18f039aaa00b52acfc7ca9b.html
目录:
- 简介
- 开机联合附着流程
- 位置更新流程
- 通话流程
- FR
一 简介
这边主要还是从手机端讲解原理
CSFB 全称: Circuit Switched Fallback (CSFB)
目前国内基本都是IMS Call, 部分三四线城市会有CSFB 过程。
场景:通话时候,LTE 网络切换到 UMTS, 或者GSM网络上进行。
在海外很多国家这种方案还是比较常见。
FR(Fast Return)
挂断电话后,重新注册到LTE网络的流程
MME(Mobility Management Entity)
它负责空闲模式的UE(User Equipment)的定位,传呼过程,包括中继,简单的说MME是负责信令处理部分
MSC:MSC(Mobile Switching Center,移动交换中心 )
是通信系统的核心网元之一,它负责控制由手机发起或终止的用户呼叫。
SGS: 在LTE MME 和 UMTS MSC 之间,主要作用
1、系统间联合附着、位置更新操作
2、LTE用户短信
3、CSFB用户被叫寻呼
该方案主要涉及到
开机联合附着流程| 位置更新流程| 通话流程| FR
二 开机联合附着流程
2.1 流程图
2.2 流程讲解:
- UE发起注册请求,类型Combined EPS/IMSI attach,并告知网络UE配置为使用CSFB或者SGs SMS(手机侧)
- LTE核心网侧执行正常Attach流程
- MME向MSC发送位置区更新请求消息
- 2G/3G核心网执行正常位置区更新流程
- VLR向MME返回位置区更新接受消息
- MME发送Attach Accept给UE,类型为Combined EPS/IMSI attach,且包含信元LAI和VLR TMSI,意味着联合附着成功(手机侧)
- 用户|网络 支持 3GPP CSFB指示
手机端主要关注黑色的部分
2.3 日志:
手机上报给网络,信令里要申明支持CSFB
ACC_CSFB = 1 (0x1)
里面还有个重要参数
voice_domain_pref //语音域的特性
length = 1 (0x1)
UE_usage_setting = 1 (0x1) (Data centric) //数据优先
voice_domain_pref_for_EUTRAN = 3 (0x3) (IMS PS Voice preferred, CS Voice as secondary) //语音优先volte,CSFB次之
三 位置更新流程
流程图:
流程讲解:
- 当UE在LTE网络移动TA改变,或从2/3G返回LTE,或周期性位置更新定时器到时,会发起TAU给MME,类型为combined TA/LA Update Request (with IMSI)
- LTE核心网侧执行正常TAU流程
- MME判断LA改变、或联合位置更新类型为combined TA/LA updating with IMSI,发起到MSC的联合位置更新请求,改变在原来MSC记录的LA;当MSC也改变时,位置更新导致用户在新的MSC登记和注册,否者忽略3.4.5.流程
- 2G/3G核心网执行正常位置区更新流程
- VLR向MME返回位置区更新接收消息
- MME发送TAU Accept给UE,UE存储TAU Accept消息中下发的LA和MSC分配的TMSI
- 用户|网络 支持 3GPP CSFB指示
网络如何知道终端支持CSFB?
MME通过Attach Request 消息,知道终端是否支持CSFB
1.终端如何知道网络支持CSFB?
终端通过Attach Accept消息,知道网络是否支持CSFB
联合附着就是终端用户先附着到一个域,再通过这个域附着到另外一个域
其一,每个域各有所长,比如CS域和IMS域擅长语音业务,PS域擅长数据业务;当终端用户需要进行全面的业务时,光靠一个域解决不了问题,只能借助多个域的分工合作,这时终端必然需要附着到多个域。
四 CSFB 通话建立流程
参考文档:
https://www.jianshu.com/p/7c845a162c02
4.1 流程图
4.2 说明
step1 UE向MME发起CSFB MO请求(若终端处于空闲态需先建立RRC连接)
step2 eNodeB指示UE重定向到2/3G网络
R8重定向:RRC Release消息中的重定向字段包含UMTS频点信息
step3 UE搜索指定的频点,同步UMTS小区
step4/5/6 UE读取UMTS系统消息(注:若R9重定向无此步骤)
step7 RRC 连接
step8 MO Call 流程
- 若UE开机联合位置更新时TA对应LA同回落LA不同,需执行LAU流程(若回落前后LA相同,无需进行位置区更新)
- UE在2/3G网络发起MO呼叫请求,且UE会向网络上报CSFB MO标签
4.3 日志:
1:step1 UE 发起 CSFB 呼叫请教
2: step2 网络指示重定向频点
step3: UE搜索指定的频点,同步UMTS小区
频点同步也可以参考
https://blog.csdn.net/zhangchangfeng1/article/details/100011608
https://www.jinchutou.com/p-134403715.html
//redirection to WCDMA
lte_rrc_crp.c 1437 X CRP: LTE -> UTRA_FDD redirection
//camped on WCDMA cell
srchacq.c 5697 F ACQ SUCCEED! FREQ:10736,PSC:298
rrccsp.c 13332 H Camped on suitable cellID 4588
step4/5/6 读取SIB小区
step7 RRC连接
UL_CCCH RRC Connection RequestRadio Bearer ID: 0, Length: 171
{
Channel Type = UL_CCCH, Radio Bearer ID = 0, Uarfcn = 10736, Psc = 298, Message Length = 17
establishmentCause originatingConversationalCall
cSFBIndication true
}
DL_CCCH RRC Connection SetupRadio Bearer ID: 0, Length: 1491 UL_DCCH RRC Connection Setup CompleteRadio Bearer ID: 2, Length: 2421
GMM_ROUTING_AREA_UPDATE_REQUESTDirection: MS To Network Length: 721
ACC_CSFB = 1 (0x1)
step8 正常的呼叫流程
5 发起 呼叫
- 主叫交换机向被叫归属HLR查询路由
- 呼叫路由到联合位置更新的MSC
- MSC通过SGs接口在LTE网络寻呼UE
- UE在LTE网络相应寻呼发起CSFB请求
- MME要求eNodeB对UE进行CSFB回落
- eNodeB下发重定向指引UE回落2G网络
- UE与目标2G小区同步,读取广播,其中可缓读广播消息l3,缩短起呼时延
- UE相应寻呼(并上报CSFB MT标签),建立被叫通路
五 FR
UMTS/GSM 回到 LTE 流程
方案 FR
三种方式:
正常返回;
通话结束后,终端先要从2G/3G系统的联机状态转换为2G/3G系统的待机状态。然后终端在2G/3G系统的待机状态进行小区选择,切换到4G系统的待机状态,最后终端从4G系统的待机状态转换为4G系统的联机状态,完成返回。在这三大步骤中,小区选择可能需要进行全频段扫描,耗时非常长,通常在几十秒的数量级。正常返回只是终端的行为,与系统侧无关,因此不需要在系统侧进行配置,这是正常返回最大的优点。
快速返回(Fast Return,FR,正常为1s内)
通话结束后,快速返回让终端从2G/3G系统的联机状态直接切换到4G系统的待机状态,比正常返回少一个耗时最长的步骤,大幅压缩了返回时间,返回时间秒级。为了实现快速返回,2G/3G系统的基站在通话结束的释放消息中携带4G邻区的信息,这样终端就可以找到4G的邻区。
自主FR:
快速返回需要升级2G/3G基站,而且配置4G邻区信息的工作非常繁重,实施起来并不简单。为此,LTE引入了自主快速返回技术,简称自主FR,就是由LTE终端自行保存4G邻区的信息,这样在重定向时,就不需要2G/3G基站提供邻区信息了,大大减轻了2G/3G基站的工作负荷。自主FR的处理过程与快速返回的处理是一致的,需要经过2G/3G系统的释放过程、自主FR的过程以及4G系统中的随机接入、RRC连接建立和TAU位置更新过程。为了自主快速返回,LTE终端必须在CSFB前保存4G邻区的信息
这里重点讲解一下FR,分为4步
1: 网络下发 RRC Connection ReleaseRadio Bearer(携带redirectionInfo LTE频点)
这个也是最重要的,
OTA LOG DL_DCCH RRC Connection ReleaseRadio Bearer ID: 1, Length
rrcConnectionRelease-v860ext
{
redirectionInfo interRATInfo : eutra :
{
eutra-TargetFreqInfoList
{
{
dlEUTRACarrierFreq 276
}
}
}
}
OTA LOG UL_DCCH RRC Connection Release CompleteRadio Bearer ID: 1, Length: 61
OTA LOG UL_DCCH RRC Connection Release CompleteRadio Bearer ID: 1, Length: 61
2: LTE 频点同步
下面流程和LTE 小区驻网((S准则,R准则))流程差不多,网上有很多例子,可以参考一下
3: 读取 SIB,MIB消息,小区Camp
08:01:35.248047 [0xB0C1] LTE RRC MIB Message Log Packet
Version = 2
Physical cell ID = 275
FREQ = 276
SFN = 228
Number of TX Antennas = 2
DL Bandwidth = 15 MHz (75)
08:01:35.240104 [0xB0C0] BCCH_DL_SCH / SystemInformationBlockType1
Radio Bearer ID = 0, Physical Cell ID = 275// 上面网络指定重定向的频点
Freq = 276 // 上面网络指定重定向的频点
value BCCH-DL-SCH-Message ::=
{
message c1 : systemInformationBlockType1 :
{
cellAccessRelatedInfo
{
plmn-IdentityList
{
{
plmn-Identity
{
mcc
{
4,
2,
0
},
mnc
{
1,
0
}
},
cellReservedForOperatorUse notReserved
}
},
trackingAreaCode '01000001 00011000'B,
cellIdentity '01001100 01001101 00100001 0010'B,
cellBarred notBarred,
intraFreqReselection allowed,
csg-Indication FALSE
},
cellSelectionInfo
{
q-RxLevMin -65 //小区S准则
},
cellSelectionInfo-v920
{
q-QualMin-r9 -20
}
08:01:35.502345 [0xB0C0] BCCH_DL_SCH / SystemInformation
Pkt Version = 22
RRC Release Number.Major.minor = 12.7.6
Radio Bearer ID = 0, Physical Cell ID = 1
Freq = 276
SysFrameNum = 256, SubFrameNum = 7
PDU Number = BCCH_DL_SCH Message, Msg Length = 32
SIB Mask in SI = 0x04
4: 正常的TAU ,RRC 连接过程