术语表
本页定义指南其余部分所依赖的术语,按英文原词的字母顺序排列。每个词条只有一两句话,并链接到完整讲解该主题的页面。有些词在 etemenanki-app 和 katana 中的含义略有不同,遇到这种情况词条会专门说明。
每个词条的标题是中文页面使用的译名,正文中括号内给出英文原词。如果译名本身就是英文原词,例如 generation(一代实例),中文页面保留英文,并在首次出现时附上括号内的释义。标注“保留英文”的名称一律不翻译。完整对照表见本页末尾的中文术语。
术语之间的关系
Section titled “术语之间的关系”大多数术语都对应客户端连接穿过代理时所经过的某个阶段。下图中标注 katana 的三个阶段只存在于 katana;在 etemenanki-app 中,流从入站直接进入路由器,再从路由器直接到达出站。
flowchart LR C["客户端"] --> L["监听器与传输层"] L --> I["入站:协议核心"] I --> F["流(可能经过嗅探)"] F --> A["katana:准入"] A --> R["路由器:规则、地理数据"] R --> AU["katana:审计规则"] AU --> M["katana:计量器"] M --> O["出站或负载均衡器"] O --> D["目标地址"]
出站的地址族(address family)由 address_family 设置,决定它解析域名时可以使用哪些 IP 版本,以及按什么顺序尝试:auto(默认)、ipv4_only、ipv6_only、prefer_ipv4 或 prefer_ipv6。对 freedom 而言它作用于每个目标地址,对 wireguard 作用于隧道内的目标地址,对代理协议出站则作用于其 server 域名。参见 address_family。
准入(admission)是 katana 在每个流被路由之前所做的检查:确认该流的用户仍在节点当前的用户列表中。已被面板移除的用户会在这里被拒绝;通过准入的流会拿到该用户的租约和流量计数器。参见 katana 的工作方式。
审计规则(audit rule)是 katana 用来匹配每个流所请求主机名的正则表达式。一旦匹配,该流即被拒绝,并为该用户记录一次命中。规则来自面板和本地的 rule_list_path 文件。命中面板自身规则的记录会上报给 SSPanel,由它保存检测日志;命中本地规则的记录,以及在 Xboard 或 V2board 上的所有命中,都不会上报。参见目标审计。
背压(backpressure)是接收方较慢时让发送方随之放慢的机制。每连接的运行时使用固定大小的缓冲区:当连接的一端不接收数据时,它就停止从另一端读取,于是发送方只能等待,而不是由代理不断缓存越来越多的数据。WireGuard 出站共享隧道中的每个流也是如此:隧道为每个流只排队有限的数据量,因此某个流的目标停止读取时,只有该流自己的发送方需要等待,隧道中的其他流照常传输。开发者指南介绍了这一机制。
负载均衡器(balancer)即 etemenanki-app 中的 [[balancer]],它把多个出站归到同一个 tag 下,凡是能用出站 tag 的地方都可以用这个 tag。TCP 连接探测会检查每个成员,默认每 30 秒一次;failover 选择第一个健康的成员,round_robin 轮流使用健康的成员,所有成员都不可用时使用第一个成员。katana 没有负载均衡器。参见负载均衡器。
blackhole 与 block
Section titled “blackhole 与 block”blackhole(也可写作 block)是丢弃流量的出站,通常用作屏蔽规则的目标。两个程序对 TCP 的处理不同:etemenanki-app 先向客户端返回成功,然后不发送任何数据就结束该流;katana 则在拨号之前就拒绝该流。两者都会丢弃 UDP 数据包且不作应答。参见 freedom 与 blackhole 和 katana 路由。
承载连接(carrier connection)是承载一个 mux.cool 会话的那条客户端连接。它自身的目标地址 v1.mux.cool:0 只是一个标记,从不会被拨号;关闭承载连接会结束其上的所有子流。参见 Mux 和 XUDP。
Circuit
Section titled “Circuit”circuit(保留英文)是 Hysteria 2 QUIC 连接内部的一条被代理的 TCP 流或 UDP 关联。客户端在每条 QUIC 连接上只认证一次,之后在其上打开 circuit;max_circuits 限制每个监听器上的 circuit 数量。参见连接与 circuit 上限。
codec(保留英文)是代理协议的客户端一半:它向上游服务器写出握手,封装发出的数据,并解开返回的数据。socks、http、shadowsocks、trojan、vless 和 vmess 出站都是运行在传输层之上的 codec。参见开发者指南。
配置检查(configuration check),即 --test,会加载并构建配置,但不绑定任何端口,也不联系面板,然后输出 Configuration OK.(etemenanki-app)或 Configuration OK(katana),或者输出发现的第一个错误。只在绑定时才会出现的问题,例如端口已被占用,不会被检查出来。参见命令行。
Connector
Section titled “Connector”connector(连接器)是协议核心需要为某个流建立出站连接时所调用的组件。在 etemenanki-app 中,connector 对流进行路由,并让选中的出站去拨号;在 katana 中,它还会对用户做准入、应用审计规则,并用计量器包裹该连接。参见开发者指南。
协议核心(core,protocol core)是以 sans-I/O 状态机形式编写的协议服务端一半:它接收客户端的字节,并以“打开这个目标地址”“转发这些字节”或“关闭”之类的效果作为回应,自己从不操作 socket。大多数入站协议都是协议核心;SOCKS 入站是例外,它有自己的驱动。参见开发者指南。
custom_config
Section titled “custom_config”custom_config(保留英文)是 SSPanel 节点的一个 JSON 字段,katana 从中读取节点的端口、传输层、TLS 设置及相关选项。当面板报告的版本为 2021.11 或更高时,katana 读取该字段;设置了 disable_custom_config = true 或面板版本较旧时,它改为解析旧式的 server 字符串;而较新的面板若发送空的 custom_config,则视为错误。参见 SSPanel。
数据报(datagram)即一个 UDP 数据包。被代理时,每个数据报都携带自己的目标地址,因此两个程序都按数据包逐个路由 UDP,而不是每个关联只路由一次。参见 UDP 如何到达出站。
欠额(debt)是令牌桶的负余额。katana 对每次传输都全额扣费,即使传输量超过桶的容量也是如此;该用户随后的传输要等到补充的令牌还清欠额后才能进行,因此无论数据块多大,平均速率都保持不变。参见以欠额代替等待令牌。
默认路由(default route)是没有任何规则匹配时流所使用的出站。在 etemenanki-app 中它是 [route].default,未设置 default 时则是文件中的第一个 [[outbound]];在 katana 中它是 [node.route].default,默认值为 direct。参见 tag 与默认路由。
拨号器(dialer)负责打开主机的出站 TCP 连接和 UDP socket。TCP 拨号器会依次尝试目标的各个地址,每次尝试最多等待 10 秒,并保留第一个成功建立的连接。参见开发者指南。
DNS 解析器
Section titled “DNS 解析器”DNS 解析器(DNS resolver)为出站把域名解析为地址。[dns] 选择后端:system(主机解析器,默认)、udp、tls(DNS over TLS)或 https(DNS over HTTPS),解析结果会被缓存。etemenanki-app 为每个 generation 构建一个解析器;katana 的所有节点共享一个解析器。参见 DNS。
ETag(保留英文)是面板随响应发送的版本标记。katana 会在 If-None-Match 中回传上一次收到的 ETag;如果面板返回 304 Not Modified,就说明没有变化,katana 继续使用已有的数据。参见 ETag。
Fail closed
Section titled “Fail closed”fail closed(出错即拒绝)指在出现错误或未知情况时直接拒绝,而不是退回宽松的默认值。两个程序都会拒绝未知的键,以及 protocol、network、security 等设置的未知取值,因此一个拼写错误会让配置无法加载,而不是比如悄悄关闭 TLS;katana 还会拒绝要求它未实现功能的节点。参见严格是有意为之。
流(flow)是一次被代理的请求,也是路由、准入和计量的基本单位:一个 TCP 请求、mux.cool 中的一个子流、一个 UDP 关联或一条 Hysteria 2 流。它携带目标地址、已认证的用户、客户端地址以及嗅探到的域名(如有)。参见路由。
freedom 与 direct
Section titled “freedom 与 direct”freedom(也可写作 direct)是从本机直接连接到流的目标地址的出站,它使用 DNS 解析器解析域名。在 katana 中,这两个名称都内置于出站池。参见 freedom 与 blackhole。
Generation
Section titled “Generation”generation(一代实例)是 etemenanki-app 为某一版配置所运行的全部内容:监听器及其 accept 循环、路由器、负载均衡器探测和 DNS 解析器。重载时先构建并检查新的 generation,然后停止旧的 generation(这会结束其所有连接),再启动新的。katana 不会以这种方式整体替换状态;它一次只重建一个节点的监听器,而且只在变更确实需要时才重建。参见热重载。
地理数据(geodata)指 v2ray 格式的 geoip.dat 和 geosite.dat 文件。geoip 代码匹配列表中的目标 IP 地址,!code 匹配列表之外的地址;geosite 代码匹配一组域名,code@attr 只保留带有该属性的条目。代码不区分大小写,文件路径写在 [route] 或 [node.route] 中,并且只加载被引用的代码。参见路由。
握手(handshake)是在任何有效载荷传输之前建立连接的交互过程。基于 TCP 的入站有两层握手:传输层握手(TLS、WebSocket 升级、gRPC 的 HTTP/2 前言)和协议握手(客户端在其中完成认证并告知目标地址),每一层都必须在 10 秒内完成。参见上限。
热重载(hot reload)在不重启进程的情况下应用修改后的配置文件;两个程序都会监视配置文件所在的目录。etemenanki-app 在文件字节发生变化时替换整个 generation,这会断开所有连接;katana 则只应用差异部分,因此很多修改不会中断连接。无法解析或构建的文件会被记录到日志,当前运行的配置保持不变。在 etemenanki-app 中,新 generation 绑定端口时旧 generation 已经停止,因此此时无法绑定端口的入站会被记录到日志并保持停止,其他入站照常服务。参见热重载和 katana 热重载。
入站(inbound)负责接受客户端连接,由一个监听器、一种协议(socks、http、shadowsocks、trojan、vless、vmess、hysteria2 或 tun)以及(部分协议所需的)传输层组成。在 etemenanki-app 中,每个 [[inbound]] 都由你自己编写;在 katana 中,由面板对节点的描述充当这一角色。参见入站。
租约(lease)是 katana 为每个用户持有的句柄,用于结束该用户的连接。当 katana 在一次刷新中移除某个用户,或者该用户的凭据转移到另一个用户 ID 时,它会取消该租约,该用户所有已打开的连接随之结束;保留下来的用户继续持有自己的租约,其连接在刷新后仍然存在。参见用户刷新保留什么。
遗留流量(leftover traffic)是为已离开节点用户列表的用户统计的字节,或者记在限速变更后被 katana 替换掉的计数器上的字节。katana 会保留这些字节,并在之后的周期中上报,按用户 ID 合并到同一行,因此不会丢失流量。参见用户离开、变更或回归。
监听器(listener)是入站用来接受连接的已绑定 socket:一个 TCP 端口、一个 Unix socket 路径,或者 Hysteria 2 的一个 UDP 端口。tun 入站没有监听器,因为它拥有的是一个网络设备;katana 为每个节点运行一个监听器。参见入站。
Masquerade
Section titled “Masquerade”masquerade(伪装响应)是 Hysteria 2 入站对所有不是有效认证的请求(包括凭据错误的请求)给出的固定 HTTP/3 响应。默认是一个简单的 404 page not found。参见伪装响应。
匹配条件(matcher)是路由规则中的一个条件键,例如 domain_suffix、cidr、port、geosite 或 inbound_tag。只要规则中任一匹配条件的任一条目匹配,该规则就匹配;无法要求两个条件同时成立。参见路由。
计量器(meter)是 katana 套在每条出站连接外面的包装层。它为流量计费统计用户的上传和下载字节,并用该用户的令牌桶控制其速率。参见限速如何执行。
mod_mu
Section titled “mod_mu”mod_mu(保留英文)是 SSPanel 的节点 API,位于 /mod_mu/ 下。设置 panel_type = "SSpanel" 时,katana 通过它获取节点信息、用户和审计规则,并提交流量和审计命中。参见 SSPanel。
mux.cool
Section titled “mux.cool”mux.cool(保留英文)是 Xray 的多路复用协议,在一条 VLESS、VMess 或 Trojan 连接上承载多个子流。入站会自动接受它,每条承载连接最多 256 个子流;出站从不发送 mux.cool。参见 Mux 和 XUDP。
节点(node)是面板中的一个代理服务器条目,由节点 ID 标识。katana 为配置文件中的每个 [[node]] 提供服务,每个节点都有自己的面板连接、监听器和路由表。配置文件设置节点类型,面板决定其端口、传输层、TLS 设置和用户(Hysteria 2 节点也可以改从 [node.hysteria] 获取端口)。无法启动的节点,例如因为面板不可达或端口仍被占用,会不断重试:首次失败后 katana 等待 1 秒,之后每次等待时间翻倍,最长 60 秒;如果 update_periodic 更短,则以它为上限。修改该节点的配置条目会立即触发重试。参见节点和节点启动失败时。
节点身份(node identity)是确定某个 [[node]] 条目所服务的面板节点的一组值:panel_type、api.host、api.node_id、api.key,以及在 NewV2board 和 V2board 上 katana 向面板请求的节点类型(enable_vless = true 的 V2ray、Vmess 或 Vless 节点为 vless,否则为小写的 node_type)。在配置文件中修改其中任何一个,都会用一个全新的节点替换原节点,而不是更新它。其他所有修改都会作用到运行中的节点,包括 api.timeout 等其余 [node.api] 配置项;修改 [node.api] 会为节点创建新的面板客户端。参见节点身份。
节点 tag
Section titled “节点 tag”节点 tag(node tag)是 katana 在部分日志行中用来称呼节点的名称,也用于区分各节点的审计规则和命中记录:由节点类型、监听地址和端口以下划线连接而成,例如 V2ray_0.0.0.0_443。由于其中包含端口,面板把节点改到其他端口时它也会随之变化。参见节点。
节点类型(node type),即 [node.api] 中的 node_type,告诉 katana 面板描述的是哪种节点:V2ray(VMess,或在 enable_vless = true 时为 VLESS)、Trojan、Shadowsocks 或 Hysteria2。比较时不区分大小写,并接受 vmess、vless、hysteria 和 hy2 作为别名;仅写 vless 并不会启用 VLESS。SSPanel 节点不能是 Shadowsocks。参见协议。
出站(outbound)是流离开代理的出口。freedom 直接连接,blackhole 丢弃流量,代理协议通过上游服务器中继,wireguard 经由 WireGuard 隧道发送;每个 [[outbound]] 都有一个供路由引用的 tag。参见出站,katana 提供的协议另见 katana 出站。
出站池(outbound pool)是每个 katana 节点都可以路由到的出站集合:内置的 direct、freedom、block 和 blackhole,加上每个顶层 [[outbound]]。所有节点共享同一个出站池,修改任何一个 [[outbound]] 都会重建出站池以及每个节点的监听器。参见 katana 出站。
面板(panel)是管理用户、套餐和节点的 Web 应用,例如 Xboard、V2board 或 SSPanel。katana 通过 UniProxy 或 mod_mu 向面板轮询节点设置和用户,并把流量上报给它。参见支持的面板。
许可(permit)是固定大小限额中的一个名额,在其所计数的对象存续期间一直被占用。流式入站(接受 TCP 或 Unix socket 连接的入站)允许 65,536 个活跃连接,每个连接从 accept 起一直持有许可直到关闭,同时允许 2,048 个仍处于握手阶段的连接;katana 监听器有同样的两项限制,另外还有 512 个预认证许可。Hysteria 2 和 TUN 入站有各自的限制。参见上限和连接护栏。
占位值(placeholder)是示例中明显虚构的值,例如 example.com、192.0.2.0/24 中的地址、UUID 11111111-2222-3333-4444-555555555555 或密码 replace-with-a-long-random-password。本指南选用的占位值都能通过解析器,这样 --test 就能检查文件的其余部分,但在正式投入使用之前,你必须替换每一个占位值。完整示例见配置文件和 katana 快速开始。
轮询周期(poll cycle)是 katana 针对单个节点的控制循环。每隔 update_periodic 秒(默认 60),节点从面板获取设置和用户,应用其中的变化,刷新审计规则,并上报流量和审计命中。对节点 [node.api] 配置项的修改,或对构建其监听器所用本地设置(例如 listen_ip、证书或路由)的修改,一旦被接受,就会立即运行一次周期,而不必等待定时器。参见轮询周期。
预共享密钥(pre-shared key)是通信双方事先都知道的密钥。Shadowsocks 2022 加密方式使用长度与该加密算法密钥长度一致(16 或 32 字节)的 base64 密钥,密钥过短会报错(可用 openssl rand -base64 32 生成,AES-128 加密方式则用 16)。WireGuard 出站可以额外设置可选的 preshared_key(在 katana 中为 pre_shared_key)。参见生成密钥。
速率限制(rate limiting)指把流量控制在固定速率。在本指南中,它是 katana 限速背后的机制:每个节点上为每个用户设一个令牌桶,由该用户在此节点上的所有流共享。参见限速。
REALITY 与 XTLS
Section titled “REALITY 与 XTLS”REALITY 和 XTLS(均保留英文)是两个程序都未实现的 Xray 功能:REALITY 握手,以及 Vision 等 XTLS flow 模式。etemenanki-app 没有与之对应的键;如果节点的面板设置启用了 REALITY 或设置了 XTLS flow,katana 会拒绝该节点。参见从 Xray 迁移。
中继(relay)是握手之后的阶段,代理在此阶段双向地在客户端和出站之间复制字节,直到连接结束。有效载荷只有从这一阶段开始才会到达目标地址;在此之前的都是握手、嗅探、路由和拨号。参见上限。
路由(routing)为每个流选择一个出站。规则(rule)按书写顺序检查,第一条匹配的规则生效;没有匹配任何规则的流使用默认路由。TCP 流在打开时路由一次,UDP 关联则按数据包逐个路由。参见路由和 katana 路由。
运行时(runtime)是以单个任务运行一条被代理连接的驱动。它读取客户端的传输层,把字节交给协议核心,执行协议核心返回的效果,并拥有协议核心打开的每条出站连接。参见开发者指南。
Salamander
Section titled “Salamander”Salamander(Salamander 混淆)是通过 obfs = "salamander" 启用的 Hysteria 2 混淆。每个 QUIC 数据包都与一个由 obfs_password 和每包随机盐派生出的密钥流做异或,使流量看起来不再像 QUIC;它隐藏了协议特征,但并不提供加密。参见混淆(Salamander)。
Sans-I/O
Section titled “Sans-I/O”sans-I/O(保留英文)描述不执行任何输入输出的协议代码:它消费字节并返回决策,而由独立的运行时负责 socket 和定时器。内核的协议核心和 codec 都以这种方式编写,因此每一个都可以在没有网络的情况下逐字节测试。参见开发者指南。
嗅探(sniffing)从以 IP 寻址的流的最初几个字节中读取域名:TLS ClientHello 中的 SNI,或 HTTP 请求的 Host 头。之后域名规则和 geosite 规则也会匹配这个域名,但流仍然拨号到原始地址。嗅探最多等待 300 ms、最多读取 4 KiB,默认开启。参见嗅探和 katana 嗅探。
限速(speed limit)是用户的带宽上限,单位为 Mbps,由面板为每个用户设置,在 SSPanel 上还可以为节点设置;katana 取其中较小的非零值,并按 1 Mbps = 125,000 字节/秒换算。[node.api].speed_limit 会覆盖该节点上所有来自面板的限速。参见限速。
stream 设置与传输层
Section titled “stream 设置与传输层”stream 设置(stream settings),即 [inbound.stream] 和 [outbound.stream] 表,用于选择协议所运行的传输层(transport):tcp、tls、ws(WebSocket)或 grpc,其中 security = "tls" 在 WebSocket 或 gRPC 之下加上 TLS。入站中只有 http、trojan、vless 和 vmess 接受传输层设置;katana 从面板获取传输层。参见传输层。
子流(sub-flow)是 mux.cool 承载连接中的一个流:一条 TCP 流,或者借助 XUDP 的一个 UDP 会话,各自有自己的目标地址。每个子流都单独进行路由和嗅探,在 katana 中还会单独审计和计量。参见 Mux 和 XUDP。
tag(保留英文)是入站、出站或负载均衡器的名称,供规则、default 和日志行使用。tag 按精确值比较,区分大小写;入站 tag 在所有入站中必须唯一,出站和负载均衡器共用同一组 tag。参见 tag 与默认路由。
令牌桶(token bucket)是 katana 的每用户速率限制器。它按用户的限速补充令牌,最多容纳该速率下一秒的量,并由该用户在该节点上的所有流双向共享;超过余额的传输会让令牌桶进入欠额。参见每个用户一个令牌桶。
流量计费(traffic accounting)是 katana 对每个用户上传和下载字节数的统计。计量器在出站一侧统计去掉入站协议封装之后的纯载荷,因此协议和传输层开销不计费,被拒绝的流也不产生任何费用。参见统计哪些字节。
流量上报(traffic reporting)在每个轮询周期把统计的字节数发送给面板,每个用户 ID 一行。上报成功时,katana 精确扣除已上报的量;上报失败时,它保留这些字节,并随下一次上报一起发送。参见流量上报。
TUN 入站(保留英文),即 protocol = "tun",会创建一个三层网络接口,并把主机路由进该接口的 TCP 连接和 UDP 数据包转换为流。它只存在于 etemenanki-app 中。参见 TUN。
UDP 关联
Section titled “UDP 关联”UDP 关联(UDP association)是某个客户端经由入站建立的 UDP 会话:SOCKS5 的 UDP ASSOCIATE、通过 VLESS、VMess 或 Trojan 发起的 UDP 请求、XUDP 子流,或 Hysteria 2 的 UDP 会话。它没有单一的目标地址,因此每个数据包都按自身的地址路由;一个关联会为它路由到的每个出站保留一条链路,同一时间最多 64 条。参见 UDP 如何到达出站。
UniProxy
Section titled “UniProxy”UniProxy(保留英文)是 Xboard 和 V2board 的节点 API,位于 /api/v1/server/UniProxy/ 下。设置 panel_type = "NewV2board" 或 "V2board" 时,katana 调用 config 获取节点设置,调用 user 获取用户,调用 push 上报流量。参见 Xboard 与 V2board。
Xray-core 与 XrayR
Section titled “Xray-core 与 XrayR”Xray-core 是 etemenanki-app 在协议和配置模型上所参照的 Go 代理,XrayR 是 katana 所仿照的 Go 面板节点 agent;这两个名称都保留英文。两个程序都不读取它们的配置文件(JSON 和 YAML 格式),而是都使用 TOML。参见从 Xray 迁移和从 XrayR 迁移。
XUDP(保留英文)是 mux.cool 的扩展,让 UDP 子流的每个数据包都携带目标地址,从而使一个子流可以与多个对端通信。入站接受 XUDP;XUDP 全局 ID 会被读取,但不会用于在新连接上恢复会话。参见 Mux 和 XUDP。
中文页面对下表中的每个术语都严格按表中译法翻译,保证同一概念始终只有一个名称。配置键、取值、命令行参数、类型名、文件路径、错误信息和日志行一律不翻译。
| English | 中文 | 说明 |
|---|---|---|
| address family | 地址族 | |
| admission | 准入 | |
| audit (rule) | 审计(规则) | |
| backpressure | 背压 | |
| balancer | 负载均衡器 | |
| cancellation | 取消 | |
| carrier connection | 承载连接 | |
| certificate, private key | 证书,私钥 | |
| circuit | circuit | 保留英文 |
| codec | codec | 保留英文 |
| configuration check | 配置检查 | |
| connector | connector(连接器) | 英文原词加释义 |
| core (protocol core) | 协议核心(core) | |
| datagram | 数据报 | |
| debt | 欠额 | |
| default route | 默认路由 | |
| dialer | 拨号器 | |
| DNS resolver | DNS 解析器 | |
| fail closed | fail closed(出错即拒绝) | 英文短语加释义 |
| flow | 流 | |
| generation | generation(一代实例) | 英文原词加释义 |
| geodata | 地理数据 | geoip 和 geosite 保留 |
| handshake | 握手 | |
| hot reload | 热重载 | |
| inbound / outbound | 入站 / 出站 | |
| invariant | 不变量 | |
| lease | 租约 | |
| leftover traffic | 遗留流量 | |
| listener | 监听器 | |
| masquerade | masquerade(伪装响应) | 英文原词加释义 |
| matcher | 匹配条件 | |
| meter | 计量器 | |
| node identity | 节点身份 | |
| node tag | 节点 tag | |
| node type | 节点类型 | |
| obfuscation | 混淆 | |
| outbound pool | 出站池 | |
| panel, node | 面板,节点 | |
| permit (semaphore) | 许可(permit) | |
| placeholder | 占位值 | |
| poll cycle | 轮询周期 | |
| pre-shared key | 预共享密钥 | |
| rate limiting | 速率限制 | |
| relay | 中继 | |
| routing, rule, matcher | 路由,规则,匹配条件 | |
| runtime | 运行时 | |
| sniffing | 嗅探 | |
| speed limit | 限速 | |
| sub-flow | 子流 | |
| tag | tag | 保留英文 |
| token bucket | 令牌桶 | |
| traffic accounting | 流量计费 | |
| traffic reporting | 流量上报 | |
| transport, stream settings | 传输层,stream 设置 | |
| UDP association | UDP 关联 | |
| user table | 用户表 |
以下名称始终保留英文:ETag、mod_mu、mux.cool、REALITY、Salamander、sans-I/O、SSPanel、TUN、UniProxy、V2board、Xboard、Xray-core、XrayR、XTLS 和 XUDP。