资源描述
H:\精品资料\建筑精品网原稿ok(删除公文)\建筑精品网5未上传百度
SIP呼叫典型流程图解及详细解释
目录
1. Sip协议的相关术语: 2
2. 注册流程 4
3. 注销流程: 6
4. 基本呼叫建立过程: 7
5. 会话更改流程: 8
6. 正常呼叫释放过程: 10
7. 被叫忙呼叫释放: 11
8. 被叫无应答流程一: 12
9. 被叫无应答流程二: 13
10. 遇忙呼叫前转: 14
11. 无应答呼叫前转流程: 16
12. 呼叫保持: 18
13. 呼叫等待: 21
14. 盲转流程 25
15. 询问转的流程 27
16. 彩铃的流程 28
17. 三方通话 31
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. 被叫忙呼叫释放:
8. 被叫无应答流程一:
9. 被叫无应答流程二:
10. 遇忙呼叫前转:
因在同一ippbx下, 因此没有回486的过程, 直接ippbx直接呼叫被叫号码
11. 无应答呼叫前转流程:
未接通振铃超时的消息
第二被叫接通
12. 呼叫保持:
13. 呼叫等待:
注意: 用户a听到的嘟嘟有别的号码打入提示音是第五步, 回180消息后, 用户板发给终端的, proxy发给用户的rtp流中没有此音。
最后是释放过程
14. 盲转流程
Invite和200ok里的媒体属性
Proxy把804到proxy间的媒体流和proxy到813的呼叫的媒体流连接起来, 这样617就能够挂机, 804能听到813那边的提示音了。
REFER用于由一个用户代理来指另一个用户代理访问URI的对话框。
· REFER必须包含一个Refer-To头。这是参考一个强制性的头。
· REFER能够在内部或在对话外发送。
· 202 Accepted 将引发REFER请求这表明其它用户代理已经接受了参考
15. 询问转的流程
16. 彩铃的流程
普通的彩铃实现经过proxy回sdp的183消息, 实现远端放音, 见下图:
呼叫登记有同振业务固定电话时, 流程不同, 需要p-early-media字段的支持, 请求中必须有100rel的支持, 用update来实现会话的更新。
同振业务, 固定电话振铃比较快, 先接通固定电话的普通回铃音, 然后手机才能接通, 这时放手机的彩铃, 先183接通固定电话普通彩铃, 然后再update会话更新接通手机彩铃, 被叫接通后update完成会话更新, 接通话路。被叫手机摘机后, 用update更新媒体, 200ok不含sdp消息。
在183和update消息中支持两个媒体流, p-early-media和content-disposition: session
带p-early-media为早期媒体, 回铃音, content-disposition为普通的通话。
17. 三方通话
三方通话操作步骤是:
A. a804拨打b617, 振铃后b617摘机接通。
B. b617拍插簧后, 按813呼叫c813, 听回铃音后接通, a804听保持音。
C. b617拍插簧后, c813听保持音, 按2, 和a804通话。
D. b617拍插簧后, 按3, 进入三方通话过程。
其中关键点: b617每次拍插簧, a804均被修改为单向receive only, 听保持音。待b617按键结束后, 均修改媒体为双向。
上面过程的抓包分析:
a)
b)
c)
d) 下一个流程
展开阅读全文