内容

概要

前提条件

要件

使用するコンポーネント

問題：一方向でのQOSのDSCP値の変更

トポロジ

トラブルシュート

設定の確認

ステップ 1：L2VPN設定を確認します。

ステップ 2：インターフェイス設定を確認します。

ステップ 3：サービスポリシー設定を確認します。

ラボでのテストシナリオの再作成

解決方法

概要

このドキュメントでは、Ciscoアグリゲーションサービスルータ(ASR)9000でQuality of Service(QOS)ポリシーの継承をトラブルシューティングする方法について説明します。物理ポートの入力ポリシー設定にDiffServコードポイント(DSCP)マーキングがある場合のルータの動作を示します。このポリシーは、その物理ポートの下にあるすべてのレイヤ2およびレイヤ3サブインターフェイスに適用されます。

前提条件

要件

次の項目に関する知識があることが推奨されます。

- ASR9000でのレイヤ2バーチャルプライベートネットワーク(L2VPN)およびイーサネットサービスの設定

Cisco ASR 9000シリーズアグリゲーションサービスルータL2VPNおよびイーサネットサービスコンフィギュレーションガイド

- ASR9000のQuality of Service(QoS)設定

Cisco ASR 9000シリーズアグリゲーションサービスルータモジュラQoS設定ガイド

使用するコンポーネント

このドキュメントの情報は、Cisco ASR9000シリーズに基づくものです。

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期（デフォルト）設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。

問題：一方向でのQOSのDSCP値の変更

パケットは一方向に再マーキングされます。Cisco ASR 9000上のポイントツーポイントレイヤ2(L2)接続を通過する際のQOSに新しいDifferentiated Services Code Point(DSCP)値が表示されます。L2接続は、MPLSネットワークを介して実装される疑似配線を介して設定されます。 このシナリオに関連するサブインターフェイスのDSCP値を変更する特別な設定はありません。元のパケットはユーザAから送信され、CS4としてDSCP値がマークされます。ただし、user-Bが受信したパケットは、AF41として設定されたDSCP値を示します。この問題は一方向、つまりAからBの方向でのみ発生します。

トポロジ

トラブルシュート

トラフィックはL2VPN接続を通過するため、ネットワーク内でDSCPの注釈が発生する場所を特定する必要があります。

パケットキャプチャは、DSCP値が変更された場所と方向を確認する方法の1つです。このシナリオでは、トラフィックは両方向からキャプチャされます。 ASR01からASR02への一方向で発生する問題を確認できます。 DSCP値は、ASR02に到達するとすぐに変更されます。パケットキャプチャは、ASR01ルータを離れた後にDSCP値が変更されたことを確認します。

『Cisco ASR 9000シリーズアグリゲーションサービスルータモジュラQuality of Service(QoS)コンフィギュレーションガイド』に従って、アクセスコントロールリスト(ACL)、プロトコルの一致、IP優先順位、DSCP、IPパケットのMultiprotocol Label Switching(MPLS)experimental bits(EXP)フィールド、またはClass of Service(CoS)など、1台のルータ内のトラフィックフローを識別するためのいくつかの方法が実行されます。

トラフィックをマーキングするには、IP Type of Service(ToS)バイトにIP PrecedenceまたはDSCPビットを設定します。

設定の確認

根本的な原因を見つけるには、設定を確認します。

ステップ 1：L2VPN設定を確認します。

ASR01- Config:

==============

l2vpn

router-id 172.16.0.1

pw-class TEST

encapsulation mpls

protocol ldp

!

bridge group DSCP-TEST

bridge-domain DSCP-TEST

mtu 9216

interface Bundle-Ether100.2048

!

vfi DSCP-TEST

neighbor 172.16.0.2 pw-id 2048

pw-class TEST

!

ASR02- Config:

============

l2vpn

router-id 172.16.0.2

pw-class TEST

encapsulation mpls

protocol ldp

!

bridge group DSCP-TEST

bridge-domain DSCP-TEST

mtu 9216

interface GigabitEthernet0/2/0/30.2048

!

vfi DSCP-TEST

neighbor 172.16.0.1 pw-id 2048

pw-class TEST

ステップ 2：インターフェイス設定を確認します。

バンドルインターフェイス100には入力サービスポリシーが設定されており、このポリシーはエンドユーザに接続され、異なるL2VPNサービスに対して複数のトラフィックを伝送します。トラフィックを区別するには、サブインターフェイスを設定し、トラフィックのタイプごとに固有のVLANを使用します。

ASR01- Interface Configuration:

================================

RP/0/RSP0/CPU0:ASR1# show running-config interface gigabitEthernet 0/1/0/4

Thu Jun 1 13:17:37.642 AEST

interface GigabitEthernet0/1/0/4

description "TO User-A-TEST"

bundle id 100 mode active

mtu 9192

!

RP/0/RSP0/CPU0:ASR1# show running-config interface Bundle-Ether100.2048

Thu Jun 1 13:17:43.438 AEST

interface Bundle-Ether100.2048 l2transport

encapsulation dot1q 2048 second-dot1q any

mtu 9216

!

RP/0/RSP0/CPU0:ASR1# show running-config interface gigabitEthernet 0/1/0/4.2048

Thu Jun 1 13:17:43.438 AEST

interface GigabitEthernet0/1/0/4.2048 l2transport

encapsulation dot1q 2048 second-dot1q any

mtu 9216

!

RP/0/RSP0/CPU0:ASR1# show running-config interface Bundle-Ether100

Thu Jun 1 13:20:43.438 AEST

interface Bundle-Ether100

description "To User-A"

mtu 9216

service-policy input INPUT   <<< ========================

service-policy output OUTPUT

bundle maximum-active links 1

ASR02: Interface Configuration:

============================

RP/0/RSP0/CPU0:ASR2#show running-config interface gigabitEthernet 0/2/0/30.2048

Thu Jun 1 15:25:06.742 AEST

interface GigabitEthernet0/2/0/30.2048 l2transport

encapsulation dot1q any

rewrite ingress tag push dot1q 2048 symmetric

mtu 9216

monitor-session span ethernet

!

RP/0/RSP0/CPU0:ASR2#show running-config interface gigabitEthernet 0/2/0/30

Thu Jun 1 15:25:00.516 AEST

interface GigabitEthernet0/2/0/30

description "To User-B"

mtu 9216

monitor-session span ethernet

speed 1000

transceiver permit pid all

!

ステップ 3：サービスポリシー設定を確認します。

この設定は、CS4としてマークされたパケットに一致し、AF41に注釈を付けるビデオトラフィック用のポリシーマップがあることを示しています。

さらに、このポリシーは、異なるVLANタグを持つ別のL2VPNサービスに対して設定されます。ただし、この条件はメインバンドルインターフェイスに適用され、この条件を満たすすべての入力トラフィックに影響します。

policy-map INPUT

class CS4

set dscp af41

!

class-map match-any CS4

description Video Traffic

match cos 4

end-class-map

!

policy-map OUTPUT

class DSCP

set cos 4

priority level 2

police rate percent 33

conform-action transmit

exceed-action drop

!

class-map match-any DSCP

description Video Traffic

match dscp af41

end-class-map

ラボでのテストシナリオの再作成

ラボで同じシナリオを再作成し、このサービスポリシー設定が着信トラフィックのDSCP値にどのように影響するかを確認できます。

ステップ 1：サービスポリシーを使用せずに同様のシナリオを設定し、宛先でパケットをキャプチャします。

DSCP値は着信トラフィックに対してCS4に設定され、宛先では同じままです。

Ethernet II, Src: XeroxCor_00:0a:00 (00:00:01:00:0a:00), Dst: CiscoInc_e2:05:be (18:ef:63:e2:05:be)

Destination: CiscoInc_e2:05:be (18:ef:63:e2:05:be)

Source: XeroxCor_00:0a:00 (00:00:01:00:0a:00)

Type: IPv6 (0x86dd)

Internet Protocol Version 6, Src: 2020::1, Dst: 2020::2

0110 .... = Version: 6

.... 1000 0000 .... .... .... .... .... = Traffic class: 0x80 (DSCP: CS4, ECN: Not-ECT) << ============

.... .... .... 0000 0000 0000 0000 0000 = Flow label: 0x00000

Payload length: 20

ステップ 2：トラフィックジェネレータに接続されたインターフェイスの入力方向に同じサービスポリシーを適用します。

ステップ 3： 2種類のトラフィックを生成します。1つはDSCP値がCS4に設定され、もう1つは他のDSCP値に設定されています。

ASR02の後でキャプチャされたパケットは次を示します。

着信トラフィックのDSCP値がCS4に設定されている場合、宛先で受信されたパケットにはDSCP値としてAF41が表示されます。ただし、サービスポリシーの基準に一致しない他のDSCP値を設定した場合、パケットのDSCP値は宛先に到達しても同じままになります。

Ethernet II, Src: XeroxCor_00:0a:00 (00:00:01:00:0a:00), Dst: CiscoInc_e2:05:be (18:ef:63:e2:05:be)

Destination: CiscoInc_e2:05:be (18:ef:63:e2:05:be)

Source: XeroxCor_00:0a:00 (00:00:01:00:0a:00)

Type: IPv6 (0x86dd)

Internet Protocol Version 6, Src: 2020::1, Dst: 2020::2

0110 .... = Version: 6

.... 1000 1000 .... .... .... .... .... = Traffic class: 0x88 (DSCP: AF41, ECN: Not-ECT) << ============

.... .... .... 0000 0000 0000 0000 0000 = Flow label: 0x00000

Payload length: 20

解決方法

ASR01デバイスのバンドルインターフェイス（バンドル100）で設定された入力サービスポリシーは、基準に一致するパケットのDSCP値を書き換えます。CS4値を検索し、AF41で再マーキングします。したがって、この問題を解決するには、入力サービスポリシーを削除する必要があります。

ポリシーの継承については、『モジュラQoSサービスパケット分類の設定』ドキュメントで説明されています。ポリシーマップが物理ポートに適用されると、その物理ポートの下にあるすべてのレイヤ2およびレイヤ3サブインターフェイスにポリシーが適用されます。

これは、ASR 9000のデフォルトのマーキング動作です。

VLANタグまたはMPLSラベルが入力または出力インターフェイスに追加されると、CoSおよびEXPのデフォルト値がそれらのタグおよびラベルに移動します。その後、ポリシーマップに基づいてデフォルト値を上書きできます。CoSおよびEXPのデフォルト値は、システムへの入力時にパケット内の信頼できるフィールドに基づきます。ルータは、パケットタイプと入力インターフェイスの転送タイプ（レイヤ2またはレイヤ3）に基づいて、特定のフィールドの暗黙的な信頼を実装します。

デフォルトでは、ルータはポリシーマップが設定されていない場合、IP優先順位またはDSCPを変更しません。

ルータのデフォルトの動作は次のとおりです。

- xconnectやbridge-domainなどの入力または出力レイヤ2インターフェイスでは、入力インターフェイスに追加されるすべてのフィールドに対して最も外側のCoS値が使用されます。レイヤ2の書き換えのために追加されるVLANタグがある場合、着信する最も外側のCoS値が新しいVLANタグに使用されます。MPLSラベルが追加されると、MPLSタグのEXPビットにCoS値が使用されます。

- 入力または出力レイヤ3インターフェイス（IPv4またはIPv6パケット用に重み付けされたルーテッドまたはラベル）では、3つのDSCPビットと優先順位ビットが着信パケットで識別されます。MPLSパケットでは、EXPビットの最も外側のラベルが識別され、この値は入力インターフェイスで追加される新しいフィールドに使用されます。MPLSラベルが追加されると、新しく追加されたMPLSタグのEXPビットに、識別された優先順位、DSCP、またはMPLS EXP値が使用されます。