1. A caching system, comprising: a plurality of network interfaces configured to communicate data over a computer network, wherein at first network interface is connected to a client and a second network interface is connected to an origin computer; a processor coupled to the network interfaces and configured to execute one or more processes; and a memory configured to store a process executable by the processor, the process when executed operable to: receive a data access request from the client for the data; send a request to the origin computer for attributes associated with the data; service the data access request at the caching system in response to determining that the requested attributes from the origin computer do not differ from local attributes associated with the data stored at the caching system; and retrieve the data and the requested attributes from the origin computer and verify that the requested attributes have not changed since the data was retrieved from the origin computer, in response to determining that the requested attributes differ from the local attributes.