Native profiling
Native profiling is a network security feature that
-
profiles devices based on HTTP and DHCP to identify end devices on the network
-
configures device-based policies and enforces these policies per user or per device policy on the network, and
-
allows profiling of mobile devices and basic onboarding of the profiled devices to a specific VLAN.
Native profiling characteristics
Policies assign ACL and QoS or configure session timeouts.
The policies are defined based on the following attributes:
-
User group or user role
-
Device type such as Windows clients, smartphones, tablets, and so on
-
Service Set Identifier (SSID)
-
Location, based on the access point group that the end point is connected to
-
Time of the day
-
Extensible Authentication Protocol (EAP) type, to check what EAP method that the client is getting connected to
When a wireless client joins an access point, certain QoS policies get enforced on the access point. One such feature is the native profiling for both upstream and downstream traffic at AP. The native profiling feature when clubbed with AAA override supports specific set of policies based on the time of day and day of week. The AAA override then applies these policies coming from a RADIUS server to the access point.
Let's consider a use case of time of the day in conjunction with user role. Usually, the user role is used as an extra matching criteria along with the time of day. You can club the time of day usage with any matching criteria to get the desired result. The matching will be performed when the client joins the controller .
You can configure policies as two separate components:
-
Defining policy attributes as service templates that are specific to clients joining the network and applying policy match criteria
-
Applying match criteria to the policy.
![]() Note |
Before proceeding with the native profile configuration, ensure that HTTP Profiling and DHCP Profiling are enabled. |
![]() Note |
Native profiling is not supported with FlexConnect Local Authentication and Local Switching. Hence, do not configure no central switching, no central authentication, and subscriber-policy-name name commands together. ISSU will fail for this type of configuration. Ensure that you remove the configuration before attempting ISSU. |
To configure Native Profiling, use one of the following procedures:
-
Create a service template
-
Create a class map

Note
You can apply a service template using either a class map or parameter map.
-
Create a parameter-map and associate the service template to parameter-map
-
Create a policy map
-
If class-map has to be used: Associate the class-map to the policy-map and associate the service-template to the class-map.
-
If parameter-map has to be used: Associate the parameter-map to the policy-map
-
-
Associate the policy-map to the policy profile.
-
Create a class map (GUI)
Procedure
|
Step 1 |
Click . |
|
Step 2 |
In the QoS – Policy area, click Add to create a new QoS Policy or click the one you want to edit. |
|
Step 3 |
Add Add Class Map and enter the details. |
|
Step 4 |
Click Save. |
|
Step 5 |
Click Update and Apply to Device. |
Create a class map (CLI)
![]() Note |
Configuration of class maps via CLI offer more options and can be more granular than GUI. |
Before you begin
Follow these steps to create a class map using CLI commands:
Procedure
|
Step 1 |
Enter global configuration mode. Example:
|
||
|
Step 2 |
Specify the class map type and name. Example:
|
||
|
Step 3 |
Specify the class map attribute filter criteria. Example:
|
||
|
Step 4 |
Specify the class map type and name. Example:
|
||
|
Step 5 |
Specify the class map attribute filter criteria. Example:
|
||
|
Step 6 |
Specify the class map type and name. Example:
|
||
|
Step 7 |
Specify the class map attribute filter criteria. Example:
|
||
|
Step 8 |
Specify the class map type and name. Example:
|
||
|
Step 9 |
Specify the class map attribute filter criteria. Example:
|
||
|
Step 10 |
Specify the class map type and name. Example:
|
||
|
Step 11 |
Specify the class map attribute filter criteria. Example:
|
||
|
Step 12 |
Specify the class map type and name. Example:
|
||
|
Step 13 |
Specify a match to the time of day. Example:
Here, join time is considered for matching. For example, if the match filter is set from 11:00 am to 2:00 pm, a device joining at 10:59 am is not considered, even if it acquires credentials after 11:00 am. Here, start-time and end-time specifies the 24-hour format. Use the show class-map type control subscriber name name command to verify the configuration.
|
||
|
Step 14 |
Match name using the device type. Example:
Type a question mark (?) after the device type and select the device from the list.
|
Create a service template (GUI)
Procedure
|
Step 1 |
Choose . |
|
Step 2 |
On the Local Policy page, Service Template tab, click ADD. |
|
Step 3 |
In the Create Service Template window, enter the following parameters:
|
|
Step 4 |
Click Save & Apply to Device. |
Create a service template (CLI)
Before you begin
Follow these steps to create a service template using CLI commands:
Procedure
|
Step 1 |
Enter global configuration mode. Example:
|
|
Step 2 |
Enter service template configuration mode. Example:
|
|
Step 3 |
Specify the VXLAN network identifier (VNID). Example:
Use the show service-template service-template-name command to verify the configuration. |
|
Step 4 |
Specify the access list to be applied. Example:
|
|
Step 5 |
Specify VLAN ID. Example:
|
|
Step 6 |
Specify session timeout value for a service template. Example:
Valid range is from 1-65535. |
|
Step 7 |
Configure an input QoS policy for the client. Example:
|
|
Step 8 |
Configure an output QoS policy for the client. Example:
|
Create a parameter map (CLI)
Before you begin
Follow these steps to create a parameter map:
Procedure
|
Step 1 |
Enter global configuration mode. Example:
|
|
Step 2 |
Specify the parameter map type and name. Example:
|
|
Step 3 |
Specify the parameter map attribute filter criteria. Example:
Multiple filters are used in the example provided here. |
|
Step 4 |
Specify the service template and its precedence. Example:
|
Create a policy map (GUI)
Before you begin
Follow these steps to create a policy map using the GUI:
Procedure
|
Step 1 |
Choose tab. |
|
Step 2 |
Enter a name for the Policy Map in the Policy Map Name text field. |
|
Step 3 |
Click Add |
|
Step 4 |
Choose the service template from the Service Template drop-down list. |
|
Step 5 |
For the following parameters select the type of filter from the drop-down list and enter the required match criteria
|
|
Step 6 |
Click Add Criteria |
|
Step 7 |
Click Update & Apply to Device. |
Create a policy map (CLI)
Before you begin
Before removing a policy map or parameter map, you should remove it from the target or shut down the WLAN profile or delete the session.Procedure
|
Step 1 |
Enter global configuration mode. Example:
|
||
|
Step 2 |
Specify the policy map type. Example:
Example:
|
||
|
Step 3 |
Specify the match criteria to the policy map. Example:
|
||
|
Step 4 |
You can apply a service template using either a class map or a parameter map, as shown here.
Example:The following example shows how a class-map with a service-template has to be applied:
Example:The following example shows how a parameter map has to be applied (service template is already associated with the parameter map 'param' while creating it):
|
||
|
Step 5 |
Exit configuration mode. Example:
|
||
|
Step 6 |
Enter global configuration mode. Example:
|
||
|
Step 7 |
Configure a wireless policy profile. Example:
|
||
|
Step 8 |
Add a description for the policy profile. Example:
Example:
|
||
|
Step 9 |
Configure DHCP TLV caching on a WLAN. Example:
|
||
|
Step 10 |
Configure client HTTP TLV caching on a WLAN. Example:
|
||
|
Step 11 |
Configure the subscriber policy name. Example:
Example:
|
||
|
Step 12 |
Configure a VLAN name or VLAN ID. Example:
Example:
|
||
|
Step 13 |
Save the configuration. Example:
|
Configure native profiling in local mode (CLI)
To enable native profiling for wireless users in local mode by updating the policy profile configuration.
To configure native profiling in the local mode, you must follow the steps described in Create a policy map (CLI) . In the policy profile, you must enable central switching as described in the step given below in order to configure native profiling.
Procedure
|
Enable central switching. Example:
|
Native profiling is now enabled in local mode. The device uses central switching, allowing profiling information to be collected and used for network management.
Verify native profile configuration
Use these show commands to verify the native profile configuartion:
Device# show wireless client device summary
Active classified device summary
MAC Address Device-type User-role Protocol-map
------------------------------------------------------------------------------------------------------
1491.82b8.f94b Microsoft-Workstation sales 9
1491.82bc.2fd5 Windows7-Workstation sales 41
Device# show wireless client device cache
Cached classified device info
MAC Address Device-type User-role Protocol-map
------------------------------------------------------------------------------------------------------
2477.031b.aa18 Microsoft-Workstation 9
30a8.db3b.a753 Un-Classified Device 9
4400.1011.e8b5 Un-Classified Device 9
980c.a569.7dd0 Un-Classified Device Device# show wireless client mac-address 4c34.8845.e32c detail | s
Session Manager:
Interface :
IIF ID : 0x90000002
Device Type : Microsoft-Workstation
Protocol Map : 0x000009
Authorized : TRUE
Session timeout : 1800
Common Session ID: 78380209000000174BF2B5B9
Acct Session ID : 0
Auth Method Status List
Method : MAB
SM State : TERMINATE
Authen Status : Success
Local Polices:
Service Template : wlan_svc_C414.3CCA.0A51 (priority 254)
Absolute-Timer : 1800
Server Polices:
Resultant Policies:
Filter-ID : acl-auto
Input QOS : in_qos
Output QOS : out_qos
Idle timeout : 60 sec
VLAN : 10
Absolute-Timer : 1000 Use this show command to verify the class map details for a class map name:
Device# show class-map type control subscriber name test
Class-map Action Exec Hit Miss Comp
--------- ------ ---- --- ---- ---
match-any test match day Monday 0 0 0 0
match-any test match join-time-of-day 8:00 18:00 0 0 0 0
Key:
"Exec" - The number of times this line was executed
"Hit" - The number of times this line evaluated to TRUE
"Miss" - The number of times this line evaluated to FALSE
"Comp" - The number of times this line completed the execution of its
condition without a need to continue on to the end
Feedback