telnet 时三层交换机会变成四层设备吗?

网络工程 转变 以太网 包路径
2021-07-18 02:19:21

为了 Telnet 到交换机(第 2 层),我们创建了一个 SVI,因此建立了第 3 层联系点。交换机检查从远程客户端发送的每个数据包并对其做出响应,以便对其进行配置。在那种情况下,交换机是否真的成为 L4 设备,因为它具有检查数据包的能力?

4个回答

如果您通过 SSH 或 telnet 连接到交换机(或任何其他设备),您实际上会利用所有 OSI 层,直到应用程序层 7。

但是,交换机通常根据其驻留在数据平面中的转发功能进行分类,而不是根据管理平面中发生的任何事情进行分类

因此,即使交换机具有网络控制台,它仍然是第 2 层、第 3 层或第 x 层设备,具体取决于其转发功能。

将数据平面功能(转发帧)与管理平面功能(telnet、snmp 等)区分开来很重要。

交换机(作为交换机)在第 2 层运行,根据第 2 层 (MAC) 信息转发帧。

托管交换机具有与任何其他 IP 主机类似的管理功能。因此它利用了完整的 TCP/IP 函数栈。

为了 Telnet 交换机(第 2 层),我们创建了一个 SVI,因此建立了第 3 层联系点。

我要稍微修改一下你的说法。您正在交换机的管理软件配置第 3 层SVI,该软件在 CPU 上运行。

让我们假设交换机配置软件在 Ubuntu Linux 发行版Note 1 上运行Ubuntu 在交换机的 CPU 上运行。当您通过 telnet 连接到交换机时,您正在与Linux 内核telnetd上的运行进行对话配置注 2

为了正常工作,交换机必须具备:

  1. 系统中的专用交换硬件(由ASIC制成),因此它可以极快地移动数据包;它必须能够每秒进行数百万次的查找。
  2. Linux 内核上运行的专用配置软件,提供“开关配置语言”。部分配置用于重写 ASIC 中的数据,以便它知道如何快速通过交换机传递数据此数据还用于控制交换机在网络中的行为(例如路由协议或生成树的配置)。

在那种情况下,交换机是否真的成为 L4 设备,因为它具有检查数据包的能力?

不,这是误会。让我们区分流向交换机(控制平面)的流量和通过交换机(数据平面)的流量

  1. *到交换机*的控制平面流量被发送到上面第二点提到的在Linux内核上运行的配置软件这就是我们所说的“控制平面”注 3控制平面流量包括telnet,被telnetdCPU上运行拦截CPU 每秒只能处理几千次数据包/击键。ASIC可以处理的速度慢一个数量级(或更多)
  2. *通过交换机*的数据平面流量仅由ASIC接触(有少数例外)。这每秒可能发生数百万次。请注意,您从 Walmart 购买的廉价交换机无法检查 IP 标头来制作 Layer3 SVI

总之,在这个问题中,您混淆了通过交换机的流量和到交换机的流量。仅仅因为交换机正在运行telnetd到交换机的流量并不意味着它可以检查通过交换机的第 4 层流量。

可以在第 4 层检查流量的东西称为:

  1. 防火墙
  2. 负载均衡器

第 3 层交换机和负载均衡器/防火墙之间的区别超出了本问题的范围。


尾注

注1:我不只是假装;确实有交换机供应商在 Linux 之上构建交换机,但它是一个非常定制的 Linux 版本。
注 2:大多数人应该更喜欢 ssh 而不是 telnet,但我们不要让讨论变得模糊。
注3:控制平面也称为“管理平面”。

还要考虑其他网络设备:无线接入点、路由器、防火墙等。

所有这些都可能包含用于管理的服务,例如 HTTP、SSH 服务器,以及可能的 DNS、DHCP、NTP 客户端等。因此,整个设备将使用整个 TCP/IP 堆栈直至第 7 层。

然而,第 2/3/4 层只是一个描述性术语,通常是指它在数据平面上做任何事情的主要目的。

因此,在网络交换机的情况下,其包交换的主要功能/能力仅查看第 2 层帧的标头/尾标,而无需查看有效载荷本身的内容。毕竟所有内容甚至不必是 IP 数据包,它们可以是不同的第 3 层协议。因此,为什么普通的非托管交换机可以运行并且确实只能完全在级别 2 下运行。