Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
ISO/IEC 29341-8-12规定了UPnP QoS架构中的QoS Packet Handling(数据包处理)组件,定义了网络数据包根据QoS策略进行处理、排队、调度和传输的低层机制。QoS流量类别标准定义了流量的分类归属,而数据包处理标准则定义了每个类别的数据包在网络设备中的实际处理方式。这包括数据包标记和重新标记、队列选择和管理、调度算法、拥塞避免机制以及流量整形和监管功能。数据包处理规范是UPnP QoS框架的操作核心。
QoS数据包处理规范定义了在协调流水线中运行的几种不同机制。数据包分类和标记首先发生:进入设备的数据包根据分类规则进行检查,并使用适当的DSCP(三层)和802.1p(二层)值进行标记。然后,标记的数据包根据其流量类别被定向到适当的队列。队列管理子系统实现了可配置的排队规则,包括严格优先级(SP)、加权公平排队(WFQ)、基于类的加权公平排队(CBWFQ)和低延迟排队(LLQ)。每个队列可以独立配置深度限制、丢包策略以及最小/最大带宽保证。
该规范引入了两种拥塞避免机制:尾部丢弃,当队列达到最大深度时丢弃数据包的最简单方法;以及随机早期检测(RED),在队列变满之前主动丢弃数据包,向TCP发送方发出拥塞信号。RED对TCP流量特别重要,因为它防止了全局TCP同步现象——即当队列溢出时所有TCP流同时降低传输速率,导致吞吐量振荡。数据包处理规范允许对RED参数进行逐队列配置,包括最小阈值、最大阈值和丢弃概率。
| 处理机制 | 层级 | 描述 | 配置参数 |
|---|---|---|---|
| DSCP标记 | L3(IP) | 在IP头部设置DiffServ码点 | DSCP值(0-63) |
| 802.1p标记 | L2(以太网) | 在VLAN标签中设置优先级码点 | PCP值(0-7) |
| 严格优先级 | 队列 | 最高优先级队列先传输 | 队列ID、优先级级别 |
| 加权公平排队 | 队列 | 加权带宽分配 | 权重值 |
| 尾部丢弃 | 丢包 | 队列满时丢弃数据包 | 最大队列深度 |
| 随机早期检测 | 丢包 | 概率性提前丢弃以防止TCP同步 | 最小/最大阈值、最大丢弃概率 |
| 流量整形 | 输出 | 将输出流量平滑到配置的速率 | CIR、CBS、EBS |
| 流量监管 | 输入 | 丢弃或重新标记超过速率限制的数据包 | CIR、CBS、超限动作 |
设计有效的数据包处理配置需要理解不同机制之间的交互。推荐的工程设计模式是分层排队结构:为每个流量类别组(实时、流媒体、数据、后台)创建一个父类,为每个父类分配带宽保证,然后在每个父类内使用WFQ配置每流排队。这种方法确保了同一类别内各流之间的公平性,同时维持类别级别的带宽保证。对于实时流量(语音和视频),使用带监管突发速率的严格优先级排队,以防止单个流独占优先级队列。