2024年6月2日发(作者:)
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/,比较详细。
并有场景的抓包截图等。SIP协议也是简单的讲解请求和应答消息种类,和各个
头域讲解,详细的SIP协议请查看文档rfc3261。
1.注册流程:
终端代理A代理服务器
注册流程图如下图,举例用sip客户端在10.18.6.83机器上,以1001号码,
向10.18.2.152上的Freeswitch注册。
REGISTER (1)
401(2)
REGISTER(3)
200 OK (4)
标题
(1)用户首次试呼时,终端代理A 向代理服务器发送REGISTER 注册请求;
(2)代理服务器通过后端认证/计费中心获知用户信息不在数据库中,便向终端代理回送401
Unauthorized 质询信息,其中包含安全认证所需的令牌;
(3)终端代理提示用户输入其标识和密码后,根据安全认证令牌将其加密后,再次用
REGISTER 消息报告给代理服务器;
(4)代理服务器将REGISTER 消息中的用户信息解密,通过认证/计费中心验证其合法后,
将该用户信息登记到数据库中,并向终端代理A 返回成功响应消息200 OK。
抓包截图如下图
客户端第一次发送的REGISTER包体内容如下图, expries=3600


发布评论