[ previous ] [ next ] [ threads ]
 To :  Yate Mailgroup <yate@v...>
 From :  Kiarash Ghiaseddin <koochy@a...>
 Subject :  Re: [yate] H.323 early media - one way audio RTP problem
 Date :  Sat, 16 Jul 2011 20:07:03 +0200
Hi,

I've made some more tests and it turned out that yate 3.3.2 could have an bug related to yrtp and h323/proxying. I've replaced yate to version 3.2.0 stable and everything worked without any problem. There were absolutely no changes to the Test Setup expect the yate version. 
After further analysing the traces, I've noticed that yate 3.3.2.0 stable has problems to create one RTP Stream on the Sip call leg. 

Test:
	Callflow:
	caller  - (h323) -> yate - (sip) -> called

	So yate is a h323/sip proxy here. In version 3.3.2 the two RTP streams on H323 side setup correctly, but on the sip side only one RTP stream is established, the RTP stream from yate to called (rtp outgoing on sipside) is missing. In yate version 3.2.0 there is no such a problem. If you want I can send you more informations, traces, logs. I'm running ubuntu 10.04 LTS 64bit with pwlib, openh323 from the yate site.

Best Regards 

Asymetrixs.net
Koochy Black

Mailto:	koochy@a...




On 15.07.2011, at 11:28, Vedran Zeljeznak wrote:

> sorry for the delay, i've uploaded pcap dumps and yate logs for both
> cases (yrtp and OpenH323 rtp usage) to
> http://www.2shared.com/file/5JdvkcrI/h323chan-rtp-testtar.html
> 
> ---
> Vedran Zeljeznak
> 
> 
> 
> 
> ---------- Forwarded message ----------
> From: Vedran Zeljeznak 
> Date: Tue, Jul 12, 2011 at 1:58 PM
> Subject: Re: [yate] H.323 early media - one way audio RTP problem
> To: Paul Chitescu 
> Cc: yate@v..., Kiarash Ghiaseddin 
> 
> 
> hello Paul,
> 
> i've attached pcap files and yate.log files for two rtp
> implementations on h323chan: external (yrtp) and native (openh323).
> 
> the ip addresses used in this tests are: softphone 10.7.6.132, yate
> 172.16.1.84, voice gateway 10.7.2.7.
> 
> please tell me if you need any other information.
> ---
> Vedran Zeljeznak
> 
> 
> 
> On Tue, Jul 12, 2011 at 1:38 PM, Paul Chitescu  wrote:
>> Hi!
>> 
>> Can you upload the capture somewhere?
>> 
>> I want to see if:
>> - Media addresses are correctly exchanged in signaling
>> - RTP packets are actually received / sent to the proper addresses
>> 
>> I saw a decoded capture on the list but there's much more info not displayed.
>> 
>> Paul
>> 
>> 
>> On Tuesday 12 July 2011 02:24:30 pm Kiarash Ghiaseddin wrote:
>>> Seems that you are right.. I've tested with 4 calls and it works. Audio is
>>> working...tcpdump shows that h245tunnling is on and faststart is off. I'll
>>> trie to retest it with old external_rtp=yes again... Is it a yrtp bug? What
>>> you think?
>>> 
>>> 
>>> Asymetrixs.net
>>> Koochy Black
>>> 
>>> Mailto:       koochy@a...
>>> 
>>> On 12.07.2011, at 13:12, Vedran Zeljeznak wrote:
>>>> i didn't say it was the solution :-).
>>>> 
>>>> ---
>>>> Vedran Zeljeznak
>>>> 
>>>> 
>>>> 
>>>> On Tue, Jul 12, 2011 at 12:57 PM, Kiarash Ghiaseddin
>>>> 
>>>>  wrote:
>>>>> Thank you for the Information I'll check out and write back.
>>>>> But using the openh323 rtp stack should be real slow compared to
>>>>> yrtp.....I'll try it.
>>>>> 
>>>>> 
>>>>> 
>>>>> Asymetrixs.net
>>>>> Koochy Black
>>>>> 
>>>>> Mailto: koochy@a...
>>>>> 
>>>>> On 12.07.2011, at 12:50, Vedran Zeljeznak wrote:
>>>>>> Looks like yrtp is the problem.
>>>>>> When i set 'external_rtp=no' in h323chan.conf which enables native
>>>>>> (OpenH323) RTP stack for h323chan then early media works and there are
>>>>>> no problems with one way media.
>>>>>> 
>>>>>> ---
>>>>>> Vedran Zeljeznak
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> On Tue, Jul 12, 2011 at 8:59 AM, Vedran Zeljeznak
>>>>>> 
>>>>>>  wrote:
>>>>>>> it looks like whenever OpenH323 stack through Yate h323chan opens a
>>>>>>> LogicalChannel and RTP channel on H.225 messages prior to H.225
>>>>>>> CONNECT message audio doesn't work at all or you get one way audio.
>>>>>>> 
>>>>>>> Does anybody have an idea where to start looking for a solution to
>>>>>>> this problem?
>>>>>>> 
>>>>>>> ---
>>>>>>> Vedran Zeljeznak
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> On Mon, Jul 11, 2011 at 3:13 PM, Kiarash Ghiaseddin
>>>>>>> 
>>>>>>>  wrote:
>>>>>>>> Hi,
>>>>>>>> 
>>>>>>>> I'm having a problem like this for some times now. Have you checked
>>>>>>>> the RTP address which are used? (connect to rmanager sniffer enable,
>>>>>>>> sniffer filter chan.rtp). It looks like rtp is transmitted over the
>>>>>>>> yate server. My setup is a bit different I have h323 to sip proxy,
>>>>>>>> but exactly the same problem. Just oneway audio....and ther is no nat
>>>>>>>> or anything else.... I've even seen in wireshark that RTP stream form
>>>>>>>> called to caller is g723 and from caller to called g729 ....
>>>>>>>> strange.... so one call two different codecs....but just one way
>>>>>>>> audio.... Well I think, if everything else is configured correct
>>>>>>>> (ips, firewall, port, Fast Start, H245 Tunneling)...that it should be
>>>>>>>> codec problem....but I'm not sure....
>>>>>>>> 
>>>>>>>> I've send my callflow to... as you can see RTP is send in both
>>>>>>>> directions but only way audio while calling...strange....I'm pretty
>>>>>>>> sure the same configuration on other systems ( before version 3.1)
>>>>>>>> This behaviour is for yate 3.3.2-stable.....
>>>>>>>> 
>>>>>>>> Has anybody an idea?
>>>>>>>> 
>>>>>>>> |Time     | Inital Server                       |
>>>>>>>> |
>>>>>>>> |         |                   | Yate Server    |
>>>>>>>> |
>>>>>>>> |29.013   |         setup OLC (setup OLC (A g729 g729 g7231 g7231 ...
>>>>>>>> | TCS (TCS (A g729 g7231 g7231 gsmFR)  MSD           |H225 From:
>>>>>>>> | 02181644444 To:1505 TunnH245:on FS:on
>>>>>>>> |
>>>>>>>> |         |(44572)  ------------------>  (1720)   |
>>>>>>>> |
>>>>>>>> |29.049   |         callProceeding                |H225 TunnH245:on
>>>>>>>> | FS:off
>>>>>>>> |
>>>>>>>> |         |(44572)  <------------------  (1720)   |
>>>>>>>> |
>>>>>>>> |29.091   |          TCS (TCS (A g711U gsmFR g7231 g7231 g7231
>>>>>>>> | g72...g  TCSAck   MSDAck           | H245 terminalCapabilitySet
>>>>>>>> | H245 terminalCapabilitySetAck H245 masterSlaveDeterminationAck
>>>>>>>> |
>>>>>>>> |         |(44572)  <------------------  (1720)   |
>>>>>>>> |
>>>>>>>> |29.222   |           TCSAck   MSDAck             | H245
>>>>>>>> | terminalCapabilitySetAck H245 masterSlaveDeterminationAck
>>>>>>>> |
>>>>>>>> |         |(44572)  ------------------>  (1720)   |
>>>>>>>> |
>>>>>>>> |29.228   |          RTDR     |                   | H245
>>>>>>>> | roundTripDelayRequest
>>>>>>>> |
>>>>>>>> |         |(44572)  <------------------  (1720)   |
>>>>>>>> |
>>>>>>>> |29.355   |           RTDResponse                 | H245
>>>>>>>> | roundTripDelayResponse
>>>>>>>> |
>>>>>>>> |         |(44572)  ------------------>  (1720)   |
>>>>>>>> |
>>>>>>>> |36.029   |          TCS (TCS (AB g729A g729)           | H245
>>>>>>>> | terminalCapabilitySet
>>>>>>>> |
>>>>>>>> |         |(44572)  <------------------  (1720)   |
>>>>>>>> |
>>>>>>>> |36.160   |           TCSAck  |                   | H245
>>>>>>>> | terminalCapabilitySetAck
>>>>>>>> |
>>>>>>>> |         |(44572)  ------------------>  (1720)   |
>>>>>>>> |
>>>>>>>> |36.167   |          OLC  (g729A)                 | H245
>>>>>>>> | openLogicalChannel
>>>>>>>> |
>>>>>>>> |         |(44572)  <------------------  (1720)   |
>>>>>>>> |
>>>>>>>> |36.294   |         RTP (g729)                    |RTP Num packets:6
>>>>>>>> | Duration:0.000s SSRC:0x6D89869
>>>>>>>> |
>>>>>>>> |         |(5028)   ------------------>  (20972)  |
>>>>>>>> |
>>>>>>>> |36.294   |           OLCAck  OLC  (g729A)           | H245
>>>>>>>> | openLogicalChannelAck H245 openLogicalChannel
>>>>>>>> |
>>>>>>>> |         |(44572)  ------------------>  (1720)   |
>>>>>>>> |
>>>>>>>> |36.294   |         RTP (g729)                    |RTP Num
>>>>>>>> | packets:187  Duration:0.004s SSRC:0x6D89869
>>>>>>>> |
>>>>>>>> |         |(5028)   ------------------>  (20972)  |
>>>>>>>> |
>>>>>>>> |36.305   |         RTP (g729)                    |RTP Num
>>>>>>>> | packets:903  Duration:23.080s SSRC:0x67A4CB2D
>>>>>>>> |
>>>>>>>> |         |(5028)   <------------------  (20972)  |
>>>>>>>> |
>>>>>>>> |36.306   |           OLCAck  |                   | H245
>>>>>>>> | openLogicalChannelAck
>>>>>>>> |
>>>>>>>> |         |(44572)  <------------------  (1720)   |
>>>>>>>> |
>>>>>>>> |36.318   |         RTP (g729)                    |RTP Num packets:36
>>>>>>>> |  Duration:0.699s SSRC:0x6D89869
>>>>>>>> |
>>>>>>>> |         |(5028)   ------------------>  (20972)  |
>>>>>>>> |
>>>>>>>> |41.658   |         connect   |                   |H225 TunnH245:on
>>>>>>>> | FS:off
>>>>>>>> |
>>>>>>>> |         |(44572)  <------------------  (1720)   |
>>>>>>>> |
>>>>>>>> |41.795   |         RTP (g729)                    |RTP Num
>>>>>>>> | packets:540  Duration:17.612s SSRC:0x3B0891B9
>>>>>>>> |
>>>>>>>> |         |(5028)   ------------------>  (20972)  |
>>>>>>>> |
>>>>>>>> |59.427   |         releaseComplete  ESC           |H225 Q931 Rel
>>>>>>>> | Cause (16):Normal call clearing
>>>>>>>> |
>>>>>>>> |         |(44572)  ------------------>  (1720)   |
>>>>>>>> |
>>>>>>>> |59.434   |         releaseComplete  ESC           |H225 Q931 Rel
>>>>>>>> | Cause (16):Normal call clearing
>>>>>>>> |
>>>>>>>> |         |(44572)  <------------------  (1720)   |
>>>>>>>> 
>>>>>>>> Asymetrixs.net
>>>>>>>> Koochy Black
>>>>>>>> 
>>>>>>>> Mailto: koochy@a...
>>>>>>>> 
>>>>>>>> On 11.07.2011, at 14:51, Vedran Zeljeznak wrote:
>>>>>>>>> hi,
>>>>>>>>> 
>>>>>>>>> I'm trying to setup Yate as a VoIP router and i have a problem with
>>>>>>>>> one way audio RTP problem when early media occurs in H.323 call.
>>>>>>>>> 
>>>>>>>>> I have two H.323 trunks, one between PBX and Yate and the other
>>>>>>>>> H.323 trunk is between Yate and H.323 provider (PSTN). When i dial
>>>>>>>>> from PBX (LegA) to Yate and route a call to H.323 provider (LegB)
>>>>>>>>> one way audio problem occures  and only audio from LegB to LegA is
>>>>>>>>> heard.
>>>>>>>>> 
>>>>>>>>> I've done some testing and the following statements best describe
>>>>>>>>> how one way audio happens when using Yate H.323 module:
>>>>>>>>> 1. Early media from LegB - When H.245 address parameter comes in
>>>>>>>>> H.225 messages before H.225 CONNECT message (CallProceeding,
>>>>>>>>> Alerting, ...) from LegB and H.245 negotiation is done before H.225
>>>>>>>>> CONNECT message then RTP stream from LegB to LegA works fine but RTP
>>>>>>>>> stream from LegA to LegB doesn't work.
>>>>>>>>> 2. No early media from LegB - When H.245 address parameter comes in
>>>>>>>>> H.225 CONNECT message from LegB and H.245 is negotiation is done
>>>>>>>>> during or after H.225 CONNECT message from LegB then RTP stream then
>>>>>>>>> RTP streams from LegA to LegB and from LegB to LegA work fine.
>>>>>>>>> 
>>>>>>>>> I've made a PCAP file with tcpdump and i've used wireshark to
>>>>>>>>> analyse H.323 traffic and from the network side everything looks OK,
>>>>>>>>> H.225 and H.245 messages occur in the right order and RTP packets
>>>>>>>>> come and go from LegA and LegB. I've looked in yate.log file and i
>>>>>>>>> haven't found any clues to why yate behaves this way. It looks like
>>>>>>>>> there is a problem with Yate somewhere but i can't pinpoint the
>>>>>>>>> problem in Yate.
>>>>>>>>> 
>>>>>>>>> Has anybody encountered this problem?
>>>>>>>>> 
>>>>>>>>> Do you have any ideas where to start to look for a problem, could it
>>>>>>>>> be in yRTP or OpenH323 module or have i misconfigured something?
>>>>>>>>> 
>>>>>>>>> ---
>>>>>>>>> Vedran Zeljeznak
>> 
>> 
>