首页 > 技术文章 > VLAN扩展技术

xiaowangc 2020-12-18 18:35 原文

VLAN扩展技术

1.1 Isolate-user-vlan技术介绍

​ 随着以太网技术的快速发展,很多运营商采用LAN接入小区带宽。基于用户安全和管理计费等方面考虑,运营商一般要i去接入用户互相隔离。VLAN是天然的隔离手段,于是很自然的一个想法是每个用户一个VLAN。但是,根据IEEE 802.1Q协议规定,设备最大可使用的VLAN资源为4094个。对于运营商的设备来说,如果每个用户一个VLAN,4094个VLAN远远不够,而且,为每个只包含一个用户的VLAN配置第三层接口,将耗费大量的IP地址和部署成本。

​ VLAN ID主要消耗在接入层。对于运营商来说,如果既能保证接入层用户之间的相互隔离,又能将接入层的VLAN ID屏蔽掉,之可见汇聚层的VLAN ID,则4094个VLAN是够用的。为了解决上述问题。Isolate-user-vlan技术应运而生。

​ Isolate-user-vlan 采用二层vlan结构,它在同一台设备上配置Isolate-user-vlan和Secondary VLAN两类VLAN。其功能如下:

(1)Isolate-user-user 用于上行连接,不同的Secondary VLAN关联到同一个Isolate-user-vlan。上行连接的设备只知道Isolate-user-vlan,而不必关系Secondary VLAN,简化了网络配置,节省了VLAN资源。

(2)Secondary VLAN 用于连接用户,Secondary VLAN之间二层帧互相隔离。如果希望实现同一个Isolate-user-vlan 下 Secondary VLAN用户之间的互通,可以通过配置上行设备的本地代理ARP功能来实现三层报文的互通。

(3)一个Isolate-user-vlan 可以和多个Secondary VLAN相对应,理论上每个Isolate-user-vlan 可以包含4094个Secondary VLAN,所以相当于提供了4094x4094个VLAN。Isolate-user-vlan 下面的Secondary VLAN对上行设备不可见。

​ 其实,Isolate-user-vlan的功能是利用Hybrid类型端口的灵活性以及VLAN间的MAC地址同步技术来实现的。

​ Hybrid端口在转发数据时,可以按照需要进行多个VLAN数据流量的发送和接收,可以根据需要决定发送数据帧时是否携带802.1Q标签。正是因为这一灵活性,Hybrid端口可以用于交换机之间的连接,可以用于连接用户计算机。

​ 如果仔细分析不难发现,交换机转发时会存在一个较为严重的问题。每次上行和下行的报文都需要广播才能到达目的地。当Secondary VLAN和Isolate-user-vlan包含的端口较多时,这样的处理方式会占用大量的带宽资源,大大降低了交换机的交换性能,而且不安全(广播报文容易被截获和侦听)。通过MAC地址同步机制可以解决这个问题。

​ Isolate-user-vlan的MAC地址同步机制有如下两种:

(1)Secondary VLAN到Isolate-user-vlan的同步,即下行端口在Secondary VLAN内学习到的MAC地址都同步到Isolate-user-vlan内,而出接口则保持不变

(2)Isolate-user-vlan到Secondary VLAN的同步,即上行端口在Isolate-user-vlan学习到的MAC地址同步到所有的Secondary VLAN内,而出接口则保持不变。

1.2 Super VLAN技术介绍

​ Isolate-user-vlan 成功的解决了降低VLAN数量的问题,同时在一定程度上也实现了三层网关的共享。但它也存在MAC地址复制而消耗MAC地址表项的问题,并且该技术本身也属于一个二层VLAN技术。

​ 在交换局域网络中,VLAN技术以其对广播域的灵活控制(可跨物理设备)、部署方便而得到了广泛的应用。但是在一般的三层交换机中,通常是采用一个VLAN对应一个端口的方式来实现广播域之间的互通,这在某些情况下导致了对IP地址的较大浪费。

​ 在大型局域网中,采用接入层和核心层二层结构的组网方式,所有的网关都设在核心层设备上。因为每个VLAN都需要一个接口来实现路由的互通,而大部分交换机支持的VLAN数量远远多于VLAN接口数量。如果因为特殊的需要,网络里划分了成百上千个VLAN,此时核心层设备会出现VLAN接口数量不够的情况。如果有一种技术,可以对VLAN进行聚合,从而大幅缩减实际需要的VLAN接口数量,则交换机支持的VLAN接口少的问题就迎刃而解。

​ 为了解决上述问题,Super VLAN技术应运而生。

​ Super VLAN技术中引用了Super VLAN和Sub VLAN这两个概念。

​ Super VLAN和通常意义上的VLAN不同,它只建立三层接口,而不包含物理接口。因此,可以把它看作一个逻辑的三层的概念——若干Sub VLAN的集合,并为Sub VLAN提供三层转发。与一般没有物理端口的VLAN不同,它的接口的UP状态不依赖于其自身物理端口的UP,而生依赖它所包含的Sub VLAN中存在UP状态的物理端口。

​ Sub VLAN则只包含物理端口,但不能建立三层VLAN接口。它与外部的三层交换是靠Super VLAN的接口来实现的。

​ 每一个普通VLAN都有一个三层逻辑接口和若干物理接口,而Super VLAN把这两部分剥离开来。Sub VLAN只映射若干物理端口,负责保留各自独立的广播域;而用一个Super VLAN来实现所有Sub VLAN共享同一个接口的需求,使不同Sub VLAN内的主机可以共用一个Super VLAN的网关,在Super VLAN对应的子网里分配地址;然后再通过建立Super VLAN和Sub VLAN间的映射关系,把三层逻辑接口和物理端口这两部分有机地结合起来。

​ 这样做既减少了一部分子网号、子网默认网关地址和子网定向广播地址的消耗,又可以使不同广播域使用同一子网网段地址,消除了子网差异,增加了编址的灵活性,减少了闲置地址浪费;并用本地本地代理ARP来实现Sub VLAN间的三层互访,从而在实现普通VLAN功能的同时,达到了节省交换机VLAN接口的目的。

1.3 代理ARP

​ 如果ARP请求是从一个网络的主机发往同一网段却不在同一物理网络上的另一台主机,那么连接它们的具有代理ARP功能的设备就可以回答该请求,这个过程称作代理ARP(Proxy ARP)。代理ARP功能屏蔽了分离的物理网络这一事实,使用户使用起来好像在同一物理网络上。

​ 代理ARP分为普通代理ARP和本地代理ARP,二者的应用场景区别如下:

(1)普通代理ARP的应用场景:想要互通的主机分别连接到设备的不同三层接口上,且这些主机不在同一广播域中。

(2)本地代理ARP的应用场景:想要互通的主机连接到设备的同一个三层接口上,且这些主机不在同一个广播域中。

​ 处于同一网段的主机,当连接到设备的不同三层接口时,可以利用设备的普通代理ARP功能,通过三层转发实现互通。

​ 普通代理ARP的优点是:它可以只被应用在一个设备上(此时该设备的作用相当于网关),不会影响到网络中其他设备的路由表。普通代理ARP功能可以在IP主机没有配置默认网关或者IP主机没有任何路由能力的情况下使用。

​ 为了实现三层互通,在下面3中情况中的任一情况下需要开启本地代理ARP功能。

(1)连接到同一个VLAN不同二层隔离的端口下的设备要实现三层互通。

(2)开启Super VLAN功能后,属于不同Sub VLAN下的设备要实现三层互通。

(3)开启Isolate-user-vlan 功能后,属于不同Secondary VLAN下的设备要实现三层互通。

推荐阅读