throbber
WHITE PAPER
`
`DEPLOYING CONTROL PLANE POLICING
`
`
`This document will provide an overview of Cisco IOS® Control Plane Policing (CPP), as well as deployment recommendations
`and guidelines for this Cisco IOS Security Infrastructure feature. CPP is used to increase security on Cisco routers by
`protecting the Route Processor from unnecessary and often malicious traffic. It allows users to configure a Quality of Service
`(QoS) filter that manages the traffic flow of control plane packets to protect the control plane of Cisco routers and switches
`against reconnaissance and Denial of Service (DoS) attacks allowing the Control Plane (CP) to maintain packet forwarding
`and protocol states despite an attack or heavy load on the router or switch.
`
`PROTECTING THE ROUTE PROCESSOR
`A router can be logically divided into four functional components or planes:
`
`1. Data Plane
`
`2. Management Plane
`
`3. Control Plane
`
`4. Services Plane
`
`The vast majority of traffic travels through the router via the data plane; however, the Route Processor must handle certain packets, such as routing
`updates, keepalives, and network management. This is often referred to as control and management plane traffic.
`
`Because the Route Processor is critical to network operations, any service disruption to the Route Processor or the control and management planes
`can result in business-impacting network outages. A DoS attack targeting the Route Processor, which can be perpetrated either inadvertently or
`maliciously, typically involves high rates of punted traffic that result in excessive CPU utilization on the Route Processor itself. This type of attack,
`which can be devastating to network stability and availability, may display the following symptoms:
`• High Route Processor CPU utilization (near 100%)
`• Loss of line protocol keepalives and routing protocol updates, leading to route flaps and major network transitions
`• Interactive sessions via the Command Line Interface (CLI) are slow or completely unresponsive due to high CPU utilization
`• Route Processor resource exhaustion—resources such as memory and buffers are unavailable for legitimate IP data packets
`• Packet queue backup, which leads to indiscriminate drops (or drops due to lack of buffer resources) of other incoming packets
`
`CPP addresses the need to protect the control and management planes, ensuring routing stability, availability, and packet delivery. It uses a dedicated
`control-plane configuration via the Modular QoS CLI (MQC) to provide filtering and rate limiting capabilities for control plane packets.
`
`Figure 1 illustrates the flow of packets from various interfaces. Packets destined to the control plane are subject to control plane policy checking,
`as depicted by the control plane services block.
`
`
`All contents are Copyright © 1992–2005 Cisco Systems, Inc. All rights reserved. Important Notices and Privacy Statement.
`Page 1 of 23
`
`
`
`Exhibit 2022
`IPR2016-00309
`
`

`
`
`
`Figure 1. Packet Flow
`
`
`
`COMMAND SYNTAX
`CPP leverages MQC to define traffic classification criteria and to specify configurable policy actions for the classified traffic. Traffic of interest must
`first be identified via class-maps, which are used to define packets for a particular traffic class. Once classified, enforceable policy actions for the
`identified traffic are created with policy-maps. The control-plane global command allows the CP service policies to be attached to control
`plane itself.
`
`There are four steps required to configure CPP:
`
`1. Define a packet classification criteria
`
`router(config)#class-map <traffic_class_name>
`
`router(config-cmap)#match <access-group | protocol* | ip prec | ip dscp>
`
`
`
`2. Define a service policy
`
`router(config)#policy-map <service_policy_name>
`
`router(config-pmap)#class <traffic_class_name>
`
`router(config-pmap-c)# police <cir | rate> conform-action <transmit | drop > exceed-action <transmit
`
`| drop>
`
`cir
`
`rate
`
`
`
`Committed information rate (Bits per second)
`
`Specify policy rate in packets per second (pps)
`
`3. Enter control-plane configuration mode
`
`router(config)#control-plane
`
` *
`
` When using the ‘match protocol’ classification criteria, ARP is the only protocol supported. All other protocols need an ACE entry for classification purposes.
`
`
`© 2005 Cisco Systems, Inc. All rights reserved.
`Important notices, privacy statements, and trademarks of Cisco Systems, Inc. can be found on cisco.com.
`Page 2 of 19
`
`
`
`

`
`
`
`4. Apply QoS policy
`
`service-policy
`
`{input | output} <service_policy_name>
`
`input
`
`output**
`
`
`
`Assign policy-map to the input of an interface
`
`Assign policy-map to the output of an interface
`
`COMMAND REFERENCES
`Please refer to the following links for more information on the control plane policing and QoS command syntax.
`
`Control Plane Policing: http://www.cisco.com/en/US/products/sw/iosswrel/ps1838/products_feature_guide09186a00801afad4.html#1027184
`
`QoS Command Reference: http://www.cisco.com/en/US/products/sw/iosswrel/ps5207/products_command_reference_book09186a00801a7ec7.html
`
`CISCO HARDWARE AND CISCO IOS SOFTWARE SUPPORT
`Refer to Table 1 for Cisco hardware and Cisco IOS Software support.
`
`Table 1. Cisco Hardware and Cisco IOS Software Support
`
`Cisco Hardware
`Cisco 12000 Series Router
`
`Cisco IOS Software Release
`Release 12.0(29)S
`
`Cisco 7600 Series
`
`Cisco 6500 Series
`
`Cisco 7200 Series
`
`Cisco 7500 Series
`
`Cisco 1751 Router
`
`Cisco 2600/2600-XM Series
`
`Release 12.2(18)SXD1
`
`Release 12.2(18)SXD1
`
`Release 12.2(18)S
`
`Release 12.3(4)T
`
`Cisco 3700 Series
`
`Cisco 7200 Series
`
`Cisco 1800 Series
`
`Cisco 2800 Series
`
`Cisco 3800 Series
`
`
`
`Release 12.3(8)T
`
`Release 12.3(11)T
`
`DEVELOPING A CPP POLICY
`Since CPP filters traffic destined to the Route Processor, it is critical to gain an adequate level of understanding about the legitimate traffic destined
`for the Route Processor prior to deployment. Configuring CPP policies without this knowledge may result in the blockage of critical traffic, with
`the potential for unintentionally provoking a DoS attack. In some networks, determining the exact traffic profile required for CPP policies might
`be difficult, so a careful staged approach should be taken to define these policies. Refer to the Deployment Guidelines section of this document
`for a recommended conservative methodology for deploying CPP using iterative ACL configurations to help identify and filter traffic.
`
`
`** Although MQC can be leveraged to support outbound policies, this document focuses solely on input CPP since input CPP provides the most effective protection
`scenario. Output CPP is mainly used to suppress responses to input packets and does not limit response generation.
`
`
`
`
`© 2005 Cisco Systems, Inc. All rights reserved.
`Important notices, privacy statements, and trademarks of Cisco Systems, Inc. can be found on cisco.com.
`Page 3 of 19
`
`
`
`

`
`
`
`Traffic Classification
`Prior to developing the actual CPP policy, administrators must identify required traffic and separate it into different classes. Multiple classification
`schemes can be used, but Cisco recommends a methodology that involves dividing traffic into distinct groups based on relative importance.
`
`The following example uses nine different classes of traffic, thus providing a granular level of detail for real-world environments. Use this as a
`reference; however, note that the actual number and type of classes needed for a network may differ and should be selected based on local
`requirements, security policies, and a thorough analysis of the baseline traffic of the customer.
`
`The nine traffic classes in this example were created with the following criteria:
`
`1. Border Gateway Protocol (BGP)
`• Traffic that is crucial to maintaining neighbor relationships for BGP routing protocol
`• Examples: BGP keepalives and routing updates
`• Maintaining BGP routing protocol is crucial to maintaining connectivity within a network or to a Service Provider
`• Sites that do not run BGP will not need to use this class
`
`2.
`Interior Gateway Protocol (IGP)
`• Traffic that is crucial to maintaining IGP routing protocols
`• Examples: Open Shortest Path First (OSPF), Enhanced Interior Gateway Routing Protocol (EIGRP), and Routing Information Protocol (RIP)
`• Maintaining IGP routing protocols is crucial to maintaining connectivity within a network
`
`3. Management
`• Necessary, frequently used traffic that is required during day-to-day operations
`• Examples: traffic used for remote network access, Cisco IOS Image upgrades and management (ie: telnet, Secure Shell (SSH), Network Time
`Protocol (NTP), Simple Network Management Protocol (SNMP), Terminal Access Controller Access Control System (TACACS), Hypertext
`Transfer Protocol (HTTP), Trivial File Transfer Protocol (TFTP), and File Transfer Protocol (FTP)
`
`
`4. Reporting
`• Traffic used for generating network performance statistics for reporting
`• Example: using Cisco IOS IP Service Level Agreements (SLAs) to generate ICMP with different DSCP settings in order to report on response
`times within different QoS data classes
`
`
`5. Monitoring
`• Traffic used for monitoring a router
`• Traffic should be permitted but should never pose a risk to the router; with CPP, this traffic can be permitted but limited to a low rate
`• Examples: ICMP echo request (ping), and traceroute
`
`6. Critical Applications
`• Critical application traffic that is specific and crucial to a particular customer environment
`• Traffic included in this class should be tailored specifically to the required application requirements of the user (ie: one customer may use
`multicast, while another uses IPSec and/or Generic Routing Encapsulation [GRE])
`• Examples: GRE, Hot Standby Router Protocol (HSRP), Virtual Router Redundancy Protocol (VRRP), Session Initiation Protocol (SIP), Data
`Link Switching (DLSw), Dynamic Host Configuration Protocol (DHCP), Multicast Source Discovery Protocol (MSDP), Internet Group
`Management Protocol (IGMP), Protocol Independent Multicast (PIM), Multicast Traffic, and IPSec
`
`
`
`
`© 2005 Cisco Systems, Inc. All rights reserved.
`Important notices, privacy statements, and trademarks of Cisco Systems, Inc. can be found on cisco.com.
`Page 4 of 19
`
`
`
`

`
`
`
`7. Layer 2 Protocols
`• Traffic used for Address Resolution Protocol (ARP)
`• Excessive ARP packets can potentially monopolize Route Processor resources, starving other important processes; CPP can be used to rate limit
`ARP packets to prevent this
`• Currently, ARP is the only Layer 2 protocol that can be specifically classified using the “match protocol” classification criteria
`
`8. Undesirable
`• Explicitly identifies “bad” or malicious traffic that should be unconditionally dropped and denied access to the Route Processor
`• Particularly useful when known traffic destined for the router should always be denied and not placed into a default category; explicitly denying
`traffic allows the end-user to collect rough statistics on this traffic via show commands and offers some insight into the rate of denied traffic
`
`
`9. Default
`• All remaining traffic destined for the Route Processor that has not been identified
`• MQC provides the default class, so the user can specify the treatment to be metered out to traffic not explicitly identified in the other user defined
`classes
`• Give this traffic access to the Route Processor at a highly reduced rate
`• With a default classification in place, statistics can be monitored to determine the rate of otherwise unidentified traffic destined to the control-
`plane. Once this traffic is identified, further analysis can be performed to classify it and if needed, the other CPP policy entries can be updated
`to account for this traffic
`
`Classification Access Lists
`Using the classification scheme defined in the previous section, commonly required traffic is identified with a series of Access Control Lists (ACLs).
`This example uses extended-named ACLs, which are recommended because of their flexibility in allowing the targeted removal and insertion of
`actions within the ACL. This enables classification ACLs to be updated without completely removing and re-adding them. Named ACLs can also
`be named using descriptive names to indicate their use.
`
`In this example, the following named classification ACLs are used to classify the traffic into the recommended classes:
`• coppacl-bgp: BGP traffic
`• coppacl-igp: IGP traffic
`• coppacl-management: management traffic
`• coppacl-reporting: reporting traffic
`• coppacl-monitoring: monitoring traffic
`• copp acl-critical-app: critical application traffic
`• coppacl-layer2: ARP traffic
`• coppacl-undesirable: explicitly denies unwanted traffic (i.e. slammer worm in this example)
`
`The ACLs will be used to build classes of traffic that are used to define the service policies.
`
`Note: As CPP policies are applied to the control plane interface, only traffic destined for the Route Processor will be affected by the CPP policy.
`The destination key word ‘any’ can be used to classify all traffic destined to any interface on the router. The router can be further secured by
`specifying exact destination IP addresses, which limits the number of specific interfaces that can receive certain protocols.
`
`
`© 2005 Cisco Systems, Inc. All rights reserved.
`Important notices, privacy statements, and trademarks of Cisco Systems, Inc. can be found on cisco.com.
`Page 5 of 19
`
`
`
`

`
`
`
`In this example, the following named classification ACLs were created for CPP classification:
`
`In this network, BGP is used and must be classified. This ACL only classifies traffic destined to the IP address of 10.9.9.9.
`
`ip access-list extended coppacl-bgp
`
` remark CoPP BGP traffic class
`
`! allow BGP from a known peer to this router’s BGP TCP port
`
` permit tcp host 47.1.1.1 host 10.9.9.9 eq bgp
`
`! allow BGP from a peer’s BGP port to this router
`
` permit tcp host 47.1.1.1 eq bgp host 10.9.9.9
`
` permit tcp host 10.86.183.120 host 10.9.9.9 eq bgp
`
` permit tcp host 10.86.183.120 eq bgp host 10.9.9.9
`
`
`
`For the IGP class, OSPF is the IGP used in this example.
`
`ip access-list extended coppacl-igp
`
` remark CoPP IGP traffic class
`
`! permit OSPF
`
` permit ospf any host 224.0.0.5
`
` permit ospf any host 224.0.0.6
`
` permit ospf any any
`
`
`
`The Management class is for traffic that is required for accessing and managing the router. In this example, TACACS, ssh, telnet, snmp, ntp and FTP
`(for IOS upgrades) is classified in this class.
`
`ip access-list extended coppacl-management
`
` remark CoPP management traffic class
`
`! permit return traffic from TACACS host
`
`permit tcp host 1.1.1.1 host 10.1.1.1 established
`
`! permit ssh access to the router from a specific subnet
`
`permit tcp 10.86.183.0 0.0.0.255 any eq 22
`
`! permit telnet access to the router from a specific subnet
`
`permit tcp 10.86.183.0 0.0.0.255 any eq telnet
`
`! permit SNMP access from the NMS host to the router
`
`permit udp host 1.1.1.2 any eq snmp
`
`
`
`Allow the router to receive NTP packets from a known clock source.
`
`permit udp host 1.1.1.3 any eq ntp
`
`! Permit FTP from a specific host for IOS upgrades.
`
`permit tcp host 10.9.9.9 eq ftp host 1.1.1.1
`
`permit tcp host 10.9.9.9 eq ftp-data host 1.1.1.1
`
`
`
`The reporting class is for traffic used for generating network performance statistics. In this example, we are using SAA to generate ICMP Pings
`with different DSCP bits in order to determine response times for different classes of traffic. i.e. COS1 will use an ICMP with DSCP set to EF,
`
`
`© 2005 Cisco Systems, Inc. All rights reserved.
`Important notices, privacy statements, and trademarks of Cisco Systems, Inc. can be found on cisco.com.
`Page 6 of 19
`
`
`
`

`
`
`
`COS2=AF31, COS3=AF21 and COS4=BE. We will create an ACL to classify ICMP pings from specific source routers using SAA to generate
`the ICMPs. We will then use this ACL and the ‘match ip dscp’ classification criteria in the service policy to create the reporting class.
`
`ip access-list extended coppacl-reporting
`
` remark CoPP reporting traffic class
`
`! permit SAA generated ICMP requests from SAA source router
`
`permit icmp host 10.4.4.4 host 10.1.1.1 echo
`
`
`
`The monitoring class is used for traffic that is required for monitoring the router. Monitoring traffic is traffic that we expect to see destined to the
`router and want to track and limit.
`
`ip access-list extended coppacl-monitoring
`
` remark CoPP monitoring traffic class
`
`! permit router originated traceroute
`
`permit icmp any any ttl-exceeded
`
`permit icmp any any port-unreachable
`
`! permit receipt of responses to router originated pings
`
`permit icmp any any echo-reply
`
`! allow pings to router
`
`permit icmp any any echo
`
`
`
`The critical-app class is used for traffic that is crucial to a specific customer’s environment. In this example, HSRP and DHCP is used.
`
`ip access-list extended coppacl-critical-app
`
` remark CoPP critical apps traffic class
`
`! permit HSRP
`
`permit ip any host 224.0.0.2
`
`! permit DHCP requests
`
`permit udp host 0.0.0.0 host 255.255.255.255 eq bootps
`
`! permit DHCP replies from DHCP server
`
`permit udp host 10.8.8.8 eq bootps any eq bootps
`
`
`
`This ACL identifies traffic that should always be blocked from accessing the Route Processor. Once undesirable traffic flow is identified, an ACE
`entry classifying it can be added and mapped to the undesirable traffic class. This can be used as a reaction tool.
`
`ip access-list extended coppacl-undesirable
`
` remark explicitly defined "undesirable" traffic
`
`! permit, for policing, all traffic destined to UDP 1434
`
`permit udp any any eq 1434
`
`
`
`Note: The coppacl-undesirable ACL is a “permit” entry for classification and monitoring purposes, this traffic will be dropped as a result of the
`CPP policy.
`
`
`© 2005 Cisco Systems, Inc. All rights reserved.
`Important notices, privacy statements, and trademarks of Cisco Systems, Inc. can be found on cisco.com.
`Page 7 of 19
`
`
`
`

`
`
`
`CPP Policy and MQC
`MQC provides a flexible interface for creating service policies. In this configuration, traffic can be identified via the class-map and will be dropped
`or permitted access to the Route Processor. Using “transmit/drop”, only configuration is analogous to a receive ACL (rACL)*** deployment and
`when properly deployed provides good protection against many attacks.
`
`MQC also permits multiple match criteria within a class-map. The router needs to determine how packets are evaluated when multiple match criteria
`exists within a single class. Packets must either meet all of the specified match criteria (match-all) or any one of the match criteria (match-
`any) in order to be considered a member of the class. Traffic destined to the undesirable class should follow a “match-any” classification scheme,
`traffic that has any of the match criteria specified in this class may be dropped.
`
`The following example shows a typical CPP policy that contains only transmit and drop actions:
`
`The following example shows how to use class-maps to define a class for each “type” of traffic and associate it with an ACL or appropriate match
`criteria:
`
`class-map match-all coppclass-bgp
`
` match access-group name coppacl-bgp
`
`class-map match-all coppclass-igp
`
` match access-group name coppacl-igp
`
`class-map match-all coppclass-management
`
` match access-group name coppacl-management
`
`
`
`Create a class for packets that match icmp traffic classified by the reporting acl and that are marked with dscp bits of ef, af31, af21 or be.
`
`class-map match-all coppclass-reporting
`
` match access-group name coppacl-reporting
`
` match ip dscp ef af31 af21 default
`
`class-map match-all coppclass-monitoring
`
` match access-group name coppacl-monitoring
`
`class-map match-all coppclass-critical-app
`
` match access-group name coppacl-critical-app
`
`class-map match-all coppclass-layer2
`
` match protocol arp
`
`class-map match-all coppclass-undesirable
`
` match access-group name coppacl-undesirable
`
`
`
`*** For more information regarding rACLs, please visit: http://www.cisco.com/en/US/tech/tk648/tk361/technologies_white_paper09186a00801a0a5e.shtml
`
`
`
`© 2005 Cisco Systems, Inc. All rights reserved.
`Important notices, privacy statements, and trademarks of Cisco Systems, Inc. can be found on cisco.com.
`Page 8 of 19
`
`
`
`

`
`
`
`The following example illustrates the configuration of the actual CPP service policy. In this base case, all actions are transmit actions. The only
`exception is for traffic defined as undesirable, which is unconditionally dropped, regardless of rate and the default class that is rate limited above the
`specified packets per second (PPS) rate. Configuring the CPP policy using only transmit actions initially without the drop action allows the ability to
`monitor the classes under normal operating conditions in order to determine the appropriate rate limit. Once the appropriate rate under normal
`conditions is determined, this information can be used to tighten the policy down by dropping packets that exceed the normal operation rates.
`
`Note: The CPP action allows the ability to configure rate limits based on bits-per-second (BPS) or PPS. Rate-limiting at a PPS rate is better
`as the packet size varies on the network. Understanding the baseline of a network from a PPS perspective is important as well as the bandwidth
`requirement in BPS.
`
`
`
`policy-map copp-policy
`
` class coppclass-bgp
`
` < no operation specified since this class has unrestricted access to route processor >
`
` class coppclass-igp
`
` < no operation specified since this class has unrestricted access to route processor >
`
` class coppclass-management
`
` police rate 100 pps conform-action transmit exceed-action transmit
`
` class coppclass-reporting
`
` police rate 30 pps conform-action transmit exceed-action transmit
`
` class coppclass-monitoring
`
` police rate 50 pps conform-action transmit exceed-action transmit
`
` class coppclass-critical-app
`
` police rate 75 pps conform-action transmit exceed-action transmit
`
` class coppclass-layer2
`
` police rate 20 pps conform-action transmit exceed-action transmit
`
`
`
`This policy drops all traffic categorized as undesirable, regardless of rate. The drop command is currently supported only in T train from 12.2(13)T,
`S train users can use the police statement.
`
` class coppclass-undesirable
`
` police rate 10 pps conform-action drop exceed-action drop
`
` <or>
`
` drop
`
`
`
`The default class applies to all traffic received by the control plane that has not been otherwise identified. In this example, all default traffic is
`limited to 10 pps and violations of that limit are dropped.
`
` class class-default
`
` police rate 10 pps conform-action transmit exceed-action drop
`
`
`
`Because deploying a policy that permits only required traffic is generally the least complicated option, many administrators will initially configure
`their network in this manner. In many cases, a simple permit or deny decision will not suffice because it provides only limited flexibility for
`protecting the Route Processor from those packets that must be allowed with certain restrictions. An example is Internet Control Message Protocol
`(ICMP) echo-request (pings), which are typically allowed for simple diagnostic purposes. A high enough PPS rate of ping can present a risk, the
`
`© 2005 Cisco Systems, Inc. All rights reserved.
`Important notices, privacy statements, and trademarks of Cisco Systems, Inc. can be found on cisco.com.
`Page 9 of 19
`
`
`
`

`
`
`
`router must process and generate a reply to each packet. MQC extends the permit/deny model, so echo-request packets can be permitted, but the rate
`at which those packets are transmitted to the Route Processor is limited. The CPP policy has evolved to the point where traffic can be permitted,
`denied, or rate limited.
`
`Although rate limiting punted traffic is recommended, care must be taken to ensure that the administrator understands the required rates of traffic,
`particularly for critical traffic. A very low rate might discard or drop necessary traffic, whereas a very high rate might inundate the Route Processor
`with a flood of non-critical packets to process. These rates are typically site-specific and vary depending on local topology and routing table size.
`
`Hybrid configurations enable users to deploy a CPP policy that protects the router, while limiting the risk of dropping critical traffic. In a hybrid
`deployment, some traffic—from known sources and often to specific destinations—is permitted without rate limiting; conversely, different, less
`critical traffic is policed. The policed rate depends on both determined criticality and site-specific rate values. For instance, the “normal” rate of
`SNMP will differ based on environment. Using the aforementioned classification scheme with a hybrid deployment, BGP and IGP traffic are both
`permitted without limitation, while management, reporting, monitoring, critical application, and Layer 2 and default traffic are permitted with
`appropriate rate limiting. This deployment causes the network to drop undesirable traffic immediately. A hybrid deployment depends on traffic
`profiling. Using the scheme defined in the previous section, a hybrid configuration involves determining what traffic should pass with a permit
`statement and how much of that traffic can be permitted (ie: what rate should be allowed). Table 2 extends this example and summarizes a sample
`policy.
`
`Note: The rates defined in Table 2 are used for illustrative purposes; every environment will have different baselines. For example, a large
`Service Provider topology will likely require a higher rate of BGP traffic, than a typical enterprise network, due to large BGP routing tables.
`
`The purpose of defining the BGP or IGP traffic class is not to rate limit, but to tag this traffic as BGP or IGP traffic and provide it with unconditional
`access to the Route Processor. As the policy becomes increasingly refined, a more representative rate should be used for BGP or IGP traffic to
`further secure the router and show commands that can detect abnormal increases in traffic rates. See the “Monitoring CPP” section of this document
`for more information regarding CPP centric show commands.
`
`Table 2. Sample CPP Policy
`
`Traffic Class
`BGP
`IGP
`Management
`Reporting
`Monitoring
`Critical-App
`Layer 2
`Undesirable
`Default
`
`Rate (PPS)
`N/A
`N/A
`250
`50
`75
`125
`25
`10
`10
`
`Conform Action
`Transmit
`Transmit
`Transmit
`Transmit
`Transmit
`Transmit
`Transmit
`Drop
`Transmit
`
`Exceed Action
`Transmit
`Transmit
`Drop
`Drop
`Drop
`Drop
`Drop
`Drop
`Drop
`
`
`The following example shows how to configure the hybrid CPP policy as described in Table 2:
`
`Define a class for each “type” of traffic and associate it with the named classification ACL.
`
`class-map match-all coppclass-bgp
`
` match access-group name coppacl-bgp
`
`class-map match-all coppclass-igp
`
` match access-group name coppacl-igp
`
`
`© 2005 Cisco Systems, Inc. All rights reserved.
`Important notices, privacy statements, and trademarks of Cisco Systems, Inc. can be found on cisco.com.
`Page 10 of 19
`
`
`
`

`
`
`
`class-map match-all coppclass-management
`
` match access-group name coppacl-management
`
`
`
`Create a class for packets that match icmp traffic classified by the reporting acl and that are marked with dscp bits or ef, af31, af21 or be.
`
`class-map match-all coppclass-reporting
`
` match access-group name coppacl-reporting
`
` match ip dscp ef af31 af21 default
`
`class-map match-all coppclass-monitoring
`
` match access-group name coppacl-monitoring
`
`class-map match-all coppclass-critical-app
`
` match access-group name coppacl-critical-app
`
`class-map match-all coppclass-layer2
`
` match protocol arp
`
`class-map match-all coppclass-undesirable
`
` match access-group name coppacl-undesirable
`
`!
`
`
`
`This is the actual policy. Depending on class of traffic, rates and associated actions are defined.
`
`BGP traffic will not be limited in any way therefore no operation needs to be specified in this class.
`
`Note: Once normal rates are determined for the BGP traffic, consider rate-limiting this class to protect the router further.
`
`policy-map copp-policy
`
` class coppclass-bgp
`
`
`
`IGP traffic will not be limited in this example either, therefore no operation needs to be specified in this class.
`
`Note: As with the BGP class, once normal rates are determined for the IGP traffic, consider setting a rate-limit to further protect the router.
`
` class coppclass-igp
`
`
`
`Management traffic is limited to a rate of 250 pps, if traffic exceeds that rate it is dropped.
`
` class coppclass-management
`
` police rate 250 pps conform-action transmit exceed-action drop
`
`
`
`Reporting traffic is limited to a rate of 50 pps, if traffic exceeds that rate it is dropped.
`
` class coppclass-reporting
`
` police rate 50 pps conform-action transmit exceed-action drop
`
`
`
`
`© 2005 Cisco Systems, Inc. All rights reserved.
`Important notices, privacy statements, and trademarks of Cisco Systems, Inc. can be found on cisco.com.
`Page 11 of 19
`
`
`
`

`
`
`
`Monitoring traffic is limited to a rate of 75 pps, if traffic exceeds that rate it is dropped.
`
` class coppclass-monitoring
`
` police rate 75 pps conform-action transmit exceed-action drop
`
`
`
`Critical-app traffic is limited to a rate of 125 pps, if traffic exceeds that rate it is dropped.
`
` class coppclass-critical-app
`
` police rate 125 pps conform-action transmit exceed-action drop
`
`
`
`Layer2 ARP traffic is limited to a rate of 25 pps, if traffic exceeds that rate it is dropped.
`
` class coppclass-layer2
`
` police rate 25 pps conform-action transmit exceed-action drop
`
`
`
`This policy drops all traffic categorized as undesirable, regardless of rate.
`
` class coppclass-undesirable
`
` police rate 10 pps conform-action drop exceed-action drop
`
` <or if on the T train you can use the drop command>
`
` drop
`
`
`
`The default class applies to all traffic received by the control plane that has not been otherwise identified. In this example, all default traffic is
`limited to 10 pps and violations of that limit are dropped.
`
` class class-default
`
` police rate 10 pps conform-action transmit exceed-action drop
`
`
`
`MONITORING CPP
`
`show access-lists
`The show access-lists command displays a count, per ACL Entry or Access Control Entry (ACE), when traffic matches a particular entry.
`This information can be used to develop a CPP policy that ensures that identified traffic is matching as expected.
`
`The absence of hits on a particular entry might indicate that the control plane has not received traffic matching the rule. If the lack of traffic
`matching a specific entry is unlikely, the rule might have been improperly written. It should be carefully reviewed to ensure that the ACL matches
`the actual traffic.
`
`
`© 2005 Cisco Systems, Inc. All rights reserved.
`Important notices, privacy statements, and trademarks of Cisco Systems, Inc. can be found on cisco.com.
`Page 12 of 19
`
`
`
`

`
`
`
`For instance, in the following example, coppacl-bgp ACL has processed 4 packets from 47.1.1.1 to the BGP port on 10.9.9.9 but no packets from
`47.1.1.1’s port 179 to 10.9.9.9.
`
`server-2821#show access-lists coppacl-bgp
`
`Extended IP access list coppacl-bgp
`
` 10 permit tcp host 47.1.1.1 host 10.9.9.9 eq bgp (4 matches)
`
` 20 permit tcp host 47.1.1.1 eq bgp host 10.9.9.9
`
` 30 permit tcp host 10.86.183.120 host 10.9.9.9 eq bgp (1 match)
`
` 40 permit tcp host 10.86.183.120 eq bgp host 10.9.9.9
`
`
`Displaying an access-list in this manner can also help with attack classification, if an attack is suspected, a show access-list can be used to display an
`ACE hit count. If one of the entries has logged an excessive count or an unusually rapid rate increase in the number of packets processed, that traffic
`is suspicious and should be investigated.
`
`In the following output, the router received a significant volume of traffic destined to UDP port 1434. This is clearly attack traffic since UDP/1434
`traffic matches the fingerprint of a known worm: Slammer.
`
`Extended IP access list coppacl-undesirable
`
` 10 permit udp any any eq 1434 (163053 matches)
`
`
`
`show policy-map control-plane
`The show policy-map control-plane command is an invaluable tool for developing site specific policies, monitoring statistics for the
`control plane policy, and troubleshooting CPP. This command displays dynamic information about the actual policy applied, including rate
`information and the number of packets (and bytes) that conformed and/or exceeded the configure

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket