在看《图解 TCP/IP 》的时候看到这段话感到很迷惑:
在人们使用多播功能之前,一直采用广播的方式。那时广播将数据发送给所有终端主机,再由这些主机 IP 之上的一层去判断是否有必要接收数据。是则接收,否则丢弃。
然而这种方式会给那些毫无关系的网络或主机带来影响,造成网络上很多不必要的流量。况且由于广播无法穿透路由,若想给其他网段发送同样的包,就不得不采取另一种机制。因此,多播这种可以穿透路由器,又可以实现只给那些必要的组发送数据包的技术就成为必选之路了。
在我理解中,IP 单播就已经是在把一个包发到目的主机的过程中,整条链路上的其他主机都能“看到”这个包,并检查这个包,是发给自己的就接收,不是就丢掉。那这样的话我觉得单播跟广播没有什么区别啊,按这个逻辑,多播我就无法理解了。“给那些必要的组发送数据包的技术“,这个意思难道是说在一个链路中只把包发给特定一些的主机,而其他主机连“看”都看不到的意思吗?
还请前辈们指教一二,感谢:D
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.