I see I misunderstood how you mean this to work, that routing would handle sending data only to subscribers. I was imagining that it mean a simple LAN broadcast using a packet with the subnet bits all set (e.g. 192.168.255.255). I think that it's more analogous to a mailing list distribution, but for general data/streams?
But your earlier example of downloading the cat video still fails unless many people request the video at the same time (otherwise you're multicasting to one). What happens if I watch the video on my phone while out, then watch it again on my laptop at home? It will still need sending twice.
Wouldn't a more efficient approach just be to have something like ipfs with lots of local caching?