H.323描述符不同导致电话不通案例
问题描述:
如下组网,从电话1拨打电话2,电话2摘机后没有任何声音。3680E2是一台已经运行了1年的设备,版本为1.74-0010,跟其他点VOIP通信正常。3680E1是新设备,版本1.74-0107
电话1---西门子PBX----E1VI----3680E 1------IP------3680E 2----E1VI----西门子PBX---电话2
原因分析:
H323描述符是在H323通话过程中用来判断是否为我们的设备,如果一样即为我们的设备,这个时候在收到TCS ACK时打开逻辑通道,否则需要收到MSD(主从决定)请求才打开逻辑通道。因此当我们设备之间互通,且两边的H323描述符不一致的情况下,呼叫建立过程会处于等待MSD的状态,而我们的设备是不会主动发MSD请求的,就无法打开逻辑通道(在调试信息中会只看到TCS/TCS ACK的消息,没有OLC/OLC ACK消息),造成摘机后电话没有声音。
我们VRP1.74版本在发展过程中,由于各种原因对H323描述符的确省值修改过多次,有“Huawei Gateway”、“Standard Gateway”、“Vrp Gateway”、“Default Gateway”,VRP1.74-0010版本的缺省值应该是“Standard Gateway”,VRP1.74-0107版本的确省值为“Vrp Gateway”,目前两个版本都无法配置成对方的确省值(因为要通过命令行配置带空格的字符串需要程序中特殊处理)。
解决方法有三个:
(1)配置为快起
(2)配置两个版本的描述符为一样的字符串
(3)修改代码,使0107的版本能够配置0010的缺省值,在最新版本配置H323描述符为“Standard Gateway”。配置方法:在voice视图下执行voip h323 Standard Gateway即可。
附:主叫端调试信息(打开debug voice ipp all)
[RouterB-voice]
IPP_VCC [ 0]: Receive CCSetup Msg: CallerNumber=200, CalledNumber=100,FacilityLen=0
IPP_VCC [ 0]: Send IPCallProceeding Msg when receive CCSetup Msg
IPP_VCC [ 0]: Get VOIP dialpeer 100 in CCSetup Msg
IPP_SOK [ 0]: Send H225 AsynSocket Request when receive CCSetup Msg
IPP_SOK [ 0]: Receive H225 AsynSock Ack, sokid=288, src=1720@169.254.100.2, dst=1720@169.254.100.2
IPP_225 [ 0]: Send Setup Msg when 225 socket created
IPP_225 [ 0]: Setup Msg FastCOnnect=False, Tunnel=False
IPP_225 [ 0]: Receive CallProceeding Msg, crv=53, FastStart=FALSE, tunnel=FALSE
IPP_225 [ 0]: Receive Alerting Msg crv=53, faststart=FALSE, tunnel=FALSE, h245=169.254.100.1,FacilityLen=0
IPP_VCC [ 0]: Send IPAlerting Msg when receive Alerting Msg
[RouterB-voice]
[RouterB-voice]
[RouterB-voice]//被叫摘机后,只有终端能力集协商过程,没有打开逻辑通道过程,听不到对方声音
IPP_225 [ 0]: Receive Connect Msg crv=53, faststart=FALSE, tunnel=FALSE, h245=169.254.100.1,FacilityLen=0
IPP_SOK [ 0]: H245 AsynSocket request when receive Connect Msg
IPP_VCC [ 0]: Send IPConnect Msg when receive Connect Msg
IPP_SOK [ 0]: Receive H245 AsynSock Ack, sokid=289, src=0@169.254.100.2, dst=1800@169.254.100.2
IPP_245 [ 0]: Send H245 TCS Req Msg when create a 245 socket
IPP_245 [ 0]: Receive H245 TCS Request Msg, Code=10
IPP_245 [ 0]: Send H245 TCS Ack Msg when receive TCS Req Msg
IPP_245 [ 0]: Receive H245 TCS Ack Msg
[RouterB-voice]
[RouterB-voice]
IPP_VCC [ 0]: Receive CCRelease Msg,FacilityLen=0
IPP_225 [ 0]: Send ReleaseComplete Msg when receive CCRelease Msg
IPP_C&C [ 0]: IPCCB is released
[RouterB-voice]
[RouterB-voice]disp cur
Now create configuration...
Current configuration
!
version 1.74
local-user 8041 service-type ftp password simple 8041
sysname RouterB
info-center console
info-center console debugging
firewall enable
aaa-enable
aaa accounting-scheme optional
undo idle-timeout
!
interface Aux0
async mode flow
link-protocol ppp
!
interface Ethernet0
ip address 169.254.100.2 255.255.0.0
!
interface Ethernet1
!
voice-setup
!
dial-program
dial-expansion calling 3.. 0103..
!
entity 100 voip
address ip 169.254.100.1
match-template 100
!
entity 200 pots
match-template 200
line 0
[RouterB-voice]entity 100
The voice entity's type is VoIP
[RouterB-voice-dial-entity100]
[RouterB-voice-dial-entity100]fast-connect //配置为快起,OK
[RouterB-voice-dial-entity100]
[RouterB-voice-dial-entity100]
[RouterB-voice-dial-entity100]
[RouterB-voice-dial-entity100]
[RouterB-voice-dial-entity100]
[RouterB]
[RouterB]
IPP_VCC [ 0]: Receive CCSetup Msg: CallerNumber=200, CalledNumber=100,FacilityLen=0
IPP_VCC [ 0]: Send IPCallProceeding Msg when receive CCSetup Msg
IPP_VCC [ 0]: Get VOIP dialpeer 100 in CCSetup Msg
IPP_SOK [ 0]: Send H225 AsynSocket Request when receive CCSetup Msg
IPP_SOK [ 0]: Receive H225 AsynSock Ack, sokid=288, src=1720@169.254.100.2, dst=1720@169.254.100.2
IPP_225 [ 0]: Send Setup Msg when 225 socket created
IPP_225 [ 0]: Setup Msg FastCOnnect=True, Tunnel=False
IPP_225 [ 0]: Receive CallProceeding Msg, crv=54, FastStart=FALSE, tunnel=FALSE
IPP_225 [ 0]: Receive Alerting Msg crv=54, faststart=TRUE, tunnel=FALSE, h245=NONE,FacilityLen=0
IPP_VCC [ 0]: Send IPAlerting Msg when receive Alerting Msg
IPP_SOK [ 0]: Send RTP/RTCP Sock Req when receive Alerting Msg
IPP_SOK [ 0]: Rcv DATA SockAck, ids=289:290, RTP=16676@169.254.100.2, RTCP=16677@169.254.100.2
IPP_VPP [ 0]: Send Codec Msg when create RTP/RTCP socket OK: CodecType = G729
IPP_225 [ 0]: Receive Connect Msg crv=54, faststart=FALSE, tunnel=FALSE, h245=NONE,FacilityLen=0
IPP_VCC [ 0]: Send IPConnect Msg when receive Connect Msg
IPP_VPP [ 0]: Send voice packet 100 Len = 42
IPP_VPP [ 0]: Send voice packet 200 Len = 42
IPP_VCC [ 0]: Receive CCRelease Msg,FacilityLen=0
IPP_225 [ 0]: Send ReleaseComplete Msg when receive CCRelease Msg
IPP_C&C [ 0]: IPCCB is released
[RouterB]
[RouterB]entity 100
The voice entity's type is VoIP
[RouterB-voice-dial-entity100]
[RouterB-voice-dial-entity100]undo fast-connect //改为慢起后,不OK
[RouterB-voice-dial-entity100]
[RouterB-voice-dial-entity100]
IPP_VCC [ 0]: Receive CCSetup Msg: CallerNumber=200, CalledNumber=100,FacilityLen=0
IPP_VCC [ 0]: Send IPCallProceeding Msg when receive CCSetup Msg
IPP_VCC [ 0]: Get VOIP dialpeer 100 in CCSetup Msg
IPP_SOK [ 0]: Send H225 AsynSocket Request when receive CCSetup Msg
IPP_SOK [ 0]: Receive H225 AsynSock Ack, sokid=288, src=1720@169.254.100.2, dst=1720@169.254.100.2
IPP_225 [ 0]: Send Setup Msg when 225 socket created
IPP_225 [ 0]: Setup Msg FastCOnnect=False, Tunnel=False
IPP_225 [ 0]: Receive CallProceeding Msg, crv=55, FastStart=FALSE, tunnel=FALSE
IPP_225 [ 0]: Receive Alerting Msg crv=55, faststart=FALSE, tunnel=FALSE, h245=169.254.100.1,FacilityLen=0
IPP_VCC [ 0]: Send IPAlerting Msg when receive Alerting Msg
IPP_225 [ 0]: Receive Connect Msg crv=55, faststart=FALSE, tunnel=FALSE, h245=169.254.100.1,FacilityLen=0
IPP_SOK [ 0]: H245 AsynSocket request when receive Connect Msg
IPP_VCC [ 0]: Send IPConnect Msg when receive Connect Msg
IPP_SOK [ 0]: Receive H245 AsynSock Ack, sokid=289, src=0@169.254.100.2, dst=1800@169.254.100.2
IPP_245 [ 0]: Send H245 TCS Req Msg when create a 245 socket
IPP_245 [ 0]: Receive H245 TCS Request Msg, Code=10
IPP_245 [ 0]: Send H245 TCS Ack Msg when receive TCS Req Msg
IPP_245 [ 0]: Receive H245 TCS Ack Msg
IPP_VCC [ 0]: Receive CCRelease Msg,FacilityLen=0
IPP_225 [ 0]: Send ReleaseComplete Msg when receive CCRelease Msg
IPP_C&C [ 0]: IPCCB is released
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作