Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a high bandwidth application in which a server is to be producing data a rate of ~300Mb/s on a gigabit network. Is there a way other than UDP to multicast to 1 to 10 clients through a reliable transport mechanism?

This application is very much like streaming video in that the continuity of the stream is more important than the reliability. The current application is a bit slower and uses UDP combined with it's own error checking in which a client knows to discard the block of data.

Are there any hardware options to get a reliable TCP/IP stream to multiple clients?

Are there any protocols that can tunnel a data stream and support forward error correction? It would be nice if the server / clients could still treat this as a normal socket.

Just thinking there must be a better way than the roll your own UDP multicast solution.

Note the server and clients can be on the same subnet for my particular application. Although, I am interested in all answers / options.


share|improve this question
What exactly is wrong with UDP multicast? – Justin Feb 17 '10 at 1:59
The requirement for reliability. If a TCP packet is lost the protocol will automatically request a resend. With UDP we detect lost packets through a sequence number and depending on the client either fill the missing section with a generated data block or flag the missing data and carry on. – JeffV Feb 17 '10 at 13:47
up vote 5 down vote accepted

Multicast, by definition, used UDP. If your stream is truly like video, then you don't want to try and resend lost packets -- that would just disrupt the video stream.

If, however, it is important for all the packets to get there, then you need some kind of message digest that can keep track of lost data and step 'out of band' to resend any lost packets. Alternatively, Pragmatic General Multicast may be what you are looking for -- though this is still an experimental protocol.

share|improve this answer

Make sure your switches support IGMP. Otherwise most switches fail back to broadcast and 300Mb/s of broadcast traffic could cause a lot of problems on your network.

You may also want to read this on IGMP Snooping.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.