※ 本記事は「 Catalyst QoSの仕組み 1(パケットの送出、分類)」の続きの内容となります。
◆ QoSを有効にしたネットワークでのパケットの遷移 - その3(マッピングテーブルの参照)
DSCP値の情報を信頼する場合、Catalystでは以下のアクションを行います。以下はマニュアル通りの
解説ですが、簡単に言うともとのDSCP値が維持されて、そのDSCP値をもとに処理されるということ。
・ パケット内のDSCPと同じDSCP値をそのパケットに割り当て。
・ 任意:DSCP/DSCP変換マップ(デフォルトはNullマップ)を使用してDSCP値を変更。
・ DSCP値を使用してQoSラベルを生成。
Catalystスイッチの内部では、信頼する情報(CoS値、IP Precedence値、DSCP値)に基づいて相互に変換
するための対応表であるマッピングテーブルが存在します。今回の場合、DSCP値を使用して新たなCoS値を
生成しますが、デフォルトのマッピングテーブルに従うと、データパケットの場合はDSCP値は0であること
からCoS値は0となり、音声パケットの場合はDSCP値は 40〜47 の範囲内の値なのでCoS値は 5 となります。
上図だけ見ると、マッピングテーブルを参照した結果のCoS値とDSCP値がもとのパケットのままであり
何か問題は起きるのか、何のためのなのかという疑問が生まれるかもしれません。これらの疑問を解消を
するために、以下の解説で「信頼する情報をCoS値」にした場合どのようになるのか見ていきます。なお
理解しやすくするために、ここでは「内部DSCP値」という言葉を使用せずに、技術解説をしています。
マニュアルでは、内部使用するDSCP値(内部DSCP値)という表現がありますが、確かに内部使用されて
処理されますが、その後もCatalystスイッチから送出されるパケットの優先度情報は書き換わっている点を
見落とさないようにしましょう。
◆ 参考:CoS値を信頼した場合( mls qos trust cos )の動作
上図ではDSCP値を信頼して分類処理を行いマッピングテーブルを参照しましたが、下図ではCoS値を信頼
した場合のパケットの遷移状態を示しています。DSCP値を信頼している場合には「DSCP/CoSマップ」の
マッピングテーブルが参照されますが、CoS値を信頼している場合には「CoS/DSCPマップ」を参照します。
下図の通り、データパケットの場合はCoS値=0に対して導かれるDSCP値は「0」であることから、上図で
解説した通りの優先度情報を持つパケットとなりますが、音声パケットの場合はCoS値=5に対して導かれる
DSCP値は「40」であることから、もとのDSCP値「46」から「40」に書き換わってしまうことになります。
音声パケットなどの最優先処理させるべきパケットは、一般的にDSCP値を「46」として送出すべきですが
CatalystスイッチのデフォルトのCoS/DSCPマップに従うとDSCP値が「40」としてパケットが送出されて
しまうため、上図のような問題を解決するために一般的にCoS/DSCPマップのCoS5に対するDSCP値だけは
設定変更することが一般的です。CoS値を信頼したネットワーク設計である場合、Catalystスイッチの設定
には上記解説を反映した設定が入っているはずです。
そもそもCoS値を信頼(mls qos trust cos)した設定よりも、DSCP値を信頼(mls qos trust dscp)した
設定にすれば良いのではないのか、という疑問が生まれるかもしれませんが、その通りです。ただし、廉価
な機種である場合、DSCP値を信頼する設定が入らない場合があり、その場合はマッピングテーブルを変更
して最適化する必要があります。または、現在ではあまりありませんが、非IPトラフィックが存在するため
CoS値を信頼する必要がある場合や設計上CoSを信頼しなければいけない場合、上記の点に注意しましょう。
|