Internet Protocol Television (IPTV) is a generic term grouping together services and applications which allow TV programs to be broadcasted via the Internet protocol. This requires the use of a wide range of different techniques, such as image and sound compression algorithms, multicast routing, and P2P protocols. IPTV is different from video on demand and interactive television.