Due to the lack of multicast services in the Internet, applications based on single-source, multiple-destination transfers such as video conferencing, IP radio, and IPTV must use unicast. This type of traffic exhibits high redundancy with temporal clustering of duplicated packets. The redundancy originates from multiple transfers of the same data chunk over the same link. We propose CacheCast, a link-layer caching mechanism that eliminates the redundant data transmissions using small caches on links. CacheCast's underlying principles are simplicity and reliability. It is a fully distributed and incrementally deployable architecture. It consists of small caches on links that act independently and a server support that simplifies the link cache operation. Our analysis indicates that transfers of the same data to multiple destinations with CacheCast can achieve near-multicast efficiency in terms of consumed link bandwidth. The implementation of CacheCast proves its feasibility, efficiency, and the improvements of the server.