携带鉴权的SIP呼叫流程图

消息流程图

携带鉴权SIP呼叫流程描述

1)  主叫1000发起一路呼叫,终端向服务器发送INVITE请求消息。

2)  代理服务器向终端1000回407响应,表示代理服务器要求终端带上鉴权信息。

3)  终端1000向服务器发送INVITE消息,并带上鉴权信息。

4)  代理服务器向终端用户1000回100Trying响应,表示呼叫已经在处理中。

5)  代理服务器向被叫用户1002终端转发INVITE请求消息。

6)  终端用户1002向代理服务器回100Trying响应,告知代理服务器呼叫正在处理。

7)  被叫终端1002振铃,终端向代理服务器回180ring响应。

8)  代理服务器向终端用户1000转发180ring响应。

9)  被叫用户1002摘机,终端1002向代理服务器回200OK响应消息,表示连接成功。

10)代理服务器向终端1000转发200OK响应消息。

11) 终端1000收到200OK消息后,向代理服务器发送ACK消息进行确认。

12)终端服务将ACK确认消息转发给代理终端1002。

13)终端1000和1002通话建立成功。

14)通话结束,终端1002挂机,并向代理服务器发送BYE消息。

15)代理服务器转发BYE消息至终端1000。

16)终端1000收到BYE消息后,向代理服务器发送200OK消息。

17)代理服务器转发200OK响应消息至终端1002。

18)通话结束。

带鉴权信息的SIP呼叫消息

INVITE sip:1000@192.168.50.34SIP/2.0

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-244fd550d2729557-1---d8754z-;rport

Max-Forwards: 70

Contact:<sip:1002@192.168.50.32:2445>

To: <sip:1000@192.168.50.34>

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 1 INVITE

Allow: INVITE, ACK, CANCEL,OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO

Content-Type: application/sdp

Supported: replaces

User-Agent: Bria Professionalrelease 2.4 stamp 49381

Content-Length: 596

v=0

o=- 1 2 IN IP4 192.168.50.32

s=CounterPath Bria Professional

c=IN IP4 192.168.50.32

t=0 0

m=audio 3564 RTP/AVP 107 119 100106 0 98 8 18 101

a=alt:1 3 : 3RJcASQD J+MIobg5192.168.50.32 3564

a=alt:2 2 : 7O4fx9KR Fs3hXCYf192.168.129.1 3564

a=alt:3 1 : 12zuNFYg Ya4ebcvU192.168.110.1 3564

a=fmtp:18 annexb=yes

a=fmtp:101 0-15

a=rtpmap:107 BV32/16000

a=rtpmap:119 BV32-FEC/16000

a=rtpmap:100 SPEEX/16000

a=rtpmap:106 SPEEX-FEC/16000

a=rtpmap:98 iLBC/8000

a=rtpmap:18 G729/8000

a=rtpmap:101 telephone-event/8000

a=sendrecv

a=x-rtp-session-id:56A9F9BE76774F7C962FD8ACDB1B86E1

主叫1000发起一路呼叫,终端向服务器发送INVITE请求消息

SIP/2.0 407 Proxy Authentication Required

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-244fd550d2729557-1---d8754z-;rport

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

To:<sip:1000@192.168.50.34>;tag=043de7350

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 1 INVITE

Contact:<sip:1000@192.168.50.34:5060>

Proxy-Authenticate: Digest realm="soft3000",nonce="1dbb0165"

Content-Length: 0

代理服务器向终端1000回407响应,表示代理服务器要求终端代理带上鉴权信息。代理服务器什么情况下回407,首先,用户在注册时,必须带鉴权的认证消息;其次,服务器端必须开启呼叫鉴权

ACK sip:1000@192.168.50.34 SIP/2.0

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-244fd550d2729557-1---d8754z-;rport

To:<sip:1000@192.168.50.34>;tag=043de7350

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 1 ACK

Content-Length: 0

终端用户对407消息确认,告诉服务器端,客户端已经收到

INVITE sip:1000@192.168.50.34SIP/2.0

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-344b5a077e1cc11e-1---d8754z-;rport

Max-Forwards: 70

Contact: <sip:1002@192.168.50.32:2445>

To: <sip:1000@192.168.50.34>

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 2 INVITE

Allow: INVITE, ACK, CANCEL,OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO

Content-Type: application/sdp

Proxy-Authorization: Digestusername="1002",realm="soft3000 ",nonce="1dbb0165",uri="sip:1000@192.168.50.34",response="eb3a7e40a4797c2e7b549a6c30d2d091",algorithm=MD5

Supported: replaces

User-Agent: Bria Professionalrelease 2.4 stamp 49381

Content-Length: 596

v=0

o=- 1 2 IN IP4 192.168.50.32

s=CounterPath Bria Professional

c=IN IP4 192.168.50.32

t=0 0

m=audio 3564 RTP/AVP 107 119 100106 0 98 8 18 101

a=alt:1 3 : 3RJcASQD J+MIobg5192.168.50.32 3564

a=alt:2 2 : 7O4fx9KR Fs3hXCYf 192.168.129.13564

a=alt:3 1 : 12zuNFYg Ya4ebcvU192.168.110.1 3564

a=fmtp:18 annexb=yes

a=fmtp:101 0-15

a=rtpmap:107 BV32/16000

a=rtpmap:119 BV32-FEC/16000

a=rtpmap:100 SPEEX/16000

a=rtpmap:106 SPEEX-FEC/16000

a=rtpmap:98 iLBC/8000

a=rtpmap:18 G729/8000

a=rtpmap:101 telephone-event/8000

a=sendrecv

a=x-rtp-session-id:56A9F9BE76774F7C962FD8ACDB1B86E1

终端1000向代理服务器重新发起带鉴权的INVITE消息,鉴权信息详见,Proxy-Authorization头域,后续的呼叫流程和基本呼叫流程一样。

SIP/2.0 100 Trying

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-344b5a077e1cc11e-1---d8754z-;rport

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

To:<sip:1000@192.168.50.34>;tag=118336ef9

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 2 INVITE

Contact:<sip:1000@192.168.50.34:5060>

Content-Length: 0

INVITE sip:1000@192.168.50.32SIP/2.0

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From: "1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

Contact:<sip:1002@192.168.50.34:5060>

To: <sip:1000@192.168.50.32>

Call-ID: 13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 238 INVITE

Max-Forwards: 70

Supported: timer

Session-Expires: 90

Content-Type: application/sdp

Content-Length: 340

v=0

o=root 1062270166 1062270166 IN IP4192.168.50.34

s=session

c=IN IP4 192.168.50.34

t=0 0

m=audio 45294 RTP/AVP 0 8 18 3 114101

a=rtpmap:0 PCMU/8000

a=rtpmap:8 PCMA/8000

a=rtpmap:18 G729/8000

a=rtpmap:3 GSM/8000

a=rtpmap:114 AMR/8000

a=fmtp:114octet-align=1;mode-set=7,0

a=rtpmap:101 telephone-event/8000

a=fmtp:101 0-16

SIP/2.0 100 Trying

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From:"1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To: <sip:1000@192.168.50.32>

Call-ID: 13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 238 INVITE

Content-Length: 0

SIP/2.0 180 Ringing

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From:"1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To:<sip:1000@192.168.50.32>;tag=97865811

Call-ID: 13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 238 INVITE

Contact:<sip:1000@192.168.50.32:18553>

Content-Length: 0

SIP/2.0 180 Ringing

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-344b5a077e1cc11e-1---d8754z-;rport

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

To:<sip:1000@192.168.50.34>;tag=118336ef9

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 2 INVITE

Contact:<sip:1000@192.168.50.34:5060>

Content-Length: 0

SIP/2.0 200 OK

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From:"1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To:<sip:1000@192.168.50.32>;tag=97865811

Call-ID:Anta13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 238 INVITE

Contact:<sip:1000@192.168.50.32:18553>

Allow-Events: telephone-event

Require: timer

Supported: timer

Session-Expires: 90;refresher=uac

Content-Type: application/sdp

Content-Length: 326

v=0

o=192.168.50.32 1074907112788190655 IN IP4 192.168.50.32

s=-

c=IN IP4 192.168.50.32

t=0 0

m=audio 26752 RTP/AVP 0 8 18 3 114101

a=rtpmap:0 PCMU/8000

a=rtpmap:8 PCMA/8000

a=rtpmap:18 G729/8000

a=rtpmap:3 GSM/8000

a=rtpmap:114 AMR/8000

a=fmtp:114 mode-set=0

a=rtpmap:101 telephone-event/8000

a=fmtp:101 0-16

ACK sip:1000@192.168.50.32:18553SIP/2.0

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From: "1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To:<sip:1000@192.168.50.32>;tag=97865811

Call-ID:Anta13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 238 ACK

Max-Forwards: 70

Content-Length: 0

SIP/2.0 200 OK

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-344b5a077e1cc11e-1---d8754z-;rport

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

To:<sip:1000@192.168.50.34>;tag=118336ef9

Call-ID: OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 2 INVITE

Contact:<sip:1000@192.168.50.34:5060>

Content-Type: application/sdp

Content-Length: 199

v=0

o=root 113824166 113824166 IN IP4192.168.50.34

s=session

c=IN IP4 192.168.50.34

t=0 0

m=audio 41182 RTP/AVP 0 101

a=rtpmap:0 PCMU/8000

a=rtpmap:101 telephone-event/8000

a=fmtp:101 0-16

ACK sip:1000@192.168.50.34:5060SIP/2.0

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-bd168751863dd812-1---d8754z-;rport

Max-Forwards: 70

Contact: <sip:1002@192.168.50.32:2445>

To:<sip:1000@192.168.50.34>;tag=118336ef9

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 2 ACK

Proxy-Authorization: Digestusername="1002",realm="ASG Switch",nonce="1dbb0165",uri="sip:1000@192.168.50.34",response="eb3a7e40a4797c2e7b549a6c30d2d091",algorithm=MD5

User-Agent: Bria Professionalrelease 2.4 stamp 49381

Content-Length: 0

BYE sip:1000@192.168.50.34:5060SIP/2.0

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-61057e021325140c-1---d8754z-;rport

Max-Forwards: 70

Contact:<sip:1002@192.168.50.32:2445>

To:<sip:1000@192.168.50.34>;tag=118336ef9

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 3 BYE

Proxy-Authorization: Digestusername="1002",realm="ASGSwitch",nonce="1dbb0165",uri="sip:1000@192.168.50.34:5060",response="b24a55d3ca4420c406eef5a2797e6411",algorithm=MD5

User-Agent: Bria Professionalrelease 2.4 stamp 49381

Reason: SIP;description="UserHung Up"

Content-Length: 0

SIP/2.0 200 OK

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-61057e021325140c-1---d8754z-;rport

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

To:<sip:1000@192.168.50.34>;tag=118336ef9

Call-ID: OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 3 BYE

Contact:<sip:1000@192.168.50.34:5060>

Content-Length: 0

BYE sip:1000@192.168.50.32:18553SIP/2.0

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From: "1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To:<sip:1000@192.168.50.32>;tag=97865811

Call-ID:Anta13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 239 BYE

Max-Forwards: 70

Content-Length: 0

SIP/2.0 200 OK

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From:"1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To:<sip:1000@192.168.50.32>;tag=97865811

Call-ID:Anta13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 239 BYE

Content-Length: 0

带鉴权信息的SIP呼叫相关推荐

  1. helm3添加harbor仓库:带鉴权--username --password

    [root@m-1 helm]# helm repo add harbor_local --username=admin --password=密码 http://192.168.1xx.xxx:16 ...

  2. postman调试http接口挑战鉴权Authorization

    我在公司有postman调接口的时候,填写了正确的请求路径和json数据,但是还是报401权限错误!!!!!后来我在文档上找到了需要json+带鉴权信息,但是还是没办法解决,最后问了第三方,需要二次鉴 ...

  3. js如何获取jwt信息_学习后端鉴权系列: 基于JWT的会话管理

    内容回顾 上一节讲了基于Cookie+Session的认证方案. Even:学习后端鉴权系列: 基于Cookie, Session认证​zhuanlan.zhihu.com 由于基于Session方案 ...

  4. CDMA手机鉴权的过程说明

    CDMA手机鉴权的过程说明 鉴权处理是筛选合法用户,并允许接入网络取得服务的过程,鉴权处理必须在位置登记.移动台呼叫的终止与发起前完成.  鉴权过程:  实际是一个"询问与响应"的 ...

  5. Web API接口鉴权方式

    一.什么是鉴权?为什么要鉴权 鉴权(authentication),也叫做认证,即验证用户是否拥有访问系统的权利. HTTP本身是无状态的请求,每次请求都是一次性的,并不会知道请求前后发生了什么.但在 ...

  6. mysql ip鉴权_网站登录鉴权的实现

    什么是网站鉴权,目的是什么? 一般来说,一个网站不可能只有一种操作权限.举个例子,可能存在未登录的操作权限,登录的操作权限,以及管理 员的操作权限等.网站鉴权的目的就是用户在进行操作前,对用户的身份进 ...

  7. CDN > 域名管理 > 访问控制 > URL鉴权配置 > URL鉴权

    URL鉴权 更新时间:2020-03-05 18:09:03 编辑我的收藏 URL鉴权功能主要用于保护用户站点的资源不被非法站点下载盗用.通过防盗链方法添加Referer黑名单和白名单的方式可以解决一 ...

  8. API 鉴权插件上线!支持用户自定义鉴权插件

    0.4.0 版本更新主要围绕这几个方面: 分组独立的 UI,支持分组 API 鉴权 API 测试支持继承 API 鉴权 支持用户自定义鉴权插件,仅需部分配置即可发布鉴权插件 开始介绍功能之前,我想先和 ...

  9. 开源OA协同办公搭建教程:使用认证鉴权对服务访问进行限制(invoke)

    本篇文章介绍的是开源的协同办公项目O2OA如何使用认证鉴权对服务访问进行限制(invoke). 默认情况下创建的服务是允许匿名访问的,这样创建的服务可以直接通过url访问执行,如果需要进行鉴权限制,那 ...

  10. 5G UE鉴权流程详解 UE Authentication

    名词 SUCI (Subscription Concealed Identifier)订阅隐藏标识符 SUPI (Subscription Permanent Identifier)订阅永久标识符 S ...

最新文章

  1. python编程入门指南 明日科技-python从入门到项目实践明日科技三剑客书籍视频...
  2. SAP系统与MES系统的数据协同技术方案
  3. js javascript UTF-8 GB2312编码转换
  4. c++怎么保存汉字_“的汉字 ”写作练习
  5. postman使用指南
  6. 如何创建多个条形图_学习使用D3创建条形图-初学者教程
  7. php排序算法算法,PHP排序算法之基数排序(Radix Sort)实例详解
  8. Qt4_在次线程中使用Qt的类
  9. Android程序暂停sh,init进程 解析Android启动脚本init.rc 修改它使不启动android init.rc中启动一个sh文件...
  10. 贺利坚老师汇编课程28笔记:在代码段使用数据加个标号start
  11. pyqt5程序的图标
  12. 何为线性时不变系统!详解
  13. 浅谈微积分以及泰勒展开
  14. 做外贸如何防止邮箱被封?已解决!
  15. 怎么简单快速一个钟头入侵网站
  16. 树莓派(Raspberry Pi)——为树莓派安装系统及常用工具下载地址
  17. 移动端、PC端 网页特效
  18. 移动硬盘突然在电脑上无法显示
  19. Python OpenCV 读取USB摄像头报错问题解决
  20. 稻城亚丁6日游之引子

热门文章

  1. 分层模式下的Lazy Load ——探索Domain Model系列(下)--转
  2. html div 画半圆,css画变形的半圆
  3. html5中标签与类的区别,html5中section标签与div标签的区别是什么
  4. 如何 给给软件开发 添加 代理_如何从“菜鸟码农”变成“一线架构师”?
  5. [Oracle]ORA-600[kdBlkCheckError]LOB坏块处理
  6. 《Python数据挖掘:概念、方法与实践》一1.3 在数据挖掘中使用哪些技术
  7. 运维人员写项目方案及推进项目的基本流程思路
  8. Win7-64位 Cygwin编译Redis
  9. 考前必练15道题_《系统集成项目管理工程师备考宝典》
  10. java8计算两个日期之间的天数