Целесообразно создать иерархию, но должен быть сервер или ресурс хранящий а значение по вертикали, по горизонтали, ip клиента, а также номер каждого обновления(каждое обновление +1 к существующему числу - 0, 1, 2 и т.д.). Как должны располагаться клиенты - главный -0, есть ниже порядком - 1, ещё - 2. Каждый порядок образует слой. Тем самым образуется матрица.
Как то так. Сервер нужен лишь только для подключения, а передача будет между клиентами напрямую.