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

合集下载

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

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

SIP协议呼叫流程及协议分析一、引言本协议旨在详细描述Session Initiation Protocol(SIP)协议的呼叫流程,并对该协议进行深入分析。

SIP是一种用于建立、修改和终止多媒体会话的应用层协议,广泛应用于IP电话、视频会议和即时通信等领域。

本协议将首先介绍SIP协议的基本概念和架构,然后详细描述SIP协议的呼叫流程,最后对协议进行深入分析。

二、SIP协议的基本概念和架构1. SIP协议概述SIP是一种基于文本的协议,使用统一资源标识符(Uniform Resource Identifier,URI)来标识和定位会话参与者。

它使用请求-响应模型,并利用SIP消息来建立、修改和终止会话。

SIP协议基于传输层协议(如UDP、TCP或TLS)进行通信。

2. SIP协议架构SIP协议采用客户端-服务器架构,包括以下组件:- 用户代理(User Agent,UA):分为用户代理客户端(User Agent Client,UAC)和用户代理服务器(User Agent Server,UAS),分别用于发起和处理SIP请求。

- 代理服务器(Proxy Server):用于转发SIP请求和响应,可以实现路由、重定向和鉴权等功能。

- 注册服务器(Registrar Server):用于用户注册和位置服务,将用户的SIP地址映射到其当前位置。

- 重定向服务器(Redirect Server):用于处理重定向请求,将请求重定向到其他服务器。

三、SIP协议的呼叫流程1. 呼叫建立流程呼叫建立流程包括以下步骤:- UAC向UAS发送INVITE请求,请求建立会话。

- UAS收到INVITE请求后,返回100 Trying响应,表示正在处理请求。

- UAS根据请求内容生成180 Ringing响应,通知UAC正在振铃。

- UAS根据被叫方的状态生成200 OK响应,表示会话建立成功。

- UAS向UAC发送ACK请求,确认会话建立。

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

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

SIP协议呼叫流程及协议分析SIP(Session Initiation Protocol)是一种用于建立、修改和终止多媒体会话的协议。

它在互联网通信中发挥着重要的作用,特别是在VoIP(Voice over Internet Protocol)中。

本文将详细介绍SIP协议的呼叫流程以及对协议的分析。

一、SIP协议呼叫流程1. 注册阶段:在SIP协议中,用户设备需要先进行注册,以便在网络中被识别和定位。

注册流程如下:- 用户设备发送REGISTER消息到SIP服务器,包含用户的身份信息和位置信息。

- SIP服务器接收到REGISTER消息后,将用户的信息记录在注册表中,并返回200 OK响应,表示注册成功。

2. 呼叫建立阶段:在完成注册后,用户可以发起呼叫请求。

呼叫建立流程如下:- 主叫用户设备发送INVITE消息到SIP服务器,包含被叫用户的地址信息和媒体协商信息。

- SIP服务器接收到INVITE消息后,查询被叫用户的位置信息,并将INVITE消息转发给被叫用户设备。

- 被叫用户设备接收到INVITE消息后,发送100 Trying响应给SIP服务器,表示正在处理呼叫请求。

- 被叫用户设备根据媒体协商信息,生成对应的SDP(Session Description Protocol)消息,并将200 OK响应发送给SIP服务器。

- SIP服务器将200 OK响应转发给主叫用户设备。

- 主叫用户设备接收到200 OK响应后,发送ACK消息给SIP服务器,表示呼叫建立成功。

3. 呼叫传输阶段:在呼叫建立成功后,主叫和被叫用户之间可以进行音视频传输。

呼叫传输流程如下:- 主叫用户设备根据SDP消息中的媒体协商信息,建立音视频传输通道。

- 主叫用户设备将音视频数据打包成RTP(Real-time Transport Protocol)数据包,并通过网络发送给被叫用户设备。

- 被叫用户设备接收到RTP数据包后,解析数据并播放音视频。

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

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

SIP协议呼叫流程及协议分析SIP(Session Initiation Protocol)是一种用于建立、修改和终止多媒体会话的协议。

它允许用户在互联网上进行实时语音、视频通话以及即时消息传递等。

SIP协议的呼叫流程可以简要概括为:建立连接、呼叫邀请、会话建立、会话修改和会话终止。

1.建立连接:2.呼叫邀请:发起呼叫的一方(称为呼叫发起方)向被呼叫方发送一个INVITE请求,其中包括被呼叫方的SIP地址。

INVITE请求中还包含了与呼叫相关的会话描述信息(SDP)。

3.会话建立:被呼叫方收到INVITE请求后,可以采取以下步骤来进行会话建立:a.被呼叫方返回一个响应(称为200OK)给呼叫发起方,表示接受呼叫邀请。

b. 被呼叫方收到100 Trying响应后,表示已收到呼叫邀请。

c. 被呼叫方可以发送180 Ringing响应给呼叫发起方,表示正在被呼叫方正在响铃。

d.呼叫发起方接收到200OK响应后,表示会话建立成功。

4.会话修改:在会话建立后,呼叫发起方和被呼叫方之间可以根据需要对会话进行修改。

例如,可以设置音频编解码器、视频分辨率等参数。

SIP协议提供了多种消息来进行会话修改,如ACK、BYE、CANCEL、OPTIONS等。

5.会话终止:当通话结束时,任何一方可以发送BYE请求来终止通话。

接收到BYE请求的一方会发送一个200OK响应,表示通话已终止。

1.灵活性:SIP协议使用文本格式,易于阅读和理解,且允许在会话建立后对会话进行修改。

2.易于扩展:SIP协议定义了许多扩展机制,使其适应不断增长的需求和新的通信技术。

3.开放性:SIP协议是一个开放的协议,允许与其他协议(如H.323、XMPP等)进行互操作。

4.易于管理:SIP协议允许用户和终端设备具有自由度,可在各种网络环境和设备上进行使用和管理。

然而,SIP协议也存在一些挑战和问题:1.安全性:SIP协议的开放性也带来了安全问题,如拒绝服务攻击、身份伪造等。

网络协议知识:SIP协议的基本工作流程和通信过程

网络协议知识:SIP协议的基本工作流程和通信过程

网络协议知识:SIP协议的基本工作流程和通信过程SIP协议的基本工作流程和通信过程SIP协议(Session Initiation Protocol)是一种用于建立、修改和终止多媒体传输会话的信令协议。

它被广泛地应用于互联网电话(VoIP)、视频会议、实时文本等领域。

在本文中,我们将介绍SIP协议的基本工作流程和通信过程。

一、SIP协议的基本工作流程SIP协议的基本工作流程包括会话描述、会话建立、呼叫传送和会话终止四个部分。

1.会话描述在建立会话之前,需要先进行会话描述,包括会话类型、参与者、所需资源和传输协议等信息。

这些信息被包含在SIP消息中,由发送者向接收者发送。

2.会话建立会话建立是SIP协议的核心部分,它分为两个阶段:呼叫请求和呼叫响应。

(1)呼叫请求:呼叫请求由客户端发起,它包含了所需资源和参与者的信息。

首先,客户端需要向第三方服务器发送INVITE消息,请求建立一次会话。

在INVITE消息中,需要包含被叫方的地址信息、消息头部信息和描述被呼叫方资源的SDP(Session Description Protocol)。

(2)呼叫响应:被呼叫方在收到INVITE消息之后,会返回一个响应。

响应分为三种:1xx、2xx和3xx+。

其中,1xx表示正在进行中,2xx表示成功建立,3xx+表示需要重定向。

“成功建立”的响应会包含会话描述信息,即SDP。

在响应中,还可以通过Location字段告知客户端新的地址信息。

3.呼叫传送呼叫传送是会话建立之后,实际传输媒体数据的阶段。

SIP协议支持多种传输协议,包括UDP、TCP和TLS等。

在呼叫传送消息过程中,需要用到RTCP(Real-time Transport Control Protocol)和RTP (Real-time Transport Protocol)协议进行音视频流传输控制。

4.会话终止当一次会话结束时,需要发送一个BYE消息。

BYE消息用于释放会话资源,并告知接收方会话已经结束。

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

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

SIP协议呼叫流程及协议分析协议名称:SIP协议呼叫流程及协议分析一、引言本协议旨在详细描述SIP(Session Initiation Protocol,会话初始化协议)的呼叫流程,并对其协议进行分析。

SIP是一种应用层控制协议,用于建立、修改和终止基于IP的多媒体会话。

本协议将从SIP呼叫的基本流程开始,逐步介绍SIP协议的各个阶段和相关的协议分析。

二、SIP呼叫流程1. 呼叫建立阶段a) 客户端向服务器发送INVITE请求,包含被叫方的SIP地址。

b) 服务器向被叫方发送INVITE请求,询问是否愿意接听。

c) 被叫方接受INVITE请求,并回复200 OK。

d) 客户端收到200 OK回复后,发送ACK请求进行确认。

2. 呼叫修改阶段a) 客户端或服务器可以发送UPDATE请求,用于修改呼叫参数。

b) 接收到UPDATE请求后,对方可以回复200 OK进行确认。

3. 呼叫终止阶段a) 客户端或服务器发送BYE请求,用于终止呼叫。

b) 接收到BYE请求后,对方回复200 OK进行确认。

三、协议分析1. SIP消息格式SIP消息由起始行、头部和消息体组成。

起始行包括请求行或状态行,用于描述消息类型和状态。

头部包含多个字段,用于传递消息的各种参数。

消息体可选,用于传输媒体数据。

2. SIP地址格式SIP地址由用户名、服务器域名和可选的端口号组成。

例如,sip:****************:5060。

3. SIP请求和响应SIP请求包括INVITE、ACK、UPDATE和BYE等,用于发起呼叫、确认、修改和终止呼叫。

SIP响应包括1xx、2xx、3xx、4xx、5xx和6xx等,用于表示请求的处理状态。

4. SIP代理服务器SIP代理服务器用于转发SIP消息,帮助建立和终止呼叫。

代理服务器可以根据路由表将消息转发给下一个节点,直到达到目标。

5. SIP会话描述协议(SDP)SDP用于在SIP消息体中描述会话的媒体参数,包括音频、视频和其他媒体类型的编码格式、传输方式等。

SIP协议解析(华为内部)

SIP协议解析(华为内部)

IP SoftPhone
课程内容
第一节 概述 第二节 协议消息 第三节 呼叫流程
SIP协议消息的分类
SIP消息采用文本方式编码,分为两类:请求消息和 响应消息。
请求消息:客户端为了激活按特定操作而发给服务器 的SIP消息。
响应消息:用于对请求消息进行响应,指示呼叫的成 功或失败状态。
ACK
证实已收到对于INVITE请求的最终响应。该消息仅和INVITE消息配套 使用。
BYE
结束会话
CANCEL
取消尚未完成的请求,对于已完成的请求(即已收到最终响应的请求) 则没有影响
REGISTER 注册
OPTIONS 查询服务器的能力
响应消息
序号 1xx
2xx 3xx 4xx
5xx 6xx
状态码
200 OK
SIP实体之间的SIP呼叫流程
SIP PhoneA
SoftX3000
SIP PhoneB
1
INVITE
2 100 Trying
3
407
4
ACK
5
INVITE
6 100 Trying
10 180 Ringing 12 200 OK
7
INVITE
8 100 Trying 9 180 Ringing 11 200 OK
协议栈
H.323
SIP
TCP
RTSP
RSVP
RTCP
H.263 etc. RTP
UDP
PPP Sonet
IP AAL3/4 AAL5
ATM
Ethernet
PPP V.34
SIP协议在SoftX3000中的实现
SoftX3000

sip呼叫流程

sip呼叫流程

sip呼叫流程SIP(Session Initiation Protocol)是一种用于建立、管理和终止网络会话的协议。

在现代通信网络中,SIP被广泛应用于呼叫中心、语音通话、视频通话等通信场景。

以下是一篇关于SIP呼叫流程的700字文章。

SIP呼叫流程是指基于SIP协议进行的通话过程。

通常,SIP 呼叫涉及到发起方(呼叫发起者)和接收方(呼叫接收者)。

下面将详细介绍SIP呼叫的流程。

首先,呼叫发起者通过一个SIP客户端向SIP服务器发送一个INVITE请求。

这个请求中包含了目标用户的SIP地址(Uniform Resource Identifier,URI)。

SIP地址类似于电子邮件地址,它由用户名和服务器地址组成。

接下来,SIP服务器收到INVITE请求后,会查找并验证目标用户的SIP地址。

一旦目标用户被找到并验证通过,SIP服务器会返回一个100 Trying响应给呼叫发起者。

这个响应告诉呼叫发起者服务器正在尝试与目标用户建立连接。

同时,SIP服务器还会向目标用户发送INVITE请求。

目标用户的SIP客户端接收到INVITE请求后,会向服务器发送一个180 Ringing响应,表示正在响铃中。

如果目标用户接受呼叫,他的SIP客户端会向SIP服务器发送一个200 OK响应。

这个响应包含了与呼叫相关的一些信息,如音频和视频编解码器的选择。

SIP服务器收到200 OK响应后,会将这个响应转发给呼叫发起者的SIP客户端。

同时,服务器还会发送一个ACK请求给目标用户的SIP客户端,表示呼叫已经成功建立。

一旦呼叫建立,呼叫发起者和目标用户之间就可以进行通话了。

他们的语音、视频等数据会通过服务器进行传输。

在这个过程中,SIP客户端可以发送一些其他的SIP消息,如BYE请求,表示结束通话。

当通话结束时,呼叫发起者或目标用户的SIP客户端会发送一个BYE请求给SIP服务器。

服务器收到BYE请求后,会向对方发送一个200 OK响应,表示通话已经结束。

SIP呼叫典型流程图解及详细解释模板

SIP呼叫典型流程图解及详细解释模板

SIP呼叫典型流程图解及详细解释模板1SIP呼叫典型流程图解及详细解释目录1. Sip协议的相关术语: ............................................... 错误!未定义书签。

2. 注册流程.................................................................... 错误!未定义书签。

3. 注销流程: ................................................................. 错误!未定义书签。

4. 基本呼叫建立过程: ................................................. 错误!未定义书签。

5. 会话更改流程: ......................................................... 错误!未定义书签。

6. 正常呼叫释放过程: ................................................. 错误!未定义书签。

7. 被叫忙呼叫释放: ..................................................... 错误!未定义书签。

8. 被叫无应答流程一: ................................................. 错误!未定义书签。

9. 被叫无应答流程二: ................................................. 错误!未定义书签。

10. 遇忙呼叫前转: ...................................................... 错误!未定义书签。

11. 无应答呼叫前转流程: .......................................... 错误!未定义书签。

wiresharkf分析SIP呼叫流程典型流程-图解

wiresharkf分析SIP呼叫流程典型流程-图解

SIP-呼叫典型流程图解与及详细解释目录1.Sip协议的相关术语: (2)2.注册流程 (4)3.注销流程: (6)4.基本呼叫建立过程: (7)5.会话更改流程: (9)6.正常呼叫释放过程: (12)7.被叫忙呼叫释放: (13)8.被叫无应答流程一: (14)9.被叫无应答流程二: (15)10.遇忙呼叫前转: (16)11.无应答呼叫前转流程: (18)12.呼叫保持: (20)13.呼叫等待: (23)14.盲转流程 (27)15.询问转的流程 (30)16.彩铃的流程 (31)17.三方通话 (34)1.Sip协议的相关术语:A拨打B,A到proxy是一个session,一个dialog,proxy到b是另一个dialog,有另一个session name。

Invite,ack,bye,option,update,cancel消息,每发一个就是一个事务。

每发一个请求,cseq加1,但cancel,ack,bye请求的cseq同invite的cseq。

Callid,from tag,to tag标识一次对话。

Invite消息中有from tag,没有to tag,100 trying应答也没有to tag。

被叫发的bye 中from,to的tag和180和200ok的值。

每个事务用via字段里的branch的值来区分,invite到200ok之间属于一个事务,bye是另一事务。

语音流,被叫收到ack后发一个rtp流。

2.注册流程3.注销流程:4.基本呼叫建立过程:5.会话更改流程:举例:见盲转的过程中,会收到proxy发起的两次会话更新过程Re-invite 和invite 的区别是,re-invite 中含to tag ,invite 中不含to tag ,re-invite 中的sdp 消息中connection information 中是0.0.0.0。

6.正常呼叫释放过程:7.被叫忙呼叫释放:10.遇忙呼叫前转:因在同一ippbx下,所以没有回486的过程,直接ippbx直接呼叫被叫号码11.无应答呼叫前转流程:未接通振铃超时的消息第二被叫接通12.呼叫保持:13.呼叫等待:注意:用户a听到的嘟嘟有别的号码打入提示音是第五步,回180消息后,用户板发给终端的,proxy发给用户的rtp流中没有此音。

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

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

SIP协议呼叫流程及协议分析SIP(Session Initiation Protocol)是一种用于建立、修改和终止多媒体会话的协议。

它被广泛应用于VoIP(Voice over Internet Protocol)和实时通信系统中。

本文将详细介绍SIP协议的呼叫流程,并进行协议分析。

一、SIP协议呼叫流程SIP协议呼叫流程主要包括注册、呼叫建立、媒体协商和呼叫结束四个阶段。

1. 注册阶段在SIP系统中,用户需要先进行注册,以便系统能够识别并定位用户。

注册阶段的流程如下:- 用户向SIP服务器发送一个REGISTER请求,请求中包含用户的身份信息。

- SIP服务器接收到REGISTER请求后,验证用户身份,并将用户信息存储在注册表中。

- SIP服务器返回200 OK响应,表示注册成功。

2. 呼叫建立阶段一旦用户完成注册,就可以进行呼叫建立。

呼叫建立阶段的流程如下:- 主叫用户向SIP服务器发送INVITE请求,请求中包含被叫用户的SIP地址。

- SIP服务器根据被叫用户的SIP地址查询注册表,获取被叫用户的位置信息,并将INVITE请求转发给被叫用户所在的终端。

- 被叫用户的终端接收到INVITE请求后,向SIP服务器发送100 Trying响应,表示正在处理请求。

- 被叫用户的终端根据INVITE请求中的媒体描述信息,与主叫用户的终端进行媒体协商。

- 被叫用户的终端向SIP服务器发送180 Ringing响应,表示正在振铃。

- 被叫用户的终端与主叫用户的终端建立媒体通道后,向SIP服务器发送200 OK响应,表示呼叫建立成功。

3. 媒体协商阶段在呼叫建立成功后,主叫用户和被叫用户之间需要进行媒体协商,以确定音视频等媒体流的传输方式和参数。

媒体协商阶段的流程如下:- 主叫用户的终端向被叫用户的终端发送媒体描述信息,包含音视频编码格式、传输协议等。

- 被叫用户的终端根据媒体描述信息,选择合适的编码格式和传输协议,并向主叫用户的终端发送媒体描述信息。

SIP呼叫流程典型流程图解及其详细解释

SIP呼叫流程典型流程图解及其详细解释

1.注册流程:22.注销流程: (3)3.基本呼叫建立过程: (4)4.会话更改流程: (5)5.正常呼叫释放过程: (6)6.被叫忙呼叫释放: (7)7.被叫无应答流程一: (8)8.被叫无应答流程二: (9)9.遇忙呼叫前转: (10)10.无应答呼叫前转流程: (13)11.呼叫保持: (15)12.呼叫等等: (16)401 1注册流程:标题(1 )用户首次试呼时,终端代理 A 向代理服务器发送REGISTER 注册请求;(2) 代理服务器通过后端认证/计费中心获知用户信息不在数据库中,便向终端代理回送 Unauthorized质询信息,其中包含安全认证所需的令牌;(3) 终端代理提示用户输入其标识和密码后,根据安全认证令牌将其加密后,再次用 REGISTER 消息报告给代理服务器;(4) 代理服务器将REGISTER 消息中的用户信息解密,通过认证 /计费中心验证其合法后,将该用户信息登记到数据库中,并向终端代理A返回成功响应消息200 0K。

4012 •注销流程:3. 基本呼叫建立过程:(1)用户摘机发起一路呼叫,终端代理A向该区域的代理服务器发起In vite请求;(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)主被叫用户之间建立通信连接,开始通话;4. 会话更改流程:标题J(2)用户代理服务端向用户代理客户端发送Inivte 消息,带有新的SDP 协商信息。

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

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

SIP协议呼叫流程及协议分析SIP(Session Initiation Protocol)是一种用于建立、修改和终止多媒体味话的通信协议。

它是一种基于文本的协议,使用标准的HTTP语法来传输消息。

SIP协议在VoIP(Voice over Internet Protocol)中广泛应用,用于呼叫控制和媒体味话管理。

一、SIP协议呼叫流程:1. 呼叫发起:- 呼叫方向代理服务器发送INVITE请求,包含目标用户的SIP地址。

- 代理服务器根据目标地址查询目标用户的位置信息,并转发INVITE请求。

2. 呼叫接收:- 目标用户的终端设备收到INVITE请求,返回100 Trying响应,表示正在处理请求。

- 终端设备根据用户设置,选择是否接受呼叫。

3. 呼叫建立:- 目标用户接受呼叫后,终端设备发送200 OK响应,表示呼叫建立。

- 代理服务器将200 OK响应转发给呼叫方。

4. 媒体商议:- 呼叫方和目标用户通过SDP(Session Description Protocol)交换媒体商议信息,包括编解码器、传输协议等。

- 双方根据媒体商议信息建立媒体传输通道。

5. 会话管理:- 呼叫方和目标用户通过SIP消息交换会话管理信息,如保持、暂停、终止等操作。

- 代理服务器负责转发这些会话管理消息。

6. 呼叫结束:- 任一方或者代理服务器可以发送BYE请求,表示呼叫结束。

- 接收方返回200 OK响应,表示呼叫终止。

- 代理服务器将200 OK响应转发给发起方。

二、SIP协议分析:1. SIP消息格式:- SIP消息由起始行、头部和消息体组成。

- 起始行包含请求方法/响应状态码、URI和SIP版本。

- 头部包含多个字段,如From、To、Call-ID、CSeq等,用于传递相关信息。

- 消息体可选,用于传输媒体数据。

2. SIP地址:- SIP地址采用URI(Uniform Resource Identifier)格式,如sip:user@example。

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

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

SIP协议呼叫流程及协议分析SIP(Session Initiation Protocol)是一种用于建立、修改和终止多媒体会话的应用层协议。

它被广泛应用于VoIP(Voice over Internet Protocol)和实时通信系统中。

本文将详细介绍SIP协议的呼叫流程,并进行协议分析。

一、SIP协议呼叫流程1. 呼叫建立阶段在呼叫建立阶段,主叫方(User Agent Client,UAC)通过发送INVITE消息向被叫方(User Agent Server,UAS)发起呼叫请求。

INVITE消息中包含了被叫方的SIP地址(SIP URI)。

被叫方收到INVITE消息后,可以选择接受呼叫,或者拒绝呼叫。

2. 呼叫接受阶段如果被叫方接受呼叫,它将发送一个200 OK响应消息给主叫方。

该响应消息中包含了被叫方的SIP地址和会话描述协议(Session Description Protocol,SDP)信息,用于描述媒体会话的参数。

主叫方收到200 OK响应后,可以开始媒体会话的建立。

3. 媒体会话建立阶段在媒体会话建立阶段,主叫方和被叫方之间通过SDP信息交换媒体会话的参数,例如音频编码格式、传输协议等。

双方根据SDP信息配置自己的媒体传输设备,并通过RTP(Real-time Transport Protocol)进行音频传输。

4. 呼叫终止阶段呼叫终止阶段可以由任一方发起。

当一方决定终止呼叫时,它会发送BYE消息给对方,表示结束呼叫。

接收到BYE消息的一方将发送一个200 OK响应消息作为确认。

然后,双方可以释放媒体资源并关闭SIP会话。

二、SIP协议分析1. SIP消息格式SIP协议使用文本格式传输消息,每个消息由起始行、首部字段和消息主体组成。

起始行包含了请求方法或响应状态码,首部字段包含了一系列的键值对,用于描述消息的属性和参数。

消息主体可选,用于传输一些附加数据。

2. SIP地址SIP地址采用SIP URI(Uniform Resource Identifier)格式,类似于电子邮件地址。

SIP基本呼叫流程

SIP基本呼叫流程

SIP基本呼叫流程SIP(Session Initiation Protocol)是一种基于IP网络的信令协议,用于建立、修改和终止多媒体会话,包括语音、视频和即时通讯等。

下面将详细介绍SIP的基本呼叫流程。

SIP的基本呼叫流程如下:1. 注册:首先,用户需要向SIP服务器注册自己的地址信息。

用户的地址信息包括SIP URI(Uniform Resource Identifier)、用户名、密码等。

注册操作是SIP协议中的一个非必需步骤,是为了能够将用户的地址信息与用户的通信设备进行绑定,方便其他用户能够找到用户并进行通信。

3. 定位:SIP服务器接收到呼叫请求后,需要对目的地址进行定位。

定位的目的是找到目的用户所在的网络和设备,以便向其发送呼叫请求。

定位的过程可以通过DNS(Domain Name System)解析等方式进行。

4.会话建立:一旦SIP服务器找到了目的用户,它将会话建立请求发送给目的用户所在的设备。

目的设备收到建立请求后,如果接受呼叫,则向SIP服务器发送会话建立响应。

5.会话描述:在会话建立响应中,目的设备可以附带一个会话描述文件,该文件用于描述会话的具体规格,包括媒体类型(音频、视频等),编码方式等。

6.会话修改:在会话描述中,如果需要对会话规格进行修改,可以发送会话修改请求,并在会话修改响应中附带修改后的会话描述文件。

会话修改可以用于增加或删除会话中的媒体流,改变编码方式等。

8.会话终止:当用户希望结束会话时,可以发送会话终止请求。

会话终止请求会通过SIP服务器传递给目的设备,目的设备收到请求后会向SIP服务器发送会话终止响应。

9.会话释放:一旦SIP服务器收到会话终止响应,它将释放会话资源,并向呼叫发起方发送一个会话释放响应。

以上就是SIP基本呼叫流程的详细介绍。

SIP常被用于VoIP(Voice over IP)等应用中,可以实现语音呼叫、视频通话、即时消息等功能。

通过理解SIP的基本呼叫流程,可以更好地理解和使用SIP协议。

SIP呼叫流程

SIP呼叫流程

REGISTER(1)
200 OK(2)
6
注消流程(说明)
(1)终端向代理服务器送REGISTER消息注消, (1)终端向代理服务器送REGISTER消息注消, 其头中的expire字段置0 其头中的expire字段置0 (2)代理服务器收到后回送200 OK响应,并 (2)代理服务器收到后回送200 OK响应,并 将该用户有关的信息从数据库中注消
终端代理B
ACK(13)
18
ACK(14)
被叫无应答流程(一)(说明) 被叫无应答流程(一)(说明)
(1)用户A发起一路呼叫,终端代理A向代理服务器发Invite请求消息; (1)用户A发起一路呼叫,终端代理A向代理服务器发Invite请求消息; (2)代理服务器向被用户的终端代理B转发该Invite请求; (2)代理服务器向被用户的终端代理B转发该Invite请求; (3)代理服务器向终端代理A回送100 Trying响应,表示呼叫已在处理中; (3)代理服务器向终端代理A回送100 Trying响应,表示呼叫已在处理中; (4)终端代理B向代理服务器回送100 Trying,告知代理服务器呼叫正在处 (4)终端代理B向代理服务器回送100 Trying,告知代理服务器呼叫正在处 理; (5)被叫用户振铃,终端代理B向代理服务器送180 Ring响应; (5)被叫用户振铃,终端代理B向代理服务器送180 Ring响应; (6)代理服务器向终端代理A (6)代理服务器向终端代理A转发响应消息; (7)被叫久振铃无应答,终端代理A判断超时后,向代理服务器送Cancel消 (7)被叫久振铃无应答,终端代理A判断超时后,向代理服务器送Cancel消 息放弃该呼叫; 息放弃该呼叫; (8)代理服务器收到Cancel消息后,向终端代理A回送响应; (8)代理服务器收到Cancel消息后,向终端代理A回送响应; (9)代理服务器将Cancel消息转发给终端代理B; (9)代理服务器将Cancel消息转发给终端代理B; (10)终端代理B向代理服务器回送200 OK响应; (10)终端代理B向代理服务器回送200 OK响应; (11)终端代理B向代理服务器送487请求撤销消息; (11)终端代理B向代理服务器送487请求撤销消息; (12)代理服务器收到后回送ACK确认; (12)代理服务器收到后回送ACK确认; (13)代理服务器向终端代理A 487请求已撤销消息; (13)代理服务器向终端代理A送487请求已撤销消息; (14)终端代理A向代理服务器回送ACK。 (14)终端代理A向代理服务器回送ACK。 注意: 上述步骤中(10)和(12)无严格的顺序关系 上述步骤中(10)和(12)无严格的顺序关系

VOLTE-SIP完整信令解析

VOLTE-SIP完整信令解析

VOLTE-SIP完整信令解析1.主叫与被之间的SIPSIPSIP呼叫业务流程如下:呼叫业务流程如下:2. SIP信令完整解析:(1). 用户 A ,摘机对用户 B 发起呼叫,用户 A 首先向 AS 服务器发起 INVITE 请求。

(2). AS 服务器回复 100 Trying 给用户 A 说明收到 INVITE 请求。

(3). AS 服务器通过认证确认用户认证已通过后,向被叫终端 B 转送 INVITE 请求。

(4). 用户 B 向 AS 服务器送呼叫处理中的应答消息, 100 Trying 。

(5). 用户 B 向 AS 服务器送 183 Session Progress 消息,提示建立对话的进度信息。

(此时被叫 QCI1 专用承载建立)(6). AS 服务器向主叫终端 A 转送 183 Session Progress 消息,终端 A 了解到整个 Session 的建立进度消息。

(7). 终端A 向AS 服务器回复临时应答消息PRACK ,表示收到183 Session Progress 消息。

(此时主叫 QCI1 专用承载建立)(8). AS 服务器向被叫终端 B 转送临时应答消息 PRACK ,终端 B 了解到终端 A 收到 183 Session Progress 消息。

(9). 被叫终端B 向AS 服务器发送200 OK 消息,表示183 Session Progress 请求已经处理成功。

(10). AS 服务器向主叫终端 A 转送 200 OK 消息。

(11). 主叫终端 A 向 AS 服务器发送 UPDATE 消息,意在与被叫终端 B 协商相关 SDP 信息。

(12). AS 服务器向被叫终端 B 转送 UPDATE 消息。

(13). 被叫终端 B 向 AS 服务器发送 200 OK 消息,表示 UPDATE 请求已经处理成功。

( 14). AS 服务器向主叫用户 A 转送 200 OK 消息,通知用户 AUPDATE 请求已经处理成功。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、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报文:
四、常见的SIP消息类型:
INVITE:发起会话请求,邀请用户加入一个会话,会话描述含于消息体中。

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

被叫方必须在成功响应消息的消息体中指明其希望接受哪些媒体,还可以指示其将发送的媒体。

如果收到的是关于参加会议的邀请,被叫方可以根据Call-ID或者会话描述中的标识确定用户已经加入该会议,并返回成功响应消息。

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

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

BYE:结束会话
CANCEL:取消尚未完成的请求,对于已完成的请求则没有影响
REGISTER:注册
OPTIONS:查询服务器的能力
五、常见的响应消息状态码:。

相关文档
最新文档