GeoWebCache is an advanced tile cache for WMS servers. It supports a large variety of protocols and formats, including WMS-C, WMTS, KML, Google Maps and Virtual Earth.