次の方法で共有


Microsoft Windows Media Load Simulator でサーバーのパフォーマンスをチェックする

Microsoft Corporation
Bill Birney

October 2000

概要

Microsoft® Windows Media Load Simulator バージョン 4.0 は、1~数百の Microsoft® Windows Media Player にコンテンツをストリーム配信した場合の Windows Media サーバーへの影響をシミュレートします。この記事では、Windows Media Load Simulator を使用して、新しい Windows Media サーバー システムをテストし、サーバーをオンラインにした後のパフォーマンスを監視する方法を述べます。テストのセットアップ方法と得られる結果の使用方法を説明します。

Microsoft® Windows Media サービスの最初のテストは、クライアントをサーバーに接続して、コンテンツをストリーム配信できるかどうかを確認することです。コンテンツをストリーム配信できた場合は、サーバーをオンラインにしても、システムが少なくとも最小限のクライアント負荷を処理できると考えることができます。しかし、ある時点で、できれば現実のクライアントを使用せずに、サーバーが現実世界のクライアント負荷をどの程度処理できるかを確かめておくとよいでしょう。

Windows Media Load Simulator バージョン 4.0 は、1 つ以上の Microsoft® Windows Media Player によって Windows Media サーバーに生じる負荷をシミュレートするプログラムです。この記事では、Windows Media Load Simulator を紹介して、このプログラムを使用して Windows Media サーバーのパフォーマンスをテストし、監視する方法を説明します。この記事には、以下のトピックが含まれています。

  • Windows Media Load Simulator の紹介
    • Windows Media Load Simulator の動作
    • 必要システム
  • Windows Media Load Simulator を使用する
    • クライアント プロファイルを調べる
    • テスト用ソース コンテンツを作成する
    • ピーク使用率テストをセットアップする
    • Windows Media Load Simulator を設定する
    • テストを実行する
    • オンライン モニタリングをセットアップする
  • 詳細について

Windows Media Load Simulator は Windows Media 7 Resource Kit Beta 3 Non-MSDN Online link (英語版のみ提供)に含まれており、無償でダウンロードできます。Windows Media Load Simulator の設定の詳細と使用可能なすべての機能の説明については、オンライン ヘルプ マニュアルを参照してください。Microsoft® Windows Media サービス 4.1 for Microsoft® Windows NT® 4.0 Service Pack 4 (SP4) も同じ場所から無償でダウンロードすることができます。セットアップ プログラムには、Windows Media サービスのインストール、設定、および保守についての詳しいオンライン ヘルプ マニュアルが含まれています。

Windows Media Load Simulator の紹介

Windows Media サーバーがコンテンツを配信できるとわかっているだけでは十分ではありません。サーバーを一般公開する前に、サーバーがどの程度の負荷を処理できるかを知っておく必要があります。たとえば、サーバーとサーバー間の接続は、1 秒間に 500 ヒットというバーストを処理できるでしょうか? ディスク アレイは、1 日 24 時間、1 週 7 日間連続で 800 個のオンデマンド ストリームを処理できるでしょうか? サーバーの CPU は、数千個の検索および認証要求と数百個のマルチ ビット レート ストリームを処理できるでしょうか?

1 台以上のクライアント コンピュータで Windows Media Load Simulator を実行することによって、任意の数のクライアント接続をシミュレートすることができます。また、コンテンツの連続再生、マルチ ビット レート コンテンツのストリーム配信、オンデマンド コンテンツのブラウズとシーク、認証を使用した接続など、クライアントの多数の動作をシミュレートするように設定することができます。1,000 以上のクライアントの負荷をかけて、Windows Media Load Simulator を使用してオンラインのサーバーを監視することによって、サーバーの上限をテストすることができます。このセクションでは、Windows Media Load Simulator の動作と必要システムについて述べます.

Windows Media Load Simulator の動作

プログラムが実行されると、Windows Media Load Simulator インターフェイスのパフォーマンス カウンタによって、接続しているクライアントの数とタイプ、受信データ量、および接続エラーに関するリアルタイム情報を得ることができます。Windows Media パフォーマンス モニタ コンソールを使用すると、さらに多くのリアルタイム情報を入手することができます。パフォーマンス モニタは、アクティブ ストリーム数、1 秒あたりのディスク ドライブ遅延読み取り回数、サーバーの CPU 使用率など、システム ステータスに関する情報を表示します。Windows Media アドミニストレータの [サーバーの監視] を使用して、リアルタイムのクライアント接続ステータスを表示することもできます。

テスト終了後、以下のログの結果を調べて、サーバーがシミュレーション負荷をどのように処理しているかを理解することができます。

  • Load Simulator ログ: クライアント接続ステータス、再生ステータス、接続エラーなど、接続クライアントの視点からの情報を含んでいます。
  • パフォーマンス モニタ ログ: サーバー コンピュータの視点からの情報を含み、5 秒間隔のシステム ステータスのスナップショットを提供します。このログは、1 秒あたりのディスク ドライブ遅延読み取り回数、拒否された認証、ストリームの終了、サーバー CPU 使用率などの情報を含んでいます。
  • Windows Media サーバー ログ: Windows Media サーバーの視点からの情報を含み、接続ステータス情報、アクセス中のコンテンツの名前、送信中に失われたデータの量を一覧表示します。

Windows Media Load Simulator は、サーバーのストレス テストを目的として、すなわち、サーバーを失敗に追い込むように作られています。テスターは、サーバーが極限状態まで追い詰められたときにしか現れないバグやメモリ リークを探しています。Windows Media Load Simulator は、サーバーとネットワーク ハードウェアをオンラインにする前にストレス テストを実行して、オンライン時のシステムの健全性を監視することを目的として作られています。ディスク ドライブ、サーバー CPU、およびネットワーク ハードウェアがスムーズに動作している場合には、エンド ユーザーはすばやく接続でき、高品質で中断のないストリームを楽しむことができます。ネットワークの状態とクライアントの帯域幅は制御できない場合が多いですが、Windows Media Load Simulator を使用することによって、エンド ユーザーへの接続とストリームの品質をテストするために、サーバー上でできるだけのことをやったと確信することができます。

必要システム

Windows Media Load Simulator は、SP 4 以上がインストールされた Microsoft® Windows NT Workstation バージョン 4.0 で実行することができます。Intel プロセッサを搭載し、Microsoft Windows Media サービス バージョン 4.1 を実行しているサーバーをテストすることができます。Windows Media Load Simulator クライアントとして推奨されるハードウェアおよびソフトウェア構成は以下のとおりです。

  • SP4 以上がインストールされた Windows NT Workstation 4.0
  • Microsoft® Internet Explorer 5 以上
  • Pentium II 266 MHz 以上(CPU が高速であるほど、より多くのクライアントをサポートすることができます。)
  • メモリ 64 MB
  • アプリケーションとログ ファイル格納領域として、10 MB のハード ディスク空き容量
  • 100 MB Fast Ethernet 接続
  • Microsoft Windows Media Player バージョン 6.4 以上がインストールされていること

Windows Media Load Simulator を使用する

Windows Media Load Simulator には、主に 2 つの用途があります。すなわち、ピーク使用率またはストレス テスターとオンライン モニタとしての用途です。以下に 2 つのモードの要約を示します。

  • ピークおよびストレス テスト: 予想されるピーク負荷条件下で、それぞれのオフライン サーバーをテストして、結果を調査することができます。次に、徐々に負荷を高めて、サーバーの能力の上限に近づくにつれて、サーバー パフォーマンスとストリームの品質の変化に注目します。その結果をもとに、そのサーバーで可能なクライアント数の上限を設定することができます。Windows Media アドミニストレータを使用すると、最大クライアント数だけでなく、最大帯域幅と最大ファイル転送率も設定することができます。

    結果は通常、コンピュータの CPU、ランダム アクセス メモリ(RAM)、ディスク ドライブ、およびネットワーク ハードウェアの問題を示します。たとえば、低速な CPU は比較的少ないクライアント接続数でも高い CPU 使用率を示し、結果として保留中の接続数とストリーミング エラー数が高くなります。低速なハード ディスク ドライブは、ストレス下でパフォーマンス カウンタの遅延読み取り数の高さとして示されます。遅延読み取りは、通常、静止画像や Web ページなどの静的データを提供するときには問題とはなりません。しかし、リアルタイム マルチメディア コンテンツを提供するときには、データは描画の瞬間に使用可能でなければなりません。

  • オンライン モニタリング: サーバーをオンラインにするときには、1 台または 2 台のクライアントを連続的にサーバーに接続して、システム全体の健全性を監視することができます。また、自動的に警告を記録したり、警告メッセージを生成する単純なプログラムやスクリプトを作成することができます。たとえば、特定のエラーが発生したらメールで通知する単純なスクリプトを作成することができます。

Windows Media Load Simulator を両方のモードで使用して、サーバーの健全性を確認し、維持するためには、このセクションの以下の手順に従ってください。手順には、以下のセクションが含まれます。

  • クライアント プロファイルを調べる
  • テスト用ソース コンテンツを作成する
  • ピーク使用率テストをセットアップする
  • Windows Media Load Simulator を設定する
  • テストを実行する
  • オンライン モニタリングをセットアップする

クライアント プロファイルを調べる

テストを実行する前に、典型的なピーク クライアント カウントとクライアント プロファイルを予想しておかなければなりません。典型的なピーク クライアント カウントは、通常ベースで同時にコンテンツをストリーム配信することになると思われる最大クライアント数です。クライアント プロファイルは、提供するコンテンツのタイプと、クライアントがコンテンツを使用すると思われる方法に基づきます。ストリームのシーク、オープン、およびクローズ、認証などのクライアント アクションは追加のサーバー リソースを必要とするので、完全なシミュレーション テストの一部に含めるべきです。実際にオンラインになるまでは確実なことはわからないので、予想は高めに設定する方が現実的です。言い換えれば、常に備えよ、です。カウントとプロファイルを決めるときには、以下の項目を考慮してください。

  • 同時ストリーム数: 同時に接続するクライアントの平均数と最大数はどのくらいですか?
  • ライブ コンテンツとオンデマンド コンテンツの割合: どんなタイプのコンテンツをエンド ユーザーに提供しますか? そのうちのどのくらいがライブで、どのくらいがオンデマンドですか?
  • エンド ユーザーの振る舞い: エンド ユーザーはどのようにしてコンテンツを再生するでしょうか? エンド ユーザーは長い作品を始めから終わりまで再生すると思いますか? それともコンテンツをブラウズするだけでしょうか?
  • マルチ ビット レート: どのくらいのコンテンツがマルチ ビット レートとしてエンコードされますか?
  • 認証: エンド ユーザーはコンテンツにアクセスするためにユーザー名とパスワードを入力する必要がありますか?

テスト用ソース コンテンツを作成する

可能な場合は、オンラインで使用するのと同じ Windows Media ファイルをテストにも使用します。まだコンテンツを作成していない場合や、コンテンツがライブの場合には、できるだけ実際のコンテンツに近いビット レートと長さをシミュレートするプレースホルダ コンテンツを作成します。たとえば、マルチ ビット レート エンコードを使用したライブ イベントを予定している場合は、同じ設定でダミーのライブ ストリームをエンコードします。さらに、画面の動きの量をシミュレートするコンテンツをエンコードします。ハンドヘルド カメラ、短いカット、および照明効果を多用するライブ コンサートをストリーム配信する場合は、同様のコンサートのテープをライブ ソースとして使用します。コンテンツが 30 秒間の短いニュース インタビュー数百個で構成される場合は、同様の素材の 2 個または 3 個のファイルを作成して、それらのファイルをコピーします。Windows Media Load Simulator はファイルの内容を見るわけではなく、ビデオの画面上の動きによって影響を受けるビット レートを見るだけです。

エンド ユーザーの振る舞いは、部分的には、コンテンツの性質によって決まります。たとえば、あなたのサイトに多数の短いクリップがある場合、エンド ユーザーは多くのファイルを開いたり閉じたりするか、ファイルのさまざまな部分を少しずつ見てみるでしょう。エンド ユーザーは、情報の断片を探すでしょう。過度のシークとブラウズは、過負荷のサーバーでは遅延読み取りと CPU 使用率の高さとして現れるかもしれません。コンテンツがライブの場合には、ディスク ドライブ アクセスは取るに足りないでしょう。ライブ コンテンツの場合、エラーが発生するのは、低速な CPU や少ない RAM の結果としてです。あらかじめ記録されたコンテンツに対するクライアントの需要は時間的に分散されますが、ライブ コンテンツの場合のサーバーの負荷は時間的に集中し、非常に大きくなる可能性があります。

マルチ ビット レート コンテンツの提供と、Windows Media セキュリティを使用して保護されているコンテンツを再生するためのエンド ユーザーの認証も、サーバーに余分な負荷をかけます。Windows Media Load Simulator には、これらの両方の機能のストレス テストを行う手段が用意されています。

ピーク使用率テストをセットアップする

ピーク使用率とストレス テストは、閉じたローカル エリア ネットワーク (LAN) を使用してオフラインで行われます。実行すると、Windows Media Load Simulator は、同等数の現実のクライアントから得るのと同じサーバーおよびネットワーク負荷を作り出します。アクティブなネットワークでストレス テストを実行すると、使用可能な帯域幅のすべてを消費してしまい、現実のエンド ユーザーがサーバーにアクセスできなくなるおそれがあります。閉じた LAN でピーク使用率テストを実行することによって、ネットワークまたはインターネット上のエンド ユーザーを妨害せずに、すべてのサーバーとローカル ネットワーク ハードウェアを完全にテストするために必要な高いビット レートを自由に実行することができます。次の図は、典型的な LAN レイアウトを示しています。

Dd148588.loadsim001(ja-jp,MSDN.10).gif

このレイアウトは、典型的なテスト条件を想定しています。すなわち、28.8 キロビット/秒 (Kbps) の帯域幅で 1,000 の同時ストリーム配信の能力がある Windows Media サーバーが、それぞれ 200 のクライアント接続の能力がある 5 台の Windows Media Load Simulator コンピュータに接続されています。ライブ ストリームでテストしたい場合は、このレイアウトにリモートのエンコーダ コンピュータも含めなければなりませんし、Windows Media サーバー コンピュータがそのソースからオンデマンド ファイルにアクセスする場合は、リモートのストレージ デバイスまたはサーバーも含めなければなりません。

Windows Media Load Simulator を実行するコンピュータは、多数のクライアントを円滑に実行できなければなりません。コンピュータが Windows Media Load Simulator クライアントの推奨システム要件を満たしている場合は、典型的には 200 クライアントを処理できます。ただし、パフォーマンス モニタを使用して、クライアント コンピュータの CPU 使用率が 50 パーセント未満であることを確認してください。クライアント コンピュータが過負荷の場合、テスト結果を混乱させるストリーミング エラーを生むことがあります。

非常に高速なサーバーは、はるかに高いストリーム カウントを処理することができます。たとえば、Windows Media テスト チームがテストしたあるコンピュータは、4 プロセッサと 1 GB の RAM を搭載していましたが、同時に 7,000 以上の 20 Kbps ストリームを処理することができました。このようなコンピュータを完全にテストするには、クライアント コンピュータの数を増やすか、より高速なクライアント コンピュータを使用する必要があります.

Microsoft® Windows NT® Load Balancing Service (WLBS) を使用してサーバー負荷のバランスをとることは、Windows Media サーバー システムのスケーラビリティと信頼性を高めるための優れた手段です。ロードバランスされたシステムは、一群(クラスタ)のサーバーであり、クライアントには 1 台のサーバーに見え、複数台のサーバーから 1 つの大きなサーバーを効率的に作り出します。前の図の 1 台のサーバーをクラスタに置き換えることができます。個々のサーバーに対してだけでなく、クラスタ全体に対しても、Windows Media Load Simulator テストを実行してください。

Windows Media Load Simulator を設定する

Microsoft® Windows NT® Load Balancing Service (WLBS)を使用してサーバー負荷のバランスをとることは、Windows Media サーバー システムのスケーラビリティと信頼性を高めるための優れた手段です。ロードバランスされたシステムは、一群(クラスタ)のサーバーであり、クライアントには 1 台のサーバーに見え、複数台のサーバーから 1 つの大きなサーバーを効率的に作り出します。前の図の 1 台のサーバーをクラスタに置き換えることができます。個々のサーバーに対してだけでなく、クラスタ全体に対しても、Windows Media Load Simulator テストを実行してください。

  1. Windows Media サーバーをロード テストできるようにします。

    Windows Media Load Simulator を特定の Windows Media サーバーに対して実行するためには、サーバーのホーム ディレクトリに WMLoad.asf という名前の Windows Media ファイルがなければなりません。このファイルは、無許可のロード シミュレーション テストに対する保険となります。このファイルを削除するだけで、他の人がサーバーに対してロード テストを実行できないようにすることができます。この安全メカニズムがなければ、たとえばインターネット上のエンド ユーザーが完全なストレス テストを実行することができ、それによって他の人が接続できなくなり、潜在的にシステムの過負荷を招くことがあります。オンライン モニタリングのために Windows Media Load Simulator を使用したい場合には、このファイルをホーム ディレクトリに残しておいて、公開ポイント セキュリティを使用してアクセスを制限します。

    .asf 拡張子を持つファイルであればどんなファイルでも、ロード テストを可能にするファイルとして使用することができます。.asf 拡張子を持つ小さいファイルを選択して、WMLoad.asf という名前を付けます。

  2. テストする Windows Media サーバーを指定します。

    設定ウィザードを使用するか、[設定] ダイアログ ボックスの [サーバー名] タブに情報を直接入力することによって、テストするサーバーの名前を指定します。個々のサーバーの静的 IP アドレスまたは完全修飾ドメイン ネーム システム(DNS)名を使用することをお勧めします。ロードバランス クラスタをテストする場合には、クラスタの IP アドレスまたは DNS 名を入力します。

  3. ソース コンテンツを指定します。

    [ソース] タブで、プレイリストにソース コンテンツを追加します。このリストはファイルまたはライブ ストリームを含むことができ、Windows Media Load Simulator がファイルを順に再生するか、ランダムに再生するかを選ぶことができます。

    また、再生を特定のプロトコルに制限するか、それともプロトコルのロールオーバーを許すかを選ぶことができます。MMSU、MMST、または HTTP を選んだ場合、Windows Media Load Simulator クライアントは、それぞれ UDP データ トランスポート(MMSU)、TCP データ トランスポート(MMST)、または HTTP プロトコルだけを使用してサーバーへの接続を試みます。MMS を選んだ場合には、クライアントはプロトコルのロールオーバーを使用します。すなわち、まず UDP、次に TCP、次に HTTP と順に使用して接続を試み、接続が確立されるまで続けます。

  4. シミュレートされるクライアントを作成します

    [クライアントのプロファイル] タブで、それぞれのプロファイルのクライアント数を入力して、全体的なクライアント プロファイルを作成します。入力するクライアントの合計数は、Windows Media Load Simulator コンピュータの推奨合計数(典型的には 200 クライアント)を超えないようにします。すべてのシミュレーション コンピュータからサーバーに接続するクライアントの合計数は、典型的なピーク クライアント負荷として見積もった同時接続数の合計と等しくなければなりません。以下に、それぞれのプロファイルについて説明します。

    • ブラウズ: このタイプのクライアントは、ブラウズ中のエンド ユーザーをシミュレートします。彼らは、ランダムな長さの時間だけ再生し、シーク、停止、一時停止を行い、ときにはクローズします。
    • 再生: このタイプのクライアントは、ストリーム全体を始めから終わりまで再生します。
    • シーク: このタイプのクライアントは、ストリームを早送りしたり、巻き戻したりします。シークが機能するためには、ファイルにインデックスが付けられていなければなりません。クライアントがインデックスの付いていないファイルやライブ ストリームのシークを試みた場合は、エラーが記録されます。
    • オープン/クローズ: このタイプのクライアントは、ストリームを開いて、再生せずに閉じます。
    • ランダム ビット レート: このタイプのクライアントは、マルチ ビット レート コンテンツをランダムなビット レートでストリーム配信します。コンテンツは、Microsoft® Windows Media ツールの機能である Windows Media エンコーダで、マルチ ビット レートとしてエンコードされていなければなりません。
    • 固定ビット レート: このタイプのクライアントは、マルチ ビット レート コンテンツを [1 秒あたりのバイト数] で選択したビット レートでストリーム配信します。選択されたバイト レートは固定であり、変更できません。マルチ ビット レートをシミュレートするには、Windows Media Load Simulator の複数のインスタンスを実行して、それぞれ異なるビット レートを選択しなければなりません。コンテンツは、Windows Media ツールの機能である Windows Media エンコーダでマルチ ビット レートとしてエンコードされていなければなりません。

    たとえば、推定クライアント負荷の合計を 100 として、クライアントの大部分がファイルを始めから終わりまで再生するとした場合、次のような設定を入力します。

    クライアント タイプ 設定
    ブラウズ 5
    再生 90
    オープン/クローズ 5

    コンテンツが短いニュース クリップや音楽サンプルであり、同時クライアント負荷の合計が 800 と予想される場合には、4 つのクライアント コンピュータのそれぞれに次のような設定を入力します。.

    クライアント タイプ 設定
    ブラウズ 60
    再生 40
    シーク 60
    オープン/クローズ 40
  5. 認証を追加します。

    認証を使用するクライアントは、Windows Media 公開ポイント セキュリティを使用してサーバー上のコンテンツにアクセスすることができます。アクセス制御は個別のファイルまたはディレクトリにセットアップすることができ、Windows Media Load Simulator クライアントは、[認証] タブで設定したユーザー名とパスワードで自動的にコンテンツへのアクセスを試みます。Windows Media サーバーも設定して、認証テストに含めるファイルとディレクトリのセキュリティ設定を変更する必要があります。公開ポイント セキュリティの詳細については、Windows Media サービスのオンライン ヘルプ マニュアルを参照してください。

  6. テストの持続時間を入力して、ロギングを有効にします。

    [持続時間] タブで、テストの持続時間を時、分、秒で指定することができ、エラーが特定の数に達したらテストを停止するように Windows Media Load Simulator に指示することができます。時間を限定せずにテストを実行することもできます。

    [ロギング] タブで、2 つのログ(Load Simulator ログ ファイルとパフォーマンス モニタ ログ ファイル)を作成するように Windows Media Load Simulator を設定して、ファイルの場所を指定することができます。ほとんどの場合は、両方のログの作成を有効にしてください。2 つのログと Windows Media サーバー ログを使用して、情報を相互参照することによって、テスト実行中にシステムがどのように機能したかを正確に理解することができます。

テストを実行する

ピーク クライアント負荷のために Windows Media Load Simulator を設定したら、シミュレーションを開始します。このセクションでは、ピーク負荷テスト、ピーク負荷テストの分析方法、およびストレス テストについて説明します。

ピーク負荷テストを実行する

このテストは、最低 2 分間実行します。活動は 30 秒後にフラットになるはずです。活動がフラットになったことに気がつかなかった場合には、もっと長くテストを実行してください。テスト開始後、以下をチェックしてください。

  • Windows Media Load Simulator インターフェイスのカウンタを見ます。[統計] エリアの [Open Streams] の数が上昇し始めた後、[Clients Playing] と [Clients Seeking] の数が続きます。クライアントがコンテンツをストリーム配信すると、[受信バイト数] および [受信パケット数] カウンタが急上昇します。[Open Streams] の数がシミュレーション コンピュータの合計クライアント カウントに近づくと、増加は遅くなります。
  • シミュレーションがピーク クライアント カウントに近づいたときの損失パケット数に注目します。損失パケット数は 0 でなければなりません。[合計帯域幅] カウンタは、コンピュータ上のすべてのクライアントのストリームがどのくらいの帯域幅を消費しているかを示します。閉じた LAN でシミュレーションを実行していて、すべてのクライアント コンピュータの帯域幅カウンタの合計が LAN の帯域幅の範囲内である場合、損失パケットはサーバーの過負荷が原因です。
  • インターフェイスの [テスト トランザクション] エリアには、クライアント エラーが一覧表示されます。クライアント トランザクション エラーは、クライアントが送信したコマンドをサーバーが実行できないときに記録されます。しかし、すべてのエラーがサーバーの問題を示すわけではありません。たとえば、クライアントがファイル内をシークできない場合、ファイルにインデックスが付けられていないか、ファイルがライブ ストリーム以外の何物でもなかったことが原因かもしれません。セキュリティが正しくセットアップされていなかった場合には、認証エラーが発生します。いずれにしても、多くのトランザクション エラーを受け取った場合は、コンテンツにエラーがないことと、[設定] ダイアログ ボックスの [ソース] タブに正しいパスとファイル名を入力したことを確認してください。

次のようなこともできます。

  • パフォーマンス モニタを使用することによって、テスト中のシステム パフォーマンスを表示します。Windows Media サーバーを実行しているコンピュータで、[スタート] メニューから [Windows Media パフォーマンス カウンタ] を開きます。クライアント コンピュータ上でリモートからサーバー パフォーマンスを表示することもできます。パフォーマンス モニタのカウンタは、より多くのクライアントが接続とコンテンツの再生を試みるにつれて、システムの健全性を直接示すシステム活動を表示します。特に重要なのは、% Processor Time、Late Reads、Pending Connections、および Stream Errors です。% Processor Time が 100 に近く、Pending Connection が上昇しているときには、CPU が遅すぎて、処理が遅れていることを意味します。また、Stream Errors の上昇に気づく場合もあります。上昇している Stream Error カウントを Windows Media Load Simulator インターフェイスに示された Packets Lost および Test Errors と比較してください。リモート サーバーとパフォーマンス カウンタの追加については、パフォーマンス モニタのヘルプ マニュアルを参照してください。.
  • Late Reads を見ます。Stream Errors と損失パケットの上昇に比例して、Late Reads も上昇していることに気づくかもしれません。Late Reads は、ディスク ドライブまたはアレイが低速であることを示しています。コンテンツが別のサーバーから Windows Media サーバーによってアクセスされている場合、Late Reads はネットワーク接続が低速であることを示している場合もあります。パフォーマンス モニタにカウンタを追加することによって、どこで問題が発生しているかがわかりやすくなります。たとえば、Windows Media サーバーはリアルタイム表示のためにコンテンツをストリーム配信しなければならないので、サーバーが強いられるページングの量はパフォーマンスに大きな影響を与えます。極端なページングをチェックするカウンタを追加することができます。ページング問題は通常、RAM の増設によって解決することができます。
  • 詳細なクライアント情報をリアルタイムで表示するには、Windows Media アドミニストレータを使用します。[公開ポイントのイベント] または [公開ポイントのクライアント] をクリックします。これらのモニタには、接続しているそれぞれのクライアントのステータスが一覧表示され、クライアント IP アドレスと、コンテンツがアクセスされているファイル名またはエイリアスなど、その他の情報が表示されます。Windows Media Load Simulator は、非常に動作が速く、リアルタイムでは詳細を調べられないことがあります。また、サーバー モニタはサーバーの負荷を高めるので、テストの結果を不正確にする場合があります。したがって、情報を使用するつもりがない場合や、サーバーがピーク負荷に近づいている場合は、モニタリングを無効にしてください。

ピーク負荷テストを分析する

3 つのログにテストから収集されたすべての情報が含まれています。ログを使用すれば、リアル タイムでカウンタを見ているときには見過ごしがちな問題を正確に突き止めることができます。また、記録時刻を使用して、情報を相互参照することができます。たとえば、Failed to open など、特定のテスト エラーが発生した原因を探りたいとしましょう。Load Simulator ログのエラー発生時刻をもとに、パフォーマンス モニタ ログのイベントを探します。その時刻のパフォーマンスが正常であれば、Windows Media サーバー ログをチェックします。サーバー ログには、その時刻に接続していたクライアントのステータス、すなわち、クライアントが再生を試みたコンテンツと発生した再生問題が示されています。サーバー ログには、その時刻に接続していたクライアントの C-status コードが 404 であると記録されています。これは標準の HTTP/1.1 コードであり、見つからなかったという意味です。このことから、その時刻にはサーバーにはエラーがなかったと推論することができます。サーバーは正しく機能していましたが、存在しないコンテンツを見つけようとしたわけです。サーバー ログには、見つからなかったファイルの名前も示されています。

過剰なパケット損失の原因を探ることもできます。それは CPU が過負荷になった結果かもしれません。あるいは、パフォーマンス モニタ ログを調べることによって、過剰なストリーム終了の原因を探ることもできます。ほとんどの問題は、CPU のパワー不足、RAM 不足、または低速なディスク ドライブが原因です。ログの分析の詳細については、Windows Media Load Simulator ヘルプ マニュアルを参照してください。

ストレス テストを実行する

ピーク負荷テストに問題がなかった場合には、徐々にクライアント数を増やして、さらにテストすることができます。このタイプのテストはストレス テストと呼ばれ、ハードウェアの限界を試すためにソフトウェア開発者によって広く使用されています。バグやその他の問題は、ストレス下でしか現れないことがあります。ストレス テストによって、サーバーの能力の上限を見きわめることができます。ピーク負荷テスト中にいくつかの問題が見られた場合には、クライアント負荷を追加して、問題が悪化するかどうかを調べることができます。その場合は、より多くの RAM、より高速なディスク ドライブ、またはより高速なコンピュータを追加する必要があるかもしれません。もう 1 つの方法としては、Windows Media アドミニストレータに設定を入力することによって、サーバーに接続できるユニキャスト クライアントの数を制限します。クライアント負荷を追加しても問題が悪化しない場合には、ハードウェアの誤作動、ソフトウェアの競合、またはコンテンツのエンコード エラーの可能性を調べます。

クライアント負荷を追加するには、[設定] ダイアログ ボックスを開いて、[クライアントのプロファイル] タブでクライアントを追加します。クライアントを 10~20%追加して、もう 一度テストを実行し、ログを調べて、さらにクライアントを追加します。サーバーの上限に達して、エラーが過剰になり始めるまで、クライアントの追加とテストの実行を続けます。上限に達する直前のクライアント負荷を書き留めて、この負荷をそのコンピュータの絶対的な限界と考えてください。

徹底的に行うには、最大数日間にわたる長時間のピーク負荷テストを実行します。長時間のテスト実行を行っても、数分間のテスト実行の際に見られたパターンからの変化が見られるべきではありません。ロードバランスされたサーバー クラスタを使用している場合は、クラスタ全体に対してだけでなく、個々のサーバーに対してもテストを実行します。

ログおよびカウンタを分析して、潜在的な問題を追跡するための出発点として、以下のガイドラインを使用してください。

Load Simulator 統計

カウンタ 意味
損失パケット 閉じた LAN でテストを実行したときに 0 より大きい値が示される場合は、サーバーのパワー不足(低速な CPU、RAM 不足、または低速なディスク ドライブ)を意味します。
テスト エラー 0 より大きい値は、サーバーのパワー不足か、コンテンツ エラー(アクセスされているファイルが存在しない、ライブ ソースがストリーム配信されていない、ストリームにエンコード エラーがあるなど)を意味します。

Load Simulator ログ

ログ フィールド 意味
エラー テキスト エラーは、サーバーのパワー不足か、コンテンツ エラー(アクセスされているファイルが存在しない、ライブ ソースがストリーム配信されていない、ストリームにエンコード エラーがあるなど)を意味します。

Windows Media パフォーマンス モニタおよびパフォーマンス モニタ ログ

カウンタ/ログ フィールド 意味
% Processor Time カウントが連続的に 50 より大きい場合は、負荷がテストされている CPU のパワー不足を意味します。
Late Reads 典型的な負荷条件のサーバーでは、遅延読み取りは示されないはずです。遅延読み取りは、負荷に対してディスク ドライブが低速すぎることを意味します。
Pending Connections この数は、典型的なロード条件では非常に低くなければなりません。高い数値は、CPU が需要に追いつけないことを意味します
Stream Errors サーバーの CPU がデータに対する要求に追いつけないときには、CPU はパケットを破棄し、それがストリーム エラーの原因になります。

Windows Media サービス ログ

ログ フィールド 意味
c-pkts-lost-client 閉じた LAN でテストを実行したときに 0 より大きい値が示された場合は、サーバーのパワー不足(低速な CPU、RAM 不足、または低速なディスク ドライブ)を意味します。
c-quality クライアントが受信したパケットのパーセンテージを示します。100 でなければなりません
c-status クライアント ステータスを記述する標準の HTTP/1.1 コード番号。たとえば、404 は、要求されたファイルまたはストリームが見つからなかったことを示します。

オンライン モニタリングをセットアップする

安定したサーバー設定が決まったら、システムをオンラインにして、Windows Media Load Simulator をオンライン クライアント モニタとして使用し続けることができます。エンド ユーザーと同じように、インターネットに接続されているコンピュータまたはネットワーク上のリモート ポイントから、Windows Media Load Simulator をサーバーに接続することができます。サーバーまたはクラスタの出力上のポイントから直接、継続的に監視することもできます。2 つのポイントからの示度を比較することによって、問題がネットワークにあるのか、それともサーバーにあるのかを判断することができます。次の図は、オンライン クライアント モニタのセットアップを示しています。

Dd148588.loadsim002(ja-jp,MSDN.10).gif

オンライン クライアント モニタリングの目的は、サーバーが健全であり、オンラインであることを確認することです。Windows Media Load Simulator を実行する代わりに、Windows Media Player に連続的にコンテンツをストリーム配信するという方法もあります。たとえば、Windows Media Player コントロールを含んだ単純な Web ページと、さまざまなファイルとライブ ストリームにプレーヤーを連続的に再接続するスクリプトを作成することができます。どちらの場合も、1 台または 2 台のクライアントを連続的に接続した場合、サーバーとネットワークの健全性が示されなければなりません。

オンライン モニタリングのために Windows Media Load Simulator を設定するには、クライアントが再生するソース ファイルとライブ ストリームのサンプリングを選択して、クライアントのプロファイル([再生] または [シーク])を入力します。コンテンツがマルチ ビット レートとしてエンコードされている場合は、[ランダム ビット レート] プロファイルを使用してください。.

インターネットまたは他のユーザーが使用しているネットワークを介して、オンライン サーバーに対してストレス テストやピーク使用率テストを実行しないでください。Windows Media Load Simulator は急速に帯域幅を最大化し、これがネットワークのそのセグメント上の他のすべてのトラフィックに影響を与えます。サーバーに負荷をかけることによって、サーバーに接続しているすべてのエンド ユーザーへのサービスに影響を与えます。オンライン モニタリングは、典型的なクライアントの視点からサーバーとネットワークの健全性をチェックするコンフィデンス モニタです。Windows Media Load Simulator を使用したオフライン ストレス テストから得た結果は、そのサーバーをオンラインにしたときにも有効です。それ以上のテストは不要です。

Windows Media Load Simulator は、無許可のエンド ユーザーがサーバーに対してシミュレーションを実行するのを防止するセキュリティ機能を含んでいます。すでに述べたように、シミュレーションを実行するためには、WMLoad.asf ファイルが Windows Media サーバーのホーム ディレクトリに存在しなければなりません。Windows Media Load Simulator の実行中に、無許可のシミュレーションを防止するには、Windows Media サーバーの公開ポイント セキュリティを有効にして、Windows NT セキュリティを使用して、ファイルへのアクセスを制限します。WMLoad.asf へのアクセスが制御されている場合、このファイルの読み取りアクセス権を持っているエンド ユーザーとグループだけが、サーバーに対して Windows Media Load Simulator を実行することができます。

オンライン モニタを拡張する

クライアント コンピュータのレジストリを設定することによって、テスト エラーが生成されたときに、Windows Media Load Simulator がプログラムを開いたり、スクリプトを実行できるようにすることができます。これは、サーバーを連続的に監視しなければならないときに非常に便利です。たとえば、Microsoft® Windows® Script Host 2.0 または MicrosoftR Visual BasicR Scripting Edition 5.1 を使用して、メッセージ ボックスを開いたり、オーディオ ファイルを再生して管理者に警告するスクリプトを作成することができます。Windows Media Load Simulator には、エラーが発生するとログ ファイルに情報を追加するサンプル VBScript ファイルが含まれています。また、ネットワーク管理者に電子メール メッセージを送信するスクリプトを作成することもできます。このアプローチの詳細については、オンライン ヘルプ マニュアルを参照してください。

システム レジストリを設定するには、レジストリ キー HKLM\Software\Microsoft\WMLoad を探して、LogProgram という名前で新しい文字列値を追加します。値として、実行可能なプログラム ファイルへのパスを入力します。Windows Media Load Simulator がプログラムを開くときには、プログラムに次の 3 つの引数を渡します。

引数 説明
<Problem> エラーを記述する文字列値。
<ServerName> チェックされる Windows Media サーバーの名前。
<LocalLogFileName> ログ ファイルのパス(プログラムに必要な場合)。

Windows Media Load Simulator がスクリプティング プログラムを開いて、それにスクリプト ファイルの名前を渡すようにしたい場合には、LogProgramArg という名前で新しい文字列値を追加します。値として、スクリプト ファイルのパスを入力します。

選んだ方法によっては、エラーが発生したらシミュレーションを停止した方がよい場合もあります。たとえば、エラーのたびに電子メール メッセージが送信される場合、サーバーがクラッシュすると、Windows Media Load Simulator はクライアント接続をシミュレートし続け、そのたびにメッセージを送り続けます。[設定] ダイアログ ボックスの [持続時間] タブで、[Stop After] チェック ボックスを選択して、数値を入力することができます。エラー カウントがその数に達すると、シミュレーションは停止します

詳細については

Microsoft Windows Script Host をはじめとするMicrosoft Windows スクリプティング テクノロジの詳細については、MSDN Online のスクリプト テクノロジ ホーム ページを参照してください。