NSIO Docs
NSIO Docs
首页

NSIO Next · 当前开发基线

统一 L3 + L4 架构
产品能力目录与实现闭环
功能闭环总账
产品闭环与功能实现
实施蓝图与交付契约
发行、升级与卸载
跨组件共享契约
控制资源生命周期
控制投影与 Runtime Protocol
数据面协议
Grant 与策略编译

组件实现规格

ns · 统一节点运行时
Client · App、CLI 与门户
NSD · 身份与控制面
NSGW · 增值数据面
身份、登录与会话
注册、准入与配额协议
商业模型与 Entitlement
采购、计费与发票
服务运营与 SLA
备份与灾难恢复
信任、合规与数据权利

Last Updated: 2026/8/9 11:10:38

Previous Page产品闭环与功能实现
Next Page发行、升级与卸载

#NSIO Next · 实施蓝图与跨团队交付契约

本文把目标架构翻译成可并行执行的工程方案。它不重复产品定义,而是规定每项能力怎样拆仓库、按什么依赖顺序交付、在哪里联调以及何时算真正完成。

#1. 文档权威顺序

发生冲突时按以下顺序处理:

  1. 关键架构与安全不变量;
  2. 产品能力目录与实现闭环;
  3. 产品闭环与用户可见行为;
  4. 身份、注册、商业、控制资源生命周期、数据面协议和共享契约专项文档;
  5. 发行生命周期、服务运营、采购计费、备份恢复和信任合规;
  6. 各组件实现规格;
  7. 实现任务、代码注释和测试。

下层不得通过实现便利改变上层语义。发现冲突时先修文档并完成复审,再改代码。

#2. 一个功能怎样才算闭环

每个功能必须同时交付以下十五项,缺一项都保持 incomplete:

#交付项必须回答
1用户入口谁从哪里发起,默认值是什么
2权威对象哪个服务保存最终事实与 revision
3命令/API输入、幂等、并发和权限怎样校验
4Policy谁能做、默认允许还是拒绝
5ProjectionNSD 如何编译最小目标配置
6Runtimens/NSGW 如何原子应用和恢复
7UI 状态pending、ready、degraded、denied、unknown 怎样显示
8失败恢复重试、回滚、保留缓存还是 fail-closed
9撤销谁能撤销,多久收敛,离线节点怎么办
10审计/通知哪些事件记录,谁需要知道
11Entitlement免费、计量、配额或托管能力边界
12验收正向、反向注入、跨平台和真机证据
13发行生命周期怎样安装、升级、回滚、卸载和托管
14运营连续性SLI/SLO、状态页、支持、备份和恢复责任
15数据与商业闭环采购/计费影响、保留、导出、删除与合规证据

团队不能以“API 已返回”“页面已画好”或“数据库已建表”作为完成功能的依据。

产品能力目录与实现闭环定义产品语义,功能闭环总账记录每项能力在 Authority/API/Projection/Credential/Data Plane/Failure/Gate 六个位置的实现与证据状态。每个 Slice 开工前必须同时引用两份总账;发现缺少对象、状态、失败、撤销或线协议时,先补权威文档再拆任务。

#3. 仓库与团队边界

仓库第一责任明确不负责
ns-shared-nextwire schema、ID、签名、错误、测试 fixture数据库、UI、平台网络
nsd-next权威对象、Identity、Policy、Projection、Audit、租户 API业务流量、节点私钥
ns-nextagent、TUN/WG、DNS/Proxy、Service、Route、Gateway 客户端、CLI/FFI租户权限创作、计费判断
nsc-app-nextNS App 桌面/移动交互与系统集成ACL/route/supports_scope 算法
nsgw-nextRelay、Ingress、Egress、Exit 的隔离数据面账号目录、套餐 SKU、全局策略编译
admin-next平台运营、部署、计费和基础设施租户日常 Network/Grant 操作
product-docs-next最终用户与管理员操作手册架构决策来源
qa-next跨仓库环境、真机矩阵、发布证据用 mock 结果替代真机结论

#4. 基础依赖图

Identifiers + error envelope
        ↓
Identity + Enrollment + Entitlement
        ↓
Device + Network + Membership + signed event channel
        ↓
Grant compiler + snapshot/delta projection
        ↓
Data-plane foundation: L3 candidate/roaming + Relay + ServiceFlow
        ↓
┌───────────────────┬───────────────────┐
│ L4 Service slice  │ L3 Node slice     │
└───────────────────┴───────────────────┘
        ↓                    ↓
Service directory       Routes / Subnet
        └──────────┬─────────┘
                   ↓
        NSGW Egress / Exit / Ingress
                   ↓
        Enterprise governance and scale
                   ↓
 Distribution + Operations + Billing + Recovery + Trust

身份、注册和共享事件信封是所有纵向功能的前置。Relay、ServiceFlow 和 L3 candidate/roaming 是独立的数据面 Foundation:先固定 claims、frame、handshake、关闭与 generation fixture,再允许 L3/L4 团队并行实现。L3 与 L4 在 Membership/Grant 和 Foundation 之后并行,不要求先把整套 L3 做完再做 Service,也不允许先做 UI 再补授权。

所有 schema、索引、分页、Compiler、projection 和 benchmark 任务必须使用产品能力目录 §19.5的首发目标/设计上限/已验证值三列。没有 benchmark 证据时保持 G8 阻塞,不能把设计上限写成已支持规模,也不能先按演示数据量实现后再补分片语义。

#5. 纵向切片清单

#Slice 0:空部署到首个管理员

用户旅程:部署 NSD → CLI bootstrap 首个管理员 → 打开登录页 → 创建/获得 Personal Organization 和默认 Network。

交付:Identity schema、Session、Organization/Network 创建事务、默认 Grant 模板、审计、SMTP 未配置时的 bootstrap 路径。

退出条件:空数据库只通过公开流程达到可注册 Device 的状态;重放 bootstrap、并发创建和部分失败不会产生两个 owner 或半个 Network。

#Slice 1:首台人类设备加入

用户旅程:安装 App/CLI → 系统浏览器登录 → 选择空间/Network → Device Key 绑定 → Device/Membership committed → 本机进入已连接状态。

交付:PKCE、Enrollment Request/Grant、Staging Key、Node IP、netmap snapshot、Client 状态和取消/恢复。

退出条件:关闭浏览器、App 崩溃、Grant 过期、管理员拒绝、配额满和 NSD 读取失败都有准确可恢复结果。

#Slice 2:第二台设备 L3 互访

用户旅程:第二台设备加入 → 目录看到两台设备 → 通过 Node DNS Ping/SSH → 直连失败自动基础 Relay。

交付:TUN、固定 1280 MTU、Node IP/DNS、EndpointCandidate、authenticated probe、roaming/key rotation、WG session、Node Grant、双端 enforcement、RelayRouteLease/attach/frame 和路径状态。

退出条件:无 Grant 时不进入 peer map且伪造包被目标端拒绝;LAN/NAT/UDP blocked 按路径阶梯工作;Relay 不获得稳定 Membership/Node/WG 身份,直连/Relay/WSS 切换不改变 TUN MTU 和 Node IP。

#Slice 3:发布和访问 L4 Service

用户旅程:任一 ns 节点从 App/CLI 声明本地或远程后端 → 本地确认/企业审批 → NSD 分配 Service ID/VIP/name → 被授权用户从目录打开。

交付:Local Manifest、declaration、Endpoint health、Service Grant、consumer/publisher role projection、ServiceFlowCredential、OPEN/ACCEPT/REJECT、TCP half-close/RST、UDP idle、generation、Service DNS/VIP、Proxy/TUN 两条消费路径和撤销。

退出条件:L3 横向关闭时 Service 仍可访问;publisher 不获得完整用户目录且不回查 NSD;半关闭/重置/UDP 超时两端语义一致;停 Service 不删除 Node;读取故障不显示空目录。

#Slice 4:团队与 ACL 管理

用户旅程:邀请成员 → 分组 → 用向导创建 Node/Service Grant → 预览影响 → 发布 → 撤销。

交付:Membership、Group、GrantSet/Rule、模拟器、compiler、revision、approval、审计和状态解释。

退出条件:管理员能回答“谁可从什么设备访问哪个资源的什么动作”;任何 allow 扩大反向注入都会让测试失败。

#Slice 5:Subnet Router 与 App Connector

用户旅程:节点声明 CIDR/域名 → 管理员审批 → 用户获得 Route Grant → 本地装路由/split DNS → 冲突或健康失败准确显示。

交付:Route advertisement、ownership、冲突规划、DNS origin resolver、防解析环、漂移恢复和撤销租约。

退出条件:未批准不装;外部 VPN 占用时不抢;Route 撤销或过期后在 SLA 内移除。

#Slice 6:基础 Relay

用户旅程:直连失败时自动中继,无需购买 NSGW 商品。

交付:RelayRouteLease、opaque attach/session、固定 frame、区域候选、端到端密文转发、公平使用、容量状态和 WSS fallback。

退出条件:Relay 无稳定节点身份、Service 目录和解密能力;QUIC/WSS 使用同一 frame/lease;UDP 封锁环境仍可用;容量不足不伪装成 ACL 拒绝。

#Slice 7:Gateway Egress 与 Exit

用户旅程:管理员授权具体 Gateway/Profile → Service 或用户看到授权候选 → 选择/启用 → runtime 最终校验 → 状态和撤销闭环。

交付:Gateway report、profile、candidate projection、selection、EgressOriginLease/ExitTunnelLease、双端 scope projection、capture readiness、IPv4/IPv6 事实状态、路由所有权、fail-closed 和明确关闭动作。

退出条件:候选用于交互但不替代最终六项校验;Exit 已捕获后失败不能自动本地直出;Egress 只影响目标 Service。

#Slice 8:Public Ingress

用户旅程:管理员从已有 Service 创建入口 → 选择域名/证书/区域/保护 → 预览 → 启用 → 观察健康与访问日志 → 独立停用。

复用基线:现有 NSIO Public Application、六种 Edge 认证 handler/verifier、Envoy/NSGW listener、证书/WAF 和 fail-closed 测试优先适配,不把方法认证重新实现一遍。

Next 交付:PublicApplication/EdgeAuthPolicy/IngressBinding v1 object、签名 target-minimal policy projection、EdgeSessionCredential 与统一撤销索引、NSGW lease、IngressBackendCredential、ServiceFlow backend binding、DNS ownership、审计和配额。旧数据库和线格式不进入 Next runtime。

退出条件:现有六种方法的正常/过期/重放/轮换/fail-closed 用例在 Next fixture 下继续成立;入口不能指向未授权任意后端;停入口不删除内部 Service;NSGW 不获得额外内网访问;按应用/策略/Binding/身份/凭据撤销能终止对应长会话;NSGW 后端建流不回查 NSD。

#Slice 9:企业身份和生命周期

用户旅程:配置 OIDC/SCIM → 员工登录 → Device 审批/姿态 → 离职 → 会话、Membership、Grant 和 peer lease 在 SLA 内收敛,公司 Device 保留。

交付:Federation Binding、issuer/subject、amr/acr、step-up、SCIM transaction、Webhook/SIEM、审计保留和 Legal Hold。

退出条件:logout、解绑身份、SCIM 停用和 Device revoke 四条路径结果不同且有自动化测试。

#Slice 10:签名发行、升级与卸载

用户旅程:安装 App/CLI → 复用唯一 daemon → stable 灰度更新 → 版本不兼容时获得明确升级动作 → 卸载并恢复网络。

交付:artifact provenance/signing、release manifest、通道/cohort、local API handshake、Runtime Owner Binding、single-active-OS-user、MDM/package-manager 路径、升级 journal、cleanup helper、商店审核清单。

退出条件:五平台安装/升级/中断恢复/卸载真机通过,外部 VPN 路由不被删除,App/CLI 不产生第二 runtime;桌面多 OS 用户切换不泄露租户状态、不允许非 owner 控制,也不复用原 owner 隧道;冷启动时 user-owned 不建网、managed-device 按策略无人值守恢复。

#Slice 11:托管运营、状态页与 SLA

用户旅程:PoP/控制面故障 → Client 显示准确能力状态 → 公开状态页持续通报 → 恢复 → 客户看到事故和 SLA 证据。

交付:分服务 SLI/SLO、合成探针、error budget、incident workflow、状态订阅、支持分级、隐私遥测和激活漏斗。

退出条件:SEV-1/region 故障演练贯通告警、状态页、客户端、支持和 SLA bucket,不把故障伪装成无授权。

#Slice 12:购买、开票与 Entitlement 激活

用户旅程:免费使用 → 在线升级或接受 Quote → 付款/授信 → 发票 → entitlement revision 生效 → 增购/降档/取消。

交付:Catalog、Billing Account、Quote/Order/Subscription、Invoice/Payment/Refund、税务资料、dunning、对账和签发 outbox。

退出条件:重复 webhook 不重复扣款,支付故障不切断安全数据面,订单可追到唯一 effective entitlement。

#Slice 13:备份与灾难恢复

用户旅程:Hosted region 或 Self-hosted 主机丢失 → 选择有效备份 → 影响预览 → 安全恢复 → 节点重新连接且旧授权不复活。

交付:PITR/snapshot、备份 manifest/verify、restore plan/epoch、key recovery、deletion tombstone、演练和 RPO/RTO dashboard。

退出条件:从空环境恢复完整控制闭环,不需要节点私钥,真实 RPO/RTO 有证据。

#Slice 14:数据权利与合规运营

用户旅程:用户/组织导出 → 注销/删除 → Legal Hold 或法定保留分流 → 各系统完成 → 获取完成报告。

交付:数据清单、retention、export/delete orchestrator、Hold、Trust Center、claim registry、子处理者和认证证据库。

退出条件:注销、组织删除、SCIM、Device revoke、Subscription cancel 不互相代替;恢复后删除对象不复活。

#6. 功能到组件的交付矩阵

A 表示权威,E 表示执行,U 表示用户交互,O 表示可观测/运营。

功能SharedNSDnsClientNSGWQA
登录/会话schemaADevice proofU-E2E
EnrollmentschemaAEU-state/fault
L3 Nodenetmap/grantAEURelay Enative/network
L4 Serviceservice/grantApublisher+consumer EUoptional EL3-off/L4-on
Grant/ACLrule/projectionAEU/adminE only scopednegative
Subnet/App RouterouteAEU/adminoptionalconflict
RelayleaseAclient EstatusENAT matrix
Gateway Egressgateway/serviceAEU/adminEtarget-only
Gateway Exitprofile/selectionAEUEleak/fail-close
Public IngressingressAbackend Eadmin UEexposure
Entitlementbundle/leaseAdisplay onlyU/adminE leasedowngrade
Audit/Supportevent/errorAtelemetryU/exporttelemetrycorrelation
Distribution lifecyclemanifest/schemaupdate policydaemon slots/cleanup EU/store/MDMimage rolloutinstall/upgrade/uninstall
Hosted operations/SLAstatus schemaSLI sourceruntime evidenceU/status/supportSLI sourceincident/game day
Billing/procuremententitlement schemaeffective projectiondisplay onlyU/adminlease displaypayment/idempotency
Backup/restorebackup manifestA/restore Elocal journalU/adminconfig/outbox restoreempty-site restore
Data rights/complianceexport/delete schemaA/orchestratedevice cleanupU/adminscoped erasehold/delete/restore

#7. 每个仓库的首批工程包

#ns-shared-next

  1. ID newtypes 与 tenant scope;
  2. error envelope 与稳定 code registry;
  3. command/event envelope 与 Runtime Protocol v1;
  4. Enrollment、Netmap、Grant、Service、Route、Gateway schema;
  5. EndpointCandidate、PeerPathLease、RelayRouteLease/frame、ServiceFlowCredential/handshake、RouteAccessCredential、EgressOriginLease、ExitTunnelLease、IngressBackendCredential 的真实 serializer fixture;
  6. canonical serialization、signature 和 schema fixtures;
  7. capability manifest;
  8. Next 内 additive/未知字段与反向安全测试工具;
  9. release/backup/export manifest 与 schema fixtures。

#nsd-next

  1. storage/transaction/outbox 基线;
  2. Identity/Organization/Network;
  3. Enrollment 与 quota admission;
  4. Device/Membership 与地址分配;
  5. Grant policy authoring/compiler;
  6. Service consumer/publisher、Route client/connector、Gateway controllers;
  7. Relay/Service/Route/Exit credential issuer;
  8. signed projection delivery;
  9. audit/notification/entitlement;
  10. tenant console API;
  11. export/delete orchestration、backup/restore hooks 与 service SLI。

#ns-next

  1. secure local state 与 daemon lifecycle;
  2. enrollment/control client;
  3. snapshot store 与 revision recovery;
  4. TUN/WG、candidate/roaming/key rotation 与 Relay client;
  5. DNS/Proxy、ServiceFlow consumer/publisher runtime;
  6. RouteFlow/Gateway projection;
  7. local IPC/CLI/FFI/status;
  8. diagnostics and platform recovery。
  9. signed update、single-instance arbitration 与 uninstall cleanup。

#nsc-app-next

  1. system-browser login;
  2. onboarding/enrollment;
  3. connection and evidence-based status;
  4. node/service directory;
  5. publish-service flow;
  6. settings/exit/diagnostics;
  7. desktop/mobile platform privileges;
  8. accessibility/localization/telemetry consent。
  9. update/store/MDM UX、billing、data export/delete 和 status/support surfaces。

#nsgw-next

  1. node identity and capability lease;
  2. tenant-isolated config runtime;
  3. basic Relay attach/frame/session runtime;
  4. managed Relay/WSS;
  5. Egress ServiceFlow publisher;
  6. ExitTunnelLease/tunnel/scope runtime;
  7. Ingress/cert/WAF/IngressBackendCredential;
  8. health/capacity/metering/audit。
  9. release rollout、SLI、incident drain 与 config/outbox recovery。

#8. 集成环境

环境用途必需依赖
contractschema/serialization/signature无网络、确定性 fixture
component单仓库行为fake clock、fault injection
local stackNSD + 2 ns + optional NSGW临时 PKI、SQLite
integration多租户、PostgreSQL、Relay容器/VM、真实 DNS
native lab平台路由和 VPN 共存Win/macOS/Linux/iOS/Android
staging云托管产品旅程真实 OIDC、SMTP、域名、证书
release lab安装/更新/回滚/卸载签名 artifacts、MDM/store test tracks、五平台真机
recovery labHosted/Self-hosted 空环境恢复隔离 KMS、备份副本、禁止外发副作用

测试数据按 Organization 隔离,禁止复用生产身份或密钥。每次发布产出 component version、schema ranges、commit、测试矩阵和已知限制。

#9. 合并门

跨仓库功能按以下顺序合并:

  1. 共享 schema + schema tests;
  2. NSD 生产/消费契约与 fixture;
  3. runtime/NSGW 消费和 fault tests;
  4. Client 状态与交互;
  5. local-stack E2E;
  6. 真机证据;
  7. 产品文档与发布记录。
  8. 签名发行、运营 runbook、恢复证据和数据生命周期门。

生产者不得先发送消费者尚不能安全忽略的必需字段。可选字段可以先发,但 UI 必须有明确回退。任何临时字符串嗅探、复制授权算法或放宽 fail-closed 的兼容补丁都不能进入 main。

#10. Definition of Done

一个纵向切片只有同时满足以下条件才可发布:

  • 产品文案只陈述 runtime/authority 能证明的事实;
  • API、事件、错误和审计 schema 已发布;
  • 权威写入具有幂等、revision 和并发测试;
  • 目标投影最小化且跨租户/Network 反向测试通过;
  • runtime 原子应用、重启恢复、过期和撤销行为通过;
  • Client 的空、等待、拒绝、故障、降级和成功状态齐全;
  • 权限放宽、读取故障折叠为空、自动安全降级的反向注入测试会失败;
  • 至少一个真实端到端旅程和所需平台真机证据已记录;
  • 操作手册、诊断和支持 request ID 可用;
  • Entitlement 不会删除基础安全能力或破坏已有合法资源。
  • 安装、升级、版本不兼容、回滚和卸载路径已在对应平台验证;
  • Hosted 能力具备 service-class SLI、状态页、事故 owner 和容量门;
  • 付费能力可从 Order 追到 Effective Entitlement,支付故障不改写安全事实;
  • Hosted/Self-hosted 恢复达到记录的 RPO/RTO,恢复后撤销/删除不复活;
  • 导出、删除、Legal Hold、保留与对外合规声明都有 owner 和证据。

这份清单是各模块共同的完成标准,不允许由某个团队单独宣布豁免。