关于实验性设置
lancex
这些选项的具体含义并不重要。请不要开启任何选项,因为它们都尚未经过测试。如果某个选项被证明足够稳定,它就会成为默认设置。
无限连接数
网络扩展的内存限制非常严格。对于 iOS 15 以下版本,限制为 15MB;iOS 15 及更高版本则提升到 50MB。如果 VPN 超出这个限制,系统会将其静默关闭。因此我们对连接数量做了限制。如果你开启此选项,该保护就会被关闭。
使用 “Network” 框架
新的 Network.framework API 提供了对与 URLSession 相同的高性能用户态网络栈的直接访问。但在测试中,我们无法对其内存占用进行细粒度控制,因此容易崩溃。
在 H2 上启用 Mux
HTTP/2 内置了多路复用,可以减少资源占用。但在测试中,启用它可能会降低传输速度。我们正在优化其性能,以便将其设为默认选项。
禁止网络探测
当网络发生变化时,我们本应收集更多关于当前环境的信息,但这个动作可能会中断当前连接。开启此选项可以缓解这种影响,但代价是会丢失一些底层网络信息。
使用第三方 TLS 方案
iOS 中默认的网络框架非常高效,但已经比较老旧。我们会先尝试使用它。当你启用此选项时,我们不会对其进行测试。
网络切换时粗暴处理
如果你开启此选项,当网络发生变化时,我们会关闭之前的所有连接。
在 WS host 中加入端口
在升级到 WebSocket 协议时,我们会使用 WebSocket 设置中的 host。但如果它没有使用默认端口,而你又忘了在设置中填写端口,那么能否正常运行就取决于你的服务器了。一旦你启用此选项,只要服务器没有使用默认端口,我们就总会在 host 头中加入端口。