Web Cache Communication Protocol (WCCP) is a Cisco-developed content-routing protocol that provides a mechanism to redirect traffic flows in real-time. It has built-in load balancing, scaling, fault tolerance, and service-assurance (failsafe) mechanisms. Cisco IOS Release 12.1 and later releases allow the use of either Version 1 (WCCPv1) or Version 2 (WCCPv2) of the protocol.
WCCP allows utilization of Cisco Cache Engines (or other caches running WCCP) to localize web traffic patterns in the network, enabling content requests to be fulfilled locally. Traffic localization reduces transmission costs and download time.
WCCPv1
Only a single router services a cluster of systemsSupports HTTP (TCP port 80) traffic flows onlyProvides generic routing encapsulation (GRE) to prevent packet modificationRouters and cache engines communicate to each other via a control channel based on UDP port 2048
WCCPv2
Allows for use across up to 32 routers (WCCP servers)Supports up to 32 engines/accelerators (WCCP clients)Supports any IP protocol including any TCP or UDPSupports up to 255 service groups (0-254)Adds MD5 shared secret securityAccelerator or Engine is a WCCP clientRegisters WCCP services (0-254) with “Here I Am” if application is operationalRegistration announces WCCP client on service group, provides availability notification, requests interesting trafficTransmits “Here I Am” every 10 secondsLead WCCP client (lowest IP address) instructs routers on protocol/port, assignment, forwarding, and return methodsRouter is a WCCP serverAccepts service group registration (0-254)Acknowledges “Here I Am” with “I See You”Waits 30 (3x10) seconds before declaring engine failedAnnounce engines to other enginesRouter id is highest interface IP or highest loopback IP if one existsRedirects traffic to engineSelects an engine in the clusterHash 256 bucketsMask 128 buckets represented by 7 bit mask of the source or destination IP/PortRedirect list allows router to permit/deny traffic to interceptTwo methods of redirection:WCCP L2: Local subnet only, little overhead. Rewrites packet MAC address to that of the local EngineWCCP GRE: Any IP-Subnet, more overhead. Creates tunnel from router to local or remote Engine.WCCP GRE return.WCCP L2 return.Engine can optionally return traffic any other way including routing.Whilst originally designed for Cisco's Content Cache appliance they have since added support to other products, including:
ASR 1000 Routers Application & Content Networking System (ACNS)Wide Area Application Services (WAAS)ASA/PIX FirewallsSome IOS versionsIronPort S-Series Web Security ApplianceNexus 7000 SwitchesOther vendors have also implemented WCCP support into their products, as it allows clustering and transparent deployment on networks using Cisco routers/switches without additional hardware. WCCP is of particular use to vendors of web cache/proxy/security appliances for redirection of web traffic. A list includes: