交换机(Switch)的个人理解

Ledo
2013-11-19 / 0 评论 / 4,842 阅读 / 正在检测是否收录...

概念与作用

交换机(switch)是集线器的换代产品,其作用也是将传输介质的线缆汇聚在一起,以实现计算机的连接。但集线器工作在OSI模型的物理层,而交换机工作在OSI模型的数据链路层。

工作原理

地址表

  • 端口地址表记录了端口下包含主机的MAC地址。端口地址表是交换机上电后自动建立的,
  • 保存在RAM中,并且自动维护。
  • 交换机隔离冲突域的原理是根据其端口地址表和转发决策决定的。

    转发决策

  • 交换机的转发决策有三种操作:丢弃、转发和扩散。
  • 丢弃:当本端口下的主机访问已知本端口下的主机时丢弃。
  • 转发:当某端口下的主机访问已知某端口下的主机时转发。
  • 扩散:当某端口下的主机访问未知端口下的主机时要扩散。
  • 每个操作都要记录下发包端的MAC地址,以备其它主机的访问。

VLAN

  • Virtual Lan是虚拟逻辑网络,交换机通过VLAN设置,可以划分为多个逻辑网络,从而隔离广播域。具有三层模块的交换机可以实现VLAN间的路由。

端口模式

个人理解部分

1、Access口:仅可以属于某一个Vlan,所以可以连客户端,且客户端只能属于端口的VLAN。

2、Trunk口:可以属于多个VLAN ,且默认VLAN的数据帧会发出会去掉VLAN标签,其他的VLAN发送不去除VLAN标签,所以只有默认VLAN的端口可以连客户端

3、Hybrid口:可以属于多个VLAN,可以让属于多个VLAN的端口为数据帧打上指定的VLAN标签或去掉某些VLAN标签。所以可以指定为连接的客户端分配多个VLAN。

默认VLAN

1、Access端口只属于1个VLAN,所以它的缺省VLAN就是它所在的VLAN,不用设置;

2、Hybrid端口和Trunk端口属于多个VLAN, 所以需要设置缺省VLAN ID。缺省情况下,Hybrid端口和Trunk端口的缺省VLAN为VLAN 1;

如果设置了端口的缺省VLAN ID,当端口接收到不带VLAN tag的报文后,则将报文转发到属于缺省VLAN的端口;当端口发送带有VLAN tag的报文时,如果该报文的VLAN ID与端口缺省的VLAN ID相同,则系统将去掉报文的VLAN tag,然后再发送该报文。

注:对于华为交换机,缺省VLAN被称为“Pvid Vlan”,对于思科交换机缺省VLAN被称为“Native Vlan”。

交换机接口出入数据处理过程:

1、Access端口收报文:

收到电脑或者其他设备的一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID, 并进行交换转发;如果有则直接丢弃(缺省);

Access端口发报文:

将报文的VLAN信息剥离, 直接发送出去;

2、Trunk端口收报文

收到一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发;如果有则判断该Trunk端口是否允许该VLAN的数据进入:如果可以则转发,否则丢弃;

Trunk端口发报文:

比较端口的PVID和将要发送报文的VLAN信息,如果两者相等则剥离VLAN信息,再发送,如果不相等则直接发送;

3、Hybrid端口收报文:

收到一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID, 并进行交换转发;如果有则判断该Hybrid端口是否允许该VLAN的数据进入,如果可以则转发,否则丢弃(此时端口上的untag配置是不用考虑的,untag配置只是对发送报文时起作用)。

Hybrid端口发报文

1、判断该VLAN在本端口的属性(disp interface即可看到该端口对哪些VLAN是untag,哪些VLAN是tag);

2、如果是untag则剥离VLAN信息,再发送,如果是tag则直接发送;

0

评论 (0)

取消