[Live-devel] Live555 Proxy Server sometimes does not proxy source after connection loss

Erik Montnemery erik at montnemery.com
Sun Oct 2 07:29:24 PDT 2016


>>> 1) The proxyserver reconnects to the source, but no data frames are
>>> forwarded to the clients.
>>
>> If no data are forwarded to the (‘front-end’) clients, then that must mean that the ‘back-end’ server was not sending any data to the proxy server.  If the ‘back-end’ server appears responsive in spite of this (i.e., the RTSP connection remains open, and the server continues responding to “OPTIONS” requests from the proxy server), then it must be broken in some way…
>
> I am now able to reproduce this issue with additional debug prints as
> well as tcpdump of traffic between proxy and 'back-end' device.
> You were absolutely right, Ross, the ‘back-end' server is not sending
> and data to the proxy server.

I've attached a patch to this mail which adds a new option [-D
<max-inter-packet-gap-time>] to the live555ProxyServer example
program.
The new functionality is based on the implementation of the same
option in openRTSP.
When the -D option is used, the proxy server will reset the connection
to a 'back end' server if at least one subsession *might* be in state
playing,
but no data has been received during max-inter-packet-gap-time seconds.

Note 1: As explained by Ross in this thread, this option does not make
sense for all streams. I use it for IP cameras where the camera should
be sending data at all times.
Note 2: As discussed in another thread, there’s no good way for the
proxy server code to know exactly what subsession(s) are and are not
currently streaming.
The patch is using the same logic as for PAUSE of substreams in
ProxyServerMediaSubsession::closeStreamSource(), which means
connection to 'back end'-server
might be reset although no client was playing.

I hope the patch is useful for some readers of this mailing list.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Proxyserver_check_interPacketGap.patch
Type: application/octet-stream
Size: 12514 bytes
Desc: not available
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20161002/e3f3b902/attachment.obj>


More information about the live-devel mailing list