[Live-devel] Server disconnects clients every 60 seconds

Ross Finlayson finlayson at live555.com
Wed Jan 25 13:04:31 PST 2012


> Any ideas, what could be causing my FramedSource class to self-destruct every 60 seconds? This must be some kind of timeout.

Exactly.  The server is timing out the client connection (and reclaiming its state: sockets, ports, and memory) because it is not seeing any sign of activity from the client within the timeout period (which, by default, is actually 65 seconds, not 60 seconds).

The problem is your client.  It is apparently not sending any periodic RTCP "RR" packets - which it is supposed to do as per the RTP/RTCP standard.  (Alternatively, if the client were periodically sending certain 'no-op' RTSP commands - such as "GET_PARAMETER", then the server would also treat that as a sign of client 'liveness', and not timeout the connection.)

The solution is to fix your "3rd party client software package" so that it sends RTCP "RR" packets, as it is supposed to. (Alternatively, just use our RTSP/RTP/RTCP client implementation, which works properly :-)

If you *really* want to avoid the timeout, without fixing your client, then you can do so by setting the (otherwise optional) "reclamationTestSeconds" parameter in "RTSPServer::createNew()" to 0.  I don't recommend this, however, because then the server will have no way of reclaiming state from a client that dies without doing a RTSP "TEARDOWN".


> Why does this not happen for VLC client connections?

Because VLC properly sends periodic RTCP "RR" packets.


Ross Finlayson
Live Networks, Inc.
http://www.live555.com/

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20120125/8eaf7bd4/attachment.html>


More information about the live-devel mailing list