views:

53

answers:

1

My manager has asked me to assess what changes would be required to add multicast support to a socket-based TCP/IP networking program that is part of a trading system.

As far as I can tell, from the perspective of a Java program, it doesn't seem to matter too much whether the program is unicast or multicast.

Doesn't the Java networking API make all of this transparent? By this I mean, wouldn't the change be a simple one of simply adding additional destinations for the outgoing connections?

+4  A: 

As far as I know, TCP doesn't have support for multicast. Multicast is often done via UDP. UDP by design is not a reliable transport. I-e there is no guarantee of datagram reaching its destination and there is no delivery report when it does reach the destination.

Some reliable multicast solutions are discussed in this question but they are in-essence different protocols.

So if you your application needs to guarantee delivery while using multicast, you will certainly need do some changes in your communication layer.

Tahir Akhtar
Very helpful answer. Thanks for the links.
pnut butter
There is also no guarentee of order.
Robin
'TCP doesn't have support for multicast'. Correct. TCP is a point-to-point, i.e. unicast, protocol.
EJP