A:BNG# configure
application-assurance group 1:1 policy
app-profile "1-1/15M" create
description "App-Profile Description"
divert
characteristic "Parental Control" value "enabled"
capacity-cost 15
exit
•
|
divert — Diverts all traffic from and to this subscriber to an ISA-AA. Configuring no divert effectively disables all AA services for subscribers using this app-profile. Default value: no divert.
|
•
|
characteristic [< characteristic-name> value < value-name>] — one or more optional ASO service characteristics can be used to apply an AA control policy to the subscriber.
|
•
|
capacity-cost < cost> — An application profile capacity cost is used to load balance AA subscribers across multiple ISA-AA cards. A common practice is to define a cost proportional to the expected peak BW for the subscribers using this profile (in Kbps or Mbps). The capacity cost is out of the scope of this example. The range is 1 to 65535, default 1.
|
<group-id>-<
partition-id>/<
BW>M where
→
|
<group-id> — The ISA-AA group ID on which this profile is created.
|
→
|
<partition-id> — The AA partition ID on which this profile is created.
|
→
|
<BW-label> — Defines the maximum bandwidth used by the subscriber, which is used for aa-subscriber cost load balancing and subscriber rate limiting. The M stands for Mbps.
|
sub-sla-mgmt
def-app-profile "1-1/15M"
exit
A:PE>config>service# vprn 100 customer 1 create
description "L3 Service Customer 1"
interface "to-site1" create
address 192.168.1.1/24
sap 1/1/10:11 create
app-profile "1-1/15M"
exit
interface "to-site2" create
address 192.168.2.1/24
spoke-sdp 12:100 create
app-profile "1-1/15M"
exit
no shutdown
BNG>config>app-assure# group 1:1 policy
app-service-options
characteristic "Parental Control" create
value "disabled"
value "enabled"
default-value "disabled"
exit
characteristic "P2P-Sub-DL" create
value "500k"
value "1M"
value "unlimited"
default-value "unlimited"
exit
A:BNG# show application-assurance group 1:1 policy app-service-option "P2P-Sub-DL"
===============================================================================
Application-Assurance Application Service Options
===============================================================================
Characteristic "P2P-Sub-DL"
Value Default
-------------------------------------------------------------------------------
1M No
500k No
unlimited Yes
===============================================================================
Figure 182 shows an example of AA service definition (ASO and app-profile) for a Gold and Bronze service tier definition with the following characteristics:
•
|
Gold app-profile — No specific policy actions or ASO characteristics are configured statically in the app-profile.
|
•
|
Bronze app-profile — A specific ASO characteristic and value is assigned to the profile to limit Peer to Peer download traffic to 1Mbps (this example does not show the app-qos-policy nor policer configuration, this will be described later).
|
*A:BNG# show application-assurance group 1:1 policy app-profile "Gold"
app-profile "Gold" create
divert
characteristic "P2P-Sub-DL" inherits default-value "unlimited"
characteristic "Parental Control" inherits default-value "disabled"
exit
A:BNG# show application-assurance group 1:1 policy app-profile "Bronze"
app-profile "Bronze" create
divert
characteristic "P2P-Sub-DL" value "1M"
characteristic "Parental Control" inherits default-value "disabled"
exit
NAS-Port-Id = "1/1/5:4088"
Framed-IP-Address = 192.168.211.30
Alc-App-Prof-Str = "1-1/15M"
Alc-AA-App-Service-Options = "P2P-Sub-DL=1M"
A:BNG# show application-assurance group 1:1 aa-sub esm "sub1" summary
===============================================================================
Application-Assurance Subscriber Summary (realtime)
===============================================================================
AA-Subscriber : sub1 (esm)
ISA assigned : 1/2
App-Profile : 1-1/15M
App-Profile divert : Yes
Capacity cost : 1
Aarp Instance Id : N/A
HTTP URL Parameters : (Not Specified)
Last HTTP Notified Time : 2014/08/07 12:07:47
-------------------------------------------------------------------------------
Traffic Octets Packets Flows
-------------------------------------------------------------------------------
...
...
-------------------------------------------------------------------------------
Application Service Options (ASO)
-------------------------------------------------------------------------------
Characteristic Value Derived from
-------------------------------------------------------------------------------
P2P-Sub-DL 1M dyn-override
Parental Control disabled default
===============================================================================
In the show command output above, the derived from field describes how the characteristics and values are assigned to the subscriber:
A:BNG>config>app-assure# group 1:1 policy-override
policy aa-sub sap 1/1/5:210 create
characteristic "P2P-Sub-DL" value "1M"
characteristic "Parental Control" value "enabled"
exit
Figure 183 provides a configuration example summary with app-profile, ASO, AQP and policers:
•
|
characteristic < characteristic-name> < eq> < value-name>: up to 4 characteristics and values per AQP
|
•
|
src-ip { eq | neq} < ip-address> or ip-prefix-list < ip-prefix-list-name>
|
•
|
dst-ip { eq | neq} < ip-address> or ip-prefix-list < ip-prefix-list-name>
|
•
|
src-port { eq | neq} < port-num> or range < start-port-num>< end-port-num>
|
•
|
dst-port { eq | neq} < port-num> or range < start-port-num>< end-port-num>
|
•
|
dscp { eq | neq} < dscp-name>
|
•
|
remark dscp in-profile < dscp-name> out-profile < dscp-name>
|
•
|
http-redirect < redirect-name> flow-type < flow-type> — Redirect traffic to a landing page
|
•
|
url-filter < url-filter-name>: category based URL Filtering using ICAP
|
→
|
error-drop: configure a drop action for packets cut-through due to IP packet errors (bad IP checksums, tcp/udp port 0, etc.)
|
→
|
overload-drop: configure a drop action for packets cut-through due to overload
|
Figure 184 shows a default subscriber policy limiting the downstream bandwidth (network-to-subscriber direction) to 25Mbps per subscriber:
A:BNG# show application-assurance group 1:1 policy app-qos-policy
===============================================================================
Application QOS Policy Table
===============================================================================
Entry Admin State Flow Hits Flow Conflicts
-------------------------------------------------------------------------------
30 in-service 0 0
-------------------------------------------------------------------------------
No. of AQP entries: 1
===============================================================================
•
|
Flow creation — The default subscriber policy AQP entries for matching flows are applied starting with the first packet of a flow so before application identification completes.
|
•
|
Application identification completion— The application QoS policies are applied once flow identification has been completed. Note: The default QoS policy entries are applied to the subscriber’s flows for packets received before and after application identification is completed.
|
•
|
Policy change — When a configuration change is applied to the AA policy by executing the commit command on the AA group:partition policy, all diverted flows for subscribers using this policy partition will be evaluated again against all AQP entries. This re-evaluation happens as a paced background task; hence AQP control changes may not be applied immediately to all existing flows.
|
BNG>config>app-assure# group 1
policer <policer-name> type single-bucket-bandwidth
granularity {subscriber|system} create
description <string>
rate <pir-rate-in-Kbps>
mbs <max-burst-size-in-Kbytes>
adaptation-rule pir {max|min|closest}
tod-override <tod-override-id>
action permit-deny|priority-mark
•
|
action — Defines the action that must be taken by the policer for non-conforming traffic.
|
•
|
priority-mark — Non-conforming traffic will be marked as out of profile (increasing the chances that non-conforming packets will be discarded in case of congestion on the egress queues).
|
•
|
rate — Peak information rate in Kbps.
|
•
|
mbs — Maximum burst size in Kbytes.
|
•
|
adaptation-rule pir <max|min|closest> — The policers work at discrete operational rates supported by the hardware. The adaptation rule specifies how the actual operational policer rate (supported by the hardware) must be selected as compared to the configured PIR. During operation, both the operational and configured rate can be displayed using the operational show application-assurance group < n> policer < policer-name> detail command.
|
•
|
tod-override — Defines a time of day override policy applicable to a policer, this is described in more detail at the end of the policing section.
|
BNG>config>app-assure# group 1
policer "P2P-Sub-DL-1M" type single-bucket-bandwidth granularity subscriber create
rate 1000
mbs 19
exit
BNG>config>app-assure# group 1
policer "P2P-Sys-DL-100M" type single-bucket-bandwidth granularity system create
rate 100000
mbs 1875
exit
BNG>config>app-assure# group 1
policer <policer-name> type dual-bucket-bandwidth
granularity {subscriber|system} create
description <string>
rate <pir-rate-in-Kbps> cir <cir-rate-in-Kbps>
mbs <max-burst-size-in-Kbytes>
cbs <committed-burst-size-in-Kbytes>
adaptation-rule pir {max|min|closest} cir {max|min|closest}
BNG>config>app-assure# group 1
policer "P2P-Sub-DL-2M-DB" type dual-bucket-bandwidth granularity subscriber create
rate 2000 cir 1000
cbs 19
mbs 38
exit
BNG>config>app-assure# group 1
policer <policer-name> type flow-rate-limit granularity {subscriber|system} create
description <string>
rate <flow-rate-in-flows/sec>
mbs <max-burst-size-in-flows>
adaptation-rule pir {max|min|closest}
action permit-deny|priority-mark
Note that in case the policer is used as part of the default AA subscriber policy then the priority-mark action has the effect to cut-through non conformant traffic in the ISA instead of drop using
permit-deny.
BNG>config>app-assure# group 1
policer <policer-name> type flow-count-limit granularity {subscriber|system} create
description <string>
action permit-deny|priority-mark
flow-count <max-number-of-flows>
BNG>config>app-assure# group 1
policer "P2P-Sub-DL-1M-TOD" type single-bucket-bandwidth
granularity subscriber create
action permit-deny
rate 1000
mbs 19
adaptation-rule pir closest
tod-override <override-id>
description <string>
time-range daily start <start-time> end <end-time>
[on <day> [<day>...(upto 7 max)]]
time-range weekly start <day,start-time> end <day,end-time>
rate 2000
mbs 38
•
|
tod-override < override-id> — Up to 8 override-ids (with value 1-255) can be configured per policer.
|
BNG>config>app-assure# group 1
policer "P2P-Sys-DL-300M-TOD" type single-bucket-bandwidth
granularity system create
description "Peer to Peer Policer System level Policer"
rate 300000
mbs 5625
tod-override 1 create
description "Override busy hour #1"
time-range daily start 17:00 end 22:00
rate 100000
mbs 1875
no shutdown
exit
tod-override 2 create
description "Override busy hour #1"
time-range daily start 22:00 end 24:00
rate 200000
mbs 3750
no shutdown
exit
show application-assurance group <n> policer <policer-name> detail
•
|
A default bandwidth policer to limit the downstream bandwidth per subscriber (upstream bandwidth is already limited by ESM/SAP access ingress IOM QoS).
|
•
|
A default flow count policer to limit the maximum number of active flows per traffic direction per subscriber. The operator can choose to drop or cut-through non conforming traffic.
|
•
|
A default flow rate policer to limit the maximum flow setup rate per traffic direction per subscriber. The operator can choose to drop or cut-through non conforming traffic.
|
BNG>config>app-assure# group 1:1 policy
app-service-options
characteristic "access-rate" create
value "100M"
value "25M"
default-value "100M"
exit
exit
app-profile "1-1/25M" create
description "25Mbps Site/Subscriber"
divert
characteristic "access-rate" value "25M"
capacity-cost 25
exit
app-profile "1-1/100M" create
description "100Mbps Site/Subscriber"
divert
characteristic "access-rate" value "100M"
capacity-cost 100
exit
BNG>config>app-assure# group 1
policer "DefltPol-Sub-BW-DS-25Mbps" type dual-bucket-bandwidth
granularity subscriber create
description "Deflt downstream BW policer for 25Mbps Subs"
rate 25000
mbs
BNG>config>app-assure# group 1:1 policy
app-qos-policy
entry 500 create
description "Deflt downstream BW policer for 25Mbps Subs"
match
traffic-direction network-to-subscriber
characteristic "access-rate" eq "25M"
exit
action
bandwidth-policer "DefltPol-Sub-BW-DS-25Mbps"
exit
no shutdown
exit
BNG>config>app-assure# group 1
policer "DefltPol-Sub-FlowCount-US-25Mbps" type flow-count-limit
granularity subscriber create
description "Deflt policer to limit active upstream flows for 25Mbps Subs”
flow-count 10000
action permit-deny
exit
policer "DefltPol-Sub-FlowCount-DS-25Mbps" type flow-count-limit
granularity subscriber create
description "Deflt policer to limit active downstream flows for 25Mbps Subs”
flow-count 10000
action permit-deny
exit
BNG>config>app-assure# group 1:1 policy app-qos-policy
entry 510 create
description " Deflt policer to limit active upstream flows for 25Mbps Subs"
match
traffic-direction subscriber-to-network
characteristic "access-rate" eq "25M"
exit
action
flow-count-limit "DefltPol-Sub-FlowCount-US-25Mbps"
exit
no shutdown
exit
entry 515 create
description " Deflt policer to limit active downstream flows for 25Mbps Subs"
match
traffic-direction network-to-subscriber
characteristic "access-rate" eq "25M"
exit
action
flow-count-limit "DefltPol-Sub-FlowCount-DS-25Mbps"
exit
no shutdown
exit
BNG>config>app-assure# group 1
policer "DefltPol-Sub-FlowRate-US-25Mbps" type flow-rate-limit
granularity subscriber create
description "Deflt policer to limit upstream flow setup rate for 25Mbps Subs”
rate 200
action permit-deny
exit
policer "DefltPol-Sub-FlowRate-DS-25Mbps" type flow-rate-limit
granularity subscriber create
description "Deflt policer to limit downstr flow setup rate for 25Mbps Subs"
rate 200
action permit-deny
exit
BNG>config>app-assure# group 1:1 policy app-qos-policy
entry 520 create
description "Deflt policer to limit upstream flow setup rate for 25Mbps Subs"
match
traffic-direction subscriber-to-network
characteristic "access-rate" eq "25M"
exit
action
flow-rate-limit "DefltPol-Sub-FlowRate-US-25Mbps"
exit
no shutdown
exit
entry 525 create
description "Deflt policer to limit downstr flow setup rate for 25Mbps Subs"
match
traffic-direction network-to-subscriber
characteristic "access-rate" eq "25M"
exit
action
flow-rate-limit "DefltPol-Sub-FlowRate-DS-25Mbps"
exit
no shutdown
exit
BNG>config>app-assure# group 1
policer "P2P-Sub-DL-1M" type single-bucket-bandwidth granularity subscriber create
description "Per-subscr BW policer to limit P2P downstream traffic to 1Mbps"
rate 1000
mbs 19
action permit-deny
exit
BNG>config>app-assure# group 1:1 policy
app-service-options
characteristic "P2P-Sub-DL" create
value "10M"
value "1M"
value "unlimited"
default-value "unlimited"
exit
BNG>config>app-assure# group 1:1 policy app-qos-policy
entry 30 create
description "Per-subscr BW policer to limit P2P downstream traffic to 1Mbps"
match
app-group eq "Peer to Peer"
traffic-direction network-to-subscriber
characteristic "P2P-Sub-DL" eq "1M"
exit
action
bandwidth-policer "P2P-Sub-DL-1M"
exit
no shutdown
exit