Я искал низкий уровень обмена сообщениями (не обязательно MQ), который должен удовлетворять следующим требованиям, но без успеха. Я фактически использовал Resilio (Bittorrent Sync), и он просто работает без какой-либо конфигурации даже в случае брандмауэров или устройства NAT и т. Д. Но он не соответствует моим требованиям к задержкам (особенно когда несколько устройств хранят («отправляют») сообщения одновременно в общей папкеСуществует ли P2P, Open Source, отсутствие пересылки портов, низкая латентность, уровень обмена сообщениями?
Требование:..
- Должен быть свободно использовать для коммерческого использования (предпочтительно с открытым исходным кодом)
- должны быть доступны на Linux/Ubuntu
- должен работать. коробки, т. е. никакая переадресация портов и т. д. не требуется, даже если за брандмауэрами или на устройстве NAT.
- Должно быть p2p (т. Е. Нет централизованного сервера).
- Должно быть несколько масштабируемым. Должен поддерживаться второй период доставки небольших (один килобайт) сообщений, когда 10 устройств отправляют сообщения (один ко многим) одновременно. Таким образом, в общей сложности 90 сообщений на один килобайт доставлены второй секундой. Каждое устройство распределяет одно сообщение и получает 9 сообщений.
- Должен иметь какой-то API.
Я не уверен, как именно Resilio подключается к устройствам. Но, возможно, слой обмена сообщениями, который я ищу, использует какой-то сервер сигнализации/STUN для обнаружения/подключения устройств. Это должно быть хорошо, если есть несколько серверов общего доступа/STUN, на которые вы можете положиться (попытка избежать централизации). Такие технологии, как WebRTC, кажутся довольно многообещающими, но я просто не нашел ничего, что работает из коробки. Однако такие веб-сайты, как https://otr.to, и приложения, такие как Resilio, говорят мне, что должен быть доступен слой/приложение обмена сообщениями с вышеуказанными требованиями?
Любые предложения приветствуются. Спасибо заранее.
Я думаю, вы должны удалить требование «многоадресной передачи» из названия. Многоадресная рассылка или широковещательная передача - это адрес «отправить всем», как правило, это не имеет значения, когда мы говорим о p2p через Интернет. – enkryptor
Готово. Я забыл удалить его из названия, когда я удалил его из требований. То, что я ищу, - это решение с суб-вторым сообщением от одного до десяти устройств (приблизительно), но одновременно. Таким образом, в общей сложности 90 сообщений на один килобайт доставлены второй секундой. Поэтому каждое устройство распределяет одно сообщение и получает 9 сообщений. Не уверен, какой правильный термин для такого распространения сообщений. – user1869131