为什么使用“交换”术语进行数据包交换

网络工程 交换 层2 第3层 术语
2021-08-01 07:32:05

在分组交换网络中,需要路由器将分组路由到不同的网络。

当数据包是第 3 层 PDU 的术语而交换是第 2 层时,为什么数据包交换使用术语“交换”?

3个回答

从网络的角度来看,这是一个很好的问题。您的问题基于在分组交换作为概念提出之后很久开发的网络模型。然而,跨越任何距离的网络都是通过现有的电信“网络”互连的,虽然许多网络和电信术语是相同的,但它们的含义会有所不同。

传统的电话连接是电路交换的,这意味着有一个已建立的电路在两个端点之间形成连接。电话系统中的电话交换机曾经是创建和断开这些连接的设备。如果你回去,人类操作员将在“开关板”上手动建立和移除这些连接。

分组交换是一个更新的概念(相对而言),指的是通过网络独立地获取数据和传输数据单元的网络。以这种方式“共享”底层网络的资源通常效率更高。今天,VoIP 使用“虚拟电路”来模拟分组交换网络上的电路交换连接。

电路交换分组交换的维基百科页面写得很好,应该提供更多的背景知识。

多年前,在 Cisco 课程(BCMSN,当它存在时)中,老师向我们解释了 LAN 的演变,从厚网(同轴电缆)到当前的交换式 UTP/光纤连接

起初,各种局域网要么路由连接到集线器,要么如果可能的话,出于成本考虑,通常首选集线器。当真正不需要路由器但集线器没有完成这项工作时,他们将 LAN 与网桥分开。

HOST(A)----\
HOST(B)----(HUB)-------HOST(D)
HOST(C)----/

当网桥看到一个帧经过时,它注意到它是从 SRC 端口 X 到某个地方并注意到它。由于它不知道 DST 在哪里,所以它在另一个端口上广播(早期的桥接器有 2 个端口,它只是用来限制广播域)当它得到回复时,它会注意到它来自哪里等。请注意你在每一侧都有广播媒体(同轴电缆)

NETWORK(A)---(BRIDGE)---NETWORK(B)

成本低于

NETWORK(A)==(Router)==NETWORK(B)

但不是处处有用

然后,有人想到将每个接到中央网络……所有这些都在同一个盒子里,网络在中间,在接口之间传递数据。这也意味着可以更轻松地将主机跟踪到特定端口,从而限制对实际未知 MAC 或广播 MAC 的泛洪。它还限制了冲突域,因为没有两台主机直接相互通信,全双工也成为可能。

HOST(A)---\----------------------/---Host(D)
          | Bridge        Bridge |
          |    \            /    |
          |     ------------     |
          |     | INTERNAL |     |
HOST(B)---|Br.--|  SHARED  |--Br.|---HOST(E)
          |     | NETWORK  |     |
          |     ------------     |
          |     /          \     |
          | Bridge        Bridge |
HOST(C)---/----------------------\---ROUTER(A)

最后一个问题是内部网络的带宽有限,因为它为所有流量创建了一个瓶颈,因为它无法足够快地将数据从一个端口传输到另一个端口(使用了缓冲区,但它们有其限制) . 为了解决这个问题,他们设计了特殊的硬件来优化端口间流量,而不是使用内部共享网络,而是具有相当于电话系统的“总机”的功能,您可以在其中临时连接两个端口,而不会阻止另一组两个端口之间的数据连接港口

例如:主机(A)和主机(D)可以全速通信,而主机(C)与路由器(A)通信,一个不会阻塞另一个,也不会减少它们可能的带宽

这被称为“交换结构”,因此诞生了网络交换机

            --------------
HOST(A)-----|  INTERNAL  |-----SWITCH(B)
            |            |
HOST(B)-----|   SWITCH   |-----HOST(D)
            |            |
HOST(C)-----|   FABRIC   |-----ROUTER(A)
            --------------

所以,这就是为什么我们说一个帧是交换的 - 在帧传输期间,两个端口的临时(虚拟)互连就像旧的电话交换机一样。(现在这一切都是由带有缓冲区和非常快的内存的 ASIC 完成的,但您已经了解了它的要点)

希望有帮助!

数据包 (L3) 在进出接口时仍需要作为帧 (L2) 进行交换。 如果路由器做出路由决定,但无法将数据包交换出去,它就没有任何用处。 换句话说,您可以从交换中取出路由,但不能从路由中取出交换。