文/张阳,本文来源于微信公众号:网优小谈(wireless_talk)

注册的目的是信息登记,并为后续的主被叫提前进行了相应的寻址。例如,主叫流程中信令所经历的网元路径就是在注册阶段被分配好的,并在该UE注册期间保持不变。

IMS域的的主叫信令流程总览如下:

1、首先UE向P-CSCF发出SIP INVITE请求,包含初始SDP消息,该初始SDP消息包含一个多媒体会话的一个或多个媒体流。

UE需要在INVITE消息了嵌入Accept:application/sdp,application/3gpp-ims+xml,这里主要指明了MIME(MultipurposeInternet Mail Extensions)的业务格式类型(例如XML、HTML或者还是WMV等业务媒体格式),以便被服务器进行正确的解码处理,这一点在计算机应用中很普遍,如果没有注明正确的类型,后果很难评估;

P-Early-Media: supported,支持该消息意味着支持主叫早放,例如,当收到180振铃指示,UE按授权进行相应的媒体播放;

P-Preferred-Identity: sip:+8613454444994@zj.ims.mnc000.mcc460.3gppnetwork.org,这里提供了用户的公共标识,与后续从S-CSCF传来的P-Asserted-Identity保持一致;

P-Preferred-Service:urn:urn-7:3gpp-service.ims.icsi.mmtel, IMS Communication Service Identifier(ICSI),IMS通信服务标识符在UE与网络侧标记着应用。UE通过该标识符分发SIP消息到正确的应用,而网络侧通过该标识选择正确的应用服务器;

a: *;+g.3gpp.icsi-ref="urn%3Aurn-7%3A3gpp-service.ims.icsi.mmtel",媒体类型标签,标识着终端可支持的软件应用,同时也表征着终端的能力(例如该终端是个电话或者是PDA);

在初始SIP请求中包含的SDP消息应严格符合RFC 4566中定义的SDP协议格式,包含不同域的排列顺序、以及域中内容的格式要求。

例如,从以上信令截图就可以解读如下信息:

该SDP协议版本为0,采取IPv6协议进行传输,会话类型是VOIP业务,这是一个单播业务,RTP包的带宽,会话活跃授时是不受限的,媒体类型为音频,传输端口为50010,传输协议RTP/AVP,同时还指明20ms产生一个音频包。音频采用动态编码格式,并且该媒体格式是收发式的。

当P-CSCF收到INVITE消息时候,需要反馈100(Trying)消息,意味着该消息P-CSCF已经收到,后续信令还在继续前送;

2、P-CSCF通过用户注册信息进行下一跳S-CSCF的转接。同时,P-CSCF根据用户注册信息或者存在INVITE消息里的用户优先级信息进行相应的优先级处理,并更新后的INVITE消息转发S-CSCF;

3、S-CSCF需要校验服务类型,如果请求中含有GRUU,需要确保GRUU与公共用户标识属于同一服务类型,同时基于用户的订阅的多媒体类型对用户SDP消息进行鉴权;

4、S-CSCF将INVITE消息转发到被叫的S-CSCF,如果INVITE消息里含有用户优先级信息,应一并转发;

5、S-CSCF接收反馈,其中包含了目的网络媒体流的能力;

6、S-CSCF将Offer Response消息转发到P-CSCF;

7、P-CSCF确保为此次会话提供的资源情况;

8、P-CSCF将Offer Response消息转发到终端;

183会话进程响应用来传递会话进程的信息,183消息里面的消息原因、标头域、消息实体可被用来传递关于会话进程更多的细节。

9、UE确认接收Offer Response消息,并将响应确认消息发送P-CSCF;

10、资源预留阶段,取决于IP接入网的策略,该资源预留既可以由UE发起也可以由接入网络发起,如果由UE发起,则在步骤8完成之后,如果由IP接入网发起,则在步骤7完成之后就可以触发;

11、P-CSCF将响应确认消息转发S-CSCF;

12、S-CSCF转发响应确认消息到被叫端网络;

13-15、被叫向主叫进行响应确认应答(这里真是来来回回的确认,不像电信网最多三次握手确认)

16-18、一旦资源预留完成,主叫UE发送资源预留消息并经P-CSCF中转至被叫端;

19-21、当被叫端资源预留成功后,反馈主叫端资源预留成功

22-24,被叫侧产生振铃,通过一系列网元转发主叫侧;

25、主叫UE通知用户被叫振铃;

26、当被叫接续后,被叫侧产生SIP-200最终响应;

27、S-CSCF将SIP200最终响应沿已建立好的信令通道发送P-CSCF;

28、P-CSCF指示已鉴权的媒体面启动(即后续可以传送话音);

29、P-CSCF将SIP200最终响应回送至主叫端;

30、UE开始进行媒体传送(话音)

31-33、UE对200 OK进行SIP ACK的反馈

200 ok是对INVITE的最终反馈,如果收到最终反馈后,UE还应该发送BYE消息将之前的对话终止,这里BYE结合后续的无线侧信令看,应该是一个主叫用户挂机释放指示。

移动网优大神VoLTE学习笔记(四):主叫信令流程相关推荐

  1. 移动网优大神VoLTE学习笔记(三):注册信令流程

    文/张阳,本文来源于微信公众号:网优小谈(wireless_talk) 对于一个网络工程师而言,解读电信网络的信令是分析定位网络问题的有效手段之一.所谓兵马未动,粮草先行,网络信令就是先于业务流程的& ...

  2. 移动网优大神VoLTE学习笔记(二)

    文/张阳,本文来源于微信公众号:网优小谈(wireless_talk) IMS域核心网的网元.接口众多,如果单纯从IMS子系统的角度来看,各个网元.功能实体以及接口是如下这样的 如果需要全部掌握了解, ...

  3. 移动网优大神VoLTE学习笔记(一)

    文/张阳,本文来源于微信公众号:网优小谈(wireless_talk) 俗话说的好,一入豪门深似海,对于VoLTE这个新技术领域的学习认知也一样,相比传统的电信技术,它糅合了大量计算机互联网的理念,正 ...

  4. cad把图形切成两部分_转载一位CAD大神的学习笔记, 初学CAD的人可以看看

    学员内部找到的一份CAD学习笔记,每张图虽然没有讲详细绘图步骤,但将审图思路.绘图基本步骤和重点难点给列出来了,我觉得对初学者会有帮助,在此分享一下,前面几张图加上了我的注解. 第一部分 1-1 图 ...

  5. IMX6ULL学习笔记(四) —— uboot 启动流程

    IMX6ULL 学习笔记 version : v1.0 「2023.4.27」 author: Y.Z.T. 摘要: 随记, 记录 I.MX6ULL 系列 SOC 的uboot 启动流程 ⭐️ 目录 ...

  6. 小白to大神 vim学习笔记

    Vim文档编辑 一.实验介绍 1.2 实验知识点 Vim重复命令 跳转命令 复制粘贴 二.实验步骤 2.1 vim重复命令 2.1.1 重复执行上次命令 在普通模式下.(小数点)表示重复上一次的命令操 ...

  7. 移动内部疯传的11篇VoLTE学习笔记,看懂了你也是技术大神(一)

    作者:中国移动集团公司 张阳 (章末附作者介绍) 作者微信公众号:网优小谈(wireless_talk) 店铺地址:https://shop66907778.taobao.com/ 参考链接:http ...

  8. MySQL高级学习笔记(四)

    文章目录 MySQL高级学习笔记(四) 1. MySql中常用工具 1.1 mysql 1.1.1 连接选项 1.1.2 执行选项 1.2 mysqladmin 1.3 mysqlbinlog 1.4 ...

  9. 吴恩达《机器学习》学习笔记四——单变量线性回归(梯度下降法)代码

    吴恩达<机器学习>学习笔记四--单变量线性回归(梯度下降法)代码 一.问题介绍 二.解决过程及代码讲解 三.函数解释 1. pandas.read_csv()函数 2. DataFrame ...

  10. mysql新增表字段回滚_MySql学习笔记四

    MySql学习笔记四 5.3.数据类型 数值型 整型 小数 定点数 浮点数 字符型 较短的文本:char, varchar 较长的文本:text, blob(较长的二进制数据) 日期型 原则:所选择类 ...

最新文章

  1. MongoDB 日志切换(Rotate Log Files)实战
  2. docker 搭建私有仓库
  3. java 强制下线_【java】如何强制app端强制下线?
  4. PHP语言 -- 文件上传
  5. c语言位运算符的使用_C语言程序使用位运算符检查给定数字是否为回文
  6. python编程与数学书籍
  7. 天线增益英文名称:antenna gain
  8. [bug]微信小程序使用 scroll-view 和 box-shadow 引起页面抖动
  9. 实现房源15天后自动下架记录
  10. 数学知识整理:布朗运动与伊藤引理 (Ito‘s lemma)
  11. 基于android的酒店客房预订客户端app
  12. 如何用photoshop做24色环_Photoshop绘制超逼真的色轮/色环配色表效果图
  13. vue的多标签页实现
  14. yarn 出现error An unexpected error occurred错误的解决办法
  15. 大学生涯(一)电脑工具篇
  16. 田忌赛马java lms_【044】:田忌赛马
  17. 【深度学习 SS】Selective Search原理剖析
  18. 数据库间表结构对比和数据对比
  19. Intellij IDEA简介
  20. 极盗者-带你领略八项极限挑战(含代码)

热门文章

  1. java文件gzip解压_如何在Java中解压缩GZip文件?
  2. 微信公众号服务器架构,Flask框架实现微信公众号开发(接入微信服务器)
  3. 全志F1C100S的BROM研究
  4. H5 canvas游戏开发教程集合
  5. C语言知识点——函数参数
  6. 胡波外挂做模具3D装配的方法
  7. LNK2005 已经在*.obj中定义 排雷
  8. HttpGet请求数据乱码的原因
  9. autojs颜色渐变效果
  10. 利用计算机本地文档重装系统,本地模式怎么进入PE系统对电脑进行重装