For feedback and comments:
documentation.feedback@alcatel-lucent.com

Table of Contents Previous Next PDF


Application Assurance
In This Section
This section provides an overview of Alcatel-Lucent’s implementation of the Application Assurance service model.
Topics include:
Application Assurance (AA) Overview
Network operators are transforming broadband network infrastructures to accommodate unified architecture for IPTV, fixed and mobile voice services, business services, and High Speed Internet (HSI), all with a consistent, integrated awareness and policy capability for the applications using these services.
As bandwidth demand grows and application usage shifts, the network must provide consistent application performance that satisfies the end customer requirements for deterministic, managed quality of experience (QoE), according to the business objectives for each service and application. Application Assurance (AA) is the enabling network technology for this evolution in the service router operating system.
Application Assurance, coupled with subscriber and/or VPN access policy control points enables any broadband network to provide application-based services. For service providers, this unlocks:
 
Application Assurance: Inline Policy Enforcement
Figure 4: AA ISA Inline Identification, Classification and Control
The integrated solution approach for Application Assurance recognizes that a per-AA-subscriber and per-service capable QoS infrastructure is a pre-condition for delivering application-aware QoS capabilities. Enabling per-application QoS in the context of individual subscriber’s VPN access points maximizes the ability to monetize the application service, because a direct correlation can be made between customers paying for the service and the performance improvements obtained from it. By using an integrated solution there is no additional cost related to router port consumption, interconnect overhead or resilience to implement in-line application-aware policy enforcement.
 
 
AA Integration in Subscriber Edge Gateways
Multiple deployment models are supported for integrating application assurance in the various subscriber edge and VPN PE network topologies. In all cases, application assurance can be added by in-service upgrade to the installed base of equipment rather than needing deploy and integrate a whole new set of equipment and vendors into the network for Layer 4-7 awareness.
Integrating Layer 4-7 application policy with the 7750 SR or 7450 ESS subscriber edge policy context is the primary solution to address both residential broadband edge or Layer 2/Layer 3 application aware business VPN. Placement of Layer 4-7 analysis at the distributed subscriber edge policy point simplifies AA deployments in the following ways:
Figure 5: AA Deployment Topologies
There are residential topologies where it is not possible or practical to distribute ISAs into the same network elements that run ESM, including for legacy edge BRASs that still need Application Assurance policy (reporting and control) for the same Internet services, and which needs to be aligned and consistent with the ESM AA policy. This is supported using transit AA subscribers, typically in the first routed element behind the legacy edge.
Application Assurance enables per AA-subscriber (a residential subscriber, or a Layer 2/Layer 3 SAP or spoke SDP), per application policy for all or a subset of AA subscriber's applications. This provides the ability to:
An integrated AA module allows the SR/ESS product families to provide application-aware functions that previously required standalone devices (either in residential or business environment) at a fraction of cost and operational complexity that additional devices in a network required.
A key benefit if integrating AA in the existing IP/MPLS network infrastructure (as opposed to an in-line appliance) is the ability to select traffic for treatment on a granular, reliable basis. Only traffic that requires AA treatment is simply and transparently diverted to the ISA. Other traffic from within the same service or interface will follow the normal forwarding path across the fabric. In the case of ISA failure, ISA redundancy is supported and in the case no backup ISAs are available the AA traffic reverts to the normal fabric matrix forwarding, also known as “fail to fabric”.
 
 
Fixed Residential Broadband Services
Fixed residential HSI services as a single edge Broadband Network Gateway (BNG) or as part of the Triple Play Service Delivery Architecture (TPSDA) are a primary focus of Application Assurance performance, subscriber and traffic scale.
To the service provider, application-based service management offers:
To the C/ASP, service offerings can be differentiated by improving the customer’s on-line access experience. The subscriber can benefit from this by gaining a better application experience, while paying only for the value (applications) that they need and want.
 
Dual-Stack Lite – DS-Lite
Dual Stack Lite is an IPv6 transition technique that allows tunneling of IPv4 traffic across an IPv6-only network. Dual-stack IPv6 transition strategies allow service providers to offer IPv4 and IPv6 services and save on OPEX by allowing the use of a single IPv6 access network instead of running concurrent IPv6 and IPv4 access networks. Dual-Stack Lite has two components: the client in the customer network (the Basic Bridging BroadBand element (B4)) and an Address Family Transition Router (AFTR) deployed in the service provider network.
Dual-Stack Lite leverages a network address and port translation (NAPT) function in the service provider AFTR element to translate traffic tunneled from the private addresses in the home network into public addresses maintained by the service provider. On the 7750 SR, this is facilitated through the Carrier Grade NAT function.
When a customer’s device sends an IPv4 packet to an external destination, DS-Lite encapsulates the IPv4 packet in an IPv6 packet for transport into the provider network. These IPv4-in-IPv6 tunnels are called softwires. Tunneling IPv4 over IPv6 is simpler than translation and eliminates performance and redundancy concerns.
Figure 6: DS-Lite Deployment
The IPv6 source address of the tunnel represents a unique subscriber. Only one tunnel per customer (although more is possible), but the IPv6 addresses cannot overlap between different customers. When encapsulated traffic reaches the softwire concentrator, the device treats the source-IP of the tunnel to represent a unique subscriber. The softwire concentrator performs IPv4 network address and port translation on the embedded packet by re-using Large Scale NAT and L2-Aware NAT concepts.
Advanced services are offered through Application Assurance multi service ISA to the DS-Lite connected customers. Subscribers’ traffic (ESMs or transit-ip) are diverted to AA ISA for L3-L7 identification / classifications, reporting and control based on the IPv4 packets (transported within the IPv6 DS-Lite tunnel). This AA classification, reporting and control of subscribers’ traffic take effect before any NAT44 functions. In other words, AA sites on the subscriber side of NAT44.
The absence of a control protocol for the IP-in-IP tunnels simplifies the operational/management model, since any received IPv6 packet to the AA ISA can be identified as a DS-Lite tunneled packet if:
Fragmented IPv4 are supported only if tunneled through non-fragmented IPv6 packets.
Fragmentation at the IPv6 layer is not supported by AA ISA (when used to tunnel fragmented or non-fragmented IPv4 packets). These packets are cut-through with sub-default policy applied with a possibility of re-ordering.
If DSCP AQP action is applied to DS-Lite packet, both IPv4 and IPv6 headers are modified. AQP mirroring action is applied at the IPv6 layer. All collected statistics include the tunnel over-head bytes (also known as IPv6 header size).
 
6to4 /6RD
6RD/6to4 tunneling mechanism allows IPv6 sites to communicate over an IPv4 network without the need to configure explicit tunnels, as well as and for them to communicate with native IPv6 domains via relay routers. Effectively, 6RD/6to4 treats the wide area IPv4 network as a unicast point-to-point link layer. Both ends of the 6RD/6to4 tunnel are dual-stack routers. Because 6RD/6to4 does not build explicit tunnels, it scales better and is easier to manage after setup
6to4 encapsulates an IPv6 packet in the payload portion of an IPv4 packet with protocol type 41. The IPv4 destination address for the encapsulating IPv4 packet header is derived from the IPv6 destination address of the inner packet (which is in the format of 6to4 address) by extracting the 32 bits immediately following the IPv6 destination address's 2002:: prefix. The IPv4 source address in the encapsulating packet header is the IPv4 address of the outgoing interface (not system IP address).
6RD is very similar to 6to4. The only difference is that the fixed 2002 used in 6to4 prefix is replaced by a configurable prefix.
An important deployment of 6RD/6to4 deployment is in access network as shown in Figure 7.
Figure 7: 6to4 in Access Network Deployment
To provide IPv6 services to subscribers, 6RD is deployed in these access networks to overcome the limitations of IPv4 only access network gear (for example, DSLAMs) with no dual stack support.
From an AA ISA point of view, deployment of 6RD in the access network is similar to that of the general deployment case between IPv6 islands with the added simplification that each 6RD tunnel carries traffic of a single subscriber.
When AA ISA sees an IPv4 packet with protocol type 41 and a payload that includes IPv6 header, it detects that this is a 6rd/6to4 tunneled packet.
AA ISA detects, classifies, reports, and applies policies to 6rd/6to4 packet for ESM, SAP, spoke-SDP, and transit-IP (ip-policy) AA subscriber types.
Fragmented IPv6 are supported only if tunneled through non-fragmented IPv4 packets.
Fragmentation at the IPv4 layer is not supported by AA ISA (when used to tunnel fragmented or non-fragmented IPv6 packets). These packets are cut-through with sub-default policy applied with a possibility of re-ordering.
If the packet has IPv4 options then AA ISA will not look into the IPv6 header. The packet will be classified as IPv4 “unknown TCP/UDP”. Furthermore, TCP/UDP checksum error detection is only applied for IPIPE and routed services.
If the DSCP AQP action is applied to 6RD6to4 packets, both IPv4 and IPv6 headers are modified. AQP mirroring action is applied at the IPv4 layer. All collected statistics include the tunnel over-head bytes, aka. IPv4 header size.
 
 
Wireless LAN Gateway Broadband Services
Application Assurance enables a variety of use cases important for Wireless LAN Gateway deployments in residential, public WiFi or VPN wireless LAN services. These include:
 
 
Application-Aware Business VPN Services
AA for business services can be deployed at the Layer 2 or Layer 3 network provider edge (PE) policy enforcement point for the service or at Layer 2 aggregation policy enforcement point complimentary to the existing Layer 3 IP VPN PE. In a business environment, an AA-subscriber represents a VPN access point. A typical business service can have a much larger average bandwidth rate then the residential service and is likely to have a smaller AA-subscriber count than a residential deployment.
Up to seven active ISAs can be deployed per PE, each incrementally processing up to 10Gbps. The in-network scalability is a key capability that allows a carrier to be able to grow the service bandwidth without AA throughput affecting the network architecture (more edge nodes, application-aware devices).
Application-aware Layer 2 and Layer 3 VPNs implemented using AA ISA equipped 7750 SR/7450 ESS together with rich network management (5620 SAM, 5750 RAM, end customer application service portals) give operators a highly scalable, flexible, and cost effective integrated solution for application-based services to end customers. These services may include:
Figure 8: AA BVS Services Integrated into the Provider Edge
 
SeGW Firewall Service
Application Assurance deployed within a 7750-SR Security gateway in ultra-broadband access networks (3G/4G/Femto) provides the operator with back-end core network security protection. AA Firewall protection includes:
1.
2.
3.
Figure 9: SeGW Firewall Deployment
 
OAM Traffic Protection
The aim of AA Firewall protection is to protect and prevent any abuse of OAM network resources (such as NMS).
Network flooding attacks, malformed packets and port scans are examples of such attacks that can be carried out using a compromised eNB/Femto Access Points (FAP).
Ports Scan attacks: Using AA FW stateful session filters, operators can allow traffic only on certain IP address(s) and port number(s).
1.
Ports Scan Attacks: Using AA FW stateful session filters, operators can allow traffic only on certain IP address(s) and port number(s).
2.
3.
In addition, for OAM traffic, all AA functionalities including Layer 7 analytics and control as well as Application Layer Gateway (ALG) are supported.
 
S1-MME Traffic Protection
The aim of AA Firewall (FW) in this deployment is to protect the MME(s) infrastructure against an attack from a compromised eNB/FAP.
Network flooding attacks, malformed packets and port scans are examples of DoS attacks that can be carried out using a compromised eNB/ Femto Access Points (FAP).
AA FW provides inspection of SCTP – protocol used to communicate to MME. Such inspection includes checking for SCTP protocol ID, source /destination ports, PPID, SCTP chunk checking and malformed SCTP packet (such as checksum validation).
For S1-MME traffic, the operator can configure various AA actions:
The actions above can be applied per eNB/FAP IP address and /or per MME (to control aggregate traffic per MME).
 
S1-U GTP Traffic Protection
The aim of AA Firewall (FW) in this deployment is to protect the SGW/SGSN infrastructure against an attack from a compromised eNB/FAP. AA FW supports:
Application Assurance System Architecture
 
AA ISA Resource Configuration
AA ISAs are flexible embedded, packet processing resource cards that require configuration such that services may be associated with the resources. This includes assigning ISAs to groups, optionally defining group partitions, and setting the redundancy model. Load balancing is affected by how ISAs are grouped.
 
AA ISA Groups
An AA ISA group allows operators to group multiple AA ISAs into a single logical group for consistent management of AA resources and policies across multiple AA ISA cards configured for that group.
 
AA ISA Groups
An AA ISA group allows operators to group multiple AA ISAs into one of several logical groups for consistent management of AA resources and policies across multiple AA ISA cards configured for that group. The following operations can be performed at the group level:
Residential services is an example where all AA services might be configured as part of a single group encompassing all AA ISAs, for operator-defined AA service. This provides management of common applications and reporting for all subscribers and services, with common or per customer AQP (using ASOs characteristics to divide AA group’s AQP into per app-profile QoS policies).
Multiple groups can be further used to create separate services based on different sets of common applications, different traffic divert needs (such as for capacity planning) or different redundancy models. Cases where multiple groups might be used can include:
 
AA Group Partitions
VPN-specific AA services are enabled using operator defined partitions of an AA Group into AA policy partitions, typically with one partition for each VPN-specific AA service. The partition allows VPN specific custom protocols/application/application group definition, VPN specific policy definition and VPN specific reporting (some VPNs with volume-only reports, while others with volume and performance reports). Each partition’s policy can be again divided into multiple application QoS policies using ASOs.
The use of ISA groups and partitions also improves scaling of policies, as needed with VPN-specific AA policies.
If partitions are not defined, all of the AA group acts as a single partition. When partitions are configured, application identification, policy and statistics configuration applies only to the given partition and not any other partitions configured under the same AA group.
The definition of application profiles (and related ASO characteristics/values) are within the context of a given partition (however, application profiles names must have node-wide uniqueness)
The definition of applications, application groups and AQP are also specific to a given partition. This allows:
Partitions also enable accounting/reporting customization for every AA subscriber associated with a partition, for example:
The system provides independent editing and committing of each partition config (separate begin/commit/abort commands).
Policer templates allow group-wide policing, and can be referenced by partition policies.
 
Bypass Modes
If no active AA ISA is available (for example, due to an operational failure, misconfiguration) the default behavior is to forward traffic as if no AA was configured, the system does not send traffic to the AA ISA (equivalent to fail to closed). Alarms are raised to flag this state externally. There is an optional “fail to open” feature where AA ISA service traffic is dropped if no active AA ISA is present (such as no AA ISA is present and operationally up).
 
Redundancy
AA ISA group redundancy is supported, to protect against card failure and to minimize service interruption during maintenance or protocol signature upgrades.
 
No AA ISA Group Redundancy
AA can be configured with no ISA redundancy within the AA group. All AA ISAs are configured as primary with no backup (up to the limit of active AA ISAs per node). There is no fault state indicating that a spare AA ISA is missing. If a primary is configured but not active, there will be a “no aa-isa” fault.
 
Failure to Fabric
In the event that no ISA redundancy is deployed or insufficient ISAs are available for needed sparing, the system implements “failure to fabric”. When the ISA status shows the ISA is not available and there is no redundant ISA available, the ingress IOMs simply do not divert the packets that would have been sent to that ISA, but instead these proceed to the next hop directly across the fabric. When the ISA becomes available, the divert eligible packets resume divert through the ISA. This behavior is completely internal to the system, without affecting the forwarding or routing configuration and behavior of the node or the network.
 
N+1 AA ISA Card Warm Redundancy
The system supports N+1 AA ISA equipment warm redundancy (N primary and 1 backup). If a backup is configured and there is no ISA available (a primary and backup failed), there will be a “no aa-isa” fault. The backup AA ISA is pre-configured with isa-aa.tim and the group policies. Datapath traffic is only sent to active AA ISAs, so the backup has no flow state. If a backup ISA is unavailable, there will be a “backup missing” fault.
An AA subscriber is created and assigned to a primary AA ISA when an application profile is assigned to a subscriber, SAP, or spoke SDP. By default, AA subscribers are balanced across all configured primary AA ISAs.
Upon failure of a primary AA ISA, all of its AA subscribers and their traffic are operationally moved to the newly active backup AA ISA but the current flow states are lost (warm redundancy). The new AA ISA will identify any session-based active flows at a time of switchover as an existing protocol, while the other flows will be re-identified. The existing protocol-based application filters can be defined to ensure service hot redundancy for a subset of applications. Once the backup AA ISA has taken control, it will wait for operator control to revert activity to the failed primary AA ISA module.
The user can disable a primary AA ISA for maintenance by triggering a controlled AA ISA activity switch to do the AA ISA software field upgrade (a shutdown of an active AA ISA is recommended to trigger an activity switch).
The activity switch experiences the following AA service impact:
 
ISA Load Balancing
Capacity-cost based load balancing allows a cost to be assigned to diverted AA subscribers (by the app-profile). Load Balancing uses the total allocated costs on a per-ISA basis to assign the subscriber to the lowest sum cost ISA resource. Each ISA supports a threshold as the summed cost value that notifies the operator if or when capacity planning has been exceeded.
The load balancing decision is made based on the AA capacity cost of an AA subscriber. The capacity cost is configured against the app-profile. When assigning a new diverted aa-sub to an ISA, the ISA with the lowest summed cost (that also has sufficient resources) is chosen. Examples of different load-balancing approaches that may be implemented using this flexible model include:
Load balancing operates across ISAs with in an AA group, and will not balance across groups. The system will ensure that app-profiles assigned to AA subscribers (ESM subscribers, SAPs and spoke SDPs) that are within a single VPLS/Epipe/IES/VPRN service are all part of the same AA group (partitions within an AA group are not checked/ relevant).
Users can replace the app-profile assigned to an AA subscriber with another app-profile (from the same group/partition) that has a different capacity cost.
Regardless of the preferred choice of ISA, the system takes into account.
For prefix transit AA subscriber deployments using the remote-site command, traffic for the remote transit subs are processed a second time. The ISA used by the parent AA-sub will be used by all transits within the parent. In remote-site cases there may be a need to increase capacity cost of parent since the transits stay on same ISA as the parent.
Prefix transit AA-subs are all diverted to the same Group and partition as the parent SAP.
 
Asymmetry Removal
Asymmetry removal is a means of eliminating traffic asymmetry between a set of multi-homed SAP or spoke-sdp endpoints. This can be across endpoints within a single node or across a pair of inter-chassis link connected routers. Asymmetry means that the two directions of traffic for a given flow (to-sub and from-sub) take different paths through the network. Asymmetry removal ensures that all packets for each flow, and all flows for each AA subscriber are diverted to a given AA ISA.
Traffic asymmetry is created when there are multi-homed links for a given service, and the links are simultaneously carrying traffic. In this scenario packets for flows will use any reachable paths, thus creating dynamic and changing asymmetry. Single node or multi-chassis asymmetry removal is used for any case where traffic for an AA subscriber may be forwarded over diverse paths on active AA divert links in a multi-homed topology. This includes support for SAP/spoke AA subscribers as well as business and residential transit AA subscribers within the diverted service.
Asymmetry removal must be implemented in the first routed hop on the network side of the subscriber management point, such that there will be a deterministic and fixed SAP / spoke-SDP association between the downstream subscriber management the parent divert service.
Asymmetry removal allows support for the SAP or spoke SDPs to the downstream element to be multi-homed on active links to redundant PE AA nodes as shown in Figure 10.
Figure 10: Transit Sub SAP/Spoke SDP Multi-Homing with Asymmetry
 
AA for transit-ip subscribers is commonly deployed behind the point of the subscriber policy edge after aggregation. This includes cases where AA needed is behind:
Asymmetry removal also allows a VPN site (Figure 11) to be connected with multi-homed, dual-active links while offering AAN services with the ISA.
Figure 11: VPN Site Multi-Homing with Asymmetry
Asymmetry removal is supported for Layer 3 AA divert services:
When asymmetry exists between multi-chassis redundant systems, Ipipe spoke SDPs are used to interconnect these services between peer nodes over an Inter-Chassis Link (ICL).
Asymmetry removal supports multiple endpoints of a service with a common AARP instance, with a primary endpoint assigned the app-profile (and transit policy for transit subs). The remaining endpoints are defined as secondary endpoints of the AARP instance. All SAP or spoke endpoints within a given AARP instance are load balanced to the same ISA in that node. Multi-endpoint AARP instances allow single-node asymmetry removal and multi-chassis asymmetry removal with multiple active links per node.
Asymmetry Removal Overview
Figure 12: Multi-Chassis Asymmetry Removal Functional Overview
For a Multi-homed parent AA-sub, the parent SAP/SDP that is Active/Inactive per chassis is agreed by the inter-chassis AA Redundancy Protocol (AARP). For single node multi-homed endpoints, the AARP state is determined within a single node, as explained later in the AARP operational states section.
 
Failure Modes
Failure modes include the following:
 
AARP Peered Node/Instance Configuration
The multi-homed diverted AA-sub in each peer node must be configured with the following parameters set in each node of the peer pair as follows:
shunt-sdp sdp-id:vc-id — Node specific but must properly cross-connect the local AA-sub service with the peer Ipipe/service shunt interface in order to operate properly for asymmetry removal for remote divert traffic. Peer AARPs will stay in standalone mode until cross-connect is configured properly.
AARP operation has the following required dependencies:
 
Multi-Chassis Control Link (MC-CTL)
A multi-chassis control link is automatically established between peer AARP instances to exchange configuration and status information. Information exchanged includes configured service, protecting sap/spoke, redundant-interface name, shunt-sdp, app-profile, priority and operational states.
AARP requires configuration of the peer IPv4 system address in order to establish a session between the two node’s system IPv4 addresses.
 
Multi-Chassis Datapath Shunts
When traffic needs to be remotely diverted it flows over shunts that are provisioned as sdp-id:vc-id between the dual-homed aa-sub local service an a remote vc-switching Ipipe.
 
Subscriber to Network Direction
The traffic is either handled locally (diverted to a local ISA when the AARP state is Master) or at the peer 7750 SR (redirect over the shunt Ipipe when the local AARP state is Backup or Remote). When traffic arrives on the subscriber side spoke SDP of the shunt-Ipipe, the system uses the AARP ID of the Ipipe to associate with an app-profile, hence triggering Ipipe divert. It is diverted to the same ISA used to service the dual-homed SAP/spoke SDP. The ISA then treats this traffic the same as if it was received locally on the dual-homed SAP/spoke SDP context. After ISA processing, the traffic returns on the network side of the Ipipe to the peer. When the traffic returns to the original 7750 SR, the shunt Ipipe terminates into the routed service and it makes a new routing decision.
 
Network to Subscriber Direction
The traffic is either handled locally (diverted to a local ISA when the AARP state is Master) or at the peer 7750 SR (remote divert over the shunt Ipipe when the local AARP state is Backup or Remote). When traffic arrives on the shunt Ipipe from the peer with an AARP ID and associated app-profile, it is diverted through AA on the way to the subscriber-side spoke SDP. After AA processing, the traffic returns on the subscriber side of the Ipipe to the peer. When the traffic returns to the original 7750 SR, the shunt Ipipe terminates into the routed service and it makes a new routing decision to go out the dual-homed SAP/spoke SDP.
 
AARP Operational States
In single node operation, there are 2 operational states, Master or Standalone. A single node AARP instance is Master when all these conditions are met, otherwise AARP is in the standalone state with is no asymmetry removal occurring:
With multi-chassis operation there are 4 operational states for an AARP instance: master, backup, remote and standalone.
The Master state will be immediately switched to Remote for AARP related failures that result in the instance being not ready. ICL datapath shunt SDP failures will cause the peer AARP go standalone. A shunt/Ipipe SDP failure is determined by the failure detection protocol used (BFD on routes, keep-alive on SDPs, LDP/RSVP, etc.).
When a SAP/spoke SDP with an AARP instance is shutdown nothing changes for AARP, as packets can still use the AARP interface. When the SAP/spoke SDP is deleted, AARP will be disassociated the from the spoke SDP/SAP before deleting. The AARP instance will still exist after deleting the sap/spoke but without an association to an aa-sub, the AARP state will to go standalone.
An AARP instance activity switch is when one node moves from Master to remote or backup mode, with the peer node becoming Master. This can occur on a per-instance basis using the re-evaluate tool, or for all instances on an ISA that fails. On an AARP activity switch, AA divert changes from local to remote (or vice versa) such that any given packet will not been seen by both nodes, resulting in no missed packet counts or double counts against the aa-sub.
AARP activity is non-revertive, in order to maximize the ID accuracy of flows. When an AARP instance toggles activity, packets are diverted to the newly active divert ISA and are processed as new flows, which for mid-session flows will often result in “unknown” traffic ID until those flows terminate. When the condition that triggered the AARP activity switch is resolved and the instance remains in backup state, in order to not cause an additional application ID impacting event. This is consistent with AA N+1 ISA activity switches.
Because AA ISA availability is a criteria for AARP switches, any ISA failure or shutdown will move all AARP instance activity to ISAs in the master peer nodes, such as during software upgrades of ISAs. Depending on the nature of the failure or sequence of an upgrade procedure, all AA traffic may be processed by ISAs in one of the peers with no traffic being processed by ISAs on the other node.
If it is desired to rebalance the ISA load between the peer nodes, there is a tools perform application-assurance aarp aarp-id force-evaluate command will re-run AARP activity evaluation on a per-ISA basis to determine Master/Backup AARP based on configured priority.
Table 4 shows the interaction and dependencies between AARP states between a local node and its peer:
 
 
 
ISA Overload Detection
Capacity cost resource counting does not have a hard per-ISA limit, since the cost values are decoupled from actual ISA resources. However, the value of the total summed cost per-ISA can be reported, and a threshold value can be set which will raise an event when exceeded.
ISA capacity overload detection and events are supported within the system resource monitoring / logging capabilities if the traffic and resource load crosses the following high and low load thresholds on a per-ISA basis:
While an app-profile is assigned to AA subscribers, the capacity-cost for that app-profile can be modified. The system makes updates in terms of the load balancing summary, but this does not trigger a re-balance.
In the absence of user configuration, the App-profile default capacity cost is 1. The range for capacity cost is 1 — 65535 (for example, for bandwidth based balancing the value 100 could represent 100kbps). Note that 0 is an invalid value.
If the re-balancing of AA subscribers is required (for instance after the addition of new ISAs), there is a tools command to rebalance AA subscribers between ISAs within a group. Rebalance affects which AA subs divert to which ISAs based on capacity cost. Transit subs cannot be rebalanced independent of the parent (they move with the parent divert), and DSM subs cannot be load balanced as all subs on an ISA-AA are from the associated ISA-BB pair. The system attempts to move aa-subs from the most full ISA to the least full ISA based on the load balancing mode. If the load becomes balanced or an aa-sub move fails due to ISA resources or divert IOM service queuing resources, the load balancing terminates.
Alternatively, load balancing can be manually accomplished by the AA subscriber being removed and re-added. This will trigger a load balancing decision based on capacity-cost. For ESM, SAP, and spoke-sdp subscriber types, this can be accomplished by removing and re-applying the AA subscriber's app-profile. In the case of ESM AA subscribers, shutting down and re-enabling either sub-sla-mgmt or the host(s) will have the same effect. Dynamic ESM AA subscribers will re-balance naturally over time as subscribers come and go from the network.
 
For transit AA subscriber deployments, the parent divert SAPs are load-balanced based on AA capacity cost from the app-profile configured against the SAP/SDP. The parent capacity cost should be configured to represent the maximum expected cost when all transit subs are present.
All traffic not matching a configured transit subscribers is dealt with as a member of the parent SAP and according to its app-profile.
 
AA Packet Processing
There are four key elements of Application Assurance packet processing (Figure 13):
1.
2.
3.
4.
Figure 13: Application Assurance High Level Functional Components
 
Divert of Traffic and Subscribers
Any traffic can be diverted for application-aware processing. Application Assurance is enabled through the assignment of an application profile as part of either an enhanced subscriber management or static configuration. This process enables the AA functionality for all traffic of interest to and from a given subscriber/SAP/spoke SDP. Which traffic is deemed of interest, is configured through an AA ISA group-specific configuration of forwarding classes (FCs) to be diverted to AA and enabled on a per subscriber/SAP/spoke SDP using application profiles.
Figure 14 shows the general mechanism for filtering traffic of interest and diverting this traffic to the appropriate AA ISA module residing on an IOM (referred as the host IOM). This traffic management divert method applies to both bridged and routed configurations.
Figure 14: Application Assurance Ingress Datapath
For a SAP, subscribers with application profiles enabling AA, the traffic is diverted to the active AA ISA using ingress QoS policy filters, identifying forwarding and sub-forwarding classes that could be diverted to the Application Assurance. Only single point (SAP, ESM, or DSM subscriber, spoke SDP) configuration is required to achieve divert for both traffic originated by and destined to a given AA subscriber. Diversion (divert) to the AA ISA is conditional based on the AA ISA status (enabled, failed, bypassed, etc.).
 
Unless the AA subscriber’s application profile is configured as “divert” using Application Profiles and the FC is selected to be diverted as well, the normal ingress forwarding occurs. Traffic that is filtered for divert to AA ISAs is placed in the appropriate location for that system’s AA ISA destination.
Users can leverage the extensive QoS capabilities of the router when deciding what IP traffic is diverted to the Application Assurance system for inspection. Through AA ISA group-wide configuration, at least one or more QoS forwarding classes with the “divert” option can be identified. The forwarding classes can be used for any AA subscriber traffic the service provider wants to inspect with Application Assurance.
 
Services and AA Subscribers
The 7750 SR/7450 ESS AA ISA provides the Layer 3-7 packet processing used by the Application Assurance feature set. Application Assurance is applied to IPv4 and IPv6 traffic on a per AA subscriber basis, where an AA subscriber is one of:
Non-IPv4 and IPv6 traffic is not diverted to AA and forwarded as if AA was not configured where an AA subscriber may be contained in the following services:
Application Assurance is supported with:
The AA ISA feature set uses existing 7750 SR/7450 ESS QoS capabilities and further enhances them to provide application-aware traffic reporting and management on per individual AA subscriber, AA subscriber-type or group. A few examples of per-application capabilities within the above AA subscriber contexts include:
The following restrictions are noted — Application Assurance is not supported for tunneled transit traffic (GRE or L2TP tunnels using PPP or DHCP based policy) destined for a remote BRAS.
 
Spoke SDPs
AA on spoke SDP services allows AA divert of the spoke SDP, logically representing a remote service point, typically used where the remote node does not support AA. A given SAP/spoke can be assigned and app-profile, and when this app-profile is enabled for divert all packets to and from that SAP/spoke will be diverted to an AA ISA (for forwarding classes that are configured as divert eligible).
Table 5 shows spoke SDP divert capabilities.
The following restriction is noted.
 
Transit AA Subs
A transit AA sub is an ISA local AA sub contained within a parent AA sub. There are two types of transit AA subs:
A transit AA-sub incorporates the following attributes:
When a SAP or spoke-SDP diverted to AA is configured with transit subs, that SAP or Spoke-SDP is referred to as the parent AA subscriber. Transit AA subs are supported on the following parent Layer 3 SAPs or spoke SDPs that support AA divert:
 
 
The transit AA-subs within a given parent AA sub can be displayed using the show aa group transit policy or transit-prefix policy command.
For transit IP subscribers all packets are accounted for once in the ISA records. Therefore, transit IP AA sub counts do not count against the parent SAP in reporting. For transit prefix AA subscriber deployments using the remote-site command, traffic for the remote transit subs are processed and counted for both the local parent and the remote transit subscriber.
 
Transit AA-Sub App-Profile
The app-profile assigned to the aa-sub-id affects both stats and control of the policy. App-profiles are assigned to the transit AA-subs either explicitly when the transit-aa-sub is created, or by default (when not specified) according to a default app-profile configured in a transit-ip-policy or transit-prefix-policy. This allows transit AA subs to be treated with a different default app-profile than the app-profile (default or specified) set against the parent aa sub. The number of aa-sub stats used per ISA is proportional to the number of AA subscribers including transit subscribers subs are added.
ASO policy override is supported for static transit subs.
 
Transit IP Policy and Transit Prefix Policy
A transit policy is associated with the parent (divert) SAP/SDP to define how transit AA subs are created within that parent. The transit policy must be defined in the config>app-assure>group context before it can be assigned to a parent. Transit IP subs can be created by the following methods:
Transit prefix subs are created by static CLI/SNMP configuration of a transit aa-sub within the transit-prefix-policy. The transit prefix policy follows IP filter conventions for first match and ordering of entries. While for residential /32 transits if there is an IP address conflict between any static prefix transit subs, the latter config will be blocked, for business transit subs multiple overlapping address entries are allowed to enable longest match within subnets. IP addresses for a VPN site as an AA-sub are configured with the transit prefix policy. There are two options:
A given transit prefix subscriber may only have either aa-sub-ip entries or aa-network-ip entries but not both.
The IP addresses defined in the transit-ip-policy for a transit sub are full /32 IP addresses. The IP addresses defined in the transit-prefix-policy for a transit sub are any length from /0 to /32.
Multiple IP addresses (from any prefix/pool) can be assigned to a single transit AA sub. IP addresses must be unique within a transit policy, but can be re-used in separate policies (since they have parent specific context).
The transit policy contains the default app-profile for the transit sub if a transit policy is created but app-profile is not specified. An app-profile can be later explicitly assigned to the transit sub after the sub is created (using RADIUS COA, DHCP or static).
For dynamic transit ip subs, a sub-ident-policy (also used by ESM to associate sub ID policies to a SAP) can now also be associated with the AA-sub parent by defining the sub-ident policy in the transit IP policy. This determines how sub identifying strings are derived from DHCP option 82 fields. The policy also contains app-profile-map which maps the strings to the defined app- profiles. Transit subs do not use the sla-profile or sub-profile aspects of the sub-ident-map.
In the case of multi-homed transit subs, the transit-ip-policy must be the same on both nodes of the multi-homed parent link to ensure consistency of sub context and policy.
There are no configurable limit hosts per sub per sub (this is similar to lease-populate which limits the number of dynamic hosts per SAP), or, limit the number of transit subs per transit ip policy (parent). This is a function for the PE doing subscriber management.
If transit sub resource limits are exceeded (hosts per sub, or subs per ISA) the transit sub creation is blocked (for both static and dynamic models).
There is a per-ISA group/partition show list of AA-subs in a transit-ip-policy which includes a parent field for transit subs (static versus dynamic identified).
Persistent AA statistics is supported dynamic transit AA subs, ensuring that accounting usage information is not lost when the sub disconnects prior to reporting interval end.
 
static-remote-aa-sub Command
Figure 15: static-remote-aa-sub Usage Topology
This command enables unique ISA treatment of transit prefix subscribers configured on the opposite (remote) side of the system from the parent SAP/spoke SDP. Provisioning a transit sub as remote-aa-sub within a transit prefix policy enables the ISA to treat any network IP-based transit subs in the following ways:
Allows natural direction of the packet for both the parent aa-sub and the transit-aa-sub, as shown in Figure 15, where a packet from a remote client to a local server will be seen as to-sub for the parent, and from-sub for the transit sub that is logically at the far end site.
 
 
Static Transit AA-Sub Provisionings
Static (through CLI/SNMP) provisioning of transit AA-subs is supported. A profile policy override to set policy characteristics by ASO (as opposed to within an app-profile) is supported only for statically configured transit AA subs.
If there is an IP address conflict between a static and dynamic transit sub, the static takes precedence (per ESM). If the static is configured first, the dynamic transit sub will be rejected. If the dynamic is created first, a warning is provided before removing the dynamic transit sub and notifying the sub-manager by COA failure.
 
DHCP Transit IP AA-Subs at DHCP Relay Node
DHCP-based transit sub creation provides a sub ID and lease time for IP addresses correlated to the ESM/subscriber context in the PE.
The 7750 DHCP relay agent creates dynamic DHCP AA-subs when the DHCP ACK is received from the DHCP server, including the sub name, IP address and app-profile from DHCP Option 67 (if present) when the DHCP ACK messages passes through AA node to the downstream subscriber-edge node. If there is no app-profile assigned when the transit aa-sub is created, a default transit aa-sub app-profile is used (configured in the transit-ip-policy assigned against the divert parent aa-sub).
This is compatible with the ESM 7x50 edge as well as third-party BRAS and CMTS.
Dynamic AA-sub stats records are persistent across modem reset/session releases. The end of accounting records are created when transit subs are released.
Multiple IPs per transit AA sub are determined by seeing a common the DHCP Option 82 cct ID.
 
 
 
RADIUS Transit AA-Subs
Transit subs can be dynamically provisioned by RADIUS accounting start messages forwarded by the RADIUS AAA server to a RADIUS sub-manager function at the OSS layer (5780 DSC). This RADIUS sub manager manages dynamic transit AA subs on the appropriate ISA and transit-ip-policy based on the RADIUS accounting information. The interface for the sub manager to configure transit AA subs is RADIUS COA messages, which are acknowledged with a COA success message to the sub manager.
If a dynamic transit sub cannot be created as requested by a COA due to resource constraints or conflicts, the node replies to the sub manager with a COA fail message so that retries will not continue. This message should contain information as to the cause of the rejection. Multiple IPs per sub are allowed when common sub-ID names are seen, but with differing IP hosts.
When a RADIUS update/COA message is seen, it could contain a modified IP address or app-profile for an existing transit sub which is accepted without affecting transit AA subscriber statistics. These transit AA-subs are removed by the sub manager when a RADIUS accounting stop message is received.
Figure 16: RADIUS COA Example
The attributes in RADIUS COA that identify the downstream transit AA-subs are:
 
Seen-IP RADIUS Notification
Seen-IP transit subscriber notification provides RADIUS Accounting Start notification of the IP addresses and location of active subscribers within a parent AA service.This allows a PCRF to dynamically manage RADIUS AA subscriber policy (create, modify, delete) without requiring static network topology mapping of a subscriber edge gateway to the parent transit service.
When detect-seen-IP is enabled within a transit policy, the ISA will detect IP flows on a AA parent subscriber that do not map to an existing transit AA-subscriber. It will then use a simple RADIUS Accounting Start notification from the transit AA node to the PCRF to initiate subscriber creation, providing information on the location of the transit subscriber traffic. This provides notice for subscriber authentication changes such as new subscriber session, or new host IP addresses added to an existing aa-sub, while being independent of the network topology for how the BNG is homed into the transit AA nodes.
The RADIUS Accounting Start message is sent to the RADIUS Server referenced by the specified seen-ip-radius-acct-policy. This RADIUS message contains the following information about the flow:
 
Transit AA-Sub Persistence
Transit AA subs can be persistent within a single node, since, in some cases, there is not a dual- node BNG subscriber redundancy configuration. This allows a single node that has dynamically created transit subs to retain the subscriber state, context, and stats across a node or ISA reboot.
If dynamic transit AA subs are released, renewed or otherwise changed during an outage or reboot of a transit AA node, the sub manager will notify the transit node of these changes.
Prefix transit subs are not affected by persistence since they can only be statically configured.
 
Policers for Transit AA-Subs
AA-sub per-subscriber policers can provide per SAP policing for the parent SAP, with transit AA-subs each supporting distinct per-sub policers within the parent (packets are only processed once against one aa-sub – the parent or the transit sub). Packets matching transit AA subs and policers will not be included in a parent policer.
There is no policer hierarchy unless system wide policers are referred to by both the parent aa-sub and transit aa-sub. When the remote-site configuration is not used, system policers can be used to police all traffic for a site containing transits, subject to constraints on system policer scale.
When the remote-aa-sub config is used, the parent owns all packets for stats and policing, so any transit sub configuration within the parent does not affect the stats or policers. AA policers are supported on a transit subscriber basis, across all (multiple) IP prefixes per sub.
 
ISA Host IOM for Transit Subs
The AA divert IOM is not impacted by transit AA subs in the divert parent. The ISA host IOM egress datapath functions to convert the parent SAP into transit AA-subs that are then handled by the ISA consistent with all other AA-sub features. The ISA itself treats all AA-subs equally regardless of whether the AA sub is from ESM, from DSM, from an SAP, or from a transit subscriber in a parent SAP/spoke.
Prefix transit subs can only be created on IOM3-xp as host IOM, or with MS-ISM as host for ISA2. Asymmetry removal requires IOM3-xp or MS-ISM as host and IOM3-xp or newer (IMM) as divert IOM.
 
AA Subscriber Application Service Definition
 
Application Profile
Application profiles enable application assurance service for a given ESM or DSM subscriber, Service Access Point or spoke SDP (AA subscriber). Each application profile is unique in the system and defines the AA service that the AA subscriber will receive. An ESM subscriber can be assigned to an application profile which affects every host of the particular subscriber. For SAP or spoke SDP AA subscribers, an application profile can be assigned which affects all traffic originated/destined over that SAP or spoke SDP. By default, ESM and DSM subscribers, SAPs or spoke SDPs are not assigned an application profile.
The following are main properties of application profiles:
ESM and DSM policy includes an application profile string. The string points to an application profile pre-provisioned within the router and is derived by:
Inherited by defaults in the sap>sub-sla-mgmt context, to allow default application profile assignment if no application profile was provided.
Mid-session (PPP/DHCP) changes to the application profile string allows:
 
 
 
Figure 17: Determining the Subscriber Profile, SLA Profile and Application Profile of a Host
 
Application Profile Map
Application Assurance adds new map (app-profile-map) application profile command to associate an app-profile-string from dynamic subscriber management to a specific application profile using its app-profile-name that has been pre-provisioned. The application profile map is configured in the config>subscr-mgmt>sub-ident-pol context.
The pre-defined subscriber identification policy has to be assigned to a SAP, which determines the sub-id, sub, sla, and app-profiles.
 
Application Service Options (ASOs)
ASOs are used to define service provider and/or customer visible network control (policy) that is common between sets of AA subscribers (for example, upstream/downstream bandwidth for a tier of AA service). ASO definition decouples every AA subscriber from needing subscriber-specific entries in the AQP for standard network services.
As an example, an operator can define an ASO called ServiceTier to define various HSI services (Super, Lite, etc.) (Figure 18-A). The operator can then reference these defined ASOs when creating the App Profiles that are assigned to AA-subscribers (Figure 18-B).
Figure 18: Configuration Example
Then, the defined ASOs are used in the AQP definition to determine the desired treatment / policy (Figure 19).
Figure 19: AQP Definition Example
Alternatively, if ASOs were not used in the previous example, then the operator would have to define a unique AQP entry for every subscriber. Each of these AQPs will have its “match” criteria setup to point to the subscriber ID, while the action for all of these unique AQPs will be the same for the same service (for Tier 1 service, the policer bandwidth will be the same for all Tier 1 AA subscribers) (Figure 20).
Figure 20: Single ASO Example
The example in Figure 20, shows how the use of just a single ASO can save the user from having to provision an AQP entry every time a subscriber is created.
Other example uses of ASO entries include:
 
 
Application characteristics are defined as specific to the services offered within the operator痴 network. The operator defines ASO characteristics and assigns to each ASO one or more values to define service offering to the customers.
The following are the main elements of an ASO:
The following lists how ASO characteristics are used:
Syntax checking is performed when defining application profiles and AQPs that include application characteristics. This ensures:
 
ASO Overrides
This feature enables individual attributes/values to be set against an aa-sub complementary to using app-profiles. The aa-sub types supported that can have ASO overrides by CLI/SNMP are provisioned business AA SAPs and spoke SDPs, and statically-provisioned transit AA subs. Dynamic AA subscribers (ESM, DSM, and transit subs) can have ASO overrides applied by RADIUS override VSAs.
Application profile assignment is still used to obtain the following information:
The information configured in the app-profile is also used, but the following can be overridden:
The overrides are specific to a single aa-sub. An ASO override does affect any other aa-sub or the app-profile config itself.
Typically the ASO characteristics in the app-profile would not be specified, thus leaving all characteristics at their default values. This is not mandatory though and the app-profile could specify any ASO characteristic and non-default value.
The AA app-qos-policy has entries that can refer to ASO characteristics (attributes) and values in their match criteria. In the absence of any individual attribute/value override, an aa-sub will continue to work as before - using the ASO characteristics/values defined inside the app-profile assigned to them. With overrides, the aa-sub attributes used in app-qos-policy lookups are the combination of the following:
Show command output display the combined set of attributes that apply to the aa-sub.
The override commands can only be used if there is already an app-profile assigned to the aa-sub, otherwise, the overrides are rejected.
The app-profile attribute override is assigned to a specific aa-sub (SAP, spoke SDP) within the AA Group:partition with where the subscriber exists. While subscriber names are unique, the Group:partition policy context where apps, app-profiles and ASO characteristics are defined is relevant to the override context. Override for ESM subscribers can be triggered via DIAMETER or RADIUS.
 
AA-Sub Scale Mode
An AA VPN policy is generally administered using a per-site (aa-subscriber) policy attribute assignment (ASO override), as opposed to a service profile based model commonly used for residential services. Due to this, the number of attributes and values of ASOs that can be needed in an AA VPN service will be much larger than ASO scale needed for residential uses.
On the other hand, the number of AA subscribers needed per node and per ISA is much smaller for VPN services, and the size of each in bandwidth is generally much larger than residential.
In conjunction with App-profile ASO override, a new capability is added to place an AA-group into a mode optimized for VPN scale requirements:
config>aa>aa-group>aa-sub-scale {residential|vpn} (residential is default)
 
Application Identification
This section discusses the following topics:
Application identification means there is sufficient flow information to provide the network operator with a view to the underlying nature and value of the content. Application ID does not include:
Application Assurance can identify and measure non-encrypted IP traffic flows using any available information from Layer 2-Layer 7, and encrypted IP traffic flows using heuristic techniques.
Application Assurance attempts to positively identify the protocols and applications for flows based on a pattern signature observation of the setup and initial packets in a flow. The system correlates control and data flows belonging to the same application. In parallel, statistical and behavioral techniques are also used to identify the application. Until identified, the flow will not have a known application and will be treated according to the default policies (AQP policies defined using all or any ASO characteristics, subscriber Id and traffic direction as match criteria) for traffic for that AA subscriber, app-profile and direction (packets will be forwarded unless an action is configured otherwise). If the identification beyond OSI Layer 2is not successful, the flow will be flagged as an unknown protocol type, (for example unknown_tcp or unknown_udp). The unknown traffic is handled as part of all application statistics and policy, including generation of stats on the volume of unknown traffic.
Application Assurance allows operators to optionally define port-based applications for “trusted” TCP or UDP ports. Operators must explicitly identify a TCP/UDP port(s) in an application filter used for “trusted” port application definition and specify whether a protocol signature-based application identification is to be performed on a flow or not. Two options are available:
At Application Assurance system startup or after an AA ISA activity switch, all open flows are marked with the “existing” protocol signature and have a policy applied according to an application based on the “existing” protocol until they end or the identification of an in-progress flow is possible. Statistics are generated.
From the first packet of a flow, a default per AA subscriber AQP policy is applied to every packet. Once an application is identified, subsequent packets for a flow will have AA subscriber and application-specific AQP applied. The AA-generated statistics for the flow with AA subscriber and application context are collected based on the final determination of the flow's application. A subset of the applications may be monitored on an ongoing basis to further refine the identification of applications carried with the traffic flow and to identify applications using an external application wrapper to evade detection.
 
Application Assurance Identification Components
Figure 21 shows the relationship between the Application Assurance system components used to identify applications and configure Application Assurance related capabilities. Each ID-related component is defined as follows:
Figure 21: Policy Structure
 
Table 7 provides an overview of how those various components used in Application Assurance to recognize types of flows/sessions.
 
Note: Alcatel-Lucent’s protocol signatures do not rely on IP port numbers to identify a TCP/UDP port based protocols / applications in order to avoid eliminate false-positives but allow operators to define application filters if a port-based identification is deemed adequate (see an example below).
 
 
Protocol Signatures
The set of signatures used to identify protocols is generated by Alcatel-Lucent and included with the Application Assurance software load. The signature set includes:
Dynamic upgrades of the signatures in the system are implemented by invoking an admin application-assurance upgrade command and then performing AA ISA activity switches.
The protocol signatures are included in aa-isa.tim software load which is not tightly coupled with software releases allowing for protocol signature updates without upgrading and impacting of routing/forwarding engines as part of an ISSU upgrade that updates only the AA ISA software. Refer to upgrade procedures described in the 7750 SR and/or 7450 ESS Release Notes for detailed information.
Since protocol signatures are intended to be the most basic block of Application Identification, other AA components like Application Filters are provided to further customize Protocol Signatures allowing operators to customize their applications and to reduce a need for a new Protocol Signature load when a new Application may need to be identified. This architecture gives operators more flexibility in responding to ever changing needs in application identifications.
Signature upgrade without a router upgrade is allowed within a major router release independently of system ISSU limits. An AA ISA signature upgrade is supported before the first ISSU router release (for example, operators can upgrade signatures for pre-ISSU minor releases).
In addition, any router release from ISSU introduction release can run any newer aa-isa.tim image within the same major release by performing an aa-isa.tim single step upgrade. For example, release 8.4 may be upgraded in a single step to run release 8.14 of isa-aa.tim.
Each protocol, except internal protocols used for special-case processing statistic gathering (like “cut-though”, for example), can be referenced in the definition of one or multiple applications (through the App-Filter definition). Assignment of a supported protocol to an app-filter or application is not mandatory. Protocols not assigned to an application are automatically mapped by the system to the default “Unknown” application.
 
Custom Protocols
Custom protocols are supported using configurable strings (up to 16 hex octets) for pattern-matched application identification in the payload of TCP or UDP based applications (mutually exclusive to other string matches in an app-filter).
The match is specified for the “client-to-server”, “server-to-client”, or “any” direction for TCP based applications, and in the “any” direction for UDP based applications.
There is a configurable description and custom protocol id for a protocol, with configurable shutdown. When disabled, traffic is identified as if the protocol was not configured.
Custom protocols and ALU-provided protocols are functionally equivalent. Custom protocols are used in application definition without limitations (all app-filter entries except strings are supported). Collection of custom protocol statistics on a partition/ISA group/special study sub level is supported.
 
Protocol Shutdown
The protocol shutdown feature provides the ability for signature upgrades without automatically affecting policy behavior, especially if some or even all new signatures are not required for a service. All new signatures are disabled on upgrade by default to ensure no policy/service impact because of the signature update.
All protocols introduced at the R1 stage of a given release are designated as “Parent” signatures for a given release and cannot be disabled.
Within a major release, all protocols introduced post-R1 of a major release as part of any isa-aa.tim ISSU upgrade are by default shutdown. They must be enabled on a per-protocol basis (system-wide) to take effect.
When shutdown, post R1-introduced protocols do not change AA behavior (app-id, policy, statistics are as before the protocol introduction), for example, traffic maps to the parent protocol on which the new signature is based. In cases where there is more than one parent protocol, all traffic is mapped to a single, most-likely, parent protocol. For example if 80% of a new protocol has traffic mapping to unknown_tcp, and 20% mapping to another protocol(s), unknown_tcp would be used as parent.
Enabling/disabling of a new protocol takes affect for new flows only. The current status (enabled/shutdown) of a signature and the parent protocol is visible to an operator as part of retrieving protocol information through CLI/SNMP.
 
Supported Protocol Signatures
Protocol signatures are release independent and can be upgraded independently from the router’s software and without impacting router’s operations as part of an ISSU upgrade. A separate document outlines signatures supported for each signature software load (isa-aa.tim). New signature loads are distributed as part of the SR/ESS maintenance cycle. Traffic identified by new signatures will be mapped to an “Unknown” application until the AA policy configuration changes to make use of the newly introduced protocol signatures.
 
Application Groups
Application groups are defined as a container for multiple applications. The only application group created by default is Unknown. Any applications not assigned to a group are automatically assigned to the default Unknown group. Application groups are expected to be defined when a common policy on a set of applications is expected, yet per each application visibility in accounting is required. The application group name is a key match criteria within application QoS policy rules.
 
Charging Groups
Charging Groups allow usage accounting by application and/or app groups in a manner that does not affect app to app-group mapping. For example, AA app groups statistics for “Streaming Video” includes all streaming apps, independent of whether any specific application is 0-rated for charging. AA charging groups are used for charging related statistics.
As with app-groups, charging groups are defined under an AA policy context for an AA group or partition. Once defined, individual apps and app-groups can be associated with the desired charging group. The charging group name is a key match criteria within application QoS policy rules.
A default charging group can be specified for the AA policy to associate a charging group to any applications or app-groups that are not explicitly assigned to a charging group.
Charging groups are also assigned an export-id number for accounting export purposes.
If no export-id is assigned, that charging group cannot be added to the aa-sub stats RADIUS export-type. Once a charging group index is referenced, it cannot be deleted without removing the reference.
 
Applications
The application context defines and assigns a description to the application names supported by the application filter entries, and assigns applications to application groups.
The Application Assurance system provides no pre-defined applications other than Unknown. Applications must be explicitly configured. Any protocols not assigned to an application are automatically assigned to the default Unknown application. Alcatel-Lucent provides sets of known-good application/app-group configurations upon request. Contact the technical support staff for further information.
The applications are used by Application Assurance to identify the type of IP traffic within the subscriber traffic.
The network operator can:
 
Application Filters
Application filters (app-filter) are provided as an indirection between protocols and applications to allow the addition of variable parameters (port number, IP addresses, etc.) into an application definition. An application filter is a numbered rule entry that defines the use of protocol signatures and other criteria to define an application. Multiple rules can be used to define what constitutes an application but each rule will map to only one application definition.
The system concept of application filters is analogous to IP filters. Match of a flow to multiple rules is possible and is resolved by picking the rule with the lowest entry number that matches. A flow will only ever be assigned to one application.
The following criteria can be assigned to an application filter rule entry:
The application must be pre-configured prior to using it in an app-filter. Once defined, the new application names can be referenced.
 
HTTP
 
HTTP Protocol
The Hyper-Text Transfer Protocol (HTTP) has become the most significant protocol used on the Internet and has expanded its role beyond web browsing with a large number of applications using HTTP for a variety of functions on both desktop and mobile devices.
Application Assurance provides the tools required by residential, mobile and business VPN service providers to accurately classify any web-based applications regardless of where the content is stored and how it is delivered. This is done by using either the default protocol signatures delivered with the AA ISA software or by defining string based signatures from the HTTP header information fields included in the HTTP request messages to further refine the detection.
 
HTTP Session Persistency
HTTP can use both non persistent connections and persistent connections. Non-persistent connection uses one TCP connection per HTTP request while persistent connection can reuse the same TCP connection for multiple HTTP request to the same server.
Nowadays most applications are using HTTP/1.1 and persistent connection but HTTP/1.0 and non-persistent connections remains on older software and mobile devices.
HTTP flows are classified in a particular application using the first HTTP request of the flow only by default. Optionally, the MS-ISA offers the flexibility to classify each HTTP request within the same flow independently using http-match-all-request feature.
 
HTTP Proxy Support
Application Assurance also supports traffic classification of HTTP between a subscriber and a web proxy. This feature is enabled by default, the ISA monitors and detects HTTP proxy flows automatically, each request within the same persistent connection to the proxy server is classified independently.
 
AA IP Prefix Lists
AA ISA allows the match section of session filters, AQPs entries and application filters to include matching against a configured IP filter list(s). Each IP filter list (aka IP pools) can have up to 64 IP address entries with a configurable mask for each entry.
 
Statistics and Accounting
Application Assurance statistics provide the operator with information to understand application usage within a network node.
Application Assurance XML record accounting aggregates the flow information into per application group, per application, per protocol reports on volume usage during the last accounting interval. This information is then sent to a statistics collector element for network wide correlation and aggregation into customized graphical usage reports. Application Assurance uses and benefits from the rich 7750 SR/7450 ESS accounting infrastructure and the functionality it provides to control accounting policy details.
The following types of accounting volume records are generated and can be collected:
Application Assurance supports RADIUS accounting export of per AA subscriber charging group statistics.
Each AA group:partition can be configured for AA-subscribers stats export by referencing both an accounting policy (for XML statistics) and/or a RADIUS accounting policy. In order to determine how to export various counters for subscriber AA statistics, an export-using keyword is used when enabling aa-sub level stats export to specify the export method to be used for each, whether accounting-policy or radius-accounting-policy and/or diameter-based usage monitoring.
Per AA flow statistics are provided as described in the cflowd section.
Refer to the 7750 SR/7450 ESS OS System Management Guide for information on general accounting functionality.
 
Per-AA-Subscriber Special Study
The system can be configured to generate statistical records for each application and protocol that the system identifies for specific AA subscribers. These capabilities are disabled by default but can be enabled for a subset of AA subscribers to allow detailed monitoring of those AA subscriber’s traffic.
Per-aa-sub per-application and per-aa-sub per-protocol records are enabled by assigning individual AA subscribers to “special study” service lists. The system and ISA group limit the number of AA subscribers in this mode to constrain the volume of stats generated. When an AA subscriber is in a special study mode, one record for every application and/or one record for every protocol that are configured in the system are generated for that subscriber. For example, if 500 applications are configured and 200 protocols are identified, 700 records per AA subscriber will be generated, if the AA subscriber is listed in both the per-aa-sub-application and per-aa-sub protocol lists.
 
System Aspects
Application Assurance uses the existing redundant accounting and logging capability of the 7750 SR/7450 ESS for sending application and subscriber usage information, in-band or out-of-band. Application Assurance statistics are stored using compressed XML format with other system and subscriber statistics in compact flash modules on the redundant SF/CPMs. A large volume of statistics can be expected under scaled scenarios when per-AA-subscriber statistics/accounting is enabled.
AA accounting and statistics can be deployed as part of other system functionality as long as the system’s function is compatible with AA accounting or as long as the system-level statistics can become application-aware due to, for example, AA ISA-based classification. An example of this feature interaction includes volume and time-based accounting where AA-based classification into IOM queues with volume and time accounting enabled can, for instance, provide different quota/credit management for off-net and on-net traffic or white/grey applications.
 
Application Assurance XML Volume Statistics and Accounting
Application Assurance is configured to collect and report on the following statistics when at least one AA ISA is active. The default Application Assurance statistics interval is 15 minutes.
Statistics to be exported from the node are aggregated into accounting records, which must be enabled in order to be sent. By default, no records are sent until enabled. Each record template type is enabled individually to control volume of statistics to the desired level of interest. Only non-zero records are written to the accounting files for all AA subscriber based statistics to reduce the volume of data.
The operator can further select a subset of the fields to be included in per-AA-subscriber records and whether to send records if no traffic was present for a given protocol or application, for example, sending only changed records.
Each record generated contains the record fields as described in Table 8. The header row represents the record type.
 
The records are generated per ISA group and partition, with an ISA group identified by the group ID (XML field name “aaGroup”), partition identified by the partition ID (XML field name “aaPart name” and per AA subscriber (if applicable) with the AA subscriber identified by the ESM, DSM, or transit subscriber name, SAP ID (XML field name “subscriber name”, “sap name” or “spoke SDP ID” respectively).
The date, time, and system ID for the records will be visible as part of the existing accounting log capability, thus does not need to be contained inside the Application Assurance records themselves.
The Forwarding Class is included in AA XML records as generally a VPN interconnection SLA is a combination of Bandwidth connection at the site level and Forwarding Class to transport the traffic over the MPLS network, by mapping the end-customer DSCP or 802.1P traffic value into a given FC.
AA accounting stats of the application/application-group volume usage per forwarding class shows the exact volume of each application at the per FC level and better ties the AA reports to the VPN services and SLA.
This can also identify key applications using a non optimal FC over a given VPN/Site and allow the option for AA to remark these into a higher traffic class, with reporting per FC to show resulting use.
AA Partition Traffic Type Statistics
AA-ISA provides, at the AA partition level, traffic volume visibility of the Layer 3 protocols used to transport the different Layer 4 protocols. These include a traffic volume break down of TCP, UDP and Non-TCP-UDP carried by IPv4 and IPv6 protocols.
Traffic-type statistics are broken down by "family" and "protocol":
Therefore, AA-ISA traffic type record provides a collection of 15 sets of traffic volume (bytes).
Statistics figures as follows:
These statistics are always counted. There is no configuration required to enable/disable tracking. However, the operator has the option to enable/disable export of these statistics via XML
Table 9 lists the statistic record fields per AA partition.
 
 
Configurable AA-Subscriber Statistics Collection
Existing average volume statistics collected over an accounting interval are extended to provide the maximum volume (bytes/packets) recorded for a throughput measurement period (5 minutes) within an accounting interval. These additional statistics improve accuracy for the access-pipe right-sizing service.
Maximum throughput statistics can be enabled for the selected applications and/or application groups enabled for custom per AA statistics. In addition, the operator can enable (disabled by default) per AA-subscriber “Max-throughput” statistics for total (/aggregate) subscriber traffic, independent of defined applications/application-groups.
Maximum throughput statistics records are allocated from the 2048K records available for use for per subscriber records.
Maximum throughput statistics are not provided for the protocols enabled for custom per AA statistics.
 
AA-Performance Record for ISA Load
The AA-performance statistics record provides visibility of ISA loading related statistics to allow operational monitoring and planning of ISA overload:
1.
2.
3.
The 5670 RAM provides further analysis and thresholding triggers based on these ISA statistics, suitable for long-range planning trends such as average number of subs or peak numbers of flows.
The node per-ISA planning record values are cleared on accounting read (per all accounting records). Not reading the records means that the average and peak values are the values for the last reporting interval. The time last read is indicated in the record.
The AA performance planning record contains the following fields:
 
 
 
 
AA Partition Traffic Type Statistics
AA ISA provides, at the AA partition level, traffic volume visibility of the Layer 3 protocols used to transport the different Layer 4 protocols. These include a traffic volume break down of TCP, UDP and Non-TCP-UDP carried by IPv4, IPv6, DS_Lite, 6to4/6RD and Teredo protocols.
Traffic-type statistics are broken down by family and protocol:
Therefore, AA ISA traffic type record provides a collection of 15 sets of traffic volume (Bytes) statistics figures as follows:
These statistics are always counted. There is no configuration required to enable/disable tracking. However, the operator has the option to enable/disable export of these statistics via XML.
 
 
 
RADIUS Accounting AA Records
AA RADIUS accounting provides per aa-subscriber level charging group statistics as well as application-group (AG) support into RADIUS accounting infrastructure and application group support. The primary use of this is to allow RADIUS accounting to be enhanced with AA information useful for usage-based billing plans, providing flexibility to charge and rate application content using IP subnets, HTTP URLs, SIP URIs and other AA identified applications.
The system can export AA accounting statistics using accounting policy records exported with RADIUS accounting. AA RADIUS accounting provides total volume broken out by charging groups which are mapped by application. AA RADIUS accounting is aa-sub-ID based, where the AA-sub context IPv4 and IPv6 host addresses for the sub are not reflected in RADIUS accounting.
AA RADIUS accounting is implemented using ALU Vendor Specific Attributes (VSAs). This provides all charging group counters for a given subscriber to be exported with a common accounting session ID. The following statistics are included in each record. Accounting values are for forwarded packets (after AA policy):
RADIUS accounting is supported for all AA-sub types. RADIUS accounting is used to export of AA CG and AG (App-group) values at according to the RADIUS accounting policy interval. Charging groups statistics are exported in RADIUS accounting independent of app-groups (either or both can be enabled).
 
 
AA GX Based Usage Monitoring
Using 3GPP (third generation Partnership Project) diameter (Gx) functionality, AA ISA upon receiving requests from Policy and Charging Rules Function (PCRF), can monitor application usage at the subscriber’s level and report back to PCRF whenever the usage exceeds the threshold(s) set by the PCRF.
Usage-monitoring can be used by operators to report to PCRF when:
a.) AA ISA detects the start of a subscriber application (by setting usage threshold to be very low)
b.) A Pre-set usage volume per subscriber application is exceeded.
AA can monitor subscriber’s traffic for any defined:
AA ISA Gx-based usage monitoring is restricted to AA ESM subscribers’ type.
The AA ISA Gx usage monitoring feature builds on 3GPP Release 11 defined Application Detection and Control (ADC) Gx attributes. In addition, AA ISA is compliant with 3GPP Release 12, whereby the ADC rule functionality is integrated in the PCC rules.
AA ISA reports accumulated usage when:
An AA defined application, application group and/or charging group is automatically allowed to be referenced by a an ADC rule for the purpose of usage monitoring only if:
a.) It is already selected for either XML or Radius per subscriber accounting or
b.) It is explicitly enabled by the operator for per sub statistics collection and
c.) Usage monitoring is enabled for the given AA group:partition.
 
Figure 22 illustrates the different messaging /call flows involved in application level usage monitoring. For details about the supported AVPs used in these messages, see section Supported AVPs.
Figure 22: Usage Monitoring
AA ISA (the PCEF) supports Usage-Thresholds AVPs that refer to the thresholds (in byte) at which point an event needs to be sent back to the PCRF (Figure 22).
No time based thresholds are supported.
AA supports grant-service-unit AVP using the following possible values (AVP):
As shown in Figure 22 (T=7), AA sends a CCR message with a USAGE_REPORT Event-Trigger AVP to the PCRF when the usage counter reaches the configured usage monitoring threshold for a given subscriber (and given application group). AA counters are reset (to zero) when the monitoring threshold is reached (and an event is sent back to PCRF). The counter(s) however does not stop counting newly arriving traffic. AA counters only include “admitted” packets. Any packets that got discarded by AA due to –say- policing actions- are not counted for usage-monitoring purposes.
The TDF-Application-Identifier AVP–within the ADC or PCC rule- refers to AA Charging group, AA application group or to an AA application.
TDF-Application-Identifiers (such as charging-groups) have to be manually entered at the PCRF to match AA charging groups configured on the 7750 SR.
If the TDF-Application-Identifiers refers to a name that is used for both a charging group and an application (or application group), AA monitors the charging group. In other words, AA charging group has higher precedence, than AA application group.
 
Supported AVPs
ADC Rule AVP
The ADC Rule install appears in the CCA and RAR messages from PCRF towards AA ISA.
 
ADC-Rule-Definition ::= < AVP Header: 1094 >
						{ ADC-Rule-Name }
						[ TDF-Application-Identifier ]
							; AA charging group /application group / application name
						[ Flow-Status ]*
						[ QoS-Information ]*
						[ Monitoring-Key ] 
						[ Redirect-Information ] ::= < AVP Header: 1085 >*
				 			[ Redirect-Support ] ; *
							[ Redirect-Address-Type ];		*
							[ Redirect-Server-Address ];*
					 	[ Mute-Notification ]*
 
                            *[ AVP ]
 
Note— The AVPs marked by an asterisk in the above example are not supported by AA ISA.
The TDF-application-Identifier field specifies a predefined AA charging group, application group or application name for which usage monitoring functionality is required (for a given subscriber).
The Monitoring-Key AVP (AVP code 1066), refers to a predefined (by PCRF) USAGE Monitoring AVP.
The value of the monitoring key is random. However, it should be noted that a monitoring key instance can only be used in a single ADC rule (for example, single app/app-grp/chg-grp). While the standards allow for a monitoring instance to be referenced by one or more ADC rules, AA ISA implementation restricts this to one ADC rule. Hence, if a monitoring key is referenced in one ADC rule, it cannot be referenced by another.
PCC Rule AVP
The PCC rule install appears in the CCA and RAR messages from PCRF towards AA-ISA.
 
	Charging-Rule-Definition ::= < AVP Header: 1003 > 
			 { Charging-Rule-Name } 
			 [ TDF-Application-Identifier ] 
			 [ Monitoring-Key] 
		        ………..   
			*[ AVP ] 
 
Charging-Rule-Name — The name of the charging rule that contains a rule related to usage monitoring of a TDF_application_id has to start with:”AA-UM:” e.g. AA-UM: Peer to peer traffic for APN x”
TDF-application-Identifier — This field specifies a predefined AA charging group, application group or application name for which usage monitoring functionality is required (for a given subscriber).
The Monitoring-Key AVP (AVP code 1066) refers to a predefined (by PCRF) USAGE Monitoring AVP.
The value of the monitoring key is random. However, it should be noted that a monitoring key instance can only be used in a single PCC rule (e.g. single app/app-grp/chg-grp). i.e. while the standards allow for a monitoring instance to be referenced by one or more PCC rules, AA ISA implementation restricts this to one PCC rule. Hence, if a monitoring key is referenced in one PCC rule, it cannot be referenced by another.
Usage-Monitoring-Information AVP
The Usage-Monitoring-Information AVP (AVP code 1067) is of type Grouped, and it contains the usage monitoring control information.
The Monitoring-Key AVP identifies the usage monitoring control instance.
Usage-Monitoring-Information::= < AVP Header: 1067 >
						[ Monitoring-Key ]
						[ Granted-Service-Unit ]
						[ Used-Service-Unit ]
						[ Usage-Monitoring-Level ]
						[ Usage-Monitoring-Report ]
						[ Usage-Monitoring-Support ]
						*[ AVP ]
 
Monitoring-Key-AVP
The Monitoring-Key AVP (AVP code 1066) is of type OctetString and is used for usage monitoring control purposes as an identifier to a usage monitoring control instance.
Granted-Service-Unit AVP
The Granted-Service-Unit AVP shall be used by the PCRF to provide the threshold level to the PCEF.
The CC-Total-Octets AVP shall be used for providing threshold level for the total volume, or the CC-Input-Octets and/or CC-Output-Octets AVPs shall be used for providing threshold level for the uplink volume and/or the downlink volume.
	Granted-Service-Unit ::= < AVP Header: 431 >
                                 [ Tariff-Time-Change ]*
                                 [ CC-Time ]*
                                 [ CC-Money ]*
                                 [ CC-Total-Octets ] 
                                 [ CC-Input-Octets ]
                                 [ CC-Output-Octets ]
                                 [ CC-Service-Specific-Units ]*
                                *[ AVP ]*
 
Note— The AVPs marked by an asterisk in the above example are not supported by AA ISA.
Used-Service-Unit AVP
This AVP is used by AA_ISA (the PCEF) to provide the measured usage to the PCRF. Reporting is done, as requested by the PCRF, in CC-Total-Octets, CC-Input-Octets an/or CC-Output-Octets AVPs of Used-Service-Unit AVP.
The Used-Service-Unit AVP contains the amount of used units measured from the point when the service became active or, if interim interrogations are used during the session, from the point when the previous measurement ended.
Used-Service-Unit ::= < AVP Header: 446 >
                            [ Tariff-Change-Usage ]*
                            [ CC-Time ]*
                            [ CC-Money ]*
                            [ CC-Total-Octets ]
                            [ CC-Input-Octets ]
                            [ CC-Output-Octets ]
                            [ CC-Service-Specific-Units ]*
                           *[ AVP ]*
Note— The AVPs marked by an asterisk in the above example are not supported by AA ISA
CC-Total-Octets AVP — The CC-Total-Octets AVP (AVP Code 421) is of type Unsigned64 and contains the total number of requested, granted, or used octets regardless of the direction (sent or received).
CC-Input-Octets AVP — The CC-Input-Octets AVP (AVP Code 412) is of type Unsigned64 and contains the number of requested, granted, or used octets that can be/have been received from the end user.
CC-Output-Octets AVP —
The CC-Output-Octets AVP (AVP Code 414) is of type Unsigned64 and contains the number of requested, granted, or used octets that can be/have been sent to the end user.
Usage-Monitoring-Level AVP
The Usage-Monitoring-Level AVP (AVP code 1068) is of type Enumerated and is used by the PCRF to indicate the level to which the usage monitoring instance applies.
If Usage-Monitoring-Level AVP is not provided, its absence shall indicate the value PCC_RULE_LEVEL (1).
The following values are defined (by the standard):
SESSION_LEVEL (0)Not applicable for AA-ISA
PCC_RULE_LEVEL (1) This value, if provided within an RAR or CCA command by the PCRF, indicates that the usage monitoring instance applies to one or more PCC rules. This is used in 3GPP Release 12 by the AA Usage Monitoring feature.
ADC_RULE_LEVEL (2)This value, if provided within an RAR or CCA command by the PCRF, indicates that the usage monitoring instance applies to one or more ADC rules. This is used in 3GPP Release 11 by the AA Usage Monitoring feature.
 
Usage-Monitoring-Report AVP
The Usage-Monitoring AVP (AVP code 1069) is of type Enumerated and is used by the PCRF to indicate that accumulated usage is to be reported by AA ISA (the PCEF) regardless of whether a usage threshold is reached for certain usage monitoring key (within a Usage-Monitoring-Information AVP) .
The following values are defined:
USAGE_MONITORING_REPORT_REQUIRED (0)
This value, if provided within an RAR or CCA command by the PCRF indicates that accumulated usage shall be reported by the PCEF.
Note— If no monitoring keys are set, AA ISA reports all enabled monitoring instances for the subscriber.
Usage-Monitoring-Support AVP
The Usage-Monitoring-Support AVP (AVP code 1070) is of type Enumerated and is used by the PCRF to indicate whether usage monitoring shall be disabled for certain Monitoring Key.
The following values are defined:
USAGE_MONITORING_DISABLED (0)
This value indicates that usage monitoring is disabled for a monitoring key.
Event-Trigger AVP (All Access Types)
The Event-Trigger AVP (AVP code 1006) is of type Enumerated. When sent from the PCRF to the PCEF (AA ISA) the Event-Trigger AVP indicates an event that can cause a re-request of ADC rules. When sent from the PCEF to the PCRF the Event-Trigger AVP indicates that the corresponding event has occurred at the gateway.
USAGE_REPORT (26)
This value is used in a CCA and RAR commands by the PCRF when requesting usage monitoring at the PCEF (AA ISA). The PCRF also provides in the CCA or RAR command the Usage-Monitoring-Information AVP(s) including the Monitoring-Key AVP and the Granted-Service-Unit AVP.
When used in a CCR command, this value indicates that AA ISA (the PCEF) generated the request to report the accumulated usage for one or more monitoring keys. AA_ISA provides the accumulated usage volume using the Usage-Monitoring-Information AVP(s) including the Monitoring-Key AVP and the Used-Service-Unit AVP.
Note— The usage_report event must be set by the PCRF, otherwise AA ISA will not report usage-monitoring when a threshold is crossed.
 
Usage-Monitoring Disabled
Once enabled, the PCRF may explicitly disable usage monitoring as a result of receiving a CCR from AA ISA which is not related to reporting usage, but related to other external triggers (such as subscriber profile update), or a PCRF internal trigger.
Note that when the PCRF disables usage monitoring, AA ISA reports the accumulated usage which has occurred while usage monitoring was enabled since the last report.
To disable usage monitoring for a monitoring key, the PCRF sends the Usage-Monitoring-Information AVP including only the applicable monitoring key within the Monitoring-Key AVP and the Usage-Monitoring-Support AVP set to USAGE_MONITORING_DISABLED.
When the PCRF disables usage monitoring in a RAR or CCA command, AA ISA sends a new CCR command with CC-Request Type AVP set to the value UPDATE_REQUEST and the Event-Trigger AVP set to USAGE_REPORT to report accumulated usage for the disabled usage monitoring key(s).
 
Termination Session
At AA ISA subscriber’s session termination, AA ISA sends the accumulated usage information for all monitoring keys for which usage monitoring is enabled in the CCR command with the CC-Request-Type AVP set to the value TERMINATION_REQUEST.
 
Cflowd AA Records
AA ISA allows cflowd records to be exported to an external cflowd collector. The cflowd collector parameters (such as IP address and port number) are configured per application assurance group. All cflowd records collected for both volume and per-flow performance (TCP and/or audio video) are exported to the configured collector(s). AA ISA supports cflowd Version 10/ IPFIX.
A cflowd record is only exported to the collector once the flow is closed/terminated.
 
TCP Application Performance
AA ISA allows an operator to collect per flow TCP performance statistics to be exported through cflowd v10/IPFIX.
The operator can decide to collect TCP performance for sampled flows within a TCP enabled group-partition-application/application-group. The flow sampling rate is configurable on per ISA-group level. For example a flow sample rate of 10 means that every 10th TCP flow is selected for TCP performance statistics collection. Anytime a flow is sampled (selected for TCP performance statistics collection) its mate flow in reverse direction is also selected. This allows collectors to correlate the results from the two flows and provide additional statistics (such as round-trip delay). Per-flow cflowd TCP performance records are exported to the configured collector(s) upon flow closure. The system can gather per flow TCP performance statistics for up to 307,200 concurrent flows.
Two configurable TCP flow sampling rates are available per AA ISA group. Applications and/or Application groups selected for TCP performance monitoring can use of one these two sampling rates. For example, important applications are assigned high sampling rates, while other TCP applications are subjected to TCP performance monitoring using a lower flow sampling rate.
Per-flow TCP performance can be enabled (or disabled), using one of two configurable sampling rates, per application/app-group per partition per AA ISA-group.
 
Volume Statistics
AA ISA allows an operator to collect per flow volume statistics to be exported for any group partition. The packet sampling rate is configurable per AA- ISA-group level. For example, a packet sample rate of 10 means that one of every 10 packets is selected for volume statistics collection. If a flow has at least a single packet sampled for cflowd volume statistics, its per-flow cflowd volume record is exported to the configured collector upon flow closure.
 
Comprehensive Statistics
AA ISA allows an operator to collect per flow comprehensive statistics to be exported through cflowd v10/IPFIX.
This record type facilitates two deployments scenarios:
1.
2.
The operator can decide to collect comprehensive statistics for sampled flows within an enabled group-partition-application/application-group. Parameters such as flow’s applications/application groups, host fields (applicable to HTTP traffic only), subscriber’s device type (when available), along with other general statistics such as flow’s bytes/packets counts are collected in a comprehensive cflowd record.
The flow sampling rate is configurable on per ISA group level. For example, a flow sample rate of 10 means that every 10th flow is selected for comprehensive statistics collection. Any time a flow is sampled (selected for comprehensive statistics collection) its mate flow in reverse direction is also selected. The two flows are exported in a single cflowd record.
Per-flow comprehensive can be enabled (or disabled), using one of two configurable sampling rates, per application/app-group per partition per AA ISA-group.
Applications and/or Application groups selected for comprehensive statistics gathering can use one these two sampling rates. For example, important applications are assigned high sampling rates, while other applications are subjected to a lower flow sampling rate.
 
 
Audio/Video (A/V) Application Performance
AA ISA integrates a third party audio/video performance measurement software stack to perform VoIP and video conferencing MOS-related measurements for RTP based A/V applications.
A passive monitoring technology estimates transmission quality of voice and video over packet technologies by considering the effects of packet loss, jitter and delay in addition to the impairments caused by encoding/decoding technology. A rich set of diagnostic data is provided that can be used to help network managers identify a variety of problems that could impact the quality of voice and video streams and/or service level agreements (SLAs).
This feature provides:
Reporting of RTCP XR (RFC 3611, RTP Control Protocol Extended Reports (RTCP XR)) VoIP metrics payloads.
Once a flow terminates, AA ISA formats the flow MOS parameters into a cflowd record and forwards the record to a configured IPFIX /10 cflowd collector (such as 5670 RAM). The collector then summarizes these records using route of interest information (source/destinations). In addition, RAM provides the user with statistics (min/max/avg values) for the different performance parameters that are summarized.
Two configurable RTP flow sampling rates are available per AA ISA group. Applications and/or Application groups selected for RTP performance monitoring can use one of these two sampling rates. For example, important applications (such as Cisco’s Telepresence video conferencing or operator’s VoIP service) are assigned high sampling rates, while other RTP applications are subjected to RTP performance monitoring using a lower flow sampling rate.
Like TCP performance, per flow audio/video performance can be enabled (or disabled), using one of two configurable sampling rates, per application/app-group per partition per AA ISA-group.
The operator can decide to collect RTP A/V performance for sampled RTP flows within an RTP A/ V enabled group-partition-application/application-group. The two available flow sampling rates is are configurable on per ISA group level. For example a flow sample rate of 10 means that every 10th RTP flow is selected for RTP performance statistics collection. Anytime a flow is sampled (selected for RTP A/V performance statistics collection) its mate flow reverse direction is also selected. When RTP dynamic payload types (RTP “PT”) are used, only flows that use SIP to signal RTP codec can be selected for RTP performance measurement. Flows that use static RTP payload types can be selected for performance measurement regardless of the signaling channel used to setup the call. The system can gather per flow RTP A/V performance statistics for up to 6000 voice calls.
 
Application QoS Policy (AQP)
An AQP is an ordered set of entries defining application-aware policy (actions) for IP flows diverted to a given AA ISA group. The IP flow match criteria are based on application identification (application or application group name) but are expected to use additional match criteria such as ASO characteristic value, IP header information or AA subscriber ID, for example.
When application service option characteristic values are used in application profiles, the characteristics values can be further used to subdivide an AQP into policy subsets applicable only to a subset of AA subscribers with a given value of an ASO characteristic in their profile. This allows to, for example, subdivide AQP into policies applicable to a specific service option (MOS iVideo Service), specific subscriber class (Broadband service tier, VPN, Customer X), or a combination of both.
A system without AQP defined will have statistics generated but will not impact the traffic that is flowing through the system. However, it is recommended that an AQP policy is configured with at least default bandwidth and flow policing entries to ensure a fair access to AA ISA bandwidth/flow resources for all AA subscribers serviced by a given AA ISA.
AQP rules consist of match and action criteria:
An AQP consists of a numbered and ordered set of entries each defining match criteria including AND, NOT and wildcard conditions followed by a set of actions.
AQP Entry <#> = <Match Criteria> AND <Match Criteria> <action> <action>
OR match conditions are supported in AQP through defining multiple entries. Multiple match criteria of a single AQP entry form an implicit AND function. An AQP can be defined for both recognized and unrecognized traffic. IP traffic flows that are in the process of being identified have a default policy applied (AQP entries that do not include application identification or IP header information). Flows that do not match any signatures are identified as unknown-tcp or unknown-udp and can have specific policies applied (as with any other protocol).
 
AQP Match Criteria
Match criteria consists of any combination of the following parameters:
AQP entries with match criteria that exclusively use any combination of ASO characteristic and values, direction of traffic, and AA subscriber define default policies. All other AQP entries define application aware policies. Both default and application aware policies. Until a flow's application is identified only default policies can be applied.
 
AQP Actions
An AQP action consists of the following action types. Multiple actions are supported for each rule entry (unlike ip-filters):
Any flow diverted to an ISA group is evaluated against all entries of an AQP defined for that group at flow creation (default policy entries), application identification completion (all entries), and an AA policy change (all flows against all entries as a background task). Any given flow can match multiple entries, in which case multiple actions will be selected based on the AQP entry’s order (lowest number entry, highest priority) up to a limit of:
AQP entries the IP flow matched, that would cause the above per-IP-flow limits to be exceeded are ignored (no actions from that rule are selected).
Examples of some policy entries may be:
 
Application Assurance Policers
The rate limit (policer) policy actions provide the flow control mechanisms that enable rate limiting by application and/or AA subscriber(s).
There are four types of policers:
Once a policer is referred to by an AQP action for one traffic direction, the same policer cannot be referred to in the other direction. This also implies that AQP rules with policer actions must specify a traffic direction other than the “both” direction.
Table 13 illustrates a policer's hardware rate steps for AA ISA:
Policers are unidirectional and are named with these attributes:
Policers allow temporary over subscription of rates to enable new sessions to be added to traffic that may already be running at peak rate. Existing flows are impacted with discards to allow TCP backoff of existing flows, while preventing full capacity from blocking new flows.
Policers can be based on an AQP rule configuration to allow per-app-group, per-AA-sub total, per AA profile policy per application, and per system per app-group enforcement.
Policers are applied with two levels of hierarchy (granularity):
Flows may be subject to multiple policers in each direction (from-subscriber-to-network or from -network-to-subscriber).
In Figure 23, Application Assurance policers are applied after ingress SAP policers. Configuration of the SAP ingress policers can be set to disable ingress policing or to set PIR/CIR values such that AA ISA ingress PIR/CIR will be invoked first. This enables application aware discard decisions, ingress policing at SAP ingress is application blind. However, this is a design/implementation guideline that is not enforced by the node.
Figure 23: From-AA-Sub Application-Aware Bandwidth Policing
In the to-aa-sub direction (Figure 24), traffic hits the AA ISA policers before the SAP egress queuing and scheduling. This allows application aware flow, AA subscriber and node traffic policies to be implemented before the Internet traffic is mixed with the other services at node egress. Note that AA ISA policers may remark out-of-profile traffic which allows preferential discard at an IOM egress congestion point only upon congestion.
Figure 24: To-AA-Sub Application-Aware Bandwidth Policing
Time of Day Policing Adjustments
Time-of-day changes to Application Assurance policing rates are supported through the use of time-of-day override in the policers, up to eight overrides. Up to eight overrides can be configured per policers each using either a daily or weekly time-range. The adjusted policing limits are applied immediately to any pre-existing or new flows.
 
Application Assurance HTTP Redirect
 
AA HTTP Policy Redirect
With AA ISA HTTP policy based redirect feature, when HTTP flows are blocked, the user is directed to a web portal that displays relevant messages to indicate why the HTTP traffic is blocked, such as.: time of day policy to block youtub.com, top-up request, etc.
Without HTTP policy redirect, when HTTP flows are blocked, the subscriber application retries and before it times-out. The subscriber in most cases is unaware of the cause of this timeout. Frustration builds up and leads to increase calls to IT / operators help desk. That in turn, results in an increase in operator’s OPEX. Hence, with HTTP policy redirect, the operator realizes savings related to decrease in network loading associated with retries as well as IT HELP desk OPEX savings. Above all, the operator retains happier and less frustrated customers / clients.
AA ISA provides full customer control to configure an AQP action that redirects traffic that matches the AQP match criteria. Hence, the HTTP redirect service can applied at any level (application, application group, specific subscribers, specific source IP addresses) or any other AQP match criteria.
To illustrate, say the operator configures www.poker.com as a “gambling” app-group.
The operator configures AA_ISA to drop and redirect all HTTP traffic classified under “gambling” app-group to www.redirect.isp.com. When a client/subscriber initiates an HTTP GET for www.poker.com. Traffic to poker.com is dropped at the AA ISA. AA ISA issues a redirect to the client. [in the redirect, information about the user are encoded in the PATH message, such as www.poker.com, sub-ID, sub-type, reason for redirect (=AQP drop action) AA application name]. Client, unaware of the drop, responds to the redirect.
Redirect landing page explains to the user why the page at www.poker.com is not accessible. See Figure 25.
 
Figure 25: HTTP Redirect Due To URL Block
AA ISA allows the operator to configure HTTP redirect policies. An HTTP redirect policy contains, most importantly, the HTTP host to be used for the redirect. Within the AQP actions, such polices can be linked (like policers). Redirect will take place only if the AQP configured matching criteria is met and the HTTP flow is dropped (due to other AQP actions, such as “drop”, flow-count/rate policers). Obviously, redirect only applies to HTTP traffic. Non-HTTP flows (even if the conditions above are met) are not redirected (no redirect for RTSP traffic).
The HTTP redirect policy includes an option for TCP-client-reset. This is used to improve the end-user experience when TCP traffic that cannot be HTTP redirected is blocked. Resetting the client TCP session avoids the client waiting for tcp session timeout. The ISA will initiate a TCP reset towards the client if the AA policy results in an http-redirect with packet drop but the HTTP redirect cannot be delivered. Scenarios for this include blocked HTTPs (TLS) sessions, blocking of non-HTTP traffic, and blocking of existing flows after a policy re-evaluate of an existing subscriber. A mid-session policy change to redirect & block traffic for a sub will cause a TCP reset of existing non-http tcp sessions when the next packet for those sessions arrives. For example, when the packet is dropped.
 
AA HTTP 404 Redirect
HTTP status code-based redirect feature provides error resolution and search technology that enhances the Internet experience for end customers while generating new revenue stream for the ISP.
Alcatel-Lucent’s AA ISA HTTP status code-based redirect feature, along with its partners Barefruit or Xercole, replaces unhelpful DNS and HTTP error messages with relevant alternatives, giving the user a search solution rather than a no direction. Customers benefit from an improved surfing experience as they are served relevant results that can help them find what they were looking for. The ISP, on the other hand, receives a share of the search revenue.
Every time an end-user clicks on a broken link (Page Not Found), an error page displays. Frequently, a search provider produces results, through a browser plug-in, for that user. This generates revenue for the search provider if the user clicks on a paid link.
With AA ISA HTTP status code-based redirect feature, the user sees high-quality, relevant search results. In addition, instead of the search provider receiving all of the revenue, the ISP is paid every time a user clicks on a sponsored link.
AA ISA provides full customer control to configure an AQP action that redirects traffic that matches the AQP match criteria (Figure 26). Hence, the HTTP redirect service can applied at any level (application, application group, specific subscribers, specific source IP addresses) or any other AQP match criteria.
 
Figure 26: AQP Actions
HTTP headers are intercepted by AA ISA on the return path from the requested web site. If the HTTP status code is a non custom 404, then the response is replaced with JavaScript that redirects the client to the Contextual Analysis Servers (Barefruit server). This redirect contains details of the original URI that gave rise to the 404 error.
The operator can configure AA ISA HTTP 404 redirect to use either Barefruit or Xerocole partner contextual analysis servers. A redirect policy can be defined once at the AA group level (similar to policers), and then referenced as many times as needed in AQP actions. The system allows a maximum of one HTTP 404 redirect policy per AA group.
 
 
ICAP - Large Scale Category based URL Filtering
Large scale URL filtering is a common content filtering requirement from broadband, mobile, and business vpn operators that allows them to solve various use cases such as:
Application Assurance provides both a cost efficient and best of breed content filtering solution to solve these use cases by enabling offline dedicated web filtering servers though the Internet Content Adaptation Protocol (ICAP). Using application assurance the operator does not need to deploy costly inline filtering appliances or a limited client software solution requiring maintenance and updates for a growing number of computing devices and operating systems (for example, laptop, smartphone, smartTV, tablets).
A high level packet flow diagram of the solution is shown in Figure 27. The AA ISA is the ICAP client and performs inline L7 packet processing functions while the ICAP application server is used for URL filtering offline, thus the application server does not need to be inserted in the data flow:
Figure 27: ICAP High Level Flow Diagram
The 7750 uses the Application Assurance capabilities to extract the URL from the subscriber's HTTP/HTTPs request and send an ICAP rating request to the ICAP server along with the subscriber-id information. The ICAP server can then return an accept or redirect response based on various criteria such as subscriber profile, URL categories, whitelist, blacklist, time of the day.
The ICAP response received by the 7750 ICAP client is used to either accept, redirect, or block the flow.
Note:
 
Local URL-List Filtering
Service providers may need to apply network wide URL filtering policies to prevent subscribers from accessing illegal content in the following context:
Operators can use AA to comply with these regulatory requirements typically driven by government or court order to control the access to specific URLs hosting illegal content. In the context of child protection the operator may be required or incited to provide this filtering.
Local url-list filtering is applied network-wide to all subscribers. This solution provides a cost-efficient method by storing the list of URLs to be filtered on the system compact flash. Therefore, using the AA-ISA ICAP functionality along with an external server is not necessary.
The ISA-AA url-filter local url-list filtering policy provides URL control capability using a list of URLs contained in a file stored on one of the system’s compact flash cards. The 7x50 uses the Application Assurance capabilities to extract the URL from the subscriber's HTTP request and compares it to the list of URLs contained in this local file. If a match is found the subscriber flow is redirected to a preconfigured web server landing page typically describing why the access to this resource was denied.
The system supports both unencrypted and OpenSSL 3DES encrypted file formats to protect the content of the list.
 
URL-List Update
The system supports a flexible mechanism to upgrade a local url-list automatically using either CRON or the 5620 SAM to comply with the regulatory requirements in terms of list upgrade frequency.
 
HTTP/HTTPS
Each HTTP request within a TCP flow is filtered by the AA ISA. For HTTPS traffic, the system extracts the domain name information contained in the SSL/TLS server name.
 
HTTP Header Enrichment
AA ISA supports modifications of the HTTP header for traffic going to specific user configured sites (URLs/IPs); in order to add Network based information, such as subscriber ID to the HTTP header. These sites use this information to authenticate the user and/or present the user with user-specific information and services.
Figure 28: HTTP Enrichment
In Figure 28, the operator configures the AA ISA to insert the subscriber ID into the HTTP header for all the HTTP traffic destined to the operator portal (designated by server IP and/or HTTP host name). Traffic going to other destinations, such as yahoo.com, does not get enriched. To support this, AA introduces a new AQP action called HTTP_enrich that allows the operator to enrich traffic that satisfies the AQP-matching conditions.
The operator can configure multiple HTTP enrichment policies that get applied to traffic going to different destinations. For example, HTTP traffic destined to “xyz.com”, gets User’s IP inserted into the header, while traffic going to “billing.xyz.com” gets enriched with subscriber ID and user’s ip address.
AA ISA supports insertion of one or more of the following parameters/fields into the HTTP header: User’s IP@, subscriber ID and configurable static string fields. The text preceding the inserted field is fully configurable. For example, sub-ID = 1243534666 or x-sub-ID = 1243534666.
AA supports enrichment of all HTTP methods, such as GET, POST, etc. AA enriches HTTP traffic without having to terminate the TCP session (for example, does not act as a proxy). In this way, AA enrichment function does not intervene with other TCP acceleration functions/appliances that could be deployed by the operator.
For configured enriched fields, operators can optionally configure AA ISA to perform MD5 hashing and/or anti-spoofing. Anti-spoofing, once enabled, ensures that only the fields enriched by AA are valid. Anti-spoofing is applicable only to subscriber-id field.
AA statistics reflect post header enrichment packet sizes.
AA HTTP enrichment functionality has the following caveats:
 
HTTP In Browser Notification
The AA ISA HTTP notification policy-based feature enables the operator to send in browser notification messages to their subscribers. The notification format can either be an overlay, a web banner, or a splash page, which makes HTTP notification less disruptive than standard HTTP redirection for the subscriber; both the original content and the notification message can be displayed at the same time while browsing.
There is a wide range of notification use cases in Broadband and Wifi networks to use this functionality such as fair use policy threshold warning, marketing and monetization messages, late bill payment notice, copyright infringement notice and operational outages.
The solution is based on two primary components, the AA ISA responsible for specific packet manipulation and a messaging server. The messaging server controls the message format and its content while the AA ISA modifies selected HTTP flows so that the subscriber transparently downloads a script located on the messaging server. This script is then executed by the web browser to display the notification message. The AA ISA only select specific HTTP request flows meeting the criteria of a web browser session compatible with in browser notification messages.
A high level view of the typical network elements involved in HTTP in browser notifications are describe in Figure 29:
Figure 29: HTTP in Browser Notification - High Level
The AA ISA provides full subscriber control to configure an AQP action enabling HTTP notification policy based on specific app-profiles attributes (ASO characteristics), application, or application group. The operator can dynamically modify the subscriber policy from the policy manager to enable/disable HTTP notification during the lifetime of the subscriber.
Notification Interval
The notification can be configured to be displayed either once during the lifetime of the subscriber or at configured minimum interval (in minutes). When an interval in minutes is selected, the subscriber will continue to receive notifications messages while browsing.
 
Success Verification
The system identifies successful and failed notifications. In the event the notification is not successful, the system will automatically retry notifying the subscriber at the next flow that meets the criteria of a web browser session.
 
HTTP Notification Example
To illustrate how HTTP notification works, the steps below describe a typical usage quota notification example with a subscriber reaching its monthly quota:
 
HTTP Notification Customization through Radius VSA
The operator can customize the notification message per subscriber through the use a new radius VSA returned either at the subscriber creation time or within a CoA. This new VSA is a string appended automatically at the end of the script-url request made by the subscriber towards the messaging server, and it is not interpreted by the AA ISA. When received by the messaging server, it can be used to return specific content to the subscriber.
As an example, the HTTP Notification can be customized using the RADIUS VSA to display location based information, and the messaging server can use this data to display content based on the desired location:
 
AA Mirroring to Offline Processing
Some deployments require specialized offline processing not provided by the 7750 SR/7450 ESS AA. An example of such processing is Lawful Intercept (LI) traffic content processing or using an offline appliance. To enable such capabilities in a highly-scalable fashion that minimizes traffic seen by the offline device, the 7750 SR/7450 ESS AA allows operators to use an AQP action to mirror traffic conditioned by both application and AA subscriber context, so detailed content processing can be performed only for AA subscribers and applications of choice. The content processing equipment generally needs to see the entire traffic stream for a given application, therefore, the entire application’s traffic is mirrored including packets that have not yet been identified. Optionally, only traffic positively identified can be mirrored as well.
Although similar functionality could be achieved by mirroring service or a SAP, the total bandwidth and added complexity that an offline appliance would need to handle extra bandwidth makes such a solution more costly and harder to scale.
Since the application mirroring is an additional function independent from all other AA functions provided on the ESS/SR, the in-line deployed AA ISA modules not only reduce the amount of traffic the offline device must see, but also allows in-line policy enforcement actions with application awareness once the offline devices triggers such a policy change. For example, AA subscriber traffic for an application or applications being mirrored can be quarantined while the remaining traffic remains unaffected.
Figure 30 depicts an example of application mirroring to a specialized offline appliance for further processing.
1.
2.
Match:
Action:
3.
Figure 30: AA Mirroring for Offline Specialized Appliance Processing
 
Application Assurance Firewall
The Application Assurance firewall (FW) feature extends AA ISA application level analysis to provide an in-line integrated stateful service that protects subscribers from malicious security attacks. Using the AA stateful packet filtering feature combined with AA Layer 7 classifications and control empowers operators with advanced, next generation firewall functionalities that integrated are within. AA stateful firewall and application firewall run on the AA ISA. In a stateful inspection, the AA FW does not only inspect packets at Layers 3 — 7, but also monitors and keeps track of the connection's state. If the operator configures a “deny” action within a session filter then the matching packets (matching both the AQP and associated session filter match conditions) are dropped and no flow session state/context is created.
AA FW can be used in all deployments of AA ISA:
AA FW enabled solution provides:
Security Gateway — SeGW Firewall Protection S1-MME (/SCTP), S1-U (GTP) and OAM traffic protection.
 
Stateful /Stateless Packet Filtering and Inspection with Application-Level Gateway (ALG) Support
Stateful flow processing and inspection utilizes IP Layers 3/4 header information to build a state of the flow within AA ISA. Layer 7 inspection is used in order to provide ALG support. Stateful flow/session processing takes note of the originator of the session and hence can allow traffic to be initiated from the subscriber while denying, if configured, traffic originating from the network. Packets received from the network are inspected against the session filter and only those that are part of a subscriber-initiated-session are allowed.
Figure 31: Stateful Firewall
Stateless packet filtering does not take note of session initiator and hence, it discards or allows packets independent of the any previous packets. Stateless packet filtering can be performed in the system using IOM ACLs.
AA FW inspection of packets at Layer 7 offers Application Layer Gateway functionality for the following applications:
Figure 32: Application Layer Gateway Support
These applications make use of control channels/flows that spun other flows. AA FW inspects the payload of these control flows so that it can open a pinhole for the associated required flows.
 
Denial Of Service (DOS) Protection
DoS attacks work by consuming network and system resources, making them unavailable for legitimate network applications. Network flooding attacks, malformed packets, and port scans are examples of such DoS attacks.
The aim of AA FW DOS protection is to protect subscribers and prevent any abuse of network resources.
Using AA FW stateful session filters, operators can protect their subscribers from any port scan scheme by configuring the session filters to disallow any traffic that is initiated from the network.
Furthermore, AA ISA provides configurable flow policers. These policers, once configured prevent all sort of flooding attacks (for example, ICMP PING flooding, UDP flooding, SYN Flood Attack). These policers provide protection at multiple levels; per system per application/application groups and per subscriber per applications/applications groups. AA ISA flow policers has two flavors; flow setup rate policers and flow count policers. Flow setup rate policers limit the number of new flows, while flow count policers limit the total number of active flows.
To protect hosts and network resources, AA_FW validates/checks the following parameters, if any fails, it declares the packet to be invalid:
BCAST 255.255.255.255, 0.x.x.x,127.x.x.x
multicast source address (FFxx:xxxx:……:xxxx)
invalid destination address ( =::)
(only dest port is checked for UDP)
The above complements ESM enhanced security features, such as IP (or mac) anti-spoofing protection (for example, protecting against “LAND attack”) and network protocols DoS protections. The combination provides a world class carrier grade FW function.
 
Policy Partitioned AA FW
AA FW can provide up to 128 virtual/partitioned FWs, each with its own FW policies. This is achieved through the use of AA-Partitions. Different VPNs can have different FW policies/rules.
 
Configuring AA FW
AA ISA AQPs are enhanced with few new AQP actions that provide session filtering functionality. As is the case of AQPs, these have partition level scope. This allows different FW polices to be implemented by utilizing AA partitions concepts within the same AA ISA group. Hence, multiple virtual AA FW instances can be realized. There is no need for multiple physical instances of FWs to implement different FW policies.
The AA FW stateful session filter consists of multiple entries (similar to ACLs) with a match and action per entry. Actions are deny or permit. A deny action results in packets discarded without creating a session /flow context. match conditions include IP 5 tuples info. An overall default action is also configurable, in case of a no match to any session filter entry.
Note: AQPs with session filter actions, need to have, as a matching condition, traffic direction, ASOs and/or subscriber name. It cannot have any references to applications and/or application groups.
AA FW offers, in addition to session-filter actions, a variety of AQP actions to that are aimed to allow or deny: errorred/malformed packets, fragmented packets and/or first packet out-of-order fragments and overload traffic.
Statistics are incremented when packets are dropped by a session filter. These are accounted against:
A session-filter hit-count counter is maintained by AA ISA and can be viewed via CLI. There is no current support for export of session-filter entry hit counters via XML to SAM.
 
AA FW Logging
AA ISA can be configured, per AQP or per session filter, to log events related to how the packets are processed (allowed/denied). AA ISA FW logs contain the following information:
Note that for AQPs, only drop events are captured in the log. The logs do not capture drops due to flow policers.
The operator can configure up to one log per partition, with a maximum configurable log size of 100,000 events per log.
 
SeGW Firewall Protection
Application Assurance SeGW FW deployed in 3G/4G/Femto access networks provides the operator with back-end core network security protection. AA Firewall provides protection for:
1.
2.
3.
SAPs on the private side of Tunnel ISA are diverted to AA for firewall protection. If per eNB/ Femto Access Point (FAP) control is desired, then AA auto-configures /instantiate subscribers based on the “seen-ip” transit-AA subscriber model (no RADIUS interaction is required). This auto-creates a subscriber per eNB/FAP. Alternatively, AA applies firewall rules to the diverted SAP (for all eNBs/FAPs) at the aggregate level (for all eNBs/FAPs).
One AA ISA is supported per Tunnel-ISA group. Therefore, all private side SAPs that are diverted to AA for Firewalling service go to the same AA ISA module with no need to load balance the traffic into different AA ISAs. If the capacity of one AA ISA is not sufficient, then the IPSec tunnel group is split into two (or more) groups. Each group is served by an AA ISA.
OAM traffic Firewall
For details on OAM Traffic protection, refer to the Stateful /Stateless Packet Filtering and Inspection with Application-Level Gateway (ALG) Support and Denial Of Service (DOS) Protection sections.
S1- MME (SCTP) Firewall
Network flooding attacks, malformed packets and port scans are examples of DoS attacks that can be carried out using a compromised eNB/FAP. AA FW provides inspection of SCTP (the protocol used to communicate to MME). Such inspection includes checking for SCTP protocol Id, source/destination ports, PPID, SCTP chunk checking and malformed SCTP packet (such as checksum validation).
SCTP chunk checking includes checking for:
For S1-MME traffic, the operator can configure various AA actions:
Drop fragmented packets or drop out of order fragmented packets using the fragment-drop {all | out-of-order} AQP action command.
The actions above can be applied per eNB/FAP IP address and/or per MME (to control aggregate traffic per MME).
SCTP PPID Filtering
AA allows the operator to configure PPID filters that contain a list of PPIDs to allow or deny.
configure>application-assurance>group <aa-group-id>[:<partition>] 
		sctp-filter <sctp-filter-name> [create]
                description <description-string>
                no description
                event-log <event-log-name>
                no event-log
                ppid-range min <min-ppid> max <max-ppid>   //[0..4294967295]
                no ppid-range
                ppid
                    default-action {permit | deny}
                    entry <entry-id> value <ppid-value> action {permit|deny}
                             //<entry-id>				: [1..255]
 							<ppid-value> 		: [0..4294967295]D | [256 chars max]
 							<permit|deny>		: permit|deny
                    no value <entry-id>            
		no sctp-filter <sctp-filter-name>
The filter can then be used within an AQP action.
AA identifies DATA chunks within SCTP payloads (for example, as first, nth or last chunk) and filters according to the configure PPID filter. If any chunk PPID matches a PPID on the configured blocked PPID list, the whole SCTP packet is dropped.
SCTP packets without DATA chunks are not impacted or accounted for by an SCTP Filter.
For IP fragmentation, and in the case where the operator did not configure AA ISA to drop “all fragmented traffic”, only the first IP fragment is inspected and subject to the PPID filtering. Any action applied to the first fragment is also applied to the remaining fragments. Out-of-order fragments appearing before the first fragment receive the default action (for example, drop action of “out-of-order-Frag”).
S1-U GTP Traffic Protection
7750 SeGW with AA FW provides protection of SGW/SGSN infrastructure against an attack from a compromised eNB/FAP. AA FW supports:
1.
For GTP-v1 traffic carried over UDP port number port 2152, AA performs various packet sanity checks, such as:
For S1-U interface, only GTP-v1 is supported. No support for GTP-v2 (as there is no signaling on S1-U interface).
Details of the various GTP sanity checks that are performed for different GTP-U message types are shown in Table 14:
PayloadSize is assumed to be the size of the remainder of the packet, unless the packet is fragmented
No checking of the encapsulated data
No checks
Valid types = Service Class Indicator & • PDCP PDU Number
Extension size= 4*# of extensions
OptionalSize = 8 
IF E= 0, ExtSize = 0
OptionalSize + ExtensionSize + PayloadSize
 
<>0
0
1
1
G-PDU (Encapsulated Data Delivery) – Message Type 255
No payload after the IEs
Only private extensions are allowed.
No external header allowed.
No option headers allowed.
IE Size
0
0
1
 
Echo Request – Message Type 1
No payload after the IEs
Recovery ID is present
Private extensions allowed.
No external header allowed.
No option headers allowed.
IE Size
0
0
1
1
Echo Response – Message Type 2
No payload after the IEs
Extension Header Type List IE is present
Private extensions allowed
No checking on the extension header value
No external header allowed.
No option headers allowed.
IE Size
0
0
0
1
Supported Extension Headers Notification - Message Type 31
No payload after the IEs
TEID IE & GTP-U Peer Address IE are present
IE type and length are verified
Private extensions allowed
Only the UDP Port Extension Header is valid
OptionSize = 8
OptionalSize + ExtensionSize +IESize
<>0
0
1
1
Error Indication – Message Type 26
No payload after the IEs
Only Private extensions are allowed
no valid external header allowed.
OptionalSize = 8
IF E = 0, ExtSize = 0
IE Size
<>0
0
1
1
End Marker – Message Type 254
 
 
To enable GTP packet sanity checks, the operator must configure:
	configure>application-assurance>group <aa-group-id>[:<partition>] 
 
Note that once the gtp command is issued for a partition, AA treats traffic with UDP destination port number 2152 as GTP. It applies the different GTP level firewall functions as configured by the operator. However, it does not look beyond the GTP header for further inner L3-L7 packet classifications and actions. For example, Ipfix record for GTP traffic contains the 5 tuples of the GTP-u tunnel (eNB, SGW IPs and port numbers, etc., no TIED).
2.
AA allows the operator to configure a GTP filter to indicate which GTP message types are to be allowed/denied as well as the maximum allowed GTP message length:
		configure>application-assurance>group <aa-group-id>[:<partition>]>gtp
                gtp-filter <gtp-filter-name> [create]
                    max-payload-length <bytes>           //[0..65535]
                    message-type
                        default-action {permit | deny}
                        entry <entry-id> value <gtp-message-value> action {permit|deny}
There are approximately 67 valid message names to enter in the above GTP filter:
echo-request, echo-response, error-indication, g-pdu, end-marker and supported-extension-headers-notification.
Once a GTP filter is configured, it can then be included as an AQP action:
		configure>application-assurance>group <aa-group-id>[:<partition>]> policy
                app-qos-policy
                    entry <entry-id> [create]
                        action
                            gtp-filter <gtp-filter-name>
Note: Extensive GTP header sanity checks (included in Table 14) that are based on different GTP message types are only performed when these GTP messages are permitted by the GTP filter. If no GTP filter is configured, then no extensive GTP-U header checks are performed. In other words, if the operator wants to allow all GTP-U packets and perform all GTP header sanity checks, then the operator needs to configure a GTP filter with default action of permit and no values, such as:
           configure>application-assurance>group 1:100> gtp
                gtp-filter “allow-all” create
                     message-type
                        default-action permit
3.
AA can be configured to drop all fragments and/or out of order fragments, using AQP action: fragment-drop {all | out-of-order}
In the case that the IP fragment-drop command is not set, then the following conditions apply to the way AA inspects GTP traffic:
 
Service Monitoring and Debugging
Operators can use AA-specific tools in addition to system tools that allow them to monitor, adjust, debug AA services. The following are examples of some of the available functions:
1.
2.
3.
4.
5.
6.
7.
 
CPU Utilization
The ISA show status command displays per ISA CPU utilization by main tasks, to provide insight into what aspects of load may be loading the ISA. These are split into 2 main areas:
 
CLI Batch: Begin, Commit and Abort Commands
The Application Assurance uses CLI batch capability in policy definition. To start editing a policy, a begin command must be executed. To finish editing either abort (discard all changes) or commit (accept all changes) needs to be executed. CLI batch state is preserved on an HA activity switch.
To enter the mode to create or edit policies, the begin keyword must be entered at the prompt. Other editing commands include:
The commit command saves changes made to policies during a session. The newly committed policy takes affect immediately for all new flows. Existing flows will transition onto the new policy shortly after the commit.
The abort command discards changes that have been made to policies during a session.
To allow flexible order for policy editing, the policy>commit function cross references policy components to verify, among others: