I'm a programmer and I'm developing a software that is going to be running from say someone's desktop or a terminal and sending data/video to someone other people. There is going to be more than 1 but only one "streamer" who will send same data t oall those people in real-time. The topology is supposed to be p2p.
One idea I had to solve the issue was to use something like i2p and udp streaming data thru i2p to other users (after exchanging i2p addresses). While this might work, the issue I am having is that this method sends the same data to many people, increasing bandwidth load by multiples (data times x). So a solution I came up with in my head was to do this in a ring topology, where user A connects to user B who connects to user C and so on....all the way to the server. All of these connections will be using i2p. And then the 'streamer' sends data down which is streamed down to all the 'recievers'. The thing is, its not going to be real time at all, and its going to be very slow, because its i2p + overhead of all these computers. And also there will be other issues like what if a user disconnects?