第4章 高级特性:多级流水线与调度报文


第4章 · 高级特性:多级流水线与调度报文

章节摘要:基础流表只会"匹配—转发",真实的网络还要组播、选路、限速、按业务分级服务。OpenFlow 交给控制器四件更重的武器:组表(一跳多路径)、Meter(限速整形)、端口控制与队列(QoS 分级),以及一套把这一切适配到具体硬件的扩展机制。本章继续逐字段解剖这些高级结构的消息体与执行语义。

学习目标

阅读完本章,你应当能够:

  1. 区分组表的四种类型并各举一个应用
  2. 手工配置 Meter 实现双速率限速
  3. 解释队列与端口属性如何配合实现 QoS
  4. 读懂一组 Table-Features / Experimenter 扩展并评估适配成本

核心概念速览

一句金句:流表决定"包往哪去",组表决定"包有几条命",Meter 决定"包能跑多快"——三张表合起来才是完整的转发策略。

4.1 组表 Group Table 解剖

四种组类型的字段结构与执行语义,选路、组播、故障切换都靠它。

4.2 Meter 表与限速报文

Meter 与 band 的两级结构,令牌桶语义与双速率配置。

4.3 端口控制与端口消息

Port-Mod、Port-Status、端口属性的完整生命周期管理。

4.4 队列与 QoS 保障

SET_QUEUE 动作、队列属性、端口级调度器如何配合。

4.5 OpenFlow 扩展与定制

Table-Features 协商、Experimenter 消息与厂商私有扩展的适配之道。

子章节之间的逻辑关系

4.1 与 4.2 是两张新的"表",4.3 与 4.4 是端口维度的控制,4.5 是把前四者落到具体硬件的通道——它们共同扩展了第 2 章的流水线语义。

2章流水线 ──► 4.1 组表(多路径)──► 4.4 队列(分级) └───► 4.2 Meter(限速)──► 4.3 端口(物理管理) └──► 4.5 扩展机制(硬件适配) ​

前置知识与后续延伸

  • 前置知识:第 2 章的指令动作体系、第 3 章的能力协商
  • 后续延伸:第 5 章的部署实践中,这些特性将以完整应用形态出现

本章知识点考核清单

本章四张表加一条扩展通道,可检验点如下:能否写出组条目的四字段结构,并分别说明 all、select、indirect、fast failover 的执行语义与适用负载;能否解释 select 组的选桶由实现决定意味着什么、权重字段如何参与;能否描述 Meter 的两级结构与令牌桶参数(rate、burst)对稳态与瞬时行为的影响,并说出 KBPS 与 PKTPS 的区别;能否列举端口 config 三个实用标志的用途及 NO_PACKET_IN 的作用面与代价;能否说清队列三层分工中"配置、映射、调度"各自由谁负责,以及 min_rate 是权重而非硬预留的原因;能否复述三条扩展缝的成本排序并给出"不该扩展"的三种替代。

本章内部,4.1 与 4.2 是"表族"的两员(组表管复制分发、Meter 管计量执法),4.3 与 4.4 落到端口与出口资源,四者共同构成流水线的完整调度能力;4.5 是当以上都不够用时的逃生通道。前置是第 2 章的指令动作语义(GOTO、METER、SET_QUEUE 都在那里定义),后续第 5 章的负载均衡与 QoS 场景将直接调用本章的全部零件。
另附一条研读建议:本章五节里,4.1 与 4.2 的动手实验最值得反复跑——组表的 failover 切换与 Meter 的稳态曲线都是"看一遍描述不如跑一次实验"的典型,且两者的坑(watch_port 语义、单位错配)都藏在输出的细节里。4.5 可以先通读记住结论(成本排序与三条替代),等到真有扩展需求时再回来细读。

作者与出处
原作者:灏天文库
来源:平台策划编纂
整理人: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U