S5328C-EI 二层透传时大量DHCP报文被丢弃

发布时间:  2016-11-15 浏览次数:  285 下载次数:  0
问题描述

S5328 做二层设备传输时dhcp报文上送送到CPU并丢包 ,导致前端的大量终端设备不能通过dhcp获取地址

S5300 V100R006C01SPC100

组网:PC<---->S9303<---->S5328<--->C7609<--->城域网<--->DHCP Server

S53282层模式。



告警信息

设备日志信息反馈有大量的dhcp-client报文上传到cpu,并因为超过cpcar二丢弃

处理过程

1、检查配置发现S5328配置了DHCP enable和DHCP snooping enable

由于当设备作为用户的业务网关时,或者作为二层交换机但使能了DHCP/IGMP/MLD Snooping等Snooping功能时,设备需要解析处理相应的协议报文(例如ARP、DHCP、IGMP报文等),即接口上收到的协议报文会上送到CPU进行处理。而接口在上送协议报文时,如果部署了上述功能后,则所有的协议报文都会上送CPU处理。

S5328默认情况下,每秒只允许转发256kbpsdhcp-client,低于实际终端的请求数量,


2、通过如下方式调整限制:

cpu-defend policy 10(创建策略,编号10

car packet-type dhcp-client cir 2048(对dhcp-client的限制调整为2048kbps

quit

cpu-defend-policy 10 global(在全局模式下应用策略10

修改完以后开始观察,各分前端的终端开始陆续上线,在机房测试也可以正常获取地址,业务逐步恢复。

但是由于调整了dhcp-client的转发量,引起交换机负载加重,终端大量集中上线时交换机的CPU利用率一度超过70%


3、最终核实该设备不需要开启dhcp及dhcp snooping 功能

在全局模式下将DHCP及DHCP snooping功能关闭

undo dhcp snooping  enable

undo dhcp enable




根因

设备开启dhcp及DHCP snooping功能,导致经过该交换机的dhcp的报文都需要先上传cpu处理完,再由其他设备处理,由于业务时段高峰时DHCP报文数量大,且设备处理DHCP报文有速率限制导致大量正常报文被丢弃。

解决方案

设备开启了dhcp及dhcp snooping 服务,导致dhcp-client报文与要经过cpu处理后再交由其他设备处理,建议关闭dhcp及dhcp snooping功能
建议与总结


当大量的协议报文备cpu丢弃时,建议先核实该报文是否存在攻击,再确定是否根据实际需要去修改cpu的处理速度。

END