SIP 交互流程

更新时间:2023-07-01 19:47:10 阅读: 评论:0

SIP 交互流程
一、 SIP(Session Initiation Protocol)
    会话初始协议(Session Initiation Protocol)是一种信令协议,用于初始、管理和终止网络中的语音和视频会话,具体地说就是用来生成、修改和终结一个或多个参与者之间的会话。SIP的业务模式是一个点对点协议,其中有两个要素——SIP用户代理和SIP网络服务器。用户代理是呼叫的终端系统元素,而SIP服务器是处理与多个呼叫相关联信令的网络设备。用户代理本身具有一客户机元素(用户代理客户机UAC)和一服务器元素(用户代理服务器UAS)。客户机元素初始呼叫而服务器元素应答呼叫。这允许点到点的呼叫通过客户机-服务器协议来完成。下图是SIP业务的网络结构和各个参与者的关系。
导线点    SIP是互联网工程任务组(IETF)多媒体数据和控制体系结构的一个组成部分,因此它与IETF的许多其他协议都有联系,例如RTP(实时传输协议)和SDP协议。SIP与许多其它的协议协同工作,仅仅涉及通信会话的信令部分(control message)。SIP报文内容传送会话描述协议(SDP),SDP协议描述了会话所使用流媒体细节,如:使用哪个IP端口,采用哪种编解码器等等。SIP的一个典型用途是:SIP“会话”传输一些简单的经过封包的实时传输协议流。RTP本身才是语音或视频的载体
二、 业务流程和协议流程
    这里介绍了注册和呼叫流程,其他场景需要了解,博客地址/gnuhpc/archive/2012/12/10/2812095.html,比较详细。并有场景的抓包截图等。SIP协议也是简单的讲解请求和应答消息种类,和各个头域讲解,详细的SIP协议请查看文档rfc3261。
1.注册流程:
    注册流程图如下图,举例用sip客户端在10.18.6.83机器上,以1001号码,向10.18.2.152上的Freeswitch注册。
2020年有多少天
           
    抓包截图如下图
客户端第一次发送的REGISTER包体内容如下图, expries=3600
    服务器返回的401包体内容如下图
   
客户端带着验证信息项服务器发送REGISTER包体内容如下图云南特色小吃
   
服务器给客户端返回注册成功200OK包体内容如下图
2.注销流程:
    客户端注销如下图,举例用10.18.6.128上的SIP客户端注销。用户号码是1000。
注销抓包截图如下
客户端向服务器发送的注销REGISTER包体信息如下图,expries=0;
    服务器向客户端返回确认消息200OK的包体如下图
3.基本呼叫建立过程:
    呼叫流程如下图,举例10.18.6.83上以1001号码注册到服务器,10.18.6.128上以1000号码注册到服务器上,1001呼叫1000。
呼叫过程抓包流程如下图
1001发送向服务器发送INVITE请求的包体内容如下
INVITE sip:1000@10.18.2.152 SIP/2.0
Via: SIP/2.0/UDP 10.18.6.83;rport;branch=z9hG4bKcgapzrwj
Max-Forwards: 70
To: <sip:1000@10.18.2.152>
From: "bob" <sip:1001@10.18.2.152>;tag=necsc
Call-ID: ihvgztnhipwftni@zj-B85M-D3H
CSeq: 736 INVITE
Contact: <sip:1001@10.18.6.83>
Content-Type: application/sdp
Allow: INVITE,ACK,BYE,CANCEL,OPTIONS,PRACK,REFER,NOTIFY,SUBSCRIBE,INFO,MESSAGE
Supported: replaces,norefersub,100rel
Ur-Agent: Twinkle/1.9.0
ong怎么读Content-Length: 305
v=0
o=twinkle 2061889636 1855002003 IN IP4 10.18.6.83
s=-
c=IN IP4 10.18.6.83
部分的英文
t=0 0
m=audio 8000 RTP/AVP 98 97 8 0 3 101
a=rtpmap:98 speex/16000
a=rtpmap:97 speex/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:3 GSM/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=ptime:20
    服务器返回给用户1001,100 Trying消息体内容如下
SIP/2.0 100 Trying
Via: SIP/2.0/UDP 10.18.6.83;rport=5060;branch=z9hG4bKleesztcp
From: "bob" <sip:1001@10.18.2.152>;tag=necsc
To: <sip:1000@10.18.2.152>
Call-ID: ihvgztnhipwftni@zj-B85M-D3H
CSeq: 737 INVITE
Ur-Agent: FreeSWITCH-mod_sofia/1.6.10~64bit
Content-Length: 0
服务器向被叫1000转送INVITE请求消息包内容如下
INVITE sip:1000@10.18.6.128:61306;rinstance=ddeb50f2659c14db SIP/2.0
男性穿搭Via: SIP/2.0/UDP 10.18.2.152;rport;branch=z9hG4bKD92XXBpSQ5jmc
Route: <sip:1000@10.18.6.128:61306>;rinstance=ddeb50f2659c14db
Max-Forwards: 69
From: "Extension 1001" <sip:1001@10.18.2.152>;tag=Qt95DD4eK4jQF
To: <sip:1000@10.18.6.128:61306;rinstance=ddeb50f2659c14db>
Call-ID: d37fdc79-15e9-1235-ad86-525400bcb470
CSeq: 98395929 INVITE
Contact: <sip:mod_sofia@10.18.2.152:5060>
Ur-Agent: FreeSWITCH-mod_sofia/1.6.10~64bit
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE
Supported: timer, path, replaces
Allow-Events: talk, hold, conference, prence, as-feature-event, dialog, line-ize, call-info, sla, include-ssion-description, prence.winfo, message-summary, refer
Content-Type: application/sdp
Content-Disposition: ssion
Content-Length: 242
X-FS-Support: update_display,nd_info
Remote-Party-ID: "Extension 1001" <sip:1001@10.18.2.152>;party=calling;screen=yes;privacy=off
v=0
o=FreeSWITCH 1477444972 1477444973 IN IP4 10.18.2.152
s=FreeSWITCH
c=IN IP4 10.18.2.152
药品市场t=0 0
m=audio 19014 RTP/AVP 8 0 101
a=rtpmap:8 PCMA/8000
月末总结a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=ptime:20

本文发布于:2023-07-01 19:47:10,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/1072739.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:协议   呼叫   服务器
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图