分布式基础篇
对于某些信息,多个接受者都可能感兴趣的时候,那么我们应该怎么解决呢?我们可以向每个接受者单播一个数据副本,但是如果这样的话,效率会低;而且同样的数据发送多次,浪费带宽。解决方案是,我们可以把复制数据包的工作交给网络来做,而不是由发送者负责。这样无论是多少客户端,都没问题有两种分发类型,广播(broadcast)和多播(multicast)
广播:网络中的所有主机都会接收到一份数据副本
多播:消息只发送给一个多播地址,网络只是将数据分发给哪些想要接收发送到该多播地址的数据的主机。
总的来说,要实现这个功能,只有 UDP 是最合适的
广播
广播是主机向子网内所有主机发送消息,子网内所有主机都能收到来自某台主机的广播信息,属于点对所有点的通信。广播意味着网络向子网每一个主机都投递一份数据包,不论这些主机是否乐意接收该数据包;
多播
多播是主机向一组主机发送信息,存在于某个组的所有主机都可以接收到消息,属于点对多点的通信。
组播