當路由協議數據包、管理數據包、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
新聞熱點
疑難解答