Way to make p2p work (silly suggestion I guess) #644
deijjji303
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
So I already proposed p2p in the meeting yesterday and the problem is mainly that in a big voice chat there would be too many individual connections between everyone -> drains bandwidth etc.
What would you gain from a p2p solution? No(/almost no) server hosting necessary and - depending on location - lower latency (maybe). Now to solve the many connections problem I propose the following:
Among the speakers the top root(n of speakers) in terms of bandwidth and location are selected in order to connect speakers to speakers. That is each speaker chooses one 'relay speaker' and gets their audio going in from them. Audio out is sent to every relay. Let's say there are 25 speakers:
Every speaker sends audio to all the five relays and gets one audio stream from the closest relay.
Each relay sends their audio stream to one listener (again based on location and bandwidth). Then in binary tree fashion each listener relays this audio to two other speakers. (Might as well be three or four depending on bandwidth). The idea is that the listeners with the poorest connection are the leaves of this binary tree. Because listeners don't speak themselves, latency isn't that fatal and because binary trees it shouldn't even be that many hops.
Ye that would be it... I know it isn't perfect yet but it could be a pretty neat network solution.
Beta Was this translation helpful? Give feedback.
All reactions