LTE语音业务-VOLTE

本文简单记录下volte相关知识与其注册流程

一.volte 处理流程

1.终端用户与网络都需要了解对方的volte能力,这个我们以前lte 附着时已经介绍过来,相关信息在attach req中。
2.建立IMS承载,在建立lte默认承载之后,需要建立IMS承载,apn为ims
3.向IMS域发起注册。
4.注册成功后,进行相关业务流程了。

这里贴出相关log介绍
建立默认承载(cmnet)
在这里插入图片描述
之后建立ims 专用承载

在这里插入图片描述
在这里插入图片描述

ims专用承载建立成功之后,既可以向ims域发起ims注册了。

二.ims相关知识

ims域结构可以分为三层,应用,控制和接入层。这里主要说下控制层的网元,对后面学习sip协议有点作用。
ims控制层有三大网元组成,分别为P-CSCF,I-CSCF,S-CSCF,下面为各自作用。

名称 作用
P-CSCF volte与控制层接口
I-CSCF 负责分配信令到不同的S-CSCF中
S-CSCF 处理不同的信令业务

关于ims注册,使用的sip协议,也必须知道sip网络服务器,所谓sip协议有下面三个特点,类似于http。
1.消息组成为文本
2.|先有请求消息,再有响应。
3.C/S架构

这里有引出了sip 网络服务器(sip终端为 UA)

服务器名称 功能
代理服务器 为主叫与被叫UA转发信令
定位服务器 取得UA信息
重定向服务器 定向到代理服务器
注册服务器 UA在sip网络中的注册

这里UA 与网络服务器,网络服务器之间均使用sip协议进行通信

三. sip协议消息

VOLTE业务中常见的请求消息

基本请求 名称
INVITE 启呼
REGISTER 注册
OPTIONS 选项
IACK 确认
BYE 挂机
CANCEL 取消

响应消息

响应 功能
1XX 临时性响应
2XX 成功响应
3XX 重定向响应
4XX 客户端失败响应
5XX 服务器失败响应
6XX 全局失败响应

volte中常见的sip响应列表

响应编号 名称 说明
100 Trying 收到请求,处理中
180 Ringing 被叫振铃
183 Session Progress 呼叫进行中
200 OK 成功
401 Unauthorized 未授权,第一次注册ims域时遇到
404 Not Found 没找到
486 Busy Here 被叫正忙

sip消息结构=起始行+消息头+消息体
主要消息体不一定存在。

下面分别接受请求消息与相应消息已注册sip网络消息为例
请求消息

07:42:26.436	[0x156E]	IMS SIP Message
Version = 1
Version 1 {
   Direction = UE_TO_NETWORK
   SDP Presence = 0
   SIP Call ID Length = 62
   SIP Message Length = 1606
   SIP Message Logged Bytes = 1607
   Message ID = IMS_SIP_REGISTER
   Response Code = INFORMAL_RESPONSE (0)
   CM Call ID = 255
   SIP Call ID = 2401194090_2268498504@2409:8804:8015:3c90:609e:ae2c:9c42:1785
   Sip Message = REGISTER sip:ims.mnc002.mcc460.3gppnetwork.org SIP/2.0   //起始行
//消息头
f: <sip:[email protected]>;tag=2401194103  //呼叫发起方的IMPI(volte 用户唯一公开标识)
t: <sip:[email protected]>  //呼叫被叫方的IMPI(volte 用户唯一公开标识)
CSeq: 253710442 REGISTER   //消息序列号
//回话过程唯一标识 i
i: 2401194090_2268498504@2409:8804:8015:3c90:609e:ae2c:9c42:1785
//sip消息转发者的ip地址,传输消息的传输协议与端口 v
v: SIP/2.0/TCP [2409:8804:8015:3c90:609e:ae2c:9c42:1785]:5060;branch=z9hG4bK1716348436 
Max-Forwards: 70
Authorization: Digest  //鉴权响应
uri="sip:ims.mnc002.mcc460.3gppnetwork.org",username="[email protected]",response="",realm="ims.mnc002.mcc460.3gppnetwork.org",nonce=""
Expires: 600000
Require: sec-agree
Proxy-Require: sec-agree
k: path,sec-agree
Allow: INVITE,BYE,CANCEL,ACK,NOTIFY,UPDATE,PRACK,INFO,MESSAGE,OPTIONS
Security-Client: ipsec-3gpp; alg=hmac-md5-96; ealg=des-ede3-cbc; spi-c=3635426414; spi-s=2074953050; port-c=8003; port-s=8902,ipsec-3gpp; alg=hmac-md5-96; ealg=aes-cbc; spi-c=3635426414; spi-s=2074953050; port-c=8003; port-s=8902,ipsec-3gpp; alg=hmac-md5-96; ealg=null; spi-c=3635426414; spi-s=2074953050; port-c=8003; port-s=8902,ipsec-3gpp; alg=hmac-sha-1-96; ealg=des-ede3-cbc; spi-c=3635426414; spi-s=2074953050; port-c=8003; port-s=8902,ipsec-3gpp; alg=hmac-sha-1-96; ealg=aes-cbc; spi-c=3635426414; spi-s=2074953050; port-c=8003; port-s=8902,ipsec-3gpp; alg=hmac-sha-1-96; ealg=null; spi-c=3635426414; spi-s=2074953050; port-c=8003; port-s=8902
//回复消息的地址 m
m: <sip:[2409:8804:8015:3c90:609e:ae2c:9c42:1785]:5060>;+sip.instance="<urn:gsma:imei:86443001-000109-0>";+g.3gpp.icsi-ref="urn%3Aurn-7%3A3gpp-service.ims.icsi.mmtel";+g.3gpp.smsip;+g.3gpp.accesstype="cellular2"
l: 0   //消息体长度


}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36

响应消息

07:42:26.611	[0x156E]	IMS SIP Message
Version = 1
Version 1 {
   Direction = NETWORK_TO_UE
   SDP Presence = 0
   SIP Call ID Length = 62
   SIP Message Length = 660
   SIP Message Logged Bytes = 661
   Message ID = IMS_SIP_REGISTER
   Response Code = UNAUTHORIZED (401)
   CM Call ID = 255
   SIP Call ID = 2401194090_2268498504@2409:8804:8015:3c90:609e:ae2c:9c42:1785
   Sip Message = SIP/2.0 401 Unauthorized   //起始行
//消息头
Via: SIP/2.0/TCP [2409:8804:8015:3C90:609E:AE2C:9C42:1785]:5060;branch=z9hG4bK1716348436
Call-ID: 2401194090_2268498504@2409:8804:8015:3c90:609e:ae2c:9c42:1785
From: <sip:[email protected]>;tag=2401194103
To: <sip:[email protected]>;tag=wwv00evl
CSeq: 253710442 REGISTER
//鉴权参数
WWW-Authenticate: Digest realm="ims.mnc002.mcc460.3gppnetwork.org",nonce="GNESBD1C3pNj5kalYNrOp1pGUAUOxgAA43j2J3G4eKw=",algorithm=AKAv1-MD5
Security-Server: ipsec-3gpp;alg=hmac-md5-96;prot=esp;mod=trans;ealg=null;spi-c=3141603723;spi-s=3292598667;port-c=9950;port-s=9900
Content-Length: 0


}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26

消息体上面消息没有携带,不做介绍了,可根据Content-Length确认。

本文最后介绍下sip注册消息流程
1.发起注册请求
在这里插入图片描述
2.响应
首次注册均返回401,并携带WWW-Authenticate信息给UA,UA收到重新发起注册
在这里插入图片描述

3.重新注册,Authorization中增加了上条返回的鉴权信息有关内容
在这里插入图片描述
4.注册成功,获取到IMPU
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/ZhongGuoRenMei/article/details/109056218