778 lines
23 KiB
Markdown
778 lines
23 KiB
Markdown
# 灵隙协议族(Synapse Protocol Suite) - 解决方案白皮书
|
||
|
||
> 版本:1.0.0
|
||
> 日期:2026-06-27
|
||
> 状态:草案
|
||
> 前置阅读:[灵隙原始协议(Synapse Raw Protocol)](./01-synapse-raw-protocol.md)
|
||
|
||
---
|
||
|
||
## 目录
|
||
|
||
1. [概述](#1-概述)
|
||
2. [方案一:Agent 发现与广播机制](#2-方案一agent-发现与广播机制)
|
||
3. [方案二:身份认证与信任体系](#3-方案二身份认证与信任体系)
|
||
4. [方案三:协议缺失内容补全](#4-方案三协议缺失内容补全)
|
||
5. [分阶段实施路线图](#5-分阶段实施路线图)
|
||
6. [技术选型建议](#6-技术选型建议)
|
||
|
||
---
|
||
|
||
## 1. 概述
|
||
|
||
### 1.1 背景
|
||
|
||
当前灵隙协议族(Synapse Protocol Suite)定义了 Agent 之间"怎么说话"(消息格式、任务流程),但缺少:
|
||
|
||
- **怎么找到对方** — Agent 发现与广播机制
|
||
- **怎么相信对方** — 身份认证与信任体系
|
||
- **怎么规模化协作** — 路由、调度、激励等基础设施
|
||
|
||
本文档针对上述问题给出完整的解决方案。
|
||
|
||
### 1.2 设计原则
|
||
|
||
| 原则 | 说明 |
|
||
|------|------|
|
||
| **渐进式** | 从简单到复杂,每阶段都可用 |
|
||
| **可插拔** | 组件可替换,不绑定具体实现 |
|
||
| **传输无关** | 不依赖特定底层网络 |
|
||
| **安全优先** | 身份认证是基础设施,不是可选功能 |
|
||
| **向后兼容** | 不破坏现有协议,增量扩展 |
|
||
|
||
---
|
||
|
||
## 2. 方案一:Agent 发现与广播机制
|
||
|
||
### 2.1 整体架构
|
||
|
||
```
|
||
┌─────────────────────────────────────────────────────────────────────┐
|
||
│ Agent 发现与广播层 │
|
||
├─────────────────────┬─────────────────────┬─────────────────────────┤
|
||
│ 集中式目录服务 │ 分布式 Gossip │ 组播/广播 │
|
||
│ (Directory) │ (Gossip) │ (Multicast) │
|
||
│ ┌───────────────┐ │ ┌───────────────┐ │ ┌────────────────┐ │
|
||
│ │ 注册/注销 │ │ │ 消息泛洪 │ │ │ 子网内广播 │ │
|
||
│ │ 能力索引 │ │ │ 状态同步 │ │ │ 邻居发现 │ │
|
||
│ │ 名字解析 │ │ │ 节点发现 │ │ │ 本地心跳 │ │
|
||
│ └───────────────┘ │ └───────────────┘ │ └────────────────┘ │
|
||
└─────────────────────┴─────────────────────┴─────────────────────────┘
|
||
```
|
||
|
||
### 2.2 模式一:集中式目录服务(推荐首选)
|
||
|
||
#### 2.2.1 架构说明
|
||
|
||
引入 **Agent Directory Service(ADS)** 作为中心化的 Agent 目录服务,类似 DNS。
|
||
|
||
```
|
||
Agent A ──注册──▶ ┌─────────────┐ ◀──注册── Agent B
|
||
│ Directory │
|
||
Agent C ──查询──▶ │ Service │ ◀──心跳── Agent D
|
||
└─────────────┘
|
||
│
|
||
▼
|
||
能力索引
|
||
在线状态
|
||
端点地址
|
||
```
|
||
|
||
#### 2.2.2 核心接口
|
||
|
||
**注册协议(Agent → Directory):**
|
||
|
||
| 操作 | 消息类型 | 说明 |
|
||
|------|---------|------|
|
||
| 注册 | `dir:register` | Agent 上线时注册自身信息 |
|
||
| 注销 | `dir:unregister` | Agent 下线时注销 |
|
||
| 心跳 | `dir:heartbeat` | 定期上报存活状态 |
|
||
| 更新能力 | `dir:update_capabilities` | 能力变化时更新 |
|
||
|
||
**查询协议(Agent → Directory):**
|
||
|
||
| 操作 | 消息类型 | 说明 |
|
||
|------|---------|------|
|
||
| 按 ID 查询 | `dir:query_by_id` | 根据 AgentID 查端点 |
|
||
| 按能力查询 | `dir:query_by_capability` | 找具备某能力的 Agent |
|
||
| 列表查询 | `dir:list` | 分页列出所有 Agent |
|
||
| 批量查询 | `dir:batch_query` | 批量查询多个 Agent |
|
||
|
||
#### 2.2.3 注册数据结构
|
||
|
||
```json
|
||
{
|
||
"agent_id": "agent-001",
|
||
"agent_name": "视频生成Agent",
|
||
"system_id": "video-system",
|
||
"endpoint": "https://agent-001.example.com/synapse/callback",
|
||
"version": "1.0.0",
|
||
"capabilities": [
|
||
{
|
||
"type": "video_generation",
|
||
"name": "视频生成",
|
||
"description": "根据脚本生成视频",
|
||
"max_concurrent": 10,
|
||
"avg_latency_ms": 5000
|
||
}
|
||
],
|
||
"transports": ["http", "grpc"],
|
||
"status": "online",
|
||
"last_heartbeat": "2026-06-27T10:00:00Z",
|
||
"trust_score": 85,
|
||
"public_key": "-----BEGIN PUBLIC KEY-----\n..."
|
||
}
|
||
```
|
||
|
||
#### 2.2.4 优缺点
|
||
|
||
| 优点 | 缺点 |
|
||
|------|------|
|
||
| 查询效率高(O(1)) | 单点故障风险 |
|
||
| 支持复杂查询(按能力、按系统等) | 中心节点需信任 |
|
||
| 易于管理和监控 | 扩展性有上限 |
|
||
| 实现简单 | 存在注册/注销时序问题 |
|
||
|
||
---
|
||
|
||
### 2.3 模式二:分布式 Gossip 协议(可选扩展)
|
||
|
||
#### 2.3.1 架构说明
|
||
|
||
无中心节点,Agent 之间通过 Gossip 协议(epidemic protocol)扩散状态信息,类似比特币网络的节点发现。
|
||
|
||
```
|
||
Agent A ──gossip──▶ Agent B ──gossip──▶ Agent D
|
||
│ │
|
||
└──gossip──▶ Agent C ──gossip──▶ Agent E
|
||
```
|
||
|
||
#### 2.3.2 核心机制
|
||
|
||
| 机制 | 说明 |
|
||
|------|------|
|
||
| **Peer Sampling** | 每个 Agent 维护一个部分视图(partial view) |
|
||
| **Active Push** | 定期随机选几个节点推送本地状态 |
|
||
| **Passive Pull** | 收到推送后,有概率回传自身状态 |
|
||
| **TTL** | 消息有存活跳数,防止无限扩散 |
|
||
| **Deduplication** | 消息 ID 去重,避免重复处理 |
|
||
|
||
#### 2.3.3 Gossip 消息格式
|
||
|
||
```json
|
||
{
|
||
"type": "gossip:state",
|
||
"from": "agent-001",
|
||
"view": [
|
||
{"agent_id": "agent-002", "endpoint": "...", "capabilities": [...], "timestamp": "..."},
|
||
{"agent_id": "agent-003", "endpoint": "...", "capabilities": [...], "timestamp": "..."},
|
||
{"agent_id": "agent-004", "endpoint": "...", "capabilities": [...], "timestamp": "..."}
|
||
],
|
||
"ttl": 5,
|
||
"msg_id": "msg-xxx"
|
||
}
|
||
```
|
||
|
||
#### 2.3.4 优缺点
|
||
|
||
| 优点 | 缺点 |
|
||
|------|------|
|
||
| 完全去中心化 | 查询效率低(需本地构建视图) |
|
||
| 容错性强 | 状态最终一致,有延迟 |
|
||
| 可无限扩展 | 实现复杂度高 |
|
||
| 无单点故障 | 网络流量大 |
|
||
|
||
---
|
||
|
||
### 2.4 模式三:本地组播/邻居发现(局域网场景)
|
||
|
||
适用于同一内网/集群内的 Agent 快速发现。
|
||
|
||
#### 2.4.1 机制
|
||
|
||
| 机制 | 说明 |
|
||
|------|------|
|
||
| **UDP 组播** | 定期在组播地址发送广播 |
|
||
| **mDNS/DNS-SD** | 类似 Apple Bonjour 的服务发现 |
|
||
| **ARP/NDP** | 链路层发现(不推荐) |
|
||
|
||
#### 2.4.2 适用场景
|
||
|
||
- 边缘计算集群
|
||
- 同一机房内的 Agent 集群
|
||
- 本地开发测试环境
|
||
|
||
---
|
||
|
||
### 2.5 广播机制设计
|
||
|
||
#### 2.5.1 广播类型
|
||
|
||
| 广播范围 | 消息类型前缀 | 说明 |
|
||
|---------|-------------|------|
|
||
| 全网广播 | `global:` | 所有在线 Agent |
|
||
| 系统广播 | `system:` | 同一 system_id 内 |
|
||
| 群组广播 | `group:` | 同一群组内(已有) |
|
||
| 能力组广播 | `cap:` | 具备某能力的 Agent |
|
||
|
||
#### 2.5.2 广播实现
|
||
|
||
**集中式模式下:**
|
||
- 由 Directory Service 转发广播消息
|
||
- 支持按条件过滤(按能力、按系统等)
|
||
|
||
**分布式模式下:**
|
||
- 通过 Gossip 协议泛洪
|
||
- TTL 控制扩散范围
|
||
- 消息 ID 去重
|
||
|
||
---
|
||
|
||
### 2.6 心跳与存活检测
|
||
|
||
#### 2.6.1 心跳机制
|
||
|
||
```
|
||
Agent ───heartbeat──▶ Directory
|
||
(每30秒)
|
||
|
||
Directory 判定离线:
|
||
- 连续 3 次未收到心跳 → 标记为 offline
|
||
- 离线 24 小时 → 自动注销
|
||
```
|
||
|
||
#### 2.6.2 主动探测
|
||
|
||
```
|
||
Directory ───ping──▶ Agent
|
||
◀──pong──
|
||
```
|
||
|
||
用于验证 Agent 是否真的在线(防止心跳伪造)。
|
||
|
||
---
|
||
|
||
## 3. 方案二:身份认证与信任体系
|
||
|
||
### 3.1 三层身份架构
|
||
|
||
```
|
||
┌─────────────────────────────────────────────────┐
|
||
│ Layer 3: 信任评分 (Trust Score) │
|
||
│ 声誉系统、历史行为、第三方评价 │
|
||
├─────────────────────────────────────────────────┤
|
||
│ Layer 2: 身份验证 (Authentication) │
|
||
│ 签名验证、证书校验、DID 验证 │
|
||
├─────────────────────────────────────────────────┤
|
||
│ Layer 1: 身份标识 (Identity) │
|
||
│ AgentID + 公钥 / 证书 / DID │
|
||
└─────────────────────────────────────────────────┘
|
||
```
|
||
|
||
### 3.2 Layer 1:身份标识方案
|
||
|
||
#### 3.2.1 方案 A:公钥身份(推荐基础版)
|
||
|
||
**核心思想**:AgentID = 公钥哈希(类似比特币地址)
|
||
|
||
```
|
||
AgentID = base58(sha256(public_key)[:20])
|
||
例:agent-1A2B3C4D5E6F...
|
||
```
|
||
|
||
**优点:**
|
||
- 自包含,不需要中心 CA
|
||
- 公钥可验证身份
|
||
- 实现简单
|
||
|
||
**缺点:**
|
||
- 身份无法撤销(私钥泄露 = 身份被盗)
|
||
- 没有人类可读的名字
|
||
- 无法关联真实世界身份
|
||
|
||
**适用场景**:内部系统、测试环境、信任度要求不高的场景
|
||
|
||
#### 3.2.2 方案 B:PKI 证书体系
|
||
|
||
**核心思想**:引入 CA(Certificate Authority)颁发证书
|
||
|
||
```
|
||
CA 根证书
|
||
├── 系统A证书
|
||
│ ├── Agent-001 证书
|
||
│ └── Agent-002 证书
|
||
└── 系统B证书
|
||
└── Agent-003 证书
|
||
```
|
||
|
||
**优点:**
|
||
- 成熟的工业标准
|
||
- 支持证书撤销(CRL/OCSP)
|
||
- 有层级信任关系
|
||
|
||
**缺点:**
|
||
- 需要信任中心化 CA
|
||
- 证书管理复杂
|
||
- 跨 CA 互操作需要桥接
|
||
|
||
**适用场景**:企业内部、有明确信任中心的场景
|
||
|
||
#### 3.2.3 方案 C:区块链 DID(去中心化身份)
|
||
|
||
**核心思想**:身份上链,链上存公钥和属性,类似 W3C DID 标准。
|
||
|
||
```
|
||
链上存储:
|
||
DID → {
|
||
"publicKey": "...",
|
||
"controller": "...",
|
||
"authentication": [...],
|
||
"service": [...],
|
||
"revoked": false,
|
||
"timestamp": "..."
|
||
}
|
||
```
|
||
|
||
**三种实现路径:**
|
||
|
||
| 路径 | 说明 | 适用场景 |
|
||
|------|------|---------|
|
||
| **公链 DID** | 使用以太坊/Solana 等公链 | 开放生态、跨组织协作 |
|
||
| **联盟链 DID** | 多机构共建联盟链 | 行业联盟、政企合作 |
|
||
| **私有链 DID** | 单组织内部链 | 企业内部、对性能要求高 |
|
||
|
||
**优点:**
|
||
- 去中心化,无单点故障
|
||
- 身份可验证、可追溯
|
||
- 支持跨系统互认
|
||
- 不可篡改的身份历史
|
||
|
||
**缺点:**
|
||
- 链上操作有延迟
|
||
- 需要支付 Gas 费(公链)
|
||
- 实现复杂度高
|
||
- 隐私保护需额外设计
|
||
|
||
---
|
||
|
||
### 3.3 Layer 2:身份验证方案
|
||
|
||
#### 3.3.1 消息签名验证
|
||
|
||
所有灵隙消息必须签名,签名方式:
|
||
|
||
```
|
||
签名内容 = SHA256(message_id + sender + receiver + payload + timestamp)
|
||
签名 = Sign(private_key, 签名内容)
|
||
验证 = Verify(public_key, 签名内容, 签名)
|
||
```
|
||
|
||
#### 3.3.2 签名放置位置
|
||
|
||
| 位置 | 说明 |
|
||
|------|------|
|
||
| 消息体内 | `signature` 字段 |
|
||
| HTTP Header | `X-Synapse-Signature` |
|
||
| gRPC Metadata | `x-synapse-signature` |
|
||
|
||
#### 3.3.3 防重放攻击
|
||
|
||
```
|
||
每个消息有唯一 message_id + timestamp
|
||
接收方维护已处理 message_id 缓存(如最近 1 小时)
|
||
timestamp 与本地时间差超过 5 分钟 → 拒绝
|
||
```
|
||
|
||
---
|
||
|
||
### 3.4 Layer 3:信任评分体系
|
||
|
||
#### 3.4.1 信任分维度
|
||
|
||
| 维度 | 权重 | 说明 |
|
||
|------|------|------|
|
||
| 任务完成率 | 30% | 历史任务成功 / 总任务数 |
|
||
| 任务质量 | 25% | 结果评分、返工率 |
|
||
| 响应速度 | 15% | 平均响应时间 |
|
||
| 在线稳定性 | 15% | 在线时长 / 总时长 |
|
||
| 历史信誉 | 15% | 其他 Agent 的评价 |
|
||
|
||
#### 3.4.2 信任分计算
|
||
|
||
```
|
||
trust_score = Σ(维度_i × 权重_i)
|
||
|
||
范围:0 - 100
|
||
等级:
|
||
90-100 S 级 高度可信
|
||
75-89 A 级 可信
|
||
60-74 B 级 一般可信
|
||
40-59 C 级 谨慎使用
|
||
0-39 D 级 不可信
|
||
```
|
||
|
||
#### 3.4.3 信任传递
|
||
|
||
```
|
||
A 信任 B(评分 90)
|
||
B 信任 C(评分 85)
|
||
A 对 C 的初始信任 = 90 × 85% × 衰减因子 = 约 68
|
||
```
|
||
|
||
**注意**:信任传递有衰减,防止信任污染。
|
||
|
||
---
|
||
|
||
### 3.5 区块链适用性决策树
|
||
|
||
```
|
||
是否需要跨组织协作?
|
||
├── 否 → 用 PKI 或公钥身份(简单高效)
|
||
└── 是 → 是否有共同信任的中心机构?
|
||
├── 是 → 用 PKI 体系(成熟可靠)
|
||
└── 否 → 是否需要不可篡改的审计?
|
||
├── 是 → 考虑联盟链 DID
|
||
└── 否 → 公钥身份 + 声誉系统可能够用
|
||
```
|
||
|
||
---
|
||
|
||
## 4. 方案三:协议缺失内容补全
|
||
|
||
### 4.1 第一优先级补全(核心基础设施)
|
||
|
||
#### 4.1.1 Agent 发现协议(ADS - Agent Discovery Service)
|
||
|
||
**新增消息类型:**
|
||
|
||
| 消息类型 | 方向 | 说明 |
|
||
|---------|------|------|
|
||
| `dir:register` | Agent → Directory | 注册 Agent |
|
||
| `dir:unregister` | Agent → Directory | 注销 Agent |
|
||
| `dir:heartbeat` | Agent → Directory | 心跳 |
|
||
| `dir:update_capabilities` | Agent → Directory | 更新能力 |
|
||
| `dir:query_by_id` | Agent → Directory | 按 ID 查询 |
|
||
| `dir:query_by_capability` | Agent → Directory | 按能力查询 |
|
||
| `dir:list` | Agent → Directory | 列表查询 |
|
||
| `dir:query_result` | Directory → Agent | 查询结果 |
|
||
|
||
**新增数据结构:** `AgentDirectoryEntry`, `CapabilityIndex`, `QueryFilter`
|
||
|
||
#### 4.1.2 身份认证规范
|
||
|
||
**新增消息类型:**
|
||
|
||
| 消息类型 | 说明 |
|
||
|---------|------|
|
||
| `auth:challenge` | 身份挑战 |
|
||
| `auth:response` | 挑战响应 |
|
||
| `auth:cert_exchange` | 证书交换 |
|
||
|
||
**新增内容:**
|
||
- 标准签名算法列表(Ed25519, ECDSA P-256, RSA 2048)
|
||
- 消息签名格式规范
|
||
- 防重放攻击机制
|
||
- 身份验证流程规范
|
||
|
||
#### 4.1.3 心跳与存活检测
|
||
|
||
**新增消息类型:**
|
||
|
||
| 消息类型 | 说明 |
|
||
|---------|------|
|
||
| `net:ping` | 存活探测 |
|
||
| `net:pong` | 存活响应 |
|
||
| `net:offline_notify` | 下线通知 |
|
||
|
||
**规范内容:**
|
||
- 心跳间隔(默认 30 秒)
|
||
- 超时判定(连续 3 次未收到 → 离线)
|
||
- 离线通知机制
|
||
|
||
#### 4.1.4 统一错误码体系
|
||
|
||
**错误分类:**
|
||
|
||
| 错误码前缀 | 类别 | 示例 |
|
||
|-----------|------|------|
|
||
| `msg_` | 消息层 | msg_invalid_format, msg_signature_invalid |
|
||
| `auth_` | 认证层 | auth_failed, auth_expired, auth_forbidden |
|
||
| `task_` | 任务层 | task_not_found, task_timeout, task_cancelled |
|
||
| `cap_` | 能力层 | cap_lacking, cap_busy, cap_not_supported |
|
||
| `group_` | 群组层 | group_not_found, group_full, group_permission_denied |
|
||
| `dir_` | 目录层 | dir_agent_not_found, dir_query_failed |
|
||
| `net_` | 网络层 | net_timeout, net_offline, net_unreachable |
|
||
| `sys_` | 系统层 | sys_internal_error, sys_not_implemented |
|
||
|
||
---
|
||
|
||
### 4.2 第二优先级补全(重要功能)
|
||
|
||
#### 4.2.1 能力匹配与任务路由
|
||
|
||
**功能:**
|
||
- 智能选择最合适的 Agent 执行任务
|
||
- 支持负载均衡(按并发数、响应速度、信任分)
|
||
- 支持任务失败自动重试/转发
|
||
|
||
**新增消息类型:**
|
||
- `router:submit_task` - 提交给路由器自动选择执行者
|
||
- `router:forward` - 任务转发
|
||
|
||
#### 4.2.2 全网广播协议
|
||
|
||
**新增消息类型:**
|
||
|
||
| 消息类型 | 说明 |
|
||
|---------|------|
|
||
| `global:broadcast` | 全网广播 |
|
||
| `system:broadcast` | 系统内广播 |
|
||
| `cap:broadcast` | 能力组广播 |
|
||
|
||
**规范内容:**
|
||
- 广播范围定义
|
||
- TTL 与去重机制
|
||
- 广播风暴防护
|
||
|
||
#### 4.2.3 版本协商机制
|
||
|
||
**功能:**
|
||
- Agent 之间协商使用的协议版本
|
||
- 向后兼容处理
|
||
- 能力降级策略
|
||
|
||
**新增消息类型:**
|
||
- `meta:version_query` - 查询支持的版本
|
||
- `meta:version_negotiate` - 版本协商
|
||
|
||
#### 4.2.4 幂等性保证
|
||
|
||
**规范内容:**
|
||
- 幂等键(Idempotency Key)机制
|
||
- 重复消息处理规范
|
||
- 任务级幂等 vs 消息级幂等
|
||
|
||
---
|
||
|
||
### 4.3 第三优先级补全(增强功能)
|
||
|
||
#### 4.3.1 流式输出协议
|
||
|
||
**功能:**
|
||
- 长任务实时进度推送
|
||
- 生成式 AI 的 token 流式输出
|
||
- WebSocket/SSE 传输支持
|
||
|
||
#### 4.3.2 批量任务协议
|
||
|
||
**功能:**
|
||
- 一次性提交多个同类型任务
|
||
- 批量状态查询
|
||
- 批量结果收集
|
||
|
||
#### 4.3.3 支付与激励机制
|
||
|
||
**功能:**
|
||
- 任务定价与结算
|
||
- Token 或积分系统
|
||
- 智能合约自动结算(区块链场景)
|
||
|
||
#### 4.3.4 群组发现协议
|
||
|
||
**功能:**
|
||
- 按主题/任务类型查找群组
|
||
- 推荐加入合适的群组
|
||
- 群组热度/活跃度排名
|
||
|
||
---
|
||
|
||
### 4.4 安全相关补全
|
||
|
||
#### 4.4.1 端到端加密
|
||
|
||
**规范内容:**
|
||
- 密钥协商(ECDH)
|
||
- 对称加密载荷(AES-GCM)
|
||
- 前向保密(PFS)
|
||
|
||
#### 4.4.2 权限委托
|
||
|
||
**功能:**
|
||
- Agent A 委托 Agent B 代表自己执行任务
|
||
- 委托令牌(Delegation Token)
|
||
- 委托范围与时效控制
|
||
|
||
#### 4.4.3 审计日志标准
|
||
|
||
**规范内容:**
|
||
- 统一审计日志格式
|
||
- 关键操作必须记录
|
||
- 日志完整性保护(哈希链)
|
||
|
||
---
|
||
|
||
## 5. 分阶段实施路线图
|
||
|
||
### 5.1 Phase 0:基础版(MVP) - 预计 2 周
|
||
|
||
**目标**:协议可用,能跑通基本流程
|
||
|
||
**内容:**
|
||
- [x] 灵隙点对点任务协议(已完成)
|
||
- [x] A2N 群组协作协议(已完成)
|
||
- [x] P2A 外部调用协议(已完成)
|
||
- [x] 三套协议的 SDK 实现(已完成)
|
||
|
||
---
|
||
|
||
### 5.2 Phase 1:发现与身份 - 预计 4 周
|
||
|
||
**目标**:Agent 能互相找到对方,能验证对方身份
|
||
|
||
**新增协议模块:**
|
||
|
||
| 模块 | 说明 | 优先级 |
|
||
|------|------|--------|
|
||
| Agent 目录服务协议 | 集中式 ADS | P0 |
|
||
| 公钥身份规范 | Ed25519 签名验证 | P0 |
|
||
| 心跳与存活检测 | 30 秒心跳,3 次超时判定离线 | P0 |
|
||
| 统一错误码体系 | 8 大类错误码 | P0 |
|
||
| 防重放攻击 | message_id + timestamp | P0 |
|
||
|
||
**输出物:**
|
||
- 新协议文档:`06-agent-discovery.md`
|
||
- 新协议文档:`07-authentication.md`
|
||
- 代码:`discovery/` 包(目录服务客户端)
|
||
- 代码:`auth/` 包(签名验证工具)
|
||
- 更新 types 包:新增消息类型和错误码
|
||
|
||
---
|
||
|
||
### 5.3 Phase 2:路由与广播 - 预计 4 周
|
||
|
||
**目标**:支持智能任务路由和全网广播
|
||
|
||
**新增协议模块:**
|
||
|
||
| 模块 | 说明 | 优先级 |
|
||
|------|------|--------|
|
||
| 任务路由协议 | 按能力 + 负载 + 信任分选择执行者 | P1 |
|
||
| 全网广播协议 | 基于目录服务的广播转发 | P1 |
|
||
| 版本协商机制 | 协议版本兼容 | P1 |
|
||
| 幂等性保证 | 幂等键 + 去重 | P1 |
|
||
|
||
**输出物:**
|
||
- 新协议文档:`08-routing-and-broadcast.md`
|
||
- 代码:`routing/` 包增强(增加能力路由)
|
||
- 更新目录服务:支持广播转发
|
||
|
||
---
|
||
|
||
### 5.4 Phase 3:信任与激励 - 预计 6 周
|
||
|
||
**目标**:建立信任体系,支持规模化协作
|
||
|
||
**新增协议模块:**
|
||
|
||
| 模块 | 说明 | 优先级 |
|
||
|------|------|--------|
|
||
| 信任评分体系 | 5 维度信任分计算 | P2 |
|
||
| 流式输出协议 | WebSocket/SSE 流式进度 | P2 |
|
||
| 批量任务协议 | 批量提交/查询/收集 | P2 |
|
||
| 群组发现协议 | 群组搜索与推荐 | P2 |
|
||
| SLA 协议 | 服务等级承诺 | P3 |
|
||
|
||
**输出物:**
|
||
- 新协议文档:`09-trust-and-reputation.md`
|
||
- 代码:`trust/` 包(信任评分引擎)
|
||
|
||
---
|
||
|
||
### 5.5 Phase 4:高级特性 - 预计 8 周+
|
||
|
||
**目标**:企业级、生产级完整功能
|
||
|
||
**新增协议模块:**
|
||
|
||
| 模块 | 说明 | 优先级 |
|
||
|------|------|--------|
|
||
| 端到端加密 | ECDH + AES-GCM | P3 |
|
||
| 权限委托 | 委托令牌机制 | P3 |
|
||
| 支付与激励 | Token/积分系统 | P3 |
|
||
| 区块链 DID 集成 | 可选模块 | P4 |
|
||
| 审计日志标准 | 统一审计格式 | P3 |
|
||
| Gossip 协议 | 分布式发现(可选) | P4 |
|
||
|
||
---
|
||
|
||
## 6. 技术选型建议
|
||
|
||
### 6.1 目录服务存储选型
|
||
|
||
| 方案 | 适用场景 | 优点 | 缺点 |
|
||
|------|---------|------|------|
|
||
| **Redis** | 中小规模 | 高性能,支持 TTL | 数据量受限 |
|
||
| **PostgreSQL** | 中大规模 | 复杂查询,持久化 | 需运维 |
|
||
| **Elasticsearch** | 大规模 + 全文检索 | 强大的搜索能力 | 运维复杂 |
|
||
|
||
**推荐**:先用 Redis(简单快),规模大了再迁 PostgreSQL。
|
||
|
||
---
|
||
|
||
### 6.2 签名算法选型
|
||
|
||
| 算法 | 安全性 | 性能 | 密钥长度 | 推荐度 |
|
||
|------|--------|------|---------|--------|
|
||
| Ed25519 | 高 | 快 | 256 位 | ⭐⭐⭐⭐⭐ 首选 |
|
||
| ECDSA P-256 | 高 | 中 | 256 位 | ⭐⭐⭐⭐ 兼容 |
|
||
| RSA 2048 | 中 | 慢 | 2048 位 | ⭐⭐ 仅兼容 |
|
||
|
||
**推荐**:默认 Ed25519,需要兼容旧系统时支持 ECDSA。
|
||
|
||
---
|
||
|
||
### 6.3 区块链选型(如果需要)
|
||
|
||
| 场景 | 推荐方案 | 说明 |
|
||
|------|---------|------|
|
||
| 企业内部 | **私有链(Hyperledger Fabric)** | 可控,高性能,无 Gas 费 |
|
||
| 行业联盟 | **联盟链(FISCO BCOS / ChainMaker)** | 多机构共建,合规 |
|
||
| 开放生态 | **公链(以太坊 / Solana)** | 完全开放,需 Gas 费 |
|
||
| 简单原型 | **模拟链(数据库模拟)** | 先验证逻辑,再上真链 |
|
||
|
||
**推荐**:90% 的场景用不到真区块链,先用数据库模拟验证业务逻辑。
|
||
|
||
---
|
||
|
||
## 7. 总结与建议
|
||
|
||
### 7.1 核心建议
|
||
|
||
1. **先集中后分布**:先用集中式目录服务,简单高效;规模大了再考虑分布式
|
||
2. **先公钥后区块链**:先用公钥身份解决 80% 的问题,真的需要了再上链
|
||
3. **先 MVP 后完善**:先跑通核心流程,再逐步加高级功能
|
||
4. **标准接口可替换**:目录服务、身份系统都做成可插拔的,方便未来升级
|
||
|
||
### 7.2 下一步行动
|
||
|
||
| 序号 | 行动 | 负责人 | 产出 |
|
||
|------|------|--------|------|
|
||
| 1 | 评审本方案,确认 Phase 1 范围 | 架构组 | 确认后的方案 |
|
||
| 2 | 设计目录服务 API 详细规范 | 协议组 | `06-agent-discovery.md` |
|
||
| 3 | 设计身份认证详细规范 | 协议组 | `07-authentication.md` |
|
||
| 4 | 实现目录服务原型 | 开发组 | 可运行的 ADS 服务 |
|
||
| 5 | 更新 SDK 支持发现和认证 | 开发组 | 新版 SDK |
|
||
|
||
---
|
||
|
||
## 附录:相关文档索引
|
||
|
||
| 文档 | 说明 |
|
||
|------|------|
|
||
| [01-synapse-raw-protocol.md](./01-synapse-raw-protocol.md) | 灵隙原始协议(Synapse Raw Protocol)(纲领) |
|
||
| [02-a2a-protocol.md](./02-a2a-protocol.md) | A2A 协议(P2P 任务) |
|
||
| [03-a2n-protocol.md](./03-a2n-protocol.md) | A2N 协议(群组协作) |
|
||
| [04-p2a-protocol.md](./04-p2a-protocol.md) | P2A 协议(外部调用) |
|
||
| [05-sdk-implementation.md](./05-sdk-implementation.md) | SDK 实现说明 |
|
||
| **本文档** | **解决方案白皮书** |
|