跳到主要内容

2. 术语 (Terminology)

本文档中的关键词 "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY" 和 "OPTIONAL" 应按 RFC 2119 [RFC2119] 中的描述解释.

此外, 本文档使用 [ROLL-TERMS] 中的术语, 并引入以下术语:

DAG: : 有向无环图 (Directed Acyclic Graph). 这是一种有向图, 其所有边的方向都以不存在环路的方式组织. 所有边都包含在朝向一个或多个根节点并在这些根节点终止的路径中.

DAG root: : DAG 根 (DAG root) 是 DAG 中没有出边的节点. 由于该图是无环图, 根据定义, 所有 DAG 都必须至少有一个 DAG 根, 且所有路径都终止于某个 DAG 根.

Destination-Oriented DAG (DODAG): : 面向目的地的 DAG (Destination-Oriented DAG, DODAG), 即以单个目的地为根的 DAG, 也就是以没有出边的单个 DAG 根 (DODAG root) 为根的 DAG.

DODAG root: : DODAG 根 (DODAG root) 是 DODAG 的 DAG 根. DODAG 根可以充当该 DODAG 的边界路由器. 特别是, 它可以聚合 DODAG 中的路由, 并可以将 DODAG 路由重新分发到其他路由协议中.

Virtual DODAG root: : 虚拟 DODAG 根 (Virtual DODAG root) 是两个或更多 RPL 路由器协调后的结果, 例如 6LoWPAN 边界路由器 (6LoWPAN Border Routers, 6LBRs). 它们通过协调来同步 DODAG 状态, 并相对于 LLN 协同工作, 就像一个具有多个接口的单一 DODAG 根. 这种协调最可能发生在供电设备之间, 并通过可靠的传输链路完成. 该方案的细节超出本规范范围, 将在未来配套规范中定义.

Up: : Up 指沿 DODAG 边从叶节点朝向 DODAG 根的方向. 这遵循图论和深度优先搜索中的常用术语: 离根更远的顶点称为 "deeper" 或 "down", 离根更近的顶点称为 "shallower" 或 "up".

Down: : Down 指从 DODAG 根朝向叶节点的方向, 即 DODAG 边的反方向. 这遵循图论和深度优先搜索中的常用术语: 离根更远的顶点称为 "deeper" 或 "down", 离根更近的顶点称为 "shallower" 或 "up".

Rank: : 节点的 Rank 定义该节点相对于 DODAG 根以及其他节点的个体位置. Rank 在 Down 方向上严格增加, 在 Up 方向上严格减少. Rank 的具体计算方式取决于 DAG 的目标函数 (Objective Function, OF). Rank 可以类似地跟踪简单拓扑距离, 可以按链路度量的函数计算, 也可以考虑约束等其他属性.

Objective Function (OF): : 目标函数 (Objective Function, OF) 定义如何使用路由度量, 优化目标和相关函数来计算 Rank. 此外, OF 还规定如何选择 DODAG 中的父节点, 从而决定 DODAG 的形成.

Objective Code Point (OCP): : 目标代码点 (Objective Code Point, OCP) 是一个标识符, 用于指示 DODAG 使用哪个目标函数.

RPLInstanceID: : RPLInstanceID 是网络内的唯一标识符. 具有相同 RPLInstanceID 的 DODAG 共享同一个目标函数.

RPL Instance: : RPL 实例 (RPL Instance) 是共享某个 RPLInstanceID 的一个或多个 DODAG 的集合. 一个 RPL 节点在一个 RPL 实例中最多只能属于一个 DODAG. 每个 RPL 实例独立于其他 RPL 实例运行. 本文档描述单个 RPL 实例内的运行方式.

DODAGID: : DODAGID 是 DODAG 根的标识符. 在 LLN 中的 RPL 实例范围内, DODAGID 是唯一的. 元组 (RPLInstanceID, DODAGID) 唯一标识一个 DODAG.

DODAG Version: : DODAG 版本 (DODAG Version) 是具有给定 DODAGID 的 DODAG 的一次特定迭代 ("Version").

DODAGVersionNumber: : DODAGVersionNumber 是一个顺序计数器, 由根节点递增以形成 DODAG 的新版本. DODAG 版本由元组 (RPLInstanceID, DODAGID, DODAGVersionNumber) 唯一标识.

Goal: : Goal 是在 RPL 范围之外定义的应用特定目标. 任何作为 DODAG 根的节点都需要了解该 Goal, 以判断该 Goal 是否能够满足. 典型的 Goal 是根据特定目标函数构造 DODAG, 并保持到一组主机的连通性. 例如, 使用一个最小化某个度量的目标函数, 并连接到特定数据库主机以存储收集到的数据.

Grounded: : 当 DODAG 根能够满足 Goal 时, 该 DODAG 是 grounded.

Floating: : 如果 DODAG 不是 grounded, 则它是 floating. floating DODAG 不预期具备满足目标所需的属性. 不过, 它仍可以为 DODAG 内的其他节点提供连通性.

DODAG parent: : DODAG 中某个节点的父节点 (parent) 是该节点通向 DODAG 根的路径上的直接后继节点之一. DODAG 父节点的 Rank 低于该节点的 Rank. 见第 3.5.1 节.

Sub-DODAG: : 某个节点的子 DODAG (Sub-DODAG) 是这样一组其他节点: 这些节点通向 DODAG 根的路径经过该节点. 某节点的子 DODAG 中的节点具有比该节点更大的 Rank. 见第 3.5.1 节.

Local DODAG: : 本地 DODAG (Local DODAG) 只包含一个根节点, 并允许该单个根节点分配和管理由本地 RPLInstanceID 标识的 RPL 实例, 而无需与其他节点协调. 通常, 这样做是为了优化到 LLN 内某个目的地的路由. 见第 5 节.

Global DODAG: : 全局 DODAG (Global DODAG) 使用一个全局 RPLInstanceID, 该标识符可以在若干其他节点之间协调. 见第 5 节.

DIO: : DODAG 信息对象 (DODAG Information Object), 见第 6.3 节.

DAO: : 目的地通告对象 (Destination Advertisement Object), 见第 6.4 节.

DIS: : DODAG 信息请求 (DODAG Information Solicitation), 见第 6.2 节.

CC: : 一致性检查 (Consistency Check), 见第 6.6 节.

与传统 IP 网络相比, LLN 设备在组网时通常会混合主机和路由器角色. 在本文档中, "host" 指能够生成但不转发 RPL 流量的 LLN 设备. "router" 指既能转发也能生成 RPL 流量的 LLN 设备. "node" 指任何 RPL 设备, 可以是主机, 也可以是路由器.