<div dir="ltr"><div>If you can adapt it to rtpp_2_0 that would be great. This is our latest production code and it's pretty much superset of the 1.x feature and performance wise. I've just pushed some fixes to get it compile cleanly on Ubuntu using just GNU make.<br>
<br>Are you guys registered on github? I've been trying to add you to the repository ACL list but could not find anyone. Jev is off for few days, but he should be back tomorrow to finish migration of the website etc.<br>
<br>Thanks!<br><br></div>-Maxim<br><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jun 27, 2014 at 7:51 AM, Răzvan Crainea <span dir="ltr"><<a href="mailto:razvan@opensips.org" target="_blank">razvan@opensips.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi, Maxim!<br>
<br>
Good news, I am glad you are interested in these features. I will fork the project in our organization and push the requests there so you can revise them before merging them.<br>
We currently have them implemented for 1.2 - shall we adapt the changes for the master branch?<br>
<br>
Best regards,<br>
<br>
Razvan Crainea<br>
OpenSIPS Core Developer<br>
<a href="http://www.opensips-solutions.com" target="_blank">http://www.opensips-solutions.<u></u>com</a><div class=""><br>
<br>
On 06/20/2014 11:45 PM, Maxim Sobolev wrote:<br>
</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">
Hey Bogdan, thanks for sharing your ideas for us. In fact all of those<br>
items that you have listed are already on drawing board for the next 2-3<br>
months development here:<br>
<br>
- Send timeout notifications to different OpenSIPS servers (more than<br>
one)<br>
- Different timeout values for early media and established calls<br>
(longer for early, shorter for established)<br>
- Play music on hold in early media state<br>
- Detect on-hold and disable timeouts (search different solution here)<br>
- Do not send media timeout if other sessions are active (video and<br>
audio)<br>
- In bridge mode asymmetric should not be always assumed<br>
- Cache played files instead of reading them from the disk all the time<br>
<br>
I am particularly interested in the timeout notifications and cache for<br>
playing files, so maybe you can start with forking out main branch in<br>
the github and pushing your patches there? For playing cache, I have<br>
been planning to use mmap() and refcounting, so I am particularly<br>
curious which path did you take. We need this in order so that we can<br>
use rtpproxy to generate test streams for other rtpproxy, or maybe even<br>
to itself. I have started some automated regression testing suite here<br>
we will be pushing it our pretty soon.<br>
<br>
<br>
<br>
<br>
On Fri, Jun 20, 2014 at 2:22 AM, Bogdan-Andrei Iancu<br></div><div><div class="h5">
<<a href="mailto:bogdan@opensips.org" target="_blank">bogdan@opensips.org</a> <mailto:<a href="mailto:bogdan@opensips.org" target="_blank">bogdan@opensips.org</a>>> wrote:<br>
<br>
Hello Maxim, Hello Jev,<br>
<br>
Sorry for taking so long to answer to these emails.<br>
<br>
I'm really glad to find out that the rtpproxy project is actually<br>
moving along and even more, evolving - it is a critical component in<br>
our platforms (and for most OpenSIPS deployments) and we got a bit<br>
concerned about what is going on with rtpp. To be honest, we had on<br>
the table the possibility to fork it and continue by ourselves - but<br>
I do not want to re-invent the wheel or to pollute the environment<br>
with yet another relay relaying tool (anyhow, there is this<br>
rtpengine stuff popping around lately )<br>
<br>
We will be more than happy to get involved - as ideas, experience<br>
and work - in the rtpproxy evolution ; of course, if you guys are<br>
willing to accept it :). One again , rtpproxy is too important to<br>
us to stay neutral and lately there are more and more features<br>
touching both SIP and RTP ....so there is a strong need for a better<br>
integration between OpenSIPS and RTPProxy, IMHO.<br>
<br>
Now, technically speaking, the kind of problems we mainly faced are<br>
(a) scaling with HW (especially with the old single threaded model),<br>
(b) redundancy and (c) controlling streams (multiple streams<br>
audio/video in the same SIP session, on-hold, etc).<br>
<br>
What we did (and have as patches):<br>
- Send timeout notifications to different OpenSIPS servers (more<br>
than one)<br>
- Different timeout values for early media and established calls<br>
(longer for early, shorter for established)<br>
- Play music on hold in early media state<br>
- Detect on-hold and disable timeouts (search different solution<br>
here)<br>
- Do not send media timeout if other sessions are active (video<br>
and audio)<br>
- In bridge mode asymmetric should not be always assumed<br>
- Cache played files instead of reading them from the disk all<br>
the time<br>
<br>
<br>
Also we are looking into new features (things that we can work<br>
together) :<br>
- better structuring between sessions and streams<br>
- Send timeout notifications over UDP<br>
- Force specific ports in reply, if possible<br>
- Failover support<br>
- Provide statistics per session (even ended) back to OpenSIPS<br>
- Restart persistent<br>
- Change learning period (possibly linked with on-hold media<br>
disable)<br>
- ICE support<br>
- SRTP to RTP conversion<br>
<br>
Definitly we can look into transcoding part too - what we did is for<br>
Sangoma cards (so HW transcoding, not SW).<br>
<br>
<br>
<br>
So, we will look into the new work you guys did on rtpproxy - to<br>
have a starting point for the future planning. After that, if you<br>
agree on having us contributing to the rtpproxy, we can get involved<br>
in planning and actual development.<br>
<br>
Best regards,<br>
<br>
Bogdan-Andrei Iancu<br>
OpenSIPS Founder and Developer<br>
<a href="http://www.opensips-solutions.com" target="_blank">http://www.opensips-solutions.<u></u>com</a><br>
<br>
On 20.06.2014 02:16, Jev Björsell wrote:<br>
</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5">
Hi Guys,<br>
<br>
Some updates on the rtpproxy project;<br>
<br>
We have now moved the rtpproxy project from sourceforge to github<br>
<a href="http://github.com/sippy/rtpproxy" target="_blank">http://github.com/sippy/<u></u>rtpproxy</a><br>
<br>
This change should make the project more visibility & and<br>
transparency. Please feel free to create Issues for feature<br>
requests and bugs, and of course Pull Requests are appreciated! :)<br>
<br>
We have also moved the mailing list over to Google Groups:<br>
<a href="https://groups.google.com/forum/#!forum/rtpproxy" target="_blank">https://groups.google.com/<u></u>forum/#!forum/rtpproxy</a><br></div></div>
<<a href="https://groups.google.com/forum/#%21forum/rtpproxy" target="_blank">https://groups.google.com/<u></u>forum/#%21forum/rtpproxy</a>><div class=""><br>
<br>
We will do a maintenance release - version 1.3, and Max is busy<br>
working on a 2.0 release, which has some significant improvements<br>
to jitter characteristics, and performance.<br>
<br>
Best Regards,<br>
-Jev<br>
<br>
<br>
<br>
On Mon, Jun 9, 2014 at 8:25 AM, Maxim Sobolev<br></div><div><div class="h5">
<<a href="mailto:sobomax@sippysoft.com" target="_blank">sobomax@sippysoft.com</a> <mailto:<a href="mailto:sobomax@sippysoft.com" target="_blank">sobomax@sippysoft.com</a>><u></u>> wrote:<br>
<br>
Hey Bogdan, sorry for missing your message. The mail traffic<br>
these days is insane, so it's hard to keep atop of all issues.<br>
<br>
We are working behind the scene on what would become rtpproxy<br>
2.0, the code is pretty stable and we have it deployed in like<br>
30-40 places. The main changes are in the timing loop, which<br>
improves the jitter significantly and recently we've also<br>
split UDP sending code into its own thread(s). That code is<br>
available here: <a href="https://bitbucket.org/sippysoft/rtpproxy" target="_blank">https://bitbucket.org/<u></u>sippysoft/rtpproxy</a>. It's<br>
only tested to compile on FreeBSD, but it should not be<br>
difficult to compile it on Linux. This basically pushes it to<br>
the limits of what's possible to achieve with the standard<br>
POSIX facilities. We've been able to push 16-core machine up<br>
to 400KPPS in and 400KPPS out with it, all the way up to 90%<br>
CPU, while the older version started choking at about 30%. Our<br>
plan is to tie few loose ends and push it out to the official<br>
repo as a basis for 2.0.<br>
<br>
Beyond 2.0, there is another project in progress that is using<br>
novel netmap framework to overcome performance issues of the<br>
traditional kernel-based socket API. This potentially would<br>
allow us to increase capacity at least 5 times on the<br>
comparable hardware. The framework itself is pretty low-level,<br>
so I am working on a library that would allow it to be more<br>
easily integrated into an app. The WiP code is here.<br>
<a href="https://bitbucket.org/sobomax/libsinet" target="_blank">https://bitbucket.org/sobomax/<u></u>libsinet</a>.<br>
<br>
Another direction that we are going to explore is to add<br>
transcoding support. We have 2 cards in our lab now and<br>
setting up the devtesting system just today. I've heard that<br>
you have done some work in this direction, so if you want to<br>
share something with us, we would be very interested to look<br>
at those patches.<br>
<br>
On the open-source side we plan to move the project into some<br>
modern project management facility, the favorite being github.<br>
My colleague Jev is driving this change.<br>
<br>
In general I don't mind giving you or anyone else from the<br>
OpenSIPS team read-write access to repository if you feel like<br>
integrating some of your patches.<br>
<br>
<br>
On Mon, Apr 14, 2014 at 5:03 AM, Bogdan-Andrei Iancu<br></div></div><div><div class="h5">
<<a href="mailto:bogdan@opensips.org" target="_blank">bogdan@opensips.org</a> <mailto:<a href="mailto:bogdan@opensips.org" target="_blank">bogdan@opensips.org</a>>> wrote:<br>
<br>
Hello Maxim,<br>
<br>
Long time, no talks, but I hope everything is fine on your<br>
side.<br>
<br>
I'm reaching you in order to ask about your future plans<br>
in regards to the rtpproxy project? We see no much<br>
activity around it and other media relays are popping around.<br>
<br>
RTPP is an essential component for us, we invested a lot<br>
of work, we have many patches (extensions) for it (which<br>
we want to push to the public tree, but there is no answer<br>
on this) and we are also looking for investing a lot into<br>
big future plans (as adding more functionalities).<br>
<br>
Now, my question is - what is your commitment and<br>
disponibility for the RTPP project ? depending on that we<br>
what to re-position ourselves, as we do not want to waste<br>
time and work on things which are out of control.<br>
<br>
Best regards,<br>
<br>
--<br>
Bogdan-Andrei Iancu<br>
OpenSIPS Founder and Developer<br>
<a href="http://www.opensips-solutions.com" target="_blank">http://www.opensips-solutions.<u></u>com</a><br>
<br>
<br>
<br>
<br>
--<br>
Maksym Sobolyev<br>
Sippy Software, Inc.<br>
Internet Telephony (VoIP) Experts<br></div></div>
Tel (Canada): <a href="tel:%2B1-778-783-0474" value="+17787830474" target="_blank">+1-778-783-0474</a> <tel:%2B1-778-783-0474><br>
Tel (Toll-Free): <a href="tel:%2B1-855-747-7779" value="+18557477779" target="_blank">+1-855-747-7779</a> <tel:%2B1-855-747-7779><br>
Fax: <a href="tel:%2B1-866-857-6942" value="+18668576942" target="_blank">+1-866-857-6942</a> <tel:%2B1-866-857-6942><br>
Web: <a href="http://www.sippysoft.com" target="_blank">http://www.sippysoft.com</a><br>
MSN: <a href="mailto:sales@sippysoft.com" target="_blank">sales@sippysoft.com</a> <mailto:<a href="mailto:sales@sippysoft.com" target="_blank">sales@sippysoft.com</a>><br>
Skype: SippySoft<br>
<br>
<br>
</blockquote><div class="">
<br>
<br>
<br>
<br>
--<br>
Maksym Sobolyev<br>
Sippy Software, Inc.<br>
Internet Telephony (VoIP) Experts<br>
Tel (Canada): <a href="tel:%2B1-778-783-0474" value="+17787830474" target="_blank">+1-778-783-0474</a><br>
Tel (Toll-Free): <a href="tel:%2B1-855-747-7779" value="+18557477779" target="_blank">+1-855-747-7779</a><br>
Fax: <a href="tel:%2B1-866-857-6942" value="+18668576942" target="_blank">+1-866-857-6942</a><br>
Web: <a href="http://www.sippysoft.com" target="_blank">http://www.sippysoft.com</a><br></div>
MSN: <a href="mailto:sales@sippysoft.com" target="_blank">sales@sippysoft.com</a> <mailto:<a href="mailto:sales@sippysoft.com" target="_blank">sales@sippysoft.com</a>><br>
Skype: SippySoft<br>
</blockquote>
</blockquote></div><br></div></div>