Sunday, February 26, 2012
MGCP Signaling QoS marking
Difference between "set dscp" and "set ip dscp" under policy-map
pandasw02(config-pmap-c)#set ?
dscp Set DSCP in IP(v4) and IPv6 packets
ip Set IP specific values
precedence Set precedence in IP(v4) and IPv6 packets
pandasw02(config-pmap-c)#set ip ?
dscp Set IP DSCP (DiffServ CodePoint)
precedence Set IP precedence
Sunday, January 29, 2012
FRF.12 Link Fragmentation and Interleaving calculation
Delay = Frame size (bits) / Link Bandwidth (bps)
0.01s = Frame size (bits) / 768,000 bps
Frame size = 7680 bits = 960 bytes
This is the configuration example extracted from the AutoQoS applied on the frame relay sub-interface
SRR queue - sharing and shaping on 3750
1. You can configure sharing or shaping for egress queue, however for ingress you can only configure sharing.
2. In shaped mode, the egress queues are guaranteed a percentage of the bandwidth, and they are rate-limited to that amount. Shaped traffic does not use more than the allocated bandwidth even if the link is idle.
3. With shaping, the inverse absolute value of each weight is used to compute the bandwidth available for the queues.
Example: "srr-queue bandwidth shape 4 0 0 0", which means 1/4 of the interface bandwidth is assigned to queue 1. If the link is a FE interface, around 25Mbps is allocated. Even if the link is idle, queue 1 can't use more than 25Mbps bandwidth in this case.
4. In shared mode, the queues share the bandwidth among them according to the configured weights. The bandwidth is guaranteed at this level but not limited to it. For example, if a queue is empty and no longer requires a share of the link, the remaining queues can expand into the unused bandwidth and share it among them.
5. With sharing, the ratio of the weights controls the frequency of dequeuing.
Example: "srr-queue bandwidth share 30 40 25 5", the sum is 30 + 40 + 25 + 5 = 100 (better to reference to 100 for ease of calculation). The relative rate are 30/100, 40/100, 25/100 and 5/100
6. Shaping and sharing is configured per interface. Each interface can be uniquely configured.
7. You can mix shared and shaped on the same interface.
Example:
interface GigabitEthernet 1/0/1
srr-queue bandwidth share 1 30 40 30
srr-queue bandwidth shape 5 0 0 0
The interface bandwidth is 1000Mbps, queue 1 will get 1/5 = 200 Mbps. Queue 2, 3 and 4 will share the remaining 800Mbps.
Queue 2 = 800Mbps x 30% = 240Mbps
Queue 3 = 800Mbps x 40% = 320Mbps
Queue 4 = 800Mbps x 30% = 240Mbps
8. When you type "priority-queue out", you will turn queue 1 into PQ, it will ignore shared and shaped weight in the calculation. It means the PQ has 100% bandwidth when it needs, therefore other shaped queue may starve.
Monday, April 12, 2010
Learning Nexus 7000 QoS by Example
My environment: Nexus 7010, NX-OS 4.2
Just got a chance to play with the Nexus 7000 NX-OS QoS, the “mls qos” syntax has gone and now all the commands are based on MQC.
In the following example, I’m going to configure 2 ingress ports, one with high priority traffic and one with normal traffic, and at egress port high priority traffic will be assigned to PQ to dequeue first.
Classification
N7K# conf t
class-map type queuing match-any 1p3q4t-out-pq1
match cos 5
It can only be done via the main VDC. It can’t be done on child VDC. And you can ONLY match cos in the class-map.
Marking
Now let’s mark the ingress traffic, I will do this at the port assigned to the vdc “test”.
N7K# switchto vdc test
N7K-test#
policy-map type queuing highpriority-in-policy
class type queuing 2q4t-in-q-default
set cos 5
Scheduling and Queuing
Finally, I want to assign the high priority traffic (cos=5) to PQ
N7K-test#
policy-map type queuing highpriority-out-policy
class type queuing 1p3q4t-out-pq1
priority level 1
Last step is to assign service policy to the interface:
N7K-test#
int e3/1
description - High Priority – Ingress -
service-policy type queuing input highpriority-in-policy
!
int e3/2
description – Low Priority – Ingress -
!
int e3/3
description – Egress Port -
service-policy type queuing output highpriority-out-policy
!
Monday, November 17, 2008
Low Latency Queue (LLQ) Cheatsheet
- LLQ = CBWFQ + “priority” keyword
- You can have more than 1 queue at a time
- PQ can consume 100% bandwidth and starve low priority queue
- LLQ discard traffic when exceed configured bandwidth – Policing!
Example Configuration
R11(config)#class-map voip-class
R11(config-cmap)#match ip dscp ef
R11(config-cmap)#policy-map voip-map
R11(config-pmap)#class voip-class
R11(config-pmap-c)#priority percent 33
R11(config-pmap-c)#int fa0/0
R11(config-if)#service-policy output voip-map
Double LLQ – 2 policing in 1 queue
Example:
1 Video Conference session = 320kbps
3 G.729a voice calls = 80kbps
If you configure “priority 400”, and if you have more than 3 G.729a voice calls, it will affect the video conferencing quality as it will exceed the policed rate 400kbps.
If you have 2 separate class-maps, i.e.
R11(config-pmap)#policy-map 2llq-map
R11(config-pmap)#class voice-class
R11(config-pmap-c)#priority 80
R11(config-pmap)#class video-class
R11(config-pmap-c)#priority 320
You can’t have more than 1 video conference call or more than 3 G.729a calls as it is policed in 2 difference classes.
Wednesday, February 6, 2008
Enabling AutoQoS on Catalyst Switches

You can use one single command to enable QoS on your catalyst switches, and QoS will be applied to the switchports automatically.
Catalyst (config-if) # auto qos voip cisco-phone
It can achieve the following with AutoQoS macro:
- Enforces a trust boundary at Cisco IP Phones
- Enforces a trust boundary on Catalyst switch access ports and uplinks/downlinks
- Enables Catalyst strict priority queuing for voice and weighted round robin queuing for data traffic
- Modifies queue admission criteria (i.e. CoS to-queue mapping)
- Modifies queue sizes, as well as queue weights where required
- Modifies CoS-to-DSCP and IP precedence to-DSCP mappings