WCCP の概要
ここでは、WCCP の次の内容について説明します。
• 「WCCP の概要」
• 「ハードウェア アクセラレーション」
• 「WCCP 構成の概要」
• 「WCCP の機能」
WCCP の概要
WCCP はシスコが開発したコンテンツ ルーティング技術で、ネットワーク インフラストラクチャにコンテント エンジンを統合することができます。
Cisco IOS WCCP 機能を使用すると、Cisco Content Engine(または WCCP を実行する他のコンテント エンジン)を使用してネットワークの Web トラフィック パターンをローカライズし、コンテンツ要求をローカルで処理できます。トラフィックをローカライズすると、送信コストとダウンロード時間が減少します。
WCCP により、Cisco IOS ルーティング プラットフォームはコンテンツ要求を透過的にリダイレクトできるようになります。HTTP 要求の透過的なリダイレクトの主な利点は、ユーザが自分のブラウザを Web プロキシを使用するように設定しないですむことです。ユーザは代わりにターゲット URL を使用してコンテンツを要求し、コンテント エンジンへ自動的にリダイレクトされるようにすることができます。この場合の「透過的」とは、要求したファイル(Web ページなど)がコンテント エンジンから送信されたものであり、指定したサーバから送信されたものではないことがユーザにはわからないという意味です。
要求を受信したコンテント エンジンは、自分のローカル コンテンツを使用して要求に応じようとします。要求された情報が存在しない場合、コンテント エンジンは要求された情報を得るため最初に、ターゲットとされたサーバに自身の要求を送信します。コンテント エンジンは要求された情報を受け取ると、その情報を要求元のクライアントに転送し、さらに、今後の要求に備えてキャッシュに保存します。その結果、ダウンロード パフォーマンスが最大になり、送信コストが大幅に減少します。
WCCP により、一連のコンテント エンジン(コンテント エンジン クラスタと呼ぶ)が 1 つまたは複数のルータにコンテンツを提供できます。ネットワーク管理者は、このようなクラスタ処理機能を通じて使用するコンテント エンジンを簡単に拡張して、トラフィック負荷が重い場合でも処理することができます。シスコのクラスタ処理技術により、それぞれのコンテンツ メンバの同時動作が可能になり、直線的なスケーラビリティが実現します。コンテント エンジンをクラスタ処理すると、キャッシング ソリューションのスケーラビリティ、冗長性、およびアベイラビリティが大きく向上します。最大 32 のコンテント エンジンをクラスタ処理して、必要な容量まで拡張することができます。
ハードウェア アクセラレーション
Catalyst 4500 シリーズ スイッチに Cisco Content Engine が直接接続されているとハードウェアが加速されます。これは、ソフトウェアのレイヤ 3 リダイレクションよりも効率的です。
直接接続されたコンテント エンジンを設定して、WCCP レイヤ 2 リダイレクション機能をマスク割り当てテーブルに基づいたロード バランシングとともに使用するようにネゴシエーションできるようにする必要があります。
show ip wccp web-cache detail コマンドを実行すると、それぞれのキャッシュで使用されるリダイレクション方法が表示されます。
(注) WCCP レイヤ 2 リダイレクション機能をマスク割り当てテーブルとともに使用するように設定できるのは、Cisco Content Engine ソフトウェア リリース 2.2 以上のリリースです。
WCCP 構成の概要
(注) WCCPv1 はサポートされません。
1 つのキャッシュ クラスタにサービスを提供するために複数のルータで WCCP を使用できます。図 47-1 に、複数のルータを使用する場合の構成例を示します。
図 47-1 WCCP を使用した Cisco Content Engine ネットワーク構成
クラスタ内のコンテント エンジンと、同じサービスを実行しているクラスタに接続するルータのサブセットを、サービス グループと呼びます。利用可能なサービスには TCP および User Datagram Protocol(UDP; ユーザ データグラム プロトコル)リダイレクションがあります。
WCCP では、それぞれのコンテント エンジンは、サービス グループ内のすべてのルータを認識する必要があります。サービス グループのすべてのルータのアドレスを指定するには、次のいずれかの方法を選択します。
• ユニキャスト:各コンテント エンジンに、グループの各ルータのアドレスをリストで設定します。この場合、グループの各ルータのアドレスをコンテント エンジンごとに設定時に明示的に指定する必要があります。
• マルチキャスト:コンテント エンジンごとに単一のマルチキャスト アドレスを設定します。マルチキャスト アドレスを設定すると、コンテント エンジンはサービス グループの全ルータを対象とした単一アドレス通知を送信します。たとえば、マルチキャスト アドレス 224.0.0.100 にパケットを送信するようにコンテント エンジンで示すことができます。この場合、WCCP を使用してグループ リスニングが設定されているサービス グループのすべてのルータにマルチキャスト パケットが送信されます(詳細については ip wccp group-listen インターフェイス コンフィギュレーション コマンドを参照してください)。
各コンテント エンジンに単一のアドレスを指定すればいいだけなので、マルチキャスト方式の方が簡単に設定できます。またこの方法では、コンテント エンジンに毎回異なるアドレスのリストを再設定せずに、サービス グループにダイナミックにルータを追加したり削除したりすることができます。
次のような流れで、WCCP 設定は機能します。
1. 各コンテント エンジンにルータのリストが設定されます。
2. 各コンテント エンジンが自身の存在と、自身が接続を確立した全ルータのリストをアナウンスします。ルータは、グループのコンテント エンジンの自身のビュー(リスト)で応答します。
3. クラスタのすべてのコンテント エンジンのビューが同じであれば、1 つのコンテント エンジンが先頭として指定され、パケットのリダイレクション時にルータで適用する必要があるポリシーを設定します。
次の項では、ルータに WCCP を設定してサービス グループに参加させる方法を説明します。
HTTP および非 HTTP サービスのサポート
WCCP は HTTP トラフィック(TCP ポート 80 のトラフィック)および非 HTTP トラフィック(TCP および UDP)のリダイレクションを可能にします。WCCP は他のポート向けパケットのリダイレクションもサポートします。これには、プロキシ Web キャッシュ処理、File Transfer Protocol(FTP; ファイル転送プロトコル)キャッシング、FTP プロキシ処理、ポートの Web キャッシング(ポート 80 を除く)、および Real Audio、Video、テレフォニー アプリケーション用のパケットが含まれます。
さまざまなタイプのサービスが利用できるようにするために、WCCP には複数の サービス グループ という考え方が導入されています。サービス情報は、ダイナミック サービス ID 番号(「98」など)または事前に定義されたサービス キーワード(「web-cache」など)を使用して、WCCP コンフィギュレーション コマンドで指定されます。この情報は、サービス グループのメンバがすべて同じサービスを使用または提供していることを確認するために使用されます。
(注) Catalyst 4500 シリーズ スイッチは、最大 8 つのサービス グループをサポートします。
ACNS バージョン 5.2 ソフトウェアでサポートされている WCCP バージョン 2 サービスについては、
『Release Notes for Cisco ACNS Software, Release 5.2.3』を参照してください。
サービス グループのコンテント エンジンは、プロトコル(TCP または UDP)およびポート(送信元または宛先)によってリダイレクトされるトラフィックを指定します。それぞれのサービス グループにはプライオリティ レベルが割り当てられています。パケットは、サービス グループに対してプライオリティ順に照合され、トラフィック特性に一致する最高のプライオリティのサービス グループによってリダイレクトされます。
複数ルータのサポート
WCCP では、複数のルータをキャッシュ エンジンのクラスタに追加できます。サービス グループで複数のルータを使用すると、冗長化、インターフェイス集約、およびリダイレクション負荷の分散が可能になります。
MD5 セキュリティ
WCCP には任意の認証機能があり、パスワードおよび HMAC MD5 標準を使用して、どのルータおよびコンテント エンジンがサービス グループの一部になるかを制御できます。共有秘密 MD5 ワンタイム認証( ip wccp [ password [ 0-7 ] password ] グローバル コンフィギュレーション コマンドで設定)により、メッセージを代行受信、検閲、および再生から保護することができます。
Web コンテンツ パケットの返送
エラーや過負荷のために、コンテント エンジンがキャッシュした要求オブジェクトを提供できない場合、コンテント エンジンは本来の宛先であるサーバに転送するように要求をルータに返します。WCCP は、どの要求がサービスを実行されずにコンテント エンジンから返されたかを確認します。ルータは、この情報を使用して、要求を本来の宛先サーバに転送します(コンテンツ クラスタに要求を再送信しません)。これにより、エラー処理がクライアントに透過的に行われることになります。
コンテント エンジンがパケットを拒否してパケットを返送する主な理由は次のとおりです。
• コンテント エンジンが過負荷でパケットを処理する余裕がない
• コンテント エンジンに一定のフィルタリングがあり、パケットのキャッシングは逆効果である(IP 認証がオンの場合など)
WCCP の制約事項
WCCP には次のような制約事項があります。
• WCCP は IP ネットワークだけで動作します。
• マルチキャスト クラスタにサービスを提供するルータの場合、Time To Live(TTL; 存続可能時間)値は 15 秒以下にする必要があります。
• ほとんどの場合、メッセージは IP マルチキャストのため、メンバは関係のないメッセージや重複メッセージを受信することがあります。適切なフィルタリングを実行する必要があります。
• 1 つのサービス グループは最大 32 のコンテント エンジンと 32 のルータで構成できます。
• クラスタのすべてのコンテント エンジンは、クラスタ サービスを行うすべてのルータと通信できるように設定する必要があります。
• 最大 8 つのサービス グループがクライアントの同一インターフェイス上で同時にサポートされます。
• L2 再書き込み転送方式はサポートされていますが、GRE カプセル化はサポートされていません。
• コンテント エンジンには L3 で直接接続する必要があります。1 つまたは複数のホップを経た L3 接続はサポートされません。
• レイヤ 2 リダイレクションでは、コンテント エンジンおよびクライアント インターフェイスはルータに直接接続し、異なる IP サブネットワークに存在することが必要です。
• TCAM と親和性の高いマスクベース割り当てはサポートされていますが、ハッシュ バケットベース方式はサポートされません。
• クライアント インターフェイスでの WCCP のリダイレクト ACL はサポートされません。
• インターフェイスでの着信トラフィックのリダイレクションはサポートされますが、発信トラフィックのリダイレクションはサポートされません。
• TCAM スペースを使い果たした場合はトラフィックはリダイレクトされず、通常どおりに転送されます。
• WCCP バージョン 2 標準では最大 256 の個別マスクをサポートします。ただし、Catalyst 4500 シリーズ スイッチは、単一マスクを持つマスク割り当てテーブルだけをサポートします。
WCCP の設定
次の設定作業は、ネットワークに含めるコンテント エンジンの設置および設定が完了していることを前提にしています。クラスタにコンテント エンジンを設定してから、ルータで WCCP 機能を設定する必要があります。コンテント エンジンの構成およびセットアップについては、『 Cisco Content Engine User Guide 』を参照してください。
キャッシュ エンジンに接続されているルータ インターフェイスに IP を設定する必要があります。ルータの設定作業の例は次の項で示します。コマンド構文の詳細については、『 Cisco IOS Configuration Fundamentals Command Reference , Cisco IOS Release 12.3』を参照してください。
ここでは、WCCP の設定手順について説明します。
• 「WCCP を使用したサービス グループの設定」(必須)
• 「WCCP サービス グループに対するアクセス リストの使用」(任意)
• 「ルータおよびキャッシュ エンジンへのパスワードの設定」(任意)
WCCP を使用したサービス グループの設定
WCCP は、トラフィックの代行受信およびリダイレクトを行うために導入された論理リダイレクション サービスに基づいてサービス グループを使用します。標準サービスはコンテント エンジンで、TCP ポート 80(HTTP)トラフィックを代行受信してコンテント エンジンにリダイレクトします。このサービスは well-known サービスとも呼ばれます。ルータとコンテント エンジンの両方が Web キャッシュ サービスの特性をよく知っているからです。よく知られたサービスの説明は、サービス ID 以外には要求されることはありません(この例では、Command Line Interface(CLI; コマンドライン インターフェイス)によりコマンド構文で web-cache キーワードが提供されます)。
ACNS バージョン 5.2 ソフトウェアでサポートされる WCCP サービスについては、『Release Notes for Cisco ACNS Software, Release 5.2.3』を参照してください。
Web キャッシュ サービス以外にも、最大 7 つのダイナミック サービスをスイッチで同時に実行できます。
(注) スイッチでは同時に複数のサービスが実行できます。また、ルータおよびコンテント エンジンは、同時に複数のサービス グループの一部になることができます。
ダイナミック サービスはコンテント エンジンによって定義されます。コンテント エンジンがルータにどのプロトコルやポートを代行受信してどのようにトラフィックを配信するかを指示します。ルータ自身はダイナミック サービス グループのトラフィック特性に関する情報を持っていません。この情報はグループに最初に加入したコンテント エンジンが提供します。ダイナミック サービスでは、1 つのプロトコル(TCP または UDP)に最大 8 つのポートを指定できます。
たとえば Cisco Content Engine はダイナミック サービス 99 を使用してリバース プロキシ サービスを指定します。ただし、このサービス番号は、他のコンテント エンジンでは他のサービスに使用されることがあります。次に、Cisco ルータで一般サービスをイネーブルにする手順を説明します。コンテント エンジンにサービスを設定する場合の詳細については、コンテント エンジンのマニュアルを参照してください。
Catalyst 4500 シリーズ スイッチでサービスをイネーブルにするには、次の作業を行います。
|
|
|
ステップ 1 |
Switch(config)# ip wccp { web-cache | service-number } [ group-address groupaddress ] [ group-list access-list ] [ password password ] |
スイッチでイネーブルにするダイナミック サービス、サービス グループで使用する IP マルチキャスト アドレス(任意)、コンテント エンジン メンバシップに使用するグループ リスト(任意)、MD5 認証の使用の有無(任意)を指定し、WCCP サービスをイネーブルにします。 |
ステップ 2 |
Switch(config)# interface type number |
設定するクライアント インターフェイスを指定し、インターフェイスコンフィギュレーション モードを開始します。 |
ステップ 3 |
Switch(config-if)# ip wccp { web-cache | service-number } redirect in |
指定したクライアント インターフェイスで、入力トラフィックの WCCP リダイレクションをイネーブルにします。 |
ステップ 4 |
Switch(config)# interface type number |
(マルチキャスト機能を実行する場合にだけ必要)マルチキャストを受信するように設定するコンテント エンジン インターフェイスを指定します。 |
ステップ 5 |
Switch(config-if)# ip wccp { web-cache | service-number } group-listen |
(マルチキャスト機能を実行する場合にだけ必要)ステップ 4 で指定したインターフェイスで IP マルチキャスト パケット(コンテント エンジンから送信される WCCP プロトコル パケット)の受信をイネーブルにします。 |
Web キャッシュ サービスの指定
Web キャッシュ サービスを設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Switch(config)# ip wccp web-cache |
スイッチで Web キャッシュ サービスをイネーブルにします。 |
ステップ 2 |
Switch(config)# interface type number |
Web キャッシュ サービスを実行するクライアント インターフェイス番号を指定し、コンフィギュレーション モードを開始します。 |
ステップ 3 |
Switch(config-if)# ip wccp web-cache redirect in |
ステップ 2 で指定したクライアント インターフェイスを使用して、コンテント エンジンにリダイレクトできるパケットかどうかのチェックをイネーブルにします。 |
WCCP サービス グループに対するアクセス リストの使用
Catalyst 4500 シリーズ スイッチは、アクセス リストを使用して、サービス グループに加入するコンテント エンジンを制限できます。
コンテント エンジンを制限するには、次の作業を行います。
|
|
|
ステップ 1 |
Switch(config)# access-list access-list permit ip host host-address [ destination-address | destination-host | any ] |
コンテント エンジンのユニキャスト アドレスに基づいたアクセス リストを作成します。 |
ステップ 2 |
Switch(config)# ip wccp web-cache group-list access-list |
スイッチに、どのコンテント エンジンのサービス グループへの加入が許可または不許可であるかを示します。 |
ルータおよびキャッシュ エンジンへのパスワードの設定
MD5 パスワード セキュリティでは、サービス グループに加入するコンテント エンジンおよび Catalyst 4500 シリーズ スイッチごとにサービス グループ パスワードを設定する必要があります。パスワードは 7 文字以内で指定します。サービス グループのコンテント エンジンまたは Catalyst 4500 シリーズ スイッチは、WCCP メッセージ ヘッダーを確認した直後に、受信した WCCP パケットのセキュリティ コンポーネントを認証します。認証に失敗したパケットは廃棄されます。
WCCP 通信で Catalyst 4500 シリーズ スイッチが使用する MD5 パスワードを設定するには、次の作業を行います。
|
|
Switch(config)# ip wccp web-cache password password |
Catalyst 4500 シリーズ スイッチに MD5 パスワードを設定します。 |
WCCP 設定値の確認および監視
WCCP の設定値を確認および監視するには、次のコマンドを EXEC モードで使用します。
|
|
Switch# show ip wccp [web-cache | service-number ] |
WCCP に関連するグローバル情報を表示します。この情報には、実行中のプロトコルのバージョン、ルータ サービス グループのコンテント エンジンの数、ルータに接続可能なコンテント エンジン グループ、使用中のアクセス リストが含まれます。 |
Switch# show ip wccp { web-cache | service-number } detail |
ルータが検出した、サービス グループのコンテント エンジンの情報を問い合せます。Web キャッシュ サービスまたは指定したダイナミック サービスのいずれかの情報を表示できます。 |
Switch# show ip interface |
ip wccp リダイレクション コマンドがクライアント インターフェイスで設定されているかどうかを表示します。たとえば、「Web Cache Redirect is enabled / disabled」 と表示されます。 |
Switch# show ip wccp { web-cache | service-number } view |
特定のサービス グループで検出された装置、トラブルが発生しているコンテント エンジン、現在のスイッチに接続されているその他のすべてのスイッチで認識可能なコンテント エンジンを表示します。 view キーワードは、サービス グループのアドレスのリストを表します。Web キャッシュ サービスまたは指定したダイナミック サービスのいずれかの情報を表示できます。 詳細なトラブルシューティング情報を表示するには、 show ip wccp { web-cache | service number } service コマンドを使用します。 |
WCCP の設定例
ここでは、次の設定例を示します。
• 「一般的な WCCP 設定の実行例」
• 「Web キャッシュ サービスの実行例」
• 「リバース プロキシ サービスの実行例」
• 「アクセス リストの使用例」
• 「スイッチおよびコンテント エンジンへのパスワードの設定例」
• 「WCCP 設定の確認例」
一般的な WCCP 設定の実行例
次に、一般的な WCCP 設定セッションの例を示します。VLAN 20 はクライアント インターフェイスです。VLAN 50 はコンテント エンジン インターフェイスです。
Switch# configure terminal
Switch(config)# ip wccp web-cache group-address 224.1.1.100 password alaska1
Switch(config)# interface vlan 20
Switch(config-if)# ip wccp web-cache redirect in
Switch(config)# interface vlan 50
Switch(config-if)# ip wccp web cache group-listen
Web キャッシュ サービスの実行例
次に、Web キャッシュ サービスの設定セッション例を示します。
Switch# configure terminal
Switch(config)# ip wccp web-cache
Switch(config)# interface vlan 20
Switch(config-if)# ip wccp web-cache redirect in
Switch# copy running-config startup-config
Switch# show ip interface vlan 20 | include WCCP Redirect
WCCP Redirect inbound is enabled
WCCP Redirect exclude is disabled
リバース プロキシ サービスの実行例
次に、リバース プロキシ サービスの実行にダイナミック サービス 99 を使用する Cisco Content Engine を使用してサービス グループを設定する例を示します。
Switch# configure terminal
router(config)# ip wccp 99
router(config)# interface vlan 40
router(config-if)# ip wccp 99 redirect in
アクセス リストの使用例
セキュリティを向上させるには、現在のスイッチで登録するコンテント エンジンのものとして有効な IP アドレスを、標準のアクセス リストを使用して Catalyst 4500 シリーズ スイッチに通知します。次に、標準のアクセス リスト設定セッションの例を示します。サンプル ホストのアクセス リスト番号は 10 です。
router(config)# access-list 10 permit host 11.1.1.1
router(config)# access-list 10 permit host 11.1.1.2
router(config)# access-list 10 permit host 11.1.1.3
router(config)# ip wccp web-cache group-list 10
スイッチおよびコンテント エンジンへのパスワードの設定例
次に、WCCP パスワード設定セッションの例を示します。パスワードは alaska1 です。
Switch# configure terminal
router(config)# ip wccp web-cache password alaska1
WCCP 設定の確認例
設定の変更を確認するには、 more system:running-config EXEC コマンドを使用します。次に、Catalyst 4500 シリーズ スイッチの Web キャッシュ サービスとダイナミック サービス 99 がどちらもイネーブルである場合の例を示します。
Switch# more system:running-config
Building configuration...
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
service udp-small-servers
service tcp-small-servers
enable secret 5 $1$nSVy$faliJsVQXVPW.KuCxZNTh1
ip address 10.3.1.2 255.255.255.0
ip wccp web-cache redirect in
ip address 10.4.1.1 255.255.255.0
ip default-gateway 10.3.1.1
ip route 0.0.0.0 0.0.0.0 10.3.1.1