But, I'm betting that these problems manifest themselves from providers that have less than rock-solid internet connections.
Oh, I absolutely agree. But, by the same token, when there's a underlying link problem, the connection should either recover automatically or disconnect -- and if it disconnects ScannerCast will notice and retry the connection.
<background>
In case more technical detail helps... the engineer in me yearns to explain these things:
Data is sent in packets from the source client (ScannerCast) to the server (Icecast) using TCP/IP. Each packet sent by the client can be sub-divided into smaller packets on route, and can in fact arrive out of order at system the server is running on. No matter... each packet is numbered by TCP/IP at the soruce client and every single packet must be acknowledged as being received without error by TCP/IP at the server.
The first thing that happens during an underlying connection problem is that TCP/IP notices that it didn't get back an acknowledgement within the time it expects to do so, and attempts to recover the connection (by resending the packets that have not been acknowledged and emphatically asking for an acknowledgement). When TCP/IP gets back the requested acknowledgement, the recovery is successful, no error is reported to either the source or the destination. This
seems to be what's happening.
If, after multiple attempts, TCP/IP is unsuccessfull in recovering the connection it gives up and reports the disconnect event. This is when the client and server programs get notified that the connection is down. In this case, ScannerCast closes the existing connection and attempts to re-connect. If ScannerCast tries to re-establish the connection too quickly, the new connect attempt will be rejected by Icecast... because Icecast won't yet have decided that the connection is irretrievably down. It typically takes about a minute or so for ScannerCast and Icecast to both agree that the connection is down, and to establish a new connection.
</background>
I've never, ever experienced this behavior.
Me either. I can't even manage to
make this happen by deliberately trying to do so. And, believe me, I've tried. FYI:
jonwrice is able to make this happen on demand, and I'm in contact with him via email, if you'd like to setup a test or whatever.
Peter
K1PGV