视频来源:51学通信《VoLTE基础》
一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持!
附上汇总贴:VoLTE基础自学系列 | 汇总_COCOgsta的博客-CSDN博客
IMS公共流程
VoLTE特有流程

广州用户到了北京,给人在成都的长沙用户打VoLTE电话,路由怎么走的?


路由原则:VoLTE用户附着在LTE, 如果被叫是VoLTE用户, 则将呼叫路由至被叫归属IMS域, 由被叫归属IMS进行被叫域选, 根据域选结果进行后续路由。



用户仅在IMS注册, 选IMS。
用户仅在CS注册,选CS。
用户在IMS和CS均未注册, 选IMS。
用户在IMS和CS均注册, 则进一步查询:
1)若MME返回IMS Voice Over PS为支持, 则选IMS。
2)若MME返回IMS Voice Over PS为不支持, 则选CS。
3)无SGSN注册信息, 也无MME注册信息, 选CS。

通常都是在AS上完成。
主叫号码规整,即把国际格式的主叫号码反向规整为国内号码格式,甚至更为简单的本地号码格式,以使被叫终端的来电显示更为简洁易懂。
被叫号码规整,即把它们转换为E.164国际格式(比如+861088888888,+8613912345678),以方便地执行业务逻辑(比如用于比对MTAS黑白名单列表中的号码, 或ENUM服务器中的国际格式号码)。




(备注, 该Invite消息由实际呼叫的pcap导出, 出于隐私保护需要, 替换了运营商信息, 转换成txt文档供下载。130多行。)

理解Route和Record-Route消息头(会话流程)


在当期70多步的Volte打VoLTE信令流程图中, 还有很多步骤由于很多网元是合设的,所以并未体现,这里总结一下:

信令流程图中, 主叫SBC收到主叫Invite会触发专载建立, 在收到被叫侧返回的带SDP的183后会触发专载更新(Rx接口的AAR/AAA、Gx接口的RAR/RAA以及GTP的Update Bearer Request/Response),那这个专载更新是必选的吗?
答:直播时的答案是如果被叫183和主叫Invite里所选择的编码相同,可以不更新专载。这里更新一下,这个更新专载流程是必选的。因为即使主被叫所选择编码相同,还需要更新关于该媒体流的地址和端口信息, 即TFT。因为Invite消息的SDP里还不知道被叫侧的媒体流IP和端口号。

主叫Invite消息中的Support头域通常携带Precondition来表示支持该机制。但Require头域通常不带该字段。为什么?
答:Support头域是声明自己的支持能力, 用于和被叫侧协商。但Require头域则是强制要求, 如果对端不支持的话, 那呼叫就会失败。Require头域通常不携带Precondition, 通常是为了支持VoLTE和固网IMS的互通, 因为固网IMS并不支持Precondition。所以实际上就是把Precondition的启用判决交给了被叫来决定。

某运营商要求终端在建立VoLTE语音呼叫过程中, AMR-WB默认编码模式为23.85kpbs, 那这个23.85kbps在SDP协商中怎么体现的?
答:AMR-WB默认有9种编码速率, 在SDP中a line中通过mode-set来表示。取值为8代表23.85kbps。主叫Invite的SDP中如果不带mode-set,则代表支持所有的AMR-WB编码。


“Single-Registration-Indication”是S6a接口Diameter消息中的一个bit位, 如果设置了该字段, 指示HSS应该向SGSN发送Cancel Location, 将SGSN的地址信息清除。
如果该UE从23G回到4G发起附着或者TAU, 会在附着请求/TAU请求中携带Additional GUTI(代表自己是从23G来的) 。看到这个参数, MME向HSS发ULR, 并将“Single-Registration-Indication”置1, HSS将把SGSN的信息清除。
反过来, UE从4G到23G, SGSN不会触发HLR/HSS向MME发起Cancel Location, 所以此时UE是双注册到23G和4G。

本地VoLTE打本地VoLTE
本地VoLTE打外地VoLTE
外地VoLTE漫游到本地, 打本地VoLTE
外地VoLTE漫游到本地, 打外地VoLTE
本地VoLTE漫游到外地, 打本地VoLTE
本地VoLTE漫游到外地, 打外地VoLTE
