Skip to content

(五)数据链路层设备

1. 局域网交换机

1.1. 工作原理

  • 在数据链路层扩展局域网是使用交换机;

  • 过滤功能:交换机根据 MAC 帧的目的地址对收到的帧进行转发;

  • 交换机隔离各网段,形成多个冲突域

    img_wRqV6pHnDk

    • 若使用集线器代替图中 B1B2,则冲突域只有一个大的;

    • 注意:若不划分 VLAN,则广播域还是一个;

1.2. 交换表

img_aWuKCqgaf1

  • 作用:实时记录当前活动的设备的 MAC 地址及其所在端口号,方便定向转发;

  • 每个表项:(1) MAC 地址,(2) 此 MAC 地址所在端口,(3) 时间戳;

  • 表项的创建:当交换机收到发送端发送的帧时

    • 1)发送端 MAC 地址和端口已知,则加入表项(若已存在则更新,覆盖时间戳);

    • 2)在交换表中查找接收端端口

      • 2.1)若不存在,则进行广播;

      • 2.2)若存在,则定向转发;

      • NOTE:若查找到接收端口和发送端口一致,则丢弃(不需要进行转发)

  • 表项的删除:交换机实时检查每个表项是否长时间未被更新(时间戳),若超过设置的阈值,则自动删除表项;

  • 实例分析:初始为空交换表;

    • A 发送一帧给 B:交换表添加 A 的 MAC 地址和端口 1,B 端口未记录,因此进行广播

    • B 发送一帧给 A:交换表添加 B 的 MAC 地址和端口 2,A 端口已知,定向转发到端口 1

    • 在长时间网络活动情况下,理论上可以记录所有活动设备的 MAC 地址和对应端口号;

    • A,B 离线一定时间后,自动删除对应表项,清空交换表;

1.3. 转发方式

  • 直通式(Cut-through)(当前主流方式)

    • 交换机读取到目的地址之后,直接开始向目的端口转发数据;

      • NOTE:不需要收完数据包!
    • 通常数据包的前 6 个字节就能确定目的地址和端口;

    • 优点:转发速率快,减小延时,提高吞吐率;

  • 存储转发(Store and Forward)

    • 交换机收到全部数据包之后再进行转发;

    • 优点

      • 转发之前可以检查数据包完整性和有效性;

      • 可以减少一些不必要的转发(例如:检测到数据包错误时就不必转发)

    • 缺点:速率较慢;

  • 碎片隔离式(Fragment Free)

    • 介于上述二者之间的方式;

    • 交换机转发前检查数据包长度:

    • 若小于 64B(512bit)说明是残缺包,丢弃;

    • 否则认为是完整的,进行转发;

1.4. 时延

  • 交换机接收到数据包开始向目的端口复制数据包之间的时间间隔;

  • 直通转发时延固定,取决于交换机读取前 6 个字节中目的地址的速率;

  • 存储转发:延时与数据包大小有关;