Service Ingress QoS Policy Commands

sap-ingress

Syntax

[no] sap-ingress policy-id [create]

Context

config>qos

Description

This command is used to create or edit the ingress policy. The ingress policy defines the Service Level Agreement (SLA) enforcement that service packets receive as they ingress a SAP. SLA enforcement is accomplished through the definition of queues that have Forwarding Class (FC), Committed Information Rate (CIR), Peak Information Rate (PIR) and Maximum Burst Size (MBS) characteristics. The simplest policy defines a single queue that all ingress traffic flows through. Complex policies have multiple queues that indicate which queue a packet will flow though.

Policies are templates that can be applied to multiple services as long as the scope of the policy is template. Queues defined in the policy are not instantiated until a policy is applied to a service SAP.

It is possible that a service ingress policy will include the dscp map command and the dot1p map command. When multiple matches occur for the traffic, the order of precedence will be used to arrive at the final action. The order of precedence is as follows:

  1. 802.1p bits

  2. DSCP

The service ingress policy with policy-id 1 is a system-defined policy applied to services when no other policy is explicitly specified. This policy cannot be modified or deleted.

The no version of this command restores the factory default settings when used on policy-id 1. The default service ingress policy defines one queue associated with the best effort (be) forwarding class, with CIR of 0 and PIR of line rate.

Any changes made to the existing policy, using any of the sub-commands, are applied immediately to all services where this policy is applied. For this reason, when many changes are required on a policy, it is recommended that the policy be copied to a work area policy ID. That work-in-progress policy can be modified until complete and then written over the original policy-id. Use the config qos copy command to maintain policies in this manner.

The no sap-ingress policy-id command deletes the service ingress policy. A policy cannot be deleted until it is removed from all services where it is applied. The system default sap-ingress policy is a special case.

Parameters

policy-id

uniquely identifies the policy. The policy-name cannot be used to create the policy, but it can be used to reference a policy that already exists.

Values

1 to 65535, or policy-name (up to 64 characters)

create

keyword used to create a sap-ingress policy

scope

Syntax

scope {exclusive | template}

no scope

Context

config>qos>sap-ingress

Description

This command configures the Service Ingress QoS policy scope as exclusive or template.

The policy’s scope cannot be changed if the policy is applied to a service.

The no form of this command sets the scope of the policy to the default of template.

Default

template

Parameters

exclusive

when the scope of a policy is defined as exclusive, the policy can only be applied to one SAP. If a policy with an exclusive scope is assigned to a second SAP, an error message is generated. If the policy is removed from the exclusive SAP, it will become available for assignment to another exclusive SAP.

template

when the scope of a policy is defined as template, the policy can be applied to multiple SAPs on the router

default-fc

Syntax

default-fc fc-name

no default-fc

Context

config>qos>sap-ingress

Description

This command configures the default forwarding class for the policy. In the event that an ingress packet does not match a higher priority (more explicit) classification command, the default forwarding class will be associated with the packet. Unless overridden by an explicit forwarding class classification rule, all packets received on an ingress SAP using this ingress QoS policy will be classified to the default forwarding class. Optionally, the default ingress enqueuing priority for the traffic can be overridden as well.

The default forwarding class for default-fc is best effort (be). The default-fc settings are displayed in the show configuration and save output regardless of inclusion of the detail keyword.

The no form of this command reverts to the default value.

Default

be

Parameters

fc-name

specifies the forwarding class name for the queue. The value given for fc-name must be one of the predefined forwarding classes in the system.

Values

be, l2, af, l1, h2, ef, h1, nc

default-priority

Syntax

default-priority {high | low}

no default-priority

Context

config>qos>sap-ingress

Description

This command configures the default enqueuing priority for all packets received on an ingress SAP using this policy.

The no form of this command reverts to the default value.

Default

low

Parameters

high

setting the enqueuing parameter to high for a packet increases the likelihood of enqueuing the packet when the ingress queue is congested. Ingress enqueuing priority only affects ingress SAP queuing; once the packet is placed in a buffer on the ingress queue, the significance of the enqueuing priority is lost.

low

setting the enqueuing parameter to low for a packet decreases the likelihood of enqueuing the packet when the ingress queue is congested. Ingress enqueuing priority only affects ingress SAP queuing; once the packet is placed in a buffer on the ingress queue, the significance of the enqueuing priority is lost.

fc

Syntax

[no] fc fc-name [create]

Context

config>qos>sap-ingress

Description

This command is used to create a class of the forwarding class fc-name.

The no form of the command removes all the explicit queue mappings for fc-name forwarding types. The queue mappings revert to the default queues for fc-name.

Parameters

fc-name

specifies the forwarding class name for the queue. The value given for fc-name must be one of the predefined forwarding classes in the system.

Values

class: be, l2, af, l1, h2, ef, h1, nc

Default

n/a

create

keyword used to create a forwarding class

dot1p

Syntax

dot1p dot1p-priority [fc fc-name] [priority {high | low}]

no dot1p dot1p-priority

Context

config>qos>sap-ingress

Description

This command explicitly sets the forwarding class and/or enqueuing priority when a packet is marked with a dot1p-priority specified. Adding a dot1p rule on the policy forces packets that match the dot1p-priority specified to override the forwarding class and enqueuing priority based on the parameters included in the dot1p rule. When the forwarding class is not specified in the rule, a matching packet preserves (or inherits) the existing forwarding class derived from earlier matches in the classification hierarchy. When the enqueuing priority is not specified in the rule, a matching packet preserves (or inherits) the existing enqueuing priority derived from earlier matches in the classification hierarchy.

The dot1p-priority is derived from the most significant three bits in the IEEE 802.1Q or IEEE 802.1P header. The three dot1p bits define eight Class-of-Service (CoS) values commonly used to map packets to per-hop Quality-of-Service (QoS) behavior.

For QinQ applications, the dot1p bits used for classification are from either the top or bottom tag based on the match-qinq-dot1p configuration. For more information, refer to the command description and the ‟QinQ Dot1p Match Behavior” section in the 7705 SAR Services Guide.

The no form of this command removes the explicit dot1p classification rule from the service ingress policy. Removing the rule on the policy immediately removes the rule on all ingress SAPs using the policy.

Parameters

dot1p-priority

this value is a required parameter that specifies the unique IEEE 802.1P value that will match the dot1p rule. If the command is executed multiple times with the same dot1p-value, the previous forwarding class and enqueuing priority is completely overridden by the new parameters or defined to be inherited when a forwarding class or enqueuing priority parameter is missing.

A maximum of eight dot1p rules are allowed on a single policy.

Values

0 to 7

fc-name

the value given for the fc-name parameter must be one of the predefined forwarding classes in the system. Specifying the fc-name is optional. When a packet matches the rule, the forwarding class is only overridden when the fc-name parameter is defined on the rule. If the packet matches and the forwarding class is not explicitly defined in the rule, the forwarding class is inherited based on previous rule matches.

Values

be, l2, af, l1, h2, ef, h1, nc

Default

n/a

priority

the priority keyword is used to override the default enqueuing priority for all packets received on an ingress SAP using this policy that match this rule. Specifying the priority is optional. When a packet matches the rule, the enqueuing priority is only overridden when the priority parameter is defined on the rule. If the packet matches and the priority is not explicitly defined in the rule, the enqueuing priority is inherited based on previous rule matches.

high

the high keyword is used in conjunction with the priority keyword. Setting the enqueuing parameter to high for a packet increases the likelihood of enqueuing the packet when the ingress queue is congested. Ingress enqueuing priority only affects ingress SAP queuing; once the packet is placed in a buffer on the ingress queue, the significance of the enqueuing priority is lost.

low

the low keyword is used in conjunction with the priority keyword. Setting the enqueuing parameter to low for a packet decreases the likelihood of enqueuing the packet when the ingress queue is congested. Ingress enqueuing priority only affects ingress SAP queuing; once the packet is placed in a buffer on the ingress queue, the significance of the enqueuing priority is lost.

dscp

Syntax

dscp dscp-name [dscp-name...(up to 8 max)] [fc fc-name] [priority {high | low}]

no dscp dscp-name [dscp-name...(up to 8 max)]

Context

config>qos>sap-ingress

Description

This command explicitly sets the forwarding class and/or enqueuing priority when a packet is marked with the DiffServ Code Point (DSCP) value contained in dscp-name. Adding a DSCP rule on the policy forces packets that match the specified DSCP value to override the forwarding class and enqueuing priority based on the parameters included in the DSCP rule.

When the forwarding class is not specified in the rule, a matching packet preserves (or inherits) the existing forwarding class derived from earlier matches in the classification hierarchy. When the enqueuing priority is not specified in the rule, a matching packet preserves (or inherits) the existing enqueuing priority derived from earlier matches in the classification hierarchy.

The DSCP value (referred to by dscp-name) is derived from the most significant six bits in the IP header ToS byte field (DSCP bits). The six DSCP bits define 64 DSCP values used to map packets to per-hop QoS behavior.

A list of up to 8 DSCP names can be specified to assign DSCP values to an FC mapping for DSCP classification.

The no form of this command removes the DiffServ code point to forwarding class association. The default-action then applies to that code point value.

Parameters

dscp-name

the dscp-name is a required parameter that specifies the unique IP header ToS byte DSCP bits value that will match the DSCP rule.

A maximum of 64 DSCP rules are allowed on a single policy. The specified name must exist as a dscp-name. Table: Valid DSCP Names lists all the valid DSCP names.

fc-name

the value given for fc-name must be one of the predefined forwarding classes in the system. Specifying the fc-name is optional. When a packet matches the rule, the forwarding class is only overridden when the fc-name parameter is defined on the rule. If the packet matches and the forwarding class is not explicitly defined in the rule, the forwarding class is inherited based on previous rule matches.

Values

be, l2, af, l1, h2, ef, h1, nc

Default

inherit (when fc-name is not defined, the rule preserves the previous forwarding class of the packet)

priority

this keyword overrides the default enqueuing priority for all packets received on an ingress SAP using this policy that match this rule. Specifying the priority is optional. When a packet matches the rule, the enqueuing priority is only overridden when the priority keyword is defined on the rule. If the packet matches and priority is not explicitly defined in the rule, the enqueuing priority is inherited based on previous rule matches.

Default

inherit

high

this keyword is used in conjunction with the priority keyword. Setting the enqueuing parameter to high for a packet increases the likelihood of enqueuing the packet when the ingress queue is congested. Ingress enqueuing priority only affects ingress SAP queuing; once the packet is placed in a buffer on the ingress queue, the significance of the enqueuing priority is lost.

Default

high

low

this keyword is used in conjunction with the priority keyword. Setting the enqueuing parameter to low for a packet decreases the likelihood of enqueuing the packet when the ingress queue is congested. Ingress enqueuing priority only affects ingress SAP queuing; once the packet is placed in a buffer on the ingress queue, the significance of the enqueuing priority is lost.

Default

low

policy-name

Syntax

policy-name policy-name

no policy-name

Context

config>qos>sap-ingress

Description

This command configures a policy name for the SAP ingress policy.

Parameters

policy-name

specifies the name for the policy, up to 64 characters

queue

Syntax

queue queue-id [queue-type] [queue-mode] [create]

no queue queue-id

Context

config>qos>sap-ingress

Description

This command enables the context to configure a service ingress policy queue.

Explicit definition of an ingress queue’s hardware scheduler status is supported. A single ingress queue allows support for multiple forwarding classes.

The default behavior automatically chooses the expedited or non-expedited nature of the queue based on the forwarding classes mapped to it. As long as all forwarding classes mapped to the queue are expedited (nc, ef, h1, or h2), the queue is treated as an expedited queue by the hardware schedulers. When any non-expedited forwarding classes are mapped to the queue (be, af, l1, or l2), the queue is treated as best effort (be) by the hardware schedulers.

The expedited hardware schedulers are used to enforce expedited access to internal switch fabric destinations. The hardware status of the queue must be defined at the time of queue creation within the policy.

The no form of this command removes the queue-id from the service ingress policy and from any existing SAPs using the policy. If any forwarding class forwarding types are mapped to the queue, they revert to their default queues. When a queue is removed, any pending accounting information for each service queue created due to the definition of the queue in the policy is discarded.

Parameters

queue-id

the queue identifier for the queue, expressed as an integer. The queue-id uniquely identifies the queue within the policy. This is a required parameter each time the queue command is executed.

Values

1 to 8

queue-type

the expedite, best-effort, and auto-expedite queue types are mutually exclusive. Each defines the method that the system uses to service the queue from a hardware perspective. A keyword must be specified at the time the queue is created in the service ingress policy. If an attempt is made to change the keyword after the queue is initially defined, an error is generated.

expedite

the queue is treated in an expedited manner independent of the forwarding classes mapped to the queue

best-effort

the queue is treated in a non-expedited manner independent of the forwarding classes mapped to the queue

auto-expedite

the system auto-defines the way the queue is serviced by the hardware. When auto-expedite is defined on the queue, the queue is treated in an expedited manner when all forwarding classes mapped to the queue are configured as expedited types nc, ef, h1, or h2. When a single non-expedited forwarding class is mapped to the queue (be, af, l1, and l2), the queue automatically falls back to non-expedited status.

Values

expedite, best-effort, auto-expedite

Default

auto-expedite

queue-mode

specifies the mode in which the queue is operating, either priority-mode or profile-mode. A keyword must be specified at the time the queue is created in the service ingress policy. If an attempt is made to change the keyword after the queue is initially defined, an error is generated.

Values

priority-mode or profile-mode

Default

priority-mode

priority-mode

configures the queue to be capable of handling traffic with two distinct priorities, high and low. These priorities are assigned by the stages preceding the queuing framework in the system. In priority mode, a packet’s in-profile or out-of-profile state is determined by the state of the queue at scheduling time. When the queue rate is lower than or equal to the configured CIR, the packet is considered in-profile. When the queue rate is higher than the CIR, the packet is considered out-of-profile.

profile-mode

configures the queue to support color-aware profiling of the forwarding class mapped to the queue. Color-aware operational behavior is as follows.

  • Forwarding classes defined as in-profile are handled as high priority and packets assigned to these forwarding classes are marked as in-profile. These profiled in-profile packets will consume queue CIR bandwidth.

  • Forwarding classes defined as out-of-profile are handled as low priority and packets assigned to these forwarding classes are marked as out-of-profile. These profiled out-of-profile packets do not consume queue CIR for profile marking calculations.

  • Forwarding classes that are not profiled (profile not set to in-profile or out-of-profile) are handled as high priority and are marked as in-profile or out-of-profile based on the dynamic rate of the ingress queue relative to its CIR. Non-profiled packets scheduled at or lower than the CIR will consume queue CIR bandwidth.

create

keyword used to create a sap-ingress queue context