SureRoute tests multiple routes between ​Akamai​ edge servers and your origin server to identify an optimal path for performance and establish alternative routes in cases of potential request failures.

Set it up for Performance

​Akamai​ edge servers determine the best route to your origin at any given time by performing "races." A race forwards a request through three available routes simultaneously and notes which route performed best in serving the request. The best-performing route is designated 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 as appropriate.

Here are some key points to consider if adding it:

  • The SureRoute behavior needs to be in the same rule as the Origin Server behavior. It needs to read from it to find your 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.

  • Performance optimization works best for your content if you're not caching it. This would be the case if you've included the Caching behavior in your property and set it to no-store or bypass-cache, or if caching is disabled for various content directly on your origin server. When set to Performance, cacheable content is skipped. This is because the best performance is achieved by serving it from an edge server cache and not over an origin route.

  • The races to fetch the test object can cause a small increase in origin traffic. This increase is offset by the performance improvement you should see.

  • The Performance optimization 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.


  1. Download the SureRoute test object. (You'll need to provide login credentials for ​Akamai Control Center​.)

  2. Copy the Zip file to your origin server and decompress it, making sure that all pathing is preserved.

  1. Make note of the complete path to test object file, for example:
/<path on your origin>/SRTO_SLA_test_files/sureroute-test-object.html
  1. In the SureRoute behavior in your property, set Enable to On.

  2. Set Optimization Type to Performance.

  3. Enter the full path you noted in the SureRoute Test Object field.

  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 ​Akamai​ 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 SSL 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.

    • 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.

Set it up with a Custom map

You can set the Optimization 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.

Set it up for failover

With SureRoute set up for performance, this is automatically enabled and applied in the background for your property. If a delay is detected when waiting for a response from the origin, the edge server tries two alternative routes before waiting for the TTL you've set in Cache Life for Race Results.

SureRoute for failover uses one-second time-outs for this delay. If all routes fail, there's likely a problem at the origin, rather than network congestion.

Caveats on use

Consider the following points if you apply SureRoute:

  • NetStorage is your origin. NetStorage only supports the delivery of cacheable content. So, SureRoute isn't supported.

  • 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 propertyspecifically in the same rule, or in a rule that would be applied to the same requestthey 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

As described earlier, ​Akamai​ provides you with properly-configured test object files for download. However, you can create your own test object on your origin server. The test object 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 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.