无线网的接入相关的MAC地址列表,MAC地址列表是一个很普通的问题,但我们如何对MAC地址列表进行更精确的设置,给我们的使用到来方便呢?
前段时间遇到了个怪问题,如图所示,AP-1在分布层交换1处接入,AP-2在分布层2处接入。RF终端1通过无线网访问服务器。但当RF在AP-1和AP-2之间漫游了几次后RF就只能在AP-2区域正常使用,一到AP-1区域就大量丢包。
无线网的接入MAC地址列表
实际上RF-1连接是正常的,通过其他的无线电脑测试也是正常。百思不得其解。经过仔细分析,最后确定原因就出在AP的接入,当然RF的网络管理性能不足也是一个方面,但此处不做讨论。只是通过RF引出了这个网络问题。
在原来的想法中,我以为只要所有AP有一个SSID,处于不同频段,同在一个VLAN这样就可以实现很好的无缝漫游。实际上并非如此。如果AP-1和AP-2通过不同的分布层交换连接到核心,核心在处理无线终端RF时就存在一个延迟的问题,因为RF要访问的是另一个网段的服务器,核心交换要对RF数据封包做路由,网络核心交换机做路由封包时会先从缓存拾取MAC地址列表。
核心交换是端口交换,每一个端口都维护一个MAC地址列表,当地址存在时,就会直接转发而不是所有端口都广播。而由于RF做了漫游动作,所以核心交换机的两个端口都会存在RF的MAC地址列表记录。此时核心交换机就要根据终端发来的ICMP确认真正来源,由于RF的网络管理功能并不是很强悍。
所以就可能存在一个小概率事故,RF没有及时和核心交换做来源确认,核心就会一直吧这个MAC地址列表作为snooping做等待处理,虽然是等待处理,但对于请求的数据包并未丢弃。而仍然是从缓存表里确认数据来源,将数据抛给指定端口。这样就造成了部分数据去AP-1。部分去AP-2,自然会出现丢包。
所以在设计这种交叉漫游的AP无线网络时,一定要保证AP在接入层的一致性,AP-1和AP-2在做网络接入时连接到同一个分布层设备就不会出现这种状况,这也是在设计无线网络时要考虑的一个重要因素。