kaltura / nginx-srt-module

Nginx SRT/TCP gateway
GNU Affero General Public License v3.0
82 stars 15 forks source link

hi, srt module drop packet. #3

Open shenlei190810 opened 2 years ago

shenlei190810 commented 2 years ago

I have two ecs server, one in Beijing, China; and another in Frankfurt, Germany. I have test the ping rtt is about 200ms. I have deployed the srt server in the two ecs, ecs in Beijing as srt-client, and ecs in Frankfurt as srt-server. Now I send tcp data in beijing, and the srt-client trans it to srt packet , then proxy to srt-server, the srt-server trans the srt packet to tcp server. 未命名文件 (4)

as rtt is about 200ms, so I set the recv_latency = 800ms, as the below shows. srt { server { listen 4321; proxy_pass udp://127.0.0.1:20000; recv_latency 800ms; } }

but in fact there are still many packets are dropped because of receive timeout, as the below shows. 4BD0EFEF-C16E-4c65-AEEC-BE85ADB3EB9A

the str should be continuous numbers, but in fact there are too many lost by srt module.

kaltura-hooks commented 2 years ago

Hi @shenlei190810,

Thank for you reporting an issue and helping improve Kaltura!

To get the fastest response time, and help the maintainers review and test your reported issues or suggestions, please ensure that your issue includes the following (please comment with more info if you have not included all this info in your original issue):

For general troubleshooting see: https://github.com/kaltura/platform-install-packages/blob/Jupiter-10.13.0/doc/kaltura-packages-faq.md#troubleshooting-help

If you only have a general question rather than a bug report, please close this issue and post at: http://forum.kaltura.org

Thank you in advance,

erankor commented 2 years ago

This stuff is handled by libsrt, not by this module... the only thing that may be related to this module is if you compiled in debug or something, and the load caused by the log messages make the thread unavailable to handle the received packets. I suggest you run this test with some other tool that supports SRT, e.g. ffmpeg. You can also try with the libsrt sendfile/recvfile examples, but they use file mode, which is very different.

maxsharabayko commented 2 years ago

Related libsrt issue https://github.com/Haivision/srt/issues/2249