Pragma Headers overview
When you find yourself doing Advanced HTTP Level troubleshooting (sniffing specifically), and if you are using Akamai, please bear in mind that there is an Advanced Request Headers subset you can add to retrieve additional infos.
These are so-called Pragma Headers and adding them to your Request Headers will show you lots of additional interesting details. They are outlined below:
"akamai-x-cache-on, akamai-x-cache-remote-on, akamai-x-check-cacheable, akamai-x-get-cache-key, akamai-x-get-extracted-values, akamai-x-get-ssl-client-session-id, akamai-x-get-true-cache-key, akamai-x-serial-no, akamai-x-get-request-id,akamai-x-get-nonces,akamai-x-get-client-ip,akamai-x-feo-trace"
There are several methods and plugins available to add them , below the syntax for doing that via the good old Curl:
curl -I -H "Pragma: akamai-x-cache-on, akamai-x-cache-remote-on, akamai-x-check-cacheable, akamai-x-get-cache-key, akamai-x-get-extracted-values, akamai-x-get-ssl-client-session-id, akamai-x-get-true-cache-key, akamai-x-serial-no, akamai-x-get-request-id,akamai-x-get-nonces,akamai-x-get-client-ip,akamai-x-feo-trace" http://www.xyz123.com/style.css
A typical Set of Request and Response Headers follows:
Request Headers
Accept text/css,\/\;q=0.1
Accept-Encoding gzip, deflate
Accept-Language en-us,en;q=0.5
Cache-Control no-cache
Connection keep-alive
Host www.website.com
Pragma akamai-x-cache-on, akamai-x-cache-remote-on,
akamai-x-check-cacheable, akamai-x-get-cache-key,
akamai-x-get-extracted-values, akamai-x-get-nonces,
akamai-x-get-ssl-client-session-id,
akamai-x-get-true-cache-key, akamai-x-serial-no
User-Agent Mozilla/5.0 (Windows NT 6.1; rv:11.0) Gecko/20100101 Firefox/11.0
Response Headers
Cache-Control private, max-age=1103
Connection keep-alive
Content-Encoding gzip
Content-Length 9120
Content-Type text/css
Date Sun, 18 Mar 2012 10:59:33 GMT
Etag W/"34608-1330928498000"
Last-Modified Mon, 05 Mar 2012 06:21:38 GMT
Server Apache-Coyote/1.1
Vary Accept-Encoding
X-Akamai-Session-Info name=PARENT\_SETTING; value=TD
X-Cache TCP\_MEM\_HIT from a118-214-191-15 (AkamaiGHost/6.7.0.2-9183648)
X-Cache-Key /L/1745/15811/3h/www.website.com/common/css/style.css
X-Check-Cacheable YES
X-Serial 1745
X-True-Cache-Key /L/www.website.com/common/css/style.css
ntCoent-Length 34608
Explanation on some of the Akamai debug headers:
X-Cache : Cache State
X-Cache TCP\_MEM\_HIT from a118-214-191-15 (AkamaiGHost/6.7.0.2-9183648)
a118-214-191-15 : Akamai IP Identifier (The Akamai server that serves this request)
TCP\_HIT : The object was fresh in cache and object from disk cache.
TCP\_MISS : The object was not in cache, server fetched object from origin.
TCP\_REFRESH\_HIT : The object was stale in cache and we successfully refreshed with
the origin on an If-modified-Since request.TCP\_REFRESH\_MISS : Object was stale in cache and refresh obtained a new object from
origin in response to our IF-Modified-Since request.TCP\_REFRESH\_FAIL\_HIT : Object was stale in cache and we failed on refresh (couldn't
reach origin) so we served the stale object.TCP\_IMS\_HIT : IF-Modified-Since request from client and object was fresh in
cache and served.TCP\_NEGATIVE\_HIT : Object previously returned a "not found" (or any other negatively
cacheable response) and that cached response was a hit for this
new request.TCP\_MEM\_HIT : Object was on disk and in the memory cache. Server served it
without hitting the disk.TCP\_DENIED : Denied access to the client for whatever reason.
TCP\_COOKIE\_DENY : Denied access on cookie authentication (if centralized or
decentralized authorization feature is being used in config).
X-Cache-Key : Internal Cache Key
X-Cache-Key /L/1745/15811/3h/www.website.com/common/css/style.css
15811 : Akamai CP Code
3h : Cache TTL
www.website.com : Origin Server Name
X-Check-Cacheable : Cacheability
This determines if the request object is cache-able as set in your Akamai configuration.