I'm using [`Socket`](http://msdn.microsoft.com/en-us/library/system.net.sockets.socket%28v=vs.95%29.aspx)s in my Silverlight application to stream data from a server to a client. 

However, I'm not quite sure how timeouts are handled in a Silverlight [`Socket`](http://msdn.microsoft.com/en-us/library/system.net.sockets.socket%28v=vs.95%29.aspx).  

In the documentation, I cannot see anything like [`ReceiveTimeout`](http://msdn.microsoft.com/de-de/library/system.net.sockets.socket.receivetimeout.aspx) for Silverlight.

* Are user-defined timeouts possible? How can I set them? How can I get notifications when a send / receive operation times out?
* Are there default timeouts? How big are they?
* If there are no timeouts: what's the easiest method to implement these timeouts manually?