📜  Switch 中的状态是如何决定的?

📅  最后修改于: 2022-05-13 01:56:18.332000             🧑  作者: Mango

Switch 中的状态是如何决定的?

在七层 OSI 模型中,集线器是在第 1 层以半双工模式运行的广播设备,因此一次只有一个设备可以传输数据。为了克服这个问题,引入了桥梁。 网桥用于将 LAN 连接分割成更小的子网络。网桥将所有 PC 的 MAC 地址存储在其相应子网络下的一个表中,数据将单独广播到该子网络中的所有 PC。但是,大多数网桥都有 2 或 4 个端口,这成为了限制。

为了克服上述所有限制,引入了带有一些附加功能的网桥和集线器的组合,它是一个交换机。交换机是多播设备。它可以允许连接到它的 PC 进行一对一的通信。它也有多个端口,它可以了解 MAC 地址连接到哪个端口。它具有多个冲突域,因此任何数量的设备都可以一次传输数据。它以全双工模式运行。它主要在数据链路层上运行,有时在网络层上运行,因为它也可以参与路由。

主要开关状态:

为了克服冗余链路问题协议,在交换机中使用了STP(生成树协议)RSTP(快速生成树协议) 。两种协议具有相同的标准和状态,但唯一的区别是 RSTP 与 STP 协议相比具有更多的收敛性。 STP 算法将交换机的端口置于以下生成树端口状态:

  • 转发状态
  • 阻塞状态
  • 已禁用
  • 聆听
  • 学习

交换机可以是根网桥,也可以是非根网桥根桥将由选举过程选择。 非根网桥中只有一个端口是root-port 。根端口到达根桥的成本最低,也称为指定端口

转发状态:

处于转发状态的端口可以执行以下操作:

  1. 学习和更新 MAC 地址。
  2. 传输帧
  3. 处理 BPDU(配置消息)。

根桥中的所有端口都将处于转发状态。非根网桥中的指定端口将处于转发状态。

阻塞状态:

处于阻塞状态的端口执行以下操作:

  1. 丢弃收到的广播消息。
  2. 不要传输任何帧。
  3. 仅处理 BPDU。

在选举根桥之前和选举期间,交换机的所有端口最初都处于阻塞状态。选举过程结束后,非根网桥中的非根端口将处于阻塞状态。

国家是如何决定的?

端口的状态基于交换机角色或端口的角色。

按开关的作用:

角色为网桥的交换机可以使其所有端口处于转发状态。对于要选择作为根桥的交换机,将执行选举过程。满足选举过程条件的交换机将被视为根,其他网段通过其端口传输数据,这些端口将处于转发状态。

根桥的选举过程:

它是在网络中选择一个交换机作为其他交换机的参考来决定它们的哪些端口必须处于转发状态以及哪些必须被阻塞的过程。为了参与选举,每个交换机都将自己视为根网桥并转发 BPDU(网桥协议数据单元)。 BPDU 消息是端口优先级和交换机 MAC 地址的组合,构成交换机的桥 ID。在大多数情况下,所有开关的优先级默认为32768 满足以下条件的交换机将被视为根桥。

  • 条件:最小网桥ID
  • 决胜局 – 1 : 最低优先级
  • Tie-breaker – 2 : 最小 MAC 地址

网桥 ID 是优先级和 MAC 地址的组合。当单独的桥牌 ID 无法宣布获胜者时,决胜局就会出现。只有一台交换机可以是根桥。

按港口的作用:

非根网桥/交换机应该只有一个端口作为根端口。这些可以被认为是从非根网桥到达根网桥的最短路径。将检查以下内容以选择根端口。

1.条件:交换机端口有 最低成本。这些端口成本是根据链路的速度决定的。成本最低的将被选为根桥。默认成本如下:

Speed in the port Cost     
10 Mbps100
100 Mbps19
1 Gbps4
10 Gbps2

2. Tie-breaker-1:具有最小网桥ID(优先级和MAC地址的组合)的转发交换机。如果优先级相同,则选择 MAC 地址最少的交换机。

3. Tie-breaker-2:转发端口号最少的端口。

例子:

根端口

在图 1 中,有两个非根网桥(交换机 2 和交换机 3)。每个都应该有一个根端口。根据成本选择根端口。

因此,成本最低的端口是端口 20,它是根端口,它将处于转发状态。

让我们假设,对于图 1 中的相同网络,所有成本都相同,例如: 4. 现在比较交换机的优先级。如果所有交换机都具有默认优先级,则选择 MAC 地址最少的交换机。如果 MAC 地址相同怎么办?

根端口

现在在图 2 中,成本、优先级和 MAC 地址(仅在图像中作为示例)也相同,因为交换机 3 的两个端口连接到交换机 2。现在交换机 3 的端口 15 或端口 25 必须是根端口。此处,连接到转发交换机 (switch-2) 的最小端口号的端口号将是根端口。此处,端口 11 是最小的编号,交换机 3 的端口 15 连接到它。因此,端口 15 将成为交换机 3 的根端口。它将处于转发状态。

选择根端口后,在剩余的端口中,需要确定一个指定端口。这个指定端口将处于转发状态,另一个将处于阻塞状态。以下条件和决胜局也在这里使用。

1.条件:交换机端口有 最低成本。这些端口成本是根据链路的速度决定的。成本最低的将被选为根桥。默认成本如下。

2. Tie-breaker-1:本地 具有最小网桥 ID(优先级和 MAC 地址的组合)的交换机。如果优先级相同,则选择 MAC 地址最少的交换机。

3. Tie-breaker-2:端口号最少的本地端口。

再次考虑图 1,来自交换机 2 的端口 25 或来自交换机 3 的端口 27 必须处于阻塞状态。两者的成本均为 19。

让我们假设默认情况下优先级也是相同的。现在让 switch-2 的 MAC 地址为 1002,switch-3 的 MAC 地址为 1003。最少一个是 1002,因此 switch-3 的端口 27将进入阻塞状态。

在MAC地址相同的情况下,端口号最小的获胜,成为指定端口。根端口和指定端口将处于转发状态,另一个将是处于阻塞状态的非指定端口。