Patent ID: 8150938

Claim:
A mediating server comprising: a communication interface communicatively coupling the mediating server to a plurality of user devices; and a control system comprising a processor and memory, the control system associated with the communication interface and adapted to: receive messages from the plurality of user devices; route each of the messages to a desired network server; obtain device profiles for the plurality of user devices from the messages; provide a caching service based on the device profiles; classify each user device of the plurality of user devices into a class of a plurality of classes based on the device profiles, wherein each one of the plurality of classes is associated with a separate one of a plurality of caching servers; effect association of ones of the plurality of user devices based on the device profiles such that the associated ones of the plurality of user devices collaborate with each other to provide a cache for the associated ones of the plurality of user devices; for each request from one of the plurality of user devices, determine to direct the request to an associated one of the plurality of caching servers based on the class of a user device or the cache for the associated ones of the plurality of user devices; and retrieve data based on the determination.