第 2 节 · 分层总览
四层各自解决一种失效模式
分层的意义在于排障:同一段链路上出现的问题,只要定位到层,就能判断是该调参数、加纠错、换中继,还是换出口,而不是笼统地判定线路慢。
| 分层 | 职责 | 关键参数 | 典型数据 |
|---|---|---|---|
| 接入层 | 本地协议栈与首包握手 | 握手耗时、拥塞窗口 | 180~260 ms |
| 传输层 | 重传抑制与前向纠错 | 重传率、纠错冗余度 | ≤0.6% |
| 中继层 | 跳间路径与出口编排 | 跳数、跳间抖动 | 2~3 跳 / 9 ms |
| 出口层 | 就近与拥塞选点 | 可用出口数、高峰增幅 | ≤7% |
第 3 节 · 接入层
第一公里的参数差异,比出口选择更影响首包
同一个出口,在不同本地环境下表现差异可以达到 100 ms 以上。接入层要处理的正是这个差异,它不改线路,只改本地参数。
接入层负责本地协议栈参数:拥塞窗口初值、重传超时下限、并行连接数上限。这些参数在办公网、家宽与移动热点上的最优点完全不同,用一套固定值必然在多数环境里浪费掉一部分可用带宽。
实测数据:同一出口下打开自适应参数的终端,握手耗时落在 180~260 ms;关闭自适应后回到 320 ms 左右,两者相差 60~140 ms。这个差距在单次请求里不明显,但对需要并行发起 20 个以上连接的页面加载影响显著。
接入层不参与线路排序,对丢包率几乎没有影响,因此它的效果只体现在时延与首包速度上。这也是排查时最容易误判的一层:时延正常而首包慢,通常就要回到这一层检查。
握手耗时 180~260 ms
第 4 节 · 传输层
把等待重传改成提前补齐
跨境链路的丢包集中在 1%~3% 这个区间,逐包重传会把抖动放大 2 倍以上。传输层的做法是用前向纠错提前补齐,代价是少量额外带宽。
在丢包 1.8% 的公网条件下,逐包重传的抖动会被放大到 38 ms 上下,且重传率随拥塞加深而上升,形成正反馈。开启前向纠错后,接收端在少量包丢失时可以直接还原数据,不必等待重传请求往返。
同一条件下的实测结果:重传率从 2% 以上降到 0.6% 以内,抖动从 38 ms 收敛到 12 ms 区间,中位往返时延下降 40 ms 左右。代价是 3%~8% 的额外带宽开销,100 Mbps 档实测可用吞吐落在 90~95 Mbps。
这一层与出口选择互相独立:换出口不会自动改善重传,调纠错冗余也不会改变路径。两者叠加才解释为什么专线加速能把丢包压到 0.2%。
重传率 ≤0.6%
第 5 节 · 中继层
把一条长链路切成两三段短链路
长链路的问题不是距离,而是中途节点不可控。切成 2~3 段后,每一段都能在自己的拥塞曲线低点运行,且失效可以局部替换。
中继层把端到端连接拆成 2~3 跳,每跳之间单独探测、单独评分。统计上每增加 1 跳,中位往返时延上升约 9 ms;但在拥塞时段,多 1 跳反而比少 1 跳快 20 ms 以上,因为绕开了正在排队的节点。
跳间路径每分钟按五维评分重排 1 次,单条中继失效会在 3 秒探测周期内被发现,并由备份路径接管。这也是 99.92% 月度可用率的来源之一:故障被局部消化,不再传导成整条链路中断。
跳数并非越多越好。两跳配置的可用出口只有 2 条,三跳配置有 3 条以上,故障切换余量更大;两者在正常时段的时延差约 9 ms,是否值得取决于业务对中断的容忍度。
中继 2~3 跳,跳间 9 ms
第 6 节 · 出口层
就近与拥塞,两个条件同时成立才选点
出口层决定流量从哪落地。只看就近会踩上拥塞出口,只看拥塞会绕远;两个条件同时满足才作为候选,是这一层的核心约束。
出口候选按两个条件筛选:到目的地的时延处于该区域的低区间,且当前时段的出口队列未满。两个条件同时成立才进入排序,只有一个成立时作为备用保留,不参与主用竞争。
实测数据:晚高峰 20:00—23:00,专线加速路径时延增幅控制在 7% 以内;同期公网直连上浮 38%,普通代理上浮 22%。这个差距主要来自出口的拥塞感知与自动降权,而不是出口本身的带宽。
三跳配置下可用出口 3 条以上,两跳配置下降到 2 条。这是 A 档与 C 档在故障切换能力上最实际的差别:带宽上限差 5 倍,但出口余量的差别更影响连续可用性。
高峰增幅 ≤7%
第 7 节 · 分层失效表现
每一层坏掉时,症状长什么样
分层排查的价值在于症状可分辨。下面五条按层给出识别信号,每一条都能在探测记录里找到对应字段,不需要凭感觉判断。
- 接入层失效:握手耗时回到 320 ms 以上,路径时延与丢包正常,表现为首包慢、持续吞吐不受影响。
- 传输层失效:丢包 1.8% 时重传率升到 2% 以上,抖动由 12 ms 反弹至 38 ms 附近,中位时延上浮 40 ms。
- 中继层失效:某一段中继不可用,跳数被迫减少,可用出口从 3 条降到 1~2 条,切换次数在 1 小时内超过 3 次。
- 出口层失效:出口拥塞未被降权,高峰时延增幅由 7% 扩大到 20% 以上,丢包升至 1.2% 附近。
- 分层共同信号:探测记录里 12 条路径中同时有 3 条以上指标越界,说明问题不在单条路径,而在共用的某一层。
把症状与层对应起来之后,修复动作就明确了:调参数、加纠错、换中继、换出口四选一。同一套判据也用在智能选路页的阈值设定里。