Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
ISO/IEC 29341-8-2 定义了 UPnP QoS 设备服务,该组件负责 UPnP QoS 架构中网络接口上的流量分类、队列管理和调度。QoS 架构标准定义了整体框架,而本标准提供了详细的服务契约——状态变量、操作和事件机制——QoS 能力的网络接口必须实现这些内容。它是将抽象 QoS 请求转化为数据平面上具体流量管理操作的实体。
QoS 设备服务公开一组控制操作,允许 QoS 管理器配置流量类别、建立流量过滤器和监控实时队列统计信息。每个 QoS 设备服务实例对应一个可管理的网络接口,如以太网端口、Wi-Fi 无线电或虚拟 LAN 接口。该服务为每个流量类别维护独立的队列,并使用可配置的调度器(通常为严格优先级或加权公平队列)来仲裁数据包传输。
QoS 设备服务定义了一组全面的状态变量,用于捕获当前配置和运行状态。关键变量包括 TrafficClasses(列出所有支持的流量类别标识符)、CurrentTrafficQosList(枚举活跃的 QoS 预留)和 QosDeviceCapabilities(描述设备的流量管理能力,如队列深度、调度算法支持和过滤器类型)。
| 操作名称 | 描述 | 参数 |
|---|---|---|
| SetupQoSDevice | 使用流量类别配置初始化 QoS 设备 | TrafficClasses, QueueConfiguration |
| RequestTrafficQos | 为流量流创建或更新 QoS 预留 | TrafficQosID, TrafficClass, TrafficFilter, TSPEC |
| ReleaseTrafficQos | 拆除现有的 QoS 预留 | TrafficQosID |
| GetTrafficQosStatus | 检索 QoS 流的状态和统计信息 | TrafficQosID → Status, QueueStats |
| GetQosDeviceInfo | 返回设备能力和当前配置 | → Capabilities, Configuration |
TrafficFilter 参数值得特别关注。它是一个数据结构,指定哪些数据包属于特定流。过滤器可以基于源/目标 IP 地址、UDP/TCP 端口范围、DSCP 值、802.1D 优先级标签或其组合。QoS 设备服务必须按照特化程度递减的顺序评估这些过滤器——更具体的过滤器优先于通用过滤器——以确保正确的流量分类。
该标准定义了八个流量类别,与 IEEE 802.1D 优先级级别保持一致。范围从类别 0(尽力而为)到类别 7(网络控制)。每个流量类别关联一个专用队列。QoS 设备服务通过 QueueConfiguration 状态变量公开队列配置,其中包括最小和最大队列深度、丢弃策略(尾部丢弃或随机早期检测)和调度权重等参数。
QoS 设备服务的一个重要方面是其事件机制。当队列统计信息跨过可配置阈值时,该服务会发布事件,使 QoS 管理器能够在丢包发生之前对拥塞做出反应。这种主动的拥塞管理是优于静态优先级方案的关键优势。
对于实现 QoS 设备服务的工程师来说,主要挑战是平衡分类粒度与处理开销。每个流量过滤器必须针对每个入站数据包进行评估,在高速接口上,这可能会变得计算密集。强烈建议在生产部署中使用硬件卸载——将过滤器编程到网络接口的 TCAM 或流表中。该标准通过允许 QoS 设备通过 QosDeviceCapabilities 变量报告其硬件能力和限制来适应这一点。
QoS 设备服务如何处理 802.1p 优先级标记帧?
该服务可以从入站帧读取 802.1p 优先级标签,并将其直接映射到相应的内部流量类别。它还可以根据流量类别配置在出站帧上设置优先级标签,从而在支持 802.1Q 的交换机之间实现端到端 QoS。
单个物理接口能否承载多个 QoS 设备服务实例?
可以,通过使用虚拟接口实现。每个虚拟接口(VLAN、VPN 隧道等)可以拥有自己的 QoS 设备服务实例,具有独立的流量类别和队列配置,从而允许按接口定制 QoS 策略。
标准强制要求哪些调度算法?
标准强制要求支持严格优先级调度。加权公平队列和赤字轮询是可选的,但在需要流量类别之间共享带宽的环境中推荐使用。
QoS 设备服务如何从崩溃或断电中恢复?
重启后,该服务应重新初始化为默认状态,不包含任何活跃的 QoS 预留。QoS 管理器负责通过 UPnP 事件机制检测重启并重新建立任何必要的预留。