2 October 1998 / watercasting

When discussing multicast in the Internet, the loosely coupled model often causes information providers some disquiet. There are a number of reasons for this, but a key issue is the relative anonymity of the receivers: traffic forwarding and group membership are local issues, and at no point is the complete group membership known unless an application level protocol, for example RTCP, is used to provide an approximate list of members. This anonymity implies that it is a simple matter to eavesdrop on, and record, a media stream in an undetectable manner.

There have been various proposals for protecting multicast data using public key authentication and encryption techniques, together with some suggestions for providing scalable key distribution for such services. These schemes rely on the cost of re-transmitting media data being large enough to deter paying customers from re-selling on content they have received. However, the Internet provides an environment where miscreants can easily re-transmit data without detection and on a large scale. Even if illegal copies are found, it may be difficult to determine which receiver was the source of those copies. It is therefore necessary to provide a means for tracing illegal copies, to deter would-be thieves.

One way to provide an audit trail of the origin of a copy is to use a technique known as watermarking. This entails embedding additional, virtually undetectable, information in the data to distinguish one copy from another. There is, however, a problem with using watermarking with broadcast or multicast media: the addition of distinguishing marks to the data stream is contrary to the bandwidth saving of being able to distribute the same data efficiently to multiple recipients.

Watercasting uses lightweight active network components at the branch points in an IP multicast network to modify a media stream such that recipients are delivered unique versions of the sourced data in an efficient manner. It builds upon some of the mechanisms proposed to provide support for reliable multicast data delivery and for delivery of scalable, layered, streamed multicast data (such as video and audio), and is part of a family of end-to-end services that can make use of a distributed, heterogeneous and dynamic set of filters in a multicast distribution tree. Watercasting is efficient: the source is required to generate O(d) uniquely watermarked copies of the media, where d is the depth of the multicast distribution tree, with the load required to tailor the watermark to be unique per receiver being distributed throughout the network, rather than being concentrated at the sender. This compares well to unicast distribution requiring a uniquely watermarked copy per receiver.