当路由协议数据包、管理数据包、keepaive等信息进入路由器时需要RP(Route Processor)来处理,或者说目的地址是路由器本身时,也需要由RP来处理。当有针对路由器自身的dos攻击时,如果所有信息都有RP处理,很容易导致路由器瘫痪。此时可通过设置selective packet discard来丢弃一些恶意的数据包,来保证设备的稳定运行。
* SPD默认是enable的 ;* SPD最初只是为pos口设计的,但后来GE口也可以使用spd技术
* 7200 Series Router
* 7500 Series Router
* 12000 Series Router
SPD可通过2种方式丢弃数据包:
* SPD State Check
* Input Queue Check
所有到RP的数据包可分为2类:
* 如果进入priority queue的,并且priority为7和6的,永远都不会被drop掉
* 其他数据包被放入general packet queue,并进行spd state check
对于进入general packet queue的数据包,也就是进行spd state check的数据包会进行如下处理:
* 如果queue的长度小于min-threshold,正常包和畸形包都不会被drop掉
* 如果queue的长度在min-threshold和max-threshold之间
* 如果是normal mode,正常包和畸形包会被随机的丢弃
* 如果是aggresive mode,所有畸形包会被丢弃
* 如果queue的长度大于max-threshold,那么所有正常包和畸形包都会被drop掉
* 如果spd工作在aggressive mode,所有的畸形包会被丢弃,例如invalid checksum、incorrect version、incorrect header length、incorrect packet length等。
* 通过命令ip spd mode aggressive开启aggressive mode
* 12000系列路由器不支持aggressive mode,因为畸形包在会被每个linecard丢弃,而不需要由GRP(gigabit route processor)处理
SPD state check是基于RP的,而Input Queue Check是基于interface的。如果不开启spd的话,默认情况下每个interface的queue是75,当queue中的数据大于75时,大于75的部分会被丢弃。这个queue可以通过show interface看到。
GigabitEthernet1/2 is up, line protocol is up
新闻热点
疑难解答