github XTLS/Xray-core v1.1.2
Xray-core v1.1.2

latest releases: v1.8.16, v1.8.15, v1.8.13...
3 years ago

Topic: Linux Kernel Splice(适用于 Android、路由器等 Linux 环境)

What's Splice

Splice 是 Linux Kernel 提供的函数,系统内核直接转发 TCP,不再经过 Xray 的内存,大大减少了数据拷贝、CPU 上下文切换的次数。XTLS Direct Mode 读取数据时不需多余处理,此前引入了默认的全平台 ReadV 增强,性能已与 VLESS 裸奔持平。而现在,你可以选择性开启 Splice 增强:经测试,性能达到了 VLESS 裸奔的两倍。你没看错,比现在的裸奔更省资源。

Scene Limits

  1. Linux 环境,入站为 任意门、Socks、HTTP 等纯净的 TCP 连接。
  2. 出站为 VLESS XTLS。Trojan XTLS、裸奔等尚未增加此项优化。

Usage

  1. 客户端 flow 改为 xtls-rprx-splice。若不需拦截 QUIC,填写 xtls-rprx-splice-udp443
  2. 服务端 flow 保持 Direct。以后服务端也会有 Splice 优化。

More

  1. 若你开了流量统计,Splice 转发完一整条 TCP 才会反馈数据量。
  2. 其实应用 Splice 后,性能已与软件架构无关,只取决于你的机器和系统内核的表现,非常纯粹。

Xray-core 1k stars 啦,感谢各位的支持!文档 coming soon

Performance

Other Changes

Chores

  • Regenerate .pb.go files
  • Use Go 1.15.6
  • Upgrade dependencies
  • Update geoip.dat, geosite.dat

Notices

  • 新增 Xray-android-arm64-v8a.zip,建议 Magisk 和 Termux 优先用此版本。
  • 可执行文件均 Reproducible,相同版本 Go 交叉编译即可验证。

Don't miss a new Xray-core release

NewReleases is sending notifications on new releases.