6. RAW 控制环 (The RAW Control Loop)
RAW 架构基于一个抽象 OODA loop, 用于控制恢复图的运行. 通用概念包括以下内容:
- Operational Plane 测量协议允许 OAM 观察恢复图沿途的部分或全部跳点, 以及端到端数据包递送, 这对应 "OODA" 中第一个 "O".
- DetNet Controller Plane 为 RAW Network Plane 建立主路径和保护路径. 定向功能报告链路统计等数据和信息, 供路由功能用于计算, 安装和维护恢复图. 路由功能也可以生成智能信息, 例如用于链路质量预测的训练模型, 该信息又可由定向功能使用, 这对应 "OODA" 中第二个 "O", 以影响 RAW OODA loop 中 PLR 的路径选择.
- PLR 在 DetNet Service sub-layer 运行并承载决策功能, 这对应 "OODA" 中的 "D". 决策功能确定恢复图内未来数据包将使用哪些 DetNet 路径.
- 服务保护动作由 PLR 通过 LL API 执行或触发, 以提高端到端传输可靠性. RAW 架构还涵盖嵌入实时用户流量 [RFC9378] 中的原位信令, 例如通过 OAM, 当决策由恢复图中位于 PLR 下游的节点执行时, 这对应 "OODA" 中的 "A".
整体 OODA loop 会优化冗余使用, 以在尽量少使用频谱和电池等受限资源的同时, 达到所需的可靠性和可用性 SLO.
6.1. 路由时间尺度与转发时间尺度
在 DetNet 中, Controller Plane Function (CPF) 处理路由计算和维护. 在 RAW 中, 路由操作与 RAW 控制环分离, 因此路由操作可以位于 Controller Plane, 而控制环本身发生在 Network Plane. 为实现 RAW 能力, 路由操作被扩展为生成环中定向功能所需的信息. 例如, 路由功能可以提出 DetNet 路径, 作为响应网络事件的反射动作使用, 或提供聚合历史, 供定向功能作出决策.
在无线网状网络中, 通往位于 Controller Plane 的路由功能的路径可能代价高且速度慢, 可能需要跨越整个网状网络再返回. 相对于无线电层中影响 Network Plane 转发操作的事件速度, 到达 Controller Plane 也可能很慢. 注意, 分布式路由协议也可能需要时间并消耗过多无线资源, 才能重新收敛到新的优化状态.
因此, 不期望 DetNet 路由功能感知并响应非常短暂的变化. 路由层级上的链路抽象预期使用统计指标, 这些指标聚合一条链路在较长时间内的行为, 并以灰度而不是数值来表示其属性, 例如不同于链路质量指示器这类数值, 也不同于 up/down 这类布尔值.
网络节点与路由功能之间的交互由定向功能处理. 该功能向路由功能报告, 并以消化后的形式把控制信息发送回 RAW 节点, 供转发控制环内部进行流量引导.
图 8 展示了一个 Network Plane 恢复图, 其中链路 P-Q 和 N-E 正在波动. 这种波动可能由短期干扰导致而呈瞬态, 也可能持续更长时间, 例如发送方和接收方之间存在障碍物或硬件故障. 为了把接收冗余维持在例如 2 左右, 如果整体延迟允许额外时延, RAW 可以在这些跳点上利用更高的 ARQ, 或者在入口 I 与出口 E 之间启用备用路径. 例如, RAW 可以启用保护路径 I ==> F ==> N ==> Q ==> M ==> R ==> E, 该路径绕开两个问题, 并相对于保护路径 I ==> A ==> B ==> C ==> D ==> E 提供一定程度的空间多样性.
+----------------+
| DetNet |
| Routing |
+----------------+
^
|
Slow
| Controller Plane
_-._-._-._-._-._-. | ._-._-._-._-._-._-._-._-._-._-._-._-
_-._-._-._-._-._-._-. | _-._-._-._-._-._-._-._-._-._-._-._-
| Network Plane
Expensive
|
__...--- | ----.._.
.( | )-._
( v ).
( A--------B---C----D )
_ - / \ / \ --._
( I---F--------N--***-- E -
-_ \ / / )
( P--***---Q----M---R .
_ )- ._
- <------ Fast -------> )
( -._ .-
(_.___.._____________.____.._ __-____)
*** = flapping at this time
图 8: 时间尺度
在无线场景中, 影响转发决策的变化可能频繁发生, 且通常持续时间很短. 一个示例是移动物体在发射器和接收器之间移动, 使视距传输中断数秒. 另一个示例是雷达使用 ISM 频段测量水池深度, 并在极短时间内干扰某个特定信道.
因此, 有必要分离路由的长期计算和转发的短期决策. 在该模型中, 路由操作计算一个恢复图, 该恢复图允许沿所谓保护路径存在多个 Unequal-Cost Multipath (UCMP) 转发方案, 并把短期决策留给 Network Plane: 对即将到来的哪些数据包和流, 应使用这些可能性中的哪一种.
在 Traffic Engineering (TE) 上下文中, 当检测到主路径故障时可使用备用路径, 例如在 Multiprotocol Label Switching - Transport Profile (MPLS-TP) 中使用 OAM, 或在一组 Software-Defined Wide Area Network (SD-WAN) 隧道上使用 BFD.
RAW 形式化了一个转发时间尺度, 它可能比 Controller Plane 路由时间尺度短一个或多个数量级, 并分离两个尺度上使用的协议和指标. 路由可以基于长期统计运行, 例如数分钟到数小时范围内的递送率, 但作为第一近似, 它可以忽略瞬时丢失的原因. 另一方面, RAW 转发决策以一组突发数据包为尺度作出, 并使用必须与当前传输此刻相关的信息.
6.2. OODA Loop
RAW 架构把通用 OODA 模型应用于持续优化恢复图内转发数据包所使用的频谱和能量, 并按如下方式实例化 OODA 步骤:
Observe
: Network Plane 测量, 包括 OAM 协议, 观察链路本地状态, 恢复图沿途的部分或全部跳点, 以及端到端数据包递送. 更多信息见第 6.3 节. 信息也可以由 DLEP 等低层接口提供.
Orient
: 定向功能报告链路统计等数据和信息, 并利用离线计算出的智慧和知识来引导 PLR 的转发决策. 更多信息见第 6.4 节.
Decide
: 本地 PLR 决定沿恢复图路由的未来一个或多个数据包使用哪条 DetNet 路径. 更多信息见第 6.5 节.
Act
: PREOF Data Plane 动作由 PLR 通过 LL API 控制, 以提高端到端传输可靠性. 当决策由恢复图中位于 PLR 下游的节点执行时, RAW 架构也涵盖原位信令. 更多信息见第 6.6 节.
+-------> Orientation ---------+
| reflex actions |
| pre-trained model |
| |
......................................
| |
| Service sub-layer |
| v
Observe (OAM) Decide (PLR)
^ |
| |
| |
+------- Act (LL API) <--------+
图 9: RAW OODA Loop
整体 OODA loop 会优化冗余使用, 以在尽量少使用频谱和电池等受限资源的同时, 达到所需的可靠性和可用性 Service Level Agreement (SLA).
6.3. Observe: RAW OAM
Network Plane 中的 RAW 原位 OAM 操作可以观察完整恢复图, 也可以观察当前正在使用的 DetNet 路径. 由于数据包可能被负载均衡, 复制, 消除和/或为 Network Coding FEC 而分片, RAW 原位操作需要能够标明对单个数据包发生了哪种操作.
可能需要主动 RAW OAM 来观察未使用的段, 并评估重路由决策是否可取.
最后, RAW Service sub-layer Service Assurance 可以观察 DetNet 中继节点的单个 PREOF 操作, 以确保其符合要求. 这可能需要在恢复图内的上游点注入 OAM 数据包, 并在该数据包到达出口前, 于下游另一个点提取该数据包.
该观察结果供给 RAW PLR. RAW PLR 决定在哪个 RAW 节点为一个数据包或一小段连续数据包使用哪条路径.
对于无线网状网络中的端到端保护, 恢复图是严格的且与路径共路, 因此所有链路都被观察.
相反, 对于图 10 所示的 Radio Access Protection, 恢复图是松散的, 且只观察第一跳. 路径其余部分被抽象并视为无限可靠. 即使特定丢失实际发生在路径更远处, 数据包丢失也归因于第一跳 Radio Access Network (RAN). 在这种情况下, RAW 支持技术多样性, 例如 Wi-Fi 和 5G, 这又提高了频谱使用的多样性.
Opaque to OAM
<---------------------------->
.- .. - ..
RAN 1 --------( ).__
+-------+ / ( ). +------+
|Ingress|- __________Tunnel_______________|Egress|
| End |------ RAN 2 --_______________________________ End |
|System |- ( ) |System|
+-------+ \ ( ). +------+
RAN n ----( )
(_______...___.__...____....__..)
<-------L2------>
Observed by OAM
<----------------------L3----------------------->
图 10: Radio Access Protection 中被观察的链路
未被 OAM 观察的链路对 OAM 是不透明的, 意味着 OAM 信息会被跨越传送并可能作为数据回显, 但中间节点中不会捕获任何信息. 在上面的示例中, 隧道底层对 OAM 不透明且不受 RAW 控制. 尽管如此, RAW OAM 会测量经由 RAN 1, RAN 2 和 RAN 3 发送的数据包的端到端延迟和递送率, 并确定数据包应通过某一条接入链路还是一组接入链路发送.
6.4. Orient: RAW 扩展的 DetNet Operational Plane
RAW 把计算和安装恢复图的长时间尺度, 与为一个或少数数据包作出转发决策的短时间尺度分离 (见第 6.1 节). 这些数据包在网络条件演变并在同一恢复图内选择另一条路径前, 会经历相同路径.
恢复图计算超出本文档范围, 但 RAW 期望安装恢复图的 CPF 也提供相关知识, 以关于链路, 段和可能 DetNet 路径的元数据形式提供. 这些元数据可以是预消化的统计模型, 并且可以包括对未来波动和数据包丢失的预测, 以及发生这些情况时的建议动作.
元数据可以包括:
- 一组预先确定的 DetNet 路径, 它们被准备为匹配预期的链路退化特征, 使 DetNet 中继节点在面对与某个特征匹配的退化时能够采取反射式重路由动作.
- 链路质量统计历史和预训练模型, 例如用于预测恢复图中链路质量的短期变化.
恢复图随可测量目标一起安装, 这些目标由 CPF 计算以达到 RAW SLA. 目标可以表示为连续丢失数据包的最大数量, 有界延迟, 最大抖动, 交错乱序数据包的最大数量, 消除点收到的平均副本数量, 以及同一数据包的首个收到副本与最后一个收到副本之间的最大延迟等任意形式.
6.5. Decide: 本地修复点
RAW OODA loop 在路径选择时间尺度上运行, 以提供敏捷性, 取代泛洪整个恢复图的蛮力方法. 在路由功能提出的冗余方案内, OODA loop 控制每个数据包使用什么, 并在尽量减少受限资源浪费的同时提供可靠且可用的服务.
为此, RAW 定义了 Point of Local Repair (PLR). PLR 在恢复图中可用的路径多样性范围内对转发表执行快速本地调整. PLR 能够在恢复图的一部分上以松散或严格方式, 在更快时间尺度上利用更丰富的转发能力.
PLR 操作的指标变化很快, 需要以高速率通告, 但只在恢复图内本地通告. PLR 会通过改变受影响流正在使用的 DetNet 路径来响应指标更新.
转发决策的快速变化在恢复图范围内作出并限制在恢复图范围内, PLR 的动作不会在恢复图之外发信号. 这与路由功能相反. 路由功能必须观察整个网络并全局优化所有恢复图, 而这只能以较慢速度并使用长期统计指标完成, 如表 1 所示.
| 项目 | Controller Plane | PLR |
|---|---|---|
| Communication | 慢速, 分布式 | 快速, 本地 |
| Timescale (order) | 路径计算加往返, 毫秒到秒 | 查找加保护切换, 微秒到毫秒 |
| Network Size | 大, 需要全局优化许多恢复图 | 小, 保护路径集合有限 |
| Considered Metrics | 平均化, 统计性, 灰度 | 瞬时值/布尔条件 |
表 1: 集中式决策与 PLR
PLR 位于边缘节点和中继节点的 DetNet forwarding sub-layer. PLR 操作于数据包流, 从数据包学习恢复图和路径选择信息, 可能作出本地决策并重新标记数据包以表明该决策. 另一方面, PLR 与低层交互, 例如通过触发器和 DLEP, 也与其对等方交互, 例如通过 OAM, 以分别获得关于自身链路和整体恢复图质量的最新信息, 如图 11 所示.
|
Packet | going
down the | stack
+==========v==========+=====================+===================+
|(In-situ OAM + iCTRL)| (L2 triggers, DLEP) | (Hybrid OAM) |
+==========v==========+=====================+===================+
| Learn from | | Learn from |
| packet tagging > Maintain < end-to-end |
+----------v----------+ Forwarding | OAM packets |
| Forwarding decision < State +---------^---------|
+----------v----------+ | Enrich or |
+ Retag packet | Learn abstracted > regenerate |
| and forward | metrics about links | OAM packets |
+..........v..........+..........^..........+........^.v........+
| Lower layers |
+..........v.....................^...................^.v........+
Frame | sent Frame | L2 ack Active | | OAM
over | wireless in | in and | | out
v | | v
图 11: PLR 概念接口
6.6. Act: DetNet 路径选择和可靠性功能
PLR 的主要动作是在恢复图内为未来数据包切换 DetNet 路径. 候选 DetNet 路径代表不同的能量和频谱特征, 并提供针对不同故障的保护.
LL API 为 DetNet 保护服务 (PREOF) 增强了与低层单跳可靠性功能交互的可能性. 与有线链路相比, 这些功能在无线链路中更典型, 包括 ARQ, FEC, 以及偷听和建设性干扰等其他技术. 因为 RAW 也可以用于有线链路, 例如为了节电, 所以并不期望所有低层都支持这些能力.
RAW 向低层服务提供关于期望结果的提示, 低层则基于这些提示采取行动, 以尽可能接近该结果, 例如在有界时间和/或能量预算内达到某种单跳传输可靠性水平. 因此, LL API 使可靠性的跨层优化成为可能, 具体取决于实际提供的抽象. 也就是说, 某些可靠性功能通过抽象接口从第 3 层控制, 但它们实际在更低层运行.
RAW 路径选择既可采用集中式方法, 也可采用分布式方法实现. 在集中式方法中, PLR 可以获得一组预先计算的 DetNet 路径, 这些路径匹配一组预期故障, 并为无线链路当前状态应用适当的 DetNet 路径. 在分布式方法中, 数据包中的信令可能比显式路径更抽象, PLR 决策也可能基于对剩余路径更好的了解, 沿所选 DetNet 路径被修订.
RAW 中的动态 DetNet 路径选择可避免浪费频谱和能量等关键资源, 同时提供有保证的 SLA, 例如仅在观察到丢失尖峰时才重路由和/或增加冗余.