スロットリング・オプション

BigFix には、異なるコンポーネントが相互にトラフィックをスロットリングする方法を制御する設定が多数あります。スロットリングは常に特定のコンポーネントに対して行われ、中にはスロットリングを使用できないコンポーネントもあります。

スロットリングされるコンポーネント

スロットリングされるコンポーネントとは、リレー、サーバー、Web レポートの wwwrootbes ディレクトリーから直接ダウンロードされるファイルです。アクションのためにダウンロードされるファイル (パッチ、サービス・パックなど) はこの方法でダウンロードされます。Fixlet サイトのコンテンツも、収集インタラクション中にこの方法でダウンロードされます (ただし、サイト・ディレクトリー・リストは別個にダウンロードされます)。

スロットリングされないコンポーネント

ただし、クライアント登録には多数の「スロットリングに似た」機能があります。生成されるダウンストリーム UDP トラフィックの量をリレー/サーバー側でレート制限したり、クライアント登録の頻度をクライアント側で減らしたり、リレー選択中に生成される ICMP トラフィックの量をクライアント側でレート制限することができます。クライアント登録は帯域幅を多く消費するわけではありませんが、負荷が高くなる可能性があります。ダウンロード要求プラグイン、ステータス・レポート・プラグイン、「Web レポート」プラグインなどです。クライアントにとって、このトラフィックはごくわずかであると予想されます。しかし、ダウンロード・ステータス・レポートのようなものは、コンソールとルート・サーバーの間に多数のトラフィックを発生させ、こうしたトラフィックはスロットリングできません。クライアントがリレーに「サイト X の最新のコンテンツを教えてください」 (「GatherActionMV コマンドを受信しました。バージョンの差異を収集しています」と記録されます) と尋ねた場合、この対話はスロットリングされません。リレーの応答は一般に小規模です (0 ~ 40k)。どうしても必要な場合は、クライアントで収集間隔をあけて、この情報の取得頻度を減らすことができますが、このトラフィックはたいていはごくわずかです。

アップストリームへ向かうトラフィックの量を制御するために、「PostResults」インターフェースを使用して実行できることもあります。最も基本的な「スロットリング」メカニズムは、クライアント上で単に最小レポート間隔を大きくするか、ハートビート間隔を長くすることです。「ResultSizeLimit」および「ResultTimeLimit」リレー設定の組み合わせを使用して、リレーが送信できるトラフィックの量に対して大まかな制限を設定することもできます。ただし、これを行う前にカスタマー・サポートに確認する必要があります。期待する動作が得られる可能性はほとんどありません。結果の送信にはクライアントの登録よりも多くの帯域幅が必要になりますが、それでもコンポーネントのダウンロードやアップロードで使用される帯域幅の量よりはずっと少量です。ほとんどのデプロイメントでは、トラフィックの量はごくわずかです。

スロットリングの最小転送レート

スロットリングされた通信の間、BigFix クライアントはデータのチャンクを送信した後、必要以上に待機してから、次のチャンクを送信します。BigFix クライアントは、チャンクごとにデータ量と待機時間を変えることができます。チャンク当たりのデータ量を小さくして、チャンク間のデータ量を最大化することで、スロットリングの最小転送レートが設定されます。

実際のスロットリング作業は BigFix リレー・コンポーネントが行うため、BigFix をアップグレードして最小スロットリング・レートを変更する必要がある場合は、BigFix リレーと BigFix クライアントを新しいバージョンにアップグレードすることが重要です。

有効な最小スロットリング・レートは 100 バイト/秒です。

スロットリング設定はすべて BPS (バイト/秒) または KBPS で指定されます。上記の有効な最小値が指定されているため、スロットリング・レートを有効な最小値よりも低く設定しても、その値にはならず、有効な最小値になるだけです。また、有効な最小値は 1 KBPS 未満ですが、KBPS スロットリング設定に設定できる最小値は 1 のみであるため、有効な最小値には到達できません。すなわち、有効な最小レートは、設定によって制御される場合もあれば、クライアントのスロットリング制限によって制御される場合もあります。

チャンク・サイズの指定に使用される設定は、次のとおりです。

_BESClient_UploadManager_ChunkSize

値はバイトで指定されます (デフォルト: 131072。これは 128 KB に相当します)。

「0」は、アップロードが 1 つのチャンクで行われることを示します。

このコンピューターとアップストリーム・コンピューターとの間で値の不一致が生じた場合、チャンクのサイズは 2 つのうち小さい方の値に設定されます。

_BESRelay_UploadManager_ChunkSize

値はバイトで指定されます (デフォルト: 131072。これは 128 KB に相当します)。

「0」は、アップロードが 1 つのチャンクで行われることを示します。

このコンピューターとアップストリーム・コンピューターとの間で値の不一致が生じた場合、チャンクのサイズは 2 つのうち小さい方の値に設定されます。

アップロードのスロットリング

「アップグレード・マネージャー」によって生成されるアップロードは、クライアント側またはリレー/サーバー側からスロットリングできます。このコンポーネントでは、静的スロットリングのみをサポートします。着信接続に対して全体的なスロットリングを設定する「PostFile」設定と、発信接続に対してスロットリングを設定する「UploadManager」設定があります (1 度に 1 つの発信接続しかありません)。両方とも設定されている場合、子は 2 つの値のうち小さい方を使用する必要があります。

_BESRelay_PostFile_ThrottleKBPS

「0」は「制限なし」を意味します (デフォルト: 0)

この設定は、PostFile スロットリングには不十分で、この設定を機能させるには、クライアントで _BESClient_UploadManager_ThrottleKBPS を 0 以外の値に設定する必要があります。制限は 2 つの値のうち小さい方になります。

アップロード・インタラクションの開始時に、PostFilePlugIn はこの数値をリレーで現在進行中のアップロード数合計で割って、結果を子に送信します。子は、結果である制限を順守する必要があります。

サーバーとリレーで同じ設定

_BESRelay_UploadManager_ThrottleKBPS

デフォルト: 0

リレーにのみ関係があります (サーバーにはアップロード先がありません。ただし、DSA はある時点でこれを変更する可能性があります)

リレーがファイルを親にアップロードする際、リレーは自身をこのレートに制限します。インタラクションをチャンクに分割し、チャンクごとに接続を行って、間に待機時間を入れることで、制限を設定します (これは、インタラクションの間ずっと 1 つの接続を保持するダウンロードのスロットリングとは対照的です)。

「0」は「制限なし」を意味します

_BESClient_UploadManager_ThrottleKBPS

デフォルト: 0

クライアントにのみ関係があります

クライアントがファイルを親にアップロードする際、クライアントは自身をこのレートに制限します。インタラクションをチャンクに分割し、チャンクごとに接続を行って、間に待機時間を入れることで、制限を設定します (これは、インタラクションの間ずっと 1 つの接続を保持するダウンロードのスロットリングとは対照的です)。

「0」は「制限なし」を意味します

「Upload Manager」を使用してエンドポイントからアップロードされるファイルです。

ダウンロードのスロットリング設定の 2 つの主軸

「サーバー側」または「クライアント側」

サーバー側のスロットリング (サーバー/リレー/Web レポート) は、接続しているすべての子の間で共有される帯域幅の量として表されます。

クライアント側のスロットリング (クライアント/リレー) は、1 つのアップストリーム接続で使用される帯域幅の量として表されます。クライアントが複数の同時アップストリーム接続を使用している場合、クライアントはもっと多くの帯域幅を使用する可能性があります。

静的または動的

サーバー側およびクライアント側のスロットリングが有効な場合、BigFix コンポーネントは計算された帯域幅制限のうち低い方の値を使用します。動的および静的スロットリングの両方が有効な場合、静的スロットリング設定の代わりに動的スロットリング設定が使用されます。

サーバー側の静的スロットリングは、BigFix 以外のコンポーネント (Web ブラウザーなど) に影響を与える可能性のある唯一のスロットリング・タイプです。