パート3: ソケット トラフィックの優先順位付けとQOS

この記事では、CatoのQOSエンジンがどのように動作するかを説明し、ネットワーク帯域幅の利用率を大幅に向上させ、ネットワークのパフォーマンスを最適化するのに役立ちます。

Cato QoSによる帯域幅管理

Cato管理アプリケーションで、各種トラフィックタイプのQOS優先順位を設定するために帯域幅管理プロファイルを使用します。 各プロファイルには、QOS優先度とトラフィック帯域幅の制限値の両方が含まれています。 その後、帯域幅管理プロファイルをネットワークルールに割り当て、特定のトラフィックタイプに優先順位を付けることができます。

優先度の値は2から255の間で設定でき、0と1はCatoの管理トラフィック用に予約されており、255は最も低い優先順位として予約されています。 帯域幅プロファイルを優先順位P10で設定した場合、一致するトラフィックは優先順位P20のトラフィックよりも高い優先順位を持ちます。 異なるアプリケーションに異なる優先度を付与することで、このトラフィックタイプに必要なパフォーマンスを達成できます。 より重要なトラフィックタイプには、より低い優先度値を付けることをお勧めします。 例えば、もしVoIPトラフィックがアカウントにとってリモートデスクトッププロトコルより重要であれば、VoIPネットワークルールにリモートデスクトッププロトコルルールより高い優先度を割り当ててください。

注意: アカウントにリモートポートフォワーディング (RPF) を設定した場合、RPFトラフィックには自動的に最も低い優先順位である255が割り当てられます。 RPFについての詳細は、アカウントのリモートポートフォワーディングの設定を参照してください。

Catoが帯域幅管理ポリシーに基づいてトラフィックを送信する方法

Cato Networks は、標準のトラフィック整形技術を使用して、アップロード および ダウンロード の平均レートを制御することでネットワークパフォーマンスを最適化します。

次の図は、QOSエンジンが異なるトラフィックタイプにどのように優先順位を割り当てるかを示しています。

mceclip0.png

帯域幅管理アルゴリズムの実装

Cato は、帯域幅とバースト性の制限を測定するためにリッキーバケットアルゴリズムを使用します。 トラフィック整形としてのリッキーバケットの実装は、ネットワーク輻輳などで受信パケットレートが送信パケットレートを上回る際に、パケットがキューに入り、キューが満たされると破棄されることを意味します。 パケットが送信されると、パケットはFIFO(先入れ先出し)順序でキューから削除され、新しいパケットがキューに入ることができます。

内部解析 - トラフィックが優先順位に従ってどのように送信されるか

漏れバケットアルゴリズムはトラフィックの速度を測定し、バケットが満杯になったとき識別します。 それはこれらのメトリックを使用し、バケットを水で満たす例を使用して優先されたトラフィックを送信します:

  • 平均速度 - 実際の帯域幅制限。 バケットから各クロックティックで漏れる水の速度。

  • バースト容量 - バケットサイズ。 パケットを廃棄する前にバケットが運べる全体の水量。

  • バーストレート – トラフィックバースト中にバケットに入れることを許可される水の速度。 バーストレートは制限されず、任意のバーストがバケットに入ることができます。

バケットが満杯でなければ、すべてのパケットが送信されます。 しかし、バケットが満杯の場合、パケットはキューに入れられます。 各優先度には別のキューがあり、パケットは優先度に従って順序(FIFO)で送信されます。 すべてのキューが満杯になると、新しいパケットは廃棄されます。

しかし、大量のパケットを破棄するのを避けるために、カトは加重ランダム早期検出(WRED)を実装します。 TCPトラフィックの場合、カトはACKパケットではなくデータパケットを廃棄して、送信者の輻輳アルゴリズムをトリガーします。 それに応じて、送信者はパケットを送信する速度を減らします。

優先キューからのトラフィック送信方法

ソケットは優先度キューからパケットを2回の反復で送信します:厳しい制限の反復と最良の努力の反復。 トラフィックシェーピングは、まず設定された帯域幅制限に基づいてパケットを送信し、続いて残りのパケットを送信するために最大限の努力をします。 毎1msのティック中に、両方の反復を実行します:

  1. 厳しい制限の反復 – この反復では、より高い優先度からより低い優先度まで各キューを評価する順序です。 各優先度キューに対して、ソケットは設定されたQoS制限に従ってパケットを送信します。 この反復中に、リンクの合計帯域幅制限が超えられると、ソケットはパケットの送信を停止します。

  2. 最良の努力の反復 – 厳しい制限の反復において送信されたパケットが合計帯域幅制限を超えない場合、この反復でソケットは各キューを再評価します。 高い優先度から低い優先度へと進め、残りのパケットを送信します。 目的は総帯域幅制限を超えることなく、リンクの全帯域幅を利用することです。

トラフィックシェーピング反復の例

このセクションでは、カトQoSエンジンがトラフィックキューでパケットを優先順位付けする方法の例を示します。

パケットを含む5つの優先度キュー

qos_queues.png

ソケットはイテレーションを開始する前に、上の図は5つの優先度キューにあるパケットを示しています。

QoS – ハード制限イテレーション

QoS_hard_limits.png

この図は、ハード制限イテレーションである最初のイテレーションを示しています。 P10、P20、P30、P40、最後にP255からスタート。 各キューの利用可能な帯域幅は、P10キューから2パケット、P20から1パケット、P30から1パケット、P40から2パケット、P255キューから1パケットです。

QoS – ベストエフォートイテレーション

qos_best_effort.png

この図は、ベストエフォートイテレーションである2番目のイテレーションを示しています。 このイテレーションでは、P10から3パケット、P20、P30、P40、最後にP255からそれぞれ1パケットが送信されました。 この場合、利用可能なすべての帯域幅が使用され、P255キューのパケットが次のティックに残ります。 次に、新しいパケットがキューに到着し、アルゴリズムが2つのイテレーションを再び実行して残りのパケットを送信します。

この記事は役に立ちましたか?

9人中8人がこの記事が役に立ったと言っています

0件のコメント