Cisco ACNS Software Configuration Guide for Centrally Managed Deployments, Release 5.2
Chapter 4: Setting Up Content Request Routing in the ACNS Network

Table Of Contents

Setting Up Content Request Routing in the ACNS Network

Configuring WCCP Transparent Routing

About WCCP Services

About Dynamic WCCP Redirection Services

About WCCP Service for HTTPS

About WCCP Custom Web Cache Service

Configuring WCCP General Settings for the Content Engine

About Client IP Spoofing

About WCCP Slow Start

About WCCP Clean Shutdown

Configuring WCCP Service Settings for the Content Engine

About Load Balancing

Creating WCCP Router Lists

Configuring WCCP Port Lists for the Content Engine

Configuring WCCP Service Masks for the Content Engine

Enabling WCCP on the Router

Basic WCCP Router Configurations for Web Caching

Web Cache Service Configuration with Clients and Content Engine on the Same Subnet

Configuring the Content Engine for Web Cache Service—Clients and Content Engine on the Same Subnet

Configuring the Router for Web Cache Service—Clients and Content Engine on the Same Subnet

Configuration Examples—Web Cache Service with Clients and Content Engine on the Same Subnet

Web Cache Service Configuration with Clients and Content Engine on Different Subnets

Configuring the Content Engine for Web Cache Service—Clients and Content Engine on Different Subnets

Configuring the Router for Web Cache Service—Clients and Content Engine on Different Subnets

Configuration Examples—Web Cache Service with Clients and Content Engine on Different Subnets

Configuring DNS Caching Name Service for WCCP

Configuring DNS Caching Server Settings for the Content Engine

Cacheable Resource Records in the Content Engine DNS Cache

Configuring DNS Server Bindings for the Content Engine

Configuring DNS Address Record Mappings for the Content Engine

Configuring DNS Canonical Name Record Mappings for the Content Engine

Configuring Direct Proxy Routing

HTTP Proxy Caching

HTTP Transparent and Proxy Routing

FTP Proxy Caching

Examples

Using a Proxy Autoconfiguration File Server

Creating PAC File Templates

Registering a PAC File Template and Assigning Coverage Zone Information

Configuring a Content Engine as a PAC File Server

Configuring Content Request Routing Using a Content Router or Routing Content Engine

Coverage Zones and Coverage Zone Files

Registering Coverage Zone Files

Choosing the Coverage Zone

Using the Default Coverage Zone

Registering and Applying a User-Defined Coverage Zone

Coverage Zone File Examples

Scenario 1: No Network Address Translation Firewall

Scenario 2: Content Engine Behind a NAT Firewall

Scenario 3: Multiple Content Engines Behind a NAT Firewall

Scenario 4: NAT Firewall with Multiple IP Addresses

Configuring a Content Engine as a Routing Content Engine

Troubleshooting Content Router Configurations

Where to Go Next


Setting Up Content Request Routing in the ACNS Network


Cisco ACNS 5.2 software supports three methods of request handling to deliver content to the end user. These request handing methods are described in the following sections:

Configuring WCCP Transparent Routing

Configuring DNS Caching Name Service for WCCP

Configuring Direct Proxy Routing

Configuring Content Request Routing Using a Content Router or Routing Content Engine

Troubleshooting Content Router Configurations

Where to Go Next


Note For complete syntax and usage information for the CLI commands used in this chapter, refer to the Cisco ACNS Software Command Reference, Release 5.2 publication.


Figure 4-1 shows the basic tasks involved in configuring each of the three request handling methods.

Figure 4-1 Choosing a Routing Method

Configuring WCCP Transparent Routing

In the WCCP transparent routing method, requests for content made to an origin server are intercepted by a WCCP-enabled router. The WCCP-enabled router transparently redirects the request to a Content Engine containing the content. This type of transparent redirection allows for traffic interception on any port for traffic that traverses this router. WCCP contains many fail-safe mechanisms to ensure that the request interception remains entirely transparent to the end user.

To use a WCCP-enabled router, an IP address must be configured on the interface connected to the Internet, and the interface must be connected to the Content Engine. A Content Engine and a WCCP-enabled router cannot be separated by a firewall. The firewall handles only packet traffic toward the origin web server and does not handle packet traffic sent to the client by the Content Engine on behalf of the server.

You can configure only a single router to run the web cache service (WCCP Version 1 service). To use WCCP Version 1 with the Content Engine, you must point the Content Engine to a designated home router.

However, WCCP Version 2 enables a series of Content Engines, called a Content Engine cluster, to connect to multiple routers. This feature provides redundancy and a more distributed architecture for instances when a Content Engine needs to connect to a large number of interfaces. WCCP Version 2 also balances traffic load across a cache cluster and ensures fault-tolerant and fail-safe operation. As Content Engines are added to or deleted from a cache cluster, the WCCP-aware router or switch dynamically adjusts its redirection map to reflect the currently available caches.

When operating with WCCP Version 2, the Content Engine performs a clean shutdown after reboot, enabling WCCP Version 1, or disabling WCCP Version 2. A clean shutdown prevents broken TCP connections. (See the "About WCCP Clean Shutdown" section.)

Figure 4-2 shows how requests for content are routed using the WCCP transparent interception method.

Figure 4-2 Request Interception Using WCCP

1. A user requests a web page from a browser.

2. The WCCP-enabled router intercepts the request, and based on the TCP destination port number, the router determines whether it should transparently redirect the request to a Content Engine. Access lists are used to control which requests can be redirected.

3. If the Content Engine does not have the requested content, it sets up a separate TCP connection to the origin server to retrieve the content (3a in Figure 4-2). The content returns to, and is stored on, the
Content Engine (3b in Figure 4-2).

4. The Content Engine sends the content to the client. Upon subsequent requests for the same content, the Content Engine transparently fulfills the request from its local storage.

WCCP can also handle asymmetric packet flows and always maintains a consistent mapping of web servers to Content Engines regardless of the number of routers used in a WCCP service group (up to 32 routers communicating with up to 32 Content Engines in a cluster).

There are some significant advantages to using a WCCP-enabled router for request routing interception in transparent mode:

No end user configuration—Users do not have to point their browsers to the Content Engine.

Fail-safe—Content Engines are automatically fault-tolerant and fail-safe. Any Content Engine failure does not cause denial of service to the end user.

Scalable—Cache services can be scaled by deploying multiple Content Engines.

Automatic bypass—Sites which depend on end user authentication or which fail to conform to HTTP standards will automatically bypass a transparent Content Engine.

About WCCP Services

WCCP uses the concept of a service group to define caching related services for a WCCP-enabled router and WCCP-enabled Content Engines in a cluster. Service groups are identified by a service group number. Each WCCP service group number specifies a router list, single port list (containing up to eight ports), application type, hash parameters, password, and weight (for load balancing).

Table 4-1 lists the service group numbers and describes the services supported by a WCCP-enabled router.

Table 4-1 WCCP Service Groups 

Service Group Number
Description of Services

0

Web cache

60

FTP

70

HTTPS

80

HTTP, RTSP

81

MMST

82

MMSU

90-97

Dynamic or user-configurable

98

Custom

99

Reverse proxy



Note All service group numbers listed in Table 4-1 except for web cache services (service group 0) require WCCP Version 2.


A WCCP-enabled Content Engine supports various Internet protocols depending on the style of the request URL. If the WCCP-enabled Content Engine receives a server-style URL, only HTTP and RTSP protocols are supported (if the RTSP user agent criteria is met). If the WCCP-enabled Content Engine receives a proxy-style URL, the HTTP, HTTPS, FTP, and RTSP protocols are supported, as long as the respective proxy services are configured on the Content Engine. Proxy-style request URLs include the protocol and host name, whereas server-style request URLs do not. The RTSP protocol is supported for both server-style and proxy-style requests.

For proxy-style requests, the Content Engine supports up to eight incoming ports each for FTP, HTTPS, HTTP, MMS, and RTSP proxy modes. The incoming proxy ports can be the same ports that are used by transparent mode services. The incoming proxy ports can be changed without stopping any WCCP services running on the Content Engine or on other Content Engines in the Content Engine farm.

The Content Engine WCCP implementation currently allows global settings that apply to all WCCP services, such as healing parameters, slow start, and others. The multiple service model does not change that, and the settings in question remain global for the whole WCCP system. (See the "Configuring WCCP General Settings for the Content Engine" section.)

About Dynamic WCCP Redirection Services

You can configure the Content Engines to handle up to eight user-configurable or dynamic WCCP redirection services (service group numbers 90 to 97) on a Content Engine, provided that the services are also configured on the router.

With 8 dynamic services using a maximum number of 8 ports each, the maximum number of ports that can be specified for transparent redirection is 64. In Figure 4-3, the two Content Engines on the left handle only HTTP traffic through port 80 and are defined as members of service group 90. The two Content Engines on the right handle only Microsoft Media Server (MMS) requests and are defined as members of service group 91.

Figure 4-3 WCCP Service Group Feature

About WCCP Service for HTTPS

WCCP service for HTTPS traffic (service number 70) instructs the corresponding router to intercept port 443 TCP traffic (port 443 is the default port) and forward it to the Content Engine. This service has a special filtering feature that a normal WCCP service does not have; it uses an accept list to selectively redirect traffic to an application instead of redirecting all traffic to related applications. The accept list is a list of destination IP addresses. When the destination server's IP address in a client request matches any of the destination IP addresses in the list, WCCP redirects HTTPS traffic to the proper listening application. All other traffic is redirected to the corresponding router (normal bypass behavior). If bypass lists are configured to permit traffic from specified sources to bypass the Content Engine, traffic is not intercepted but passes directly to the origin server. If an address is present in both the accept list and bypass list, the Content Engine can return traffic to the WCCP-enabled router or switch and inform the router or switch to forward the packets as if the Content Engine were not present.

For HTTPS filtering feature to work, ensure that the Accept all HTTPS traffic check box (Request Routing > WCCP > General Settings) in the Content Distribution Manager GUI is checked so that all HTTPS traffic will be intercepted by the Content Engine. The Content Engine can negotiate an SSL connection with the client and serve HTTPS requests if the corresponding destination HTTPS server is configured on the Content Engine. Otherwise, HTTPS traffic is tunneled through the Content Engine (Content Engine passes traffic from client to server without modifying anything, except for filtering). When the SmartFilter software or Websense filtering server is enabled on the Content Engine, the Content Engine will send URLs corresponding to tunneled HTTPS traffic to the filtering server. Filtering servers can decide to block or pass the traffic. If traffic needs to be blocked, the Content Engine closest to the connection with the client and the request is not served.

About WCCP Custom Web Cache Service

Custom web cache service (service number 98) causes the Content Engine to establish WCCP Version 2 redirection services automatically with a Cisco router on a user-specified port number. The Content Engine then performs transparent web caching for all HTTP requests over that port while port 80 transparent web caching continues without interruption. For custom web caching, service 98 must be enabled on the routers. WCCP Version 1 does not support custom web caching.

Transparent caching on ports other than port 80 can be performed by the Content Engine when WCCP is not enabled or when client browsers have previously been configured to use a legacy proxy server.

Configuring WCCP General Settings for the Content Engine

To use WCCP, the Content Engine must be properly configured. Use the following configuration guidelines to help you configure the Content Engine for edge interception using a WCCP-enabled router:

Versions of software on the Content Engines must be compatible with those installed on the router.

The Content Engines must not have their packets encrypted or compressed and should be part of the "inside" Network Address Translation firewall if one is present.

Placing a Content Engine beyond a web cache redirect-enabled interface and along the route to the server will not cause the IP route cache to be populated with an entry.

To use a WCCP-enabled router, an IP address must be configured on the router interface that is connected to the Internet, and this interface must be visible to the Content Engine on the network.


Note ACNS 5.x software currently emphasizes the use of WCCP Version 2. However, WCCP Version 1 is still supported by the ACNS 5.x release.


To configure general WCCP settings for the Content Engine, follow these steps:


Step 1 Choose Devices > Devices. The Devices window appears, listing all the device types configured in the ACNS network.

Step 2 Click the Edit icon next to the Content Engine for which you want to configure WCCP general settings. The Device Home for Content Engine window appears.

Step 3 In the Contents pane, choose Request Routing > WCCP > General Settings. The WCCP Configuration Settings for Content Engine window appears. Table 4-2 describes the fields in this window and provides the corresponding CLI global configuration commands.

Step 4 Choose the version of WCCP that the Content Engine should use from the WCCP Version drop-down list. Both WCCP versions allow transparent caching of web content. It is not necessary to disable WCCP Version 1 before enabling WCCP Version 2, and vice versa. Be sure the routers used in the WCCP environment are running a software version that supports the WCCP version configured on the Content Engine.

Step 5 In the Home Router IP Address field, specify an IP address to configure a WCCP Version 1 router. To use WCCP Version 1 with the Content Engine, you must also point the Content Engine to a designated home router. This may also be the address of the IP default gateway.


Note Make sure that WCCP Version 1 is enabled on the router.


Step 6 Check the Enable Flow Redirection check box to keep the TCP flow intact as well as to not overwhelm Content Engines when they come up or are reassigned new traffic. This configuration works with WCCP Version 2 only. This feature also has a slow start mechanism whereby the Content Engines try to take a load appropriate for their capacity.

Step 7 Check the Spoofing Client IP check box to enable the Content Engine to send out the client's IP address for authentication purposes on the origin web servers during transparent redirection process. For more information on IP spoofing, see the "About Client IP Spoofing" section.

Step 8 Check the Slow Start check box to enable the slow start capability on the Content Engine. For more information on WCCP slow start feature, see the "About WCCP Slow Start" section.

Step 9 In the Shutdown Delay field, specify the maximum amount of time (in seconds) the Content Engine waits to perform a clean shutdown of WCCP. For more information on WCCP shutdown delay, see the "About WCCP Clean Shutdown" section.

Step 10 Check the Accept all HTTPS traffic check box to enable the Content Engine to accept all HTTPS traffic by default. Otherwise, the Content Engine will only accept the traffic if the HTTPS server is configured. For more information on WCCP service for caching HTTPS traffic, see the "About WCCP Service for HTTPS" section.

Step 11 Click Submit to save the settings.

Table 4-2 WCCP General Settings 

GUI Parameter
Function
CLI Command

WCCP Version

Enables WCCP version 1 or 2.

wccp version {1 | 2}

Home Router IP Address

IP address to configure a WCCP Version 1 router.

wccp home-router ipaddress

Enable Flow Redirection

Keeps the TCP flow intact.

wccp flow-redirect enable

Spoofing Client IP

Enables the Content Engine to send out the client's IP address for authentication purposes on the origin web servers during transparent redirection process.

wccp spoof-client-ip enable

Slow Start

Enables the slow start capability.

wccp slow-start enable

Shutdown Delay

Maximum amount of time (in seconds) the Content Engine waits to perform a clean shutdown of WCCP.

wccp shutdown max-wait seconds

Accept all HTTPS traffic

Enables the Content Engine to accept all HTTPS traffic by default.

wccp https-cache accept-all



About Client IP Spoofing

In transparent caching, when the Content Engine contacts the origin web server, it uses the Content Engine's own IP address instead of the client's IP address, on behalf of which the Content Engine is making the request. With IP spoofing, the transparent redirection process enables the Content Engine to send out the client's IP address for authentication purposes on origin web servers.

When the Content Engine is performing normal WCCP caching without IP spoofing, the Content Engine connects the origin servers using its own IP address. Routers identify the requests as coming from the Content Engine using its own source IP address in the request and forwards the requests out onto the WAN. The router forwards requests coming from the clients on the LAN to the Content Engine.

When configured for IP spoofing, the Content Engine connects to the origin server using the client IP address instead of its own IP address. At this point, the router cannot identify requests coming from the Content Engine because the source IP address of the request is not that of Content Engine. To prevent these Content Engine requests from being returned to the Content Engine unresolved, the ip wccp redirect exclude in command must be applied to the WCCP-enabled router interface to which the Content Engine is connecting.

The ip wccp redirect exclude in command prevents the WCCP-enabled router from intercepting any requests coming in on this interface. To allow interception of client requests, the ip wccp redirect out command must be configured on those interfaces connected to the client and the WAN.

About WCCP Slow Start

Within a cluster of Content Engines, TCP connections are redirected to other Content Engines as units are added or removed. A Content Engine can be overloaded if it is reassigned new traffic too quickly or introduced abruptly into a fat pipe.

WCCP slow start performs the following tasks to prevent a Content Engine from being overwhelmed when it comes online or is reassigned new traffic:

TCP flow protection when WCCP 2 is enabled and a Content Engine is introduced into the cluster

TCP flow protection when WCCP 2 is disabled and a Content Engine is leaving the cluster

Load assignment to the Content Engine in slow increments rather than a full load at bootup

Slow start is applicable only in the following cases:

Initial bootup when there is no Content Engine yet present in the server farm

When a new Content Engine is added to a cluster that is not handling the full load; for example, when there are some buckets that are being shed by the cluster

In all other cases slow start is not necessary and all the Content Engines can be assigned their share of traffic right away.

About WCCP Clean Shutdown

To prevent broken TCP connections, the Content Engine performs a clean shutdown of WCCP after a reload or WCCP version change. The Content Engine does not reboot until either all connections have been serviced or the configured maximum wait interval has elapsed.

During a clean shutdown, the Content Engine continues to service the flows it is handling but starts to bypass new flows. When the number of flows goes down to zero, the Content Engine takes itself out of the cluster by having its buckets reassigned to other Content Engines by the lead Content Engine. TCP connections can still be broken if the Content Engine crashes or is rebooted without WCCP being cleanly shut down. The clean shutdown can be aborted while in progress.

Configuring WCCP Service Settings for the Content Engine

To configure WCCP services, you need to configure four sets of settings:

WCCP Service

Dynamic Service Settings

Load Balancing Hash

Other Settings

To configure WCCP service settings for the Content Engine, follow these steps:


Step 1 Choose Devices > Devices. The Devices window appears, listing all the device types configured in the ACNS network.

Step 2 Click the Edit icon next to the Content Engine for which you want to configure WCCP service settings. The Device Home for Content Engine window appears.

Step 3 In the Contents pane, choose Request Routing > WCCP > Services. The WCCP Service Settings for Content Engine window appears.


Note The Content Engine settings or its associated device group settings will be applied to this window depending on the choice that you have made in the WCCP General Settings window.


Step 4 Click the Create New WCCP Service Setting icon in the taskbar to create a new service, configure router lists, and associate ports with WCCP Version 2 dynamic service. The Creating new WCCP Service window appears.

You can configure a maximum of sixteen services. If sixteen services have already been defined, the icon is not visible in the taskbar.


Note All settings for a particular WCCP service can be configured only after it has been associated with a router list.


Step 5 Under the WCCP Service section, follow these steps:

a. Choose the type of WCCP service from the Service Type drop-down list. See Table 4-3 for a description of the service types.

Table 4-3 WCCP Service Types

Service Type
Description of Services
CLI Command

DNS

Allows a WCCP-enabled router to intercept and redirect DNS packets to a boomerang server, which will then accept the intercepted packets and process them, including reinserting the packets into the request stream.

wccp dns

FTP

Enables transparent interception of FTP traffic with WCCP Version 2.

wccp ftp

HTTPS

Enables WCCP flow redirection to a Content Engine configured as an HTTPS server.

wccp https

RTSP

Configures WCCP Version 2 Real-Time Streaming Protocol (RTSP) transparent interception.

wccp rtsp

WMT

Enables WCCP Version 2 Windows Media Technologies (WMT) transparent interception.

wccp wmt

Reverse Proxy

Enables WCCP Version 2 reverse proxy service. When WCCP reverse proxy is enabled, the router does load balancing in a cluster based on the source IP address (for example, the client's browser IP address).

wccp reverse-proxy

Web cache

Enables web cache service with WCCP Version 2. With web cache service, the router balances the traffic load within a Content Engine cluster based on the destination IP address (for example, web server IP address).

wccp web-cache

Custom WebCache

Enables the Content Engine to accept redirected HTTP traffic on a port other than 80.

wccp custom-web-cache

Dynamic Service Number

Enables up to eight dynamic WCCP redirection services on the Content Engine.

wccp service-number


b. Choose a configured router list from the Router List drop-down list. All configured router lists will be displayed here. A WCCP service will be enabled only if it is associated with a router list.

c. To configure a router list for WCCP Version 2 or if no router list already exists, click the New Router List button. The Creating new WCCP Router window appears. For more information on creating router lists, see the "Creating WCCP Router Lists" section.

d. To add or delete an IP address to a configured router list, click the Edit Router List button. For more information on modifying router lists, see the "Modifying WCCP Router Lists for the Content Engine" section.

e. To view all configured router lists, click the View All Router Lists button. For more information on viewing router lists, see the "Viewing WCCP Router Lists for the Content Engine" section.

Step 6 Under the Dynamic Service Settings section, follow these steps. All settings under this section can be configured for dynamic web cache services only.

a. Choose the port list number to associate ports with specific WCCP Version 2 dynamic services from the Port List drop-down list. All configured port lists will be displayed here. You can associate ports only with user-configurable web cache services (90-97). For all other services, the Port List drop-down list is disabled.

b. To configure a port list for WCCP Version 2 dynamic services or if no port list already exists, click the New Port List button. The WCCP Port List Settings window appears. For more information on creating port lists, see the "Configuring WCCP Port Lists for the Content Engine" section.

c. To add or delete a port number to a configured port list, click the Edit Port List button. For more information on modifying port lists, see the"Modifying WCCP Port Lists for the Content Engine" section.

d. Choose the application running on the Content Engine to which intercepted traffic must be redirected from the Application drop-down list. See Table 4-4 for a description of the options in the drop-down list.

Table 4-4 Application Options

Option
Description

cache

Redirects traffic to the caching application running on the Content Engine.

https-cache

Redirects traffic to the HTTPS caching application running on the Content Engine.

streaming

Redirects traffic to the streaming media application running on the Content Engine.


e. Check the Match Source Port check box to match the source port for redirection of traffic.

Step 7 Under the Load Balancing Hash section, follow these steps. The hash assignment method of load balancing cannot be defined for FTP, reverse proxy, and web cache WCCP Version 2 services. See the "About Load Balancing" section.

a. Check the Destination IP check box to define load-balancing hash of the destination IP address. This is the default method of hash assignment for the following WCCP Version 2 services:

RTSP

WMT

Custom web cache

Dynamic services

b. Check the Source IP check box to define load-balancing hash of the source IP address. This is the default method of hash assignment for HTTPS cache service.

c. Check the Destination Port check box to define load-balancing hash of the destination port.

d. Check the Source Port check box to define load-balancing hash of the source port. This is the default method of hash assignment for DNS service.

Step 8 Under the Other Settings section, follow these steps:

a. Check the Use Selected Assignment Method check box to force WCCP to strictly use only the configured assignment method. This setting can be configured only for DNS, FTP, HTTPS cache, reverse proxy, custom web cache, web cache, and WMT services. When applied, either of the two load balancing methods, hash assignment or mask assignment, can be used.

b. Check the Layer2 Redirection check box to permit the Content Engine to receive transparently redirected traffic from a WCCP Version 2-enabled switch or router if the Content Engine has a Layer 2 connection with the device, and the device is configured for Layer 2 redirection.

c. In the Password field, specify the password to be used for secure traffic between the Content Engines within a cluster and the router for a specified service. Be sure to enable all other Content Engines and routers within the cluster with the same password.

Passwords must not exceed 8 characters in length. Reenter the password in the Confirm Password field.

d. In the Weight field, specify the weight parameter that represents a percentage of the total load redirected to the Content Engine (for example, a Content Engine with a weight of 30 receives 30 percent of the total load). If the total of all weight parameters in a Content Engine cluster exceeds 100, the percentage load for each Content Engine is recalculated as the percentage that its weight parameter represents of the combined total.

e. In the Port field, specify the port number other than port 80 that will accept redirected HTTP traffic (configurable only for custom web cache service). See the"About WCCP Custom Web Cache Service" section.

Step 9 Check the Use Mask Assignment check box to use the mask method for Content Engine assignment.

Step 10 To create a new WCCP service mask, click the Create Mask button. For more information on creating service masks, see the "Configuring WCCP Service Masks for the Content Engine" section.

Step 11 To modify or delete a configured service mask, click the Edit Mask button. For more information on modifying service masks, see the "Modifying WCCP Service Masks for the Content Engine" section.

Step 12 To view all configured service masks, click the View Masks Configured for All Services button. For more information on viewing service masks, see the "Viewing WCCP Service Masks for the Content Engine" section.


About Load Balancing

WCCP Version 2 has the capability to adjust the load being offered to individual Content Engines to provide more effective use of the resources available and at the same time help to ensure high quality of service to clients. Load balancing allows the set of hash buckets assigned to a Content Engine to be adjusted so that the load can be shifted from an overwhelmed Content Engine to other Content Engines that have available capacity.

With the hash assignment method, the hash parameters specify how traffic should be load balanced among the different service groups. Specifically, hashing maps items from one item set to another, such as mapping destination IP addresses or destination ports to different Content Engines in a service group from the WCCP-enabled router for load-balancing purposes. Only one load-balancing method can be used per Content Engine farm.

Creating WCCP Router Lists

You can configure various router lists for use with WCCP Version 2 services. For example, you can specify one router list for WCCP Version 2 web cache service and another list for reverse proxy at the same time without having to reconfigure groups of routers or Content Engines. You can add up to 8 router lists and up to 32 IP addresses per list. A router list must be associated with at least one IP address.

To create WCCP router lists, follow these steps:


Step 1 From the Content Distribution Manager GUI, choose Devices > Devices. The Devices window appears.

Step 2 Click the Edit icon next to the name of the Content Engine for which you want to configure WCCP services.

Step 3 In the Contents pane, choose Request Routing > WCCP > Services. The WCCP Service Settings for Content Engine window appears.

Step 4 Click the Create New WCCP Service Setting icon in the taskbar. The Creating New WCCP Service window appears.

Alternatively, click the Edit WCCP Service Setting icon next to an existing WCCP service for which you want to configure router lists. The Modifying WCCP Service window appears.

Step 5 Under the WCCP Service section, choose a service type from the Service Type drop down list.

Step 6 Choose the router list number from the List Number drop-down list. All list numbers that have not been previously configured are displayed. Each router list has a unique list number.

Step 7 Click the New Router List button to configure a router list for WCCP Version 2. The Creating new WCCP Router window appears.

Step 8 In the Router IP Address field, specify the IP address of the router to be added to the list. You must enter at least one IP address. Otherwise, an error message is displayed on submit.

All IP addresses added must be unique within the router list. Otherwise, an error message is displayed on submit.

Step 9 Click Add to add an IP address to the list. This represents the IP address of every router that will redirect traffic to this Content Engine for a particular service. If different routers will be used for different services, it is necessary to create more than one router list.

The window refreshes and the addresses are listed in numerical order. The order might not match the order in which IP addresses were entered. IP addresses will be displayed in red until settings are saved.

Step 10 Click Submit to save the router list or any edits you have made to the router IP addresses. You are returned to the WCCP Service window.


Modifying WCCP Router Lists for the Content Engine

To modify a router list, follow these steps:


Step 1 From the Creating new WCCP Service window or Modifying WCCP Service window, choose the router list number from the List Number drop-down list.

Step 2 Click the Edit Router List button. The Modifying WCCP Router List window appears.

Step 3 To add a router to the router list, enter the router's IP address in the Router IP Address field and click the Add button.

Step 4 To modify the router IP address, click the Edit IP Address icon next to the IP address that you want to modify. The IP address will be displayed in the Router IP Address field. Once you have changed the IP address, click the Edit button to add the modified IP address to the list. The window refreshes itself and the changed IP address will be displayed in purple until settings are saved.


Note The Edit button next to the Router IP Address field is displayed as Add to allow you to add any new IP address to the list. The Edit button toggles with the Add button.


Step 5 Click Submit to save the settings. The window refreshes itself and the settings are saved.

Step 6 To delete an IP address from the router list, follow these steps:

a. Click the Delete IP Address icon next to the listed IP address. The window refreshes itself and the deleted IP address will be displayed in red with a strikethrough until settings are saved.

b. Click Submit to save the settings. The window refreshes itself and the deleted IP addresses are removed from display.

Step 7 To delete a router list, follow these steps:

a. From the Modifying WCCP Router window, click the Delete Router List icon in the taskbar. The system displays a dialog box asking you to confirm whether you want to permanently delete the router list configuration.


Note When you delete a router list, the WCCP Version 2 services that have been configured to use this router list are also deleted. Make sure that the WCCP service is associated with a different router list, if required, before deleting the previously configured router list.


b. Click OK to confirm your decision. The selected router list and the services with which it is associated are deleted.


Viewing WCCP Router Lists for the Content Engine

To view all router lists configured for a WCCP Version 2 dynamic service, follow these steps:


Step 1 From the Creating new WCCP Service window or Modifying WCCP Service window, click the View All Router List button to view all configured router lists for WCCP Version 2. The WCCP Router List Configurations for Content Engine window appears. The List Number column displays all configured router list numbers. The Router IP Addresses column displays a list of IP addresses added to the router list.

Step 2 To configure a new router list and add IP addresses from this window, click the Create New WCCP Router List Configuration icon in the taskbar. The Creating new WCCP Router List window appears.

Alternatively, click the Edit WCCP Router List Configuration icon next to the router list that you want to modify. The Modifying WCCP Router window appears. You can add, update, or delete IP addresses.


Configuring WCCP Port Lists for the Content Engine

With eight custom services using a maximum number of eight ports each, the maximum number of ports that can be specified for transparent redirection is 64.

The legacy custom web cache and reverse proxy services (service numbers 98 and 99) can be configured with only one port each. If only one legacy service is configured, the total maximum number of transparent redirection ports is 57. If both legacy services are configured, the maximum port total is 50.

All ports receiving HTTP that are configured as members of the same WCCP service share the following characteristics:

They have the same hash or mask parameters as configured using the Creating new WCCP Service window.

The service on individual ports cannot be stopped or started individually (WCCP Version 2 restriction).

With Content Engines in a farm, the following restrictions apply:

All Content Engines that use the same WCCP service are required to configure the same list of ports and the same hash or mask parameters.

A Content Engine that tries to join the farm with the same WCCP service using a different list of ports or different hash or mask parameters is rejected by the router.

To change the port list for a particular WCCP service, WCCP service must be stopped on all involved Content Engines, and then all must be restarted with the new parameters.

To configure WCCP port lists for the Content Engine, follow these steps:


Step 1 Choose Devices > Devices. The Devices window appears, listing all the device types configured in the ACNS network.

Step 2 Click the Edit icon next to the Content Engine for which you want to configure WCCP port lists. The Device Home for Content Engine window appears.

Step 3 In the Contents pane, choose Request Routing > WCCP > Services. The WCCP Service Settings for Content Engine window appears.

Step 4 Click the Create New WCCP Service Setting icon in the taskbar to configure router lists for a new service. The Creating new WCCP Service window appears.

Alternatively, click the Edit WCCP Service Setting icon next to an existing WCCP service for which you want to configure router lists. The Modifying WCCP Service window appears.

Step 5 Under the WCCP Service section, choose a WCCP dynamic redirection service from the Service Type drop-down list.

Step 6 Under the Dynamic Service Settings section, click the New Port List button to configure a port list number to associate ports for a WCCP Version 2 dynamic service. The WCCP Port List Settings window appears.

Step 7 Under the Ports column and against a port list number, specify the port number to be added to the list. You can configure a maximum of 8 port numbers per list.

Each port number added must be unique among all configured port lists. Otherwise, an error message is displayed on submit.

For a port list, port numbers need not necessarily be entered in successive fields under the Ports column. Blank fields in between will be removed on submit and all added port numbers will be reordered and displayed in ascending order, when you visit the window the next time.

Step 8 Click Submit to save the settings. The Creating new WCCP Service window or Modifying WCCP Service window appears depending on the window from which you traversed.


Modifying WCCP Port Lists for the Content Engine

To modify a port list, follow these steps:


Step 1 From the Creating new WCCP Service window or Modifying WCCP Service window, click the Edit Port List button to configure a port list for WCCP Version 2 dynamic services. The WCCP Port List Settings window appears.

Step 2 To modify port numbers in the port list,

a. Choose a port list number and edit any of the port numbers that you wish to change in the Ports column for that row.

b. Click Submit to save the settings. The Creating new WCCP Service window or Modifying WCCP Service window appears depending on the window from which you traversed.

Step 3 To delete a port list,

a. Check the Clear List check box next to the port list that you want to delete. All added port numbers will be removed from the port list.

b. Click Submit to save the settings. The Creating new WCCP Service window or Modifying WCCP Service window appears depending on the window from which you traversed.


Configuring WCCP Service Masks for the Content Engine

You can configure up to 16 WCCP service masks. For FTP service, only IP masks can be configured and therefore port mask fields are disabled for entry.

Bit masks are specified as hexadecimal numbers. All the specified bit masks together cannot have more than 7 bits set. For example, a correct way of using three masks is OxF (4 bits), Ox1 (1 bit), and Ox3 (2 bits) for a total of 7 bits. In this case, you cannot configure any additional mask other than 0x0. Otherwise, an error message is displayed.

An example of using four masks could be 0xA (2 bits), 0x7 (3 bits), 0x8 (1 bit), 0x1 (1 bit) for a total of 7 bits.

To configure WCCP service masks for a WCCP service configured on the Content Engine, follow these steps:


Step 1 Choose Devices > Devices. The Devices window appears, listing all the device types configured in the ACNS network.

Step 2 Click the Edit icon next to the Content Engine for which you want to configure WCCP service masks. The Device Home for Content Engine window appears.

Step 3 In the Contents pane, choose Request Routing > WCCP > Services. The WCCP Service Settings for Content Engine window appears.

Step 4 Click the Create New WCCP Service Setting icon in the taskbar to configure router lists for a new service. The Creating new WCCP Service window appears.

Alternatively, click the Edit WCCP Service Setting icon next to an existing WCCP service for which you want to configure router lists. The Modifying WCCP Service window appears.

Step 5 Under the WCCP Service section, choose a WCCP service from the Service Type drop-down list.

Step 6 Under the Other Settings section, click the Create Mask button next to the Use Mask Assignment check box to configure a service mask and associate it with a WCCP Version 2 service. The Creating new WCCP Service Mask window appears.

Step 7 Choose the type of WCCP service from the Service Type drop-down list. Table 4-5 describes these service types.

Table 4-5 Service Types 

Service Type
Description

DNS

Allows a WCCP-enabled router to intercept and redirect DNS packets to a boomerang server, which will then accept the intercepted packets and process them, including reinserting the packets into the request stream.

FTP

Enables transparent interception of FTP traffic with WCCP Version 2.

HTTPS

Enables WCCP flow redirection to a Content Engine configured as an HTTPS server.

RTSP

Configures WCCP Version 2 Real-Time Streaming Protocol (RTSP) transparent interception.

WMT

Enables WCCP Version 2 Windows Media Technologies (WMT) transparent interception.

Reverse proxy

Enables WCCP Version 2 reverse proxy service.When WCCP reverse proxy is enabled, the router does load balancing in a cluster based on the source IP address (for example, the client's browser IP address).

Web cache

Enables web cache service with WCCP Version 2. With web cache service, the router balances the traffic load within a Content Engine cluster based on the destination IP address (for example, web server IP address).

Custom web cache

Enables the Content Engine to accept redirected HTTP traffic on a port other than 80.

Dynamic Service Number

Enables up to eight dynamic WCCP redirection services on the Content Engine.


Step 8 In the Source IP Mask field, specify the IP address mask defined by a hexadecimal number (for example, 0xFE000000) used to match the packet source IP address. The range is 0x00000000-0xFE000000. The default is 0x00000000.

Step 9 In the Source Port Mask field, specify the port mask defined by a hexadecimal number (for example, 0xFE00) used to match the packet source port number. The port mask range is 0x00-0xFE. The default is 0x0.

Step 10 In the Destination IP Mask field, specify the IP address mask defined by a hexadecimal number (for example, 0xFE000000) used to match the packet destination IP address. The range is 0x0000000-0XFE000000. The default is 0x00001741.

Step 11 In the Destination Port Mask field, specify the port mask defined by a hexadecimal number (for example, 0xFE00) used to match the packet destination port number. The port mask range is 0x00-0xFE. The default is 0x0.

Step 12 Click Submit to save the settings. The Creating new WCCP Service window or the Modifying WCCP Service window appears depending on the window from which you navigated.


Modifying WCCP Service Masks for the Content Engine

To modify a service mask for a WCCP service configured on the Content Engine, follow these steps:


Step 1 Choose Devices > Devices. The Devices window appears, listing all the device types configured in the ACNS network.

Step 2 Click the Edit icon next to the Content Engine for which you want to configure WCCP service masks. The Device Home for Content Engine window appears.

Step 3 In the Contents pane, choose Request Routing > WCCP > Services. The WCCP Service Settings for Content Engine window appears.

Step 4 Click the Create New WCCP Service Setting icon in the taskbar to configure router lists for a new service. The Creating new WCCP Service window appears.

Alternatively, click the Edit WCCP Service Setting icon next to an existing WCCP service for which you want to configure router lists. The Modifying WCCP Service window appears.

Step 5 Under the WCCP Service section, choose a WCCP service from the Service Type drop-down list.

Step 6 Under the Other Settings section, click the Edit Mask button next to the Use Mask Assignment check box to modify a service mask and associate it with a WCCP Version 2 service. The Modifying WCCP Service Mask window appears.

The Edit Mask button toggles with the Create Mask button if a service mask has already been configured for a WCCP service.

Step 7 Choose the type of WCCP service from the Service Type drop-down list. See Table 4-5 for a description of the service types.

Step 8 In the Source IP Mask field, specify the IP address mask defined by a hexadecimal number (for example, 0xFE000000) used to match the packet source IP address. The range is 0x00000000-0xFE000000. The default is 0x00000000.

Step 9 In the Source Port Mask field, specify the port mask defined by a hexadecimal number (for example, 0xFE00) used to match the packet source port number. The port mask range is 0x00-0xFE. The default is 0x0.

Step 10 In the Destination IP Mask field, specify the IP address mask defined by a hexadecimal number (for example, 0xFE000000) used to match the packet destination IP address. The range is 0x0000000-0xFE000000. The default is 0x00001741.

Step 11 In the Destination Port Mask field, specify the port mask defined by a hexadecimal number (for example, 0xFC00) used to match the packet destination port number. The port mask range is 0x0-0xFE. The default is 0x0.

Step 12 Click Submit to save the settings. The Creating new WCCP Service window or the Modifying WCCP Service window appears depending on the window from which you navigated.


To delete a service mask, follow these steps:


Step 1 From the WCCP Service Mask Settings for Content Engine window, click the Edit WCCP Service Mask Setting icon next to an existing WCCP service mask for which you want to change the mask settings. The Modifying WCCP Service Mask window appears.

Step 2 Click the Delete WCCP Service Mask icon in the taskbar. The system displays a dialog box asking you to confirm whether you want to permanently delete the service mask configuration.

Step 3 Click OK to confirm. The WCCP Service Mask Settings for Content Engine window appears.


Viewing WCCP Service Masks for the Content Engine

To view all masks configured for a WCCP service, follow these steps:


Step 1 From the Creating new WCCP Service window or Modifying WCCP Service window, click the View Masks Configured for All Services button to view all configured service masks for WCCP services. The WCCP Service Mask Settings for Content Engine window appears. A list of all services for which masks have been configured to match the packet source IP address, source port number, destination IP address, or destination port number are displayed.

Step 2 To return to the Creating new WCCP Service or Modifying WCCP Service window, click the Back (left arrow) icon in the taskbar.

Step 3 To configure a new service mask, click the Create New WCCP Service Mask Setting icon in the taskbar. The Creating new WCCP Service Mask window appears.

Alternatively, click the Edit WCCP Service Mask Setting icon next to an existing WCCP service mask for which you want to change the mask settings. The Modifying WCCP Service Mask window appears.


Enabling WCCP on the Router

To enable an interface to redirect web traffic to the Content Engine using WCCP Version 2, perform the following tasks beginning in global configuration mode on the router:

 
Command
Purpose

Step 1 

Router(config)# ip wccp enable

Enables the router to use WCCP.

Step 2 

Router(config)# ip wccp redirect-list 
[number | name]

(Optional.) Specifies the redirect access list. Only packets that match this access list are redirected. If you do not configure this command, all packets are redirected.

Step 3 

Router(config)# interface type number

Enters interface configuration mode.

Step 4 

Router(config-if)# ip web-cache redirect

Configures the interface connected to the Internet to redirect web traffic to the Content Engine.

Step 5 

Router(config-if)# ip route-cache 
same-interface

(Optional.) If the client and a Content Engine are located on the same network, configures the router to use the fast switching path on the interface.

Step 6 

Router(config-if)# end

Exits configuration mode.

Step 7 

Router(config)# copy running-config 
startup-config

Saves the configuration.

Basic WCCP Router Configurations for Web Caching

When WCCP support is enabled on the router and on the Content Engines, the devices can communicate and deliver the services for which they are configured. To suspend these services, you can disable WCCP support on the router rather than powering off or otherwise disabling individual Content Engines. (For instance, use the no ip wccp router command to disable WCCP support on the router.)

Many WCCP Version 2 services also require a configuration of the appropriate wccp global configuration command. Refer to the Cisco ACNS Software Command Reference, Release 5.x publication and ACNS software release notes for more details.

Web Cache Service Configuration with Clients and Content Engine on the Same Subnet

In this scenario, the Content Engine and the requesting clients are on the same subnet, as shown in Figure 4-4.

A router running WCCP Version 2 transparently redirects client HTTP traffic bound for router interface s0/0 to the Content Engine. The web cache service redirects HTTP traffic on port 80 only.

Figure 4-4 Web Cache Service with Clients and Content Engine on Same Subnet

Configuring the Content Engine for Web Cache Service—Clients and Content Engine on the Same Subnet

To configure the Content Engine for web cache service, perform the following steps while logged in to the ACNS software in global configuration mode:

 
Command
Purpose

Step 1 

ContentEngine(config)# wccp version 2

Ensures that the Content Engine is running WCCP Version 2.

Step 2 

ContentEngine(config)# wccp router-list 1 10.10.10.1

Configures a router list.

Step 3 

ContentEngine(config)# wccp web-cache 
router-list-num 1

Informs the routers in the specified router list that the Content Engine is accepting web cache service.

Step 4 

ContentEngine(config)# exit

Exits global configuration mode.

Step 5 

ContentEngine# copy running-config startup-config

Writes running configurations to nonvolatile memory.

Configuring the Router for Web Cache Service—Clients and Content Engine on the Same Subnet

To configure the router for web cache service, perform the following steps while logged in to the router in global configuration mode:

 
Command
Purpose

Step 1 

Router(config)# ip wccp web-cache 

Instructs the router to run the web cache service.

Step 2 

Router(config)# interface Ethernet0 

Specifies which router interface to configure. In this scenario, Ethernet0 is the router interface to which the Content Engine and clients are connected.

Step 3 

Router(config-if)# ip route-cache 
same-interface 

Enables fast switching of redirected packets back through the interface on which they were received. Without this command, the router does not use the high-speed switching cache, and the packets are process-switched, a much slower method.

Step 4 

Router(config)# interface Serial0 

Specifies which router interface to configure. In this scenario, Serial0 is the router interface to the Internet.

Step 5 

Router(config-if)# ip wccp web-cache redirect 
out 

Instructs the router to redirect web cache traffic bound for the specified interface to Content Engines that accept web cache service. In this scenario there is only one router. Web cache traffic is defined as TCP port 80 traffic.

Step 6 

Router(config-if)# exit 

Exits interface configuration mode.

Configuration Examples—Web Cache Service with Clients and Content Engine on the Same Subnet

This example shows a Content Engine and router configured for web cache service with the topology illustrated in Figure 4-4:

Content Engine

hostname Content_engine_4.2
!
clock timezone pst -8 0
!
ip domain-name cu.net
!
interface FastEthernet 0
ip address 10.10.20.10 255.255.255.0
no autosense
bandwidth 100
full-duplex
exit
interface FastEthernet 1
shutdown
exit
!
ip default-gateway 10.10.20.1
!
ip name-server 10.10.10.100
!
!
!
wccp router-list 1 10.10.20.1
wccp web-cache router-list-num 1
wccp version 2
!
!
!
. . . 

WCCP-Enabled Router

Building configuration...

Current configuration:
!
version 12.0
!
hostname WCCP-Router
!
!
ip wccp web-cache         
!
interface Ethernet0
 ip address 10.10.10.1 255.255.255.0
 ip route-cache same-interface
!
interface Serial0
ip address 192.168.1.2 255.255.255.252
no ip directed-broadcast
no ip mroute-cache
ip wccp web-cache redirect out
 !
end

Web Cache Service Configuration with Clients and Content Engine on Different Subnets

In this scenario, the Content Engine and the requesting clients are on different subnets, as shown in Figure 4-5.

A router running WCCP Version 2 transparently redirects client HTTP traffic bound for router interface s0/0 to the Content Engine. The web cache service redirects HTTP traffic on port 80 only.

Figure 4-5 Web Cache Service with Content Engine and Clients on Different Subnets

Configuring the Content Engine for Web Cache Service—Clients and Content Engine on Different Subnets

To configure the Content Engine for web cache service, perform the following steps while logged in to the ACNS software in global configuration mode:

 
Command
Purpose

Step 1 

ContentEngine(config)# wccp version 2

Ensures that the Content Engine is running WCCP Version 2.

Step 2 

ContentEngine(config)# wccp router-list 1 
10.10.20.1 

Configures a router list.

Step 3 

ContentEngine(config)# wccp web-cache 
router-list-num 1

Informs the routers in the specified router list that the Content Engine is accepting web cache service.

Step 4 

ContentEngine(config)# exit

Exits global configuration mode.

Step 5 

ContentEngine# copy running-config startup-config

Writes running configurations to nonvolatile memory.

Configuring the Router for Web Cache Service—Clients and Content Engine on Different Subnets

To configure the router for web cache service, perform the following steps while logged in to the router in global configuration mode:

 
Command
Purpose

Step 1 

Router(config)# ip wccp web-cache

Instructs the router to run the web cache service.

Step 2 

Router(config)# interface Serial0 

Specifies which router interface to configure. In this scenario, Serial0 is the router interface to the Internet.

Step 3 

Router(config-if)# ip wccp web-cache redirect out 

Instructs the router to redirect web cache traffic bound for the specified interface to Content Engines that accept web cache service. In this scenario there is only one router. Web cache traffic is defined as HTTP packets on port 80.

Step 4 

Router(config-if)# exit 

Exits interface configuration mode.

Configuration Examples—Web Cache Service with Clients and Content Engine on Different Subnets

This example shows a Content Engine and router configured for web cache service with the topology illustrated in Figure 4-5:

Content Engine Configuration

. . .
hostname Content_engine_4.2
!
clock timezone pst -8 0
!
ip domain-name cisco.com
!
exec-timeout 20
!
interface FastEthernet 0
ip address 10.10.20.10 255.255.255.0
no autosense
bandwidth 100
full-duplex
exit
interface FastEthernet 1
shutdown
exit
!
ip default-gateway 10.10.20.1
!
ip name-server 10.10.10.100
!
!
wccp router-list 1 10.10.20.1
wccp web-cache router-list-num 1
wccp version 2
!
!
!
...

WCCP-Enabled Router Configuration

Building configuration...

Current configuration:
!
hostname WCCP-Router
!
!
ip subnet-zero
!
ip wccp web-cache         
!
interface Ethernet0
 ip address 10.10.10.1 255.255.255.0
!
interface Ethernet1
 ip address 10.10.20.1 255.255.255.0
!
interface Serial0
 ip address 192.168.1.2 255.255.255.252
 no ip directed-broadcast
 no ip mroute-cache
ip wccp web-cache redirect out
 !
end

Configuring DNS Caching Name Service for WCCP

For transparent interception of DNS requests using WCCP, administrators must configure the DNS caching name service (WCCP service group number 53) on the Content Engine and on a router that supports WCCP Version 2.

The DNS process interacts with the WCCP process in these ways:

Maintaining the bypass lists.

Monitoring the liveness of the DNS process to make sure that it can accept requests. If the DNS cache has no servers that are responsive, the cache will deregister the service until it has acceptable servers.

Configuring and managing the WCCP service (the DNS caching name service).

In centrally managed ACNS networks, configuring the DNS caching name service with WCCP interception on a centrally managed Content Engine causes a conflict with the Content Router, because they will be listening for DNS requests on the same port. The Content Router and a Content Engine will both be listening on port 53. Consequently, they are mutually exclusive and you should not configure DNS cache support with WCCP interception in such environments. You can, however, enable the standard DNS caching name service (without WCCP interception support) in centrally managed ACNS networks.

The advantages of having the Content Engines intercept DNS requests include the following:

You can control the servers used through WCCP redirect lists, through bypass entries, or by simply having the Content Engine intercept requests to servers not in use and then reissuing them to others.

DNS servers can be easily updated and changed as needed.

Performance is improved (faster response time and lower bandwidth consumption) because of the DNS cache hits.

You can partition your network with a series of forwarders each with its own DNS cache, which results in the following:

You can effectively control the DNS traffic across a WAN.

You can be better equipped to compensate for the loss of one or more servers, because the Content Engine can issue the request to a different upstream server.

Typically, this partitioning also results in a performance improvement if a cluster of requests occurs, especially on high-latency interconnections.

Configuring DNS Caching Server Settings for the Content Engine

To configure the DNS caching server settings for the Content Engine, follow these steps:


Step 1 Choose Devices > Devices. The Devices window appears, listing all the devices registered in the ACNS network.

Step 2 Click the Edit icon of the Content Engine for which you want to configure DNS caching server settings. The Device Home for Content Engine window appears.

In the Contents pane, choose Request Routing > DNS Caching > DNS Caching Server. The DNS Caching Server Settings for Content Engine window appears. Table 4-7 describes the fields in this window and provides the corresponding CLI global configuration commands.

Step 3 Check the Enable DNS Caching check box to start the DNS server for resolution of domain names to IP addresses after the listener port is configured (see the "Configuring DNS Server Bindings for the Content Engine" section). Enabling the DNS server creates an entry of 127.0.0.1 as the name server for the system and starts the memory-based DNS cache on port 53.


Note To enable transparent interception of DNS requests using WCCP, you must configure the WCCP DNS caching name service (the WCCP service with service ID 53) on the Content Engine and the WCCP Version 2 router.


Step 4 Check the Lookup Name Servers Recursively check box to allow each configured name server to be queried in turn if the request to the primary name server fails. This option is relevant only if you have configured the DNS cache to use the DNS servers configured on the Content Engine as the original request contains only a single DNS server. (See Step 6 for more details.)

Step 5 Check the Use Expired Cache Entries check box to use a resource record in the DNS cache, even if it has expired.

When checked, the DNS cache uses an expired resource record, if it resides in its cache, to serve the user request. At the same time, the DNS cache initiates a new lookup to revalidate the cached object. This is particularly useful where the upstream DNS is slow or unresponsive. The expired response will continue to be used until the entry is updated by a new response, or is purged from the cache using the Least Recently Used (LRU) algorithm.

Step 6 Choose the method that the Content Engine (DNS caching name server) uses to handle transparent DNS requests from the Use Origin Server drop-down list. Table 4-6 describes the options in this list.

You can configure the method that the DNS caching name server uses to handle transparent DNS requests redirected from a WCCP-enabled router. These transparent DNS requests contain the original destination server in the packet headers. However, because the Content Engine can have more than one DNS name server configured, the DNS caching name server can be configured to use either the original DNS server specified in the original request packet headers or the DNS name servers configured on the Content Engine, or a combination of both.

Table 4-6 Use Origin Server Options

Option
Description

Do Not Set

Uses only the DNS servers configured on the Content Engine. This option is selected by default.

Only

Uses only the DNS server identified in the original request.

After-configured

Uses the DNS name servers configured on the Content Engine. If these fail, uses the DNS server specified in the original request packet.

Before-configured

Uses the DNS server specified in the original request. If this fails, uses the DNS name servers configured on the Content Engine.


Step 7 In the Maximum Size of Cache field, specify the maximum size of the DNS cache memory in megabytes. The default value for the allocated memory used by the cache is 5 MB. It is important that you impose a strict maximum memory limit within which the DNS server operates so as not to unduly tax the overall system resources.

Step 8 In the Minimum TTL field, specify the minimum time to store a resource record in the cache. The default is 1 second. After the time-to-live elapses, the cached response must be revalidated. If a response is served from the cache, for that response to be valid, all appropriate resource records must be valid in the cache. Minimum time-to-live must be lower than maximum time-to-live. Otherwise, an error message is displayed on submit.

Step 9 In the Maximum TTL field, specify the maximum time to store a resource record in the cache. The default is 86400 seconds. The cached resource record expires after this period. Maximum time-to-live must be greater than minimum time-to-live. Otherwise, an error message is displayed on submit.

Because the DNS protocol is using UDP, packets can be lost or dropped. The burden of retransmitting DNS requests is on the requester. Typically, a retransmit is initiated every 3 seconds until a response is received, or if a response is not received, the request times out after 90 seconds. If a DNS server times out, then a new upstream server is selected to query. If there are no more servers to query upstream, then the server returns a DNS failed response to the requesting client.

Step 10 In the Retry Period field, specify the time period before an unanswered request is discarded. The default is 90 seconds.

Step 11 In the Retry Timeout field, specify the time between retransmission of UDP DNS requests sent to an upstream DNS server. The default is 3 seconds.

Step 12 Click Submit to save the settings. A "Click Submit to Save" message appears in red next to the Current Settings line when there are pending changes to be saved after you have applied default or device group settings. You can also revert to the previously configured settings by clicking Reset. The Reset button is visible only when you have applied default or group settings to change the current device settings but have not yet submitted the changes.

Table 4-7 DNS Caching Server Settings 

GUI Parameter
Function
CLI Command

Enable DNS Caching

Enables the DNS server for resolution of domain names to IP addresses after the listener port is configured.

dns enable

Lookup Name Servers Recursively

Allows each configured name server to be queried in turn if the request to the primary name server fails.

dns serial-lookup

Use Expired Cache Entries

DNS uses a resource record in the DNS cache, even if it has expired.

dns user-expired enable

Use Origin Server

Configures the method that the DNS caching name server uses to handle transparent DNS requests redirected from a WCCP-enabled router.

dns use-original-server {only | after-configured | before-configured}

Maximum Size of Cache

Maximum size (in megabytes) of the DNS cache memory.

dns max-cache-memory mbytes

Minimum TTL

Minimum time to store a resource record in the cache.

dns min-ttl seconds

Maximum TTL

Maximum time to store a resource record in the cache.

dns max-ttl seconds

Retry Period

Time period before an unanswered request is discarded.

dns retry-period seconds

Retry Timeout

Time between retransmission of UDP DNS requests sent to an upstream DNS server.

dns retry-timeout seconds



Cacheable Resource Records in the Content Engine DNS Cache

Content Engines with ACNS software can intercept DNS requests that have been issued to DNS servers (forwarders or recursive) that traverse the interception device. Upon receiving a request, the Content Engine transmits that response to the client if it has a current cached response. For a cached response to be valid, it must have all the appropriate resource records for the required sections (Answer, Authority, Additional). If any of these resource records have been purged or have expired the request is queued for transmission.

Table 4-8 describes the resource records that can be cached in the Content Engine DNS cache.

Table 4-8 Cacheable Resource Records

Record
Description

A

Address record

HINFO

Host information

NULL

Null record

TXT

Text string

WKS

Well known service description

NS

Name server record

CNAME

Canonical name

MB

Mail box domain name

MD

Mail destination

MF

Mail forwarder

MG

Mail group member

MR

Mail rename domain

PTR

Pointer record

MX

Mail exchange

SOA

Source of authority


Although other resource records are not cached, they are passed through to the client requesting them. The DNS caching name service does support compression of the DNS response as defined by RFC 1035, including those responses generated by the cache. If the cache does not understand the server response to the query, it does not cache that response but passes it through to the client. This reduces the chance of a nonstandard client or server being disrupted.

Configuring DNS Server Bindings for the Content Engine

To configure DNS server bindings for the Content Engine, follow these steps:


Step 1 Choose Devices > Devices. The Devices window appears, listing all the devices registered in the ACNS network.

Step 2 Click the Edit icon of the Content Engine for which you want to configure IP addresses and port numbers that the DNS cache uses to listen for requests. The Device Home for Content Engine window appears.

Step 3 In the Contents pane, choose Request Routing > DNS Caching > DNS Server Binding. The DNS Server Bindings for Content Engine window appears.

Step 4 Click the Create New Server Binding icon in the taskbar to configure IP address and port number pair for the DNS server to listen for client requests. The Creating new DNS Server Binding for Content Engine window appears.


Note You can create a new DNS server binding only if the DNS server is not listening on configured interface IP addresses for client requests and if the DNS server binding entries have not reached the maximum limit of 16 entries.

If the DNS server is already listening on all the interface IP addresses, then the following warning message appears: "DNS Service is already listening on all IP Addresses."

If the DNS server binding entries have already reached their maximum limit of 16, then the following warning message appears: "DNS Server Binding Entries have reached their maximum limit of 16."


Step 5 Configure the DNS caching name server to listen either on a specific interface IP address or to listen on all the IP addresses configured on the Content Engine.

To configure the DNS caching name server to listen on a specific interface IP address, click the Listen on IP Address radio button and choose an IP address from the drop-down list. All IP addresses associated with the primary interface or other interfaces configured on the Content Engine are listed here. You can choose an IP address of the interface from the drop-down only after you click the radio button.

To configure the DNS caching name server to listen on all the IP addresses configured on the Content Engine, click the Listen on all IP Addresses radio button. Once the host name has been resolved to an IP address, it is stored in the memory-based DNS cache.

Step 6 In the Port field, specify the port on which the DNS caching server listens for client requests. The range is 1-65535. Ensure that the configured port number is not already used by any other application running on the Content Engine.


Note If Listen on IP Address is configured, then the DNS caching server listens on the specific IP address and on this port. If Listen on All IP Addresses is configured, then the DNS caching server listens on all IP addresses configured on the Content Engine and on this port.


Step 7 In the Hostname field, specify the host name of the listener to be mapped to an IP address.

Step 8 Click Submit to save the settings. A dialog box alerts you that if the configured port number is being used by any other application running on the Content Engine, the DNS cache listener will fail.

If you have configured Listen on All IP Addresses, a dialog box alerts you that configuring the DNS cache server to listen on all IP addresses for client requests will remove all other DNS server binding settings. Click OK to confirm.

The DNS Server Bindings for Content Engine window appears with the configured DNS cache listener settings.


To configure the DNS caching name server to listen either on a specific interface IP address or to listen on all the IP addresses configured on the Content Engine from the CLI, use the following global configuration command:

dns listen {all | ipaddress} port port_num hostname hostname

Configuring DNS Address Record Mappings for the Content Engine

The DNS server must know the DNS name of the host on which it is being enabled and map the name to an IP address within its own cache. If the DNS cache listener does not match a DNS name, use the mapping type to pin an IP address to name mapping

To configure the DNS host name to IP address mapping for the Content Engine, follow these steps:


Step 1 Choose Devices > Devices. The Devices window appears, listing all the device types configured in the ACNS network.

Step 2 Click the Edit icon of the Content Engine for which you want to statistically map the IP addresses and host names. The Device Home for Content Engine window appears.

Step 3 In the Contents pane, choose Request Routing > DNS Caching > A-Record Mapping. The DNS A-Record Mappings for Content Engine window appears.

Step 4 Click the Create New DNS A-Record Mappings icon in the taskbar. The Creating new DNS A-Record Mapping for Content Engine window appears.

When you try to configure either a host name or a canonical name (Canonical names are configured from the DNS CNAME Record Mappings window) and the total number of pinning configurations has reached its maximum limit of 256, an error message is displayed.

Step 5 Choose the method to allow you to look up an IP address against a name within the cache from the Mapping Type drop-down list. Table 4-9 describes the options in the drop-down list.

Table 4-9 Mapping Type Options

Option
Description

Forward

Maps the host name to the IP address

Reverse

Maps the IP address to the host name

Both

Maps in both forward and reverse directions


Step 6 In the Hostname field, specify the host name to be mapped to an IP address. Host names cannot be duplicated, must begin with an alphabet character, and cannot exceed 256 characters.

Exceptions to host name duplication are as follows:

If a host name has been configured with forward mapping type, you can configure the same host name with reverse mapping type.

Conversely, if a host name has been configured with reverse mapping type, you can configure the same host name with forward mapping type.

Step 7 In the IP Address fields, specify the IP address of bidirectional, forward, or reverse mapping. When a client query arrives, the configured host name will be resolved to any one of the IP addresses specified here. The first IP address is a required entry.


Note You must specify IP addresses in sequence. Otherwise, an error message is displayed on submit.


Step 8 Click Submit to save the settings.

If you click the Delete DNS A-Record Mapping icon to delete an address record mapped to a canonical name, an error message appears. You need to remove the mapping before you attempt to delete the address record.


To configure the DNS host name to IP address mappings from the CLI, use the following global configuration command:

dns pin {forward hostname ipaddress | reverse hostname ipaddress | both hostname ipaddress}

Configuring DNS Canonical Name Record Mappings for the Content Engine

The DNS server must know the DNS name of the host on which it is being enabled and map the name to an IP address within its own cache. If the DNS cache listener does not match a DNS name, map the canonical name resource record to the address record after pinning an IP address to name mapping.

To configure the mapping of DNS canonical name to address records for the Content Engine, follow these steps:


Step 1 Choose Devices > Devices. The Devices window appears, listing all the devices registered in the ACNS network.

Step 2 Click the Edit icon of the Content Engine for which you want to insert canonical name (CNAME) mapping. The Device Home for Content Engine window appears.

Step 3 In the Contents pane, choose Request Routing > DNS Caching > CNAME Record Mapping. The DNS CNAME Record Mappings for Content Engine window appears.

Step 4 Click the Create New DNS CNAME Record Mappings icon in the taskbar. The Creating new DNS CNAME Record Mapping for Content Engine window appears.


Note When you try to configure a canonical name and the total number of pinning configurations has reached its maximum limit of 256, an error message is displayed.


Step 5 In the Canonical Name field, specify the canonical name to be mapped to the address resource record. You can map a canonical name with a maximum of eight address records. Canonical names cannot be duplicated, must begin with an alphabet character, and cannot exceed 256 characters.

Step 6 Choose the address record to be looked up against the canonical name within the cache from the A-Record drop-down list. The first A-record is a required option.

The A-record drop-down list contains all configured forward and bidirectional mapping type address records. You can associate one or more unique A-records with the CNAME record.


Note You must specify A-records in sequence. Otherwise, an error message is displayed on submit.


Step 7 Click Submit to save the settings.


To configure the mapping of DNS canonical name to address records from the CLI, use the dns pin cname records global configuration command.

Configuring Direct Proxy Routing

In a proxy configuration, the end user's browser must be configured with the IP address of the Content Engine; therefore, a proxy-style request arrives at the Content Engine after having been specifically routed to the Content Engine by the client.

In proxy mode, the Content Engine services any protocols for which it has been configured. The supported protocols are HTTP, Hypertext Protocol Secure (HTTPS), File Transfer Protocol (FTP), Microsoft Media Services (MMS), and Real-Time Transport Protocol (RTSP). If the Content Engine is not configured to support a received protocol, the proxy server returns an error. For example, if port 8080 is configured to run an HTTP and HTTPS proxy service, an FTP request coming to this port is rejected.


Note If proxy mode is used, then Windows Media Player (WMP) Version 6.4 cannot be used, because it does not have the option to set an MMS proxy.


The Content Engine supports up to eight incoming ports each for FTP, HTTPS, HTTP, MMS, and RTSP proxy modes. The incoming proxy ports can be the same ports that are used by transparent mode services. The incoming proxy ports can be changed without stopping any WCCP services running on the Content Engine or on other Content Engines in the farm.

TCP ports reserved for system or network services should not be used for proxying services (for example, DNS or FTP) in edge interception mode or in proxy mode. If more than eight ports for a protocol are required, the administrator can configure multiple dynamic WCCP services. Intercepted FTP, HTTP, and HTTPS requests addressed to other proxy servers (received on transparent mode ports) are serviced according to the proxy-protocols transparent command parameters.


Note To configure the Content Engine for proxy caching, see "Configuring Caching Services."


HTTP Proxy Caching

The Content Engine accepts proxy-style requests in nontransparent mode from a web browser when the incoming proxy ports are configured with the http proxy incoming ports option. Up to eight incoming proxy ports can be specified on a single command line or on multiple command lines.

To configure the Content Engine to direct all HTTP cache miss traffic to a parent cache (without using ICP or WCCP), use the http proxy outgoing host ipaddress port primary option, where host is the system name or IP address of the outgoing proxy server, and port is the port number designated by the outgoing (upstream) server to accept proxy requests. Use the primary option to set this host as the primary proxy.

HTTP Transparent and Proxy Routing

Certain scenarios involve the deployment of a Content Engine in proxy mode at company headquarters and a Content Engine in transparent mode at remote locations in branch offices. In these scenarios, if a cache miss occurs at the remote Content Engine, company policy requires that the request be routed to the Content Engine at headquarters.

When an HTTP request intended for the Content Engine acting as a proxy server is intercepted by the Content Engine in transparent mode at the remote location and a cache miss occurs, the Content Engine forwards the request to the intended proxy server if the proxy-protocols transparent original-proxy command was entered. If this command was not entered, then the Content Engine forwards the request to the origin server where the initial HTTP request was made.

FTP Proxy Caching

FTP proxy caching in a Content Engine refers to the ability to service FTP-over-HTTP requests. The transport between the web browser and the cache is over HTTP, and the cache initiates an FTP transfer to the origin FTP server.


Note The Content Engine caches FTP traffic only when the client uses the Content Engine as a proxy server for FTP requests. All FTP traffic that was sent directly from the web client to an FTP server, if transparently intercepted by the Content Engine, is treated as non-HTTP traffic. If a web browser is not explicitly configured to use a proxy, then the browser will initiate an end-to-end FTP connection itself, and this will not be intercepted by the Content Engine.


The ftp proxy command enables the Content Engine to operate in environments where WCCP is not enabled, or where client browsers have previously been configured to use a legacy FTP proxy server.

The ftp proxy incoming port option specifies a port number used by the proxy server to receive requests. This number can range from 1 to 65535. A maximum of eight incoming proxy ports can be configured. You can share these incoming proxy ports with transparent-mode services and also with the other proxy-mode protocols supported by the Content Engine, such as HTTP and HTTPS. The ftp proxy incoming port option is disabled by default.


Note The Content Engine accepts and services FTP requests only on the ports configured to act as an FTP proxy. All FTP requests on other proxy-mode ports are rejected in accordance with the error-handling settings on the Content Engine.


The Content Engine accepts FTP requests when URLs specify the FTP protocol (for example, GET ftp://ftp.cisco.com/pub/biff/READM). For these requests, the client uses HTTP as the transport protocol with the Content Engine, whereas the Content Engine uses FTP with the FTP server.

The Content Engine caches both FTP file objects and directory listings in the cache file system (cfs). The Content Engine transforms the regular directory listings from the FTP server into HTML, with links that the client users can point to and click to download files.

When the Content Engine receives an FTP request from the web client, it first looks in its cache. If the object is not in its cache, it fetches the object from an upstream FTP proxy server (if one is configured), or directly from the origin FTP server.

The FTP proxy supports anonymous as well as authenticated FTP requests. Only base64 encoding is supported for authentication. The FTP proxy accepts all FTP URL schemes defined in RFC 1738. In the case of a URL in the form ftp://user@site/dir/file, the proxy sends back an authentication failure reply and the browser supplies a popup window for the user to enter login information.

The Content Engine can apply the Rules Template to FTP requests based on server name, domain name, server IP address and port, client IP address, and URL.

The Content Engine logs FTP transactions in the transaction log, in accordance with Squid syntax.

Examples

This example configures an incoming FTP proxy on ports 8080, 8081, and 9090. Up to eight incoming proxy ports can be configured on the same command line.

ContentEngine(config)# ftp proxy incoming 8080 8081 9090

This example removes one FTP proxy port from the list entered in the previous example. Ports 8080 and 9090 remain FTP proxy ports.

ContentEngine(config)# no ftp proxy incoming 8081

This example disables all the FTP proxy ports.

ContentEngine(config)# no ftp proxy incoming

This example configures an upstream FTP proxy with the IP address 172.31.76.76 on port 8888.

ContentEngine(config)# ftp proxy outgoing host 172.31.76.76 8888

This example specifies an anonymous password string for the Content Engine to use when contacting FTP servers. The default password string is anonymous@hostname.

ContentEngine(config)# ftp proxy anonymous-pswd newstring@hostname

This example configures the maximum size in kilobytes of an FTP object that the Content Engine will cache. By default, the maximum size of a cacheable object is not limited.

ContentEngine(config)# ftp object max-size 15000

This example forces the Content Engine to revalidate all objects for every FTP request.

ContentEngine(config)# ftp reval-each-request all

This example configures a maximum Time To Live of 3 days in cache for directory listing objects and file objects.

ContentEngine(config)# ftp max-ttl days directory-listing 3 file 3

Using a Proxy Autoconfiguration File Server

Cisco ACNS 5.2 software supports dynamic proxy autoconfiguration (PAC). This feature is a form of direct proxy routing that allows a browser to dynamically obtain proxy IP address and port configuration information from a special file called a PAC file template. The PAC feature is supported by the Microsoft Internet Explorer and Netscape Communicator browsers. Browsers must be manually configured for automatic proxy configuration.

The PAC feature can be configured through the Content Distribution Manager (see the "Registering a PAC File Template and Assigning Coverage Zone Information" section) and requires at least one Content Engine that is enabled as a PAC file server (see the "Configuring a Content Engine as a PAC File Server" section). The PAC file server dynamically chooses the proxy Content Engine that is closest to the client requesting the content, based on instructions contained in the PAC file template (see the "Creating PAC File Templates" section).

Dynamic PAC routing supports the following features:

It supports multiple PAC files.

The user can specify the names of the PAC files instead of being limited to preset names.

The PAC file server dynamically adds a set of "nearest proxies" to a PAC file template based on coverage zone information and the source IP address of the requester.

The Content Distribution Manager acquires the PAC file templates and distributes them to Content Engines that are PAC file servers rather than the Content Engines themselves acquiring the PAC file templates.


Note This new feature is not an extension of the proxy-auto-config EXEC command feature supported in ACNS 5.0 software, nor does it replace that feature. Both features are supported in ACNS 5.2 software.


Creating PAC File Templates

The system administrator creates a PAC file template on a workstation and places it where the Content Distribution Manager can access the URL. The administrator then registers the PAC file template URL in the Content Distribution Manager GUI and assigns a coverage zone file to it.

The template is a complete PAC file except that the administrator inserts predefined macros where the PAC file server is to generate and insert dynamic information. The nearest proxies are determined by the metrics contained in the coverage zone file.

The Content Distribution Manager acquires the template and distributes it to all PAC file servers. For each Content Engine that is a PAC file server, the administrator must also configure the ports used for PAC file requests. Typically, port 80 is used.

The port can be configured in the CLI using the http proxy incoming port global configuration command. (There is no default.) Alternatively, you can use the Content Distribution Manager to configure the incoming proxy ports in the HTTP Connection Settings window (Devices > Content Engines > HTTP/S > HTTP Connections).

The administrator then gives the PAC file URLs, including the desired servers, to end users. Users must configure their browsers to use the URL. When the browser first comes up, it requests the URL. The PAC file server dynamically replaces any ACNS software macros with the current information from the local coverage zone, if present, and from the default coverage zone based on the source IP address of the requester. The completed PAC file is returned to the requesting client.

When end users are behind a NAT device and the network administrator wants to direct end users to different proxies based on their IP address, then there must also be a PAC file server behind the NAT device for those users to use. The reason for this is because a PAC file server that is not behind the NAT would receive PAC requests for users behind the NAT with the source IP address of the NAT device rather than the source IP address of the end user.

Three macros are defined:

CE_NAME_n

CE_IPADDR_n

NEAREST_PROXIES_n

where n can be a value of 1 to 5.

For CE_NAME_n, the PAC file server substitutes the name of the nth closest proxy. For CE_IPADDR_n, the PAC file server substitutes the IP address of the nth closest proxy. If there is no nth closest proxy, the PAC file server substitutes the empty string "" in place of the macro. The PAC template creator must keep this in mind when creating the PAC file templates.

For the NEAREST_PROXIES_n macro, the PAC file server substitutes the string "PROXY <ip address>;" for up to n closest proxies where <ip address> is the IP address of the proxy. If the template writer includes a port number with the macro, then this port number is appended to each proxy IP address.

For example, NEAREST_PROXIES_2:8080 might expand into a string such as "PROXY 192.30.120.12:8080; PROXY 168.10.10.1:8080;". If n is larger than the number of available proxies, then the PAC file server substitutes fewer than n proxies. For example, NEAREST_PROXIES_2 might expand into "PROXY 192.30.120.12;" or even just "" when there are no nearest proxies. Again, the PAC template creator must keep this in mind when creating the PAC file templates.

PAC File Example

Assume that CE1 serves subnet 10.1.1.0/24 and CE2 serves subnet 10.1.2.0/24. All clients on subnet 10.1.1.0/24 are directed to CE1 as the closest proxy, and all clients on subnet 10.1.2.0/24 are directed to to CE2 as the closest proxy.

The PAC file template would look like this:

Function FindProxyForURL(url, host)
{
// handle plain host names
if (isPlainHostName(host) {
    return "DIRECT";

// handle exception list 
         if (myIpAddress() == "10.1.1.2") {
             return "DIRECT";
         }

// handle special domain list 
         if (shExpMatch(host, "specialdomain.com")) {
             return "PROXY specialDomainProxy.foo.com";
}

// handle direct domain list 
         if (shExpMatch(host, "directdomain.com")) {
             return "DIRECT";
}

// closest proxies + defaults
	  p1 = CE_NAME_1;
	  p2 = CE_NAME_2;
	  if (p1 != "") {
	      p1 = "PROXY " + p1 + ".proxy.foo.com:8080; ";
	  }
	  if (p2 != "") {
	      p2 = "PROXY " + p2 + ".proxy.foo.com:8080; ";
	  }
	  return p1 + p2 + "DIRECT";
}

The coverage zone file looks like this:

<?xml version="1.0"?>
<CDNNetwork>
<!--No coverage zone file from CDM is available-->
<!--Default coverage zones, if any, follow this comment-->
<coverageZone>
    <network>10.1.1.0/24</network>
    <CE>CE1</CE>
    <metric>20</metric>
</coverageZone>
<coverageZone>
    <network>10.1.2.0/24</network>
    <CE>CE2</CE>
    <metric>20</metric>
</coverageZone>
</CDNNetwork>

For a client source IP address of 10.1.1.20, the generated proxy.pac file would look like this:

function FindProxyForURL(url, host)
{
// handle plain host names
if (isPlainHostName(host) {
    return "DIRECT";

// handle exception list 
         if (myIpAddress() == "10.1.1.2") {
             return "DIRECT";
         }

// handle special domain list 
         if (shExpMatch(host, "specialdomain.com")) {
             return "PROXY specialDomainProxy.foo.com";
}

// handle direct domain list 
         if (shExpMatch(host, "directdomain.com")) {
             return "DIRECT";
}

// closest proxies + defaults
	  p1 = "CE1";
	  p2 = "CE2";
	  if (p1 != "") {
	      p1 = "PROXY " + p1 + ".proxy.foo.com:8080; ";
	  }
	  if (p2 != "") {
	      p2 = "PROXY " + p2 + ".proxy.foo.com:8080; ";
	  }
	  return p1 + p2 + "DIRECT";
}

Registering a PAC File Template and Assigning Coverage Zone Information

To register a PAC file template and assign coverage zone information, follow these steps:


Step 1 In the Content Distribution Manger GUI, choose System > Configuration > Routing > PAC File Registration. The PAC File Registration window appears.

Step 2 Click the Create New PAC File icon. The Registering New PAC File window appears.

Step 3 Choose a file import method:

Upload—The upload method allows you to upload a PAC file from any location that is accessible from your PC, by using the browse feature.

Import—The import method allows you to import the PAC file from an external HTTP, HTTPS, FTP, or CIFS server. (See Figure 4-6.)

Figure 4-6 Registering New PAC File Window—Import Method

For descriptions of the fields associated with the upload method, see Table 4-10. For descriptions of the fields associated with the import method, see Table 4-11.

Table 4-10 Upload Method for PAC Files 

Property
Description

File Import Method

Sets the file import method. Choose Upload to display the required fields to upload the coverage zone file.

PAC File Upload

Local directory path to the PAC file. Use the Browse button to help you locate the file.

Destination Filename

Name of the PAC file being distributed to the PAC file server. This field is filled in automatically with the filename from the local directory path.

Note The PAC file with this destination filename is copied into the /state/pacFile directory on the PAC file server.

End User Request URL

URL that an end user would use to configure the browser to obtain the PAC file from a PAC file server.

Note If a port number other than 80 is to be used to obtain the file, it must be specified in the URL. For example, if port 8080 is to be used, the URL would look like this: http://10.5.1.151:8080/sample.pac

Coverage Zone File

Coverage zone file that is the basis for calculating the nearest proxy.

Use the default Coverage Zone

When checked, calculates the nearest proxy based on the default coverage zone.

Note If only a coverage zone file is chosen from the drop down list, the nearest proxies are calculated using the information in the specified coverage zone file. If only Use the default Coverage Zone check box is checked, the nearest proxies are calculated using only the default coverage zone. If both a coverage zone file is specified and Use the default Coverage Zone check box is checked, the nearest proxies are calculated based on the union of the coverage zone file and default coverage zone.


Table 4-11 Import Method for PAC Files 

Property
Description

File Import Method

Sets the file import method. Choose Import to display the required fields to import the PAC file.

PAC File URL

Full path of the origin URL (including the PAC filename) where the PAC file can be accessed.

Destination File Name

Name of the PAC file being distributed to the PAC file server.

Note The PAC file with this destination filename is copied into the /state/pacFile directory on the PAC file server.

End User Request URL

URL that an end user would use to configure the browser to obtain the PAC file from a PAC file server.

Note If a port number other than 80 is to be used to obtain the file, it must be specified in the URL. For example, if port 8080 is to be used, the URL would look like this: http://10.5.1.151:8080/sample.pac

Coverage Zone File

Coverage zone file that is the basis for calculating the nearest proxy.

Use the default Coverage Zone

When checked, calculates the nearest proxy based on the default coverage zone.

Note If only a coverage zone file is entered, the nearest proxies are calculated using the information in the specified coverage zone file. If only the default coverage zone is indicated, the nearest proxies are calculated using only the default coverage zone. If both a coverage zone file is specified and the default coverage zone check box is checked, the nearest proxies are calculated based on the union of the coverage zone file and default coverage zone.

Update Interval (minutes)

Frequency with which the Content Distribution Manager looks for changes to the PAC file located at the PAC file URL. The default value is 10 minutes.

UserName

Name of the user to be authenticated to fetch the PAC file.

Password

User password for accessing the PAC file.

NTLM user Domain

NTLM user domain name for NTLM authentication.

Disable Basic Authentication

When checked, NTLM headers cannot be stripped off to allow fallback to the basic authentication method.

If you leave this check box unchecked, NTLM authentication headers can be stripped to allow fallback to the basic authentication method, and the username and password information can be passed to the origin server in clear text with a basic authentication header.


Step 4 Click Submit to save the settings.


Configuring a Content Engine as a PAC File Server

PAC file servers look for changes in their PAC file server status, coverage zone information, general PAC information, and PAC template information. If necessary, a PAC file server updates its information so that it can correctly serve dynamic PAC files. It also installs the PAC file templates and coverage zone files in a known location. The administrator can configure any number of Content Engines as PAC file servers.

To configure a Content Engine as a PAC file server, follow these steps:


Step 1 In the Content Distribution Manager GUI, choose Devices > Devices.

Step 2 Click the Edit icon next to the name of the Content Engine that you want to configure as a PAC file server. The Devices Home window appears.

Step 3 In the Contents pane, choose Device Activation. The Device Activation window appears. (See Figure 4-7.)

Figure 4-7 Device Activation for Content Engine Window

Step 4 In the Request Routing section, check the Enable PAC File Server check box.

Step 5 Click Submit to save the changes.


Configuring Content Request Routing Using a Content Router or Routing Content Engine

This routing method requires a Cisco Content Router or routing Content Engine. The Content Router or routing Content Engine uses HTTP or RTSP redirection to route requests to the Content Engine which the Content Router or routing Content Engine determines is best suited to deliver the desired content to the client. This determination is based on the requested FQDN, the client's IP address, and the aliveness of a Content Engine. The Content Router compares the source IP address of the client end system against a table of address ranges assigned to Content Engines, known as the coverage zone. The Content Router or routing Content Engine then sends the client a redirect response pointing to the selected Content Engine. Subsequently, the Content Engine can be configured as a proxy caching server to serve content, or it can be configured to distribute pre-positioned content.

To configure the Content Engine for proxy caching, see "Configuring Caching Services." To configure your network for pre-positioned content distribution, see "Configuring the ACNS Network for Content Distribution."


Note References to the Content Router in this section include the routing Content Engine. See the "Configuring a Content Engine as a Routing Content Engine" section.


Content Router request routing works in the following manner:

1. The client sends a Domain Name System (DNS) query for the IP address of the domain name to its local DNS proxy server.

2. The local DNS proxy sends the DNS query to a name server to resolve the domain name to an IP address.

3. The resolution process eventually ends up at the Content Router. The IP address of the Content Router is returned to the local DNS proxy server.

4. The local DNS proxy server returns the IP address of the Content Router to the client.

5. The client sends a request for the desired content to the Content Router.

6. The Content Router sends back a redirect response pointing to a DNS domain name and eventually resolves the DNS domain name to the closest Content Engine IP address.

7. The client sends a request for the content to the best-suited Content Engine.

8. The best-suited Content Engine sends the content to the client.

In order for Content Router request routing to work properly, the following information must be configured:

Coverage zone

The Content Router chooses the Content Engine closest to the client end system based on the coverage zone. (See the next section, "Coverage Zones and Coverage Zone Files.")

Website assignment

A Content Engine can only serve content for websites to which the Content Engine is assigned. Content Engines are assigned to websites through channels. (See the "Adding and Removing Content Engines from Channels" section.)

DNS server

DNS entries for all fully qualified domain names (FQDNs) must be delegated to the Content Router. In the DNS server's zone database file, you must enter a name server (NS) record that delegates the FQDN to the Content Router, and then restart your DNS server.

In the following example, the FQDN www.cisco.com has been delegated to the Content Router named bali-cr:

www.cisco.com           IN NS    bali-cr

When you have configured an NS record on your DNS server, all requests for the FQDN and any of its subdomains are sent to the Content Router rather than to existing DNS servers. The Content Router automatically resolves DNS queries for the FQDN.

Coverage Zones and Coverage Zone Files

A coverage zone is a mapping of end system IP addresses to Content Engines. The Content Router uses the Content Engine IP addresses to create a static redirection table that maps end system IP addresses to Content Engines and provides information on the proximity of end systems to Content Engines. When content is requested by an end user, the Content Router checks the end user's IP address to find the coverage zone that contains that IP address. The Content Router then selects the Content Engine that is serving this coverage zone. If a specific IP address is in multiple coverage zones, then the one with the more specific range is selected. For example, the IP address 172.1.1.1 uses the data for coverage zone 172.1.0.0/16 instead of 172.0.0.0/8. If there is no match found in the coverage zone data, then the request is not redirected. The Content Router sends back an error response, and the content is therefore not available.

A coverage zone can be associated with one or more than one Content Engine: each Content Engine can have its own unique coverage zone, or Content Engines can be associated with more than one coverage zone and have overlapping coverage zones. In ACNS 5.x software, coverage zones cannot be associated with Content Distribution Managers or Content Routers.

If a coverage zone is served by multiple Content Engines, the Content Engine with the lowest metric value is put in the routing table. The metric value (see Table 4-12) indicates the proximity of the Content Engine to the end user. When there are multiple Content Engines in a coverage zone that are on the same subnet and have the same metric value, the Content Router performs the redirect to the client in a round-robin fashion.

When a Content Engine is registered to the Content Distribution Manager, it is assigned a default coverage zone (by default) that is determined by the IP address assigned to the Content Engine and its subnet mask. The default coverage zone configuration can be unassigned and network administrators can create and assign their own custom coverage zones by defining the coverage zone in a coverage zone file.

A coverage zone file is an XML file used to specify a user-defined coverage zone. Each coverage zone entry in the file specifies the IP address range, the name of the Content Engine serving this subnet, metric value, and one or more optional agent fields, if the entry is designated for specific routing Content Engines. In addition to the coverage zone information, two optional elements are created for documentation purposes: a revision value to specify the version of the coverage zone file and a customer name.

Coverage zone files can be created using any ASCII text editing tool. You can use a single coverage zone text-format file to define all the coverage zones for your ACNS network.

Table 4-12 defines the coverage zone file elements.

Table 4-12 Coverage Zone File Elements 

Element
Value
Description

Network

IP address

Coverage zone IP address range.

Content Engine

Content Engine name

Specifies the Content Engines serving the coverage zone specified in the network element. This can have one or more elements.

Metric

Integer

Value indicating the proximity of the Content Engine to the end user. The lower the value, the closer the Content Engine is to the end user.

Agent

Name of routing Content Engine

Optional field that specifies a Content Engine acting as the routing Content Engine. If not specified, the coverage zone entry is designated for all Content Routers registered in the system.


Registering Coverage Zone Files

The system administrator places a coverage zone file where the Content Distribution Manager or individual devices can access the URL. The administrator then registers the coverage zone file URL in the Content Distribution Manager GUI. Coverage zone files can be applied globally to the entire ACNS network, or locally to a specific Content Router or routing Content Engine in the ACNS network. If a coverage zone file is made global, then it is read and parsed by each Content Router or routing Content Engine that does not have a coverage zone file assigned. If the coverage zone is specified in an individual Content Router or routing Content Engine configuration, it is only applied to that particular Content Router or routing Content Engine.

Choosing the Coverage Zone

You have the choice of using two types of coverage zones:

Default coverage zones

User-defined coverage zones

A default coverage zone consists of all the Content Engines that reside in the same local network segment, or subnet. The Content Distribution Manager GUI provides a check box to specify whether the default coverage zone is to be used.

A user-defined coverage zone consists of all the Content Engines that are specified in a coverage zone file. This file defines the network segments to be covered in the routing process. The coverage zone file is registered with the Content Distribution Manager and then applied to a Content Router or routing Content Engine for routing definitions.


Note The metric value of a default coverage zone is set to 20. If a particular Content Engine is preferred for a user-defined coverage zone, the metric value in the coverage zone file should be set to a value less than 20. If a default coverage zone is preferred, then the metric value in the coverage zone file should be set to a value greater than 20.


Using the Default Coverage Zone

To use the default coverage zone, follow these steps:


Step 1 From the Content Distribution Manager GUI, choose Device`s > Devices.

Step 2 Click the Edit icon next to the name of the Content Engine that you want to modify. The Device Home window appears.

Step 3 In the Contents pane choose Device Activation. The Device Activation window appears with fields for editing the properties of the selected Content Engine. (See Figure 4-7.)

Step 4 Check the Set Default Coverage Zone File check box.

Step 5 Click Submit.


Registering and Applying a User-Defined Coverage Zone

To apply a custom coverage zone to a Content Router or routing Content Engine, you first need to register a coverage zone file URL in the Content Distribution Manager GUI. After you have registered the coverage zone file URL with the Content Distribution Manager, you can apply the coverage zone file in one of two ways:

Globally—Deployed across the entire ACNS network

Locally—Deployed on a specific Content Router or routing Content Engine


Note If you apply a coverage zone file locally for a device, this file will overwrite the ACNS network-wide coverage zone file for that device.


To register a coverage zone file, follow these steps:


Step 1 From the Content Distribution Manager GUI, choose System > Configuration.

Step 2 In the Contents pane, choose Routing > Coverage Zone File Registration. The Coverage Zone File Registration window appears.

Step 3 Click the Create New Coverage Zone File icon. The Registering New Coverage Zone File window appears. (See Figure 4-8.)

Figure 4-8 Registering New Coverage Zone File Window

Step 4 Choose a file import method:

Upload—The upload method allows you to upload a coverage zone file from any location that is accessible from your PC, by using the browse feature.

Import—The import method allows you to import the coverage zone file from an external HTTP, HTTPS, FTP, or CIFS server.

For descriptions of the fields associated with the upload method, see Table 4-13. For descriptions of the fields associated with the import method, see Table 4-14.

Table 4-13 Upload Method for Coverage Zone Files

Property
Description

File Import Method

Sets the file import method. Choose Upload to display the required fields to upload the coverage zone file.

Coverage Zone File Upload

Local directory path to the coverage zone file. Use the Browse button can be used to help you locate the file.

Destination Filename

Name of the coverage zone file. This field is filled in automatically with the filename from the local directory path.


Table 4-14 Import Method for Coverage Zone Files

Property
Description

File Import Method

Sets the file import method. Choose Import to display the required fields to import the coverage zone file.

Coverage Zone File URL

Full path of the origin URL (including the coverage zone filename) where the coverage zone file can be accessed.

Destination File Name

Name of the coverage zone file.

Update Interval (minutes)

Frequency with which the Content Distribution Manager looks for changes to the coverage zone file located at the coverage zone file URL. The default value is 10 minutes.

UserName

Name of the user to be authenticated to fetch the coverage zone file.

Password

User password for fetching the coverage zone file.

NTLM user Domain

NTLM user domain name for NTLM authentication.

Disable Basic Authentication

When checked, NTLM headers cannot be stripped off to allow fallback to the basic authentication method.

If you leave this check box unchecked, NTLM authentication headers can be stripped to allow fallback to the basic authentication method, and the username and password information can be passed to the origin server in clear text with a basic authentication header.


Step 5 Click Submit to save the settings.


After you have registered the coverage zone file URL with the Content Distribution Manager, you can use this file as your global routing configuration.

To set a global coverage zone file, follow these steps:


Step 1 From the Content Distribution Manager GUI, choose System > Configuration.

Step 2 In the Contents pane, choose Routing > Global Routing Config. The Set Global Coverage Zone File window appears. (See Figure 4-9.)

Figure 4-9 Set Global Coverage Zone File Window

Step 3 From the Coverage Zone File drop-down list, choose a coverage zone file.

Step 4 In the Keep Alive Port field, enter a port number that is used by the ACNS network-wide network to listen in on routing requests.

Step 5 Click Submit.


To apply a coverage zone file to an individual Content Router to be used locally, follow these steps:


Step 1 From the Content Distribution Manager GUI, choose Devices > Devices.

Step 2 Click the Edit icon next to the name of the Content Router to which you want to assign a coverage zone file.

Step 3 In the Contents pane choose Device Activation. The Modifying Content Router window appears.

Step 4 Choose a coverage zone file from the Coverage Zone File drop-down list.

Step 5 Click Submit to apply the coverage zone file to the Content Router.


Coverage Zone File Examples

The following sections show different coverage zone file examples in four different scenarios.

Scenario 1: No Network Address Translation Firewall

This is the simplest scenario. In this example, enterprise ent1.com is in the public address space with two Content Engines in different subnets, and each Content Engine backs up the other. There is no Network Address Translation (NAT) firewall. Both Content Engines use the default coverage zone. This creates entry 3 and entry 4 of the coverage zone file (see the example) to be added by the Content Router.

To define a backup Content Engine in the coverage zone file, map the subnet to its backup Content Engine and assign a metric value greater than 20 (entry 1 and entry 2).

Figure 4-10 Coverage Zone Scenario 1: No NAT

The following file is an example of a coverage zone file for scenario 1. (See Figure 4-10.)

<?xml version="1.0" ?>
<CDNNetwork>
<revision>1.0</revision>
<customerName>ent.com</customerName>
<!-- entry 1 -->
<coverageZone>
<network>172.29.248.0/24</network>
<CE>ent_sanfrancisco</CE>
<metric>20</metric>
</coverageZone>

<!-- entry 2: backup CE for the San Francisco office -->
<coverageZone>
<network >172.29.249.0/24</network>
<CE>ent_sanjose</CE>
<metric>20</metric>
</coverageZone>

<!-- entry 3 -->
<coverageZone>
<network>172.29.248.0/24</network>
<CE>ent_sanjose</CE>
<metric>10</metric>
</coverageZone>

<!-- entry 4 -->
<coverageZone>
<network>172.29.249.0/24</network>
<CE>ent_sanfrancisco</CE>
<metric>10</metric>
</coverageZone>
</CDNNetwork>

Scenario 2: Content Engine Behind a NAT Firewall

Enterprise ent2.com is behind a NAT firewall with one Content Engine, and the Content Router is on the public Internet. All content requests from this public IP address are served by the Content Engine (ent2_sanfrancisco) behind the firewall. Because all content requests from the end systems behind the NAT have the same public IP address, there is one entry to map the public IP address to the Content Engine ent2_sanfrancisco in the coverage zone file. The Set Default Coverage Zone File check box should be unchecked in the General Configuration section in the Modifying Content Engine window (see Figure 10-3), because the subnet 10.1.1.0/24 is private and is not known to the Content Router.

Figure 4-11 Coverage Zone Scenario 2: Behind a NAT Firewall

The following coverage zone file applies to Figure 4-11.

<?xml version="1.0" ?>
<!-- CZ for ent2.com -->

<CDNNetwork>
<coverageZone>
<network>171.29.250.1/32</network>
<CE>ent2_sanfrancisco</CE>
<metric> 10 </metric>
</coverageZone>
</CDNNetwork>

Scenario 3: Multiple Content Engines Behind a NAT Firewall

In this scenario, enterprise ent3.com is behind a NAT firewall with multiple subnets, and each subnet has one Content Engine. In this case, there must be at least one routing Content Engine behind the NAT firewall. See the "Modifying Content Engine Properties" section for more information on how to reconfigure a Content Engine to act as a routing Content Engine. A routing Content Engine performs the routing process and is able to do content request routing. The Content Router redirects all content requests from behind the firewall to the routing Content Engine, and this routing Content Engine then performs the second redirect.

In this example, ent3_sanjose1 is the routing Content Engine. A coverage zone entry (CZ entry 1) must be defined to map all content requests from behind the NAT firewall to ent3_sanjose1. Coverage zone entries for routing Content Engine ent3_sanjose1 must also be defined to map all requests from 10.1.1.0/24 to itself (CZ entry 2) and requests from 10.1.2.0/24 to ent3_sanjose2 (CZ entry 3).

Figure 4-12 Scenario 3: Multiple Content Engines Behind a NAT Firewall

The following coverage zone file applies to Figure 4-12.

<?xml version="1.0" ?>
<!-- CZ for ent3.com -->
<CDNNetwork>
<customerName>ent3.com</customerName>
<!-- CZ entry 1 -->
<coverageZone>
<network>171.29.1.1/32</network>
<CE>ent3_sanjose1</CE>
<metric> 10 </metric>
</coverageZone>

<!-- CZ for routing CE -->
<!-- CZ entry 2 -->
<coverageZone>
<network>10.1.1.0/24</network>
<CE>ent3_sanjose1</CE>
<metric> 10 </metric>
<agent> ent3_sanjose1</agent>
</coverageZone>

<!-- CZ entry 3 -->
<coverageZone>
<network>10.1.2.0/24</network>
<CE>
ent3_sanjose2
</CE>
<metric> 10 </metric>
<agent>ent3_sanjose1</agent>
</coverageZone>

Scenario 4: NAT Firewall with Multiple IP Addresses

Enterprise ent4.com is behind a NAT firewall with multiple public IP addresses. All content requests from behind the NAT firewall have one of these public IP addresses. Therefore, there must be one coverage zone data entry for each of these public IP addresses to map these IP addresses to the Content Engine behind the NAT firewall.

Figure 4-13 Scenario 4: NAT Firewall with Multiple IP Addresses

The following coverage zone file applies to Figure 4-13.

<?xml version="1.0" ?>
<!-- CZ for ent4.com -->
<CDNNetwork>
<coverageZone>
<network>171.29.10.1/32</network>
<CE>ent4_sanfrancisco</CE>
<metric>10</metric>
</coverageZone>

<!-- CZ for ent4.com -->
<coverageZone>
<network>171.29.10.2/32</network>
<CE>ent4_sanfrancisco</CE>
<metric>10</metric>
</coverageZone>
</CDNNetwork>

Configuring a Content Engine as a Routing Content Engine

You can enable routing capabilities on a Content Engine to allow this Content Engine to also redirect content requests. A routing Content Engine is required when multiple Content Engines are located behind a NAT firewall to be able to serve content requests from the clients behind the same NAT firewall. In this case, a Content Router first redirects the content requests to a routing Content Engine rather than to the Content Engine best-suited to deliver the content. The routing Content Engine then performs a second redirect to find the best-suited Content Engine to serve the content. See the "Scenario 3: Multiple Content Engines Behind a NAT Firewall" section for an example that illustrates the need for a routing Content Engine.

See the "Modifying Content Engine Properties" section for information on how to configure a Content Engine to serve as a routing Content Engine.

Troubleshooting Content Router Configurations

Because there are quite a few configuration steps required for the Content Router to redirect the request properly, you might see some content request errors from the Content Router when the configuration is not quite complete. Some areas to look at when troubleshooting are:

DNS delegation

Is the requested domain delegated to the Content Router on the DNS server that is authoritative for the parent domains? The Content Router's DNS name should be forward resolvable. Check with the system administrator to delegate a domain.

Content Router routing properties

Is the Content Router activated? See the "Activating Devices in the Content Distribution Manager GUI" section to activate a Content Router.

Is a default coverage zone set for a Content Engine, or is there an ACNS network-wide coverage zone file or a local coverage zone file set for the Content Router or routing Content Engine? See the "Registering Coverage Zone Files" section to set a coverage zone file. See the "Using the Default Coverage Zone" section to set a default coverage zone.

If a coverage zone entry is for a routing Content Engine, does the "agent" field contain the name of the routing Content Engine? See the "Coverage Zones and Coverage Zone Files" section for a description of agent fields in coverage zone files. See the "Scenario 3: Multiple Content Engines Behind a NAT Firewall" section for an example of a coverage zone entry for a routing Content Engine.

Is the content request from an end system covered by a Content Engine in a coverage zone based on the default coverage zone or the coverage zone file? This Content Engine is the "serving Content Engine." See the "Coverage Zones and Coverage Zone Files" section under "Configuring Content Request Routing Using a Content Router or Routing Content Engine" in Chapter 4 for information on how to select a serving Content Engine for a client.

Is the serving Content Engine activated? See the "Activating Devices in the Content Distribution Manager GUI" section to activate a Content Engine.

Is there a channel created for the requested domain and a serving Content Engine assigned to this channel? See the "Creating and Modifying Channels" section.

Is the serving Content Engine alive? Use the CLI show statistics content-routing ce cename command to show the status of a Content Engine. (Refer to the Cisco ACNS Software Command Reference, Release 5.1 publication.)

Content pre-positioned on a Content Engine

Is there a manifest file assigned to the channel associated with the serving Content Engine? See the "Working with Manifest Files" section.

Is the manifest file accessible from the Content Distribution Manager? See the "Creating and Modifying Channels" section.

Is there any syntax error in the manifest file? See the "Manifest File Structure and Syntax" section.

Is the requested content specified in the manifest file? See the "Specifying a Single Content Item" section.

If the requested content is streaming media, is the application server enabled with the correct license key? See the "Enabling RealProxy" section, the "Enabling RealSubscriber" section, and the "Enabling the Cisco Streaming Engine" section.

Has disk space been configured for the mediafs to store streaming media objects or the cdnfs to store nonstreaming content? See the "Configuring Disk Space" section.

Has the requested content been successfully acquired by the Content Engine? See the "Listing Website Content Using the Spider Script" section.

Where to Go Next

You have finished setting up the request routing infrastructure for your ACNS network so that client requests for content can be routed to the Content Engine that can best serve the content. You are now ready to configure your Content Engines to serve the content. Content Engines can be configured to serve content as proxy caching servers, or they can be configured to distribute pre-positioned content. To configure the Content Engine for proxy caching, see "Configuring Caching Services."

Configuring your network for pre-positioned content distribution includes the following tasks:

Building the location tree

Assigning Content Engines to locations

Creating a directory of content providers

Defining websites for each content provider

Creating channels

Assigning Content Engines to each channel

Assigning a root Content Engine to each channel

To accomplish these tasks, proceed to the next chapter, "Configuring the ACNS Network for Content Distribution."