计算机网络:数据链路层 —— 交换式以太网

文章目录

以太网

以太网 (Ethernet)以曾经被假想的电磁波传播介质 ------ 以太(Ether)来命名,是一种广泛应用于局域网(LAN)的常见网络技术,用于在计算机和其他网络设备之间进行数据通信。

以太网目前已经从传统的共享式以太网发展到交换式以太网 ,传输速率已经从 10Mb/s 提高到 100Mb/s1Gb/s 甚至 10Gb/s

  • 工作原理:

    • 以太网使用 CSMA/CD(Carrier Sense Multiple Access with Collision Detection)协议来控制多个设备在共享媒介上的访问。

    • CSMA/CD 协议允许设备在发送数据之前监听信道 ,以检测是否有其他设备正在发送数据。如果信道是空闲的,设备将发送数据;如果检测到冲突(多个设备同时发送数据),则设备将等待一段随机时间后再次尝试发送。

相关阅读计算机网络:数据链路层 ------ 以太网(Ethernet)

交换式以太网

仅使用交换机 (而不使用集线器)的以太网就是交换式以太网。

  • 网桥的接口数量很少,通常只有 2~4 个,一般只用来连接不同的网段

  • 1990年面世的交换式集线器 (Switching Hub),实质上是具有多个接口的网桥,常称为以太网交换机(Switch)或二层交换机。

    • "二层 "是指以太网交换机工作在数据链路层(包括物理层)

    • 与网桥相同,交换机内部的转发表也是通过自学习算法,基于网络中各主机间的通信,自动地逐步建立起来的

    • 交换机也使用生成树协议STP,来产生能够连通全网但不产生环路的通信路径。

以太网交换机

以太网交换机是一种网络交换设备,主要用于在计算机网络中传输以太网数据包。它通过连接多个网络节点(如计算机、服务器、打印机等)来实现数据的快速传输和通信。

交换机的每个接口可以连接计算机(主机),也可以连接集线器或另一个交换机。

  • 当交换机的接口与计算机或交换机 连接时,可以工作在全双工方式 ,并能在自身内部同时连通多对接口,使每一对相互通信的计算机都能像独占传输媒体那样,无碰撞地传输数据,这样就不需要使用 CSMA/CD 协议了。

  • 当交换机的接口连接的是集线器 时,该接口就只能使用CSMA/CD协议 并只能工作在半双工方式

现在的交换机和计算机中的网卡都能自动识别上述两种情况,并自动切换到相应的工作方式。

  • 交换机一般都具有多种速率的接口,例如10Mb/s、100Mb/s、1Gb/s甚至10Gb/s的接口,大部分接口支持多速率自适应。
以太网交换机的自学习和转发帧的流程

以太网交换机的自学习和转发帧的流程如下图所示:

当数据包在网络中传输时,交换机会使用一种称为"地址转发表 "的机制来确定应该将数据包发送给哪个端口。这个表包含了每个设备的MAC地址 及其所连接的交换机端口号

在本例中:

  • 当 A 向 B 发送消息时,交换机1 会记录下 A 的 MAC 地址与自己的 端口1 之间的关系,并将消息转发给 交换机2。同样地,交换机2 也会记录下 A 的 MAC地址 与其 端口1之间 的关系,并将消息转发给B。

  • 当 H 向 A 发送消息时,由于之前已经知道了 A 的位置(即交换机1上的端口3),所以 交换机2 可以直接将消息转发给 交换机1,而无需进行盲目转发。

  • 类似地,E 向 X 发送消息时,由于之前已经知道了 X 的位置(即交换机2上的端口2),所以 交换机1 可以直接将消息转发给 交换机2,而无需进行盲目转发。

  • 最后,X 向 E 发送消息时,由于之前没有记录过 E 的 MAC地址,因此 交换机1 无法准确地知道如何转发该消息,只能将其丢弃。

以太网交换机的转发方式

一般的交换机都采用"存储转发 "方式,为了减小交换机的转发时延,某些交换机采用了直通(Cut-Through)交换方式。

采用直通交换方式 的交换机,在接收帧的同时就立即按帧的目的MAC地址决定该帧的转发接口 ,然后通过其内部基于硬件的交叉矩阵进行转发而不必把整个帧先缓存后再进行处理。

  • 直通交换的时延非常小

  • 直通交换不检查差错就直接将帧转发出去,有可能会将一些无效帧转发给其他主机

共享式以太网与交换式以太网的对比

发送单播帧

假设交换机的转发表已经学习到了所有主机与自己各接口的对应关系

共享式以太网 上(左图),所有的设备都连接到一个集线器上。这意味着当任何一个设备发送数据时,其他所有设备都会接收到这些数据。

不仅 主机C 能够接受到来自 A 的帧,而且 主机D 也能够接收到同样的帧。然而,因为帧的目标地址不是 D 而是 B,所以 D 必须丢弃这个帧。

相比之下,在交换式以太网 上(右图),每个设备都有自己的专用链路到交换机。这样做的好处是可以避免广播风暴 问题 ------ 只有目标主机才能接收到特定的帧。在这里我们可以看到,只有 B 能正确接收到来自 A 的帧,而其他主机则不会受到影响。同时,由于不存在环路,所以也不会发生数据包重复发送的情况。

广播风暴 (Broadcast Storm)是指在一个网络中,如果大量的广播帧(Broadcast Frames)在一个短时间内被发送,并且无法得到有效处理 ,就会导致网络性能急剧下降甚至瘫痪的现象。这种情况通常发生在局域网(LAN)环境中,尤其是在使用共享介质的传统以太网或者配置不当的交换网络中。

发送广播帧
  • 使用集线器的共享式以太网中的各主机属于同一个广播域,但集线器并不能识别帧首部中的目的 MAC 地址,因为其工作在物理层,仅将表示帧的信号从其他接口转发出去。

  • 使用交换机的交换式以太网中的各主机也属于同一个广播域。交换机可以识别并从帧首部提取出目的MAC地址,然后查找自己的转发表,根据转发表进行下一步操作。

多对主机间通信

在共享式以太网中(左侧),所有设备共享同一个物理通道,这就意味着当多个设备尝试同时发送数据时会发生碰撞。

在交换式以太网中(右侧),每个设备都有自己的专用链路到交换机。交换机负责将数据包从源设备转发到目的设备,而不是像集线器那样简单地复制并广播数据包到所有端口。由于交换机只将数据包转发到指定的目的地,所以不会发生碰撞。

交换机还可以缓存接收到的数据包,并在确定目的地后再转发出 去,这种方法被称为存储转发。这种方式可以提高网络效率,因为它消除了不必要的数据包重传和碰撞。

扩展以太网

使用交换机扩展共享式以太网,扩大了广播域,隔离了碰撞域

相关推荐
速盾cdn1 小时前
速盾:CDN是否支持屏蔽IP?
网络·网络协议·tcp/ip
yaoxin5211231 小时前
第二十七章 TCP 客户端 服务器通信 - 连接管理
服务器·网络·tcp/ip
内核程序员kevin1 小时前
TCP Listen 队列详解与优化指南
linux·网络·tcp/ip
PersistJiao3 小时前
Spark 分布式计算中网络传输和序列化的关系(一)
大数据·网络·spark
黑客Ash5 小时前
【D01】网络安全概论
网络·安全·web安全·php
->yjy5 小时前
计算机网络(第一章)
网络·计算机网络·php
sinat_384241095 小时前
使用 npm 安装 Electron 作为开发依赖
服务器
摘星星ʕ•̫͡•ʔ6 小时前
计算机网络 第三章:数据链路层(关于争用期的超详细内容)
网络·计算机网络
Kkooe7 小时前
GitLab|数据迁移
运维·服务器·git