Glossary

302 content routing

HTTP Content Routing.

ACME Account

An account previously created with an ACME provider.

astats (stats_over_http)

An ATS plugin that allows you to monitor vitals of the ATS server. See Cache Monitoring.

Cache Group
Cache Groups

A group of caching HTTP proxy servers that together create a combined larger cache using consistent hashing. Traffic Router treats all servers in a Cache Group as though they are in the same geographic location, though they are in fact only in the same general area. A Cache Group has one single set of geographical coordinates even if the cache servers that make up the Cache Group are actually in Physical Locations. The cache servers in a Cache Group are not aware of the other cache servers in the group - there is no clustering software or communications between cache servers in a Cache Group.

There are two basic types of Cache Groups: EDGE_LOC and MID_LOC (“LOC” being short for “location” - a holdover from when Cache Groups were called “Cache Locations). Traffic Control is a two-tiered system, where the clients get directed to the Edge-tier (EDGE_LOC) Cache Group. On cache miss, the cache server in the Edge-tier Cache Group obtains content from a Mid-tier (MID_LOC) Cache Group, rather than the origin, which is shared with multiple Edge-tier Cache Groups. Edge-tier Cache Groups are usually configured to have a single “parent” Cache Group, but in general Mid-tier Cache Groups have many “children”.

Note

Often the Edge-tier to Mid-tier relationship is based on network distance, and does not necessarily match the geographic distance.

See also

A Cache Group serves a particular part of the network as defined in the Coverage Zone File (or Deep Coverage Zone File, when applicable).

See also

For a more complete description of Cache Groups, see the Cache Groups overview section.

Cache Server
Cache Servers
cache server
cache servers

The main function of a CDN is to proxy requests from clients to origin servers and cache the results. To proxy, in the CDN context, is to obtain content using HTTP from an origin server on behalf of a client. To cache is to store the results so they can be reused when other clients are requesting the same content. There are three types of proxies in use on the Internet today:

  • reverse proxy: Used by Traffic Control for Edge-tier cache servers.

  • forward proxy: Used by Traffic Control for Mid-tier cache servers.

  • transparent proxy: These are not used by Traffic Control. If you are interested you can learn more about transparent proxies on wikipedia.

Content Invalidation Job
Content Invalidation Jobs
job
jobs

Content Invalidation Jobs are a way to force cache servers to treat their cached content as stale (or even not in cache at all).

See also

For a more complete description of Content Invalidation Jobs, see the Content Invalidation Jobs overview section.

content routing

Directing clients (or client systems) to a particular location or device in a location for optimal delivery of content See also HTTP Content Routing and DNS Content Routing.

Coverage Zone File
Coverage Zone Map

The CZM or CZF is a file that maps network prefixes to Cache Groups. Traffic Router uses the CZM to determine what Cache Group is closest to the client. If the client IP address is not in this CZM, it falls back to geographic mapping, using a MaxMind GeoIP2 database to find the client’s location, and the geographic coordinates from Traffic Ops for the Cache Group. Traffic Router is inserted into the HTTP retrieval process by making it the authoritative DNS server for the domain of the CDN Delivery Service. In the example of the reverse proxy, the client was given the http://www-origin-cache.cdn.com/foo/bar/fun.html URL. In a Traffic Control CDN, URLs start with a routing name, which is configurable per-Delivery Service, e.g. http://foo.mydeliveryservice.cdn.com/fun/example.html with the chosen routing name foo.

#1573 Example Coverage Zone File
{ "coverageZones": {
    "cache-group-01": {
        "network6": [
            "1234:5678::/64",
            "1234:5679::/64"
        ],
        "network": [
            "192.168.8.0/24",
            "192.168.9.0/24"
        ]
    }
}}
Deep Coverage Zone File
Deep Coverage Zone Map

The DCZF or DCZM maps network prefixes to “locations” - almost like the Coverage Zone File. Location names must be unique, and within the file are simply used to group Edge-tier cache servers. When a mapping is performed by Traffic Router, it will only look in the DCZF if the Delivery Service to which a client is being directed makes use of Deep Caching. If the client’s IP address cannot be matched by entries in this file, Traffic Router will first fall back to the regular Coverage Zone File. Then, failing that, it will perform geographic mapping using a database provided by the Delivery Service’s Geolocation Provider.

#1574 Example Deep Coverage Zone File
{ "deepCoverageZones": {
    "location-01": {
        "network6": [
            "1234:5678::/64",
            "1234:5679::/64"
        ],
        "network": [
            "192.168.8.0/24",
            "192.168.9.0/24"
        ],
        "caches": [
            "edge"
        ]
    }
}}
Delivery Service
Delivery Services

Delivery Services are often referred to as a reverse proxy “remap rule” that exists on Edge-tier cache servers. In most cases, a Delivery Service is a one-to-one mapping to an FQDN that is used as a hostname to deliver the content. Many options and settings regarding how to optimize the content delivery exist, which are configurable on a Delivery Service basis. Some examples of these Delivery Service settings are:

  • Cache in RAM, cache on disk, or do not cache at all.

  • Use DNS or HTTP Content routing.

  • Limits on transactions per second and bandwidth.

  • Protocol (HTTP or HTTPS).

  • Token-based authentication settings.

  • Header rewrite rules.

Since Traffic Control version 2.1, Delivery Services can optionally be linked to a Profile, and have Parameters associated with them. One example of a feature that uses Delivery Service Parameters is the Use Multi-Site Origin Feature configuration. Delivery Services are also for use in allowing multiple Tenants to coexist in a Traffic Control CDN without interfering with each other, and to keep information about their content separated.

See also

See Delivery Services for a more in-depth explanation of Delivery Services.

Delivery Service Request
Delivery Service Requests
DSR
DSRs

A Delivery Service Request is the result of attempting to modify a Delivery Service when dsRequests.enabled is set to true in traffic_portal_properties.json. See Delivery Service Requests for more information.

See also

See Delivery Service Requests for a more in-depth explanation of Delivery Service Requests, including their data model. See Delivery Service Requests for more information on how to use Delivery Service Requests in Traffic Portal.

Delivery Service required capabilities

Delivery Services required capabilities are capabilities, which correlate to server capabilities, that are required in order to assign a server to a delivery service.

Division
Divisions

A group of Regions.

Edge
Edge-tier
Edge-Tier
Edge-tier cache
Edge-tier caches
Edge-tier cache server
Edge-tier cache servers

Closest to the client or end-user. The edge tier is the tier that serves the client, edge caches are caches in the edge tier. In a Traffic Control CDN the basic function of the edge cache is that of a reverse proxy.

Federation
Federations

Federations allow for other (“federated”) CDNs (e.g. at a different ISP) to add a list of DNS resolvers and an FQDN to be used in a DNS CNAME record for a Delivery Service. When a request is made from one of the federated CDN’s clients, Traffic Router will return the CNAME record configured from the federation mapping. This allows the federated CDN to serve the content without the content provider changing the URL, or having to manage multiple URLs. For example, if the external CDN was actually another ATC-managed CDN, then a federation mapping to direct clients toward it should use the FQDN of a Delivery Service on the external CDN.

Federations only have meaning to DNS-routed Delivery Services - HTTP-routed Delivery services should instead treat the external FQDN as an Origin to achieve the same effect.

First-tier
First-tier cache
First-tier caches
First-tier cache server
First-tier cache servers

Closest to the client or end-user. The first tier in a Topology is the tier that serves the client, similar to the Edge-tier.

forward proxy
forward proxies

A forward proxy acts on behalf of the client such that the origin server is (potentially) unaware of the proxy’s existence. All Mid-tier cache servers in a Traffic Control based CDN are forward proxies. In a forward proxy scenario, the client is explicitly configured to use the the proxy’s IP address and port as a forward proxy. The client always connects to the forward proxy for content. The content provider does not have to change the URL the client obtains, and is (potentially) unaware of the proxy in the middle.

If a client uses a forward proxy to request the URL http://www.origin.com/foo/bar/fun.html the resulting chain of events follows.

  1. To retrieve http://www.origin.com/foo/bar/fun.html, the client sends an HTTP request to the forward proxy.

    #1575 Client Requests Content from its Forward Proxy
    GET http://www.origin.com/foo/bar/fun.html HTTP/1.1
    Host: www.origin.com
    

    Note

    In this case, the client requests the entire URL instead of just the path as is the case when using a reverse proxy or when requesting content directly from the origin server.

  2. The proxy verifies whether the response for http://www-origin-cache.cdn.com/foo/bar/fun.html is already in the cache. If it is not in the cache:

    1. The proxy sends the HTTP request to the Origin.

      #1576 The Forward Proxy Requests Content from the origin server
      GET /foo/bar/fun.html HTTP/1.1
      Host: www.origin.com
      
    2. The origin server responds with the requested content.

      #1577 The origin server’s Response
      HTTP/1.1 200 OK
      Date: Sun, 14 Dec 2014 23:22:44 GMT
      Server: Apache/2.2.15 (Red Hat)
      Last-Modified: Sun, 14 Dec 2014 23:18:51 GMT
      ETag: "1aa008f-2d-50a3559482cc0"
      Content-Length: 45
      Connection: close
      Content-Type: text/html; charset=UTF-8
      
      <!DOCTYPE html><html><body>This is a fun file</body></html>
      
    3. The proxy sends this on to the client, optionally adding a Via: header to indicate that the request was serviced by proxy.

      #1578 The Forward Proxy’s Response to the Client
      HTTP/1.1 200 OK
      Date: Sun, 14 Dec 2014 23:22:44 GMT
      Last-Modified: Sun, 14 Dec 2014 23:18:51 GMT
      ETag: "1aa008f-2d-50a3559482cc0"
      Content-Length: 45
      Connection: close
      Content-Type: text/html; charset=UTF-8
      Age: 0
      Via: http/1.1 cache01.cdn.kabletown.net (ApacheTrafficServer/4.2.1 [uScSsSfUpSeN:t cCSi p sS])
      Server: ATS/4.2.1
      
      <!DOCTYPE html><html><body>This is a fun file</body></html>
      

    If, however, the requested content was in the cache the proxy responds to the client with the previously retrieved result

    #1579 The Forward Proxy Sends the Cached Response
    HTTP/1.1 200 OK
    Date: Sun, 14 Dec 2014 23:22:44 GMT
    Last-Modified: Sun, 14 Dec 2014 23:18:51 GMT
    ETag: "1aa008f-2d-50a3559482cc0"
    Content-Length: 45
    Connection: close
    Content-Type: text/html; charset=UTF-8
    Age: 99711
    Via: http/1.1 cache01.cdn.kabletown.net (ApacheTrafficServer/4.2.1 [uScSsSfUpSeN:t cCSi p sS])
    Server: ATS/4.2.1
    
    <!DOCTYPE html><html><body>This is a fun file</body></html>
    
geo localization or geo routing

Localizing clients to the nearest caches using a geo database like the one from Maxmind.

Health Protocol

The protocol to monitor the health of all the caches. See Health Protocol.

Inner-tier
Inner-tier cache
Inner-tier caches
Inner-tier cache server
Inner-tier cache servers

The tier between the First tier and the Last tier. The inner tier in a Topology is the tier that forwards requests from other caches to other caches, i.e. caches in this tier do not directly serve the end-user and do not make requests to Origins.

Last-tier
Last-tier cache
Last-tier caches
Last-tier cache server
Last-tier cache servers

The tier above the First and Inner tiers. The last tier in a Topology is the tier that forwards requests from other caches to Origins.

localization

Finding location on the network, or on planet earth

Mid
Mid-tier
Mid-Tier
Mid-tier cache
Mid-tier caches
Mid-tier cache server
Mid-tier cache servers

The tier above the edge tier. The mid tier does not directly serves the end-user and is used as an additional layer between the edge and the Origin. In a Traffic Control CDN the basic function of the mid cache is that of a forward proxy.

Origin
Origins
origin server
origin servers
Origin Servers

The source of content for the CDN. Usually a redundant HTTP/1.1 webserver.

ORT

The previous Traffic Control cache config app, replaced by t3c.

Parameter
Parameters

Typically refers to a line in a configuration file, but in practice can represent any arbitrary configuration option.

See also

The Profiles and Parameters overview section.

parent
parents

The parent(s) of a cache server is/are the cache server(s) belonging to either the “parent” or “secondary parent” Cache Group(s) of the Cache Group to which the cache server belongs. For example, in general it is true that an Edge-tier cache server has one or more parents which are Mid-tier cache servers.

Physical Location
Physical Locations

A pair of geographic coordinates (latitude and longitude) that is used by Cache Groups to define their location. This information is used by Traffic Router to route client traffic to the geographically nearest Cache Group.

Profile
Profiles

A Profile is, most generally, a group of Parameters that will be applied to a server. Profiles are typically re-used by all Edge-tier cache servers within a CDN or Cache Group. A Profile will, in addition to configuration Parameters, define the CDN to which a server belongs and the “Type” of the Profile - which determines some behaviors of Traffic Control components. The allowed “Types” of Profiles are not the same as Types, and are maintained as a PostgreSQL “Enum” in traffic_ops/app/db/create_tables.sql.

Tip

A Profile of the wrong type assigned to a Traffic Control component will (in general) cause it to function incorrectly, regardless of the Parameters assigned to it.

See also

The Profiles and Parameters overview section.

Queue
Queue Updates
Queue Server Updates

Queuing Updates is an action that signals to various ATC components - most notably cache servers - that any configuration changes that are pending are to be applied now. Specifically, Traffic Monitor and Traffic Router are updated through a CDN Snapshot, and not Queued Updates. In particular, ORT will notice that the server on which it’s running has new configuration, and will request the new configuration from Traffic Ops.

Updates may be queued on a server-by-server basis (in Traffic Portal’s Servers view), a Cache Group-wide basis (in Traffic Portal’s Cache Groups view), or on a CDN-wide basis (in Traffic Portal’s CDNs view). Usually using the CDN-wide version is easiest, and unless there are special circumstances, and/or the user really knows what he or she is doing, it is recommended that the full CDN-wide Queue Updates be used.

This is similar to taking a CDN Snapshot, but this configuration change affects only servers, and not routing.

That seems like a vague difference because it is - in general the rule to follow is that changes to Profiles and Parameters requires only updates be queued, changes to the assignments of cache servers to Delivery Services requires both a Snapshot and a Queue Updates, and changes to only a Delivery Service itself (usually) entails a Snapshot only. These aren’t exhaustive rules, and a grasp of what changes require which action(s) will take time to form. In general, when doing both Queuing Updates as well as taking a CDN Snapshot, it is advisable to first Queue Updates and then take the Snapshot, as otherwise Traffic Router may route clients to Edge-tier cache servers that are not equipped to service their request(s). However, when modifying the assignment(s) of cache servers to one or more Delivery Services, a Snapshot ought to be taken before updates are queued.

Warning

Updates to Parameters with certain Config File values may require running ORT in a different mode, occasionally manually. Though the server may appear to no longer have pending updates in these cases, until this manual intervention is performed the configuration will not be correct.

Region
Regions

A group of Physical Locations.

reverse proxy
reverse proxies

A reverse proxy acts on behalf of the origin server such that the client is (potentially) unaware it is not communicating directly with the Origin. All Edge-tier cache servers in a Traffic Control CDN are reverse proxies. To the end user a Traffic Control-based CDN appears as a reverse proxy since it retrieves content from the origin server, acting on behalf of that origin server. The client requests a URL that has a hostname which resolves to the reverse proxy’s IP address and, in compliance with the HTTP 1.1 specification (RFC 2616), the client sends a Host: header to the reverse proxy that matches the hostname in the URL. The proxy looks up this hostname in a list of mappings to find the Origin hostname; if the hostname of the Host: header is not found in the list, the proxy will send an error (usually either 404 Not Found or 503 Service Unavailable as appropriate) to the client. If the supplied hostname is found in this list of mappings, the proxy checks its cache, and when the content is not already present, connects to the Origin to which the requested Host: maps requests the path of the original URL, providing the Origin hostname in the Host header. The proxy then stores the URL in its cache and serves the contents to the client. When there are subsequent requests for the same URL, a caching proxy serves the content out of its cache - provided Cache Control Headers and Revalidation are satisfied - thereby reducing latency and network traffic.

To insert a reverse proxy into a typical HTTP 1.1 request and response flow, the reverse proxy needs to be told where the origin server can be reached (and which Origin to use for a given request when it’s configured to proxy requests for multiple Origins). In ATS this is handled by adding rules to the remap.config configuration file. The content owner must inform the clients, by updating the URL, to receive the content from the cache and not from the origin server directly. For example, clients might be instructed to request content from http://www-origin-cache.cdn.com which points to a reverse proxy for the actual Origin located at http://www.origin.com.

Now, if the client requests /foo/bar/fun.html from the reverse proxy the sequence of events is as follows. is given the URL http://www-origin-cache.cdn.com/foo/bar/fun.html (note the different hostname) and when attempting to obtain that URL, the following occurs:

  1. The client sends a DNS request to the LDNS to resolve the name www-origin-cache.cdn.com to an IP address.

  2. The LDNS finds an IP address for www-origin-cache.cdn.com e.g. 55.44.33.22.

  3. The client sends an HTTP request for /foo/bar/fun.html to the IP address.

    #1580 Client Requests Content from the Reverse Proxy
    GET /foo/bar/fun.html HTTP/1.1
    Host: www-origin-cache.cdn.com
    
  4. The reverse proxy finds out the URL of the true Origin - in the case of ATS this is done by looking up www-origin-cache.cdn.com in its remap rules - and finds that it is www.origin.com.

  5. The proxy checks its cache to see if the response for GET /foo/bar/fun.html HTTP/1.1 from www.origin.com is already in the cache.

  6. If the response is not in the cache:

    1. The proxy sends the request to the actual Origin

      #1581 Reverse Proxy Requests Content from the origin server
      GET /foo/bar/fun.html HTTP/1.1
      Host: www.origin.com
      
    2. The origin server responds with the requested content

      #1582 Response from the origin server
      HTTP/1.1 200 OK
      Date: Sun, 14 Dec 2014 23:22:44 GMT
      Server: Apache/2.2.15 (Red Hat)
      Last-Modified: Sun, 14 Dec 2014 23:18:51 GMT
      ETag: "1aa008f-2d-50a3559482cc0"
      Content-Length: 45
      Connection: close
      Content-Type: text/html; charset=UTF-8
      
      <!DOCTYPE html><html><body>This is a fun file</body></html>
      
    3. The proxy sends the response on to the client, optionally adding a Via: header to indicate that the request was serviced by proxy.

      #1583 Resulting Response from the Reverse Proxy to the Client
      HTTP/1.1 200 OK
      Date: Sun, 14 Dec 2014 23:22:44 GMT
      Last-Modified: Sun, 14 Dec 2014 23:18:51 GMT
      ETag: "1aa008f-2d-50a3559482cc0"
      Content-Length: 45
      Connection: close
      Content-Type: text/html; charset=UTF-8
      Age: 0
      Via: http/1.1 cache01.cdn.kabletown.net (ApacheTrafficServer/4.2.1 [uScSsSfUpSeN:t cCSi p sS])
      Server: ATS/4.2.1
      
      <!DOCTYPE html><html><body>This is a fun file</body></html>
      

    If, however, the response was already in the cache - and still valid according to the Cache Control Headers and Revalidation - the proxy responds to the client with the previously retrieved result.

    #1584 The Reverse Proxy Provides a Cached Response
    HTTP/1.1 200 OK
    Date: Sun, 14 Dec 2014 23:22:44 GMT
    Last-Modified: Sun, 14 Dec 2014 23:18:51 GMT
    ETag: "1aa008f-2d-50a3559482cc0"
    Content-Length: 45
    Connection: close
    Content-Type: text/html; charset=UTF-8
    Age: 39711
    Via: http/1.1 cache01.cdn.kabletown.net (ApacheTrafficServer/4.2.1 [uScSsSfUpSeN:t cCSi p sS])
    Server: ATS/4.2.1
    
    <!DOCTYPE html><html><body>This is a fun file</body></html>
    
Role
Roles

Permissions Roles define the operations a user is allowed to perform, and are currently an ordered list of permission levels.

See also

For a more complete description of Roles, see the Roles overview section.

Server
Servers

A Server implies a cache servers and/or origin servers and/or any different type of servers (e.g: Traffic_Monitor, Traffic_Ops etc) associated with a Delivery Service.

Server Capability
Server Capabilities

A Server Capability (not to be confused with a “Capability”) expresses the capacity of a cache server to serve a particular kind of traffic. For example, a Server Capability could be created named “RAM” to be assigned to cache servers that have RAM-disks allocated for content caching. Server Capabilities can also be required by Delivery Services, which will prevent cache servers without that Server Capability from being assigned to them. It also prevents Mid-tier cache servers without said Server Capability from being selected to serve upstream requests from those Edge-tier cache servers assigned to the requiring Delivery Services.

Service Category
Service Categories

A Service Category defines the type of content being delivered by a Delivery Service. For example, a Service Category could be created named “linear” and assigned to a Delivery Service that delivers linear content.

Snapshot
Snapshots
CDN Snapshot
CDN Snapshots

Previously called a “CRConfig” or “CRConfig.json” (and still called such in many places), this is a rather large set of routing information generated from a CDN’s configuration and topology.

Status
Statuses

A Status represents the current operating state of a server. The default Statuses made available on initial startup of Traffic Ops are related to the Health Protocol and are explained in that section.

t3c

The Traffic Control cache config app, used to generate and apply cache configuration files.

See also

For usage and testing documentation, refer to t3c.

Tenant
Tenants
Tenancy
Tenancies

Users are grouped into Tenants (or Tenancies) to segregate ownership of and permissions over Delivery Services and their resources. To be clear, the notion of Tenancy only applies within the context of Delivery Services and does not apply permissions restrictions to any other aspect of Traffic Control.

Topology
Topologies

A structure composed of Cache Groups and parent relationships, which is assignable to one or more Delivery Services.

Topology Node
Topology Nodes
Parent Topology Node
Parent Topology Nodes
Child Topology Node
Child Topology Nodes

Each Topology Node is associated with a particular Cache Group. In addition, there is no limit on the maximum number of parents and children for any given Topology Node, according to your configuration.

Type
Types

A Type defines a type of some kind of object configured in Traffic Ops. Unfortunately, that is exactly as specific as this definition can be.