Skip to content

arknet v0.1.0

Choose a tag to compare

@nick2781 nick2781 released this 13 Oct 11:20
· 20 commits to main since this release
5aa9b21

English

arknet's first regular release is an independent C++20 header-only networking library.

  • TCP, native UDP, RUDP, WebSocket/WSS and HTTP/HTTPS with routing.
  • Optional TLS/mTLS, Standalone Asio and Boost.Asio backends.
  • RUDP with ARQ-only, fixed Reed-Solomon FEC and adaptive FEC policies; legacy ARQ interoperability with FEC disabled.
  • Reconnection, bounded send queues, timers, custom sessions and external io_context/strand execution.
  • HTTP request deadlines/cancellation and atomic lifecycle status queries.
  • Permanent doctest cases, standalone C++ benchmarks, bilingual Nimbus documentation and recorded local performance results.

Local Release + TLS validation passes 56/56 checks and 221 doctest cases on each backend, including installed consumers and 12 legacy RDP interoperability scenarios. Standalone Asio records 1,836,538 assertions; Boost.Asio records 1,799,675. Stress-loop iteration counts account for the difference. The attached validation archive records the source revision, machine and complete logs.

ThreadSanitizer lifecycle regressions and ARK integration also pass: ARK records 29 network cases with 829 assertions under both backends, ASan/UBSan and TSan. All 14 required checks pass in the protected release PR, including Linux/macOS/Windows, both backends, sanitizers, formatting and documentation.

Documentation · Performance reports

Cross-host capacity, production-duration endurance and ARK business acceptance remain deployment requirements. Cluster capacity of 100,000-200,000 PCU has not been measured. HTTP/2, HTTP/3, named pipes, Unix domain sockets and RPC remain planned features.

简体中文

arknet 首个正式发行版是独立的 C++20 header-only 网络库。

  • TCP、原生 UDP、RUDP、WebSocket/WSS,以及带路由的 HTTP/HTTPS。
  • 可选 TLS/mTLS,支持 Standalone Asio 和 Boost.Asio 两种后端。
  • RUDP 提供仅 ARQ、固定 Reed-Solomon FEC 和自适应 FEC 三种策略;关闭 FEC 时支持旧 ARQ 对端互通。
  • 自动重连、有上限的发送队列、定时器、自定义 Session,以及外部 io_context/strand 执行模型。
  • HTTP 请求截止时间与取消操作,以及使用原子状态的生命周期查询。
  • 正式 doctest 用例、可独立编译运行的 C++ 基准程序、双语 Nimbus 文档和本机性能报告。

本机 Release + TLS 验证中,两种后端各通过 56/56 项检查和 221 个 doctest 用例,包含安装后的消费者构建与 12 组旧 RDP 对端互通。Standalone Asio 通过 1,836,538 条断言,Boost.Asio 通过 1,799,675 条断言;差异来自压力循环的实际迭代量。验收附件保留源码版本、测试机器和完整日志。

TSan 生命周期回归与 ARK 集成检查也已通过。ARK 的两种后端、ASan/UBSan 与 TSan 均通过 29 个网络用例、829 条断言。发布 PR 的 14 项必需检查全部通过,覆盖 Linux/macOS/Windows、两种后端、sanitizer、格式与文档。

文档 · 性能报告

部署前仍需进行跨主机容量、生产时长耐久和 ARK 完整业务验收。集群 10 万至 20 万 PCU 尚未实测。HTTP/2、HTTP/3、named pipe、Unix domain socket 和 RPC 保留为计划功能。