[RTPproxy Devel] [RTPproxy Users] patch - per-channel timeouts, notification on timeout
Maxim Sobolev
sobomax at sippysoft.com
Wed May 14 11:28:14 PDT 2008
Dear Daniel,
There are few issues with this patch:
1. I would like the make it possible to enable/disable "disconnect
notification" feature on the per-call basis. Basically, the idea is that
the client code will pass the address that it wants rtpproxy to send the
disconnect notification to with the "create session" request. This would
allow several "disconnect-aware" clients to share one proxy.
The important issue here is the security - allowing rtpproxy opening
arbitrary local socket could be dangerous, my suggestion is that on
startup the proxy should be supplied with the list of allowed
"disconnect sockets" and only allow client requesting notification to
any of those.
2. The "split TTL" code changes existing functionality, so that it
should be enabled (opt in) explicitly. The reason why it's important is
because the old behavior was here on purpose - basically to handle
sendonly/recvonly streams properly. The new code will cause automatic
disconnect of such streams.
3. I don't see any conceptual issues with "disconnect all" feature,
however the implementation is incomplete as it doesn't handle "cookie",
which is necessary when sending reply in the remote mode. Also, on the
protocol front, it should be using reply_ok()/reply_error(), instead of
rolling out custom verbose reply.
4. Programming issue: in the trunk version please add new command line
options/arguments to the struct cfg, not as a new static variables to
the main.c as in 0.2.
Please improve the patch and submit it again for review.
Thanks!
P.S. Please use RTPproxy Development list <devel at rtpproxy.org> for the
further discussion.
Daniel Pocock wrote:
>> Daniel Pocock wrote:
>>>
>>> I've been using patched version of rtpproxy with the following features:
>>>
>>> - the TTL is maintained for each direction independently, so if just one
>>> side stops sending for max_ttl seconds, the connection can be dropped
>>>
>>> - whenever a connection is dropped, a notification is logged to a socket
>>> (the socket is configured with the new parameter, -n )
>>>
>>> Does anyone have any comments on this patch and it's suitability for the
>>> main rtpproxy CVS? I'm going to post the patch and some other work on
>>> this list shortly.
>> Daniel,
>>
>> Both make sense to me. Please post them, but make sure they are for the
>> CVS trunk before posting, though. There were many changes, particularly
>> in the TTL tracking code.
>>
>
> The patches were originally developed on 0.2
>
> I have modified them for the CVS trunk and attached a diff.
>
> Another change that is included: the command x or X will cause all
> sessions to be dropped. I invoke this command when my B2BUA starts, to
> ensure there are no lingering sessions from a previous B2BUA that crashed.
Regards,
--
Maksym Sobolyev
Sippy Software, Inc.
Internet Telephony (VoIP) Experts
T/F: +1-646-651-1110
Web: http://www.sippysoft.com
More information about the Devel
mailing list