网络设备CPU保护策略CPP白皮书_第1页
网络设备CPU保护策略CPP白皮书_第2页
网络设备CPU保护策略CPP白皮书_第3页
网络设备CPU保护策略CPP白皮书_第4页
网络设备CPU保护策略CPP白皮书_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、网络设备CPU保护策略CPP白皮书前言摘要CPU保护策略(CPU Protect Policy,CPP)用于避免网络设备的CPU收到网络上不必要和具有恶意攻击目的的数据流,提高网络设备自身安全性能,还可以通过设置QoS过滤机制来保护网络设备的控制平台(Control Plane ,简称CP)在遭受攻击和高负载的情况下仍能保持数据转发和协议状态的稳定。本文阐述了目前控制平台策略的现状和发展趋势,以及目前锐捷网络产品采用的CPP技术,剖析了增加cpu保护策略的网络设备对于提高性能所起的作用。关键词CPP、DoS、CP缩略语清单缩略语英文全名中文解释CPPCPU Protect PolicyCPU保

2、护策略CPControl Plane控制平面目录 TOC o 1-3 h z u HYPERLINK l _Toc62050839 1概述:CPP的提出 PAGEREF _Toc62050839 h 1 HYPERLINK l _Toc62050840 1.1网络交换机的设计特点 PAGEREF _Toc62050840 h 1 HYPERLINK l _Toc62050841 1.2协议的工作特点或缺陷 PAGEREF _Toc62050841 h 2 HYPERLINK l _Toc62050842 2技术介绍 PAGEREF _Toc62050842 h 3 HYPERLINK l _T

3、oc62050843 2.1原理 PAGEREF _Toc62050843 h 3 HYPERLINK l _Toc62050844 2.2实现方案 PAGEREF _Toc62050844 h 4 HYPERLINK l _Toc62050845 3锐捷S86系列CPP技术特点 PAGEREF _Toc62050845 h 6 HYPERLINK l _Toc62050846 3.1配置灵活方便 PAGEREF _Toc62050846 h 6 HYPERLINK l _Toc62050847 3.2实时显示 PAGEREF _Toc62050847 h 6 HYPERLINK l _Toc

4、62050848 3.3配置实例 PAGEREF _Toc62050848 h 7 HYPERLINK l _Toc62050849 3.4分布式CPP PAGEREF _Toc62050849 h 7 HYPERLINK l _Toc62050850 4CPP技术性能测试 PAGEREF _Toc62050850 h 9 HYPERLINK l _Toc62050851 5结束语 PAGEREF _Toc62050851 h 18概述:CPP的提出随着交换机应用的逐渐普及,以及网络攻击的不断增多,越来越需要为数据交换机提供一种保护机制,对发往交换机CPU的数据流,进行流分类和优先级分级处理,

5、以及CPU的带宽限速,以确保在任何情况下CPU都不会出现负载过高的状况,从而能为用户提供一个稳定的网络环境,这种保护机制就是CPU Protect Policy,简称CPP。目前由于协议或者某些应用的需要,要求将报文trap到CPU进行处理,但是当同时有大量报文送到CPU(这种情况往往是恶意的),超过CPU负载时,引起CPU利用率高,这样就可能使一些正常需要执行的任务被长时间挂起,造成交换机瘫痪并导致网络中断。目前CPU保护问题主要包括以下几点:网络交换机的设计特点从交换机的体系结构来看,交换机有两部分组成:ASIC芯片用于高速的转发数据包,而CPU主要是来处理一些更为复杂的事务,对网络管理方

6、面任务和请求进行处理;处理各种协议报文,包括L2管理报文如BPDU、GVRP、ARP;L3管理报文如RIP、PIM、OSPF、VRRP、IGMP、ICMP;数据报文,包括未知单播IP数据包,未知组播的数据报文,RPF失败报文,各种错误报文。常见的DoS攻击实际上就是让主机没有资源去应付这些正常的请求,把大量的资源都用在处理那些攻击性质的请求和事务上,从而导致系统的不可用。当前网络中经常受到各种类型病毒的攻击,例如蠕虫病毒、尼姆达杀手、Slammer等蠕虫病毒。而它们对交换机的冲击,经常是利用了流转发技术的三层交换机的工作原理,第一个数据包进来的时候,三层交换机要像路由器那样通过查找路由表,确定

7、如何转发,并形成一个用ASIC完成转发查找的硬件流转发表。感染Slammer等蠕虫病毒的计算机会在很大的一段地址空间中,逐个发送指向不同IP地址的数据包。这种行为是恶意的。这样的操作会导致交换机的硬件流转发表溢出,导致CPU资源的大量浪费,甚至使交换机的CPU资源完全耗尽。类似的情况还有ARP请求,一个交换机收到了Slammer病毒产生的很多数据包,其目的网段就指向交换机连接的一个端口,交换机并不知道这些目的IP地址并不存在,会发很多ARP请求,期待对方给予回应。这些ARP请求也会占用CPU资源。类似的情况还有很多,比如发送大量的错误包,对交换机的Web管理界面、Telnet管理进行DoS攻击

8、,对交换机的网管系统进行ICMP的DoS攻击和SNMP的DoS攻击。协议的工作特点或缺陷最初的网络设计者在设计时更多地考虑如何保证网络的联通性,而很少考虑网络的安全性。同样,很多专家开发了能够自动发现拓扑结构、自动维系网络设备关系的协议,如路由协议,这些协议能够减少网管员的工作量,提高网络的可用性,但是很多协议存在潜在漏洞,使网络面临被攻击的风险。 生成树攻击假如在网络中用一台PC机模拟生成树协议,不断发布BPDU包,就会导致一定范围内的生成树拓扑结构定期地发生变化。虽然没有流量,但是由于生成树不稳定,仍会导致整个网络不断发生动荡,使网络不可用,使网络设备的CPU压力剧增。 路由协议攻击另一个

9、类似的攻击就是使用路由协议发起的攻击,这一点更容易实现,虽然一些路由协议使用了加密和认证算法,来传递路由的更新信息,但是目前网络很少真正启用这些功能。假如网络设计不合理,路由器配置不妥当,很容易让用户在一个原本应该是STUB的网段里,向整个网络发送路由信息,对整个网络的动态路由造成影响,导致路由震荡,有可能把一些通往重要方向的数据包指向错误的方向。而且即使网络启用了路由加密和认证,大量的攻击包虽然不影响网络的路由震荡,但依然让CPU无法承受。实际还有很多利用协议缺陷和交换机的设计点的攻击方式,这里只是做一个简单介绍。通过以上分析,可以明确,CPP模块对于交换机和稳定工作是必不可少的。技术介绍原

10、理从第一章的分析可以了解到,目前的网络协议对于安全的考虑性不足,以及交换机本身设计的特点,对CPP功能的需求就显得越来越强。CPP功能早期只是作为某些单一功能出现的,如ARP check,IP sysguard,这一种CPP主要是反攻击的。随着市场应用的逐渐增多,对于CPU保护提出了更高的要求,第二种cpp应用需要对trap到CPU的管理报文进行分类处理,第一类是作为维护基础协议的BPDU、GVRP和VRRP,第二类是作为维护路由协议的PIM,OSPF,IGMP,RIP报文,第三类是作为需要CPU处理的IP数据报文,第四类是堆叠中的管理报文,通过对这些报文的分级处理,确定优先关系,确保在CPU

11、高负载的情况下仍能保证基本的网络拓扑稳定。CPP的第三种应用是对各种报文的带宽限制,这种方式主要根据具体的网络应用环境确定各类报文的带宽限制,以及CPU可以处理的最高总带宽限制。CPP作为一个功能模块,无论是硬件实现或者软件实现,都基本上按照以下四个阶段进行:Classifying、Queuing、Scheduling和Shaping。 根据ACL将输入流归类分流Classifying:对每个需要送到CPU的报文进行分类,分类是根据报文的L2、L3以及L4信息。Queueing:该动作负责将各种不同类型的报文,根据不同的优先级送到指定的映射队列,在不同队列的报文具有不同的传输优先级。Sched

12、uling:当多个队列有报文需要传输时,Scheduling负责从中选择一个队列并传输这个队列的报文。调度算法有SP,SP+WRR,WRR,DRR,SP+DRR,以下分别介绍以上各种调度算法的原理绝对优先级(SP):高优先级队列具有最高的传输数据包的优先级。低优先级的队列要等到优先级高的队列传完才开始传输。在strict priority 调度中,加权设置总是为零weighted round-robin (加权轮转)调度(WRR) : WRR调度要求您定义一个数值用于规定当前队列与其他优先级队列的相对重要性(weight)。WRR调度防止低优先级的队列在高优先级队列传输时被完全忽略。WRR调度

13、对各个队列实行轮流发送机制。报文的权重与队列的重要性相对应。举例说明,如果队列1的weight为1,队列2的weight 为2,那么队列1在队列2每次发送完2个报文后发送1个报文。通过调度功能,即使高优先级的队列为非空,低优先级的队列也能获得机会发送报文,这样带宽资源可以得到充分的利用。Deficit Round Robin (DRR):WRR存在的一个很大的缺点是它是以报文个数做为权重的,这样对于报文平均长度明确的网络更加合适,但是网络中往往报文的长度是不可预知的,必然使WRR的应用受到局限,基于此,提出了以字节数为权重的进行加权轮转调度的算法Deficit Round Robin (DRR

14、),当为某个队列分配的权重低于零时,这时该队列的权重值变为赤字,同时影响到下一次调度该队列的赋予的权重,即该队列的新的权重会减去前一次而产生的赤字,这样就可以避免由于报文长度不等长而产生的非预期的调度。SP+WRR,SP+DRR,是指在队列调度中选择SP与WRR或者SP和DRR算法共同参与运算的方法,既保证最高优先级的队列能得到优先调度,又避免了其他低优先级队列由于长时间未被调度而饿死的问题。具体来说,就是高优先级的队列在所有报文被调度完成后,才根据选择的WRR或者DRR算法对其他队列进行调度。 Queueing与Scheduling过程Shaping:控制每个传输队列的最大和最小带宽,超过最

15、大速率的报文将被丢弃。实现方案从交换芯片的实现角度分析CPP的硬件实现,ASIC芯片将CMIC(CPU管理接口控制器)作为一个普通的物理转发口看待,即满足物理转发口的所有特性,具体到四个阶段分别描述如下:Classifying:根据入口逻辑决定报文trap到CMIC的内部优先级,这里可能改变该优先级的因素包括报文携带的pri,端口的缺省优先级,改变报文优先级的若干表项等。Queueing:可以设置CMIC口的入队方式,即报文内部优先级与CMIC队列的映射关系。Scheduling:CMIC接口对于不同队列中报文采用调度算法,支持SP,SP+WRR,WRR,DRR,SP+DRR。Shaping:

16、ASIC芯片支持对于CMIC口的流量整形,可以设置整个CMIC流量的最小带宽和最大带宽 ,以及每一个COS队列的最小带宽和最大带宽,队列的缓存空间,以及带宽的颗粒等。以上四个阶段可以作为CPP基于芯片的设计部分,只是由于不同的芯片类型决定了这几个阶段中哪些部分可以实现,哪些部分无法实现。也可以用软件方式实现CPP,软件实现主要有两个方面,一个是减少报文在CPU的处理时间,这样可以尽量提高cpu的报文处理性能和降低CPU的工作负荷;另一个是确定不同类型报文在CPU的处理优先级,但是也要综合考虑软件处理这些逻辑的开销,具体也是按照以上四个阶段进行分析。锐捷S86系列CPP技术特点配置灵活方便CPP

17、的用户界面CLI命令设计简单方便,这样使用户无需对相关专业知识有很深认识的情况下,也能完成配置,此外用户也可以灵活配置各种协议报文的优先级和限制速率,前者可以保证需要的报文能优先得到处理,后者可以降低CPU的负载,有效地防止网络中对交换机的攻击,保护交换机的安全和网络的运行稳定。设置每种类型报文的速率限制,pps可以在0-4096间随意设置。cpu-protec type arp|bpdu|dhcp|ipv6mc|igmp|rip|ospf|vrrp|pim|ttl1|unknown-ipmc|dvmrp pps pps_vaule设置每种类型报文映射的队列,pri可以在0-7之间设置,7所对

18、应的优先级最高,0所对应的优先级最低。cpu-protec type arp|bpdu|dhcp|ipv6mc|igmp|rip|ospf|vrrp|pim|-ttl1|unknown-ipmc pri pri_vaule实时显示实时显示当前CPU处理各类报文统计值,包括交换机收到的各类报文的累加值和速率,以及被丢弃的报文数,通过这些数据,可以使用户及时了解网络中当前的或者一段时间内的各类报文的流量情况,并可以以此为依据,实施CPP设置。而且对于S86设备,除了支持基于报文类型的流量统计外,还支持基于管理板和所有线卡的流量的分别显示,使报文数据能细化到每一块线卡。S8610(config)#s

19、how cpu-protect slot 2 Type Pps Total Drop arp 1000 10000 15 bpdu 200 8 0 dhcp 200 0 0 gvrp 200 0 0 ipv6-mc 200 0 0 dvmrp 200 0 0 igmp 200 0 0 ospf 200 0 0 pim 200 0 0 rip 200 0 0 vrrp 200 0 0 unknow-ipmc 200 0 0 ttl1 20 3 0s8610(config)#show cpu-protect type arp Slot Type Pps Total Drop MainBoard a

20、rp 200 15 0 Slot-2 arp 200 15 0 cpp的显示界面配置实例通过察看CPP的实时显示,可以明确当前交换机是否受到某种报文的攻击,如图4,显然,ARP报文的流量存在异常,这时可以通过配置CPP的流量限制达到保护交换机CPU的目的。cpu-protec type arp pps 400当某个端口上的输入流量达到限速或者进入了HOL状态时,或者该端口上存在多种需要由交换机CPU处理报文时,就需要界定这些报文的优先级关系,这些优先级关系可以根据的网络环境设置实施。cpu-protec type vrrp pri 7cpu-protec type bpdu pri 6 cpu

21、-protec type ospf pri 5分布式CPPS86的管理板与线卡的架构使S86的CPP具有了分布式的特点,它的优点是在硬件实现的CPP的基础上,由各个线卡进行一级过滤,而管理板进行二级过滤,通过这种二级过滤的机制,使管理板大大降低了被攻击的可能性,使管理板的各种协议能平稳地运行,最大程度的保护了管理板的CPU资源,保证了网络的安全和稳定。S86的分布式CPP方案在S86产品的所有类型线卡上都可以支持,而且该方案也保证了以后S86以后新增的线卡也能提供同样的支持,这一点是其他产品所不具备的。分布式的二级过滤的设计符合S86的管理板和多块线卡的架构,这样每一块线卡上的CPP保证了每一

22、块线卡能够对送CPU的报文实施分类限速,但是由于多块线卡的缘故,这样管理板收到的每一类报文仍有可能大于限速时,这时管理板的CPP又再一次保证了管理板的CP避免收到大量保文的攻击。CPP技术性能测试以RG-S8600在集美大学的应用拓扑为例,分析CPP在稳定网络拓扑的作用。集美大学的拓扑框架如下,核心设备为CISCO的S6509,同下联的汇聚设备S8606运行OSPF协议;S8606通过万兆线路同S6509相连接;S8606和S6509相连接的端口为TRUNK口,该端口是所有的VLAN成员口(每个端口配置100个vlan);S8606下联二层设备,同二层设备的连接端口也是采用TRUNK口,并且没

23、有进行VLAN配置。这里主要测试CPP抗攻击的能力。测试数据流用SMB产生,选取得观察点为图中最右边的RG-S8606,每台RG-S8606的配置为:M8606- CM IM8600- 24SFP/12GTM8600- 02XENPAK攻击类型:ARP报文攻击BPDU报文攻击GVRP报文攻击TTL=1的IP报文攻击打开OSPF协议下的攻击测试打开RIP协议下的攻击测试报文PIM报文攻击数据记录内容及分析结果预防ARP攻击报文Arp部分攻击测试源IP个数发送速率CPU利用率峰值Ping延时Ospf是否震荡PIM是否震荡CPP无限制(卡内)1个148packet/s33-35%100msNoNo1

24、488packet/s43-45%113mNoNo14881packet/s65-66%131ms20个包丢4个NoYes148810packet/s85%482ms时通时不通YesYes10个148packet/s48-53%100msNoNo1488packet/s68-69%113m,丢四个NoYes14881packet/s78%131ms20个包丢4个YesYes148810packet/s85%482ms时通时不通YesYesCPP限制Arp速率为500PPS(卡内)1个148packet/s10-13%89msNoNo1488packet/s22-25%100msNoNo1488

25、1packet/s22-25%121msNoNo148810packet/s22-25%133msNoNo10个148packet/s10-14%89msNoNo1488packet/s23-25%100msNoNo14881packet/s22-25%121msNoNo148810packet/s22-25%133msNoNo结论:从以上数据来看,当采用CPP保护机制后,可以有效防。预防L2协议报文攻击BPDU攻击测试协议打开/关闭发送速率CPU利用率峰值Ping延时STP是否震荡Ospf是否震荡PIM是否震荡CPP无限制(卡内)MSTP打开148packet/s32-36%100ms丢3%

26、NoYesNo1488packet/s43-48%216m丢15%NoYesYes14881packet/s65-69%380ms丢30%YesYesYes148810packet/s85-88%580ms丢50%YesYesYesMSTP关闭148packet/s48-53%82ms未开启NoNo1488packet/s68-69%134m未开启NoNo14881packet/s78%213ms丢20%未开启YesYes148810packet/s88-90%245ms丢30%未开启YesYesCPP限制BPDU速率为100PPS(卡内)MSTP打开148packet/s10-13%80ms

27、未开启NoNo1488packet/s10-13%93ms未开启NoNo14881packet/s10-13%111ms未开启NoNo148810packet/s10-13%123ms未开启NoNoMSTP关闭148packet/s10-14%89ms未开启NoNo1488packet/s10-14%100ms未开启NoNo14881packet/s10-14%111ms未开启NoNo148810packet/s10-14%123ms未开启NoNoGvrp攻击测试协议打开/关闭发送速率CPU利用率峰值Ping延时Ospf是否震荡PIM是否震荡CPP无限制GVRP打开(视实际情况而定)148pa

28、cket/s30-32%100msNoNo1488packet/s39-41%113mNoNo14881packet/s55-59%189msNoNo148810packet/s78-82%324ms丢30%YesYesGVRP关闭148packet/s30-35%100msNoNo1488packet/s38-41%113mNoNo14881packet/s49-51%231msNoNo148810packet/s78-82%369ms丢35%YesYesCPP限制Gvrp协议报文速率为500PPSGVRP打开148packet/s10-13%81msNoNo1488packet/s23-2

29、5%93msNoNo14881packet/s23-25%111msNoNo148810packet/s23-25%123msNoNoGVRP关闭148packet/s10-14%86msNoNo1488packet/s23-25%100msNoNo14881packet/s23-25%108msNoNo148810packet/s23-25%110msNoNo结论:从以上数据来看,当采用CPP保护机制后,可以有效防止交换机资源被抢占,基本协议状态不会产生振荡和跃变。预防L3协议报文的攻击PIM-DM部分攻击测试协议打开/关闭发送速率CPU利用率峰值Ping延时Ospf是否震荡PIM是否震荡C

30、PP无限制PIM协议打开(视实际情况而定)148packet/s38-42%200ms,丢30%YesNo1488packet/s46-51%280m,丢45%YesYes14881packet/s78-89%380ms,丢50%YesYes148810packet/s90%580ms,丢70%YesYesPIM协议关闭148packet/s38-42%200ms,丢30%Yes未开启1488packet/s46-51%289m,丢45%Yes未开启14881packet/s78-89%385ms,丢48%Yes未开启148810packet/s90%590ms,丢70%Yes未开启CPP限制

31、PIM协议报文速率为100PPSPIM协议打开148packet/s10-14%71msNoNo1488packet/s10-14%83msNoNo14881packet/s10-14%101msNoNo148810packet/s10-14%113msNoNoPIM协议关闭148packet/s10-14%76msNoNo1488packet/s10-14%90msNoNo14881packet/s10-14%108msNoNo148810packet/s10-14%110msNoNoOspf部分攻击测试协议打开/关闭发送速率CPU利用率峰值Ping延时Ospf是否震荡PIM是否震荡CPP无

32、限制Ospf协议打开(视实际情况而定)148packet/s36-41%100msNoNo1488packet/s45-50%280m,丢25%YesNo14881packet/s58-69%388ms,丢50%YesYes148810packet/s80%680ms,丢70%YesYesOspf协议关闭148packet/s38-42%150ms,NoNo1488packet/s46-51%289m,丢45%YesYes14881packet/s78-89%385ms,丢48%YesYes148810packet/s90%590ms,丢60%YesYesCPP限制Ospf Hello报文速率

33、为100PPSOspf协议打开148packet/s11-13%75msNoNo1488packet/s11-13%82msNoNo14881packet/s11-13%96msNoNo148810packet/s11-13%105msNoNoOspf协议关闭148packet/s11-13%76msNoNo1488packet/s11-13%86msNoNo14881packet/s11-13%98msNoNo148810packet/s11-13%103msNoNoRIP部分攻击测试协议打开/关闭发送速率CPU利用率峰值Ping延时RIP是否震荡PIM是否震荡CPP无限制RIP协议打开148packet/s38-42%100msNoNo1488packet/s46-51%180m,丢25%YesYes14881packet/s78-89%288ms,丢50%YesYes148810packet/s90%380ms,丢70%YesYesRIP协议关闭148packet/s38-42%100ms,未开启No1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论