| | --- |
| | title: MeshNode |
| | description: '`MeshNode` — агент/демон, отвечающий за сетевую инфраструктуру HMP: |
| | маршрутизацию, синхронизацию, DHT, транспорт снапшотов и согласование ценностей. |
| | Может быть частью агента или вынесен в отдельный пр...' |
| | type: Article |
| | tags: |
| | - Ethics |
| | - CogSync |
| | - Mesh |
| | - JSON |
| | - EGP |
| | - Agent |
| | - HMP |
| | --- |
| | |
| | # MeshNode |
| |
|
| | `MeshNode` — агент/демон, отвечающий за сетевую инфраструктуру HMP: маршрутизацию, синхронизацию, DHT, транспорт снапшотов и согласование ценностей. |
| | Может быть частью агента или вынесен в отдельный процесс/сервер. |
| |
|
| | См. карту взаимодействия между агентами: [HMP-Agent-Network-Flow.md](./HMP-Agent-Network-Flow.md) |
| |
|
| | --- |
| |
|
| | ## 1. Основные функции |
| |
|
| | * Участие в DHT (таблицы известных узлов, bootstrap). |
| | * Синхронизация графов и дневников (`CogSync`). |
| | * Репликация этических профилей и кейсов (`EGP Sync`). |
| | * Участие в голосованиях и распространении репутаций. |
| | * Обработка p2p-трафика, снапшотов, IPFS/Bittorrent. |
| | * Поддержка **этического консенсуса (`EGP`)** и синхронизация: |
| |
|
| | * `ethics_policies` — профили ценностей. |
| | * `ethics_cases` — исключительные прецеденты. |
| |
|
| | --- |
| |
|
| | ## 2. Архитектура |
| |
|
| | ``` |
| | +--------------------+ |
| | | MeshNode | |
| | +---------+----------+ |
| | | |
| | +---------+----------+ |
| | | DHT / NodeTable | |
| | +---------+----------+ |
| | | |
| | +---------+----------+ |
| | | SyncManager / BT | |
| | +---------+----------+ |
| | | |
| | +---------+----------+ |
| | | Ethics Sync / EGP | |
| | +--------------------+ |
| | | |
| | +---------+----------+ |
| | | Security / Firewall| |
| | +---------+----------+ |
| | | |
| | +---------+----------+ |
| | | Recovery Manager | |
| | +--------------------+ |
| | ``` |
| |
|
| | | Блок | Пояснение | |
| | | ----------------------- | -------------------------------------------------------------------------- | |
| | | **MeshNode** | Центральный p2p-модуль, отвечающий за сетевые функции агента | |
| | | **DHT / NodeTable** | Таблица известных узлов, bootstrap, маршрутизация сообщений | |
| | | **SyncManager / BT** | Синхронизация данных (дневник, граф, репутации) через BitTorrent/IPFS | |
| | | **Ethics Sync / EGP** | Участие в этическом консенсусе: обмен `ethics_policies` и `ethics_cases` | |
| | | **Security / Firewall** | Контроль доверия, криптография, TLS/Noise, блокировка подозрительных узлов | |
| | | **Recovery Manager** | Автоматическое восстановление данных после сбоев или потери целостности | |
| |
|
| | --- |
| |
|
| | ## 3. Команды |
| |
|
| | * `ping_node(node_id)` |
| | * `get_snapshot(graph/diary)` |
| | * `update_reputation(peer_id, delta)` |
| | * `bootstrap_from_list()` / `discover_nodes()` |
| | * `report_anomaly(peer_id)` |
| | * `check_integrity(snapshot_id)` |
| | * `recover_from_peer(peer_id)` |
| | * `sync_ethics_policies()` — обмен профилями ценностей. |
| | * `exchange_ethics_cases()` — пересылка прецедентов. |
| |
|
| | --- |
| |
|
| | ## 4. Связи с другими агентами |
| |
|
| | * **HMP-Agent (Core/Connector):** передача данных и команд. |
| | * **Enlightener:** пересылка голосований, обмен `ethics_policies` и `ethics_cases`. |
| | * **IPFS / BT:** загрузка/публикация снапшотов. |
| |
|
| | --- |
| |
|
| | ## 5. Безопасность |
| |
|
| | * Криптографические подписи для снапшотов, сообщений, кейсов и политик. |
| | * Система доверия (`reputation score`) — узлы с низкой репутацией ограничиваются или игнорируются. |
| | * Локальный firewall-модуль: |
| |
|
| | * ограничение портов и направлений. |
| | * блокировка подозрительных узлов. |
| | * Поддержка TLS/WebSocket или Noise Protocol для защищённых каналов. |
| | * Ведение журнала безопасности и событий (Security Log). |
| | * При обмене кейсами и политиками проверяется подпись `Enlightener` и доверие к источнику. |
| |
|
| | --- |
| |
|
| | ## 6. Отказоустойчивость |
| |
|
| | * Буферизация незавершённых операций и автоматическое повторение попыток. |
| | * Периодическая проверка целостности данных (`check_integrity()`). |
| | * Хранилище контрольных копий снапшотов и этических профилей. |
| | * Автоматическое восстановление через `recover_from_peer()`: |
| |
|
| | * при потере данных или кейсов. |
| | * при повреждении или несовпадении контрольных сумм. |
| | * Резервирование и восстановление `ethics_cases` через соседние узлы. |
| |
|
| | --- |
| |
|
| | ## 7. Inline-сценарии |
| |
|
| | MeshNode может поддерживать *inline-сценарии* (мини-скрипты) для локальной обработки событий без передачи управления HMP-агенту: |
| |
|
| | * Примеры: |
| |
|
| | * `on_node_joined`: добавить в локальную таблицу и проверить trust. |
| | * `on_snapshot_received`: верификация → автоинтеграция → логирование. |
| | * `on_peer_misbehaved`: уменьшить репутацию, временно заблокировать. |
| | * `on_ethics_conflict_detected`: инициировать голосование через EGP. |
| | * `periodic_cleanup`: удалить устаревшие записи, сбросить TTL. |
| |
|
| | * Языки/форматы: |
| |
|
| | * YAML/JSON + встроенные фильтры. |
| | * Возможна поддержка Lua или Python (в режиме песочницы). |
| |
|
| | --- |
| |
|
| | ## 8. Пример use-case: восстановление после сбоя |
| |
|
| | 1. Устройство с MeshNode перезапускается после сбоя сети. |
| | 2. `Recovery Manager` анализирует логи и список недоставленных снапшотов и кейсов. |
| | 3. Выполняется `recover_from_peer()` — загрузка последних версий у соседей с высокой репутацией. |
| | 4. `Integrity Check` сверяет хэши и актуальность. |
| | 5. В случае конфликтов инициируется голосование через `CogSync` / `EGP`. |
| |
|
| | --- |
| |
|
| | ## 9. Схема объединяющая **архитектуру**, **безопасность**, **этику** и **восстановление**: |
| |
|
| | ``` |
| | ┌────────────────────────────────────────────────────┐ |
| | │ MeshNode │ |
| | └────────────┬───────────────────────┬───────────────┘ |
| | │ │ |
| | 1. Трафик DHT 2. Снапшоты (BT/IPFS) |
| | │ │ |
| | ┌─────────▼──────────┐ ┌────────▼────────────┐ |
| | │ DHT / NodeTable │ │ SyncManager / │ |
| | │ │ │ BitTorrent/IPFS │ |
| | └─────────┬──────────┘ └────────┬────────────┘ |
| | │ │ |
| | ┌─────────▼──────────┐ ┌────────▼────────────┐ |
| | │ Inline-сценарии │ │ Ethics Sync / EGP │ |
| | │ (Lua / YAML / etc) │ │ (policies & cases) │ |
| | └─────────┬──────────┘ └────────┬────────────┘ |
| | │ │ |
| | ┌─────────▼──────────┐ ┌────────▼───────────┐ |
| | │ Security / Firewall│ │ Recovery Manager │ |
| | │ → репутации │ │ → авто-восстанов │ |
| | │ → TLS / Noise │ │ → peer fallback │ |
| | └─────────┬──────────┘ └────────┬───────────┘ |
| | │ │ |
| | ┌──────────▼──────────┐ ┌────────▼───────────┐ |
| | │ Event Log & Alerts │ │ Snapshot Integrity │ |
| | └─────────────────────┘ └────────────────────┘ |
| | ``` |
| |
|
| | | Блок | Пояснение | |
| | | ------------------- | --------------------------------------------------------------- | |
| | | DHT / NodeTable | Таблицы узлов, bootstrap, маршрутизация | |
| | | SyncManager / BT | Синхронизация снапшотов (BitTorrent/IPFS) | |
| | | Ethics Sync / EGP | Обмен политиками (`ethics_policies`) и кейсами (`ethics_cases`) | |
| | | Inline-сценарии | Мини-скрипты локальной обработки событий | |
| | | Security / Firewall | Фильтрация трафика, доверие, TLS/Noise | |
| | | Recovery Manager | Восстановление данных через соседей | |
| | | Event Log & Alerts | Журнал событий, алерты | |
| | | Snapshot Integrity | Проверка контрольных сумм и актуальности | |
| |
|
| | --- |
| |
|
| | *Версия: v0.3.4 / Сентябрь 2025* |
| |
|
| |
|
| | --- |
| | > ⚡ [AI friendly version docs (structured_md)](../index.md) |
| |
|
| |
|
| | ```json |
| | { |
| | "@context": "https://schema.org", |
| | "@type": "Article", |
| | "name": "MeshNode", |
| | "description": "# MeshNode `MeshNode` — агент/демон, отвечающий за сетевую инфраструктуру HMP: маршрутизацию, синхр..." |
| | } |
| | ``` |
| |
|