Manual Chapter : 3-DNS Administrator Guide v3.0: Configuring a Content Delivery Network

Applies To:

Show Versions Show Versions

3-DNS Controller versions 1.x - 4.x

  • 3.0 PTF-02, 3.0 PTF-01, 3.0.0
Manual Chapter


4

Configuring a Content Delivery Network



Introducing the content delivery network

A content delivery network (CDN) is a network of clusters that includes devices designed and configured to maximize the speed at which a content provider's content is delivered. The purpose and goal of a content delivery network is to cache content closer, in Internet terms, to the user than the origin site is. Using a CDN to deliver content greatly reduces wide area network (WAN) latency so the content gets to the user more quickly, and the origin site servers are not overloaded and slowed by requests for content. The fundamental WAN traffic distribution mechanism in all CDNs that we know about is DNS.

Using the 3-DNS Controller in a CDN

The following features make the 3-DNS Controller a logical choice for the wide-area traffic management in a CDN.

  • Geographic redirection
    The 3-DNS Controller uses the pool load balancing mode Topology to redirect DNS requests based on location information derived from the DNS query message. You can set up wide IPs so that the controller delegates DNS queries either to a data center by responding with A records, or to a CDN provider by responding with a CNAME record and two or more NS records.
  • CDN peering
    F5 Networks has partnered with several CDN providers to facilitate CDNs. To take advantage of these content delivery partnerships, you can designate a pool type CDN on the 3-DNS Controller so the controller redirects requests to a CDN provider rather than to a grouping of virtual servers.
  • Resource monitoring, limits, and thresholds
    The 3-DNS Controller has sophisticated monitoring screens so you can quickly analyze the performance and availability of your network resources. You can also set limits on physical and throughput resources to ensure that your content is always available and none of your resources are overtaxed.

CDN configuration example

The two following diagrams illustrate how DNS query resolutions for content delivery networks are processed by the 3-DNS Controller. In the example, the content provider for www.download.domain.com has two data centers, one in San Jose, California (see Figure 4.1 ), and one in Washington, DC (see Figure 4.2 ). The 3-DNS Controllers (in the two data centers) use the Topology load balancing mode to direct the DNS queries to the geographically closest virtual servers.

In Figure 4.1 , a local DNS server in Seattle, Washington, sends a query for the domain www.download.domain.com (1A). Based on the location information in the query packet header, the 3-DNS Controller in the content provider's North American data center resolves the query to the best virtual server in that data center, and sends an A record response to the Seattle LDNS (1B).

Figure 4.1 DNS query resolution based on Topology load balancing mode

In Figure 4.2, a local DNS server in London sends a query for the same domain, www.download.domain.com (2A). Based on the location information in the query packet header, the 3-DNS Controller in the content provider's North American data center responds to the London LDNS with delegation information (a CNAME record and two or more NS records) about the DNS for the content delivery peer (2B). The London LDNS then sends the redirected query (based on the CNAME record) for www.download.domain.com to the CDN provider (2C). The CDN provider DNS server responds with the IP address of the best virtual server for resolution among those in the CDN (2D). The CDN provider's cache servers resolve to the origin site virtual servers for cache refreshes using a different domain name (origin.download.domain.com).

Figure 4.2 DNS query resolution to content delivery network provider

Deciding to use a CDN provider

The 3-DNS Controller is well-suited to serve as the wide-area traffic manager (WATM) for CDNs that have many of the following attributes:

  • The CDN provider has a global presence around the edge of the Internet.
  • The CDN provider outsources a content delivery infrastructure to content providers.
  • The CDN provider is the authoritative DNS for the content provider's domain, and uses DNS to find a data center with CDN resources at the edge of the network nearest to the client.
  • The CDN provider serves all of the content provider's traffic because the CDN is authoritative for the content provider's domain. Content providers manage this by creating logical groupings of their content under different domains. For example, an investment firm might have a CDN host their news content with the subdomain, news.domain.com, while they serve their stock quotes content with the subdomain, quote.domain.com, from their corporate data center.
  • The CDN provider charges X dollars per megabit per second. The CDN provider determines billing by collecting and processing edge cache and server logs.
  • The CDN provider has an infrastructure in place to manage the multitude of geographically distributed devices.
  • The CDN provider usually establishes some type of service level agreement (SLA) to ensure that content is being served faster from the CDN than from the content provider's servers.

Setting up a CDN provider configuration

The following sections describe the specific tasks you perform to set up a CDN provider configuration, as shown in the example configuration on page 4-2 . The tasks are as follows:

  • Adding data centers
  • Adding 3-DNS Controllers
  • Adding servers
  • Adding wide IPs and pools
  • Adding a topology statement

Please review the tasks before you actually perform them so that you are familiar with the process.

Adding data centers

The first task you perform is to add the data centers to the configuration on the 3-DNS Controller.

To add data centers using the Configuration utility

  1. In the navigation pane, click Data Centers.
    The Data Centers screen opens.
  2. Click Add Data Center on the toolbar.
    The Add Data Centers screen opens.
  3. Add the data center information. For our example, we add the two data centers labeled Data Center 1 and Data Center 2.
  4. Repeat the previous steps to add all of your data centers to the configuration.

Adding 3-DNS Controllers

Once you have added all of your data centers to the 3-DNS Controller configuration, you are ready to let the controller you are configuring know about other 3-DNS Controllers in your network.

Note: Please note that when you are working with more than one 3-DNS Controller, you create your entire configuration on one controller and then add the second controller using the 3dns_add script. The 3dns_add script copies the entire configuration from the first controller onto the second controller, and synchronizes all of the settings. For details on configuring additional 3-DNS Controllers in existing networks, using the 3dns_add script, see Chapter 5, Adding 3-DNS Controllers to the Network .

To add 3-DNS Controllers using the Configuration utility

  1. In the navigation pane, expand the Servers item, then click 3-DNS Controllers.
    The 3-DNS Controllers screen opens.
  2. Click Add 3-DNS Controller on the toolbar.
    The Add New 3-DNS Controller screen opens.
  3. Add the 3-DNS Controller information.
  4. Repeat the previous steps to add any additional 3-DNS Controllers to the configuration.

Adding servers

Now you are ready to let the controller know about any BIG-IP Controllers, EDGE-FX Caches, or hosts that you have in your data centers. For specific information on configuring any of these server types, please review Setting up servers .

Adding wide IPs and pools

Once you have added all the physical elements to the 3-DNS Controller configuration, you can begin configuring wide IPs and pools for the CDN. In addition to setting up the wide IPs and pools for your origin site, you also set up a pool for the CDN provider.

Before you start adding wide IPs, verify that you have configured all the virtual servers you need for load balancing for your origin site. The following instructions describe how to set up the CDN configuration shown in Figures 4.1 and 4.2 .

To add a wide IP and pool using the Configuration utility

  1. In the navigation pane, click Wide IPs.
    The Wide IP List screen opens.
  2. Click Add Wide IP on the toolbar.
    The Add a New Wide IP screen opens.
  3. Add the wide IP address, name, and port information. For our example, the wide IP name is www.download.domain.com.
  4. For the Pool LB Mode, select Topology and click Next.
    The Configure Load Balancing for New Pool screen opens.
  5. In the Configure Load Balancing for New Pool screen, update these settings:
    1. Add the pool name.
      For our example, the first pool name is origin.
    2. Check the Use Dynamic Ratio option.
    3. In the Load Balancing Modes, Preferred list, select Round Trip Time.
    4. In the Load Balancing Modes, Alternate list, select Packet Rate.
    5. In the Load Balancing Modes, Fallback list, select Round Robin.
    6. Accept the defaults for the rest of the settings and click Next.
      The Select Virtual Servers screen opens.
  6. In the Select Virtual Servers screen, check the virtual servers among which you want the 3-DNS Controller to load balance DNS requests, and click Finish.
    The 3-DNS Controller adds the wide IP and settings to the configuration. For our example, you would check the virtual servers that map to the download site content in the North American data center.

To add a CDN provider pool to the wide IP

  1. In the Wide IP List screen, click 1 Pools in the Pools column for the wide IP www.download.domain.com.
    The Modify Wide IP Pools screen opens.
  2. On the toolbar, click Add Pool.
    The Configure Load Balancing for New Pool opens.
  3. In the Configure Load Balancing for New Pool screen, update these settings:
    1. Add the pool name.
      For our example, the CDN provider pool name is cdn_pool.
    2. In the Pool TTL box, type 60. With a longer time-to-live, an LDNS has time to follow the CNAME record and redirect queries to the CDN.
    3. In the Load Balancing Modes, Preferred list, select Round Robin.
    4. In the Load Balancing Modes, Alternate list, select None.
    5. In the Dynamic Delegation, Type list, select CDN.
    6. In the Dynamic Delegation, Canonical Name box, type the canonical name that you want the 3-DNS Controller to deliver in the CNAME record when it redirects traffic to the CDN provider. For our example, the canonical name is www.cdn.download.domain.com. Note that the canonical name for the CDN pool type automatically becomes an alias for the wide IP.
    7. In the Dynamic Delegation, Zone Name box, type the name of the zone for which the CDN provider DNS servers are authoritative. For our example, the zone name is cdn.download.domain.com.
    8. Accept the defaults for the rest of the settings, and click Next.
      The Select CDN for <pool name> screen opens.
  4. In the Select CDN for <pool name> screen, select the CDN provider that hosts your content and click Update.

You have now set up the load balancing and delegation pools for your domain. The last required configuration step is to create a topology statement.

Adding a topology statement

The topology statement contains the topology records that the 3-DNS Controller uses to load balance DNS queries from geographically dispersed local DNS servers. The following procedure describes how to set up a topology statement, with two topology records, for our example.

Note: For more detailed information on working with topology on the 3-DNS Controller, see Chapter 11, Topology, in the 3-DNS Controller Reference Guide. For information on setting up globally-distributed network with Topology load balancing, see Chapter 3, Configuring a Globally-Distributed Network .

To set up topology records using the Configuration utility

  1. In the navigation pane, click Topology.
    The Manage Topology Records screen opens.
  2. For the first topology record, select Continent in the upper LDNS box.
  3. In the lower LDNS box, select North America.
  4. In the upper Server box, select Wide IP Pool.
  5. In the lower Server box, select origin.
  6. In the Weight box, type a value. For our example, we type 100.
  7. Click Add.
    The first topology record is added to the configuration.
  8. For the second topology record, in the upper LDNS box select Continent.
  9. In the lower LDNS box, select North America.
  10. Check the LDNS Not Equal box.
  11. In the upper Server box, select Wide IP Pool.
  12. In the lower Server box, select cdn_pool.
  13. In the Weight box, type a value. For our example, we type 100.
  14. Click Add.
    The second topology record is added to the configuration.

    Now you have created a topology statement for your CDN and the 3-DNS Controller can successfully load balance DNS queries based on the location information derived from the DNS query message.

Ensuring resource availability

The following resource availability settings are designed to ensure that your content is always available and that your system resources are not overtaxed to the point of failure. The resource availability settings you may want to use with your CDN configuration are:

  • Last resort pool
    You can designate a pool as the last resort pool so that in the event that all other pools become unavailable for load balancing, the 3-DNS Controller directs DNS queries to the virtual servers in this pool. For information on configuring a last resort pool, see Using the last resort pool designation in the Reference Guide.
  • Limit settings
    You can set limits on system resources and throughput to enhance availability. You can set limits for any server type, virtual servers, and pools. For more information on setting limits, view the online help for the Modify Limit Settings screens in the Configuration utility.

Monitoring the configuration

The following resources can help you monitor your configuration and troubleshoot problems.

  • You can view performance metrics, limit settings, and other details about your data centers, servers, virtual servers, wide IPs, and pools in the Statistics screens in the Configuration utility. For more information on specific Statistics screens, click Help on the toolbar.
  • You can view your configuration using the Network Map in the Configuration utility. You can also make modifications to the configuration from the Network Map. Click Help on the toolbar if you have questions on how to use the Network Map.
  • You can review detailed information on the specific features of the 3-DNS Controller in the Reference Guide.