将几个单播组合成一个多播有什么好处吗?

网络工程 ip
2022-03-06 09:00:05

如果一个节点必须将相同的数据发送到多个节点,那么多播数据显然会提高带宽使用率。但是,如果一个节点必须向不同的节点发送不同的数据,将这些数据组合成一个大数据并进行多播会有什么好处?很明显,接收者会收到不必要的数据,而且我还认为与将不同的数据单播给预期的接收者相比,带宽利用率会增加。如果单播数据的大小很小,会有一些好处吗?

2个回答

如果一个节点必须向不同的节点发送不同的数据,将这些数据组合成一个大数据并进行多播会有什么好处?

不会。这只会增加复杂性(数据分发、多路复用)并浪费带宽而没有任何好处——在任何情况下都需要发送组合数据。

两者都不明显,一切都取决于网络拓扑、第 2 层、第 3 层和第 4 层的实际属性、流量模式、确切的问题陈述和其他内容。你不能对所有情况给出一个通用的答案。您必须考虑确切的问题并得出确切问题的解决方案。

一只手:

如果一个节点必须将相同的数据发送到多个节点,那么多播数据显然会提高带宽使用率。

如果路径完全脱节,则带宽使用不会改善。

如果接收者的数量很少,管理多播可能会导致更多的开销。

如果多播需要可靠,还有一组单独的问题。可靠的多播传输协议通常比可靠的单播 TCP 更复杂。

[需要考虑的事情]一个非常有趣的可靠多播问题:发送方发送多播数据包。然后发送者期望(单播)确认。某些接收器子集没有收到数据包(丢失或传输错误)。没有 ACK,发送方需要重新传输数据包。发送者做什么:向特定接收者多播还是单播?

另一方面:

但是,如果一个节点必须向不同的节点发送不同的数据,将这些数据组合成一个大数据并进行多播会有什么好处?

网络是什么样子的?更准确地说,链接是什么样的。

在广播链接上,您不能一开始就进行单播。

在竞争广播链路上(任何带有载波感应的),发送一个大块可能比发送很多小块更好。

同样,可靠与不可靠地发送数据将产生很大的不同。

我还认为与将不同的数据单播给预期的接收者相比,带宽利用率会增加。

这将是一个问题,a) 没有足够的带宽,b) 不发送或接收数据比发送数据便宜(例如,能源效率)。

[需要考虑的事情]最坏的情况是无线链接。它是争用和半广播[*]。另一方面,主动发送和接收数据很耗电,应尽可能避免(您希望无线电单元尽可能“休眠”)。我不明白如何回答这个问题。

[*] 当我学习无线网络时,我们使用了术语半广播,它描述了以下属性。无线介质有点类似于 CSMA。无线信号在发送者周围的一定范围内传播。从某种意义上说,它是广播,因为在发送者范围内的每个人都听到了信号,并且在这个范围内发送另一个信号会破坏信号。但它不像有线广播(例如,CSMA/CD 以太网),因为发送器范围不必覆盖共享介质的所有设备(L2 段?)。所以它有点广播,但范围有限。