Application-Aware Routing Policy Configuration Example
This article shows a straightforward example of configuring application-aware routing policy. This example defines a policy that applies to ICMP traffic, directing it to links with latency of 50 milliseconds or less when such links are available.
Configuration Steps
You configure application-aware routing policy on a vSmart controller. The configuration consists of the following high-level components:
- Definition of the application (or applications)
- Definition of SLA parameters
- Definition of sites, prefixes, and VPNs
- Application-aware routing policy itself
- Specification of overlay network sites to which the policy is applied
The order in which you configure these components is immaterial from the point of view of the CLI. However, from an architectural design point of view, a logical order is to first define all the parameters that are invoked in the application-aware routing policy itself or that are used to apply the policy to various sites in the overlay network. Then, you specify the application-aware routing policy itself and the network sites to which you want to apply the policy.
Here is the procedure for configuring this application-aware routing policy on vm9, which is a vSmart controller:
- Define the SLA parameters to apply to matching ICMP traffic. In our example, we want to direct ICMP traffic to links that have a latency of 50 milliseconds or less:
vm9# config
vm9(config)# policy sla-class test_sla_class latency 50
vm9(config-sla-class-test_sla_class)# - Define the site and VPN lists to which we want to apply the application-aware routing policy:
vm9(config-sla-class-test_sla_class)# exit
vm9(config-sla-class-test_sla_class)# lists vpn-list vpn_1_list vpn 1
vm9(config-vpn-list-vpn_1_list)# exit
vm9(config-lists)# site-list site_500 site-id 500
vm9(config-site-list-site_500)# - Configure the application-aware routing policy. Note that in this example, we apply the policy to the application in two different ways: In sequences 1, 2, and 3, we specify the protocol number (protocol 1 is ICMP, protocol 6 is TCP, and protocol 17 is UDP).
vm9(config-site-list-site_500)# exit
vm9(config-lists)# exit
vm9(config-policy)# app-route-policy test_app_route_policy
vm9(config-app-route-policy-test_app_route_policy)# vpn-list vpn_1_list
vm9(config-vpn-list-vpn_1_list)# sequence 1 match protocol 6
vm9(config-match)# exit
vm9(config-sequence-1)# action sla-class test_sla_class strict
vm9(config-sequence-1)# exit
vm9(config-vpn-list-vpn_1_list)# sequence 2 match protocol 17
vm9(config-match)# exit
vm9(config-sequence-2)# action sla-class test_sla_class
vm9(config-sequence-2)# exit
vm9(config-vpn-list-vpn_1_list)# sequence 3 match protocol 1
vm9(config-match)# exit
vm9(config-sequence-3)# action sla-class test_sla_class strict
vm9(config-sequence-3)# exit
vm9(config-sequence-4)# -
Apply the policy to the desired sites in the Viptela overlay network:
vm9(config-sequence-4)# top
vm9(config)# apply-policy site-list site_500 app-route-policy test_app_route_policy -
Display the configuration changes:
vm9(config-site-list-site_500)# top
vm9(config)# show config -
Validate that the configuration contains no errors:
vm9(config)# validate
Validation complete -
Activate the configuration:
vm9(config)# commit
Commit complete. -
Exit from configuration mode:
vm9(config)# exit
vm9#
Full Example Configuration
Putting all the pieces of the configuration together gives this configuration:
vm9# show running-config policy policy sla-class test_sla_class latency 50 ! app-route-policy test_app_route_policy vpn-list vpn_1_list sequence 1 match protocol 6 ! action sla-class test_sla_class strict ! sequence 2 match protocol 17 ! action sla-class test_sla_class ! sequence 3 match protocol 1 ! action sla-class test_sla_class strict ! ! ! lists vpn-list vpn_1_list vpn 1 ! site-list site_500 site-id 500 ! site-list site_600 site-id 600 ! ! ! apply-policy site-list site_500 app-route-policy test_app_route_policy ! !
Additional Information
Application-Aware Routing
Configuring Application-Aware Routing