Brekeke SIP Server drops RTP Packets (G.722/H.264 stream)

Discuss any topic about Brekeke SIP Server.

Moderator: Brekeke Support Team

Post Reply
ancysmk
Posts: 15
Joined: Sun Jun 15, 2014 5:44 pm

Brekeke SIP Server drops RTP Packets (G.722/H.264 stream)

Post by ancysmk »

1. Brekeke Product Name and Version:
Brekeke SIP Server Advanced version 3.4.6.3/411
2. Java version:
1.8.0_40
3. OS type and the version:
Windows 2008 R2 Standard
4. UA (phone), gateway or other hardware/software involved:
SIP UA (tx : 1200kbps/30fps /max frame size is 52400bytes)
5. Your problem:
RTP relay option is enabled.
SIP UA_1(local) send audio/video stream to SIP UA_2(remote) thru
the SIP Server.
SIP Server receive all rtp packets from "UA_2" but SIP Server can't
send some of audio/video packets received from UA_2 to UA_1.
when I capture all packet in sip server with wireshark, some packet
may be droped in relaying.
if you need the packet dump, I can send you.
semin kim
Harold
Posts: 289
Joined: Sun Sep 21, 2008 10:31 pm
Location: Japan

Post by Harold »

Add this setting in [Configuration]->[Advanced] page.

Code: Select all

net.rtp.video.size = 52400
This setting defines the max size of video RTP packet buffer.
ancysmk
Posts: 15
Joined: Sun Jun 15, 2014 5:44 pm

Post by ancysmk »

I have already added the setting like below.
net.rtp.video.size = 8000

I will change the size value and try again.
I need your help about that some audio packet was droped in relay.
semin kim
ambrosio
Posts: 215
Joined: Thu Mar 27, 2008 12:20 pm

Post by ambrosio »

8000 is too small to buffer 52400's RTP frame.

also how about the max size of audio packet?
ancysmk
Posts: 15
Joined: Sun Jun 15, 2014 5:44 pm

Post by ancysmk »

I have set the size to 80000, but it is of no effect.
I think the brekeke drops also the audio packets.
Max size of the audio packet is 160 bytes.
I analyzed the packet dump captured with wireshark in sip server machine.
I noticed something strange in the analysis.
Although number of packets transmitted is smaller than packets received in relaying,
Sequence number of which RTP packet is transmitted by sip server is correct.
Dose the brekeke modify sequence number of RTP packet in relaying ?
If you need the packet dump, I can give you.

Below is our RTP setting of Brekeke Sip server.
RTP relay : auto
RTP relay(UA on this machine) : off
RTP relay even with ICE : no
port mapping : source port
Send UA's remote address : auto
Label Attribute : off
Content Attribute : on
Order of the 'm' line : on
semin kim
ambrosio
Posts: 215
Joined: Thu Mar 27, 2008 12:20 pm

Post by ambrosio »

try " net.rtp.native=false " in [Configuration]->[Advanced] page.
ancysmk
Posts: 15
Joined: Sun Jun 15, 2014 5:44 pm

Post by ancysmk »

it's working well but the brekeke still drops 2~3 video RTP Packets
for 5 minute in relaying.
how does the configuration("net.rtp.native=false") affect the brekeke?
I don't found it in administrator guide.

Specific SIP UA sent rtcp-bye meesage to other side UA after 15minute in relaying between two SIP UA behind same NAT(far-end).
SIP UA is cisco c20/polycom realpresence.
If I restart the brekeke several times, this wouldn't happen.
Do you have idea about that ?
semin kim
ambrosio
Posts: 215
Joined: Thu Mar 27, 2008 12:20 pm

Post by ambrosio »

When does drop happen? Is it at the beginning of RTP session?

The setting "net.rtp.native=false" disables OS's native code for relaying RTP packets. If the value is false, SIP server uses the routine written by Java for RTP-relay.


Could you send the captured file to support@brekeke.com ?

Thanks
ancysmk
Posts: 15
Joined: Sun Jun 15, 2014 5:44 pm

Post by ancysmk »

I will check when the drop happen and tell you.

If I disable the option,
Does it lack as much performance compared to use TRUE option in relaying rtp packets ?
semin kim
ambrosio
Posts: 215
Joined: Thu Mar 27, 2008 12:20 pm

Post by ambrosio »

> Does it lack as much performance compared to use TRUE option in relaying rtp packets ?

YES.

"net.rtp.native=true" (default) uses OS's native code which provides higher performance.

"net.rtp.native=false" uses Java based code.

If you can send us support@brekeke.com the packet file, our engineer analyzes packets.
ancysmk
Posts: 15
Joined: Sun Jun 15, 2014 5:44 pm

Post by ancysmk »

I sent the captured file to your email.
semin kim
ambrosio
Posts: 215
Joined: Thu Mar 27, 2008 12:20 pm

Post by ambrosio »

Hi semin,

Yes we received it. Thank you.

Our developer recommends the following setting in [Configuration]->[Advanced] page.

- Remove "net.rtp.native=false"

- Add the new line.
net.rtp.udp.recv.bufsize=80000
ancysmk
Posts: 15
Joined: Sun Jun 15, 2014 5:44 pm

Post by ancysmk »

Thanks for your reply.

I applied the option which is "net.rtp.udp.recv.bufsize=80000" you told me but I am afraid the issue might not be cleared.

I sent the captured file and result of test.

thanks,
semin kim
ancysmk
Posts: 15
Joined: Sun Jun 15, 2014 5:44 pm

Post by ancysmk »

When I applied the option which is " rtp.behindnat.send=true",
Test result is good.
I want to know whether packets is discarded in twenty more rtp session relayed at brekeke (include video/audio).
How can I get log at brekeke to detect whether packet is dropped or not in relaying? because it is difficult to detect the packets discarded in the condition by wireshark.
semin kim
Post Reply