数据包是如何在同一个子网中从A传递到B的



对不起,这是一个基本问题,但我想知道在这种情况下会发生什么?首先,下面的例子有效吗?

假设我有100台服务器配置在同一个子网中。我希望这些服务器中的每一个都能够相互通信。假设这些服务器连接到一些网络交换机。举个例子——

---- Switch 4 --- Server 3
/                   /
/      -------------/
--- Switch 3 /
/            /
/            /
Server1 -- Switch 1 -- Switch 2 -- Server 2.

根据我在网上读到的内容,如果服务器在同一个子网内,那么就不涉及路由。来自服务器1的数据包通过以太网接口发送,以太网接口表示它属于该子网并位于以太网传输层,帧与目标Mac集一起发送。

因此,对于上图,如果服务器1想要向服务器3发送数据包,则它将确定该数据包需要通过与交换机1相关联的接口发送。当交换机1试图决定将分组转发到哪里时,它意识到具有该特定MAC地址的帧应该被转发到交换机3(而不是交换机2(。交换机3然后转发到交换机4,交换机4然后将其传送到服务器3。

此外,我的理解是,在第2层,交换机1没有使用复杂的路由算法来决定它应该发送到交换机2还是交换机3。它基于一个愚蠢的MAC表,告诉它是否见过这个MAC或交换机2或3,并相应地转发。

我以上的理解正确吗?如果是这样,那么我不明白的是——

在同一个子网中,上述基于MAC的路由比使用OSPF或LSP这样的第三层路由协议更好吗?后者似乎更智能地进行高效路由。

如果不使用路由算法,它将如何意识到通过交换机2到达服务器3比使用交换机3更好?

如果没有路由,交换机的路径将由其mac地址决定。服务器3必须有2个网卡(2个MAC的2个IPS(,其中一个连接到交换机4和交换机2。当你发送一个包时,你使用IP地址,然后会进行ARP广播来获取设备的MAC地址,一旦你有了它,你就会创建带有适当头部的包(第2层MAC,第3层IP(。

如果你有一个路由协议,而不是交换机,你有路由器,可以考虑不同的成本方法来确定最快的路由。例如篮球和速度。你甚至可以强行通过一条路径,无论哪条路径是最好的。

好处:如果您的交换机具有STP(生成树协议(,并且它们之间有多个连接,那么它们将确定交换机之间最快的连接路由,并在一个链路出现故障时具有冗余。在本例中,您发布的图表上的路线可能会发生变化。但请记住,交换机连接在它们之间,每个交换机都有2个或多个连接。

最新更新