78 lines
3.4 KiB
Markdown
78 lines
3.4 KiB
Markdown
# GODPN - Decentralized Private Network
|
|
|
|
## 🏛️ Архитектура
|
|
1. Компоненты системы
|
|
|
|
1.1 Трекер (Coordinator Server)
|
|
|
|
Роль: Управляет пирами, собирает метрики, назначает оптимальные подключения.
|
|
|
|
Функции:
|
|
|
|
Регистрирует пиры (IP, порт, доступная пропускная способность, геолокация).
|
|
Собирает статистику: скорость, пинг, трафик.
|
|
Ранжирует пиры для клиентов (по скорости/стабильности).
|
|
Начисляет монеты за трафик, списывает их у клиентов.
|
|
|
|
Технологии:
|
|
|
|
Echo (HTTP API для клиентов и пиров).
|
|
gRPC (для быстрого обмена метриками).
|
|
Redis (кеш рейтингов пиров).
|
|
PostgreSQL/SQLite3 (хранение данных пользователей, транзакций).
|
|
|
|
1.2. Клиент (VPN Client)
|
|
|
|
Роль: Подключается к пирам или центральным серверам через Shadowsocks.
|
|
|
|
Функции:
|
|
|
|
Получает список пиров от трекера.
|
|
Тестирует подключение (ping, speedtest).
|
|
Выбирает лучший пир/сервер.
|
|
Учитывает потраченные/заработанные монеты.
|
|
|
|
Технологии:
|
|
|
|
go-shadowsocks2 (подключение через SOCKS5).
|
|
libp2p (для P2P-подключений).
|
|
|
|
1.3. Пир (Peer Node)
|
|
|
|
Роль: Раздает трафик другим клиентам за монеты.
|
|
|
|
Функции:
|
|
|
|
Регистрируется на трекере.
|
|
Принимает подключения через Shadowsocks.
|
|
Отправляет метрики (трафик, скорость) трекеру.
|
|
Получает вознаграждение в монетах.
|
|
|
|
Технологии:
|
|
|
|
go-shadowsocks2 (режим сервера).
|
|
Prometheus + Grafana (мониторинг).
|
|
|
|
2. Как работает трафик
|
|
|
|
2.1. Подключение клиента
|
|
|
|
Клиент запрашивает у трекера список доступных пиров.
|
|
Трекер возвращает доступные пиры по скорости/стоимости.
|
|
Клиент тестирует их и подключается к лучшему.
|
|
Весь трафик идет через Shadowsocks-туннель (Можно настроить).
|
|
|
|
3. Монетизация
|
|
|
|
3.1. Внутренняя валюта
|
|
|
|
Монеты (токены) начисляются за отданный трафик.
|
|
Клиенты покупают подписку или тратят монеты на трафик.
|
|
|
|
## 📜 Лицензия
|
|
Этот проект распространяется под **SSPL-1.0**.
|
|
Коммерческое использование в качестве сервиса (SaaS) без разрешения автора запрещено.
|
|
|
|
Данная лицензия (SSPL) применяется только к коду, написанному автором godpn.
|
|
Сторонние библиотеки (например, go-shadowsocks2) используются под их исходными лицензиями.
|