プロキシ配列からの各要求について、ハッシュ機能は配列内の各プロキシに、要求された URL、プロキシ名、およびプロキシの負荷要因に基づくスコアを割り当てます。要求はスコアが最も高いプロキシにルーティングされます。
URL の要求はクライアントとプロキシの両方から送られる可能性があるため、プロキシ配列を経由するルーティングには次の 2 種類あります。クライアントからプロキシへのルーティングとプロキシからプロキシへのルーティング。
クライアントからプロキシへのルーティングでは、クライアントはプロキシ自動設定 (Proxy Auto Configuration、PAC) メカニズムを使用して、経由するプロキシを決定します。ただし、クライアントは、標準の PAC ファイルを使用する代わりに、ハッシュアルゴリズムを計算する特別な PAC ファイルを使用し、要求された URL に適切な経路を決定します。図 12–4 にクライアントからプロキシへのルーティングを示します。この図では、プロキシ配列の各メンバーがロードされ、マスタープロキシに対してPAT ファイルに加えられた更新をポーリングします。PAC ファイルを取得したクライアントに必要となるのは、設定が変更されるたびにこのファイルをダウンロードすることだけです。通常、クライアントは再起動時に PAC ファイルをダウンロードします。
プロキシサーバーは、管理インタフェースから作成された Proxy Array Membership Table (PAT) 仕様に基づいて特別な PAC ファイルを自動的に生成できます。
プロキシからプロキシへのルーティングでは、プロキシは、クライアントが使用する PAC ファイルの代わりに PAT (Proxy Array Table) ファイルを使用して、ハッシュアルゴリズムを計算します。PAT ファイルは、プロキスのマシン名、IP アドレス、ポート、負荷係数、キャッシュサイズなどを含むプロキシ配列に関する情報を格納した ASCII ファイルです。サーバー側でハッシュアルゴリズムを計算する場合、PAC ファイル (実行時に解釈が必要な JavaScript ファイル) よりも PAT ファイルを使用する方がはるかに効率的です。ただし、ほとんどのクライアントは PAT ファイル形式を認識しないため、PAC ファイルを使用する必要があります。図 12–5 にプロキシからプロキシへのルーティングを示します。
PAT ファイルはプロキシ配列のマスタープロキシで作成されます。プロキシの管理者は、マスタープロキシにするプロキシを決定する必要があります。管理者は、このマスタープロキシサーバーから PAT ファイルを変更できます。プロキシ配列のほかのすべてのメンバーは、これらの変更について、マスタープロキシを手動または自動でポーリングできます。これらの変更に基づき、PAC ファイルを自動的に生成するように各メンバーを設定できます。
また、プロキシ配列を連鎖して、階層ルーティングを作成することもできます。プロキシサーバーが受信した要求を上流のプロキシ配列にルーティングする場合、上流のプロキシ配列は親配列となります。つまり、クライアントがプロキシ X のドキュメントを要求し、プロキシ X にそのドキュメントがない場合、クライアントは直接リモートサーバーに要求を送信する代わりに、プロキシ配列 Y に要求を送信します。このため、プロキシ配列 Y が親配列になります。
図 12–5 で、プロキシ配列 1 はプロキシ配列 2 の親配列です。プロキシ配列 2 のメンバーは親配列の PAT ファイルへの更新をロードし、ポーリングします。通常は、親配列のマスタープロキシに対してポーリングします。要求された URL のハッシュアルゴリズムは、ダウンロードされた PAT ファイルを使用して計算されます。プロキシ配列 2 のメンバーは、プロキシ配列 1 の中で最もスコアの高いプロキシを通して要求された URL を取得します。図では、クライアントから要求された URL に関して最もスコアが高いのは、プロキシ B です。
プロキシ配列を設定する一般的な手順は次のようになります。
マスタープロキシから、次の手順を実行します。
プロキシ配列を作成します。
メンバーリストの作成の詳細については、「プロキシ配列メンバーリストの作成」を参照してください。
PAT ファイルから PAC ファイルを生成します。
PAC ファイルを生成する必要があるのは、クライアントからプロキシへのルーティングを使用する場合のみです。詳細については、「PAT ファイルからの PAC ファイルの生成」を参照してください。
配列のマスターメンバーを設定します。詳細については、「プロキシ配列メンバーの設定」を参照してください。
プロキシ配列を経由したルーティングを有効にします。詳細については、「プロキシ配列を経由したルーティングの有効化」を参照してください。
URL /pat を PAT ファイルにマップする PAT マッピングを作成します。
プロキシ配列を有効にします。
詳細については、「プロキシ配列の有効化または無効化」を参照してください。
マスター以外の各プロキシから、次の手順を実行します。
配列のマスター以外のメンバーを設定します。
詳細については、「プロキシ配列メンバーの設定」を参照してください。
プロキシ配列を経由したルーティングを有効にします。
詳細については、「プロキシ配列を経由したルーティングの有効化」を参照してください。
プロキシ配列を有効にします。
詳細については、「プロキシ配列の有効化または無効化」を参照してください。
プロキシ配列が親配列を経由してルーティングされる場合、親配列を有効にし、各メンバーが親配列を経由して要求される URL にルーティングされるように設定する必要があります。詳細については、「親配列を経由したルーティング」を参照してください。