Contents

Introduction

Prerequisites

Requirements

Components Used

背景信息

功能信息

故障排除方法

常见问题

常见问题解答

Related Information

Introduction

本文描述如何排除输出下落故障由于在Cisco Catalyst交换机系列2960的服务质量(QoS)， 3750， 3750G， 3750X， 3560。

Prerequisites

Requirements

Cisco建议您有QoS基础知识。

Components Used

本文的信息根据这些平台：Cisco Catalyst交换机系列2960， 3750， 3750G， 3750X， 3560。

The information in this document was created from the devices in a specific lab environment.All of the devices used in this document started with a cleared (default) configuration.If your network is live, make sure that you understand the potential impact of any command.

背景信息

在拥塞的时期QoS用于优先安排更多重的数据。结果，在QoS是启用的后，较不重要批量数据也许经受丢包。

Cisco接入层交换机在硬件方面实现QoS功能。本文帮助您确定丢包是否是由QoS造成的并且描述缓和他们的多种排队和缓冲微调选项。

功能信息

入口默认队列

出口默认队列

故障排除方法

1. 识别传送流出的数据为受影响的应用程序或经受输出下落增加的接口。比较接口输出费率和接口速度并且保证丢包不归结于在链路的利用率。
Switch#show int gi1/0/1

!-- Some output omitted.

GigabitEthernet0/1 is up, line protocol is up (connected)

MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec,

Full-duplex, 1000Mb/s, media type is 10/100/1000BaseTX

input flow-control is off, output flow-control is unsupported

Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 1089

Queueing strategy: fifo

Output queue: 0/40 (size/max)

5 minute input rate 4000 bits/sec, 6 packets/sec

5 minute output rate 3009880 bits/sec, 963 packets/sec

2. 保证QoS在交换机被启用。如果它不是启用的，输出下落没有与QoS有关并且被提及的进一步步骤这里是毫不相关的。
Switch#show mls qos

QoS is enabled

QoS ip packet dscp rewrite is enabled

3. 识别在接口降低流出的数据流的标记。
Switch#show mls qos int gi1/0/1 statistics

GigabitEthernet1/0/1 (All statistics are in packets)

dscp: incoming

-------------------------------

0 -  4 :       0       0       0       0       0

5 -  9 :       0       0       0       0       0

10 - 14 :      0       0       0       0       0

15 - 19 :      0       0       0       0       0

20 - 24 :      0       0       0       0       0

25 - 29 :      0       0       0       0       0

30 - 34 :      0       0       0       0       0

35 - 39 :      0       0       0       0       0

40 - 44 :      0       0       0       0       0

45 - 49 :      0  198910       0       0       0

50 - 54 :      0       0       0       0       0

55 - 59 :      0       0       0       0       0

60 - 64 :      0       0       0       0

dscp: outgoing

-------------------------------

0 -  4 :       0       0       0       0       0

5 -  9 :       0       0       0       0       0

10 - 14 :      0       0       0       0       0

15 - 19 :      0       0       0       0       0

20 - 24 :      0       0       0       0       0

25 - 29 :      0       0       0       0       0

30 - 34 :      0       0       0       0       0

35 - 39 :      0       0       0       0       0

40 - 44 :      0       0       0       0       0

45 - 49 :      0  248484       0       0       0

50 - 54 :      0       0       0       0       0

55 - 59 :      0       0       0       0       0

60 - 64 :      0       0       0       0

cos: incoming

-------------------------------

0 -  4 :      2       0       0       0       0

5 -  7 :      0       0       0

cos: outgoing

-------------------------------

0 -  4 :      0       0       0       0       0

5 -  7 :      0       0       0

output queues enqueued:

queue:    threshold1   threshold2   threshold3

-----------------------------------------------

queue 0:      248484 0      0

queue 1:      0      0      0

queue 2:      0      0      0

queue 3:      0      0      0

output queues dropped:

queue:    threshold1   threshold2   threshold3

-----------------------------------------------

queue 0:   1089      0      0

queue 1:      0      0      0

queue 2:      0      0      0

queue 3:      0      0      0

Policer: Inprofile:     0 OutofProfile:     0

Note:此示例显示在丢弃信息包的队列0/threshold1的被丢弃的装箱。在本文的其他示例中，队列编号是1 - 4;因此，此值将是queue1。

4. 检查在交换机的标记输出q映射为了确定哪些队列阀值对映射对被丢弃的标记。在此方案中， queue1/threshold1被映射对dscp 46，在接口下降。这意味着dscp 46数据流被发送到queue1和降低，因为该队列有不足的缓冲区或一点CPU周期。
Switch#show mls qos maps dscp-output-q

Dscp-outputq-threshold map:

d1 :d2    0     1     2     3     4     5     6     7     8     9

------------------------------------------------------------

0 :    02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01

1 :    02-01 02-01 02-01 02-01 02-01 02-01 03-01 03-01 03-01 03-01

2 :    03-01 03-01 03-01 03-01 03-01 03-01 03-01 03-01 03-01 03-01

3 :    03-01 03-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01

4 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 04-01 04-01

5 :    04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01

6 :    04-01 04-01 04-01 04-01

5. 有解决这些丢包的两个方法。第一种方法是更改缓冲区和门限值的该的队列丢包信息包。第二种方法是配置调度程序，以便丢弃信息包的队列比队列的其余经常被服务。

此步骤显示您如何能更改缓冲区和阈值受影响的队列的并且检查与队列和门限值产生关联的缓冲区识别在第4.步。
Note:每个队列集都具有相关选项，用于为四个出口队列配置缓冲大小和阈值。然后，可以将任何一个队列集应用于任何一个端口。默认情况下，所有接口使用队列集1输出队列，除非明确配置使用队列集2。

在此方案中，在队列集1的queue1有25%总缓冲缓冲区空间，并且阈值1设置到100%

Switch#show mls qos queue-set

Queueset: 1

Queue     :       1       2       3       4

----------------------------------------------

buffers   :      25      25      25      25

threshold1:     100     200     100     100

threshold2:     100     200     100     100

reserved  :      50      50      50      50

maximum   :     400     400     400     400

Queueset: 2

Queue     :       1       2       3       4

----------------------------------------------

buffers   :      25      25      25      25

threshold1:     100     200     100     100

threshold2:     100     200     100     100

reserved  :      50      50      50      50

maximum   :     400     400     400     400

6. 如果要更改缓冲区和门限值的仅受影响接口，请更改队列集2并且配置受影响接口使用队列集2。
Note:您能更改队列集1;然而，默认情况下作为所有接口请使用队列集1，更改被反映对所有接口。

在本例中，更改队列集2，以便queue1接受70%总缓冲。

Switch(config)#mls qos queue-set output 2 buffers 70 10 10 10

在本例中，更改队列集2和queue1阈值。阈值1和阈值2被映射到3100，以便他们能如果必须拉从后备的池的缓冲区。

Switch(config)#mls qos queue-set output 2 threshold 1 3100 3100 100 3200

7. 验证更改反射在正确的队列和队列集下。
Switch#show mls qos queue-set

Queueset: 1

Queue     :       1       2       3       4

----------------------------------------------

buffers   :      25      25      25      25

threshold1:     100     200     100     100

threshold2:     100     200     100     100

reserved  :      50      50      50      50

maximum   :     400     400     400     400

Queueset: 2

Queue     :       1       2       3       4

----------------------------------------------

buffers   :      70      10      10      10

threshold1:    3100     100     100     100

threshold2:    3100     100     100     100

reserved  :     100      50      50      50

maximum   :    3200     400     400     400

8. 做受影响接口使用队列集2，以便更改生效对此接口的。
Switch(config)#int gi1/0/1

Switch(config-if)#queue-set 2

Switch(config-if)#end

验证接口被映射对队列集2。

Switch#show run int gi1/0/1

interface GigabitEthernet1/0/1

switchport mode access

mls qos trust dscp

queue-set 2

end

检查接口是否继续丢弃信息包。

9. 您能也配置调度程序增加queue1服务与共用和形状选项的费率。在本例中，单独queue1接受50%总CPU周期，并且其他三个队列共同接受50% CPU周期。
Switch(config-if)#srr-queue bandwidth share 1 75 25 5

Switch(config-if)#srr-queue bandwidth shape 2  0  0  0

检查接口是否继续丢弃信息包。

10. Enable (event)在此接口的优先级队列。此动作保证在优先级队列的所有数据流在其他队列前被处理。
Note:在为其他队列服务前，将始终为优先队列提供服务，直至该队列为空。默认情况下在2960/3560/3750交换机， queue1是优先级队列。

Switch(config)#int gi1/0/1

Switch(config-if)#priority-queue out

Switch(config-if)#end

在接口被丢弃信息包的标记可以被映射，以便去queue1 (优先级队列)。此动作保证与此标记的数据流在别的前总是被处理。

Switch(config)#mls qos srr-queue output dscp-map queue 1 threshold 1

常见问题

这是一些常见问题：

- 在接口的输出下落在QoS以后是启用的。

- 声音断断续续呼叫。

- 被添加的延迟导致不最理想的视频数据流。

- 连接重置。

常见问题解答

Q ：什么时候修改队列集，并且什么时候使用共享/整形？

A：决策取决于丢包的本质。如果丢包间歇地增加，此问题很可能归结于突发数据流。相反，如果丢包不断地恒定速率增加，比它丢弃信息包很可能接受更多数据的队列能派出。

对于断断续续的丢包，队列必须有能适应偶尔的突发传输的一个大缓冲区。为了实现此解决方案，您必须修改队列集和分配更多缓冲区到受影响的队列和增加门限值。

对于持续丢包，您必须配置调度程序经常服务受影响的队列和使用自队列的更多信息包每CPU周期。 为了实现此解决方案，您必须在出口的共享/整形排队的confiure。

Q ：共享模式和整形的模式有何区别？

A：在整形模式下，会保证出口队列的带宽百分比，并限制为该比率。整形的数据流不能使用比分配的带宽更多的带宽，即使链路处于空闲状态也是如此。整形的模式随着时间的推移提供数据流甚而流并且减少突发数据流峰顶和谷。使用整形，绝对值每个重量用于计算带宽可用为队列。

srr队列带宽形状weight1 weight2 weight3 weight4

反面比率(1/weight)控制此队列的整形的带宽。换句话说， queue1是总带宽的后备的1/weight1百分比等等。如果配置重量0，对应的队列在共享模式运行。用srr队列带宽指定的重要性shape命令被忽略，并且重要性用interface configuration命令srr队列带宽的共用指定为队列进入的效果。

在共享模式，队列共享带宽在他们根据被配置的重要性。可以保证得到这一级别的带宽，但不限于这一级别的带宽。例如，如果队列是空的和不再要求链路的共用，剩余的队列能扩展到未使用的带宽和在他们共享它。

srr队列带宽共用weight1 weight2 weight3 weight4

queue1是保证的至少weight1/(weight1 + weight2 + weight3 +带宽的weight4)百分比，但是能也吃如果必须到其他非整形的队列带宽。

Related Information

- Technical Support & Documentation - Cisco Systems