拓扑
center- mc- proxy(gkclient)---DMA(gk)---rmx
center- mc - cs---------------DMA-------rmx
h323 协议栈
搜 H.323协议手册
1 init
通过worksize建立50个link节点,它们被叫做HsRas。
2 register 每20s向DMA发送一次hsRas .50个后,再循环。
3 create conf的时候,取一个hsRas
协议arq,DRQ等。DRQ是断call,有问题的时候常在这里找RC。
4 invite, connect 等交互
,,,,,,,,,,,,,,,,,,,,,
sip 协议
搜SIP协议原理及应用;sip(rfc2543)写的非常好.
1 3次握手.
invite
200 ok
ack
2 invite第一个message
trying防止client重发
ringing 是两面
3 3.1Alice : invite
DMA:trying
DMA:ring
3.2 bob: 200 ok 接电话了
200ok 接电话以后
信令能力集协商
互发能力集
3.3 200 ok是两个意思
alice: 停止ring (ring居然是alice这面)
发送ack
3.4 alice---bob知道了ip,直接通讯
不需要DMA了,ip是通过第一个invite中的Contact域获取的
sip的三次握手
invite/200/ack
知道了ip,绕开了DMA
3.5 re-invite 改变会话属性
re-invite/200/ack
re-inivte/488 不改变
3.6 sip是分层协议
第一层 bnf
第二层 传输层: 发送请求和接收应答
第三层:事务层
sip 6种方法:register, 注册
inivite ,ack,cancel 会话
bye 结束会话
3.7 返回值意义(1xx,2xx...)
3.8 call state:
CallID:3 Call state :"disconnected" 0
CallID:3 Rate set to 512, Call state : connecting
CStkCall::ReportCodec: call state 'RingBack'
CStkCall::ReportCodec: call state 'Connected'
CStkCall::NewCallState
Dialog 'idca29ffb5' State
trans state:
new UA Client INVITE trans state 'callingTrying'
UA Client INVITE INVITE trans state 'callingTrying'->'proceeding'
new UA Client Non-INVITE trans state 'callingTrying'
UA Client INVITE INVITE trans state 'proceeding'->'terminated'
CStateInviteClient::OnEvResponse new CAck()..6
new UA Client INVITE trans state 'callingTrying',
UA Client INVITE INVITE trans state 'callingTrying'->'proceeding'
UA Client INVITE INVITE trans state 'proceeding'->'terminated'
CStateReInviteClient::OnEvResponse new CAck()..8
new UA Client Non-INVITE trans state 'callingTrying'
UA Client Non-INVITE INFO trans state 'callingTrying'->'completed'
4 lync
subscribe :include content owner, present etc info
notify : any change from client each time, eg metux , change content owner,. MS will receive notify info
,,,,,
-
- Call flows
- Incoming call scenario
- Call flows
-
-
- Outgoing call scenario
-
-
-
- BFCP flow of client send content
-
-
-
- BFCP flow of server and client send content alternately
-
-
-
- BFCP Message handling in CSipEndpoint
-
- State Machines
- Call State Machine
Connection State Machine
,,,,,,,,,,,,,,,,,,
sip 协商主要是ip 和能力集协商
notes: sip call:表示整个call ; dialog :表示MS和其中一个rmx的连接到结束,叫dialog,与另一个rmx叫另一个dialog;必须有多个rmx才会有dialog。
transaction: 一个send、receive叫一个transaction
session 是媒体概念。在信令协商之后,走媒体叫session
sip Outbound proxy is stun ??
10、如果我的电话机使用了STUN服务,能够正常地工作,我还需要设置外出代理服务器(Outbound proxy)吗?
不需要设置Outbound proxy。
其他sip协议内容:
http://www.cnblogs.com/stevensfollower/p/5591017.html
rfc 3261