Can you do multicasting with TCP?
So far, looking online has not given me a wonderful answer to this question. All I have seen is multicasting can be used with UDP, and that "TCP and multicasting are mutally exclusive." without knowing why it's "mutally exclusive". Can I do multicasting with TCP? If not, may I ask why?
TCP is a connection-oriented streaming protocol. That means that each packet is numbered and sequences and resent if necessary. It would be difficult to have a multicast if every recipient had to be kept in lock-step so that all packets were sequenced properly, it would be very slow and there is room for ambiguity in handling responses so you can't do multicast with TCP. With UDP, the packets are sent out by the multicaster and anyone can pick up a copy.
You could, conceivably, have a connection-oriented streaming protocol do multicasting, if you treated every multicast connection as a separate connection (in which case it's really simultaneous singlecast connections).
You could, conceivably, have a connection-oriented streaming protocol do multicasting, if you treated every multicast connection as a separate connection (in which case it's really simultaneous singlecast connections).
I've been lead to believe that multicasting on the open Internet is not a reasonable option.
Can I do multicasting with TCP? If not, may I ask why?
[/quote]
The algorithms that TCP uses requires both peers maintain complex state about one another.
Ah, this kills my curiosity with answers I couldn't get from Googling. It's either that, or ask professionals.
Thanks again, everyone.
Thanks again, everyone.
Recommended reading:
http://www.amazon.com/TCP-Illustrated-Vol-Addison-Wesley-Professional/dp/0201633469
http://www.amazon.com/TCP-Illustrated-Vol-Addison-Wesley-Professional/dp/0201633469
I've been lead to believe that multicasting on the open Internet is not a reasonable option.
Can I do multicasting with TCP? If not, may I ask why?
The algorithms that TCP uses requires both peers maintain complex state about one another.
[/quote]
Its still not, nor will it ever, be a viable option. All the reasons I stated in that thread remain true. While some CDNs might allow multicast, it does not mean that your traffic will operate anywhere outside of said CDN (hint: it won't the instant it hits any router not configured for mutlicasting).
The problem is that there's little to no demand for it on the internet as a whole. CDNs can be configured for it, but that's mainly for them to reduce their traffic overhead while routing through their own networks, not through their peer networks. Since no one else can actually write multicasting applications for internet usage, there's no demand, and because there's no demand, network operators have little to no reason to embark on a quest to implement it. Especially considering how complicated PROPERLY configured multicast is to setup. Not to mention, the more work your router has to do (such as figuring out where all to route a multicast packet) the SLOWER it is. For core ISP and internet routers... that's a significant downside to multicast, so they get filtered out long before they reach those parts of the internet infrastructure.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement