yosebyte 提议为 Shoes 原生集成 Nowhere Protocol(NW3)

yosebyte 在 Shoes #205 中提议原生支持基于 TLS 1.3、QUIC 的 NW3 TCP/UDP 中继协议,涵盖 Vector/Portal、可选 Morph,并复用 Shoes 的配置、路由和连接管理;不移植 Nowhere 应用及其 Egress、限速、遥测等扩展。他说明独立规范采用 CC BY 4.0,可在不引入 Nowhere GPL-3.0 代码的情况下独立实现,并表示愿意贡献实现及长期维护互操作测试和兼容性。该项仍是征询接纳意向的提案。

作者原文

Hi @cfal,

I'm the maintainer of Nowhere. I'd like to propose adding native Nowhere Protocol (NW3) support to Shoes.

NW3 is an implementation-independent TCP/UDP relay protocol over TLS 1.3 and QUIC, featuring connection-bound authentication, lightweight Flow framing, QUIC DATAGRAM support, and optional Morph.

Specification: https://github.com/NodePassProject/Nowhere-Protocol

Proposed scope

  • Client and server: Implement the standard Vector and Portal roles.
  • Transport: Support TLS/QUIC and TCP/UDP, with incremental implementation where appropriate.
  • Morph: Optional transport masking, supported where practical.
  • Native integration: Reuse Shoes' existing configuration, routing, connection management, and resource handling.
  • Out of scope: The Nowhere-specific Egress extension, rate limiting, telemetry, CLI tools, and other application-level features.

The goal is a focused, independent implementation of the NW3 wire protocol, not a port of the Nowhere application.

Licensing and maintenance

The standalone specification is licensed under CC BY 4.0. Shoes can implement NW3 independently under its existing MIT license, without incorporating GPL-3.0 code from Nowhere.

If this fits Shoes' direction, I'm willing to contribute the implementation and maintain it long-term, including interoperability testing against Nowhere, bug fixes, and compatibility maintenance.

Would you be interested in accepting this protocol integration?