A method and apparatus for providing streaming data to multiple clients
involves the provision of intelligent gateway at the edge of a network.
The gateway is designed so that if it receives a request from a second
client within the network for a data stream already being supplied to a
first client in the network, that data stream is duplicated by the
gateway rather than making a second request for the same stream from a
server. Multiple such gateways can be combined to form a large load
balancing network. An important aspect of the invention is a software
interface in the gateway that enables a data packet address type to be
changed from unicast to multicast and vice versa.