目錄

簡介

必要條件

需求

採用元件

慣例

GRE概述

適用於GRE通道的Cisco QoS

調節

管制

擁塞規避

qos pre-classify命令

針對QoS策略描述流量特徵

在哪裡應用服務策略？

多點通道介面

已知的問題

相關資訊

簡介

本檔案將檢視使用通用路由封裝(GRE)可在通道介面上設定哪些服務品質(QoS)功能。 使用IP安全(IPsec)設定的通道不在本檔案的範圍之內。

必要條件

需求

本文件沒有特定需求。

採用元件

本文件所述內容不限於特定軟體和硬體版本。

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

慣例

如需文件慣例的詳細資訊，請參閱思科技術提示慣例。

GRE概述

在瞭解GRE通道的QoS之前，首先需要瞭解通道化封包的格式。

通道介面是執行Cisco IOS®軟體的路由器上的虛擬或邏輯介面。它通過IP網際網路在遠端點建立兩個Cisco路由器之間的虛擬點對點鏈路。

GRE是IOS支援的封裝通訊協定，並在RFC 1702 中定義。通道通訊協定封裝傳輸通訊協定中的封包。

通道介面支援下列各項的標頭：

- 乘客通訊協定或封裝通訊協定，例如IP、AppleTalk、DECnet或IPX。

- 載體通訊協定（此案例為GRE）。

- 傳輸通訊協定（在此情況下僅限IP）。

通道封包的格式如下圖所示：

有關配置GRE通道的詳細資訊，請參閱配置邏輯介面。

適用於GRE通道的Cisco QoS

通道介面支援許多與物理介面相同的QoS功能。以下各節介紹支援的QoS功能。

調節

Cisco IOS軟體版本12.0(7)T引入對直接在通道介面上應用通用流量調節(GTS)的支援。以下示例配置將隧道介面整形為總輸出速率500 kbps。如需詳細資訊，請參閱設定通用流量調節。

interface Tunnel0

ip address 130.1.2.1 255.255.255.0

traffic-shape rate 500000 125000 125000 1000

tunnel source 10.1.1.1

tunnel destination 10.2.2.2

Cisco IOS軟體版本12.1(2)T新增了對使用模組化QoS指令行介面(MQC)的類別型調節的支援。 以下示例配置顯示如何使用MQC命令將相同的整形策略應用到隧道介面。如需詳細資訊，請參閱設定類別型調節。

policy-map tunnel

class class-default

shape average 500000 125000 125000

interface Tunnel0

ip address 130.1.2.1 255.255.255.0

service-policy output tunnel

tunnel source 130.1.35.1

tunnel destination 130.1.35.2

管制

當介面變得擁塞並且資料包開始排隊時，可以將排隊方法應用於等待傳輸的資料包。Cisco IOS邏輯介面本身不支援擁塞狀態，也不支援應用排隊方法的服務策略的直接應用。相反，您需要應用分層策略，如下所示：

1. 建立配置排隊機制的「子」或較低級別的策略，例如使用priority命令進行低延遲隊列，以及使用bandwidth命令進行基於類的加權公平隊列(CBWFQ)。有關詳細資訊，請參閱擁塞管理。

policy-map child

class voice

priority 512

2. 建立應用基於類的整形的「父級」或頂級策略。將子策略應用為父策略下的命令，因為子類的准入控制是基於父類的整形速率完成的。

policy-map tunnel

class class-default

shape average 2000000

service-policy child

3. 將父策略應用於隧道介面。

interface tunnel0

service-policy tunnel

當使用應用排隊而不進行整形的服務策略配置隧道介面時，路由器將列印此日誌消息。

router(config)# interface tunnel1

router(config-if)# service-policy output child

Class Based Weighted Fair Queueing not supported on this interface

通道介面也支援類別型管制，但不支援承諾存取速率(CAR)。

注意：7500上的隧道介面不支援服務策略。

擁塞規避

Cisco IOS軟體版本11.3T引入了GRE通道標籤和DSCP或IP優先順序值，此指令將路由器設定為將ToS位元組的IP優先順序位值複製到封裝內部封包的通道或GRE IP標頭。以前，這些位設定為零。通道端點之間的中間路由器可以使用IP優先順序值來為QoS功能(例如原則路由、WFQ和加權隨機早期偵測(WRED))對封包進行分類。

qos pre-classify命令

當封包以通道或加密標頭封裝時，QoS功能無法檢查原始封包標頭並正確分類封包。通過相同通道傳輸的資料包具有相同的通道標頭，因此如果實體介面擁塞，則會以相同方式處理封包。隨著虛擬私人網路(VPN)服務品質功能的引入，現在可以在進行通道和加密之前對封包進行分類。

在本例中， tunnel0是隧道名稱。qos pre-classify命令在tunnel0上啟用VPN的QoS功能：

Router(config)# interface tunnel0

Router(config-if)# qos pre-classify

附註：  qos pre-classify命令可用於根據IP優先順序或DSCP以外的值對流量進行分類。例如，您可能希望根據IP流或第3層資訊（例如源和目標IP地址）對資料包進行分類，可使用此命令。只有當您對IP、通訊協定或連線埠上的流量進行分類時，才需要qos pre-classify命令。如果分類基於DSCP代碼，則不需要qos預分類。

針對QoS策略描述流量特徵

設定服務原則時，您首先可能需要對穿越通道的流量進行特徵化。Cisco IOS在邏輯介面（如隧道）上支援Netflow和IP Cisco Express Forwarding(CEF)記帳。有關詳細資訊，請參閱NetFlow服務解決方案指南。

在哪裡應用服務策略？

您可以將服務策略應用於隧道介面或底層物理介面。策略應用位置的確定取決於QoS目標。它還取決於您需要使用哪個報頭進行分類。

- 當您想要根據預先通道標頭對封包進行分類時，請將此原則套用到通道介面，而不使用qos-preclassify。

- 當您希望根據後隧道報頭對資料包進行分類時，請將此策略應用於物理介面，而不使用qos-preclassify。此外，當您要整形或管制屬於隧道的所有流量時，請將策略應用到物理介面，並且物理介面支援多個隧道。

- 當您想要根據預隧道報頭對資料包進行分類時，請將策略應用於物理介面並在隧道介面上啟用qos-preclassify。

多點通道介面

多點介面上不支援CBWFQ內部基於類的整形。思科錯誤ID CSCds87191將路由器配置為在拒絕策略時顯示錯誤消息。

已知的問題

在極少數情況下，應用使用shape命令配置的服務策略會導致高CPU利用率和對齊錯誤。CPU負載是由記錄對齊錯誤引起的，而對齊錯誤又是由CEF錯誤設定輸出介面和鄰接重寫資訊引起的。此問題僅影響非RSP平台（低端）和使用基於粒子的CEF交換的平台，並可以通過思科錯誤ID CSCdu4504和CSCuk30302解決。您還可以考慮以下解決方法：

- 用通道模式ipip替換GRE封裝。

- 將shape命令替換為police命令。

- 在支援隧道的物理介面上配置整形。

相關資訊

- 虛擬私人網路的服務品質

- 設定使用纜線的GRE通道

- QoS技術支援

- 使用OSPF配置通過IPSec的GRE隧道

- 技術支援與文件 - Cisco Systems