SIP协议呼叫流程及协议分析.docx

上传人:b****3 文档编号:11509535 上传时间:2023-06-01 格式:DOCX 页数:15 大小:1.48MB
下载 相关 举报
SIP协议呼叫流程及协议分析.docx_第1页
第1页 / 共15页
SIP协议呼叫流程及协议分析.docx_第2页
第2页 / 共15页
SIP协议呼叫流程及协议分析.docx_第3页
第3页 / 共15页
SIP协议呼叫流程及协议分析.docx_第4页
第4页 / 共15页
SIP协议呼叫流程及协议分析.docx_第5页
第5页 / 共15页
SIP协议呼叫流程及协议分析.docx_第6页
第6页 / 共15页
SIP协议呼叫流程及协议分析.docx_第7页
第7页 / 共15页
SIP协议呼叫流程及协议分析.docx_第8页
第8页 / 共15页
SIP协议呼叫流程及协议分析.docx_第9页
第9页 / 共15页
SIP协议呼叫流程及协议分析.docx_第10页
第10页 / 共15页
SIP协议呼叫流程及协议分析.docx_第11页
第11页 / 共15页
SIP协议呼叫流程及协议分析.docx_第12页
第12页 / 共15页
SIP协议呼叫流程及协议分析.docx_第13页
第13页 / 共15页
SIP协议呼叫流程及协议分析.docx_第14页
第14页 / 共15页
SIP协议呼叫流程及协议分析.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

SIP协议呼叫流程及协议分析.docx

《SIP协议呼叫流程及协议分析.docx》由会员分享,可在线阅读,更多相关《SIP协议呼叫流程及协议分析.docx(15页珍藏版)》请在冰点文库上搜索。

SIP协议呼叫流程及协议分析.docx

SIP协议呼叫流程及协议分析

一、SIP 协议介绍:

会话发起协议 SIP(Session Initiation Protocol)是一个应用层控制信令协议,用

于建立、更改和终止多媒体会话或呼叫。

SIP 作为一个基础,可以在其上提供很多不同的

服务。

目前已经定义的媒体类型有音频、视频、应用、数据、控制。

二、SIP 呼叫流程:

注册流程:

 

(1)用户首次试呼时,终端代理 A 向代理服务器发送 REGISTER 注册请求;

(2)代理服务器通过后端认证/计费中心获知用户信息不在数据库中,便向终端代理

回送 401Unauthorized 质询信息,其中包含安全认证所需的令牌;

(3)终端代理提示用户输入其标识和密码后,根据安全认证令牌将其加密后,再次用

REGISTER 消息报告给代理服务器;

(4)代理服务器将 REGISTER消息中的用户信息解密,通过认证/计费中心验证其合

法后,将该用户信息登记到数据库中,并向终端代理 A 返回成功响应消息 200 OK。

 

呼叫流程:

 

(1) 用户摘机发起一路呼叫,终端代理 A 向该区域的代理服务器发起 Invite 请求;

(2) 代理服务器通过认证/计费中心确认用户认证已通过后,检查请求消息中的 Via 头

域中是否已包含其地址。

若已包含,说明发生环回,返回指示错误的应答;如果没有问题,

代理服务器在请求消息的 Via 头域插入自身地址,并向 Invite 消息的 To 域所指示的被

叫终端代理 B 转送 Invite 请求;

(3) 代理服务器向终端代理 A 送呼叫处理中的应答消息,100 Trying;

(4) 终端代理 B 向代理服务器送呼叫处理中的应答消息,100 Trying;

(5) 终端代理 B 指示被叫用户振铃,用户振铃后,向代理服务器发送 180 Ringing 振铃

信息;

(6) 代理服务器向终端代理 A 转发被叫用户振铃信息;

(7) 被叫用户摘机,终端代理 B 向代理服务器返回表示连接成功的应答(200 OK);

(8) 代理服务器向终端代理 A 转发该成功指示(200 OK);

(9) 终端代理 A 收到消息后,向代理服务器发 ACK 消息进行确认;

(10) 代理服务器将 ACK 确认消息转发给终端代理 B;

(11) 主被叫用户之间建立通信连接,开始通话;

结束流程:

 

(2)用户通话结束后,被叫用户挂机,终端代理 B 向代理服务器发送 Bye 消息;

(3)代理服务器转发 Bye  消息至终端代理 A,同时向认证/计费中心送用户通话的详细信

息,请求计费;

(4)主叫用户挂机后,终端代理 A 向代理服务器发送确认挂断响应消息 200 OK;

(5)代理服务器转发响应消息 200OK;

注:

RFC3621 上结束流程为:

终端代理 B 直接发送 Bye 至终端代理 A(未通过代理服务器转

发),测试时使用的 X-Lite 软件 Bye 消息目的 IP 为代理服务器。

此现象待分析确认。

注销流程:

 

(1) 终端向代理服务器送 Register 消息注销,其头中 expire 字段置 0。

(2) 代理服务器收到后回送 200 OK 响应,并将数据库中的用户有关信息注销。

三、SIP 报文分析:

注册报文分析

Register 报文:

 

Max-Forwards:

最大转发次数,就是经过 SIP 服务器的转发次数,主要是为了防环

Via:

SIP 版本号 2.0、传输类型 UDP、呼叫地址

Branch 是一种随机码,它被看作传输标识

Via 字段中地址是消息发送方或代理转发方设备地址,一般由主机地址和端口号组成

传输类型可以为 UDP/TCP/TLS/SCTP

Contact:

是 INVITE 消息所必须的,它用来路由到被叫地址设备,也称为用户代理(UA)

To:

使用用户名 888 去 10.11.58.8 登录

From:

表示请求消息的发送方和目标方,如果里面有用户名标签,地址要求用尖括号包起

来,Tag:

随机码

Call-ID:

呼叫 ID 由本地设备生成,全局唯一。

每次呼叫该值唯一不变。

本地生成的 From tag 和 Call-ID 全局唯一码,被叫方生成 To tag 全局唯一码。

这三个随

机码做为整个对话中对话标识在通话双方使用。

CSeq:

命令队列,每发送一个新的请求,该数自动加 1

Expires:

到期时间

 

回复认证报文:

 

407:

要求代理权

呼叫方回应的认证报文:

 

代理服务器回应 200OK:

 

呼叫流程:

INVITE 报文:

 

0:

SDP 版本号,目前都是 0

O:

主叫源地址,类型等

S:

呼叫主题

C:

连接信息,告诉对端我的连接信息

T:

时间戳

M:

媒体传输类型,媒体编码,开放端口等

A:

媒体属性 (采样率等)

服务器转发后 Trying 报文:

 

响铃 Ringing 报文:

 

接听电话后回应 200OK 报文:

 

Content-Type:

说明消息类型

Content-Length:

消息长度

收到 200OK 报文后回复 ACK:

 

结束流程报文:

Bye 报文:

收到 Bye 后回应 200OK:

 

用户在代理服务器上注销流程:

REGISTER 报文:

 

Expires:

注销时,此值置为 0

200OK 报文:

 

4、常见的 SIP 消息类型:

INVITE:

发起会话请求,邀请用户加入一个会话,会话描述含于消息体中。

对于两方呼叫

来说,主叫方在会话描述中指示其能够接受的媒体类型及其参数。

被叫方必须在成功响应

消息的消息体中指明其希望接受哪些媒体,还可以指示其将发送的媒体。

如果收到的是关于参加会议的邀请,被叫方可以根据 Call-ID 或者会话描述中的标识确定

用户已经加入该会议,并返回成功响应消息。

ACK:

证实已收到对于 INVITE 请求的最终响应。

该消息仅和 INVITE 消息配套使用。

BYE:

结束会话

CANCEL:

取消尚未完成的请求,对于已完成的请求则没有影响

REGISTER:

注册

OPTIONS:

查询服务器的能力

5、常见的响应消息状态码:

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2