SureRoute

SureRoute tests multiple routes between ​Akamai​ edge servers and your origin server. SureRoute identifies an optimal path for performance and can use alternative routes in cases of potential request failures. With SureRoute, requests from edge servers to your origin server are less prone to risks outside your and ​Akamai​'s control, such as damage to internet communication lines or congestion.

How it works

Using SureRoute, Akamai​​ determines the best route to your origin server by periodically performing "races". Races are triggered by a request from an end-user for any non-cacheable content.

After the end-user receives the content, SureRoute forwards a separate race request through three available routes simultaneously from the edge server to your origin server to retrieve a special SureRoute Test Object (SRTO). SureRoute notes the best-performing route and designates it as the primary route for future requests until the next race is conducted. These races allow SureRoute to quickly react to changes in the Internet. You can configure the frequency of the races based on your use case.

Features and options

OptionWhat it doesSub-options
EnableEnables the SureRoute behavior to optimize delivery of non-cacheable content.
Map TypeSpecifies the set of edge servers used to test routes.
  • Default map. Use the default set of edge servers.
  • Custom map. Use a custom map configured by Akamai Professional Services.
Custom MapSpecifies the custom map configured by Akamai when Map Type is set to Custom map.
SureRoute Test ObjectSpecifies the path for your origin’s test object to use in races and testing routes.
Forward HOST HeaderSpecifies which hostname to use when forwarding a race request.
  • Same as incoming HOST header. Use the incoming HOST header when requesting the SureRoute test object.
  • Custom. Use a custom HOST header.
Custom HOST HeaderSpecifies the custom HOST header when Forward HOST Header is set to Custom.
Cache Life for Race Results

Specifies the time-to-live (TTL) to preserve SureRoute race results. The default value is 30 minutes.

If traffic exceeds a certain threshold after TTL expires, overflow traffic is routed directly to the origin in a fashion that may not be optimal. If traffic remains under the threshold, the route is determined by the winner of the most recent race.

Force TLS Protocol for RacesForces SureRoute to use TLS when requesting the origin’s test object. Set this option to On if your origin doesn’t respond to HTTP requests or responds with a redirect to HTTPS.
Origin IP SelectionSpecifies the origin IP address to which a request is forwarded.
  • Best Performing Origin IP. Use the first IP address returned by DNS.
  • Round Robin. Use an IP address sourced from the multiple IP addresses returned by DNS in a round-robin fashion.
Race Result KeySpecifies how the race result key is constructed, as well as the hostname under which the race results are cached. The race result key is used to retrieve results from cache.
  • Race destination (default). Use the race destination’s default hostname to cache race results.
  • Custom. Use a custom hostname.
Race Results HostnameSpecifies a custom hostname under which to cache race results. Use this when a property corresponds to many origin hostnames. SureRoute launches races for each origin by default, but this option consolidates multiple hostnames into one to run a single race.

Set it up for performance

Here are some key points to consider when adding SureRoute:

  • SureRoute and Origin Server work together. The SureRoute behavior uses the Origin Server behavior to get information about your origin, and therefore should typically be in the same rule as Origin Server. For example, most delivery products include the Origin Server behavior in the Default Rule, so it applies to all requests. if this is the case with your property, add the SureRoute behavior to the Default Rule, too. If you have multiple Origin Server behaviors defined in your property, work with your ​Akamai​ representative to determine the best way to implement SureRoute.

  • SureRoute Test Object (SRTO) race requests. Race requests for SRTO use the same origin attributes, like certificates or ports, as non-SRTO requests. SureRoute's race request appears to your origin server as a regular request for content.

  • Races aren’t triggered by requests. Requests for cacheable content don't trigger SureRoute races, as cacheable content is typically served directly from the ​Akamai​ edge server. This would be the case if you've included the Caching behavior in your property and set it to no-store or bypass-cache.

  • Origin traffic volume. Race requests to fetch SRTO cause a small increase in origin traffic. This increase is offset by the performance improvement you should see.

  • Default map type. Default map type (formerly Performance map type) is available for selected ​Akamai​ products. If you want it but don't find it available for your property, talk to your ​Akamai​ account team.

Implementation

Set up the SureRoute Test Object on your origin server

  1. Download the SureRoute Test Object (SRTO) zip file. You may need to provide login credentials for PORTAL_NAME to do this.

  2. Extract the /SRTO_SLA_test_files directory. The sureroute-test-object.html file stores the SRTO that is up to 11KB in size.

  1. Copy the /SRTO_SLA_test_files directory to your origin server. Make note of the complete path to the SRTO, for example:
/<path on your origin>/SRTO_SLA_test_files/sureroute-test-object.html
  1. Make sure the requests for the SRTO don't require authentication.
  2. In your web server or load balancer, make sure the requests for the SRTO return it immediately, without any additional application functionality.
🚧

SureRoute is designed to measure the performance of the network route between the edge servers and your origin server. It shouldn't contact your database or do other back-end processing.

Set up the SureRoute behavior in Property Manager

  1. In the SureRoute behavior in your property, set Enable to On.
  2. Set Map Type to Default map unless Akamai Professional Services has set up a Custom map for your configuration.
  3. In the SureRoute Test Object field, enter the full path you noted when you set up the SureRoute Test Object on your origin server.
  4. Set the other options here as desired:
  • Forward HOST Header. This lets you specify the Forward HOST header to use with SureRoute:

    • Same as incoming HOST header. Select this if you just want to use the standard Forward Host Header you've set for your Origin Server.

    • Custom. You can set up a unique forward Host header for all races performed for any of the hostnames that are subject to this instance of the SureRoute behavior. Make sure your SureRoute custom Host header is also present either in the property where you set up the Sure Route behavior or in another property. If you use a SureRoute custom Host header that's not mentioned in any of your COMPANY_NICKNAME properties, races won't be triggered.

  • Cache Life for Race Results. This is the time to live (TTL) for race results. Once the best route is determined after the race, that route is used for this length of time.

  • Force TLS Protocol for Races. Add HTTPS secure transfer when races are performed to determine the best route. If your origin only supports HTTPS traffic, make sure this is set to On.

  • Origin IP Selection. This determines how your origin IP is chosen. Select Best Performing Origin IP to use the first IP returned by DNS, or select Round Robin to use one of the IPs returned by DNS in a round-robin fashion.

  • Race Result Key. This lets you select where you want to store race results:

    • Race destination (default). This stores the race data using the Origin Hostname set for your Origin Server.

    • Custom. Typically, this is used when a single property has multiple origin hostnames in a single data center. By default, a separate race would be run for each origin. Overriding the race results hostname folds those multiple hostnames into a single hostname and therefore only one race.

  1. Verify that your origin server responds to requests for the SRTO with a HTTP 200 OK response.

Set SureRoute up with a custom map

Set the Map Type to Custom map. Rather than using three available routes to determine which is best, a specific map of routes is used. This is reserved for special services that need to be implemented by ​​Akamai​​ Professional Services. If you have one of these special services on your contract and received a custom map from ​Akamai​, select Custom map and enter it into the field provided.

SureRoute and Tiered Distribution

Tiered Distribution helps speed up the delivery of cacheable content, while SureRoute is intended for non-cacheable content. If you've included both in your propertyCHAR_DASH_LONGspecifically in the same rule, or in a rule that would be applied to the same requestCHAR_DASH_LONGthey won't conflict. Each will be used to identify its appropriate form of content and help speed up access to it.

Custom SureRoute test objects

Akamai provides you with a properly-configured SRTO for download. However, you can create your own SRTO on your origin server. The SRTO needs to meet the following requirements:

📘

If you have multiple origin servers behind a load balancer, you can either configure the load balancer to serve the SureRoute test object directly on behalf of the origin, or you can have requests for the test object go to the same origin server to avoid deploying the test object on every origin server.

  • It needs to return an HTTP 200 OK response and not require authentication.

  • It should be a static text file in the size range from 8KB to 56KB. The recommended content type is text/html, but you can also use others like CSS, JS, or WOFF.

  • It shouldn't contact a database or do other back-end processing.


Did this page help you?