目錄

簡介

必要條件

需求

採用元件

慣例

概觀

服務類別行為

修改訪問鏈路上的COS行為

輸出佇列選取和計畫

建立自定義隊列策略

注意事項

相關資訊

簡介

本檔案將提供Cisco Nexus 7000系列交換器上的服務品質(QoS)功能組態範例，以簡化分類和佇列達成方式。

必要條件

需求

嘗試此組態之前，請確保符合以下要求：

- 瞭解Nexus 7000系列交換機配置的基本知識

- 具有QoS基礎知識

採用元件

本檔案中的資訊是根據Nexus 7000系列交換器。

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路正在作用，請確保您已瞭解任何指令可能造成的影響。

慣例

請參閱思科技術提示慣例以瞭解更多有關文件慣例的資訊。

概觀

Nexus 7000交換機上的預設QoS引數足以滿足大多數部署的需要。但是，您需要瞭解建立自定義策略所需的限制和配置詳細資訊。

對於Nexus 7000 M系列線卡上的QoS，您需要考慮兩個方面：

- 隊列策略

- QoS策略

隊列在硬體中執行，並使用模組化QoS CLI(MQC)隊列策略進行配置。用於標籤或管制流量的QoS策略通過MQC策略使用，其格式與其他Cisco平台上的標準QoS策略完全相同。例如，訪問清單用於將類對映中的流量與相應的策略對映進行分類，以設定/管理流量。

目前，M系列模組嚴格根據服務等級(CoS)值進行排隊。因此，您需要首先瞭解如何匯出CoS值。在知道交換機的CoS值進入/離開後，您可以專注於隊列配置，以獲得不同流量型別所需的QoS。

服務類別行為

對於路由的單點傳播流量，CoS值是從差分服務代碼點(DSCP)值的3個最高位派生的。對於橋接的單點傳播流量，會從802.1q標頭中收到的CoS值複製CoS值。請注意，在L2接入鏈路上沒有中繼報頭。因此，如果流量在接入埠上收到並橋接，它將使用CoS 0輸出交換機。DSCP值不會更改，但資料包可能無法獲得所需的優先順序。您可以通過任何手動設定CoS或DSCP值的QoS策略在策略對映中手動設定CoS值。

瞭解組播的行為也很重要。路由組播流量獲取其CoS值的方式與路由單播流量相同。對於橋接組播流量，行為取決於L3狀態。如果組播組沒有L3狀態，則以與橋接單播流量相同的方式匯出CoS。如果組播組存在L3狀態，則以與路由單播流量相同的方式匯出CoS。請注意，當您在交換器虛擬介面(SVI)上為接收流量的VLAN啟用稀疏模式下的通訊協定無關多點傳送(PIM)時，會在看到多點傳送時建立S、G專案。

總而言之，以下顯示了流量型別的CoS行為：

流量型別

CoS行為

路由單播

從3個MSB複製到ToS

橋接單播

未更改

路由組播

從3個MSB複製到ToS

具有組L3狀態的網橋組播

從3個MSB複製到ToS

組沒有第3層狀態的網橋組播

未更改

修改訪問鏈路上的COS行為

考慮存取連線埠(Eth8/1)上接收流量並在VLAN上橋接流量的範例。預設情況下，橋接單點傳播流量的CoS值不會變更。如果流量到達接入埠，則會分配預設CoS值0。在本範例中，優先順序流量(DSCP 46)是在存取連線埠上接收的，並以DSCP值未變更且CoS值為0的方式輸出交換器。因此，封包沒有取得適當的優先順序。

附註：顯示CoS標題只是為了進行說明。E8/1是接入埠，因此CoS值為0。資料包流從左到右。

一種可能的解決方法是建立一個QoS策略來手動設定輸入埠上的CoS值。

在本示例中，只有具有DSCP 46的資料包才會更新其CoS值。如果需要多個DSCP值來確保正確的CoS值，則需要定義策略對映中的其他類對映和操作。

另一個選項是將表對映與操作「default copy」一起使用。 表對映允許您根據當前DSCP值重置DSCP。例如，如果接收的DSCP值為40的流量，並且需要確保將其重新標籤為DSCP值為46，則可以使用操作為「從40到46」的表對映。

表對映還包含「預設複製」操作，該操作將DSCP值設定為原始值。這與使用「match dscp ef」分類和「set dscp ef」操作建立策略對映類似。 在邏輯上，DSCP值保持不變，但「set dscp」操作會將CoS值隱式設定為新DSCP值的3-MSB。

因此，如果需要確保CoS值始終更新為DSCP值的3-MSB，請使用帶有「default copy」的單個操作的表對映。

輸出佇列選取和計畫

匯出CoS值後，您可以操縱全域性隊列類對映來影響cos到隊列的對映。這些類對映是全域性的，並且影響該特定隊列型別的所有虛擬裝置上下文(VDC)中的所有模組。例如，考慮M108和M132模組(1p7q4t)的這些預設隊列類對映：

class-map type queuing match-any 1p7q4t-out-pq1

Description: Classifier for egress priority queue of type 1p7q4t

match cos 5-7

class-map type queuing match-any 1p7q4t-out-q2

Description: Classifier for egress queue 2 of type 1p7q4t

class-map type queuing match-any 1p7q4t-out-q3

Description: Classifier for egress queue 3 of type 1p7q4t

class-map type queuing match-any 1p7q4t-out-q4

Description: Classifier for egress queue 4 of type 1p7q4t

class-map type queuing match-any 1p7q4t-out-q5

Description: Classifier for egress queue 5 of type 1p7q4t

class-map type queuing match-any 1p7q4t-out-q6

Description: Classifier for egress queue 6 of type 1p7q4t

class-map type queuing match-any 1p7q4t-out-q7

Description: Classifier for egress queue 7 of type 1p7q4t

class-map type queuing match-any 1p7q4t-out-q-default

Description: Classifier for egress default queue of type 1p7q4t

match cos 0-4

預設情況下，cos 0-4對映到預設隊列，cos 5-7對映到優先順序隊列。這些策略與同一隊列型別的預設隊列策略並行執行：

policy-map type queuing default-out-policy

class type queuing out-pq1

priority level 1

queue-limit percent 16

class type queuing out-q2

queue-limit percent 1

class type queuing out-q3

queue-limit percent 1

class type queuing out-q-default

queue-limit percent 82

bandwidth remaining percent 25

優先順序隊列是「priority」，隊列限製為16%。預設隊列的隊列限製為82%，具有預設頻寬剩餘權重。未使用的其他隊列分配了1%的隊列限制。請注意，q4、q5和q6不在預設隊列策略中表示，因此，在硬體中程式設計的隊列限制和頻寬權重會更小。

建立自定義隊列策略

要建立自定義隊列策略，請完成以下步驟：

1. 建立具有所需隊列限制和頻寬分配的自定義隊列策略。

2. 修改全域性隊列類對映以建立所需的CoS到隊列對映。

3. 將新的隊列策略應用到相應的介面。

考慮具有1p7q4t隊列體系結構的M132模組的示例，其中所有8個CoS值都對映到單獨的隊列。輸出顯示了自定義隊列策略以及對全域性隊列類對映的更改：

policy-map type queuing 10G_POLICY

class type queuing 1p7q4t-out-pq1

priority level 1

queue-limit percent 10

class type queuing 1p7q4t-out-q2

queue-limit percent 10

bandwidth remaining percent 10

class type queuing 1p7q4t-out-q3

queue-limit percent 5

bandwidth remaining percent 5

class type queuing 1p7q4t-out-q4

queue-limit percent 5

bandwidth remaining percent 5

class type queuing 1p7q4t-out-q5

queue-limit percent 10

bandwidth remaining percent 20

class type queuing 1p7q4t-out-q6

queue-limit percent 5

bandwidth remaining percent 10

class type queuing 1p7q4t-out-q7

queue-limit percent 5

bandwidth remaining percent 10

class type queuing 1p7q4t-out-q-default

queue-limit percent 50

bandwidth remaining percent 40

! voice

class-map type queuing match-any 1p7q4t-out-pq1

match cos 5

! scavenger

class-map type queuing match-any 1p7q4t-out-q2

match cos 1

! transactional

class-map type queuing match-any 1p7q4t-out-q3

match cos 2

! call signaling

class-map type queuing match-any 1p7q4t-out-q4

match cos 3

! video

class-map type queuing match-any 1p7q4t-out-q5

match cos 4

! routing

class-map type queuing match-any 1p7q4t-out-q6

match cos 6

! management

class-map type queuing match-any 1p7q4t-out-q7

match cos 7

! best effort

class-map type queuing match-any 1p7q4t-out-q-default

match cos 0

最後一步是將自定義隊列策略應用到每個1p7q4t介面：

interface Ethernet8/1

service-policy type queuing output 10G_POLICY

注意事項

預設隊列策略假設CoS 0-4對映到預設隊列，CoS 5-7對映到優先順序隊列。因此，隊列q3、q4、q5、q6和q7的隊列限制極小。可以輸入show queuing interface命令來驗證硬體中配置和應用的當前隊列大小和頻寬。

請考慮上一節中的示例策略，其中每個CoS值對映到特定隊列。在示例的末尾，自定義隊列策略應用到Eth8/1。此外，假定還有另一個1p7q4t介面(Eth6/1)，該介面保留有預設隊列策略：

N7k# show queuing interface e6/1

<some output omitted>

Configured queue-limit ratios

queue-limit ratios:     78[1p7q4t-out-q-default] 1[1p7q4t-out-q2] 1[1p7q4t-out-q3]

*1[1p7q4t-out-q4] *1[1p7q4t-out-q5] *1[1p7q4t-out-q6] *1[1p7q4t-out-q7] 16[1p7q4t-out-pq1]

* means unused queue with mandatory minimum queue-limit

Thresholds:

COS   Queue                      Threshold Type     Min    Max

______________________________________________________________

0    1p7q4t-out-q-default           DT             100    100

1    1p7q4t-out-q2                  DT             100    100

2    1p7q4t-out-q3                  DT             100    100

3    1p7q4t-out-q4                  DT             100    100

4    1p7q4t-out-q5                  DT             100    100

5    1p7q4t-out-pq1                 DT             100    100

6    1p7q4t-out-q6                  DT             100    100

7    1p7q4t-out-q7                  DT             100    100

從上面的輸出中，您可以看到隊列q2和q3的隊列限製為1%，而隊列4、q5、q6和q7的隊列限製為*1%，這是最小強制隊列限制（換句話說，顯著小於1%）。 此外，您可以看到CoS值1-4和6-7利用了這些非常小的隊列。小隊列大小會很快導致輸出丟棄並會降低網路效能。如果預設流量CoS 0對映到這些小隊列之一，則情況會進一步惡化。

總之，如果您建立自定義隊列策略並更改全域性隊列類對映，將自定義隊列策略應用於機箱中共用相同隊列型別的所有介面至關重要。

此外，以下列出一些有用的捨棄指令：

- show policy-map interface ex/y

- show system internal queueing stat interface ex/y

相關資訊

- Cisco Nexus 7000系列NX-OS服務品質配置指南5.x版

- 技術支援與文件 - Cisco Systems