◆ QoS Pre-Classify(QoS 事前分類)とは
QoS pre-classifyは、インターフェース上でのトンネリングや暗号化と合わせて、Cisco IOSのQoSサービス
を実現するための技術です。パケットが、トンネルまたは暗号化ヘッダによりカプセル化されている場合は、
QoS機能により元のパケットヘッダーを検査したり、正しくパケットを分類することができなくなりますが、
qos pre-classifyコマンドを設定することで、パケットが暗号化されてトンネリングされる前に、パケットの
分類と適切なQoSサービスを適用することができます。※ 暗号化とQoSのW実装はかなりの負荷となります。
◆ QoS Pre-Classifyの動作
QoS Pre-Classifyはトンネルインターフェース用に設計された機能です。QoS Pre-Classifyを有効化すると、
アウトプットインターフェース上でのパケットの暗号化前にパケットの分類をします。QoS Pre-Classifyでは
パケットの分類はオリジナルの送信元IPアドレス、宛先IPアドレス、ポート番号などに基づくことができます。
より詳細に解説すると、qos pre-classifyコマンドが設定されたCiscoルータのトンネルインターフェースでは
Ciscoルータは、暗号化やトンネリング前にオリジナルIPヘッダのコピーを作成して、その情報にもとづいて
パケットを分類します。なお、パケット分類をIPプレシデンスやDSCP値に基づき行う場合はqos pre-classify
の設定は必要ありません。なぜならCiscoルータのデフォルト動作として、ToSバイトの情報などは外部ヘッダ
にコピーされるからです。
If the classification policy matches on the ToS byte, it is not necessary
to use the qos pre-classify
command, because the ToS value is copied to the outer IP header by default.
◆ QoS Pre-Classifyの設定
QoS Pre-Classifyがサポートしている主なトンネルインターフェースには、GRE、L2TP、IPsecなどがあり
これらのトンネルインターフェース、またはcrypto map上で以下のように1行だけ設定します。
◆ GRE トンネルインターフェースにおける設定
(config)# interface Tunnel0
(config-if)# qos pre-classify
◆ L2TP トンネルインターフェースにおける設定
(config)# interface virtual-template1
(config-if)# qos pre-classify
◆ IPsec トンネルにおける設定
(config)# crypto map name ipsec-isakmp
(config-crypto-map)# qos pre-classify
◆ QoS Pre-Classifyの設定例
設定例といっても、qos pre-classifyコマンドの1行を必要な部分に設定しているだけとなります。
IKE phase1の設定やルーティング設定などは省略しています。コンフィグレーションサンプルでは、
どの部分にqos pre-classifyコマンドが設定されているのかを確認しましょう。
Cisco(config) # access-list 101 permit gre host 2.2.2.2 host 1.1.1.1
Cisco(config) # class-map match-any C-BRANCH02
Cisco(config-cmap) # match access-group 101
Cisco(config) # policy-map P-RULE01
Cisco(config-pmap) # class C-BRANCH02
Cisco(config-pmap-c) # police 2560000
Cisco(config)# crypto map M-IPSEC 1 ipsec-isakmp
Cisco(config-crypto-map)# set peer 1.1.1.1
Cisco(config-crypto-map)# set transform-set IPSEC
Cisco(config-crypto-map)# match address 101
Cisco(config-crypto-map)# qos pre-classify
Cisco(config) # interface Tunnnel0
Cisco(config-if) # ip address 10.2.2.2 255.255.255.0
Cisco(config-if) # tunnel source GigabitEthernet0/0
Cisco(config-if) # tunnel destination 1.1.1.1
Cisco(config-if) # crypto map M-IPSEC
Cisco(config-if) # qos pre-classify
Cisco(config) # interface GigabitEthernet0/0
Cisco(config-if) # ip address 2.2.2.2 255.255.255.255
Cisco(config-if) # service-policy output P-RULE01
Cisco(config-if) # crypto map M-IPSEC
|
|