跳到主要内容

5. RAW 概念模型 (The RAW Conceptual Model)

RAW 通过在 Service sub-layer 中加入 PLR, 扩展了 "Deterministic Networking Architecture" [DetNet-ARCH] 第 4 节描述的概念模型, 如图 3 所示. PLR (见第 6.5 节) 针对传输丢失提供额外敏捷性. 例如, PLR 可以基于来自低层的指示或基于 OAM 采取动作.

           |  packets going  |        ^  packets coming   ^
v down the stack v | up the stack |
+-----------------------+ +-----------------------+
| Source | | Destination |
+-----------------------+ +-----------------------+
| Service sub-layer: | | Service sub-layer: |
| Packet sequencing | | Duplicate elimination |
| Flow replication | | Flow merging |
| Packet encoding | | Packet decoding |
| Point of Local Repair | | |
+-----------------------+ +-----------------------+
| Forwarding sub-layer: | | Forwarding sub-layer: |
| Resource allocation | | Resource allocation |
| Explicit routes | | Explicit routes |
+-----------------------+ +-----------------------+
| Lower layers | | Lower layers |
+-----------------------+ +-----------------------+
v ^
\_________________________/

图 3: 扩展后的 DetNet Data Plane 协议栈

5.1. RAW 平面

RAW 节点是 DetNet 中继节点, 在 RAW Network Plane 中运行, 并能够使用与无线电接口相关的额外多样性机制和测量功能. RAW 利用 Operational Plane 的定向功能, 该功能通常在入口边缘节点内运行, 以动态调整数据包路径并优化资源使用.

在集中式路由操作场景中, RAW Controller Plane Function (CPF) 通过 Southbound API 与 RAW 节点交互. 它消费来自网络的数据和信息, 并生成知识和智慧, 以帮助在恢复图内最优地引导流量.

                         DetNet Routing

CPF CPF CPF CPF


Southbound API
_-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-
_-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-


___ RAW ___ RAW ___ RAW ___ RAW __
/ Node Node Node Node \
Ingress __/ / \ / \ \____Egress
End __ / \ / .- -- . \ ___ End
Node \ / \ / .-( ). \ / Node
\_ RAW ___ RAW ___(Non-RAW Nodes)__ RAW _/
Node Node (___.______.____) Node

图 4: RAW 节点 (集中式路由场景)

当定义新流时, 路由功能使用其当前掌握的网络知识, 为该流在入口 End System 和出口 End System 之间构建新的恢复图. 它向 RAW 节点指示 PREOF 和/或无线电多样性及可靠性操作可在 Network Plane 中何处执行.

  • 恢复图可以是严格的, 表示 DetNet forwarding sub-layer 操作端到端强制执行.
  • 恢复图也可以以松散形式表达, 以便穿越图 7 所示的非 RAW 子网. 在这种情况下, RAW 无法利用端到端 DetNet, 也无法提供延迟保证.

定向功能报告给路由功能的信息可以按时间聚合, 例如统计形式, 以匹配路由功能的较长期操作. 示例信息包括链路层指标, 例如链路带宽, 其中介质速率随 PHY 层模式动态变化, 流数量, 其中可为某个流预留的带宽取决于共享频谱的流数量和大小, 以及长期可用性和可靠性指标, 例如 PDR, 的平均值和均方偏差. 它还可以报告聚合的 Expected Transmission Count (ETX) 或其变体.

基于这些指标, 路由功能安装恢复图, 其中包含足够的冗余转发方案, 以确保 Network Plane 能够在与所承载流关联的 SLA 内可靠递送数据包. SLA 定义端到端可靠性和可用性要求, 其中可靠性可以表示为至少一个数据包副本按序且在有界延迟内成功递送.

根据用例和 SLA, 恢复图可以包含非 RAW 段, 这些段可以交错在恢复图内部, 例如通过隧道, 也可以一直延伸到出口 End node, 例如本地有线域中的服务器. RAW 观察 RAW 节点之间的低层链路, 通常是无线电链路, 以及端到端网络层操作, 以随时决定由哪些 RAW 节点执行哪种多样性方案.

一旦恢复图建立, 就会周期性地向路由功能报告每段和端到端可靠性及可用性统计, 以确保 SLA 能够满足. 如果无法满足, 则重新计算恢复图.

5.2. RAW 与上层和低层

RAW 构建在 DetNet 提供的调度和整形等功能之上. 特别是, RAW 继承 DetNet 对端到端延迟的保证, 该保证可以调整, 以确保 DetNet 和 RAW 可靠性机制不会对上层产生副作用, 例如不会影响传输层数据包恢复. RAW 操作包括可能的重路由, 这又可能影响一组突发数据包的顺序. RAW 还从 DetNet 继承 PREOF, 可用于在递送给上层前重新排序数据包. 因此, 相比整个 Internet, DetNet 通常, 以及 RAW 特别地, 为上层提供了更平滑的传输体验, 具有超低抖动和低丢失.

RAW 提高传输可靠性和通信资源可用性, 应被视为对冗余使用的动态优化, 以把可靠性和可用性指标维持在特定边界内. 例如, ARQ 通过确认和重试提供单跳可靠性, FEC 编码, 如降低 PER 的 turbo codes, 通常分别在第 2 层和第 1 层运行. 在这两种情况下, 冗余传输以能量和延迟为代价提高单跳可靠性, 而这些正是 RAW 必须控制的资源. 为实现目标, RAW 可以通过抽象低层操作概念并向低层提供关于期望结果的提示, 例如可靠性和及时性方面的提示, 来利用低层操作, 而不是在第 3 层执行实际操作.

有界延迟等保证依赖上层, 即传输层或应用层, 按与 DetNet 子层及其下方各层契约相匹配的数量和时间提供负载. DetNet 入口处过量的传入流量可能导致数据包被丢弃或排队, 并可能引发丢失, 延迟或抖动. 这会违反 DetNet Network 内部提供的保证.

当来自上层的流量符合低层预期时, RAW 仍依赖 DetNet 机制和低层来提供匹配流量 SLA 所需的时序和物理资源保证. 当物理资源可用性变化时, RAW 会作用于流量分布, 以利用有限潜在资源集合中的替代资源.

Operational Plane 元素, 即路由和 OAM 控制, 可以通过测量或与低层通信, 从低层收集聚合信息, 例如链路质量信息. 这些信息可以通过专用 API, 例如 L2 triggers, 从设备内部获得, 也可以分别通过 Bidirectional Forwarding Detection (BFD) [RFC5880] 和 Simple Two-way Active Measurement Protocol (STAMP) [RFC8762] 等监控和测量协议获得, 或通过与低层的控制协议交换获得, 例如 DLEP [DLEP]. 随后这些信息可以被处理并通过 OAM 消息或 YANG 数据模型导出, 暴露给 Controller Plane.

5.3. RAW 与 DetNet

RAW 利用 DetNet forwarding sub-layer, 并要求 DetNet transit 节点支持 OAM, 见 [DetNet-ARCH] 图 3, 以动态获取链路容量和状态, 从而在 DetNet Network 上端到端维护严格 RAW 服务. 反过来, DetNet 以及 RAW 可以受益于或利用低层提供的功能, 例如 TSN 提供的功能.

RAW 扩展 DetNet, 以改进对链路错误的保护, 例如无线链路中更常见的瞬态波动. 尽管如此, 大多数 RAW 方法也适用于有线链路, 例如当希望节能且可用路径多样性超过 1+1 线性冗余时.

RAW 添加了在 DetNet Operational Plane 中运行的子层功能, 该 Operational Plane 是 Network Plane 的一部分. RAW 定向功能可以仅在 DetNet 边缘节点, 即入口边缘节点或 End System 中运行, 也可以在 RAW 操作沿恢复图分布时运行于 DetNet 中继节点中. RAW Service sub-layer 包括 PLR, 位于边缘节点上的 Maintenance End Points (MEPs), 以及内部的 Maintenance Intermediate Points (MIPs). PLR 决定一个流沿 DetNet 路径的未来数据包所使用的 DetNet 路径. MEP 触发 OAM 观察, 从 OAM 观察中学习, 并把结果馈送给 PLR 以供其下一次决策.

如图 5 所示, RAW 在 DetNet Service sub-layer 增加额外功能, 用于基于 PLR 决策执行 PREOF, 从而扩展 DetNet Stack (见 [DetNet-ARCH] 图 4 和本文图 3). DetNet 在第 3 层运行, 利用低层抽象以及控制这些抽象的 API. 例如, DetNet 已经利用低层进行时间同步和流量整形器等时间敏感操作. 由于无线电层性能会快速变化, RAW 需要更动态的仪表和旋钮. 为此, LL API 向 DetNet 层提供一种抽象, 可用于推送可靠性和时序提示, 例如建议在某个时间窗口内进行 X 次重试 (最小值, 最大值), 或发送单播 (一个下一跳) 或多播 (用于偷听). 在栈的相反方向上, RAW PLR 需要关于无线电条件的提示, 例如所有无线跳点上的 L2 triggers (如 RSSI, LQI 或 ETX).

RAW 在不同层使用各种 OAM 功能. 例如, DetNet Service sub-layer 中的 OAM 功能可以执行 Active 和/或 Hybrid OAM, 以估计端到端或限于某段的链路和路径可用性. RAW 功能可以存在于 DetNet 边缘节点和中继节点的 Service sub-layer 中.

  +-----------------+     +-------------------+
| Routing | | OAM Control |
+-----------------+ +-------------------+


Controller Plane
+-+-+-+-+-+-+-+-+ Southbound Interface -+-+-+-+-+-+-+-+-+-+-+-+
Network Plane

|
Operational Plane . Data Plane
|
+-----------------+ .
| Orientation | |
+-----------------+ .
|
+-----------------+ +-------------------+ .
| Point of Local | | OAM Maintenance | |
| Repair (PLR) | | End Point (MEP) | .
+-----------------+ +-------------------+ |
.
|

图 5: RAW 功能位置 (集中式路由场景)

部署 RAW 和 DetNet 主要有两种建议模型: 严格模型 (图 6) 和松散模型 (图 7). 在图 6 所示严格模型中, RAW 在入口和出口边缘节点或 End Systems 之间的连续端到端 DetNet 服务上运行.

在图 7 所示松散模型中, RAW 可以穿越网络中未由 DetNet 服务的部分. RAW OAM 可以观察端到端流量并充分利用可用资源, 但不能期望所有路径上都有 DetNet 保证. 例如, 两个无线实体之间的数据包可能通过有线基础设施中继, 在这种情况下, RAW 观察并控制无线第一跳和最后一跳上的传输, 同时观察延迟, 抖动和递送率等端到端指标. 该操作是松散的, 因为有线基础设施的结构和属性会被忽略, 它们可能由 DetNet/TSN 等其他方式控制, 也可能在面对无线跳点时被忽略.

所有 DetNet 节点都提供最小 forwarding sub-layer 服务, 以确保 OAM 信息流动. DetNet 中继节点可以支持 RAW 服务, 也可以不支持, 而 DetNet 边缘节点在任何情况下都需要支持 RAW. 有界延迟等 DetNet 保证端到端提供. RAW 扩展 DetNet Service sub-layer 以优化资源使用.

--------------------Flow Direction---------------------------------->

+---------+
| RAW |
| Control |
+---------+ +---------+ +---------+
| RAW + | | RAW + | | RAW + |
| DetNet | | DetNet | | DetNet |
| Service | | Service | | Service |
+---------+---------------------------+---------+--------+---------+
| DetNet |
| Forwarding |
+------------------------------------------------------------------+

Ingress Transit Relay Egress
Edge ... Nodes ... Nodes ... Edge
Node Node

<------------------End-to-End DetNet Service----------------------->

图 6: DetNet 上的 RAW (严格模型)

在松散模型中, 如图 7 所示, RAW 在部分 DetNet 服务上运行, 通常只有入口和出口 End Systems 支持 RAW. DetNet 域可以延伸到入口节点之外, 也可以在 End System 后第一跳的入口边缘节点处开始.

在松散模型中, RAW 无法观察网络中的跳点, 第一跳之后的路径是不透明的. RAW 仍可观察端到端行为, 并使用第 3 层测量来决定是否复制数据包以及选择第一跳接口.

--------------------Flow Direction---------------------------------->

+---------+
| RAW |
| Control |
+---------+ +---------+ +---------+
| RAW + | | DetNet | | RAW + |
| DetNet | | Only | | DetNet |
| Service | | Service | | Service |
+---------+----------------------+---+ +---+---------+
| DetNet |_______________| DetNet |
| Forwarding _______________ Forwarding |
+------------------------------------+ +-------------+

Ingress Transit Relay Tunnel Egress
End ... Nodes ... Nodes ... ... End
System System

<---------------Partitioned DetNet Service------------------------->

图 7: DetNet 上的 RAW (松散模型)