sip-h323-lync 协议

来源:互联网 发布:淘宝解除手机号绑定 编辑:程序博客网 时间:2024/06/03 21:56

拓扑
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




原创粉丝点击