Solaris Bandwidth Manager は、次のような方法で TOS バイトを使用します。
フィルタ内で、分類の基準として使用する
クラス内で、TOS バイトをどのように上書きする必要があるかを定義するのに使用する
1000 |
最小遅延 |
0100 |
最大スループット |
0010 |
最大信頼性 |
0001 |
金銭的な最小コスト |
0000 |
通常サービス |
フィルタ内の分類基準は、tos_match パラメータと tos_match_mask パラメータで定義されます。tos_match_mask は、TOS バイトのどのビットをチェックする必要があるかを定義するビットマスクです。tos_match はチェックする値です。
たとえば、TOS フィールドで「最小遅延」ビットが設定されていて「金銭的な最小コスト」ビットが設定されていない (つまり、xxx 1xx0x である) すべてのパケットをフィルタにかけるには、tos_match_mask を 000 1001 0 (0x12) に設定し、tos_match を 000 1000 0 (0x10) に設定する必要があります。
クラス内では、tos_mark_mask パラメータと tos_mark パラメータが使用されます。tos_mark_mask は、TOS バイトのどのビットを変更するかを定義するビットマスクです。tos_mark は適用する値です。