我无法想象networkingstream量。 例如。 如果局域网中有15台电脑
我无法想象这个stream量是如何stream动的? 可能是我的比喻是完全错误的。 有人可以解释我吗?
确切的程序取决于networking的types,拓扑结构和设备。 我将尝试描述与大多数以太网相关的过程。
条款 :
IP地址分为networking和节点两部分。 您在计算机或路由器上configuration的子网决定IP地址所在的networking。 您需要使用IP地址(和子网)configuration接口才能路由到该接口。
根据您的路由器,接收数据包时可能会发生以下几种情况:
家庭路由器( NAT网关)
“ 真正的路由器 ”
交付(以太网)
ARP请求是一个广播帧,所以每台计算机都可以看到这个请求。 如果没有回应,可能会默默地放弃或回应。 路由器只发送一帧用于广播(如果它也是桥接的,则可以在桥接器的每个接口上发送)。 要发送广播帧,有一个称为广播地址的特殊地址 。 在以太网上,地址是FF:FF:FF:FF:FF:FF(二进制全1)。
网桥(包括交换机)将广播帧指向FF:FF:FF:FF:FF:FF,并将其发送到每个端口。 某些网桥(如pipe理型交换机)自己跟踪ARP请求,以便它们不需要广播,只需回复ARPcaching中的内容即可。 防火墙可以configuration为阻止这些广播,但是可能会对IPnetworking产生递减效果(防火墙的两端不能在没有路由器的情况下相互通话)。
从路由器到节点取决于硬件(通常是网桥,交换机或集线器)
桥
网桥从一个端口接收事物input,并将其发送到一个(或多个)端口。 从技术上讲,交换机是桥梁,但防火墙或无线接入点也是桥梁。
开关
交换机会记住哪个端口有哪个MAC地址。 (通常,它会从ARP响应中学习)。 交换机将把帧(包含一个数据包)发送到目的端口。 在极less数情况下,交换机不知道MAC地址,它的行为就像一个集线器,并将信息发送到每个地址。
枢纽
集线器不记得哪个端口有MAC地址。 集线器将始终将帧发送到每个端口。 有很多问题(如碰撞)与集线器相关联。
交付(再次)
最后,此时帧将一直持续到集线器和交换机,直到它到达目的地或被丢弃。 像STP这样的东西存在,以防止它永远转发。
我可以build议你阅读维基百科关于以太网的优秀文章系列吗?
对于互联网上的数据包是如何工作的一个非常简单,但很好的概述,有一个老的animation电影,描述得很好。 短片很好地完成了,非技术types的一个很好的介绍。 去网上战士并寻找电影链接。
首先确保你对OSI模型图层有一个很好的把握。 在这种情况下,特别是第2层(数据链路层)和第3层(networking层)。 由于我们正在谈论LAN上的数据包stream – 我们主要是在谈论Layer 2。
计算机通常插入networking交换机(这是第2层设备)。 因此,交换机将只发送数据包到特定物理目标端口,该端口具有PC的第二层硬件地址(MAC地址),该数据包的目的地址是注册在交换机的MAC地址表中。
(曾经有集线器,数据包将被发送到所有的计算机,而计算机只是忽略那些不注定的数据包 – 这些都不是很常见)
即使在局域网级别,也要掌握很多数据包stream。 OSI模型将帮助您组织这些信息,直到您有足够的信息将它们放在一起。
答案是“这要看情况”。 然而,今天最常见的答案是更精确一点。 在大多数当前的系统中,路由器连接到交换机。 路由器LAN上的任何PC也可能通过中间交换机连接到该交换机。 交换机知道连接到哪个MAC地址,并且可以询问(通过ARP请求)谁拥有数据包目的地的IP地址。 一旦知道,它知道在哪里发送数据包。 广播数据包将发送到所有交换机的端口。
在共享介质的情况下(旧式集线器),有点不同,因为连接到集线器的所有系统都会看到每个数据包,但是networking堆栈通常设置为忽略未广播的数据包,或发送到系统的IP地址。 但现在这种情况已经不常见了,因为大多数networking使用交换机而不是集线器。
看看你是否可以得到一个思科包示踪剂的副本。 学习这些东西真的很方便。