交换机基础

基本概念

局域网交换机是一种基于MAC地址识别,完成转发数据帧功能的网络连接设备。它工作在数据链路层,根据进入端口数据帧中的MAC地址进行数据帧的过滤和转发。交换机作为汇聚中心,能将多台数据终端设备连接在一起,构成星状结构的网络。

基本功能

  • 建立和维护一个表示MAC地址与交换机端口对应关系的交换表。

  • 在发送节点和接收节点之间建立一条虚连接(即从源端口到目的端口之间建立虚连接)。

  • 完成数据帧的转发或过滤。

交换表的内容

  • 命令

  • 大型交换机:show ip route

  • 小型交换机:show mac-address-table

交换机的交换方式

交换模式的分类

  • 静态交换:由人工完成端口之间传输通道的建立。

  • 动态交换:依据目的MAC地址查询交换表,根据表中给出的输出端口临时建立传输通道,传输通道在一个数据帧传送完成后自动断开。

动态交换模式

  • 存储转发:接收完整数据帧后进行校验,然后转发。

  • 直通交换:快速转发,但分为两种方式:

  • 快速转发交换:检测到目的地址后立即转发。

  • 碎片丢弃交换:过滤掉小于64字节的冲突碎片后转发。

三种主要交换模式

  1. 快速转发交换模式

  • 原理:接收数据帧的前14个字节(包括目的地址)后立即转发。

  • 优点:端口交换时间短、时延小、交换速度快。

  • 缺点:不能进行检错纠错、速度匹配和流量控制,可靠性较差。

  • 适用场景:小型交换机。

  1. 碎片丢弃交换模式

  • 原理:过滤掉小于64字节的冲突碎片,只转发大于64字节的数据帧。

  • 优点:过滤冲突碎片,提高网络传输效率和带宽利用率。

  • 缺点:无法完全避免错误数据帧的传输。

  1. 存储转发交换模式

  • 原理:接收完整数据帧后进行循环冗余校验(CRC),校验无误后再转发。

  • 优点:可靠性高,能有效改善网络性能,支持不同速率端口的协同工作。

  • 缺点:数据处理延时较大,交换速度相对较慢。

虚拟局域网技术(VLAN)

VLAN的配置和删除

Cisco IOS系统(35系列)

  • 建立VLAN

bash复制

Switch-3528-TEST# vlan data
Switch-3528-TEST(vlan)# vlan <Vlan_ID> name <Vlan_name>

示例:

bash复制

Switch-3528-TEST(vlan)# vlan 100 name vlanwork
  • 删除VLAN

bash复制

Switch-3528-TEST(vlan)# no vlan <Vlan_ID>

Catalyst OS(65系列)

  • 建立VLAN

bash复制

Switch-6509-TEST>(enable) set vlan <vlan_ID> name <vlan_name>

示例:

bash复制

Switch-6509-TEST>(enable) set vlan 100 name vlan100
  • 删除VLAN

bash复制

Switch-6509-TEST>(enable) clear vlan <vlan_num>

示例:

bash复制

Switch-6509-TEST>(enable) clear vlan 100

VLAN Trunk的配置

Cisco IOS系统(35系列)

  1. 进入端口配置模式

bash复制

Switch-3528-TEST# configure terminal
Switch-3528-TEST(config)# int f0/24
  1. 配置VLAN Trunk模式

bash复制

Switch-3528-TEST(config-if)# switchport mode trunk
  1. 封装VLAN协议

  • 802.1q封装:

bash复制

Switch-3528-TEST(config-if)# switchport trunk encapsulation dot1q
  • ISL封装:

bash复制

Switch-3528-TEST(config-if)# switchport trunk encapsulation isl
  • 自动协商:

bash复制

Switch-3528-TEST(config-if)# switchport trunk encapsulation negotiate
  1. 允许通过的VLAN

bash复制

Switch-3528-TEST(config-if)# switchport trunk allowed vlan 1-10
  1. 不允许通过的VLAN

bash复制

Switch-3528-TEST(config-if)# switchport trunk allowed vlan except 11-20

Catalyst OS(65系列)

  1. 配置VLAN Trunk模式并封装协议

bash复制

Switch-6509-TEST>(enable) set trunk <mod/port> on dot1q
  1. 允许通过的VLAN

bash复制

Switch-6509-TEST>(enable) set trunk <mod/port> vlan <vlan_id>
  1. 不允许通过的VLAN

bash复制

Switch-6509-TEST>(enable) clear trunk <mod/port> <vlan_id>