Tento protokol byl vyvinut Peterem Danzigem na University of Southern California jako hlavní část hierarchického cachování v Harvest research projektu.
ICP je formát správ, které používají WWW cache pro komunikaci mezi sebou. ICP je používáno především pro nalezení cachovaných dokumentů v sousedních cache serverech. Cache rozesílá dotazy okolním serverům a podle odpovědí se rozhodne odkud získat požadovaný dokument..
V současnosti je pro přenos ICP správ používán UDP protokol. Není sice nutné pro ICP používat právě UDP protokol, ale tento protokol má některé vlastnosti, pro které je ho vhodné použít pro komunikaci mezi cachemi. Cache při svých dotazech na sousední cache nemůže čekat příliš dlouho než se rozhodne odkud získat daný objekt. Nezískání rychlé odpovědi na ICP dotaz většinou znamená zahlcení spojení s tázaným serverem nebo jeho výpadek . Je proto vhodné použít spíše UDP jako nespojovaný protokol s malou režií, než spojovaný TCP.