按端口划分VLAN 按MAC地址划分VLAN 按网络层划分 基于规则的 802.10标准 · 802.1Q IVL和SVL (2013-06-20 15:00:47) SVL方式的二层交换机SVL(Shared VLAN Learning)方式的二层交换机在学习MAC地址并建立MAC地址表的过程中并不附加VLAN ID,或者说它的MAC地址表是为所有VLAN共享使用的。它的二层转发基本流程如下: (1) 根据接收到的以太网帧的源MAC信息添加或刷新MAC地址表项; (2) 根据目的MAC信息查找MAC地址表,如果没有找到匹配项,那么在报文对应的VLAN内广播; (3) 如果找到匹配项,但是表项对应的端口并不属于报文对应的VLAN,那么丢弃该帧; (4) 如果找到匹配项,且表项对应的端口属于报文对应的VLAN,那么将报文转发到该端口,但是如果表项对应端口与收到以太网帧的端口相同,则丢弃该帧。 这种类型的二层交换机转发与普通二层交换机转发基本相同,只是多了转发过程中的VLAN检查。这样的交换机可能遇到下述问题:位于不同VLAN的主机(或网络设备)具有相同的MAC地址,由于SVL交换机所有VLAN共享一个MAC表,这样对应的MAC表项中端口就会不断的变化,而且两个VLAN的报文转发也会受到影响,这种情况如图7所示。 图7中,VLAN 10的PC A发送给PC B的报文由于MAC地址表查找结果与VLAN不符而被丢弃了;同理,当MAC B学习到PORT 2时,VLAN 20的PC D和PC C之间的通信就会出现问题。这样,虽然不同的主机被隔离在了不同的冲突域和广播域中,但是MAC地址却可能导致不同VLAN的通信相互影响。 在实际应用中,SVL方式的二层交换机已经比较少见了。 IVL方式的二层交换机IVL(Independent VLAN Learning)方式的交换机在学习MAC地址并建立MAC地址表的过程中同时附加VLAN ID,同一个MAC地址可以出现在不同的VLAN中,这样的方式也可以理解为每个VLAN都有自己独立的MAC地址表。它的二层转发基本流程如下: (1) 根据接收到的以太网帧的源MAC+VLAN-ID信息添加或刷新MAC地址表项; (2) 根据目的MAC+VLAN-ID查找MAC地址表项,如果没有找到匹配项,那么在VLAN-ID对应的VLAN内广播; (3) 如果能够找到匹配表项,则向表项所示的对应端口转发,但是如果表项所示端口与收到以太网帧的端口相同,则丢弃该帧。 SVL方式交换机上可能遇到的转发问题,在IVL交换机中得以解决,如图8所示。 IVL方式的二层交换机转发流程更加清晰,VLAN之间不会互相影响,目前实际应用中的二层交换机大多采用这种方式。 ---------------------------------------------------------------------- 1、IVL模式是独享式的MAC地址学习模式,各个VLAN内学习到的MAC地址为各个VLAN所有,不会共享给其他VLAN。我司多数交换机为这种MAC学习模式。
SVL模式是共享式MAC地址学习模式,某一个VLAN学习到的MAC会被其他所有VLAN共享使用,我司3026系列交换机,2050系列交换机支持这种MAC学习模式。
2、转发流程角度
a、对于支持IVL的交换机,转发流程分以下几步
根据帧内Tag Header的VLAN ID查找L2FDB表,确定查找的范围;
根据目的MAC查找出端口,图中应该从端口2转发出去;
如果在L2FDB表中查找不到该目的MAC,则该报文将通过广播的方式在该VLAN内所有端口转发;
同时该以太网帧的源MAC将被学习到接收到报文的端口上,即端口1(VLAN 2);
L2FDB表中的MAC地址通过老化机制更新;
在转发的过程中,不会对帧的内容进行修改;
b、对于支持SVL的交换机,转发流程分以下几步
根据帧的目的MAC查MAC转发表(即L2FDB),查找相应的出端口。根据现有L2FDB表,报文应该从端口2发送出去;
判断出端口的VLAN ID和报文Tag Header内的VLAN ID是否匹配,匹配则转发,不匹配则丢弃;
如果在L2FDB表中查找不到该目的MAC,则判断出端口的VLAN ID和报文Tag Header内的VLAN ID是否匹配,不匹配直接丢弃;匹配则在该VLAN内广播;
L2FDB表中MAC地址通过老化机制来更新;
在转发的过程中,不会对帧的内容进行修改。
|